mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2025-12-06 09:29:38 +01:00
Compare commits
427 Commits
jdk-11.0.2
...
jdk-12+9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
296002fe50 | ||
|
|
d40735db17 | ||
|
|
c3cc65bd08 | ||
|
|
00eb34a943 | ||
|
|
ff17347f8f | ||
|
|
7135605c6f | ||
|
|
d91630f948 | ||
|
|
13c1bb691b | ||
|
|
b3b644438e | ||
|
|
3f4b55c4df | ||
|
|
232804b8ab | ||
|
|
16263ca90c | ||
|
|
3de7598a3f | ||
|
|
6c65a9f193 | ||
|
|
4c58f6768a | ||
|
|
f7bbf4f43c | ||
|
|
8324ab4661 | ||
|
|
30a16dc69c | ||
|
|
3559b6be76 | ||
|
|
cea6e54978 | ||
|
|
8c47dc4a94 | ||
|
|
86c476b5e5 | ||
|
|
fc61b1abfb | ||
|
|
e1059f1301 | ||
|
|
1ddabdf0dc | ||
|
|
1b02e70184 | ||
|
|
49b859b9d3 | ||
|
|
51f697962c | ||
|
|
eb51968f00 | ||
|
|
12c27777c8 | ||
|
|
370abe471f | ||
|
|
56ee0fccb3 | ||
|
|
1e6c19b381 | ||
|
|
d739f1d6de | ||
|
|
083110efa9 | ||
|
|
f71d1cb124 | ||
|
|
13ce063178 | ||
|
|
8b373393e6 | ||
|
|
882e54cb05 | ||
|
|
c5299d49f4 | ||
|
|
b4530e2447 | ||
|
|
fd9fa38d21 | ||
|
|
51c04f947f | ||
|
|
852e131c61 | ||
|
|
8f87784420 | ||
|
|
b2ebbe6460 | ||
|
|
83d8bf86a6 | ||
|
|
af8a3d61b5 | ||
|
|
7a51b4a8fa | ||
|
|
347b95d500 | ||
|
|
423c207dc7 | ||
|
|
e0559bdd88 | ||
|
|
e2081b42b5 | ||
|
|
1ab91ea928 | ||
|
|
5ddac96c10 | ||
|
|
9ec15cedd0 | ||
|
|
0d902d2b56 | ||
|
|
a494a819eb | ||
|
|
aad3230b1d | ||
|
|
14bb47410b | ||
|
|
23f0fb4cde | ||
|
|
8b138c684a | ||
|
|
ffa4cfe355 | ||
|
|
acaf155de7 | ||
|
|
c3adb5f87d | ||
|
|
78363850b9 | ||
|
|
14443eec10 | ||
|
|
50ec35819d | ||
|
|
58e2f2d41c | ||
|
|
8ead3758cb | ||
|
|
2406a52bd6 | ||
|
|
ed3779b175 | ||
|
|
8a10925316 | ||
|
|
6f880d7f48 | ||
|
|
0d78eb91db | ||
|
|
5c94ea21e7 | ||
|
|
0cad83662a | ||
|
|
8e264e259d | ||
|
|
1b39447545 | ||
|
|
f1553a5f0f | ||
|
|
5b2c081460 | ||
|
|
aafb128d89 | ||
|
|
40af989884 | ||
|
|
2ffded2a4b | ||
|
|
83d1dd7d9a | ||
|
|
b1ce2c0fe8 | ||
|
|
ce61e39060 | ||
|
|
d8ffa83e7a | ||
|
|
417149e74a | ||
|
|
f3e518394b | ||
|
|
67a1517a4d | ||
|
|
593590305d | ||
|
|
dcb930f123 | ||
|
|
73ac71d532 | ||
|
|
73951ab5d9 | ||
|
|
bd0f1453dc | ||
|
|
85a5893183 | ||
|
|
d9bb30837a | ||
|
|
9c4f2b7294 | ||
|
|
4ef5590fa7 | ||
|
|
eca24bfb55 | ||
|
|
dc556f4086 | ||
|
|
f6bcc38500 | ||
|
|
f1173ad06c | ||
|
|
bc62b3a40e | ||
|
|
846e25f099 | ||
|
|
8eb45613db | ||
|
|
95db6924f2 | ||
|
|
89a9456801 | ||
|
|
0afc1b41c3 | ||
|
|
0f4805ef4c | ||
|
|
55cf3de09b | ||
|
|
75ed173e15 | ||
|
|
6ccb60937c | ||
|
|
65f4c7dee4 | ||
|
|
0d9777a9cb | ||
|
|
d9456186e8 | ||
|
|
660c7e50f7 | ||
|
|
15cef25bb0 | ||
|
|
07ed14c5cf | ||
|
|
4dfa58d553 | ||
|
|
2788ddc4eb | ||
|
|
20f3793312 | ||
|
|
b1b99f1d4c | ||
|
|
3bb71a9b51 | ||
|
|
3c0f0f0175 | ||
|
|
73bcb0507e | ||
|
|
2e941724e4 | ||
|
|
6355dec98c | ||
|
|
1260099653 | ||
|
|
610dfb22d3 | ||
|
|
da4684e2e1 | ||
|
|
d2a9e11aeb | ||
|
|
19a7a3b69e | ||
|
|
63b1edb7b7 | ||
|
|
8cf153fbd5 | ||
|
|
e39c7c3c93 | ||
|
|
5b0774ea01 | ||
|
|
bd57506f87 | ||
|
|
e12ee81ff0 | ||
|
|
efa05e1c62 | ||
|
|
ef15adee70 | ||
|
|
68e65d8ece | ||
|
|
07f3f674c2 | ||
|
|
b0954bc7ab | ||
|
|
b71faed5df | ||
|
|
f87ec5faf7 | ||
|
|
4377d3abe2 | ||
|
|
b9052e9647 | ||
|
|
611c53c860 | ||
|
|
d8ce7f36e2 | ||
|
|
b75805c1a5 | ||
|
|
9cea96184f | ||
|
|
773906998a | ||
|
|
5b6a90e007 | ||
|
|
8f31a55f91 | ||
|
|
bfb0a2ea3f | ||
|
|
c283eb190e | ||
|
|
33a96c6df9 | ||
|
|
815cdefb43 | ||
|
|
5fc4ca5c45 | ||
|
|
a51aeedca0 | ||
|
|
f50c8dddfa | ||
|
|
924bba584d | ||
|
|
b5f939c5db | ||
|
|
4bcd4f04a2 | ||
|
|
a007690fa0 | ||
|
|
4729c903c6 | ||
|
|
5c3008fbc4 | ||
|
|
8044814e30 | ||
|
|
582c0dafb8 | ||
|
|
7aabcdee63 | ||
|
|
044b502383 | ||
|
|
a9508324e2 | ||
|
|
93c176ef2e | ||
|
|
1712e272cd | ||
|
|
abb7f64829 | ||
|
|
d1aea148fe | ||
|
|
5a80204c23 | ||
|
|
51d0a9e122 | ||
|
|
647c7d5344 | ||
|
|
83b2fb5b0d | ||
|
|
092e9e4f81 | ||
|
|
ea95e1ef2e | ||
|
|
4e2b462116 | ||
|
|
a5d14313f5 | ||
|
|
5858a507f4 | ||
|
|
2c5b52f061 | ||
|
|
59ca28bf1c | ||
|
|
b037ff24a8 | ||
|
|
83a51d869e | ||
|
|
cbcc690048 | ||
|
|
f62fa67625 | ||
|
|
437a15817f | ||
|
|
dc45757347 | ||
|
|
f8590345b7 | ||
|
|
abb1e458eb | ||
|
|
6c7f0f0218 | ||
|
|
e05a66c789 | ||
|
|
30fad2ce7d | ||
|
|
e5f3e1b60c | ||
|
|
626a614146 | ||
|
|
90a76fe7d2 | ||
|
|
a7b66f6f5e | ||
|
|
149026aa65 | ||
|
|
52f2eca5d9 | ||
|
|
bdfda4e19b | ||
|
|
9c0720b156 | ||
|
|
e98c176026 | ||
|
|
d702d5f8d2 | ||
|
|
a00eff193f | ||
|
|
a6a078ee4f | ||
|
|
1b2e7cbaef | ||
|
|
01cc27f875 | ||
|
|
db4913ba5a | ||
|
|
3be8d256e9 | ||
|
|
6f046a9f27 | ||
|
|
4ce757492c | ||
|
|
77204ca163 | ||
|
|
a9fd33bf2f | ||
|
|
b2042fe0ca | ||
|
|
013e6fd595 | ||
|
|
70b706c224 | ||
|
|
cc248634a1 | ||
|
|
4bac00436d | ||
|
|
080d3bb21a | ||
|
|
963bb6c8be | ||
|
|
82186ce311 | ||
|
|
831fdfe311 | ||
|
|
03d6ab3b09 | ||
|
|
c1c4085139 | ||
|
|
fb0b608284 | ||
|
|
b924bf7233 | ||
|
|
32ec91ca9b | ||
|
|
7a791910c3 | ||
|
|
4555c28590 | ||
|
|
c4faf01f86 | ||
|
|
2ce4abbcc8 | ||
|
|
b3e18b4a1b | ||
|
|
940ac1cddc | ||
|
|
17891770c1 | ||
|
|
43e1256928 | ||
|
|
23db5cd8a0 | ||
|
|
3d94ce71b5 | ||
|
|
fc9941ae72 | ||
|
|
ec76c2046c | ||
|
|
b184fceaa0 | ||
|
|
d2dd5c4473 | ||
|
|
8a5467b9c2 | ||
|
|
501fc494c0 | ||
|
|
65091f8c6d | ||
|
|
4ab515f85c | ||
|
|
b2a6aa3e80 | ||
|
|
24fe001ecb | ||
|
|
36b45330b8 | ||
|
|
b9bfd45c73 | ||
|
|
d4381002ac | ||
|
|
e7114f64f3 | ||
|
|
16f9e07ba1 | ||
|
|
38db1d1620 | ||
|
|
b71f3e7104 | ||
|
|
9d25c65fda | ||
|
|
7d04a31fc8 | ||
|
|
c9d506055c | ||
|
|
c277f9ed8e | ||
|
|
d86f3a8cb2 | ||
|
|
10592b0d36 | ||
|
|
38f91617c5 | ||
|
|
73477220be | ||
|
|
2d1029c256 | ||
|
|
c1bbdfaa2c | ||
|
|
74a31c5c16 | ||
|
|
31cf8b1c65 | ||
|
|
a98f40467a | ||
|
|
2a213d1685 | ||
|
|
b62d703d9a | ||
|
|
1387c87093 | ||
|
|
dea6137c6a | ||
|
|
f45dc7748e | ||
|
|
a3e7f01f33 | ||
|
|
f0e9643542 | ||
|
|
2517ca3937 | ||
|
|
691c332a70 | ||
|
|
a29cd6d430 | ||
|
|
ca473200b7 | ||
|
|
86629a36f0 | ||
|
|
12bf1a20d0 | ||
|
|
ac5685e827 | ||
|
|
6602e30cec | ||
|
|
30f22170ef | ||
|
|
ffc4cbe5da | ||
|
|
955ce37d60 | ||
|
|
1dcf1dda27 | ||
|
|
198715ae97 | ||
|
|
ad816a0809 | ||
|
|
2f4efb7871 | ||
|
|
f52c4365ca | ||
|
|
9ff255dafe | ||
|
|
7883ea1c31 | ||
|
|
8e61321b6c | ||
|
|
07cb147927 | ||
|
|
9959e34180 | ||
|
|
39dd04b953 | ||
|
|
6cbef1de5d | ||
|
|
fafd1b7536 | ||
|
|
19c364592c | ||
|
|
a6ff367b24 | ||
|
|
4805473049 | ||
|
|
301f3c3bb5 | ||
|
|
898e0f8607 | ||
|
|
121c59eb6d | ||
|
|
5226a6a2bb | ||
|
|
602a497270 | ||
|
|
f921743302 | ||
|
|
28e828130d | ||
|
|
f8f90df4d7 | ||
|
|
269286da50 | ||
|
|
069fa394d0 | ||
|
|
2d2dd74c80 | ||
|
|
a5e27072fe | ||
|
|
1f273bde76 | ||
|
|
ba7bab5fc9 | ||
|
|
e85841f34b | ||
|
|
7d4da87a14 | ||
|
|
85f79b0dab | ||
|
|
796a53f6e5 | ||
|
|
b30fe07450 | ||
|
|
01fd04b862 | ||
|
|
e1ee13c514 | ||
|
|
9a9c824ece | ||
|
|
f4723253b6 | ||
|
|
0140ddadab | ||
|
|
66025558bb | ||
|
|
df45a1b57e | ||
|
|
a376d5dab4 | ||
|
|
769e802001 | ||
|
|
bd236c55d0 | ||
|
|
a4bf30fb50 | ||
|
|
cc58241bec | ||
|
|
e8fcd927c3 | ||
|
|
a6bd52da93 | ||
|
|
3aa10b4fab | ||
|
|
fe80e55647 | ||
|
|
2131cb484e | ||
|
|
4fc510cc89 | ||
|
|
0103ed733d | ||
|
|
5074bbb767 | ||
|
|
2b397c3c13 | ||
|
|
78f3c8a7d4 | ||
|
|
1c976267be | ||
|
|
90f21d1a34 | ||
|
|
e18f343141 | ||
|
|
c7a1b6431d | ||
|
|
dafb3af62d | ||
|
|
fb3b911fbe | ||
|
|
0a1e54644b | ||
|
|
2363998598 | ||
|
|
4f20e7f453 | ||
|
|
a10d6e71d8 | ||
|
|
85daddd4cf | ||
|
|
08fb8e4d1c | ||
|
|
fce671f409 | ||
|
|
859ba8ca28 | ||
|
|
7d7116339a | ||
|
|
e9ad46f26c | ||
|
|
84234d1abb | ||
|
|
051f4ed627 | ||
|
|
66e825aa41 | ||
|
|
466ccfe781 | ||
|
|
9ba5bab865 | ||
|
|
4d93f17fe1 | ||
|
|
03597d010c | ||
|
|
d2de786263 | ||
|
|
3cf62646ed | ||
|
|
61d4faee90 | ||
|
|
5ff2b5fe98 | ||
|
|
6d497ee263 | ||
|
|
ea084baf94 | ||
|
|
10fca535db | ||
|
|
943be51fe7 | ||
|
|
3f0f527c5b | ||
|
|
210e064a8d | ||
|
|
8457eb629f | ||
|
|
ecc1af23af | ||
|
|
136331b7f0 | ||
|
|
da22bf8a17 | ||
|
|
28e2dea71d | ||
|
|
aef5f86408 | ||
|
|
0a99860ff9 | ||
|
|
3e4eba7668 | ||
|
|
209071d135 | ||
|
|
c0ebf80159 | ||
|
|
cfd42a97cc | ||
|
|
bd0c60ff71 | ||
|
|
ac99e1d447 | ||
|
|
6cd1f27fcf | ||
|
|
4222f3408c | ||
|
|
977b9cae12 | ||
|
|
9006ccdbbf | ||
|
|
c4b2780bea | ||
|
|
29dc54093b | ||
|
|
48942a6aba | ||
|
|
8774d70044 | ||
|
|
bebd49cf84 | ||
|
|
bfb397a679 | ||
|
|
eaf0364068 | ||
|
|
69191fc4cc | ||
|
|
c89978f4fd | ||
|
|
3ae58c7fdc | ||
|
|
736e57146d | ||
|
|
3d8776d76c | ||
|
|
e56162b43d | ||
|
|
bc45576579 | ||
|
|
fb54f8a71f | ||
|
|
b5f0945a72 | ||
|
|
7d8922221d | ||
|
|
0cb3d46cd7 | ||
|
|
a2a00af3c3 | ||
|
|
b0af57a018 | ||
|
|
b8d80042d7 | ||
|
|
6ffd168ad1 | ||
|
|
539a39c5f6 | ||
|
|
cd45167430 | ||
|
|
90518f0635 | ||
|
|
88a2f93966 | ||
|
|
3496969f66 | ||
|
|
051dfe9fb4 |
11
.hgtags
11
.hgtags
@@ -490,15 +490,22 @@ a11c1cb542bbd1671d25b85efe7d09b983c48525 jdk-11+15
|
||||
02934b0d661b82b7fe1052a04998d2091352e08d jdk-11+16
|
||||
64e4b1686141e57a681936a8283983341484676e jdk-11+17
|
||||
e1b3def126240d5433902f3cb0e91a4c27f6db50 jdk-11+18
|
||||
fb8b3f4672774e15654958295558a1af1b576919 jdk-11+19
|
||||
fb8b3f4672774e15654958295558a1af1b576919 jdk-11+19
|
||||
36ca515343e00b021dcfc902e986d26ec994a2e5 jdk-11+19
|
||||
95aad0c785e497f1bade3955c4e4a677b629fa9d jdk-12+0
|
||||
9816d7cc655e53ba081f938b656e31971b8f097a jdk-11+20
|
||||
14708e1acdc3974f4539027cbbcfa6d69f83cf51 jdk-11+21
|
||||
00b16d0457e43d23f6ca5ade6b243edce62750a0 jdk-12+1
|
||||
9937ef7499dcd7673714517fd5e450410c14ba4e jdk-11+22
|
||||
69b438908512d3dfef5852c6a843a5778333a309 jdk-12+2
|
||||
1edcf36fe15f79d6228d1a63eb680878e2386480 jdk-11+23
|
||||
990db216e7199b2ba9989d8fa20b657e0ca7d969 jdk-12+3
|
||||
ea900a7dc7d77dee30865c60eabd87fc24b1037c jdk-11+24
|
||||
499b873761d8e8a1cc4aa649daf04cbe98cbce77 jdk-12+4
|
||||
331888ea4a788df801b1edf8836646cd25fc758b jdk-11+25
|
||||
f8696e0ab9b795030429fc3374ec03e378fd9ed7 jdk-12+5
|
||||
945ba9278a272a5477ffb1b3ea1b04174fed8036 jdk-11+26
|
||||
7939b3c4e4088bf4f70ec5bbd8030393b653372f jdk-12+6
|
||||
9d7d74c6f2cbe522e39fa22dc557fdd3f79b32ad jdk-11+27
|
||||
ef57958c7c511162da8d9a75f0b977f0f7ac464e jdk-12+7
|
||||
76072a077ee1d815152d45d1692c4b36c53c5c49 jdk-11+28
|
||||
492b366f8e5784cc4927c2c98f9b8a3f16c067eb jdk-12+8
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
<li><a href="#specifying-the-target-platform">Specifying the Target Platform</a></li>
|
||||
<li><a href="#toolchain-considerations">Toolchain Considerations</a></li>
|
||||
<li><a href="#native-libraries">Native Libraries</a></li>
|
||||
<li><a href="#creating-and-using-sysroots-with-qemu-deboostrap">Creating And Using Sysroots With qemu-deboostrap</a></li>
|
||||
<li><a href="#building-for-armaarch64">Building for ARM/aarch64</a></li>
|
||||
<li><a href="#verifying-the-build">Verifying the Build</a></li>
|
||||
</ul></li>
|
||||
@@ -634,6 +635,72 @@ cp: cannot stat `arm-linux-gnueabihf/libSM.so': No such file or directory
|
||||
cp: cannot stat `arm-linux-gnueabihf/libXt.so': No such file or directory</code></pre></li>
|
||||
<li><p>If the X11 libraries are not properly detected by <code>configure</code>, you can point them out by <code>--with-x</code>.</p></li>
|
||||
</ul>
|
||||
<h3 id="creating-and-using-sysroots-with-qemu-deboostrap">Creating And Using Sysroots With qemu-deboostrap</h3>
|
||||
<p>Fortunately, you can create sysroots for foreign architectures with tools provided by your OS. On Debian/Ubuntu systems, one could use <code>qemu-deboostrap</code> to create the <em>target</em> system chroot, which would have the native libraries and headers specific to that <em>target</em> system. After that, we can use the cross-compiler on the <em>build</em> system, pointing into chroot to get the build dependencies right. This allows building for foreign architectures with native compilation speed.</p>
|
||||
<p>For example, cross-compiling to AArch64 from x86_64 could be done like this:</p>
|
||||
<ul>
|
||||
<li><p>Install cross-compiler on the <em>build</em> system:</p>
|
||||
<pre><code>apt install g++-aarch64-linux-gnu gcc-aarch64-linux-gnu</code></pre></li>
|
||||
<li><p>Create chroot on the <em>build</em> system, configuring it for <em>target</em> system:</p>
|
||||
<pre><code>sudo qemu-debootstrap --arch=arm64 --verbose \
|
||||
--include=fakeroot,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng12-dev \
|
||||
--resolve-deps jessie /chroots/arm64 http://httpredir.debian.org/debian/</code></pre></li>
|
||||
<li><p>Configure and build with newly created chroot as sysroot/toolchain-path:</p>
|
||||
<pre><code>CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ sh ./configure --openjdk-target=aarch64-linux-gnu --with-sysroot=/chroots/arm64/ --with-toolchain-path=/chroots/arm64/
|
||||
make images
|
||||
ls build/linux-aarch64-normal-server-release/</code></pre></li>
|
||||
</ul>
|
||||
<p>The build does not create new files in that chroot, so it can be reused for multiple builds without additional cleanup.</p>
|
||||
<p>Architectures that are known to successfully cross-compile like this are:</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th style="text-align: left;">Target</th>
|
||||
<th style="text-align: left;"><code>CC</code></th>
|
||||
<th style="text-align: left;"><code>CXX</code></th>
|
||||
<th><code>--arch=...</code></th>
|
||||
<th><code>--openjdk-target=...</code></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td style="text-align: left;">x86</td>
|
||||
<td style="text-align: left;">default</td>
|
||||
<td style="text-align: left;">default</td>
|
||||
<td>i386</td>
|
||||
<td>i386-linux-gnu</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td style="text-align: left;">armhf</td>
|
||||
<td style="text-align: left;">gcc-arm-linux-gnueabihf</td>
|
||||
<td style="text-align: left;">g++-arm-linux-gnueabihf</td>
|
||||
<td>armhf</td>
|
||||
<td>arm-linux-gnueabihf</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td style="text-align: left;">aarch64</td>
|
||||
<td style="text-align: left;">gcc-aarch64-linux-gnu</td>
|
||||
<td style="text-align: left;">g++-aarch64-linux-gnu</td>
|
||||
<td>arm64</td>
|
||||
<td>aarch64-linux-gnu</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td style="text-align: left;">ppc64el</td>
|
||||
<td style="text-align: left;">gcc-powerpc64le-linux-gnu</td>
|
||||
<td style="text-align: left;">g++-powerpc64le-linux-gnu</td>
|
||||
<td>ppc64el</td>
|
||||
<td>powerpc64le-linux-gnu</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td style="text-align: left;">s390x</td>
|
||||
<td style="text-align: left;">gcc-s390x-linux-gnu</td>
|
||||
<td style="text-align: left;">g++-s390x-linux-gnu</td>
|
||||
<td>s390x</td>
|
||||
<td>s390x-linux-gnu</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>Additional architectures might be supported by Debian/Ubuntu Ports.</p>
|
||||
<h3 id="building-for-armaarch64">Building for ARM/aarch64</h3>
|
||||
<p>A common cross-compilation target is the ARM CPU. When building for ARM, it is useful to set the ABI profile. A number of pre-defined ABI profiles are available using <code>--with-abi-profile</code>: arm-vfp-sflt, arm-vfp-hflt, arm-sflt, armv5-vfp-sflt, armv6-vfp-hflt. Note that soft-float ABIs are no longer properly supported by the JDK.</p>
|
||||
<p>The JDK contains two different ports for the aarch64 platform, one is the original aarch64 port from the <a href="http://openjdk.java.net/projects/aarch64-port">AArch64 Port Project</a> and one is a 64-bit version of the Oracle contributed ARM port. When targeting aarch64, by the default the original aarch64 port is used. To select the Oracle ARM 64 port, use <code>--with-cpu-port=arm64</code>. Also set the corresponding value (<code>aarch64</code> or <code>arm64</code>) to --with-abi-profile, to ensure a consistent build.</p>
|
||||
|
||||
@@ -1018,6 +1018,51 @@ Note that X11 is needed even if you only want to build a headless JDK.
|
||||
* If the X11 libraries are not properly detected by `configure`, you can
|
||||
point them out by `--with-x`.
|
||||
|
||||
### Creating And Using Sysroots With qemu-deboostrap
|
||||
|
||||
Fortunately, you can create sysroots for foreign architectures with tools
|
||||
provided by your OS. On Debian/Ubuntu systems, one could use `qemu-deboostrap` to
|
||||
create the *target* system chroot, which would have the native libraries and headers
|
||||
specific to that *target* system. After that, we can use the cross-compiler on the *build*
|
||||
system, pointing into chroot to get the build dependencies right. This allows building
|
||||
for foreign architectures with native compilation speed.
|
||||
|
||||
For example, cross-compiling to AArch64 from x86_64 could be done like this:
|
||||
|
||||
* Install cross-compiler on the *build* system:
|
||||
```
|
||||
apt install g++-aarch64-linux-gnu gcc-aarch64-linux-gnu
|
||||
```
|
||||
|
||||
* Create chroot on the *build* system, configuring it for *target* system:
|
||||
```
|
||||
sudo qemu-debootstrap --arch=arm64 --verbose \
|
||||
--include=fakeroot,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng12-dev \
|
||||
--resolve-deps jessie /chroots/arm64 http://httpredir.debian.org/debian/
|
||||
```
|
||||
|
||||
* Configure and build with newly created chroot as sysroot/toolchain-path:
|
||||
```
|
||||
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ sh ./configure --openjdk-target=aarch64-linux-gnu --with-sysroot=/chroots/arm64/ --with-toolchain-path=/chroots/arm64/
|
||||
make images
|
||||
ls build/linux-aarch64-normal-server-release/
|
||||
```
|
||||
|
||||
The build does not create new files in that chroot, so it can be reused for multiple builds
|
||||
without additional cleanup.
|
||||
|
||||
Architectures that are known to successfully cross-compile like this are:
|
||||
|
||||
Target `CC` `CXX` `--arch=...` `--openjdk-target=...`
|
||||
------------ ------------------------- --------------------------- ------------ ----------------------
|
||||
x86 default default i386 i386-linux-gnu
|
||||
armhf gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf armhf arm-linux-gnueabihf
|
||||
aarch64 gcc-aarch64-linux-gnu g++-aarch64-linux-gnu arm64 aarch64-linux-gnu
|
||||
ppc64el gcc-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu ppc64el powerpc64le-linux-gnu
|
||||
s390x gcc-s390x-linux-gnu g++-s390x-linux-gnu s390x s390x-linux-gnu
|
||||
|
||||
Additional architectures might be supported by Debian/Ubuntu Ports.
|
||||
|
||||
### Building for ARM/aarch64
|
||||
|
||||
A common cross-compilation target is the ARM CPU. When building for ARM, it is
|
||||
|
||||
@@ -511,6 +511,10 @@ jdk.aot_ADD_JAVAC_FLAGS += -parameters -XDstringConcat=inline \
|
||||
--add-exports jdk.internal.vm.ci/jdk.vm.ci.sparc=jdk.internal.vm.compiler,jdk.aot \
|
||||
#
|
||||
|
||||
jdk.aot_EXCLUDES += \
|
||||
jdk.tools.jaotc.test
|
||||
#
|
||||
|
||||
################################################################################
|
||||
|
||||
sun.charsets_COPY += .dat
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
@@ -23,12 +23,10 @@
|
||||
# questions.
|
||||
#
|
||||
|
||||
default: all
|
||||
|
||||
include $(SPEC)
|
||||
include MakeBase.gmk
|
||||
|
||||
$(eval $(call IncludeCustomExtension, SourceRevision.gmk))
|
||||
$(eval $(call IncludeCustomExtension, SourceRevision-pre.gmk))
|
||||
|
||||
################################################################################
|
||||
# Keep track of what source revision is used to create the build, by creating
|
||||
@@ -94,11 +92,14 @@ ifneq ($(and $(HG), $(wildcard $(TOPDIR)/.hg)), )
|
||||
|
||||
$(eval $(call CreateSourceRevisionFile, $(STORED_SOURCE_REVISION)))
|
||||
|
||||
store-source-revision: $(STORED_SOURCE_REVISION)
|
||||
hg-store-source-revision: $(STORED_SOURCE_REVISION)
|
||||
|
||||
$(eval $(call CreateSourceRevisionFile, $(SOURCE_REVISION_TRACKER)))
|
||||
|
||||
create-source-revision-tracker: $(SOURCE_REVISION_TRACKER)
|
||||
hg-create-source-revision-tracker: $(SOURCE_REVISION_TRACKER)
|
||||
|
||||
STORE_SOURCE_REVISION_TARGET := hg-store-source-revision
|
||||
CREATE_SOURCE_REVISION_TRACKER_TARGET := hg-create-source-revision-tracker
|
||||
|
||||
else
|
||||
# Not using HG
|
||||
@@ -106,28 +107,39 @@ else
|
||||
ifneq ($(wildcard $(STORED_SOURCE_REVISION)), )
|
||||
# We have a stored source revision (.src-rev)
|
||||
|
||||
store-source-revision:
|
||||
src-store-source-revision:
|
||||
$(call LogInfo, No mercurial configuration present$(COMMA) not updating .src-rev)
|
||||
|
||||
$(SOURCE_REVISION_TRACKER): $(STORED_SOURCE_REVISION)
|
||||
$(install-file)
|
||||
|
||||
create-source-revision-tracker: $(SOURCE_REVISION_TRACKER)
|
||||
src-create-source-revision-tracker: $(SOURCE_REVISION_TRACKER)
|
||||
else
|
||||
# We don't have a stored source revision. Can't do anything, really.
|
||||
|
||||
store-source-revision:
|
||||
src-store-source-revision:
|
||||
$(call LogWarn, Error: No mercurial configuration present$(COMMA) cannot create .src-rev)
|
||||
exit 2
|
||||
|
||||
create-source-revision-tracker:
|
||||
src-create-source-revision-tracker:
|
||||
$(call LogWarn, Warning: No mercurial configuration present and no .src-rev)
|
||||
endif
|
||||
|
||||
STORE_SOURCE_REVISION_TARGET := src-store-source-revision
|
||||
CREATE_SOURCE_REVISION_TRACKER_TARGET := src-create-source-revision-tracker
|
||||
|
||||
endif
|
||||
|
||||
all: store-source-revision create-source-revision-tracker
|
||||
################################################################################
|
||||
|
||||
$(eval $(call IncludeCustomExtension, SourceRevision-post.gmk))
|
||||
|
||||
################################################################################
|
||||
|
||||
store-source-revision: $(STORE_SOURCE_REVISION_TARGET)
|
||||
|
||||
create-source-revision-tracker: $(CREATE_SOURCE_REVISION_TRACKER_TARGET)
|
||||
|
||||
FRC: # Force target
|
||||
|
||||
.PHONY: all store-source-revision create-source-revision-tracker
|
||||
.PHONY: store-source-revision create-source-revision-tracker
|
||||
|
||||
@@ -106,11 +106,17 @@ AC_DEFUN([FLAGS_SETUP_SHARED_LIBS],
|
||||
|
||||
AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS],
|
||||
[
|
||||
# By default don't set any specific assembler debug
|
||||
# info flags for toolchains unless we know they work.
|
||||
# See JDK-8207057.
|
||||
ASFLAGS_DEBUG_SYMBOLS=""
|
||||
# Debug symbols
|
||||
if test "x$TOOLCHAIN_TYPE" = xgcc; then
|
||||
CFLAGS_DEBUG_SYMBOLS="-g"
|
||||
ASFLAGS_DEBUG_SYMBOLS="-g"
|
||||
elif test "x$TOOLCHAIN_TYPE" = xclang; then
|
||||
CFLAGS_DEBUG_SYMBOLS="-g"
|
||||
ASFLAGS_DEBUG_SYMBOLS="-g"
|
||||
elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
|
||||
# -g0 enables debug symbols without disabling inlining.
|
||||
CFLAGS_DEBUG_SYMBOLS="-g0 -xs"
|
||||
@@ -121,6 +127,7 @@ AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS],
|
||||
fi
|
||||
|
||||
AC_SUBST(CFLAGS_DEBUG_SYMBOLS)
|
||||
AC_SUBST(ASFLAGS_DEBUG_SYMBOLS)
|
||||
])
|
||||
|
||||
AC_DEFUN([FLAGS_SETUP_WARNINGS],
|
||||
@@ -536,14 +543,14 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
|
||||
fi
|
||||
if test "x$TOOLCHAIN_TYPE" = xgcc; then
|
||||
WARNING_CFLAGS_JDK="-Wall -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2"
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wunused-value -Woverloaded-virtual"
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wunused-value -Woverloaded-virtual -Wreorder"
|
||||
|
||||
if ! HOTSPOT_CHECK_JVM_VARIANT(zero); then
|
||||
# Non-zero builds have stricter warnings
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wreturn-type"
|
||||
fi
|
||||
elif test "x$TOOLCHAIN_TYPE" = xclang; then
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wno-deprecated"
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wno-deprecated -Wreorder"
|
||||
if test "x$OPENJDK_TARGET_OS" = xlinux; then
|
||||
WARNING_CFLAGS_JVM="$WARNING_CFLAGS_JVM -Wno-sometimes-uninitialized"
|
||||
WARNING_CFLAGS_JDK="-Wall -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2"
|
||||
|
||||
@@ -139,15 +139,18 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
|
||||
AC_MSG_ERROR([--with-version-string must have a value])
|
||||
elif test "x$with_version_string" != x; then
|
||||
# Additional [] needed to keep m4 from mangling shell constructs.
|
||||
if [ [[ $with_version_string =~ ^([0-9]+)(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(-([a-zA-Z]+))?((\+)([0-9]+)?(-([-a-zA-Z0-9.]+))?)?$ ]] ]; then
|
||||
if [ [[ $with_version_string =~ ^([0-9]+)(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(-([a-zA-Z]+))?((\+)([0-9]+)?(-([-a-zA-Z0-9.]+))?)?$ ]] ]; then
|
||||
VERSION_FEATURE=${BASH_REMATCH[[1]]}
|
||||
VERSION_INTERIM=${BASH_REMATCH[[3]]}
|
||||
VERSION_UPDATE=${BASH_REMATCH[[5]]}
|
||||
VERSION_PATCH=${BASH_REMATCH[[7]]}
|
||||
VERSION_PRE=${BASH_REMATCH[[9]]}
|
||||
version_plus_separator=${BASH_REMATCH[[11]]}
|
||||
VERSION_BUILD=${BASH_REMATCH[[12]]}
|
||||
VERSION_OPT=${BASH_REMATCH[[14]]}
|
||||
VERSION_EXTRA1=${BASH_REMATCH[[9]]}
|
||||
VERSION_EXTRA2=${BASH_REMATCH[[11]]}
|
||||
VERSION_EXTRA3=${BASH_REMATCH[[13]]}
|
||||
VERSION_PRE=${BASH_REMATCH[[15]]}
|
||||
version_plus_separator=${BASH_REMATCH[[17]]}
|
||||
VERSION_BUILD=${BASH_REMATCH[[18]]}
|
||||
VERSION_OPT=${BASH_REMATCH[[20]]}
|
||||
# Unspecified numerical fields are interpreted as 0.
|
||||
if test "x$VERSION_INTERIM" = x; then
|
||||
VERSION_INTERIM=0
|
||||
@@ -158,6 +161,15 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
|
||||
if test "x$VERSION_PATCH" = x; then
|
||||
VERSION_PATCH=0
|
||||
fi
|
||||
if test "x$VERSION_EXTRA1" = x; then
|
||||
VERSION_EXTRA1=0
|
||||
fi
|
||||
if test "x$VERSION_EXTRA2" = x; then
|
||||
VERSION_EXTRA2=0
|
||||
fi
|
||||
if test "x$VERSION_EXTRA3" = x; then
|
||||
VERSION_EXTRA3=0
|
||||
fi
|
||||
if test "x$version_plus_separator" != x \
|
||||
&& test "x$VERSION_BUILD$VERSION_OPT" = x; then
|
||||
AC_MSG_ERROR([Version string contains + but both 'BUILD' and 'OPT' are missing])
|
||||
@@ -327,6 +339,72 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
|
||||
fi
|
||||
fi
|
||||
|
||||
# The 1st version extra number, if any
|
||||
AC_ARG_WITH(version-extra1, [AS_HELP_STRING([--with-version-extra1],
|
||||
[Set 1st version extra number @<:@not specified@:>@])],
|
||||
[with_version_extra1_present=true], [with_version_extra1_present=false])
|
||||
|
||||
if test "x$with_version_extra1_present" = xtrue; then
|
||||
if test "x$with_version_extra1" = xyes; then
|
||||
AC_MSG_ERROR([--with-version-extra1 must have a value])
|
||||
elif test "x$with_version_extra1" = xno; then
|
||||
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no"
|
||||
VERSION_EXTRA1=0
|
||||
elif test "x$with_version_extra1" = x; then
|
||||
VERSION_EXTRA1=0
|
||||
else
|
||||
JDKVER_CHECK_AND_SET_NUMBER(VERSION_EXTRA1, $with_version_extra1)
|
||||
fi
|
||||
else
|
||||
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then
|
||||
VERSION_EXTRA1=$DEFAULT_VERSION_EXTRA1
|
||||
fi
|
||||
fi
|
||||
|
||||
# The 2nd version extra number, if any
|
||||
AC_ARG_WITH(version-extra2, [AS_HELP_STRING([--with-version-extra2],
|
||||
[Set 2nd version extra number @<:@not specified@:>@])],
|
||||
[with_version_extra2_present=true], [with_version_extra2_present=false])
|
||||
|
||||
if test "x$with_version_extra2_present" = xtrue; then
|
||||
if test "x$with_version_extra2" = xyes; then
|
||||
AC_MSG_ERROR([--with-version-extra2 must have a value])
|
||||
elif test "x$with_version_extra2" = xno; then
|
||||
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no"
|
||||
VERSION_EXTRA2=0
|
||||
elif test "x$with_version_extra2" = x; then
|
||||
VERSION_EXTRA2=0
|
||||
else
|
||||
JDKVER_CHECK_AND_SET_NUMBER(VERSION_EXTRA2, $with_version_extra2)
|
||||
fi
|
||||
else
|
||||
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then
|
||||
VERSION_EXTRA2=$DEFAULT_VERSION_EXTRA2
|
||||
fi
|
||||
fi
|
||||
|
||||
# The 3rd version extra number, if any
|
||||
AC_ARG_WITH(version-extra3, [AS_HELP_STRING([--with-version-extra3],
|
||||
[Set 3rd version extra number @<:@not specified@:>@])],
|
||||
[with_version_extra3_present=true], [with_version_extra3_present=false])
|
||||
|
||||
if test "x$with_version_extra3_present" = xtrue; then
|
||||
if test "x$with_version_extra3" = xyes; then
|
||||
AC_MSG_ERROR([--with-version-extra3 must have a value])
|
||||
elif test "x$with_version_extra3" = xno; then
|
||||
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no"
|
||||
VERSION_EXTRA3=0
|
||||
elif test "x$with_version_extra3" = x; then
|
||||
VERSION_EXTRA3=0
|
||||
else
|
||||
JDKVER_CHECK_AND_SET_NUMBER(VERSION_EXTRA3, $with_version_extra3)
|
||||
fi
|
||||
else
|
||||
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then
|
||||
VERSION_EXTRA3=$DEFAULT_VERSION_EXTRA3
|
||||
fi
|
||||
fi
|
||||
|
||||
# Calculate derived version properties
|
||||
|
||||
# Set VERSION_IS_GA based on if VERSION_PRE has a value
|
||||
@@ -339,9 +417,12 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
|
||||
# VERSION_NUMBER but always with exactly 4 positions, with 0 for empty positions.
|
||||
VERSION_NUMBER_FOUR_POSITIONS=$VERSION_FEATURE.$VERSION_INTERIM.$VERSION_UPDATE.$VERSION_PATCH
|
||||
|
||||
stripped_version_number=$VERSION_NUMBER_FOUR_POSITIONS
|
||||
# VERSION_NUMBER but always with all positions, with 0 for empty positions.
|
||||
VERSION_NUMBER_ALL_POSITIONS=$VERSION_NUMBER_FOUR_POSITIONS.$VERSION_EXTRA1.$VERSION_EXTRA2.$VERSION_EXTRA3
|
||||
|
||||
stripped_version_number=$VERSION_NUMBER_ALL_POSITIONS
|
||||
# Strip trailing zeroes from stripped_version_number
|
||||
for i in 1 2 3 ; do stripped_version_number=${stripped_version_number%.0} ; done
|
||||
for i in 1 2 3 4 5 6 ; do stripped_version_number=${stripped_version_number%.0} ; done
|
||||
VERSION_NUMBER=$stripped_version_number
|
||||
|
||||
# The complete version string, with additional build information
|
||||
@@ -392,6 +473,9 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
|
||||
AC_SUBST(VERSION_INTERIM)
|
||||
AC_SUBST(VERSION_UPDATE)
|
||||
AC_SUBST(VERSION_PATCH)
|
||||
AC_SUBST(VERSION_EXTRA1)
|
||||
AC_SUBST(VERSION_EXTRA2)
|
||||
AC_SUBST(VERSION_EXTRA3)
|
||||
AC_SUBST(VERSION_PRE)
|
||||
AC_SUBST(VERSION_BUILD)
|
||||
AC_SUBST(VERSION_OPT)
|
||||
|
||||
@@ -165,6 +165,9 @@ VERSION_FEATURE := @VERSION_FEATURE@
|
||||
VERSION_INTERIM := @VERSION_INTERIM@
|
||||
VERSION_UPDATE := @VERSION_UPDATE@
|
||||
VERSION_PATCH := @VERSION_PATCH@
|
||||
VERSION_EXTRA1 := @VERSION_EXTRA1@
|
||||
VERSION_EXTRA2 := @VERSION_EXTRA2@
|
||||
VERSION_EXTRA3 := @VERSION_EXTRA3@
|
||||
# The pre-release identifier (string)
|
||||
VERSION_PRE := @VERSION_PRE@
|
||||
# The build number (numerical)
|
||||
@@ -203,6 +206,9 @@ VERSION_CFLAGS := \
|
||||
-DVERSION_INTERIM=$(VERSION_INTERIM) \
|
||||
-DVERSION_UPDATE=$(VERSION_UPDATE) \
|
||||
-DVERSION_PATCH=$(VERSION_PATCH) \
|
||||
-DVERSION_EXTRA1=$(VERSION_EXTRA1) \
|
||||
-DVERSION_EXTRA2=$(VERSION_EXTRA2) \
|
||||
-DVERSION_EXTRA3=$(VERSION_EXTRA3) \
|
||||
-DVERSION_PRE='"$(VERSION_PRE)"' \
|
||||
-DVERSION_BUILD=$(VERSION_BUILD) \
|
||||
-DVERSION_OPT='"$(VERSION_OPT)"' \
|
||||
@@ -534,6 +540,7 @@ COPY_DEBUG_SYMBOLS := @COPY_DEBUG_SYMBOLS@
|
||||
ZIP_EXTERNAL_DEBUG_SYMBOLS := @ZIP_EXTERNAL_DEBUG_SYMBOLS@
|
||||
|
||||
CFLAGS_DEBUG_SYMBOLS:=@CFLAGS_DEBUG_SYMBOLS@
|
||||
ASFLAGS_DEBUG_SYMBOLS:=@ASFLAGS_DEBUG_SYMBOLS@
|
||||
|
||||
#
|
||||
# Compress (or not) jars
|
||||
|
||||
@@ -25,14 +25,17 @@
|
||||
|
||||
# Default version numbers to use unless overridden by configure
|
||||
|
||||
DEFAULT_VERSION_FEATURE=11
|
||||
DEFAULT_VERSION_FEATURE=12
|
||||
DEFAULT_VERSION_INTERIM=0
|
||||
DEFAULT_VERSION_UPDATE=0
|
||||
DEFAULT_VERSION_PATCH=0
|
||||
DEFAULT_VERSION_DATE=2018-09-25
|
||||
DEFAULT_VERSION_CLASSFILE_MAJOR=55 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
|
||||
DEFAULT_VERSION_EXTRA1=0
|
||||
DEFAULT_VERSION_EXTRA2=0
|
||||
DEFAULT_VERSION_EXTRA3=0
|
||||
DEFAULT_VERSION_DATE=2019-03-19
|
||||
DEFAULT_VERSION_CLASSFILE_MAJOR=56 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
|
||||
DEFAULT_VERSION_CLASSFILE_MINOR=0
|
||||
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="10 11"
|
||||
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="10 11 12"
|
||||
|
||||
LAUNCHER_NAME=openjdk
|
||||
PRODUCT_NAME=OpenJDK
|
||||
|
||||
@@ -251,6 +251,7 @@ define SetupCompileNativeFileBody
|
||||
$$($$($1_BASE)_SYSROOT_CFLAGS)
|
||||
$1_BASE_CXXFLAGS := $$($$($1_BASE)_CXXFLAGS) $$($$($1_BASE)_EXTRA_CXXFLAGS) \
|
||||
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS)
|
||||
$1_BASE_ASFLAGS := $$($$($1_BASE)_ASFLAGS) $$($$($1_BASE)_EXTRA_ASFLAGS)
|
||||
|
||||
ifneq ($$(filter %.c, $$($1_FILENAME)), )
|
||||
# Compile as a C file
|
||||
@@ -266,7 +267,7 @@ define SetupCompileNativeFileBody
|
||||
$1_DEP_FLAG := $(C_FLAG_DEPS)
|
||||
else ifneq ($$(filter %.s %.S, $$($1_FILENAME)), )
|
||||
# Compile as assembler file
|
||||
$1_FLAGS := $$($$($1_BASE)_ASFLAGS)
|
||||
$1_FLAGS := $$($1_BASE_ASFLAGS)
|
||||
$1_COMPILER := $(AS)
|
||||
$1_DEP_FLAG :=
|
||||
else ifneq ($$(filter %.cpp %.cc %.mm, $$($1_FILENAME)), )
|
||||
@@ -576,6 +577,7 @@ define SetupNativeCompilationBody
|
||||
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true)
|
||||
$1_EXTRA_CFLAGS += $$(CFLAGS_DEBUG_SYMBOLS)
|
||||
$1_EXTRA_CXXFLAGS += $$(CFLAGS_DEBUG_SYMBOLS)
|
||||
$1_EXTRA_ASFLAGS += $$(ASFLAGS_DEBUG_SYMBOLS)
|
||||
endif
|
||||
|
||||
ifneq ($$($1_REORDER), )
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
@@ -72,7 +72,7 @@ $(eval $(call SetupJavaCompiler,GENERATE_OLDBYTECODE, \
|
||||
$(eval $(call SetupJavaCompiler,GENERATE_JDKBYTECODE, \
|
||||
JVM := $(JAVA_JAVAC), \
|
||||
JAVAC := $(NEW_JAVAC), \
|
||||
FLAGS := -source 11 -target 11 --doclint-format html5 \
|
||||
FLAGS := -source 12 -target 12 --doclint-format html5 \
|
||||
-encoding ascii -XDignore.symbol.file=true $(JAVAC_WARNINGS), \
|
||||
SERVER_DIR := $(SJAVAC_SERVER_DIR), \
|
||||
SERVER_JVM := $(SJAVAC_SERVER_JAVA)))
|
||||
@@ -82,7 +82,7 @@ $(eval $(call SetupJavaCompiler,GENERATE_JDKBYTECODE, \
|
||||
$(eval $(call SetupJavaCompiler,GENERATE_JDKBYTECODE_NOWARNINGS, \
|
||||
JVM := $(JAVA_JAVAC), \
|
||||
JAVAC := $(NEW_JAVAC), \
|
||||
FLAGS := -source 11 -target 11 \
|
||||
FLAGS := -source 12 -target 12 \
|
||||
-encoding ascii -XDignore.symbol.file=true $(DISABLE_WARNINGS), \
|
||||
SERVER_DIR := $(SJAVAC_SERVER_DIR), \
|
||||
SERVER_JVM := $(SJAVAC_SERVER_JAVA)))
|
||||
|
||||
@@ -60,13 +60,13 @@ define SetupTestFilesCompilationBody
|
||||
ifeq ($$($1_TYPE), LIBRARY)
|
||||
$1_PREFIX = lib
|
||||
$1_OUTPUT_SUBDIR := lib
|
||||
$1_CFLAGS := $(CFLAGS_TESTLIB)
|
||||
$1_CFLAGS += $(CFLAGS_TESTLIB)
|
||||
$1_LDFLAGS := $(LDFLAGS_TESTLIB) $(call SET_SHARED_LIBRARY_ORIGIN)
|
||||
$1_COMPILATION_TYPE := LIBRARY
|
||||
else ifeq ($$($1_TYPE), PROGRAM)
|
||||
$1_PREFIX = exe
|
||||
$1_OUTPUT_SUBDIR := bin
|
||||
$1_CFLAGS := $(CFLAGS_TESTEXE)
|
||||
$1_CFLAGS += $(CFLAGS_TESTEXE)
|
||||
$1_LDFLAGS := $(LDFLAGS_TESTEXE)
|
||||
$1_COMPILATION_TYPE := EXECUTABLE
|
||||
else
|
||||
@@ -75,7 +75,8 @@ define SetupTestFilesCompilationBody
|
||||
|
||||
# Locate all files with the matching prefix
|
||||
$1_FILE_LIST := \
|
||||
$$(shell $$(FIND) $$($1_SOURCE_DIRS) -type f -name "$$($1_PREFIX)*.c")
|
||||
$$(shell $$(FIND) $$($1_SOURCE_DIRS) -type f \( -name "$$($1_PREFIX)*.c" \
|
||||
-o -name "$$($1_PREFIX)*.cpp" \))
|
||||
|
||||
$1_EXCLUDE_PATTERN := $$(addprefix %/, $$($1_EXCLUDE))
|
||||
$1_FILTERED_FILE_LIST := $$(filter-out $$($1_EXCLUDE_PATTERN), $$($1_FILE_LIST))
|
||||
@@ -94,7 +95,8 @@ define SetupTestFilesCompilationBody
|
||||
CFLAGS := $$($1_CFLAGS) $$($1_CFLAGS_$$(name)), \
|
||||
LDFLAGS := $$($1_LDFLAGS) $$($1_LDFLAGS_$$(name)), \
|
||||
LIBS := $$($1_LIBS_$$(name)), \
|
||||
OPTIMIZATION := LOW, \
|
||||
TOOLCHAIN := $(if $$(filter %.cpp, $$(file)), TOOLCHAIN_LINK_CXX, TOOLCHAIN_DEFAULT), \
|
||||
OPTIMIZATION := $$(if $$($1_OPTIMIZATION_$$(name)),$$($1_OPTIMIZATION_$$(name)),LOW), \
|
||||
COPY_DEBUG_SYMBOLS := false, \
|
||||
STRIP_SYMBOLS := false, \
|
||||
)) \
|
||||
|
||||
@@ -901,7 +901,7 @@ var getJibProfilesDependencies = function (input, common) {
|
||||
jtreg: {
|
||||
server: "javare",
|
||||
revision: "4.2",
|
||||
build_number: "b12",
|
||||
build_number: "b13",
|
||||
checksum_file: "MD5_VALUES",
|
||||
file: "jtreg_bin-4.2.zip",
|
||||
environment_name: "JT_HOME",
|
||||
@@ -1171,7 +1171,7 @@ var versionArgs = function(input, common) {
|
||||
args = concat(args,
|
||||
// This needs to be changed when we start building release candidates
|
||||
// with-version-pre must be set to ea for 'ea' and empty for fcs build
|
||||
"--with-version-pre=",
|
||||
"--with-version-pre=ea",
|
||||
"--without-version-opt");
|
||||
} else {
|
||||
args = concat(args, "--with-version-opt=" + common.build_id);
|
||||
|
||||
94
make/data/charsetmapping/IBM1129.c2b
Normal file
94
make/data/charsetmapping/IBM1129.c2b
Normal file
@@ -0,0 +1,94 @@
|
||||
0x21 U+ff01
|
||||
0x22 U+ff02
|
||||
0x23 U+ff03
|
||||
0x24 U+ff04
|
||||
0x25 U+ff05
|
||||
0x26 U+ff06
|
||||
0x27 U+ff07
|
||||
0x28 U+ff08
|
||||
0x29 U+ff09
|
||||
0x2a U+ff0a
|
||||
0x2b U+ff0b
|
||||
0x2c U+ff0c
|
||||
0x2d U+ff0d
|
||||
0x2e U+ff0e
|
||||
0x2f U+ff0f
|
||||
0x30 U+ff10
|
||||
0x31 U+ff11
|
||||
0x32 U+ff12
|
||||
0x33 U+ff13
|
||||
0x34 U+ff14
|
||||
0x35 U+ff15
|
||||
0x36 U+ff16
|
||||
0x37 U+ff17
|
||||
0x38 U+ff18
|
||||
0x39 U+ff19
|
||||
0x3a U+ff1a
|
||||
0x3b U+ff1b
|
||||
0x3c U+ff1c
|
||||
0x3d U+ff1d
|
||||
0x3e U+ff1e
|
||||
0x3f U+ff1f
|
||||
0x40 U+ff20
|
||||
0x41 U+ff21
|
||||
0x42 U+ff22
|
||||
0x43 U+ff23
|
||||
0x44 U+ff24
|
||||
0x45 U+ff25
|
||||
0x46 U+ff26
|
||||
0x47 U+ff27
|
||||
0x48 U+ff28
|
||||
0x49 U+ff29
|
||||
0x4a U+ff2a
|
||||
0x4b U+ff2b
|
||||
0x4c U+ff2c
|
||||
0x4d U+ff2d
|
||||
0x4e U+ff2e
|
||||
0x4f U+ff2f
|
||||
0x50 U+ff30
|
||||
0x51 U+ff31
|
||||
0x52 U+ff32
|
||||
0x53 U+ff33
|
||||
0x54 U+ff34
|
||||
0x55 U+ff35
|
||||
0x56 U+ff36
|
||||
0x57 U+ff37
|
||||
0x58 U+ff38
|
||||
0x59 U+ff39
|
||||
0x5a U+ff3a
|
||||
0x5b U+ff3b
|
||||
0x5c U+ff3c
|
||||
0x5d U+ff3d
|
||||
0x5e U+ff3e
|
||||
0x5f U+ff3f
|
||||
0x60 U+ff40
|
||||
0x61 U+ff41
|
||||
0x62 U+ff42
|
||||
0x63 U+ff43
|
||||
0x64 U+ff44
|
||||
0x65 U+ff45
|
||||
0x66 U+ff46
|
||||
0x67 U+ff47
|
||||
0x68 U+ff48
|
||||
0x69 U+ff49
|
||||
0x6a U+ff4a
|
||||
0x6b U+ff4b
|
||||
0x6c U+ff4c
|
||||
0x6d U+ff4d
|
||||
0x6e U+ff4e
|
||||
0x6f U+ff4f
|
||||
0x70 U+ff50
|
||||
0x71 U+ff51
|
||||
0x72 U+ff52
|
||||
0x73 U+ff53
|
||||
0x74 U+ff54
|
||||
0x75 U+ff55
|
||||
0x76 U+ff56
|
||||
0x77 U+ff57
|
||||
0x78 U+ff58
|
||||
0x79 U+ff59
|
||||
0x7a U+ff5a
|
||||
0x7b U+ff5b
|
||||
0x7c U+ff5c
|
||||
0x7d U+ff5d
|
||||
0x7e U+ff5e
|
||||
256
make/data/charsetmapping/IBM1129.map
Normal file
256
make/data/charsetmapping/IBM1129.map
Normal file
@@ -0,0 +1,256 @@
|
||||
0x00 U+0000
|
||||
0x01 U+0001
|
||||
0x02 U+0002
|
||||
0x03 U+0003
|
||||
0x04 U+0004
|
||||
0x05 U+0005
|
||||
0x06 U+0006
|
||||
0x07 U+0007
|
||||
0x08 U+0008
|
||||
0x09 U+0009
|
||||
0x0a U+000a
|
||||
0x0b U+000b
|
||||
0x0c U+000c
|
||||
0x0d U+000d
|
||||
0x0e U+000e
|
||||
0x0f U+000f
|
||||
0x10 U+0010
|
||||
0x11 U+0011
|
||||
0x12 U+0012
|
||||
0x13 U+0013
|
||||
0x14 U+0014
|
||||
0x15 U+0015
|
||||
0x16 U+0016
|
||||
0x17 U+0017
|
||||
0x18 U+0018
|
||||
0x19 U+0019
|
||||
0x1a U+001a
|
||||
0x1b U+001b
|
||||
0x1c U+001c
|
||||
0x1d U+001d
|
||||
0x1e U+001e
|
||||
0x1f U+001f
|
||||
0x20 U+0020
|
||||
0x21 U+0021
|
||||
0x22 U+0022
|
||||
0x23 U+0023
|
||||
0x24 U+0024
|
||||
0x25 U+0025
|
||||
0x26 U+0026
|
||||
0x27 U+0027
|
||||
0x28 U+0028
|
||||
0x29 U+0029
|
||||
0x2a U+002a
|
||||
0x2b U+002b
|
||||
0x2c U+002c
|
||||
0x2d U+002d
|
||||
0x2e U+002e
|
||||
0x2f U+002f
|
||||
0x30 U+0030
|
||||
0x31 U+0031
|
||||
0x32 U+0032
|
||||
0x33 U+0033
|
||||
0x34 U+0034
|
||||
0x35 U+0035
|
||||
0x36 U+0036
|
||||
0x37 U+0037
|
||||
0x38 U+0038
|
||||
0x39 U+0039
|
||||
0x3a U+003a
|
||||
0x3b U+003b
|
||||
0x3c U+003c
|
||||
0x3d U+003d
|
||||
0x3e U+003e
|
||||
0x3f U+003f
|
||||
0x40 U+0040
|
||||
0x41 U+0041
|
||||
0x42 U+0042
|
||||
0x43 U+0043
|
||||
0x44 U+0044
|
||||
0x45 U+0045
|
||||
0x46 U+0046
|
||||
0x47 U+0047
|
||||
0x48 U+0048
|
||||
0x49 U+0049
|
||||
0x4a U+004a
|
||||
0x4b U+004b
|
||||
0x4c U+004c
|
||||
0x4d U+004d
|
||||
0x4e U+004e
|
||||
0x4f U+004f
|
||||
0x50 U+0050
|
||||
0x51 U+0051
|
||||
0x52 U+0052
|
||||
0x53 U+0053
|
||||
0x54 U+0054
|
||||
0x55 U+0055
|
||||
0x56 U+0056
|
||||
0x57 U+0057
|
||||
0x58 U+0058
|
||||
0x59 U+0059
|
||||
0x5a U+005a
|
||||
0x5b U+005b
|
||||
0x5c U+005c
|
||||
0x5d U+005d
|
||||
0x5e U+005e
|
||||
0x5f U+005f
|
||||
0x60 U+0060
|
||||
0x61 U+0061
|
||||
0x62 U+0062
|
||||
0x63 U+0063
|
||||
0x64 U+0064
|
||||
0x65 U+0065
|
||||
0x66 U+0066
|
||||
0x67 U+0067
|
||||
0x68 U+0068
|
||||
0x69 U+0069
|
||||
0x6a U+006a
|
||||
0x6b U+006b
|
||||
0x6c U+006c
|
||||
0x6d U+006d
|
||||
0x6e U+006e
|
||||
0x6f U+006f
|
||||
0x70 U+0070
|
||||
0x71 U+0071
|
||||
0x72 U+0072
|
||||
0x73 U+0073
|
||||
0x74 U+0074
|
||||
0x75 U+0075
|
||||
0x76 U+0076
|
||||
0x77 U+0077
|
||||
0x78 U+0078
|
||||
0x79 U+0079
|
||||
0x7a U+007a
|
||||
0x7b U+007b
|
||||
0x7c U+007c
|
||||
0x7d U+007d
|
||||
0x7e U+007e
|
||||
0x7f U+007f
|
||||
0x80 U+0080
|
||||
0x81 U+0081
|
||||
0x82 U+0082
|
||||
0x83 U+0083
|
||||
0x84 U+0084
|
||||
0x85 U+0085
|
||||
0x86 U+0086
|
||||
0x87 U+0087
|
||||
0x88 U+0088
|
||||
0x89 U+0089
|
||||
0x8a U+008a
|
||||
0x8b U+008b
|
||||
0x8c U+008c
|
||||
0x8d U+008d
|
||||
0x8e U+008e
|
||||
0x8f U+008f
|
||||
0x90 U+0090
|
||||
0x91 U+0091
|
||||
0x92 U+0092
|
||||
0x93 U+0093
|
||||
0x94 U+0094
|
||||
0x95 U+0095
|
||||
0x96 U+0096
|
||||
0x97 U+0097
|
||||
0x98 U+0098
|
||||
0x99 U+0099
|
||||
0x9a U+009a
|
||||
0x9b U+009b
|
||||
0x9c U+009c
|
||||
0x9d U+009d
|
||||
0x9e U+009e
|
||||
0x9f U+009f
|
||||
0xa0 U+00a0
|
||||
0xa1 U+00a1
|
||||
0xa2 U+00a2
|
||||
0xa3 U+00a3
|
||||
0xa4 U+00a4
|
||||
0xa5 U+00a5
|
||||
0xa6 U+00a6
|
||||
0xa7 U+00a7
|
||||
0xa8 U+0153
|
||||
0xa9 U+00a9
|
||||
0xaa U+00aa
|
||||
0xab U+00ab
|
||||
0xac U+00ac
|
||||
0xad U+00ad
|
||||
0xae U+00ae
|
||||
0xaf U+00af
|
||||
0xb0 U+00b0
|
||||
0xb1 U+00b1
|
||||
0xb2 U+00b2
|
||||
0xb3 U+00b3
|
||||
0xb4 U+0178
|
||||
0xb5 U+00b5
|
||||
0xb6 U+00b6
|
||||
0xb7 U+00b7
|
||||
0xb8 U+0152
|
||||
0xb9 U+00b9
|
||||
0xba U+00ba
|
||||
0xbb U+00bb
|
||||
0xbc U+00bc
|
||||
0xbd U+00bd
|
||||
0xbe U+00be
|
||||
0xbf U+00bf
|
||||
0xc0 U+00c0
|
||||
0xc1 U+00c1
|
||||
0xc2 U+00c2
|
||||
0xc3 U+0102
|
||||
0xc4 U+00c4
|
||||
0xc5 U+00c5
|
||||
0xc6 U+00c6
|
||||
0xc7 U+00c7
|
||||
0xc8 U+00c8
|
||||
0xc9 U+00c9
|
||||
0xca U+00ca
|
||||
0xcb U+00cb
|
||||
0xcc U+0300
|
||||
0xcd U+00cd
|
||||
0xce U+00ce
|
||||
0xcf U+00cf
|
||||
0xd0 U+0110
|
||||
0xd1 U+00d1
|
||||
0xd2 U+0309
|
||||
0xd3 U+00d3
|
||||
0xd4 U+00d4
|
||||
0xd5 U+01a0
|
||||
0xd6 U+00d6
|
||||
0xd7 U+00d7
|
||||
0xd8 U+00d8
|
||||
0xd9 U+00d9
|
||||
0xda U+00da
|
||||
0xdb U+00db
|
||||
0xdc U+00dc
|
||||
0xdd U+01af
|
||||
0xde U+0303
|
||||
0xdf U+00df
|
||||
0xe0 U+00e0
|
||||
0xe1 U+00e1
|
||||
0xe2 U+00e2
|
||||
0xe3 U+0103
|
||||
0xe4 U+00e4
|
||||
0xe5 U+00e5
|
||||
0xe6 U+00e6
|
||||
0xe7 U+00e7
|
||||
0xe8 U+00e8
|
||||
0xe9 U+00e9
|
||||
0xea U+00ea
|
||||
0xeb U+00eb
|
||||
0xec U+0301
|
||||
0xed U+00ed
|
||||
0xee U+00ee
|
||||
0xef U+00ef
|
||||
0xf0 U+0111
|
||||
0xf1 U+00f1
|
||||
0xf2 U+0323
|
||||
0xf3 U+00f3
|
||||
0xf4 U+00f4
|
||||
0xf5 U+01a1
|
||||
0xf6 U+00f6
|
||||
0xf7 U+00f7
|
||||
0xf8 U+00f8
|
||||
0xf9 U+00f9
|
||||
0xfa U+00fa
|
||||
0xfb U+00fb
|
||||
0xfc U+00fc
|
||||
0xfd U+01b0
|
||||
0xfe U+20ab
|
||||
0xff U+00ff
|
||||
@@ -1241,6 +1241,16 @@ charset x-IBM1124 IBM1124
|
||||
alias ibm-1124
|
||||
alias 1124
|
||||
|
||||
charset x-IBM1129 IBM1129
|
||||
package sun.nio.cs.ext
|
||||
type sbcs
|
||||
hisname Cp1129
|
||||
ascii false
|
||||
alias cp1129 # JDK historical
|
||||
alias ibm1129
|
||||
alias ibm-1129
|
||||
alias 1129
|
||||
|
||||
charset x-IBM1364 IBM1364
|
||||
package sun.nio.cs.ext
|
||||
type ebcdic
|
||||
|
||||
@@ -19,6 +19,7 @@ IBM950
|
||||
IBM970
|
||||
IBM1046
|
||||
IBM1124
|
||||
IBM1129
|
||||
IBM1383
|
||||
ISO_8859_6
|
||||
ISO_8859_8
|
||||
|
||||
@@ -32,7 +32,7 @@ formatVersion=3
|
||||
# Version of the currency code information in this class.
|
||||
# It is a serial number that accompanies with each amendment.
|
||||
|
||||
dataVersion=167
|
||||
dataVersion=169
|
||||
|
||||
# List of all valid ISO 4217 currency codes.
|
||||
# To ensure compatibility, do not remove codes.
|
||||
@@ -54,7 +54,7 @@ all=ADP020-AED784-AFA004-AFN971-ALL008-AMD051-ANG532-AOA973-ARS032-ATS040-AUD036
|
||||
SBD090-SCR690-SDD736-SDG938-SEK752-SGD702-SHP654-SIT705-SKK703-SLL694-SOS706-\
|
||||
SRD968-SRG740-SSP728-STD678-STN930-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TMT934-TND788-TOP776-\
|
||||
TPE626-TRL792-TRY949-TTD780-TWD901-TZS834-UAH980-UGX800-USD840-USN997-USS998-UYI940-\
|
||||
UYU858-UZS860-VEB862-VEF937-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
|
||||
UYU858-UZS860-VEB862-VEF937-VES928-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
|
||||
XBB956-XBC957-XBD958-XCD951-XDR960-XFO000-XFU000-XOF952-XPD964-XPF953-\
|
||||
XPT962-XSU994-XTS963-XUA965-XXX999-YER886-YUM891-ZAR710-ZMK894-ZMW967-ZWD716-ZWL932-\
|
||||
ZWN942-ZWR935
|
||||
@@ -509,7 +509,7 @@ SR=SRD
|
||||
SJ=NOK
|
||||
# Sint Maarten (Dutch part)
|
||||
SX=ANG
|
||||
# SWAZILAND
|
||||
# ESWATINI
|
||||
SZ=SZL
|
||||
# SWEDEN
|
||||
SE=SEK
|
||||
@@ -564,7 +564,7 @@ UZ=UZS
|
||||
# VANUATU
|
||||
VU=VUV
|
||||
# VENEZUELA (BOLIVARIAN REPUBLIC OF)
|
||||
VE=VEF
|
||||
VE=VES
|
||||
# VIET NAM
|
||||
VN=VND
|
||||
# VIRGIN ISLANDS, BRITISH
|
||||
|
||||
@@ -75,7 +75,7 @@ h4 {
|
||||
}
|
||||
|
||||
a:link {
|
||||
color: #437291;
|
||||
color: #4A6782;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
@@ -117,7 +117,7 @@ caption {
|
||||
}
|
||||
|
||||
tr:nth-child(even), tr:nth-child(even) th[scope=row] {
|
||||
background: #DDD;
|
||||
background: #E3E3E3;
|
||||
}
|
||||
|
||||
tr:nth-child(odd), tr:nth-child(odd) th[scope=row] {
|
||||
|
||||
@@ -1,890 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name java/io/Closeable
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/io/File
|
||||
-method name toPath descriptor ()Ljava/nio/file/Path;
|
||||
|
||||
class name java/io/FileOutputStream
|
||||
-method name write descriptor (I)V
|
||||
method name write descriptor (I)V thrownTypes java/io/IOException flags 101
|
||||
|
||||
class name java/io/ObjectInput
|
||||
header extends java/lang/Object implements java/io/DataInput flags 601
|
||||
|
||||
class name java/io/ObjectOutput
|
||||
header extends java/lang/Object implements java/io/DataOutput flags 601
|
||||
|
||||
class name java/lang/AssertionError
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;)V
|
||||
|
||||
-class name java/lang/AutoCloseable
|
||||
|
||||
class name java/lang/Boolean
|
||||
-method name compare descriptor (ZZ)I
|
||||
|
||||
-class name java/lang/BootstrapMethodError
|
||||
|
||||
class name java/lang/Byte
|
||||
-method name compare descriptor (BB)I
|
||||
|
||||
class name java/lang/Character
|
||||
header extends java/lang/Object implements java/io/Serializable,java/lang/Comparable flags 31 signature Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable<Ljava/lang/Character;>;
|
||||
innerclass innerClass java/lang/Character$Subset outerClass java/lang/Character innerClassName Subset flags 9
|
||||
innerclass innerClass java/lang/Character$UnicodeBlock outerClass java/lang/Character innerClassName UnicodeBlock flags 19
|
||||
-method name isBmpCodePoint descriptor (I)Z
|
||||
-method name isSurrogate descriptor (C)Z
|
||||
-method name highSurrogate descriptor (I)C
|
||||
-method name lowSurrogate descriptor (I)C
|
||||
-method name isAlphabetic descriptor (I)Z
|
||||
-method name isIdeographic descriptor (I)Z
|
||||
-method name compare descriptor (CC)I
|
||||
-method name getName descriptor (I)Ljava/lang/String;
|
||||
|
||||
class name java/lang/Character$UnicodeBlock
|
||||
-field name ARABIC_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name NKO descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name SAMARITAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MANDAIC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ETHIOPIC_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name NEW_TAI_LUE descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BUGINESE descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name TAI_THAM descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BALINESE descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name SUNDANESE descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BATAK descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LEPCHA descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name OL_CHIKI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name VEDIC_EXTENSIONS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name PHONETIC_EXTENSIONS_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name COMBINING_DIACRITICAL_MARKS_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name GLAGOLITIC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LATIN_EXTENDED_C descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name COPTIC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name GEORGIAN_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name TIFINAGH descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ETHIOPIC_EXTENDED descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CYRILLIC_EXTENDED_A descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name SUPPLEMENTAL_PUNCTUATION descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CJK_STROKES descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LISU descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name VAI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CYRILLIC_EXTENDED_B descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BAMUM descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MODIFIER_TONE_LETTERS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LATIN_EXTENDED_D descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name SYLOTI_NAGRI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name COMMON_INDIC_NUMBER_FORMS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name PHAGS_PA descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name SAURASHTRA descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name DEVANAGARI_EXTENDED descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name KAYAH_LI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name REJANG descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name HANGUL_JAMO_EXTENDED_A descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name JAVANESE descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CHAM descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MYANMAR_EXTENDED_A descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name TAI_VIET descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ETHIOPIC_EXTENDED_A descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MEETEI_MAYEK descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name HANGUL_JAMO_EXTENDED_B descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name VERTICAL_FORMS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ANCIENT_GREEK_NUMBERS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ANCIENT_SYMBOLS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name PHAISTOS_DISC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LYCIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CARIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name OLD_PERSIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name IMPERIAL_ARAMAIC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name PHOENICIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name LYDIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name KHAROSHTHI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name OLD_SOUTH_ARABIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name AVESTAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name INSCRIPTIONAL_PARTHIAN descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name INSCRIPTIONAL_PAHLAVI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name OLD_TURKIC descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name RUMI_NUMERAL_SYMBOLS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BRAHMI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name KAITHI descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CUNEIFORM descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CUNEIFORM_NUMBERS_AND_PUNCTUATION descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name EGYPTIAN_HIEROGLYPHS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name BAMUM_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name KANA_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ANCIENT_GREEK_MUSICAL_NOTATION descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name COUNTING_ROD_NUMERALS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MAHJONG_TILES descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name DOMINO_TILES descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name PLAYING_CARDS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ENCLOSED_ALPHANUMERIC_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ENCLOSED_IDEOGRAPHIC_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name EMOTICONS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name TRANSPORT_AND_MAP_SYMBOLS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name ALCHEMICAL_SYMBOLS descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
-field name CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D descriptor Ljava/lang/Character$UnicodeBlock;
|
||||
|
||||
-class name java/lang/Character$UnicodeScript
|
||||
|
||||
class name java/lang/ClassLoader
|
||||
-method name loadClass descriptor (Ljava/lang/String;Z)Ljava/lang/Class;
|
||||
-method name getClassLoadingLock descriptor (Ljava/lang/String;)Ljava/lang/Object;
|
||||
-method name setDefaultAssertionStatus descriptor (Z)V
|
||||
-method name setPackageAssertionStatus descriptor (Ljava/lang/String;Z)V
|
||||
-method name setClassAssertionStatus descriptor (Ljava/lang/String;Z)V
|
||||
-method name clearAssertionStatus descriptor ()V
|
||||
-method name registerAsParallelCapable descriptor ()Z
|
||||
method name loadClass descriptor (Ljava/lang/String;Z)Ljava/lang/Class; thrownTypes java/lang/ClassNotFoundException flags 24 signature (Ljava/lang/String;Z)Ljava/lang/Class<*>;
|
||||
method name setDefaultAssertionStatus descriptor (Z)V flags 21
|
||||
method name setPackageAssertionStatus descriptor (Ljava/lang/String;Z)V flags 21
|
||||
method name setClassAssertionStatus descriptor (Ljava/lang/String;Z)V flags 21
|
||||
method name clearAssertionStatus descriptor ()V flags 21
|
||||
|
||||
class name java/lang/ClassNotFoundException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
-class name java/lang/ClassValue
|
||||
|
||||
class name java/lang/Deprecated
|
||||
header extends java/lang/Object implements java/lang/annotation/Annotation flags 2601 runtimeAnnotations @Ljava/lang/annotation/Documented;@Ljava/lang/annotation/Retention;(value=eLjava/lang/annotation/RetentionPolicy;RUNTIME;)
|
||||
|
||||
class name java/lang/Error
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;ZZ)V
|
||||
|
||||
class name java/lang/Exception
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;ZZ)V
|
||||
|
||||
class name java/lang/IllegalAccessException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
class name java/lang/InstantiationException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
class name java/lang/Integer
|
||||
-method name compare descriptor (II)I
|
||||
|
||||
class name java/lang/LinkageError
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;)V
|
||||
|
||||
class name java/lang/Long
|
||||
-method name compare descriptor (JJ)I
|
||||
|
||||
class name java/lang/NoSuchFieldException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
class name java/lang/NoSuchMethodException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
class name java/lang/ProcessBuilder
|
||||
header extends java/lang/Object flags 31
|
||||
-method name redirectInput descriptor (Ljava/lang/ProcessBuilder$Redirect;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectOutput descriptor (Ljava/lang/ProcessBuilder$Redirect;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectError descriptor (Ljava/lang/ProcessBuilder$Redirect;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectInput descriptor (Ljava/io/File;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectOutput descriptor (Ljava/io/File;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectError descriptor (Ljava/io/File;)Ljava/lang/ProcessBuilder;
|
||||
-method name redirectInput descriptor ()Ljava/lang/ProcessBuilder$Redirect;
|
||||
-method name redirectOutput descriptor ()Ljava/lang/ProcessBuilder$Redirect;
|
||||
-method name redirectError descriptor ()Ljava/lang/ProcessBuilder$Redirect;
|
||||
-method name inheritIO descriptor ()Ljava/lang/ProcessBuilder;
|
||||
|
||||
-class name java/lang/ProcessBuilder$Redirect
|
||||
|
||||
-class name java/lang/ProcessBuilder$Redirect$Type
|
||||
|
||||
-class name java/lang/ReflectiveOperationException
|
||||
|
||||
class name java/lang/RuntimeException
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;ZZ)V
|
||||
|
||||
-class name java/lang/SafeVarargs
|
||||
|
||||
class name java/lang/Short
|
||||
-method name compare descriptor (SS)I
|
||||
|
||||
class name java/lang/StrictMath
|
||||
-method name ceil descriptor (D)D
|
||||
-method name floor descriptor (D)D
|
||||
method name ceil descriptor (D)D flags 109
|
||||
method name floor descriptor (D)D flags 109
|
||||
|
||||
class name java/lang/System
|
||||
-method name lineSeparator descriptor ()Ljava/lang/String;
|
||||
|
||||
class name java/lang/Thread
|
||||
-method name clone descriptor ()Ljava/lang/Object;
|
||||
|
||||
class name java/lang/Throwable
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;ZZ)V
|
||||
-method name getCause descriptor ()Ljava/lang/Throwable;
|
||||
-method name fillInStackTrace descriptor ()Ljava/lang/Throwable;
|
||||
-method name addSuppressed descriptor (Ljava/lang/Throwable;)V
|
||||
-method name getSuppressed descriptor ()[Ljava/lang/Throwable;
|
||||
method name getCause descriptor ()Ljava/lang/Throwable; flags 1
|
||||
method name fillInStackTrace descriptor ()Ljava/lang/Throwable; flags 121
|
||||
|
||||
-class name java/lang/invoke/CallSite
|
||||
|
||||
-class name java/lang/invoke/ConstantCallSite
|
||||
|
||||
-class name java/lang/invoke/MethodHandle
|
||||
|
||||
-class name java/lang/invoke/MethodHandleProxies
|
||||
|
||||
-class name java/lang/invoke/MethodHandles
|
||||
|
||||
-class name java/lang/invoke/MethodHandles$Lookup
|
||||
|
||||
-class name java/lang/invoke/MethodType
|
||||
|
||||
-class name java/lang/invoke/MutableCallSite
|
||||
|
||||
-class name java/lang/invoke/SwitchPoint
|
||||
|
||||
-class name java/lang/invoke/VolatileCallSite
|
||||
|
||||
-class name java/lang/invoke/WrongMethodTypeException
|
||||
|
||||
class name java/lang/reflect/InvocationTargetException
|
||||
header extends java/lang/Exception flags 21
|
||||
|
||||
class name java/lang/reflect/Modifier
|
||||
-method name classModifiers descriptor ()I
|
||||
-method name interfaceModifiers descriptor ()I
|
||||
-method name constructorModifiers descriptor ()I
|
||||
-method name methodModifiers descriptor ()I
|
||||
-method name fieldModifiers descriptor ()I
|
||||
|
||||
class name java/net/DatagramSocket
|
||||
header extends java/lang/Object flags 21
|
||||
|
||||
class name java/net/HttpCookie
|
||||
-method name isHttpOnly descriptor ()Z
|
||||
-method name setHttpOnly descriptor (Z)V
|
||||
|
||||
class name java/net/HttpURLConnection
|
||||
-field name fixedContentLengthLong descriptor J
|
||||
-method name setFixedLengthStreamingMode descriptor (J)V
|
||||
|
||||
class name java/net/InetAddress
|
||||
-method name getLoopbackAddress descriptor ()Ljava/net/InetAddress;
|
||||
|
||||
class name java/net/InetSocketAddress
|
||||
-method name getHostString descriptor ()Ljava/lang/String;
|
||||
|
||||
class name java/net/NetworkInterface
|
||||
-method name getIndex descriptor ()I
|
||||
-method name getByIndex descriptor (I)Ljava/net/NetworkInterface;
|
||||
|
||||
-class name java/net/ProtocolFamily
|
||||
|
||||
class name java/net/ServerSocket
|
||||
header extends java/lang/Object flags 21
|
||||
|
||||
class name java/net/Socket
|
||||
header extends java/lang/Object flags 21
|
||||
|
||||
-class name java/net/SocketOption
|
||||
|
||||
-class name java/net/StandardProtocolFamily
|
||||
|
||||
-class name java/net/StandardSocketOptions
|
||||
|
||||
class name java/net/URLClassLoader
|
||||
header extends java/security/SecureClassLoader flags 21
|
||||
-method name getResourceAsStream descriptor (Ljava/lang/String;)Ljava/io/InputStream;
|
||||
-method name close descriptor ()V
|
||||
|
||||
class name java/net/URLConnection
|
||||
-method name getContentLengthLong descriptor ()J
|
||||
-method name getHeaderFieldLong descriptor (Ljava/lang/String;J)J
|
||||
|
||||
class name java/nio/CharBuffer
|
||||
-method name subSequence descriptor (II)Ljava/nio/CharBuffer;
|
||||
-method name subSequence descriptor (II)Ljava/lang/CharSequence;
|
||||
method name subSequence descriptor (II)Ljava/lang/CharSequence; flags 401
|
||||
|
||||
-class name java/nio/channels/AcceptPendingException
|
||||
|
||||
-class name java/nio/channels/AlreadyBoundException
|
||||
|
||||
-class name java/nio/channels/AsynchronousByteChannel
|
||||
|
||||
-class name java/nio/channels/AsynchronousChannel
|
||||
|
||||
-class name java/nio/channels/AsynchronousChannelGroup
|
||||
|
||||
-class name java/nio/channels/AsynchronousFileChannel
|
||||
|
||||
-class name java/nio/channels/AsynchronousServerSocketChannel
|
||||
|
||||
-class name java/nio/channels/AsynchronousSocketChannel
|
||||
|
||||
class name java/nio/channels/Channels
|
||||
-method name newInputStream descriptor (Ljava/nio/channels/AsynchronousByteChannel;)Ljava/io/InputStream;
|
||||
-method name newOutputStream descriptor (Ljava/nio/channels/AsynchronousByteChannel;)Ljava/io/OutputStream;
|
||||
|
||||
-class name java/nio/channels/CompletionHandler
|
||||
|
||||
class name java/nio/channels/DatagramChannel
|
||||
header extends java/nio/channels/spi/AbstractSelectableChannel implements java/nio/channels/ByteChannel,java/nio/channels/ScatteringByteChannel,java/nio/channels/GatheringByteChannel flags 421
|
||||
-method name open descriptor (Ljava/net/ProtocolFamily;)Ljava/nio/channels/DatagramChannel;
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/DatagramChannel;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/DatagramChannel;
|
||||
-method name getRemoteAddress descriptor ()Ljava/net/SocketAddress;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/NetworkChannel;
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/NetworkChannel;
|
||||
|
||||
class name java/nio/channels/FileChannel
|
||||
header extends java/nio/channels/spi/AbstractInterruptibleChannel implements java/nio/channels/ByteChannel,java/nio/channels/GatheringByteChannel,java/nio/channels/ScatteringByteChannel flags 421
|
||||
innerclass innerClass java/nio/channels/FileChannel$MapMode outerClass java/nio/channels/FileChannel innerClassName MapMode flags 9
|
||||
-method name open descriptor (Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/FileChannel;
|
||||
-method name open descriptor (Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/nio/channels/FileChannel;
|
||||
-method name truncate descriptor (J)Ljava/nio/channels/SeekableByteChannel;
|
||||
-method name position descriptor (J)Ljava/nio/channels/SeekableByteChannel;
|
||||
|
||||
class name java/nio/channels/FileLock
|
||||
header extends java/lang/Object flags 421
|
||||
-method name <init> descriptor (Ljava/nio/channels/AsynchronousFileChannel;JJZ)V
|
||||
-method name acquiredBy descriptor ()Ljava/nio/channels/Channel;
|
||||
-method name close descriptor ()V
|
||||
|
||||
-class name java/nio/channels/IllegalChannelGroupException
|
||||
|
||||
-class name java/nio/channels/InterruptedByTimeoutException
|
||||
|
||||
-class name java/nio/channels/MembershipKey
|
||||
|
||||
-class name java/nio/channels/MulticastChannel
|
||||
|
||||
-class name java/nio/channels/NetworkChannel
|
||||
|
||||
-class name java/nio/channels/ReadPendingException
|
||||
|
||||
-class name java/nio/channels/SeekableByteChannel
|
||||
|
||||
class name java/nio/channels/Selector
|
||||
header extends java/lang/Object flags 421
|
||||
|
||||
class name java/nio/channels/ServerSocketChannel
|
||||
header extends java/nio/channels/spi/AbstractSelectableChannel flags 421
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/ServerSocketChannel;
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;I)Ljava/nio/channels/ServerSocketChannel;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/ServerSocketChannel;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/NetworkChannel;
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/NetworkChannel;
|
||||
|
||||
-class name java/nio/channels/ShutdownChannelGroupException
|
||||
|
||||
class name java/nio/channels/SocketChannel
|
||||
header extends java/nio/channels/spi/AbstractSelectableChannel implements java/nio/channels/ByteChannel,java/nio/channels/ScatteringByteChannel,java/nio/channels/GatheringByteChannel flags 421
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/SocketChannel;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/SocketChannel;
|
||||
-method name shutdownInput descriptor ()Ljava/nio/channels/SocketChannel;
|
||||
-method name shutdownOutput descriptor ()Ljava/nio/channels/SocketChannel;
|
||||
-method name getRemoteAddress descriptor ()Ljava/net/SocketAddress;
|
||||
-method name setOption descriptor (Ljava/net/SocketOption;Ljava/lang/Object;)Ljava/nio/channels/NetworkChannel;
|
||||
-method name bind descriptor (Ljava/net/SocketAddress;)Ljava/nio/channels/NetworkChannel;
|
||||
|
||||
-class name java/nio/channels/WritePendingException
|
||||
|
||||
-class name java/nio/channels/spi/AsynchronousChannelProvider
|
||||
|
||||
class name java/nio/channels/spi/SelectorProvider
|
||||
-method name openDatagramChannel descriptor (Ljava/net/ProtocolFamily;)Ljava/nio/channels/DatagramChannel;
|
||||
|
||||
-class name java/nio/charset/StandardCharsets
|
||||
|
||||
-class name java/nio/file/AccessDeniedException
|
||||
|
||||
-class name java/nio/file/AccessMode
|
||||
|
||||
-class name java/nio/file/AtomicMoveNotSupportedException
|
||||
|
||||
-class name java/nio/file/ClosedDirectoryStreamException
|
||||
|
||||
-class name java/nio/file/ClosedFileSystemException
|
||||
|
||||
-class name java/nio/file/ClosedWatchServiceException
|
||||
|
||||
-class name java/nio/file/CopyOption
|
||||
|
||||
-class name java/nio/file/DirectoryIteratorException
|
||||
|
||||
-class name java/nio/file/DirectoryNotEmptyException
|
||||
|
||||
-class name java/nio/file/DirectoryStream
|
||||
|
||||
-class name java/nio/file/DirectoryStream$Filter
|
||||
|
||||
-class name java/nio/file/FileAlreadyExistsException
|
||||
|
||||
-class name java/nio/file/FileStore
|
||||
|
||||
-class name java/nio/file/FileSystem
|
||||
|
||||
-class name java/nio/file/FileSystemAlreadyExistsException
|
||||
|
||||
-class name java/nio/file/FileSystemException
|
||||
|
||||
-class name java/nio/file/FileSystemLoopException
|
||||
|
||||
-class name java/nio/file/FileSystemNotFoundException
|
||||
|
||||
-class name java/nio/file/FileSystems
|
||||
|
||||
-class name java/nio/file/FileVisitOption
|
||||
|
||||
-class name java/nio/file/FileVisitResult
|
||||
|
||||
-class name java/nio/file/FileVisitor
|
||||
|
||||
-class name java/nio/file/Files
|
||||
|
||||
-class name java/nio/file/InvalidPathException
|
||||
|
||||
-class name java/nio/file/LinkOption
|
||||
|
||||
-class name java/nio/file/LinkPermission
|
||||
|
||||
-class name java/nio/file/NoSuchFileException
|
||||
|
||||
-class name java/nio/file/NotDirectoryException
|
||||
|
||||
-class name java/nio/file/NotLinkException
|
||||
|
||||
-class name java/nio/file/OpenOption
|
||||
|
||||
-class name java/nio/file/Path
|
||||
|
||||
-class name java/nio/file/PathMatcher
|
||||
|
||||
-class name java/nio/file/Paths
|
||||
|
||||
-class name java/nio/file/ProviderMismatchException
|
||||
|
||||
-class name java/nio/file/ProviderNotFoundException
|
||||
|
||||
-class name java/nio/file/ReadOnlyFileSystemException
|
||||
|
||||
-class name java/nio/file/SecureDirectoryStream
|
||||
|
||||
-class name java/nio/file/SimpleFileVisitor
|
||||
|
||||
-class name java/nio/file/StandardCopyOption
|
||||
|
||||
-class name java/nio/file/StandardOpenOption
|
||||
|
||||
-class name java/nio/file/StandardWatchEventKinds
|
||||
|
||||
-class name java/nio/file/WatchEvent
|
||||
|
||||
-class name java/nio/file/WatchEvent$Kind
|
||||
|
||||
-class name java/nio/file/WatchEvent$Modifier
|
||||
|
||||
-class name java/nio/file/WatchKey
|
||||
|
||||
-class name java/nio/file/WatchService
|
||||
|
||||
-class name java/nio/file/Watchable
|
||||
|
||||
-class name java/nio/file/attribute/AclEntry
|
||||
|
||||
-class name java/nio/file/attribute/AclEntry$Builder
|
||||
|
||||
-class name java/nio/file/attribute/AclEntryFlag
|
||||
|
||||
-class name java/nio/file/attribute/AclEntryPermission
|
||||
|
||||
-class name java/nio/file/attribute/AclEntryType
|
||||
|
||||
-class name java/nio/file/attribute/AclFileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/AttributeView
|
||||
|
||||
-class name java/nio/file/attribute/BasicFileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/BasicFileAttributes
|
||||
|
||||
-class name java/nio/file/attribute/DosFileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/DosFileAttributes
|
||||
|
||||
-class name java/nio/file/attribute/FileAttribute
|
||||
|
||||
-class name java/nio/file/attribute/FileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/FileOwnerAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/FileStoreAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/FileTime
|
||||
|
||||
-class name java/nio/file/attribute/GroupPrincipal
|
||||
|
||||
-class name java/nio/file/attribute/PosixFileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/PosixFileAttributes
|
||||
|
||||
-class name java/nio/file/attribute/PosixFilePermission
|
||||
|
||||
-class name java/nio/file/attribute/PosixFilePermissions
|
||||
|
||||
-class name java/nio/file/attribute/UserDefinedFileAttributeView
|
||||
|
||||
-class name java/nio/file/attribute/UserPrincipal
|
||||
|
||||
-class name java/nio/file/attribute/UserPrincipalLookupService
|
||||
|
||||
-class name java/nio/file/attribute/UserPrincipalNotFoundException
|
||||
|
||||
-class name java/nio/file/spi/FileSystemProvider
|
||||
|
||||
-class name java/nio/file/spi/FileTypeDetector
|
||||
|
||||
-class name java/security/AlgorithmConstraints
|
||||
|
||||
-class name java/security/CryptoPrimitive
|
||||
|
||||
-class name java/security/cert/CRLReason
|
||||
|
||||
class name java/security/cert/CertPathValidatorException
|
||||
header extends java/security/GeneralSecurityException flags 21
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
|
||||
-method name getReason descriptor ()Ljava/security/cert/CertPathValidatorException$Reason;
|
||||
|
||||
-class name java/security/cert/CertPathValidatorException$BasicReason
|
||||
|
||||
-class name java/security/cert/CertPathValidatorException$Reason
|
||||
|
||||
-class name java/security/cert/CertificateRevokedException
|
||||
|
||||
-class name java/security/cert/Extension
|
||||
|
||||
-class name java/security/cert/PKIXReason
|
||||
|
||||
class name java/security/cert/X509CRLEntry
|
||||
-method name getRevocationReason descriptor ()Ljava/security/cert/CRLReason;
|
||||
|
||||
class name java/util/ArrayList
|
||||
-method name removeAll descriptor (Ljava/util/Collection;)Z
|
||||
-method name retainAll descriptor (Ljava/util/Collection;)Z
|
||||
-method name listIterator descriptor (I)Ljava/util/ListIterator;
|
||||
-method name listIterator descriptor ()Ljava/util/ListIterator;
|
||||
-method name iterator descriptor ()Ljava/util/Iterator;
|
||||
-method name subList descriptor (II)Ljava/util/List;
|
||||
|
||||
class name java/util/Arrays
|
||||
-method name asList descriptor ([Ljava/lang/Object;)Ljava/util/List;
|
||||
method name asList descriptor ([Ljava/lang/Object;)Ljava/util/List; flags 89 signature <T:Ljava/lang/Object;>([TT;)Ljava/util/List<TT;>;
|
||||
|
||||
class name java/util/BitSet
|
||||
-method name valueOf descriptor ([J)Ljava/util/BitSet;
|
||||
-method name valueOf descriptor (Ljava/nio/LongBuffer;)Ljava/util/BitSet;
|
||||
-method name valueOf descriptor ([B)Ljava/util/BitSet;
|
||||
-method name valueOf descriptor (Ljava/nio/ByteBuffer;)Ljava/util/BitSet;
|
||||
-method name toByteArray descriptor ()[B
|
||||
-method name toLongArray descriptor ()[J
|
||||
-method name previousSetBit descriptor (I)I
|
||||
-method name previousClearBit descriptor (I)I
|
||||
|
||||
class name java/util/Calendar
|
||||
-method name isWeekDateSupported descriptor ()Z
|
||||
-method name getWeekYear descriptor ()I
|
||||
-method name setWeekDate descriptor (III)V
|
||||
-method name getWeeksInWeekYear descriptor ()I
|
||||
|
||||
class name java/util/Collections
|
||||
-method name emptyIterator descriptor ()Ljava/util/Iterator;
|
||||
-method name emptyListIterator descriptor ()Ljava/util/ListIterator;
|
||||
-method name emptyEnumeration descriptor ()Ljava/util/Enumeration;
|
||||
-method name addAll descriptor (Ljava/util/Collection;[Ljava/lang/Object;)Z
|
||||
method name addAll descriptor (Ljava/util/Collection;[Ljava/lang/Object;)Z flags 89 signature <T:Ljava/lang/Object;>(Ljava/util/Collection<-TT;>;[TT;)Z
|
||||
|
||||
class name java/util/ConcurrentModificationException
|
||||
-method name <init> descriptor (Ljava/lang/Throwable;)V
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/Throwable;)V
|
||||
|
||||
class name java/util/Currency
|
||||
-method name getAvailableCurrencies descriptor ()Ljava/util/Set;
|
||||
-method name getNumericCode descriptor ()I
|
||||
-method name getDisplayName descriptor ()Ljava/lang/String;
|
||||
-method name getDisplayName descriptor (Ljava/util/Locale;)Ljava/lang/String;
|
||||
|
||||
class name java/util/EnumMap
|
||||
-method name hashCode descriptor ()I
|
||||
|
||||
class name java/util/EnumSet
|
||||
-method name of descriptor (Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet;
|
||||
method name of descriptor (Ljava/lang/Enum;[Ljava/lang/Enum;)Ljava/util/EnumSet; flags 89 signature <E:Ljava/lang/Enum<TE;>;>(TE;[TE;)Ljava/util/EnumSet<TE;>;
|
||||
|
||||
class name java/util/EventListenerProxy
|
||||
header extends java/lang/Object implements java/util/EventListener flags 421
|
||||
-method name <init> descriptor (Ljava/util/EventListener;)V
|
||||
-method name getListener descriptor ()Ljava/util/EventListener;
|
||||
method name <init> descriptor (Ljava/util/EventListener;)V flags 1
|
||||
method name getListener descriptor ()Ljava/util/EventListener; flags 1
|
||||
|
||||
class name java/util/GregorianCalendar
|
||||
-method name isWeekDateSupported descriptor ()Z
|
||||
-method name getWeekYear descriptor ()I
|
||||
-method name setWeekDate descriptor (III)V
|
||||
-method name getWeeksInWeekYear descriptor ()I
|
||||
|
||||
-class name java/util/IllformedLocaleException
|
||||
|
||||
class name java/util/Locale
|
||||
header extends java/lang/Object implements java/lang/Cloneable,java/io/Serializable flags 31
|
||||
-field name PRIVATE_USE_EXTENSION descriptor C
|
||||
-field name UNICODE_LOCALE_EXTENSION descriptor C
|
||||
-method name getDefault descriptor (Ljava/util/Locale$Category;)Ljava/util/Locale;
|
||||
-method name setDefault descriptor (Ljava/util/Locale$Category;Ljava/util/Locale;)V
|
||||
-method name getScript descriptor ()Ljava/lang/String;
|
||||
-method name getExtension descriptor (C)Ljava/lang/String;
|
||||
-method name getExtensionKeys descriptor ()Ljava/util/Set;
|
||||
-method name getUnicodeLocaleAttributes descriptor ()Ljava/util/Set;
|
||||
-method name getUnicodeLocaleType descriptor (Ljava/lang/String;)Ljava/lang/String;
|
||||
-method name getUnicodeLocaleKeys descriptor ()Ljava/util/Set;
|
||||
-method name toLanguageTag descriptor ()Ljava/lang/String;
|
||||
-method name forLanguageTag descriptor (Ljava/lang/String;)Ljava/util/Locale;
|
||||
-method name getDisplayScript descriptor ()Ljava/lang/String;
|
||||
-method name getDisplayScript descriptor (Ljava/util/Locale;)Ljava/lang/String;
|
||||
|
||||
-class name java/util/Locale$Builder
|
||||
|
||||
-class name java/util/Locale$Category
|
||||
|
||||
-class name java/util/Objects
|
||||
|
||||
class name java/util/Properties
|
||||
-method name save descriptor (Ljava/io/OutputStream;Ljava/lang/String;)V
|
||||
-method name storeToXML descriptor (Ljava/io/OutputStream;Ljava/lang/String;)V
|
||||
-method name storeToXML descriptor (Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;)V
|
||||
method name save descriptor (Ljava/io/OutputStream;Ljava/lang/String;)V flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
|
||||
method name storeToXML descriptor (Ljava/io/OutputStream;Ljava/lang/String;)V thrownTypes java/io/IOException flags 21
|
||||
method name storeToXML descriptor (Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;)V thrownTypes java/io/IOException flags 21
|
||||
|
||||
class name java/util/Scanner
|
||||
header extends java/lang/Object implements java/util/Iterator flags 31 signature Ljava/lang/Object;Ljava/util/Iterator<Ljava/lang/String;>;
|
||||
-method name <init> descriptor (Ljava/nio/file/Path;)V
|
||||
-method name <init> descriptor (Ljava/nio/file/Path;Ljava/lang/String;)V
|
||||
|
||||
class name java/util/SimpleTimeZone
|
||||
-method name observesDaylightTime descriptor ()Z
|
||||
|
||||
class name java/util/TimeZone
|
||||
-method name observesDaylightTime descriptor ()Z
|
||||
|
||||
class name java/util/Vector
|
||||
-method name listIterator descriptor (I)Ljava/util/ListIterator;
|
||||
-method name listIterator descriptor ()Ljava/util/ListIterator;
|
||||
-method name iterator descriptor ()Ljava/util/Iterator;
|
||||
|
||||
-class name java/util/concurrent/ConcurrentLinkedDeque
|
||||
|
||||
class name java/util/concurrent/ConcurrentLinkedQueue
|
||||
-method name addAll descriptor (Ljava/util/Collection;)Z
|
||||
|
||||
-class name java/util/concurrent/ForkJoinPool
|
||||
|
||||
-class name java/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory
|
||||
|
||||
-class name java/util/concurrent/ForkJoinPool$ManagedBlocker
|
||||
|
||||
-class name java/util/concurrent/ForkJoinTask
|
||||
|
||||
-class name java/util/concurrent/ForkJoinWorkerThread
|
||||
|
||||
class name java/util/concurrent/LinkedBlockingQueue
|
||||
-method name contains descriptor (Ljava/lang/Object;)Z
|
||||
|
||||
-class name java/util/concurrent/LinkedTransferQueue
|
||||
|
||||
-class name java/util/concurrent/Phaser
|
||||
|
||||
-class name java/util/concurrent/RecursiveAction
|
||||
|
||||
-class name java/util/concurrent/RecursiveTask
|
||||
|
||||
class name java/util/concurrent/ScheduledThreadPoolExecutor
|
||||
-method name setRemoveOnCancelPolicy descriptor (Z)V
|
||||
-method name getRemoveOnCancelPolicy descriptor ()Z
|
||||
method name remove descriptor (Ljava/lang/Runnable;)Z flags 1
|
||||
|
||||
-class name java/util/concurrent/ThreadLocalRandom
|
||||
|
||||
class name java/util/concurrent/ThreadPoolExecutor
|
||||
-method name toString descriptor ()Ljava/lang/String;
|
||||
|
||||
-class name java/util/concurrent/TransferQueue
|
||||
|
||||
class name java/util/concurrent/locks/AbstractQueuedLongSynchronizer
|
||||
-method name hasQueuedPredecessors descriptor ()Z
|
||||
|
||||
class name java/util/concurrent/locks/AbstractQueuedSynchronizer
|
||||
-method name hasQueuedPredecessors descriptor ()Z
|
||||
|
||||
class name java/util/regex/Matcher
|
||||
-method name group descriptor (Ljava/lang/String;)Ljava/lang/String;
|
||||
|
||||
class name java/util/regex/Pattern
|
||||
-field name UNICODE_CHARACTER_CLASS descriptor I
|
||||
|
||||
class name java/util/spi/CurrencyNameProvider
|
||||
-method name getDisplayName descriptor (Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/String;
|
||||
|
||||
class name java/util/spi/LocaleNameProvider
|
||||
-method name getDisplayScript descriptor (Ljava/lang/String;Ljava/util/Locale;)Ljava/lang/String;
|
||||
|
||||
class name java/util/zip/Deflater
|
||||
-field name NO_FLUSH descriptor I
|
||||
-field name SYNC_FLUSH descriptor I
|
||||
-field name FULL_FLUSH descriptor I
|
||||
-method name setInput descriptor ([BII)V
|
||||
-method name setDictionary descriptor ([BII)V
|
||||
-method name setStrategy descriptor (I)V
|
||||
-method name setLevel descriptor (I)V
|
||||
-method name finish descriptor ()V
|
||||
-method name finished descriptor ()Z
|
||||
-method name deflate descriptor ([BII)I
|
||||
-method name deflate descriptor ([BIII)I
|
||||
-method name getAdler descriptor ()I
|
||||
-method name getBytesRead descriptor ()J
|
||||
-method name getBytesWritten descriptor ()J
|
||||
-method name reset descriptor ()V
|
||||
-method name end descriptor ()V
|
||||
method name setInput descriptor ([BII)V flags 21
|
||||
method name setDictionary descriptor ([BII)V flags 21
|
||||
method name setStrategy descriptor (I)V flags 21
|
||||
method name setLevel descriptor (I)V flags 21
|
||||
method name finish descriptor ()V flags 21
|
||||
method name finished descriptor ()Z flags 21
|
||||
method name deflate descriptor ([BII)I flags 21
|
||||
method name getAdler descriptor ()I flags 21
|
||||
method name getBytesRead descriptor ()J flags 21
|
||||
method name getBytesWritten descriptor ()J flags 21
|
||||
method name reset descriptor ()V flags 21
|
||||
method name end descriptor ()V flags 21
|
||||
|
||||
class name java/util/zip/DeflaterOutputStream
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;Ljava/util/zip/Deflater;IZ)V
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;Ljava/util/zip/Deflater;Z)V
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;Z)V
|
||||
-method name flush descriptor ()V
|
||||
|
||||
class name java/util/zip/GZIPOutputStream
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;IZ)V
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;Z)V
|
||||
|
||||
class name java/util/zip/Inflater
|
||||
-method name setInput descriptor ([BII)V
|
||||
-method name setDictionary descriptor ([BII)V
|
||||
-method name getRemaining descriptor ()I
|
||||
-method name needsInput descriptor ()Z
|
||||
-method name needsDictionary descriptor ()Z
|
||||
-method name finished descriptor ()Z
|
||||
-method name inflate descriptor ([BII)I
|
||||
-method name getAdler descriptor ()I
|
||||
-method name getBytesRead descriptor ()J
|
||||
-method name getBytesWritten descriptor ()J
|
||||
-method name reset descriptor ()V
|
||||
-method name end descriptor ()V
|
||||
method name setInput descriptor ([BII)V flags 21
|
||||
method name setDictionary descriptor ([BII)V flags 21
|
||||
method name getRemaining descriptor ()I flags 21
|
||||
method name needsInput descriptor ()Z flags 21
|
||||
method name needsDictionary descriptor ()Z flags 21
|
||||
method name finished descriptor ()Z flags 21
|
||||
method name inflate descriptor ([BII)I thrownTypes java/util/zip/DataFormatException flags 21
|
||||
method name getAdler descriptor ()I flags 21
|
||||
method name getBytesRead descriptor ()J flags 21
|
||||
method name getBytesWritten descriptor ()J flags 21
|
||||
method name reset descriptor ()V flags 21
|
||||
method name end descriptor ()V flags 21
|
||||
|
||||
class name java/util/zip/ZipFile
|
||||
header extends java/lang/Object implements java/util/zip/ZipConstants flags 21
|
||||
-method name <init> descriptor (Ljava/io/File;ILjava/nio/charset/Charset;)V
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/nio/charset/Charset;)V
|
||||
-method name <init> descriptor (Ljava/io/File;Ljava/nio/charset/Charset;)V
|
||||
-method name getComment descriptor ()Ljava/lang/String;
|
||||
|
||||
class name java/util/zip/ZipInputStream
|
||||
-method name <init> descriptor (Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
|
||||
|
||||
class name java/util/zip/ZipOutputStream
|
||||
-method name <init> descriptor (Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V
|
||||
|
||||
-class name javax/crypto/AEADBadTagException
|
||||
|
||||
class name javax/crypto/Cipher
|
||||
-method name updateAAD descriptor ([B)V
|
||||
-method name updateAAD descriptor ([BII)V
|
||||
-method name updateAAD descriptor (Ljava/nio/ByteBuffer;)V
|
||||
|
||||
class name javax/crypto/CipherSpi
|
||||
-method name engineUpdateAAD descriptor ([BII)V
|
||||
-method name engineUpdateAAD descriptor (Ljava/nio/ByteBuffer;)V
|
||||
|
||||
-class name javax/crypto/spec/GCMParameterSpec
|
||||
|
||||
-class name javax/net/ssl/ExtendedSSLSession
|
||||
|
||||
class name javax/net/ssl/SSLEngine
|
||||
-method name getHandshakeSession descriptor ()Ljavax/net/ssl/SSLSession;
|
||||
|
||||
class name javax/net/ssl/SSLEngineResult
|
||||
header extends java/lang/Object flags 21
|
||||
innerclass innerClass javax/net/ssl/SSLEngineResult$HandshakeStatus outerClass javax/net/ssl/SSLEngineResult innerClassName HandshakeStatus flags 4019
|
||||
innerclass innerClass javax/net/ssl/SSLEngineResult$Status outerClass javax/net/ssl/SSLEngineResult innerClassName Status flags 4019
|
||||
|
||||
class name javax/net/ssl/SSLParameters
|
||||
-method name getAlgorithmConstraints descriptor ()Ljava/security/AlgorithmConstraints;
|
||||
-method name setAlgorithmConstraints descriptor (Ljava/security/AlgorithmConstraints;)V
|
||||
-method name getEndpointIdentificationAlgorithm descriptor ()Ljava/lang/String;
|
||||
-method name setEndpointIdentificationAlgorithm descriptor (Ljava/lang/String;)V
|
||||
|
||||
class name javax/net/ssl/SSLServerSocket
|
||||
-method name getSSLParameters descriptor ()Ljavax/net/ssl/SSLParameters;
|
||||
-method name setSSLParameters descriptor (Ljavax/net/ssl/SSLParameters;)V
|
||||
|
||||
class name javax/net/ssl/SSLSocket
|
||||
-method name getHandshakeSession descriptor ()Ljavax/net/ssl/SSLSession;
|
||||
|
||||
-class name javax/net/ssl/X509ExtendedTrustManager
|
||||
|
||||
class name javax/security/auth/login/Configuration
|
||||
-method name getConfiguration descriptor ()Ljavax/security/auth/login/Configuration;
|
||||
method name getConfiguration descriptor ()Ljavax/security/auth/login/Configuration; flags 29
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/lang/model/SourceVersion
|
||||
-field name RELEASE_7 descriptor Ljavax/lang/model/SourceVersion;
|
||||
|
||||
-class name javax/lang/model/UnknownEntityException
|
||||
|
||||
class name javax/lang/model/element/ElementKind
|
||||
-field name RESOURCE_VARIABLE descriptor Ljavax/lang/model/element/ElementKind;
|
||||
|
||||
class name javax/lang/model/element/ExecutableElement
|
||||
header extends java/lang/Object implements javax/lang/model/element/Element flags 601
|
||||
-method name getSimpleName descriptor ()Ljavax/lang/model/element/Name;
|
||||
|
||||
class name javax/lang/model/element/PackageElement
|
||||
header extends java/lang/Object implements javax/lang/model/element/Element flags 601
|
||||
-method name getSimpleName descriptor ()Ljavax/lang/model/element/Name;
|
||||
-method name getEnclosingElement descriptor ()Ljavax/lang/model/element/Element;
|
||||
|
||||
-class name javax/lang/model/element/Parameterizable
|
||||
|
||||
-class name javax/lang/model/element/QualifiedNameable
|
||||
|
||||
class name javax/lang/model/element/TypeElement
|
||||
header extends java/lang/Object implements javax/lang/model/element/Element flags 601
|
||||
-method name getEnclosedElements descriptor ()Ljava/util/List;
|
||||
-method name getSimpleName descriptor ()Ljavax/lang/model/element/Name;
|
||||
-method name getEnclosingElement descriptor ()Ljavax/lang/model/element/Element;
|
||||
|
||||
class name javax/lang/model/element/TypeParameterElement
|
||||
-method name getEnclosingElement descriptor ()Ljavax/lang/model/element/Element;
|
||||
|
||||
class name javax/lang/model/element/UnknownAnnotationValueException
|
||||
header extends java/lang/RuntimeException flags 21
|
||||
|
||||
class name javax/lang/model/element/UnknownElementException
|
||||
header extends java/lang/RuntimeException flags 21
|
||||
|
||||
class name javax/lang/model/type/MirroredTypeException
|
||||
header extends java/lang/RuntimeException flags 21
|
||||
|
||||
class name javax/lang/model/type/TypeKind
|
||||
-field name UNION descriptor Ljavax/lang/model/type/TypeKind;
|
||||
|
||||
class name javax/lang/model/type/TypeVisitor
|
||||
-method name visitUnion descriptor (Ljavax/lang/model/type/UnionType;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
|
||||
-class name javax/lang/model/type/UnionType
|
||||
|
||||
class name javax/lang/model/type/UnknownTypeException
|
||||
header extends java/lang/RuntimeException flags 21
|
||||
|
||||
-class name javax/lang/model/util/AbstractAnnotationValueVisitor7
|
||||
|
||||
-class name javax/lang/model/util/AbstractElementVisitor7
|
||||
|
||||
class name javax/lang/model/util/AbstractTypeVisitor6
|
||||
-method name visitUnion descriptor (Ljavax/lang/model/type/UnionType;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
|
||||
-class name javax/lang/model/util/AbstractTypeVisitor7
|
||||
|
||||
class name javax/lang/model/util/ElementKindVisitor6
|
||||
-method name visitVariableAsResourceVariable descriptor (Ljavax/lang/model/element/VariableElement;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
|
||||
-class name javax/lang/model/util/ElementKindVisitor7
|
||||
|
||||
-class name javax/lang/model/util/ElementScanner7
|
||||
|
||||
-class name javax/lang/model/util/SimpleAnnotationValueVisitor7
|
||||
|
||||
-class name javax/lang/model/util/SimpleElementVisitor7
|
||||
|
||||
-class name javax/lang/model/util/SimpleTypeVisitor7
|
||||
|
||||
-class name javax/lang/model/util/TypeKindVisitor7
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,49 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name java/util/logging/Logger
|
||||
-method name getGlobal descriptor ()Ljava/util/logging/Logger;
|
||||
-method name getAnonymousLogger descriptor ()Ljava/util/logging/Logger;
|
||||
-method name addHandler descriptor (Ljava/util/logging/Handler;)V
|
||||
-method name removeHandler descriptor (Ljava/util/logging/Handler;)V
|
||||
-method name getHandlers descriptor ()[Ljava/util/logging/Handler;
|
||||
-method name setUseParentHandlers descriptor (Z)V
|
||||
-method name getUseParentHandlers descriptor ()Z
|
||||
-method name getLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger;
|
||||
-method name getLogger descriptor (Ljava/lang/String;Ljava/lang/String;)Ljava/util/logging/Logger;
|
||||
-method name getAnonymousLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger;
|
||||
method name getLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger; flags 29
|
||||
method name getLogger descriptor (Ljava/lang/String;Ljava/lang/String;)Ljava/util/logging/Logger; flags 29
|
||||
method name getAnonymousLogger descriptor ()Ljava/util/logging/Logger; flags 29
|
||||
method name getAnonymousLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger; flags 29
|
||||
method name addHandler descriptor (Ljava/util/logging/Handler;)V thrownTypes java/lang/SecurityException flags 21
|
||||
method name removeHandler descriptor (Ljava/util/logging/Handler;)V thrownTypes java/lang/SecurityException flags 21
|
||||
method name getHandlers descriptor ()[Ljava/util/logging/Handler; flags 21
|
||||
method name setUseParentHandlers descriptor (Z)V flags 21
|
||||
method name getUseParentHandlers descriptor ()Z flags 21
|
||||
|
||||
@@ -1,122 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name java/lang/management/BufferPoolMXBean
|
||||
|
||||
class name java/lang/management/ClassLoadingMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/CompilationMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/ManagementFactory
|
||||
-method name getPlatformMXBean descriptor (Ljava/lang/Class;)Ljava/lang/management/PlatformManagedObject;
|
||||
-method name getPlatformMXBeans descriptor (Ljava/lang/Class;)Ljava/util/List;
|
||||
-method name getPlatformMXBean descriptor (Ljavax/management/MBeanServerConnection;Ljava/lang/Class;)Ljava/lang/management/PlatformManagedObject;
|
||||
-method name getPlatformMXBeans descriptor (Ljavax/management/MBeanServerConnection;Ljava/lang/Class;)Ljava/util/List;
|
||||
-method name getPlatformManagementInterfaces descriptor ()Ljava/util/Set;
|
||||
|
||||
class name java/lang/management/MemoryMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/MemoryManagerMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/MemoryPoolMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/OperatingSystemMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
-class name java/lang/management/PlatformLoggingMXBean
|
||||
|
||||
-class name java/lang/management/PlatformManagedObject
|
||||
|
||||
class name java/lang/management/RuntimeMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name java/lang/management/ThreadMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name javax/management/AttributeValueExp
|
||||
-method name setMBeanServer descriptor (Ljavax/management/MBeanServer;)V
|
||||
method name setMBeanServer descriptor (Ljavax/management/MBeanServer;)V flags 1
|
||||
|
||||
class name javax/management/DefaultLoaderRepository
|
||||
-method name loadClass descriptor (Ljava/lang/String;)Ljava/lang/Class;
|
||||
-method name loadClassWithout descriptor (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/Class;
|
||||
method name loadClass descriptor (Ljava/lang/String;)Ljava/lang/Class; thrownTypes java/lang/ClassNotFoundException flags 9
|
||||
method name loadClassWithout descriptor (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/Class; thrownTypes java/lang/ClassNotFoundException flags 9
|
||||
|
||||
class name javax/management/MBeanConstructorInfo
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;)V
|
||||
method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;)V flags 1
|
||||
|
||||
class name javax/management/MBeanServerNotification
|
||||
-method name toString descriptor ()Ljava/lang/String;
|
||||
|
||||
class name javax/management/ObjectName
|
||||
-method name getInstance descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/ObjectName;
|
||||
-method name getInstance descriptor (Ljava/lang/String;Ljava/util/Hashtable;)Ljavax/management/ObjectName;
|
||||
-method name getInstance descriptor (Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
|
||||
-method name <init> descriptor (Ljava/lang/String;)V
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/util/Hashtable;)V
|
||||
-method name isPropertyValuePattern descriptor (Ljava/lang/String;)Z
|
||||
-method name getKeyProperty descriptor (Ljava/lang/String;)Ljava/lang/String;
|
||||
-method name quote descriptor (Ljava/lang/String;)Ljava/lang/String;
|
||||
-method name unquote descriptor (Ljava/lang/String;)Ljava/lang/String;
|
||||
-method name apply descriptor (Ljavax/management/ObjectName;)Z
|
||||
method name getInstance descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljavax/management/ObjectName; thrownTypes javax/management/MalformedObjectNameException,java/lang/NullPointerException flags 9
|
||||
method name getInstance descriptor (Ljava/lang/String;Ljava/util/Hashtable;)Ljavax/management/ObjectName; thrownTypes javax/management/MalformedObjectNameException,java/lang/NullPointerException flags 9 signature (Ljava/lang/String;Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;)Ljavax/management/ObjectName;
|
||||
method name getInstance descriptor (Ljavax/management/ObjectName;)Ljavax/management/ObjectName; thrownTypes java/lang/NullPointerException flags 9
|
||||
method name <init> descriptor (Ljava/lang/String;)V thrownTypes javax/management/MalformedObjectNameException,java/lang/NullPointerException flags 1
|
||||
method name <init> descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V thrownTypes javax/management/MalformedObjectNameException,java/lang/NullPointerException flags 1
|
||||
method name <init> descriptor (Ljava/lang/String;Ljava/util/Hashtable;)V thrownTypes javax/management/MalformedObjectNameException,java/lang/NullPointerException flags 1 signature (Ljava/lang/String;Ljava/util/Hashtable<Ljava/lang/String;Ljava/lang/String;>;)V
|
||||
method name isPropertyValuePattern descriptor (Ljava/lang/String;)Z thrownTypes java/lang/NullPointerException,java/lang/IllegalArgumentException flags 1
|
||||
method name getKeyProperty descriptor (Ljava/lang/String;)Ljava/lang/String; thrownTypes java/lang/NullPointerException flags 1
|
||||
method name quote descriptor (Ljava/lang/String;)Ljava/lang/String; thrownTypes java/lang/NullPointerException flags 9
|
||||
method name unquote descriptor (Ljava/lang/String;)Ljava/lang/String; thrownTypes java/lang/IllegalArgumentException,java/lang/NullPointerException flags 9
|
||||
method name apply descriptor (Ljavax/management/ObjectName;)Z thrownTypes java/lang/NullPointerException flags 1
|
||||
|
||||
class name javax/management/StringValueExp
|
||||
-method name setMBeanServer descriptor (Ljavax/management/MBeanServer;)V
|
||||
method name setMBeanServer descriptor (Ljavax/management/MBeanServer;)V flags 1
|
||||
|
||||
class name javax/management/loading/DefaultLoaderRepository
|
||||
-method name loadClass descriptor (Ljava/lang/String;)Ljava/lang/Class;
|
||||
-method name loadClassWithout descriptor (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/Class;
|
||||
method name loadClass descriptor (Ljava/lang/String;)Ljava/lang/Class; thrownTypes java/lang/ClassNotFoundException flags 9
|
||||
method name loadClassWithout descriptor (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/Class; thrownTypes java/lang/ClassNotFoundException flags 9
|
||||
|
||||
class name javax/management/modelmbean/ModelMBeanConstructorInfo
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;)V
|
||||
-method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;Ljavax/management/Descriptor;)V
|
||||
method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;)V flags 1
|
||||
method name <init> descriptor (Ljava/lang/String;Ljava/lang/reflect/Constructor;Ljavax/management/Descriptor;)V flags 1
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/rmi/ssl/SslRMIServerSocketFactory
|
||||
-method name <init> descriptor (Ljavax/net/ssl/SSLContext;[Ljava/lang/String;[Ljava/lang/String;Z)V
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name javax/security/auth/kerberos/KeyTab
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name java/sql/CallableStatement
|
||||
-method name getObject descriptor (ILjava/lang/Class;)Ljava/lang/Object;
|
||||
-method name getObject descriptor (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
|
||||
|
||||
class name java/sql/Connection
|
||||
header extends java/lang/Object implements java/sql/Wrapper flags 601
|
||||
-method name setSchema descriptor (Ljava/lang/String;)V
|
||||
-method name getSchema descriptor ()Ljava/lang/String;
|
||||
-method name abort descriptor (Ljava/util/concurrent/Executor;)V
|
||||
-method name setNetworkTimeout descriptor (Ljava/util/concurrent/Executor;I)V
|
||||
-method name getNetworkTimeout descriptor ()I
|
||||
|
||||
class name java/sql/DatabaseMetaData
|
||||
-method name getPseudoColumns descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;
|
||||
-method name generatedKeyAlwaysReturned descriptor ()Z
|
||||
|
||||
class name java/sql/Driver
|
||||
-method name getParentLogger descriptor ()Ljava/util/logging/Logger;
|
||||
|
||||
-class name java/sql/PseudoColumnUsage
|
||||
|
||||
class name java/sql/ResultSet
|
||||
header extends java/lang/Object implements java/sql/Wrapper flags 601
|
||||
-method name getObject descriptor (ILjava/lang/Class;)Ljava/lang/Object;
|
||||
-method name getObject descriptor (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
|
||||
|
||||
class name java/sql/Statement
|
||||
header extends java/lang/Object implements java/sql/Wrapper flags 601
|
||||
-method name closeOnCompletion descriptor ()V
|
||||
-method name isCloseOnCompletion descriptor ()Z
|
||||
|
||||
class name java/sql/Timestamp
|
||||
-method name hashCode descriptor ()I
|
||||
|
||||
class name javax/sql/CommonDataSource
|
||||
-method name getParentLogger descriptor ()Ljava/util/logging/Logger;
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/sql/rowset/CachedRowSet
|
||||
-field name COMMIT_ON_ACCEPT_CHANGES descriptor Z
|
||||
field name COMMIT_ON_ACCEPT_CHANGES descriptor Z constantValue true flags 19
|
||||
|
||||
-class name javax/sql/rowset/RowSetFactory
|
||||
|
||||
-class name javax/sql/rowset/RowSetProvider
|
||||
|
||||
class name javax/sql/rowset/WebRowSet
|
||||
-field name PUBLIC_XML_SCHEMA descriptor Ljava/lang/String;
|
||||
field name PUBLIC_XML_SCHEMA descriptor Ljava/lang/String; constantValue --//Sun\u0020;Microsystems,\u0020;Inc.//XSD\u0020;Schema//EN flags 19
|
||||
|
||||
class name javax/sql/rowset/spi/SyncFactory
|
||||
-field name ROWSET_SYNC_PROVIDER descriptor Ljava/lang/String;
|
||||
-field name ROWSET_SYNC_VENDOR descriptor Ljava/lang/String;
|
||||
-field name ROWSET_SYNC_PROVIDER_VERSION descriptor Ljava/lang/String;
|
||||
field name ROWSET_SYNC_PROVIDER descriptor Ljava/lang/String; flags 9
|
||||
field name ROWSET_SYNC_VENDOR descriptor Ljava/lang/String; flags 9
|
||||
field name ROWSET_SYNC_PROVIDER_VERSION descriptor Ljava/lang/String; flags 9
|
||||
-method name setJNDIContext descriptor (Ljavax/naming/Context;)V
|
||||
method name setJNDIContext descriptor (Ljavax/naming/Context;)V thrownTypes javax/sql/rowset/spi/SyncFactoryException flags 9
|
||||
|
||||
class name javax/sql/rowset/spi/SyncProvider
|
||||
-field name GRADE_NONE descriptor I
|
||||
-field name GRADE_CHECK_MODIFIED_AT_COMMIT descriptor I
|
||||
-field name GRADE_CHECK_ALL_AT_COMMIT descriptor I
|
||||
-field name GRADE_LOCK_WHEN_MODIFIED descriptor I
|
||||
-field name GRADE_LOCK_WHEN_LOADED descriptor I
|
||||
-field name DATASOURCE_NO_LOCK descriptor I
|
||||
-field name DATASOURCE_ROW_LOCK descriptor I
|
||||
-field name DATASOURCE_TABLE_LOCK descriptor I
|
||||
-field name DATASOURCE_DB_LOCK descriptor I
|
||||
-field name UPDATABLE_VIEW_SYNC descriptor I
|
||||
-field name NONUPDATABLE_VIEW_SYNC descriptor I
|
||||
field name GRADE_NONE descriptor I flags 9
|
||||
field name GRADE_CHECK_MODIFIED_AT_COMMIT descriptor I flags 9
|
||||
field name GRADE_CHECK_ALL_AT_COMMIT descriptor I flags 9
|
||||
field name GRADE_LOCK_WHEN_MODIFIED descriptor I flags 9
|
||||
field name GRADE_LOCK_WHEN_LOADED descriptor I flags 9
|
||||
field name DATASOURCE_NO_LOCK descriptor I flags 9
|
||||
field name DATASOURCE_ROW_LOCK descriptor I flags 9
|
||||
field name DATASOURCE_TABLE_LOCK descriptor I flags 9
|
||||
field name DATASOURCE_DB_LOCK descriptor I flags 9
|
||||
field name UPDATABLE_VIEW_SYNC descriptor I flags 9
|
||||
field name NONUPDATABLE_VIEW_SYNC descriptor I flags 9
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/xml/parsers/FactoryConfigurationError
|
||||
-method name getCause descriptor ()Ljava/lang/Throwable;
|
||||
|
||||
class name javax/xml/stream/FactoryConfigurationError
|
||||
-method name getCause descriptor ()Ljava/lang/Throwable;
|
||||
|
||||
class name javax/xml/stream/XMLEventFactory
|
||||
-method name newFactory descriptor ()Ljavax/xml/stream/XMLEventFactory;
|
||||
-method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLEventFactory;
|
||||
-method name newFactory descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLEventFactory;
|
||||
method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLEventFactory; thrownTypes javax/xml/stream/FactoryConfigurationError flags 9
|
||||
|
||||
class name javax/xml/stream/XMLInputFactory
|
||||
-method name newFactory descriptor ()Ljavax/xml/stream/XMLInputFactory;
|
||||
-method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory;
|
||||
-method name newFactory descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory;
|
||||
method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory; thrownTypes javax/xml/stream/FactoryConfigurationError flags 9
|
||||
|
||||
class name javax/xml/stream/XMLOutputFactory
|
||||
-method name newFactory descriptor ()Ljavax/xml/stream/XMLOutputFactory;
|
||||
-method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory;
|
||||
-method name newFactory descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLOutputFactory;
|
||||
method name newInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory; thrownTypes javax/xml/stream/FactoryConfigurationError flags 9
|
||||
|
||||
class name javax/xml/transform/TransformerFactoryConfigurationError
|
||||
-method name getCause descriptor ()Ljava/lang/Throwable;
|
||||
|
||||
class name org/xml/sax/SAXException
|
||||
-method name getCause descriptor ()Ljava/lang/Throwable;
|
||||
|
||||
class name org/xml/sax/SAXParseException
|
||||
-method name toString descriptor ()Ljava/lang/String;
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name javax/xml/bind/JAXBPermission
|
||||
|
||||
class name javax/xml/bind/annotation/XmlElement
|
||||
header extends java/lang/Object implements java/lang/annotation/Annotation flags 2601 runtimeAnnotations @Ljava/lang/annotation/Retention;(value=eLjava/lang/annotation/RetentionPolicy;RUNTIME;)@Ljava/lang/annotation/Target;(value={eLjava/lang/annotation/ElementType;FIELD;eLjava/lang/annotation/ElementType;METHOD;})
|
||||
innerclass innerClass javax/xml/bind/annotation/XmlElement$DEFAULT outerClass javax/xml/bind/annotation/XmlElement innerClassName DEFAULT flags 19
|
||||
|
||||
class name javax/xml/bind/annotation/XmlElementRef
|
||||
-method name required descriptor ()Z
|
||||
|
||||
@@ -1,103 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/xml/ws/Endpoint
|
||||
-method name create descriptor (Ljava/lang/Object;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
-method name create descriptor (Ljava/lang/String;Ljava/lang/Object;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
-method name publish descriptor (Ljava/lang/String;Ljava/lang/Object;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
-method name publish descriptor (Ljavax/xml/ws/spi/http/HttpContext;)V
|
||||
-method name setEndpointContext descriptor (Ljavax/xml/ws/EndpointContext;)V
|
||||
|
||||
-class name javax/xml/ws/EndpointContext
|
||||
|
||||
class name javax/xml/ws/FaultAction
|
||||
-method name className descriptor ()Ljava/lang/Class;
|
||||
method name className descriptor ()Ljava/lang/Class; flags 401
|
||||
|
||||
class name javax/xml/ws/Holder
|
||||
header extends java/lang/Object flags 31 signature <T:Ljava/lang/Object;>Ljava/lang/Object;
|
||||
|
||||
class name javax/xml/ws/RequestWrapper
|
||||
-method name partName descriptor ()Ljava/lang/String;
|
||||
|
||||
class name javax/xml/ws/RespectBinding
|
||||
header extends java/lang/Object implements java/lang/annotation/Annotation flags 2601 runtimeAnnotations @Ljava/lang/annotation/Target;(value={eLjava/lang/annotation/ElementType;TYPE;})@Ljava/lang/annotation/Retention;(value=eLjava/lang/annotation/RetentionPolicy;RUNTIME;)@Ljava/lang/annotation/Documented;@Ljavax/xml/ws/spi/WebServiceFeatureAnnotation;(id="javax.xml.ws.RespectBindingFeature",bean=cLjavax/xml/ws/RespectBindingFeature;)
|
||||
|
||||
class name javax/xml/ws/ResponseWrapper
|
||||
-method name partName descriptor ()Ljava/lang/String;
|
||||
|
||||
class name javax/xml/ws/Service
|
||||
-method name <init> descriptor (Ljava/net/URL;Ljavax/xml/namespace/QName;[Ljavax/xml/ws/WebServiceFeature;)V
|
||||
-method name create descriptor (Ljava/net/URL;Ljavax/xml/namespace/QName;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Service;
|
||||
-method name create descriptor (Ljavax/xml/namespace/QName;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Service;
|
||||
|
||||
class name javax/xml/ws/WebFault
|
||||
-method name messageName descriptor ()Ljava/lang/String;
|
||||
|
||||
class name javax/xml/ws/WebServiceRef
|
||||
-method name type descriptor ()Ljava/lang/Class;
|
||||
-method name value descriptor ()Ljava/lang/Class;
|
||||
-method name lookup descriptor ()Ljava/lang/String;
|
||||
method name type descriptor ()Ljava/lang/Class; annotationDefaultValue cLjava/lang/Object; flags 401
|
||||
method name value descriptor ()Ljava/lang/Class; annotationDefaultValue cLjava/lang/Object; flags 401
|
||||
|
||||
class name javax/xml/ws/soap/Addressing
|
||||
header extends java/lang/Object implements java/lang/annotation/Annotation flags 2601 runtimeAnnotations @Ljava/lang/annotation/Target;(value={eLjava/lang/annotation/ElementType;TYPE;})@Ljava/lang/annotation/Retention;(value=eLjava/lang/annotation/RetentionPolicy;RUNTIME;)@Ljava/lang/annotation/Documented;@Ljavax/xml/ws/spi/WebServiceFeatureAnnotation;(id="http://www.w3.org/2005/08/addressing/module",bean=cLjavax/xml/ws/soap/AddressingFeature;)
|
||||
-method name responses descriptor ()Ljavax/xml/ws/soap/AddressingFeature$Responses;
|
||||
|
||||
class name javax/xml/ws/soap/AddressingFeature
|
||||
header extends javax/xml/ws/WebServiceFeature flags 31
|
||||
-method name <init> descriptor (ZZLjavax/xml/ws/soap/AddressingFeature$Responses;)V
|
||||
-method name getResponses descriptor ()Ljavax/xml/ws/soap/AddressingFeature$Responses;
|
||||
|
||||
-class name javax/xml/ws/soap/AddressingFeature$Responses
|
||||
|
||||
class name javax/xml/ws/soap/MTOM
|
||||
header extends java/lang/Object implements java/lang/annotation/Annotation flags 2601 runtimeAnnotations @Ljava/lang/annotation/Target;(value={eLjava/lang/annotation/ElementType;TYPE;})@Ljava/lang/annotation/Retention;(value=eLjava/lang/annotation/RetentionPolicy;RUNTIME;)@Ljava/lang/annotation/Documented;@Ljavax/xml/ws/spi/WebServiceFeatureAnnotation;(id="http://www.w3.org/2004/08/soap/features/http-optimization",bean=cLjavax/xml/ws/soap/MTOMFeature;)
|
||||
|
||||
-class name javax/xml/ws/spi/Invoker
|
||||
|
||||
class name javax/xml/ws/spi/Provider
|
||||
-method name createServiceDelegate descriptor (Ljava/net/URL;Ljavax/xml/namespace/QName;Ljava/lang/Class;)Ljavax/xml/ws/spi/ServiceDelegate;
|
||||
-method name createServiceDelegate descriptor (Ljava/net/URL;Ljavax/xml/namespace/QName;Ljava/lang/Class;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/spi/ServiceDelegate;
|
||||
-method name createW3CEndpointReference descriptor (Ljava/lang/String;Ljavax/xml/namespace/QName;Ljavax/xml/namespace/QName;Ljavax/xml/namespace/QName;Ljava/util/List;Ljava/lang/String;Ljava/util/List;Ljava/util/List;Ljava/util/Map;)Ljavax/xml/ws/wsaddressing/W3CEndpointReference;
|
||||
-method name createAndPublishEndpoint descriptor (Ljava/lang/String;Ljava/lang/Object;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
-method name createEndpoint descriptor (Ljava/lang/String;Ljava/lang/Object;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
-method name createEndpoint descriptor (Ljava/lang/String;Ljava/lang/Class;Ljavax/xml/ws/spi/Invoker;[Ljavax/xml/ws/WebServiceFeature;)Ljavax/xml/ws/Endpoint;
|
||||
method name createServiceDelegate descriptor (Ljava/net/URL;Ljavax/xml/namespace/QName;Ljava/lang/Class;)Ljavax/xml/ws/spi/ServiceDelegate; flags 401
|
||||
|
||||
-class name javax/xml/ws/spi/http/HttpContext
|
||||
|
||||
-class name javax/xml/ws/spi/http/HttpExchange
|
||||
|
||||
-class name javax/xml/ws/spi/http/HttpHandler
|
||||
|
||||
-class name javax/xml/ws/wsaddressing/W3CEndpointReference
|
||||
|
||||
-class name javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
class name javax/annotation/Resource
|
||||
-method name lookup descriptor ()Ljava/lang/String;
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name com/sun/management/GarbageCollectionNotificationInfo
|
||||
|
||||
class name com/sun/management/HotSpotDiagnosticMXBean
|
||||
header extends java/lang/Object flags 601
|
||||
|
||||
class name com/sun/management/OperatingSystemMXBean
|
||||
-method name getSystemCpuLoad descriptor ()D
|
||||
-method name getProcessCpuLoad descriptor ()D
|
||||
|
||||
-class name com/sun/management/ThreadMXBean
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name com/sun/nio/sctp/AbstractNotificationHandler
|
||||
|
||||
-class name com/sun/nio/sctp/Association
|
||||
|
||||
-class name com/sun/nio/sctp/AssociationChangeNotification
|
||||
|
||||
-class name com/sun/nio/sctp/AssociationChangeNotification$AssocChangeEvent
|
||||
|
||||
-class name com/sun/nio/sctp/HandlerResult
|
||||
|
||||
-class name com/sun/nio/sctp/IllegalReceiveException
|
||||
|
||||
-class name com/sun/nio/sctp/IllegalUnbindException
|
||||
|
||||
-class name com/sun/nio/sctp/InvalidStreamException
|
||||
|
||||
-class name com/sun/nio/sctp/MessageInfo
|
||||
|
||||
-class name com/sun/nio/sctp/Notification
|
||||
|
||||
-class name com/sun/nio/sctp/NotificationHandler
|
||||
|
||||
-class name com/sun/nio/sctp/PeerAddressChangeNotification
|
||||
|
||||
-class name com/sun/nio/sctp/PeerAddressChangeNotification$AddressChangeEvent
|
||||
|
||||
-class name com/sun/nio/sctp/SctpChannel
|
||||
|
||||
-class name com/sun/nio/sctp/SctpMultiChannel
|
||||
|
||||
-class name com/sun/nio/sctp/SctpServerChannel
|
||||
|
||||
-class name com/sun/nio/sctp/SctpSocketOption
|
||||
|
||||
-class name com/sun/nio/sctp/SctpStandardSocketOptions
|
||||
|
||||
-class name com/sun/nio/sctp/SctpStandardSocketOptions$InitMaxStreams
|
||||
|
||||
-class name com/sun/nio/sctp/SendFailedNotification
|
||||
|
||||
-class name com/sun/nio/sctp/ShutdownNotification
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation. Oracle designates this
|
||||
# particular file as subject to the "Classpath" exception as provided
|
||||
# by Oracle in the LICENSE file that accompanied this code.
|
||||
#
|
||||
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
# version 2 for more details (a copy is included in the LICENSE file that
|
||||
# accompanied this code).
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License version
|
||||
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
# or visit www.oracle.com if you need additional information or have any
|
||||
# questions.
|
||||
#
|
||||
# ##########################################################
|
||||
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
|
||||
# ##########################################################
|
||||
#
|
||||
-class name com/sun/security/jgss/AuthorizationDataEntry
|
||||
|
||||
-class name com/sun/security/jgss/ExtendedGSSContext
|
||||
|
||||
-class name com/sun/security/jgss/InquireSecContextPermission
|
||||
|
||||
-class name com/sun/security/jgss/InquireType
|
||||
|
||||
@@ -29,9 +29,8 @@
|
||||
#command used to generate this file:
|
||||
#build.tools.symbolgenerator.CreateSymbols build-description-incremental symbols include.list
|
||||
#
|
||||
generate platforms 6:7:8:9:A
|
||||
generate platforms 7:8:9:A
|
||||
platform version 8 files java.activation-8.sym.txt:java.base-8.sym.txt:java.compiler-8.sym.txt:java.corba-8.sym.txt:java.datatransfer-8.sym.txt:java.desktop-8.sym.txt:java.instrument-8.sym.txt:java.logging-8.sym.txt:java.management-8.sym.txt:java.management.rmi-8.sym.txt:java.naming-8.sym.txt:java.prefs-8.sym.txt:java.rmi-8.sym.txt:java.scripting-8.sym.txt:java.security.jgss-8.sym.txt:java.security.sasl-8.sym.txt:java.sql-8.sym.txt:java.sql.rowset-8.sym.txt:java.transaction-8.sym.txt:java.xml-8.sym.txt:java.xml.bind-8.sym.txt:java.xml.crypto-8.sym.txt:java.xml.ws-8.sym.txt:java.xml.ws.annotation-8.sym.txt:jdk.httpserver-8.sym.txt:jdk.management-8.sym.txt:jdk.scripting.nashorn-8.sym.txt:jdk.sctp-8.sym.txt:jdk.security.auth-8.sym.txt:jdk.security.jgss-8.sym.txt
|
||||
platform version 7 base 8 files java.base-7.sym.txt:java.compiler-7.sym.txt:java.datatransfer-7.sym.txt:java.desktop-7.sym.txt:java.logging-7.sym.txt:java.management-7.sym.txt:java.naming-7.sym.txt:java.prefs-7.sym.txt:java.rmi-7.sym.txt:java.scripting-7.sym.txt:java.security.jgss-7.sym.txt:java.security.sasl-7.sym.txt:java.sql-7.sym.txt:java.sql.rowset-7.sym.txt:java.xml-7.sym.txt:java.xml.bind-7.sym.txt:java.xml.ws.annotation-7.sym.txt:jdk.httpserver-7.sym.txt:jdk.management-7.sym.txt:jdk.scripting.nashorn-7.sym.txt:jdk.sctp-7.sym.txt:jdk.security.auth-7.sym.txt:jdk.security.jgss-7.sym.txt
|
||||
platform version 6 base 7 files java.base-6.sym.txt:java.compiler-6.sym.txt:java.desktop-6.sym.txt:java.logging-6.sym.txt:java.management-6.sym.txt:java.rmi-6.sym.txt:java.security.jgss-6.sym.txt:java.sql-6.sym.txt:java.sql.rowset-6.sym.txt:java.xml-6.sym.txt:java.xml.bind-6.sym.txt:java.xml.ws-6.sym.txt:java.xml.ws.annotation-6.sym.txt:jdk.management-6.sym.txt:jdk.sctp-6.sym.txt:jdk.security.jgss-6.sym.txt
|
||||
platform version 9 base 8 files java.activation-9.sym.txt:java.base-9.sym.txt:java.compiler-9.sym.txt:java.corba-9.sym.txt:java.datatransfer-9.sym.txt:java.desktop-9.sym.txt:java.instrument-9.sym.txt:java.logging-9.sym.txt:java.management-9.sym.txt:java.management.rmi-9.sym.txt:java.naming-9.sym.txt:java.prefs-9.sym.txt:java.rmi-9.sym.txt:java.scripting-9.sym.txt:java.se-9.sym.txt:java.se.ee-9.sym.txt:java.security.jgss-9.sym.txt:java.security.sasl-9.sym.txt:java.smartcardio-9.sym.txt:java.sql-9.sym.txt:java.sql.rowset-9.sym.txt:java.transaction-9.sym.txt:java.xml-9.sym.txt:java.xml.bind-9.sym.txt:java.xml.crypto-9.sym.txt:java.xml.ws-9.sym.txt:java.xml.ws.annotation-9.sym.txt:jdk.accessibility-9.sym.txt:jdk.attach-9.sym.txt:jdk.charsets-9.sym.txt:jdk.compiler-9.sym.txt:jdk.crypto.cryptoki-9.sym.txt:jdk.crypto.ec-9.sym.txt:jdk.dynalink-9.sym.txt:jdk.editpad-9.sym.txt:jdk.hotspot.agent-9.sym.txt:jdk.httpserver-9.sym.txt:jdk.incubator.httpclient-9.sym.txt:jdk.jartool-9.sym.txt:jdk.javadoc-9.sym.txt:jdk.jcmd-9.sym.txt:jdk.jconsole-9.sym.txt:jdk.jdeps-9.sym.txt:jdk.jdi-9.sym.txt:jdk.jdwp.agent-9.sym.txt:jdk.jlink-9.sym.txt:jdk.jshell-9.sym.txt:jdk.jsobject-9.sym.txt:jdk.jstatd-9.sym.txt:jdk.localedata-9.sym.txt:jdk.management-9.sym.txt:jdk.management.agent-9.sym.txt:jdk.naming.dns-9.sym.txt:jdk.naming.rmi-9.sym.txt:jdk.net-9.sym.txt:jdk.pack-9.sym.txt:jdk.policytool-9.sym.txt:jdk.rmic-9.sym.txt:jdk.scripting.nashorn-9.sym.txt:jdk.sctp-9.sym.txt:jdk.security.auth-9.sym.txt:jdk.security.jgss-9.sym.txt:jdk.unsupported-9.sym.txt:jdk.xml.dom-9.sym.txt:jdk.zipfs-9.sym.txt
|
||||
platform version A base 9 files java.activation-A.sym.txt:java.base-A.sym.txt:java.compiler-A.sym.txt:java.corba-A.sym.txt:java.datatransfer-A.sym.txt:java.desktop-A.sym.txt:java.instrument-A.sym.txt:java.logging-A.sym.txt:java.management-A.sym.txt:java.management.rmi-A.sym.txt:java.naming-A.sym.txt:java.prefs-A.sym.txt:java.rmi-A.sym.txt:java.scripting-A.sym.txt:java.se-A.sym.txt:java.se.ee-A.sym.txt:java.security.jgss-A.sym.txt:java.security.sasl-A.sym.txt:java.smartcardio-A.sym.txt:java.sql-A.sym.txt:java.sql.rowset-A.sym.txt:java.transaction-A.sym.txt:java.xml-A.sym.txt:java.xml.bind-A.sym.txt:java.xml.crypto-A.sym.txt:java.xml.ws-A.sym.txt:java.xml.ws.annotation-A.sym.txt:jdk.accessibility-A.sym.txt:jdk.attach-A.sym.txt:jdk.charsets-A.sym.txt:jdk.compiler-A.sym.txt:jdk.crypto.cryptoki-A.sym.txt:jdk.crypto.ec-A.sym.txt:jdk.dynalink-A.sym.txt:jdk.editpad-A.sym.txt:jdk.hotspot.agent-A.sym.txt:jdk.httpserver-A.sym.txt:jdk.incubator.httpclient-A.sym.txt:jdk.jartool-A.sym.txt:jdk.javadoc-A.sym.txt:jdk.jcmd-A.sym.txt:jdk.jconsole-A.sym.txt:jdk.jdeps-A.sym.txt:jdk.jdi-A.sym.txt:jdk.jdwp.agent-A.sym.txt:jdk.jlink-A.sym.txt:jdk.jshell-A.sym.txt:jdk.jsobject-A.sym.txt:jdk.jstatd-A.sym.txt:jdk.localedata-A.sym.txt:jdk.management-A.sym.txt:jdk.management.agent-A.sym.txt:jdk.naming.dns-A.sym.txt:jdk.naming.rmi-A.sym.txt:jdk.net-A.sym.txt:jdk.pack-A.sym.txt:jdk.policytool-A.sym.txt:jdk.rmic-A.sym.txt:jdk.scripting.nashorn-A.sym.txt:jdk.sctp-A.sym.txt:jdk.security.auth-A.sym.txt:jdk.security.jgss-A.sym.txt:jdk.unsupported-A.sym.txt:jdk.xml.dom-A.sym.txt:jdk.zipfs-A.sym.txt
|
||||
|
||||
@@ -123,7 +123,8 @@ TARGETS += $(GENSRC_DIR)/_gensrc_proc_done
|
||||
$(GENSRC_DIR)/module-info.java.extra: $(GENSRC_DIR)/_gensrc_proc_done
|
||||
($(CD) $(GENSRC_DIR)/META-INF/providers && \
|
||||
p=""; \
|
||||
for i in $$($(LS) | $(SORT)); do \
|
||||
impl=""; \
|
||||
for i in $$($(GREP) '^' * | $(SORT) -t ':' -k 2 | $(SED) 's/:.*//'); do \
|
||||
c=$$($(CAT) $$i | $(TR) -d '\n\r'); \
|
||||
if test x$$p != x$$c; then \
|
||||
if test x$$p != x; then \
|
||||
@@ -131,15 +132,27 @@ $(GENSRC_DIR)/module-info.java.extra: $(GENSRC_DIR)/_gensrc_proc_done
|
||||
fi; \
|
||||
$(ECHO) "provides $$c with" >> $@; \
|
||||
p=$$c; \
|
||||
impl=""; \
|
||||
fi; \
|
||||
$(ECHO) " $$i," >> $@; \
|
||||
if test x$$impl != x; then \
|
||||
$(ECHO) " , $$i" >> $@; \
|
||||
else \
|
||||
$(ECHO) " $$i" >> $@; \
|
||||
fi; \
|
||||
impl=$$i; \
|
||||
done); \
|
||||
$(ECHO) " ;" >> $@; \
|
||||
$(ECHO) "uses org.graalvm.compiler.options.OptionDescriptors;" >> $@; \
|
||||
$(ECHO) "provides org.graalvm.compiler.options.OptionDescriptors with" >> $@; \
|
||||
impl=""; \
|
||||
for i in $$($(FIND) $(GENSRC_DIR) -name '*_OptionDescriptors.java' | $(SORT)); do \
|
||||
c=$$($(ECHO) $$i | $(SED) 's:.*/jdk\.internal\.vm\.compiler/\(.*\)\.java:\1:' | $(TR) '/' '.'); \
|
||||
$(ECHO) " $$c," >> $@; \
|
||||
if test x$$impl != x; then \
|
||||
$(ECHO) " , $$c" >> $@; \
|
||||
else \
|
||||
$(ECHO) " $$c" >> $@; \
|
||||
fi; \
|
||||
impl=$$c; \
|
||||
done; \
|
||||
$(ECHO) " ;" >> $@;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2013, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
#
|
||||
# This code is free software; you can redistribute it and/or modify it
|
||||
@@ -109,6 +109,7 @@ ifneq ($(call check-jvm-feature, cds), true)
|
||||
classListParser.cpp \
|
||||
classLoaderExt.cpp \
|
||||
filemap.cpp \
|
||||
heapShared.cpp \
|
||||
metaspaceShared.cpp \
|
||||
metaspaceShared_$(HOTSPOT_TARGET_CPU).cpp \
|
||||
metaspaceShared_$(HOTSPOT_TARGET_CPU_ARCH).cpp \
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
|
||||
#include <proc_service.h>
|
||||
#include "gc/shared/collectedHeap.hpp"
|
||||
#include "memory/heap.hpp"
|
||||
#include "runtime/vmStructs.hpp"
|
||||
|
||||
typedef enum GEN_variant {
|
||||
@@ -212,7 +213,7 @@ int generateJvmOffsets(GEN_variant gen_variant) {
|
||||
GEN_VALUE(AccessFlags_NATIVE, JVM_ACC_NATIVE);
|
||||
GEN_VALUE(ConstMethod_has_linenumber_table, ConstMethod::_has_linenumber_table);
|
||||
GEN_OFFS(AccessFlags, _flags);
|
||||
GEN_OFFS(Symbol, _length);
|
||||
GEN_OFFS(Symbol, _length_and_refcount);
|
||||
GEN_OFFS(Symbol, _body);
|
||||
printf("\n");
|
||||
|
||||
|
||||
@@ -136,6 +136,7 @@ JVM_IHashCode
|
||||
JVM_InitProperties
|
||||
JVM_InitStackTraceElement
|
||||
JVM_InitStackTraceElementArray
|
||||
JVM_InitializeFromArchive
|
||||
JVM_InternString
|
||||
JVM_Interrupt
|
||||
JVM_InvokeMethod
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!-- importing.xml -->
|
||||
<project name="jdk" basedir="..">
|
||||
<project name="jdk">
|
||||
|
||||
<script language="javascript" classpath=".idea/classes">
|
||||
<script language="javascript" classpath="${idea.dir}/classes">
|
||||
var JdkLogger = Java.type("idea.JdkIdeaAntLogger");
|
||||
new JdkLogger(project)
|
||||
</script>
|
||||
@@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AntConfiguration">
|
||||
<buildFile url="file://$PROJECT_DIR$/.idea/build.xml">
|
||||
<buildFile url="file://$PROJECT_DIR$/make/idea/build.xml">
|
||||
<properties>
|
||||
<property name="intellij.ismake" value="$IsMake$" />
|
||||
<property name="build.target.dir" value="specDir" /> <!-- this will be replaced -->
|
||||
<property name="module.name" value="java.base" /> <!-- this will be replaced -->
|
||||
<property name="idea.dir" value="$ModuleFileDir$" />
|
||||
</properties>
|
||||
<executeOn event="afterCompilation" target="post-make" />
|
||||
</buildFile>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<jre alt="true" value="images_jdk" /> <!-- this will be replaced -->
|
||||
<options></options>
|
||||
<ant>
|
||||
<target file="file://$PROJECT_DIR$/.idea/build.xml" name="images" />
|
||||
<target file="file://$PROJECT_DIR$/make/idea/build.xml" name="images" />
|
||||
</ant>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_9" assert-keyword="true" jdk-15="true">
|
||||
<output url="file://$PROJECT_DIR$/build/idea/out" />
|
||||
<output url="file://$PROJECT_DIR$/build/out" />
|
||||
</component>
|
||||
</project>
|
||||
|
||||
@@ -11,24 +11,11 @@
|
||||
<component name="antWorkspaceConfiguration">
|
||||
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
|
||||
<option name="FILTER_TARGETS" value="false" />
|
||||
<buildFile url="file://$PROJECT_DIR$/.idea/build.xml">
|
||||
<buildFile url="file://$PROJECT_DIR$/make/idea/build.xml">
|
||||
<runInBackground value="false" />
|
||||
<targetFilters>
|
||||
<filter targetName="post-make" isVisible="false" />
|
||||
<filter targetName="clean" isVisible="true" />
|
||||
<filter targetName="-do-configure" isVisible="false" />
|
||||
<filter targetName="images" isVisible="true" />
|
||||
<filter targetName="build-module" isVisible="true" />
|
||||
<filter targetName="jtreg-debug" isVisible="false" />
|
||||
<filter targetName="jtreg-debug-internal" isVisible="false" />
|
||||
<filter targetName="jtreg" isVisible="false" />
|
||||
<filter targetName="-check-jtreg.home" isVisible="false" />
|
||||
<filter targetName="-def-check" isVisible="false" />
|
||||
<filter targetName="-def-jtreg" isVisible="false" />
|
||||
<filter targetName="-check-boot.java.home" isVisible="false" />
|
||||
<filter targetName="-check-target.java.home" isVisible="false" />
|
||||
<filter targetName="find-jdk-build-dir" isVisible="false" />
|
||||
<filter targetName="check-env" isVisible="false" />
|
||||
</targetFilters>
|
||||
<treeView value="false" />
|
||||
<expanded value="true" />
|
||||
|
||||
@@ -52,14 +52,16 @@ class RootNode extends AbstractNamedNode {
|
||||
writer.println("</style>");
|
||||
writer.println("</head>");
|
||||
writer.println("<body>");
|
||||
writer.println("<ul>");
|
||||
writer.println("<ul role=\"navigation\">");
|
||||
for (Node node : components) {
|
||||
node.documentIndex(writer);
|
||||
}
|
||||
writer.println("</ul>");
|
||||
writer.println("<div role=\"main\">");
|
||||
for (Node node : components) {
|
||||
node.document(writer);
|
||||
}
|
||||
writer.println("</div>");
|
||||
writer.println("</body></html>");
|
||||
}
|
||||
|
||||
|
||||
@@ -37,7 +37,9 @@ import java.util.HashMap;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
import static java.util.stream.Collectors.*;
|
||||
|
||||
@@ -131,7 +133,7 @@ public class GenModuleInfoSource {
|
||||
// parse module-info.java.extra
|
||||
this.extras = new ModuleInfo();
|
||||
for (Path file : extraFiles) {
|
||||
extras.parse(file);
|
||||
extras.parseExtra(file);
|
||||
}
|
||||
|
||||
// merge with module-info.java.extra
|
||||
@@ -177,6 +179,7 @@ public class GenModuleInfoSource {
|
||||
final Map<String, Statement> provides = new HashMap<>();
|
||||
|
||||
Statement getStatement(String directive, String name) {
|
||||
Objects.requireNonNull(name);
|
||||
switch (directive) {
|
||||
case "exports":
|
||||
if (moduleInfo.exports.containsKey(name) &&
|
||||
@@ -223,49 +226,49 @@ public class GenModuleInfoSource {
|
||||
extraFiles.exports.entrySet()
|
||||
.stream()
|
||||
.filter(e -> exports.containsKey(e.getKey()) &&
|
||||
e.getValue().filter(modules))
|
||||
e.getValue().filter(modules))
|
||||
.forEach(e -> mergeExportsOrOpens(exports.get(e.getKey()),
|
||||
e.getValue(),
|
||||
modules));
|
||||
e.getValue(),
|
||||
modules));
|
||||
|
||||
// add exports that are not defined in the original module-info.java
|
||||
extraFiles.exports.entrySet()
|
||||
.stream()
|
||||
.filter(e -> !exports.containsKey(e.getKey()) &&
|
||||
e.getValue().filter(modules))
|
||||
e.getValue().filter(modules))
|
||||
.forEach(e -> addTargets(getStatement("exports", e.getKey()),
|
||||
e.getValue(),
|
||||
modules));
|
||||
e.getValue(),
|
||||
modules));
|
||||
|
||||
// API package opened in the original module-info.java
|
||||
extraFiles.opens.entrySet()
|
||||
.stream()
|
||||
.filter(e -> opens.containsKey(e.getKey()) &&
|
||||
e.getValue().filter(modules))
|
||||
e.getValue().filter(modules))
|
||||
.forEach(e -> mergeExportsOrOpens(opens.get(e.getKey()),
|
||||
e.getValue(),
|
||||
modules));
|
||||
e.getValue(),
|
||||
modules));
|
||||
|
||||
// add opens that are not defined in the original module-info.java
|
||||
extraFiles.opens.entrySet()
|
||||
.stream()
|
||||
.filter(e -> !opens.containsKey(e.getKey()) &&
|
||||
e.getValue().filter(modules))
|
||||
e.getValue().filter(modules))
|
||||
.forEach(e -> addTargets(getStatement("opens", e.getKey()),
|
||||
e.getValue(),
|
||||
modules));
|
||||
e.getValue(),
|
||||
modules));
|
||||
|
||||
// provides
|
||||
extraFiles.provides.keySet()
|
||||
.stream()
|
||||
.filter(service -> provides.containsKey(service))
|
||||
.forEach(service -> mergeProvides(service,
|
||||
extraFiles.provides.get(service)));
|
||||
extraFiles.provides.get(service)));
|
||||
extraFiles.provides.keySet()
|
||||
.stream()
|
||||
.filter(service -> !provides.containsKey(service))
|
||||
.forEach(service -> provides.put(service,
|
||||
extraFiles.provides.get(service)));
|
||||
extraFiles.provides.get(service)));
|
||||
|
||||
// uses
|
||||
extraFiles.uses.keySet()
|
||||
@@ -280,8 +283,8 @@ public class GenModuleInfoSource {
|
||||
Set<String> modules)
|
||||
{
|
||||
extra.targets.stream()
|
||||
.filter(mn -> modules.contains(mn))
|
||||
.forEach(mn -> statement.addTarget(mn));
|
||||
.filter(mn -> modules.contains(mn))
|
||||
.forEach(mn -> statement.addTarget(mn));
|
||||
}
|
||||
|
||||
private void mergeExportsOrOpens(Statement statement,
|
||||
@@ -319,7 +322,7 @@ public class GenModuleInfoSource {
|
||||
}
|
||||
|
||||
extra.targets.stream()
|
||||
.forEach(mn -> statement.addTarget(mn));
|
||||
.forEach(mn -> statement.addTarget(mn));
|
||||
}
|
||||
|
||||
|
||||
@@ -358,189 +361,171 @@ public class GenModuleInfoSource {
|
||||
.forEach(e -> writer.println(e.getValue()));
|
||||
}
|
||||
|
||||
private void parse(Path sourcefile) throws IOException {
|
||||
List<String> lines = Files.readAllLines(sourcefile);
|
||||
Statement statement = null;
|
||||
boolean hasTargets = false;
|
||||
|
||||
for (int lineNumber = 1; lineNumber <= lines.size(); ) {
|
||||
String l = lines.get(lineNumber-1).trim();
|
||||
int index = 0;
|
||||
|
||||
if (l.isEmpty()) {
|
||||
lineNumber++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// comment block starts
|
||||
if (l.startsWith("/*")) {
|
||||
while (l.indexOf("*/") == -1) { // end comment block
|
||||
l = lines.get(lineNumber++).trim();
|
||||
}
|
||||
index = l.indexOf("*/") + 2;
|
||||
if (index >= l.length()) {
|
||||
lineNumber++;
|
||||
continue;
|
||||
} else {
|
||||
// rest of the line
|
||||
l = l.substring(index, l.length()).trim();
|
||||
index = 0;
|
||||
}
|
||||
}
|
||||
|
||||
// skip comment and annotations
|
||||
if (l.startsWith("//") || l.startsWith("@")) {
|
||||
lineNumber++;
|
||||
continue;
|
||||
}
|
||||
|
||||
int current = lineNumber;
|
||||
int count = 0;
|
||||
while (index < l.length()) {
|
||||
if (current == lineNumber && ++count > 20)
|
||||
throw new Error("Fail to parse line " + lineNumber + " " + sourcefile);
|
||||
|
||||
int end = l.indexOf(';');
|
||||
if (end == -1)
|
||||
end = l.length();
|
||||
String content = l.substring(0, end).trim();
|
||||
if (content.isEmpty()) {
|
||||
index = end+1;
|
||||
if (index < l.length()) {
|
||||
// rest of the line
|
||||
l = l.substring(index, l.length()).trim();
|
||||
index = 0;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
String[] s = content.split("\\s+");
|
||||
String keyword = s[0].trim();
|
||||
|
||||
String name = s.length > 1 ? s[1].trim() : null;
|
||||
trace("%d: %s index=%d len=%d%n", lineNumber, l, index, l.length());
|
||||
switch (keyword) {
|
||||
case "module":
|
||||
case "requires":
|
||||
case "}":
|
||||
index = l.length(); // skip to the end
|
||||
continue;
|
||||
|
||||
case "exports":
|
||||
case "opens":
|
||||
case "provides":
|
||||
case "uses":
|
||||
// assume name immediately after exports, opens, provides, uses
|
||||
statement = getStatement(keyword, name);
|
||||
hasTargets = false;
|
||||
|
||||
int i = l.indexOf(name, keyword.length()+1) + name.length() + 1;
|
||||
l = i < l.length() ? l.substring(i, l.length()).trim() : "";
|
||||
index = 0;
|
||||
|
||||
if (s.length >= 3) {
|
||||
if (!s[2].trim().equals(statement.qualifier)) {
|
||||
throw new RuntimeException(sourcefile + ", line " +
|
||||
lineNumber + ", is malformed: " + s[2]);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case "to":
|
||||
case "with":
|
||||
if (statement == null) {
|
||||
throw new RuntimeException(sourcefile + ", line " +
|
||||
lineNumber + ", is malformed");
|
||||
}
|
||||
|
||||
hasTargets = true;
|
||||
String qualifier = statement.qualifier;
|
||||
i = l.indexOf(qualifier, index) + qualifier.length() + 1;
|
||||
l = i < l.length() ? l.substring(i, l.length()).trim() : "";
|
||||
index = 0;
|
||||
break;
|
||||
}
|
||||
|
||||
if (index >= l.length()) {
|
||||
// skip to next line
|
||||
continue;
|
||||
}
|
||||
|
||||
// comment block starts
|
||||
if (l.startsWith("/*")) {
|
||||
while (l.indexOf("*/") == -1) { // end comment block
|
||||
l = lines.get(lineNumber++).trim();
|
||||
}
|
||||
index = l.indexOf("*/") + 2;
|
||||
if (index >= l.length()) {
|
||||
continue;
|
||||
} else {
|
||||
// rest of the line
|
||||
l = l.substring(index, l.length()).trim();
|
||||
index = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (l.startsWith("//")) {
|
||||
index = l.length();
|
||||
continue;
|
||||
}
|
||||
|
||||
if (statement == null) {
|
||||
throw new RuntimeException(sourcefile + ", line " +
|
||||
lineNumber + ": missing keyword?");
|
||||
}
|
||||
|
||||
if (!hasTargets) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (index >= l.length()) {
|
||||
throw new RuntimeException(sourcefile + ", line " +
|
||||
lineNumber + ": " + l);
|
||||
}
|
||||
|
||||
// parse the target module of exports, opens, or provides
|
||||
Statement stmt = statement;
|
||||
|
||||
int terminal = l.indexOf(';', index);
|
||||
// determine up to which position to parse
|
||||
int pos = terminal != -1 ? terminal : l.length();
|
||||
// parse up to comments
|
||||
int pos1 = l.indexOf("//", index);
|
||||
if (pos1 != -1 && pos1 < pos) {
|
||||
pos = pos1;
|
||||
}
|
||||
int pos2 = l.indexOf("/*", index);
|
||||
if (pos2 != -1 && pos2 < pos) {
|
||||
pos = pos2;
|
||||
}
|
||||
// target module(s) for qualitifed exports or opens
|
||||
// or provider implementation class(es)
|
||||
String rhs = l.substring(index, pos).trim();
|
||||
index += rhs.length();
|
||||
trace("rhs: index=%d [%s] [line: %s]%n", index, rhs, l);
|
||||
|
||||
String[] targets = rhs.split(",");
|
||||
for (String t : targets) {
|
||||
String n = t.trim();
|
||||
if (n.length() > 0)
|
||||
stmt.addTarget(n);
|
||||
}
|
||||
|
||||
// start next statement
|
||||
if (pos == terminal) {
|
||||
statement = null;
|
||||
hasTargets = false;
|
||||
index = terminal + 1;
|
||||
}
|
||||
l = index < l.length() ? l.substring(index, l.length()).trim() : "";
|
||||
index = 0;
|
||||
}
|
||||
|
||||
lineNumber++;
|
||||
private void parse(Path file) throws IOException {
|
||||
Parser parser = new Parser(file);
|
||||
parser.run();
|
||||
if (verbose) {
|
||||
parser.dump();
|
||||
}
|
||||
process(parser, false);
|
||||
}
|
||||
|
||||
private void parseExtra(Path file) throws IOException {
|
||||
Parser parser = new Parser(file);
|
||||
parser.run();
|
||||
if (verbose) {
|
||||
parser.dump();
|
||||
}
|
||||
process(parser, true);
|
||||
}
|
||||
|
||||
|
||||
private void process(Parser parser, boolean extraFile) throws IOException {
|
||||
// no duplicate statement local in each file
|
||||
Map<String, Statement> exports = new HashMap<>();
|
||||
Map<String, Statement> opens = new HashMap<>();
|
||||
Map<String, Statement> uses = new HashMap<>();
|
||||
Map<String, Statement> provides = new HashMap<>();
|
||||
|
||||
String token = null;
|
||||
boolean hasCurlyBracket = false;
|
||||
while ((token = parser.nextToken()) != null) {
|
||||
if (token.equals("module")) {
|
||||
String modulename = nextIdentifier(parser);
|
||||
if (extraFile) {
|
||||
throw parser.newError("cannot declare module in " + parser.sourceFile);
|
||||
}
|
||||
skipTokenOrThrow(parser, "{", "missing {");
|
||||
hasCurlyBracket = true;
|
||||
} else if (token.equals("requires")) {
|
||||
token = nextIdentifier(parser);
|
||||
if (token.equals("transitive")) {
|
||||
token = nextIdentifier(parser);
|
||||
}
|
||||
if (extraFile) {
|
||||
throw parser.newError("cannot declare requires in " + parser.sourceFile);
|
||||
}
|
||||
skipTokenOrThrow(parser, ";", "missing semicolon");
|
||||
} else if (isExportsOpensProvidesUses(token)) {
|
||||
// new statement
|
||||
String keyword = token;
|
||||
String name = nextIdentifier(parser);
|
||||
Statement statement = getStatement(keyword, name);
|
||||
switch (keyword) {
|
||||
case "exports":
|
||||
if (exports.containsKey(name)) {
|
||||
throw parser.newError("multiple " + keyword + " " + name);
|
||||
}
|
||||
exports.put(name, statement);
|
||||
break;
|
||||
case "opens":
|
||||
if (opens.containsKey(name)) {
|
||||
throw parser.newError("multiple " + keyword + " " + name);
|
||||
}
|
||||
opens.put(name, statement);
|
||||
break;
|
||||
case "uses":
|
||||
if (uses.containsKey(name)) {
|
||||
throw parser.newError("multiple " + keyword + " " + name);
|
||||
}
|
||||
uses.put(name, statement);
|
||||
break;
|
||||
case "provides":
|
||||
if (provides.containsKey(name)) {
|
||||
throw parser.newError("multiple " + keyword + " " + name);
|
||||
}
|
||||
provides.put(name, statement);
|
||||
break;
|
||||
}
|
||||
String lookAhead = lookAhead(parser);
|
||||
if (lookAhead.equals(statement.qualifier)) {
|
||||
parser.nextToken(); // skip qualifier
|
||||
while ((lookAhead = parser.peekToken()) != null) {
|
||||
// add target name
|
||||
name = nextIdentifier(parser);
|
||||
statement.addTarget(name);
|
||||
lookAhead = lookAhead(parser);
|
||||
if (lookAhead.equals(",") || lookAhead.equals(";")) {
|
||||
parser.nextToken();
|
||||
} else {
|
||||
throw parser.newError("missing semicolon");
|
||||
}
|
||||
if (lookAhead.equals(";")) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
skipTokenOrThrow(parser, ";", "missing semicolon");
|
||||
}
|
||||
} else if (token.equals(";")) {
|
||||
continue;
|
||||
} else if (hasCurlyBracket && token.equals("}")) {
|
||||
hasCurlyBracket = false;
|
||||
if (parser.peekToken() != null) { // must be EOF
|
||||
throw parser.newError("is malformed");
|
||||
}
|
||||
} else {
|
||||
throw parser.newError("missing keyword");
|
||||
}
|
||||
}
|
||||
if (hasCurlyBracket) {
|
||||
parser.newError("missing }");
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isExportsOpensProvidesUses(String word) {
|
||||
switch (word) {
|
||||
case "exports":
|
||||
case "opens":
|
||||
case "provides":
|
||||
case "uses":
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private String lookAhead(Parser parser) {
|
||||
String lookAhead = parser.peekToken();
|
||||
if (lookAhead == null) { // EOF
|
||||
throw parser.newError("reach end of file");
|
||||
}
|
||||
return lookAhead;
|
||||
}
|
||||
|
||||
private String nextIdentifier(Parser parser) {
|
||||
String lookAhead = parser.peekToken();
|
||||
boolean maybeIdentifier = true;
|
||||
switch (lookAhead) {
|
||||
case "module":
|
||||
case "requires":
|
||||
case "exports":
|
||||
case "opens":
|
||||
case "provides":
|
||||
case "uses":
|
||||
case "to":
|
||||
case "with":
|
||||
case ",":
|
||||
case ";":
|
||||
case "{":
|
||||
case "}":
|
||||
maybeIdentifier = false;
|
||||
}
|
||||
if (lookAhead == null || !maybeIdentifier) {
|
||||
throw parser.newError("<identifier> missing");
|
||||
}
|
||||
|
||||
return parser.nextToken();
|
||||
}
|
||||
|
||||
private String skipTokenOrThrow(Parser parser, String token, String msg) {
|
||||
// look ahead to report the proper line number
|
||||
String lookAhead = parser.peekToken();
|
||||
if (!token.equals(lookAhead)) {
|
||||
throw parser.newError(msg);
|
||||
}
|
||||
return parser.nextToken();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -620,4 +605,175 @@ public class GenModuleInfoSource {
|
||||
System.out.format(fmt, params);
|
||||
}
|
||||
}
|
||||
|
||||
static class Parser {
|
||||
private static final List<String> EMPTY = List.of();
|
||||
|
||||
private final Path sourceFile;
|
||||
private boolean inCommentBlock = false;
|
||||
private List<List<String>> tokens = new ArrayList<>();
|
||||
private int lineNumber = 1;
|
||||
private int index = 0;
|
||||
|
||||
Parser(Path file) {
|
||||
this.sourceFile = file;
|
||||
}
|
||||
|
||||
void run() throws IOException {
|
||||
List<String> lines = Files.readAllLines(sourceFile);
|
||||
for (int lineNumber = 1; lineNumber <= lines.size(); lineNumber++) {
|
||||
String l = lines.get(lineNumber - 1).trim();
|
||||
tokenize(l);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Tokenize the given string. Comments are skipped.
|
||||
*/
|
||||
List<String> tokenize(String l) {
|
||||
while (!l.isEmpty()) {
|
||||
if (inCommentBlock) {
|
||||
int comment = l.indexOf("*/");
|
||||
if (comment == -1)
|
||||
return emptyTokens();
|
||||
|
||||
// end comment block
|
||||
inCommentBlock = false;
|
||||
if ((comment + 2) >= l.length()) {
|
||||
return emptyTokens();
|
||||
}
|
||||
l = l.substring(comment + 2, l.length()).trim();
|
||||
}
|
||||
|
||||
// skip comment
|
||||
int comment = l.indexOf("//");
|
||||
if (comment >= 0) {
|
||||
l = l.substring(0, comment).trim();
|
||||
if (l.isEmpty()) return emptyTokens();
|
||||
}
|
||||
|
||||
if (l.isEmpty()) {
|
||||
return emptyTokens();
|
||||
}
|
||||
|
||||
int beginComment = l.indexOf("/*");
|
||||
int endComment = l.indexOf("*/");
|
||||
if (beginComment == -1)
|
||||
return tokens(l);
|
||||
|
||||
String s1 = l.substring(0, beginComment).trim();
|
||||
if (endComment > 0) {
|
||||
String s2 = l.substring(endComment + 2, l.length()).trim();
|
||||
if (s1.isEmpty()) {
|
||||
l = s2;
|
||||
} else if (s2.isEmpty()) {
|
||||
l = s1;
|
||||
} else {
|
||||
l = s1 + " " + s2;
|
||||
}
|
||||
} else {
|
||||
inCommentBlock = true;
|
||||
return tokens(s1);
|
||||
}
|
||||
}
|
||||
return tokens(l);
|
||||
}
|
||||
|
||||
private List<String> emptyTokens() {
|
||||
this.tokens.add(EMPTY);
|
||||
return EMPTY;
|
||||
}
|
||||
private List<String> tokens(String l) {
|
||||
List<String> tokens = new ArrayList<>();
|
||||
for (String s : l.split("\\s+")) {
|
||||
int pos=0;
|
||||
s = s.trim();
|
||||
if (s.isEmpty())
|
||||
continue;
|
||||
|
||||
int i = s.indexOf(',', pos);
|
||||
int j = s.indexOf(';', pos);
|
||||
while ((i >= 0 && i < s.length()) || (j >= 0 && j < s.length())) {
|
||||
if (j == -1 || (i >= 0 && i < j)) {
|
||||
String n = s.substring(pos, i).trim();
|
||||
if (!n.isEmpty()) {
|
||||
tokens.add(n);
|
||||
}
|
||||
tokens.add(s.substring(i, i + 1));
|
||||
pos = i + 1;
|
||||
i = s.indexOf(',', pos);
|
||||
} else {
|
||||
String n = s.substring(pos, j).trim();
|
||||
if (!n.isEmpty()) {
|
||||
tokens.add(n);
|
||||
}
|
||||
tokens.add(s.substring(j, j + 1));
|
||||
pos = j + 1;
|
||||
j = s.indexOf(';', pos);
|
||||
}
|
||||
}
|
||||
|
||||
String n = s.substring(pos).trim();
|
||||
if (!n.isEmpty()) {
|
||||
tokens.add(n);
|
||||
}
|
||||
}
|
||||
this.tokens.add(tokens);
|
||||
return tokens;
|
||||
}
|
||||
|
||||
/*
|
||||
* Returns next token.
|
||||
*/
|
||||
String nextToken() {
|
||||
while (lineNumber <= tokens.size()) {
|
||||
List<String> l = tokens.get(lineNumber-1);
|
||||
if (index < l.size()) {
|
||||
return l.get(index++);
|
||||
} else {
|
||||
lineNumber++;
|
||||
index = 0;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/*
|
||||
* Peeks next token.
|
||||
*/
|
||||
String peekToken() {
|
||||
int ln = lineNumber;
|
||||
int i = index;
|
||||
while (ln <= tokens.size()) {
|
||||
List<String> l = tokens.get(ln-1);
|
||||
if (i < l.size()) {
|
||||
return l.get(i++);
|
||||
} else {
|
||||
ln++;
|
||||
i = 0;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Error newError(String msg) {
|
||||
if (lineNumber <= tokens.size()) {
|
||||
throw new Error(sourceFile + ", line " +
|
||||
lineNumber + ", " + msg + " \"" + lineAt(lineNumber) + "\"");
|
||||
} else {
|
||||
throw new Error(sourceFile + ", line " + lineNumber + ", " + msg);
|
||||
}
|
||||
}
|
||||
|
||||
void dump() {
|
||||
for (int i = 1; i <= tokens.size(); i++) {
|
||||
System.out.format("%d: %s%n", i, lineAt(i));
|
||||
}
|
||||
}
|
||||
|
||||
private String lineAt(int i) {
|
||||
return tokens.get(i-1).stream().collect(Collectors.joining(" "));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@ package build.tools.module;
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
import java.io.UncheckedIOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
@@ -35,6 +36,7 @@ import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import build.tools.module.GenModuleInfoSource.Statement;
|
||||
|
||||
@@ -42,29 +44,36 @@ import build.tools.module.GenModuleInfoSource.Statement;
|
||||
* Sanity test for GenModuleInfoSource tool
|
||||
*/
|
||||
public class ModuleInfoExtraTest {
|
||||
private static final Path DIR = Paths.get("test");
|
||||
private static final Path DIR = Paths.get("gen-module-info-test");
|
||||
private static boolean verbose = false;
|
||||
public static void main(String... args) throws Exception {
|
||||
if (args.length != 0)
|
||||
GenModuleInfoSource.verbose = true;
|
||||
verbose = true;
|
||||
|
||||
GenModuleInfoSource.verbose = verbose;
|
||||
ModuleInfoExtraTest test = new ModuleInfoExtraTest("m", "m1", "m2", "m3");
|
||||
test.run();
|
||||
test.testModuleInfo();
|
||||
test.errorCases();
|
||||
}
|
||||
|
||||
String[] moduleInfo = new String[] {
|
||||
"exports p",
|
||||
"to",
|
||||
" // comment",
|
||||
" /* comment */ m1",
|
||||
"module m {",
|
||||
" requires m1;",
|
||||
" requires transitive m2;",
|
||||
" exports p",
|
||||
" to",
|
||||
" // comment ... ",
|
||||
" /* comment */ m1",
|
||||
",",
|
||||
"m2,m3",
|
||||
" ;",
|
||||
"exports q to m1;",
|
||||
"provides s with /* ",
|
||||
" comment */ impl ; // comment",
|
||||
"provides s1",
|
||||
" with ",
|
||||
" impl1, impl2;"
|
||||
" m2,m3",
|
||||
" ;",
|
||||
" exports q to m1;",
|
||||
" provides s with /* ",
|
||||
" comment */ impl ; // comment",
|
||||
" provides s1",
|
||||
" with ",
|
||||
" impl1, impl2;",
|
||||
"}"
|
||||
};
|
||||
|
||||
String[] moduleInfoExtra = new String[] {
|
||||
@@ -76,33 +85,8 @@ public class ModuleInfoExtraTest {
|
||||
"opens p.q ",
|
||||
" to /* comment */ m3",
|
||||
" , // m1",
|
||||
" /* comment */, m4;",
|
||||
"provides s1 with impl3;"
|
||||
};
|
||||
|
||||
String[] test1 = new String[] {
|
||||
"exports p1 to m1;",
|
||||
"exports p2"
|
||||
};
|
||||
|
||||
String[] test2 = new String[] {
|
||||
"exports to m1;"
|
||||
};
|
||||
|
||||
String[] test3 = new String[]{
|
||||
"exports p3 to m1;",
|
||||
" m2, m3;"
|
||||
};
|
||||
|
||||
String[] test4 = new String[]{
|
||||
"provides s with impl1;", // typo ; should be ,
|
||||
" impl2, impl3;"
|
||||
};
|
||||
|
||||
String[] test5 = new String[]{
|
||||
"uses s3",
|
||||
"provides s3 with impl1,",
|
||||
" impl2, impl3;"
|
||||
" /* comment */ m4; uses p.I",
|
||||
"; provides s1 with impl3;"
|
||||
};
|
||||
|
||||
final Builder builder;
|
||||
@@ -110,11 +94,6 @@ public class ModuleInfoExtraTest {
|
||||
this.builder = new Builder(name).modules(modules);
|
||||
}
|
||||
|
||||
void run() throws IOException {
|
||||
testModuleInfo();
|
||||
errorCases();
|
||||
}
|
||||
|
||||
|
||||
void testModuleInfo() throws IOException {
|
||||
GenModuleInfoSource source = builder.sourceFile(moduleInfo).build();
|
||||
@@ -155,7 +134,9 @@ public class ModuleInfoExtraTest {
|
||||
Set<String> opensPQ,
|
||||
Set<String> providerS,
|
||||
Set<String> providerS1) {
|
||||
source.moduleInfo.print(new PrintWriter(System.out, true));
|
||||
if (verbose)
|
||||
source.moduleInfo.print(new PrintWriter(System.out, true));
|
||||
|
||||
Statement export = source.moduleInfo.exports.get("p");
|
||||
if (!export.targets.equals(targetsP)) {
|
||||
throw new Error("unexpected: " + export);
|
||||
@@ -177,24 +158,116 @@ public class ModuleInfoExtraTest {
|
||||
}
|
||||
}
|
||||
|
||||
final Map<String[], String> badModuleInfos = Map.of(
|
||||
new String[] {
|
||||
"module x {",
|
||||
" exports p1 to ",
|
||||
" m1",
|
||||
"}"
|
||||
}, ".*, line .*, missing semicolon.*",
|
||||
new String[] {
|
||||
"module x ",
|
||||
" exports p1;"
|
||||
}, ".*, line .*, missing \\{.*",
|
||||
new String[] {
|
||||
"module x {",
|
||||
" requires m1;",
|
||||
" requires",
|
||||
"}"
|
||||
}, ".*, line .*, <identifier> missing.*",
|
||||
new String[] {
|
||||
"module x {",
|
||||
" requires transitive m1",
|
||||
"}"
|
||||
}, ".*, line .*, missing semicolon.*",
|
||||
new String[] {
|
||||
"module x {",
|
||||
" exports p1 to m1;",
|
||||
" exports p1 to m2;",
|
||||
"}"
|
||||
}, ".*, line .*, multiple exports p1.*"
|
||||
);
|
||||
|
||||
final Map<String[], String> badExtraFiles = Map.of(
|
||||
new String[] {
|
||||
"requires m2;" // not allowed
|
||||
}, ".*, line .*, cannot declare requires .*",
|
||||
new String[] {
|
||||
"exports p1 to m1;",
|
||||
"exports p2" // missing semicolon
|
||||
}, ".*, line .*, reach end of file.*",
|
||||
new String[] {
|
||||
"exports to m1;" // missing <identifier>
|
||||
}, ".*, line .*, <identifier> missing.*",
|
||||
new String[] {
|
||||
"exports p3 to m1;",
|
||||
" m2, m3;" // missing keyword
|
||||
}, ".*, line .*, missing keyword.*",
|
||||
new String[] {
|
||||
"provides s with impl1;", // typo ; should be ,
|
||||
" impl2, impl3;"
|
||||
}, ".*, line .*, missing keyword.*",
|
||||
new String[] {
|
||||
"uses s3", // missing semicolon
|
||||
"provides s3 with impl1,",
|
||||
" impl2, impl3;"
|
||||
}, ".*, line .*, missing semicolon.*",
|
||||
new String[] {
|
||||
"opens p1 to m1,, m2;" // missing identifier
|
||||
}, ".*, line .*, <identifier> missing.*"
|
||||
);
|
||||
|
||||
void errorCases() throws IOException {
|
||||
fail(test1);
|
||||
fail(test2);
|
||||
fail(test3);
|
||||
fail(test4);
|
||||
fail(test5);
|
||||
final Map<String[], String> duplicates = Map.of(
|
||||
new String[] {
|
||||
" exports p1 to m1, m2;",
|
||||
" exports p1 to m3;",
|
||||
}, ".*, line .*, multiple exports p1.*",
|
||||
new String[] {
|
||||
" opens p1 to m1, m2;",
|
||||
" exports p1 to m3;",
|
||||
" opens p1 to m3;"
|
||||
}, ".*, line .*, multiple opens p1.*",
|
||||
new String[] {
|
||||
" uses s;",
|
||||
" uses s;"
|
||||
}, ".*, line .*, multiple uses s.*",
|
||||
new String[] {
|
||||
" provides s with impl1;",
|
||||
" provides s with impl2, impl3;"
|
||||
}, ".*, line .*, multiple provides s.*"
|
||||
);
|
||||
|
||||
void errorCases() {
|
||||
badModuleInfos.entrySet().stream().forEach(e -> badModuleInfoFile(e.getKey(), e.getValue()));
|
||||
badExtraFiles.entrySet().stream().forEach(e -> badExtraFile(e.getKey(), e.getValue()));
|
||||
duplicates.entrySet().stream().forEach(e -> badExtraFile(e.getKey(), e.getValue()));
|
||||
}
|
||||
|
||||
void fail(String... extras) throws IOException {
|
||||
Path file = DIR.resolve("test1");
|
||||
Files.write(file, Arrays.asList(extras));
|
||||
void badModuleInfoFile(String[] lines, String regex) {
|
||||
Builder builder = new Builder("x").modules("m1", "m2", "m3");
|
||||
try {
|
||||
GenModuleInfoSource source = builder.sourceFile(lines).build();
|
||||
throw new RuntimeException("Expected error: " + Arrays.toString(lines));
|
||||
} catch (IOException e) {
|
||||
throw new UncheckedIOException(e);
|
||||
} catch (Error e) {
|
||||
if (!e.getMessage().matches(regex)) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void badExtraFile(String[] extras, String regex) {
|
||||
Path file = DIR.resolve("test1");
|
||||
try {
|
||||
Files.write(file, Arrays.asList(extras));
|
||||
builder.build(file);
|
||||
} catch (RuntimeException e) {
|
||||
if (!e.getMessage().matches("test/test1, line .* is malformed.*") &&
|
||||
!e.getMessage().matches("test/test1, line .* missing keyword.*")) {
|
||||
Files.deleteIfExists(file);
|
||||
throw new RuntimeException("Expected error: " + Arrays.toString(extras));
|
||||
} catch (IOException e) {
|
||||
throw new UncheckedIOException(e);
|
||||
} catch (Error e) {
|
||||
if (!e.getMessage().matches(regex)) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
@@ -218,11 +291,9 @@ public class ModuleInfoExtraTest {
|
||||
Files.createDirectories(sourceFile.getParent());
|
||||
try (BufferedWriter bw = Files.newBufferedWriter(sourceFile);
|
||||
PrintWriter writer = new PrintWriter(bw)) {
|
||||
writer.format("module %s {%n", moduleName);
|
||||
for (String l : lines) {
|
||||
writer.println(l);
|
||||
}
|
||||
writer.println("}");
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -269,7 +269,7 @@
|
||||
<target name="idea" depends="-check-langtools.jdk.home">
|
||||
<mkdir dir=".idea"/>
|
||||
<copy todir=".idea" >
|
||||
<fileset dir="${make.dir}/intellij">
|
||||
<fileset dir="${make.dir}/intellij/template">
|
||||
<exclude name="**/src/**"/>
|
||||
<exclude name="**/utils/**"/>
|
||||
</fileset>
|
||||
@@ -289,7 +289,7 @@
|
||||
<mkdir dir=".idea/classes"/>
|
||||
<javac source="${javac.build.source}"
|
||||
target="${javac.build.target}"
|
||||
srcdir="${make.dir}/intellij/src"
|
||||
srcdir="${make.dir}/intellij/template/src"
|
||||
destdir=".idea/classes"/>
|
||||
</target>
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AntConfiguration">
|
||||
<buildFile url="file://$PROJECT_DIR$/.idea/build.xml">
|
||||
<properties>
|
||||
<property name="langtools.jdk.home" value="@IDEA_TARGET_JDK@" />
|
||||
<property name="intellij.ismake" value="$IsMake$" />
|
||||
</properties>
|
||||
<executeOn event="afterCompilation" target="post-make" />
|
||||
</buildFile>
|
||||
</component>
|
||||
</project>
|
||||
@@ -1,12 +1,12 @@
|
||||
<!-- importing.xml -->
|
||||
<project name="langtools" basedir="..">
|
||||
<project name="langtools" basedir = "../../..">
|
||||
|
||||
<script language="javascript" classpath=".idea/classes">
|
||||
<script language="javascript" classpath="${idea.dir}/classes">
|
||||
var LangtoolsLogger = Java.type("idea.LangtoolsIdeaAntLogger");
|
||||
new LangtoolsLogger(project)
|
||||
</script>
|
||||
|
||||
<import file="../make/langtools/build.xml"/>
|
||||
<import file="../build.xml"/>
|
||||
|
||||
<target name="cond-clean" unless="${intellij.ismake}">
|
||||
<antcall target="clean"/>
|
||||
|
||||
13
make/langtools/intellij/template/ant.xml
Normal file
13
make/langtools/intellij/template/ant.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AntConfiguration">
|
||||
<buildFile url="file://$PROJECT_DIR$/make/langtools/intellij/build.xml">
|
||||
<properties>
|
||||
<property name="langtools.jdk.home" value="@IDEA_TARGET_JDK@" />
|
||||
<property name="intellij.ismake" value="$IsMake$" />
|
||||
<property name="idea.dir" value="$ModuleFileDir$" />
|
||||
</properties>
|
||||
<executeOn event="afterCompilation" target="post-make" />
|
||||
</buildFile>
|
||||
</component>
|
||||
</project>
|
||||
@@ -9,12 +9,10 @@
|
||||
<jre alt="true" value="@IDEA_TARGET_JDK@" />
|
||||
<options>@XPATCH@</options>
|
||||
<ant>
|
||||
<target file="file://$PROJECT_DIR$/.idea/build.xml" name="build-all-classes" />
|
||||
<target file="file://$PROJECT_DIR$/make/langtools/intellij/build.xml" name="build-all-classes" />
|
||||
</ant>
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/.idea/out" />
|
||||
<output url="file://$PROJECT_DIR$/build/.idea-support/out" />
|
||||
</component>
|
||||
</project>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<component name="antWorkspaceConfiguration">
|
||||
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
|
||||
<option name="FILTER_TARGETS" value="false" />
|
||||
<buildFile url="file://$PROJECT_DIR$/.idea/build.xml">
|
||||
<buildFile url="file://$PROJECT_DIR$/make/langtools/intellij/build.xml">
|
||||
<runInBackground value="false" />
|
||||
<targetFilters>
|
||||
<filter targetName="build-all-tools" isVisible="true" />
|
||||
@@ -95,6 +95,7 @@ public interface MessageType {
|
||||
KIND_NAME("kind name", "KindName", "com.sun.tools.javac.code.Kinds"),
|
||||
TARGET("target", "Target", "com.sun.tools.javac.jvm"),
|
||||
TOKEN("token", "TokenKind", "com.sun.tools.javac.parser.Tokens"),
|
||||
TREE_TAG("tree tag", "Tag", "com.sun.tools.javac.tree.JCTree"),
|
||||
TYPE("type", "Type", "com.sun.tools.javac.code"),
|
||||
URL("url", "URL", "java.net"),
|
||||
SET("set", "Set", "java.util"),
|
||||
|
||||
@@ -796,6 +796,12 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
|
||||
|
||||
LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), linux)
|
||||
ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
|
||||
LIBSPLASHSCREEN_CFLAGS += -DPNG_POWERPC_VSX_OPT=0
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), macosx)
|
||||
LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
|
||||
$(eval $(call SetupJdkLibrary, BUILD_LIBDT_SHMEM, \
|
||||
NAME := dt_shmem, \
|
||||
OPTIMIZATION := LOW, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) -DUSE_MMAP, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB), \
|
||||
EXTRA_HEADER_DIRS := \
|
||||
jdk.jdwp.agent:include \
|
||||
jdk.jdwp.agent:libjdwp/export, \
|
||||
|
||||
@@ -30,8 +30,7 @@ include LibCommon.gmk
|
||||
$(eval $(call SetupJdkLibrary, BUILD_LIBDT_SOCKET, \
|
||||
NAME := dt_socket, \
|
||||
OPTIMIZATION := LOW, \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) -DUSE_MMAP \
|
||||
$(LIBDT_SOCKET_CPPFLAGS), \
|
||||
CFLAGS := $(CFLAGS_JDKLIB) $(LIBDT_SOCKET_CPPFLAGS), \
|
||||
EXTRA_HEADER_DIRS := \
|
||||
include \
|
||||
libjdwp/export, \
|
||||
|
||||
@@ -116,6 +116,7 @@
|
||||
<in>IBM1122.map</in>
|
||||
<in>IBM1123.map</in>
|
||||
<in>IBM1124.map</in>
|
||||
<in>IBM1129.map</in>
|
||||
<in>IBM1140.map</in>
|
||||
<in>IBM1141.map</in>
|
||||
<in>IBM1142.map</in>
|
||||
@@ -16285,6 +16286,11 @@
|
||||
tool="3"
|
||||
flavor2="0">
|
||||
</item>
|
||||
<item path="../../make/data/charsetmapping/IBM1129.map"
|
||||
ex="false"
|
||||
tool="3"
|
||||
flavor2="0">
|
||||
</item>
|
||||
<item path="../../make/data/charsetmapping/IBM1140.map"
|
||||
ex="false"
|
||||
tool="3"
|
||||
|
||||
@@ -1385,26 +1385,22 @@ if [ "$SKIP_DEFAULT" != "true" ]; then
|
||||
echo " $OTHER_SPARKLE_DIR"
|
||||
fi
|
||||
|
||||
if [ -d "$OTHER/images" ]; then
|
||||
OTHER_SEC_DIR="$OTHER/images"
|
||||
else
|
||||
OTHER_SEC_DIR="$OTHER/tmp"
|
||||
fi
|
||||
if [ -f "$THIS_SEC_DIR/sec-bin.zip" ]; then
|
||||
THIS_SEC_DIR="$THIS/images"
|
||||
OTHER_SEC_DIR="$OTHER/images"
|
||||
if [ -f "$THIS_SEC_DIR/sec-bin.zip" ] && [ -f "$OTHER_SEC_DIR/sec-bin.zip" ]; then
|
||||
OTHER_SEC_BIN="$OTHER_SEC_DIR/sec-bin.zip"
|
||||
THIS_SEC_DIR="$THIS/images"
|
||||
THIS_SEC_BIN="$THIS_SEC_DIR/sec-bin.zip"
|
||||
fi
|
||||
if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
|
||||
if [ "$OPENJDK_TARGET_CPU" = "x86_64" ]; then
|
||||
JGSS_WINDOWS_BIN="jgss-windows-x64-bin.zip"
|
||||
else
|
||||
JGSS_WINDOWS_BIN="jgss-windows-i586-bin.zip"
|
||||
if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
|
||||
if [ "$OPENJDK_TARGET_CPU" = "x86_64" ]; then
|
||||
JGSS_WINDOWS_BIN="jgss-windows-x64-bin.zip"
|
||||
else
|
||||
JGSS_WINDOWS_BIN="jgss-windows-i586-bin.zip"
|
||||
fi
|
||||
OTHER_SEC_WINDOWS_BIN="$OTHER_SEC_DIR/sec-windows-bin.zip"
|
||||
OTHER_JGSS_WINDOWS_BIN="$OTHER_SEC_DIR/$JGSS_WINDOWS_BIN"
|
||||
THIS_SEC_WINDOWS_BIN="$THIS_SEC_DIR/sec-windows-bin.zip"
|
||||
THIS_JGSS_WINDOWS_BIN="$THIS_SEC_DIR/$JGSS_WINDOWS_BIN"
|
||||
fi
|
||||
OTHER_SEC_WINDOWS_BIN="$OTHER_SEC_DIR/sec-windows-bin.zip"
|
||||
OTHER_JGSS_WINDOWS_BIN="$OTHER_SEC_DIR/$JGSS_WINDOWS_BIN"
|
||||
THIS_SEC_WINDOWS_BIN="$THIS_SEC_DIR/sec-windows-bin.zip"
|
||||
THIS_JGSS_WINDOWS_BIN="$THIS_SEC_DIR/$JGSS_WINDOWS_BIN"
|
||||
fi
|
||||
|
||||
if [ -d "$THIS/images/docs" ] && [ -d "$OTHER/images/docs" ]; then
|
||||
|
||||
@@ -46,6 +46,20 @@ ifeq ($(INCLUDE_GRAAL), true)
|
||||
COMPILE_OUTPUTDIR := $(SUPPORT_OUTPUTDIR)/test/graalunit
|
||||
LIB_OUTPUTDIR := $(TEST_IMAGE_DIR)/hotspot/jtreg/graal
|
||||
|
||||
TEST_COMPILE_CP := \
|
||||
$(JDK_OUTPUTDIR)/modules/jdk.internal.vm.compiler \
|
||||
$(JDK_OUTPUTDIR)/modules/jdk.internal.vm.ci \
|
||||
$(LIB_OUTPUTDIR)/junit-4.12.jar \
|
||||
$(LIB_OUTPUTDIR)/asm-5.0.4.jar \
|
||||
$(LIB_OUTPUTDIR)/asm-tree-5.0.4.jar \
|
||||
$(LIB_OUTPUTDIR)/java-allocation-instrumenter.jar \
|
||||
$(LIB_OUTPUTDIR)/hamcrest-core-1.3.jar
|
||||
|
||||
TEST_JAVAC_FLAGS := \
|
||||
-Xlint:none \
|
||||
-processorpath $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar \
|
||||
--add-exports jdk.unsupported/sun.misc=ALL-UNNAMED \
|
||||
|
||||
### Copy 3rd party libs
|
||||
$(eval $(call SetupCopyFiles, COPY_GRAALUNIT_LIBS, \
|
||||
FILES := $(wildcard $(GRAALUNIT_LIB)/*.jar), \
|
||||
@@ -54,7 +68,7 @@ ifeq ($(INCLUDE_GRAAL), true)
|
||||
|
||||
TARGETS_EXTRA_LIB += $(COPY_GRAALUNIT_LIBS)
|
||||
|
||||
### Compile and build graalunit tests
|
||||
### Compile graalunit tests
|
||||
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS, \
|
||||
SETUP := GENERATE_USINGJDKBYTECODE, \
|
||||
SRC := \
|
||||
@@ -84,26 +98,41 @@ ifeq ($(INCLUDE_GRAAL), true)
|
||||
$(SRC_DIR)/org.graalvm.compiler.jtt/src \
|
||||
$(SRC_DIR)/org.graalvm.compiler.lir.jtt/src \
|
||||
, \
|
||||
EXCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
|
||||
BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
|
||||
JAR := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests.jar, \
|
||||
CLASSPATH := \
|
||||
$(JDK_OUTPUTDIR)/modules/jdk.internal.vm.compiler \
|
||||
$(JDK_OUTPUTDIR)/modules/jdk.internal.vm.ci \
|
||||
$(LIB_OUTPUTDIR)/junit-4.12.jar \
|
||||
$(LIB_OUTPUTDIR)/asm-5.0.4.jar \
|
||||
$(LIB_OUTPUTDIR)/asm-tree-5.0.4.jar \
|
||||
$(LIB_OUTPUTDIR)/java-allocation-instrumenter.jar \
|
||||
$(LIB_OUTPUTDIR)/hamcrest-core-1.3.jar \
|
||||
, \
|
||||
ADD_JAVAC_FLAGS := \
|
||||
-Xlint:none -processorpath \
|
||||
$(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar \
|
||||
--add-exports jdk.unsupported/sun.misc=ALL-UNNAMED \
|
||||
, \
|
||||
CLASSPATH := $(TEST_COMPILE_CP), \
|
||||
ADD_JAVAC_FLAGS := $(TEST_JAVAC_FLAGS), \
|
||||
))
|
||||
|
||||
TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS)
|
||||
|
||||
### Compile graalunit tests which require -XDstringConcat=inline
|
||||
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_TESTS_SET2, \
|
||||
SETUP := GENERATE_USINGJDKBYTECODE, \
|
||||
DEPENDS := $(BUILD_VM_COMPILER_TESTS), \
|
||||
SRC := $(SRC_DIR)/org.graalvm.compiler.core.test/src, \
|
||||
INCLUDE_FILES := org/graalvm/compiler/core/test/VerifyDebugUsageTest.java, \
|
||||
BIN := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
|
||||
CLASSPATH := \
|
||||
$(TEST_COMPILE_CP) \
|
||||
$(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests \
|
||||
, \
|
||||
ADD_JAVAC_FLAGS := \
|
||||
$(TEST_JAVAC_FLAGS) \
|
||||
-XDstringConcat=inline \
|
||||
, \
|
||||
))
|
||||
|
||||
TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_SET2)
|
||||
|
||||
### Generate jdk.vm.compiler.tests.jar
|
||||
$(eval $(call SetupJarArchive, BUILD_VM_COMPILER_TESTS_JAR, \
|
||||
DEPENDENCIES := $(BUILD_VM_COMPILER_TESTS) $(BUILD_VM_COMPILER_TESTS_SET2), \
|
||||
SRCS := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests, \
|
||||
JAR := $(COMPILE_OUTPUTDIR)/jdk.vm.compiler.tests.jar, \
|
||||
))
|
||||
|
||||
TARGETS_BUILD += $(BUILD_VM_COMPILER_TESTS_JAR)
|
||||
|
||||
### Compile and build mxtool
|
||||
$(eval $(call SetupJavaCompilation, BUILD_MXTOOL, \
|
||||
|
||||
@@ -139,6 +139,18 @@ NSK_AOD_INCLUDES := \
|
||||
-I$(VM_TESTBASE_DIR)/nsk/share/native \
|
||||
-I$(VM_TESTBASE_DIR)/nsk/share/jni
|
||||
|
||||
NO_FRAMEPOINTER_CFLAGS :=
|
||||
ifeq ($(OPENJDK_TARGET_OS),linux)
|
||||
NO_FRAMEPOINTER_CFLAGS := -fomit-frame-pointer
|
||||
endif
|
||||
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libNoFramePointer := $(NO_FRAMEPOINTER_CFLAGS)
|
||||
# Optimization -O3 needed, HIGH == -O3
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_OPTIMIZATION_libNoFramePointer := HIGH
|
||||
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS := -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS
|
||||
BUILD_HOTSPOT_JTREG_EXECUTABLES_CFLAGS := -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS
|
||||
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libProcessUtils := $(VM_SHARE_INCLUDES)
|
||||
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libThreadController := $(NSK_MONITORING_INCLUDES)
|
||||
@@ -836,10 +848,6 @@ BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libVirtualMachine09agent00 := $(NSK_AOD_INC
|
||||
|
||||
################################################################################
|
||||
|
||||
ifeq ($(TOOLCHAIN_TYPE), solstudio)
|
||||
BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libji06t001 += -erroff=E_END_OF_LOOP_CODE_NOT_REACHED
|
||||
endif
|
||||
|
||||
# Platform specific setup
|
||||
ifneq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
|
||||
BUILD_HOTSPOT_JTREG_EXCLUDE += liboverflow.c exeThreadSignalMask.c
|
||||
|
||||
@@ -43,7 +43,8 @@ suite = {
|
||||
"jdk.vm.ci.services" : {
|
||||
"subDir" : "../jdk.internal.vm.ci/share/classes",
|
||||
"sourceDirs" : ["src"],
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"checkstyleVersion" : "8.8",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -53,7 +54,7 @@ suite = {
|
||||
"subDir" : "../jdk.internal.vm.ci/share/classes",
|
||||
"sourceDirs" : ["src"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -61,7 +62,7 @@ suite = {
|
||||
"subDir" : "../jdk.internal.vm.ci/share/classes",
|
||||
"sourceDirs" : ["src"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -70,7 +71,7 @@ suite = {
|
||||
"sourceDirs" : ["src"],
|
||||
"dependencies" : ["jdk.vm.ci.meta"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -85,7 +86,7 @@ suite = {
|
||||
"jdk.vm.ci.hotspot",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -97,7 +98,7 @@ suite = {
|
||||
"jdk.vm.ci.services",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -110,7 +111,7 @@ suite = {
|
||||
"jdk.vm.ci.runtime",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -121,7 +122,7 @@ suite = {
|
||||
"sourceDirs" : ["src"],
|
||||
"dependencies" : ["jdk.vm.ci.code"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,AArch64",
|
||||
},
|
||||
|
||||
@@ -130,7 +131,7 @@ suite = {
|
||||
"sourceDirs" : ["src"],
|
||||
"dependencies" : ["jdk.vm.ci.code"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,AMD64",
|
||||
},
|
||||
|
||||
@@ -139,7 +140,7 @@ suite = {
|
||||
"sourceDirs" : ["src"],
|
||||
"dependencies" : ["jdk.vm.ci.code"],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,SPARC",
|
||||
},
|
||||
|
||||
@@ -156,7 +157,7 @@ suite = {
|
||||
"jdk.internal.org.objectweb.asm",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI",
|
||||
},
|
||||
|
||||
@@ -168,7 +169,7 @@ suite = {
|
||||
"jdk.vm.ci.hotspot",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "API,JVMCI",
|
||||
},
|
||||
|
||||
@@ -180,7 +181,7 @@ suite = {
|
||||
"jdk.vm.ci.hotspot",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,HotSpot,AArch64",
|
||||
},
|
||||
|
||||
@@ -192,7 +193,7 @@ suite = {
|
||||
"jdk.vm.ci.hotspot",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,HotSpot,AMD64",
|
||||
},
|
||||
|
||||
@@ -204,7 +205,7 @@ suite = {
|
||||
"jdk.vm.ci.hotspot",
|
||||
],
|
||||
"checkstyle" : "jdk.vm.ci.services",
|
||||
"javaCompliance" : "9",
|
||||
"javaCompliance" : "9+",
|
||||
"workingSets" : "JVMCI,HotSpot,SPARC",
|
||||
},
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -295,7 +295,7 @@ class PrePost {
|
||||
int _offset;
|
||||
Register _r;
|
||||
public:
|
||||
PrePost(Register reg, int o) : _r(reg), _offset(o) { }
|
||||
PrePost(Register reg, int o) : _offset(o), _r(reg) { }
|
||||
int offset() { return _offset; }
|
||||
Register reg() { return _r; }
|
||||
};
|
||||
@@ -353,7 +353,7 @@ class Address {
|
||||
ext::operation _op;
|
||||
public:
|
||||
extend() { }
|
||||
extend(int s, int o, ext::operation op) : _shift(s), _option(o), _op(op) { }
|
||||
extend(int s, int o, ext::operation op) : _option(o), _shift(s), _op(op) { }
|
||||
int option() const{ return _option; }
|
||||
int shift() const { return _shift; }
|
||||
ext::operation op() const { return _op; }
|
||||
@@ -398,26 +398,25 @@ class Address {
|
||||
Address()
|
||||
: _mode(no_mode) { }
|
||||
Address(Register r)
|
||||
: _mode(base_plus_offset), _base(r), _offset(0), _index(noreg), _target(0) { }
|
||||
: _base(r), _index(noreg), _offset(0), _mode(base_plus_offset), _target(0) { }
|
||||
Address(Register r, int o)
|
||||
: _mode(base_plus_offset), _base(r), _offset(o), _index(noreg), _target(0) { }
|
||||
: _base(r), _index(noreg), _offset(o), _mode(base_plus_offset), _target(0) { }
|
||||
Address(Register r, long o)
|
||||
: _mode(base_plus_offset), _base(r), _offset(o), _index(noreg), _target(0) { }
|
||||
: _base(r), _index(noreg), _offset(o), _mode(base_plus_offset), _target(0) { }
|
||||
Address(Register r, unsigned long o)
|
||||
: _mode(base_plus_offset), _base(r), _offset(o), _index(noreg), _target(0) { }
|
||||
: _base(r), _index(noreg), _offset(o), _mode(base_plus_offset), _target(0) { }
|
||||
#ifdef ASSERT
|
||||
Address(Register r, ByteSize disp)
|
||||
: _mode(base_plus_offset), _base(r), _offset(in_bytes(disp)),
|
||||
_index(noreg), _target(0) { }
|
||||
: _base(r), _index(noreg), _offset(in_bytes(disp)), _mode(base_plus_offset), _target(0) { }
|
||||
#endif
|
||||
Address(Register r, Register r1, extend ext = lsl())
|
||||
: _mode(base_plus_offset_reg), _base(r), _index(r1),
|
||||
_ext(ext), _offset(0), _target(0) { }
|
||||
: _base(r), _index(r1), _offset(0), _mode(base_plus_offset_reg),
|
||||
_ext(ext), _target(0) { }
|
||||
Address(Pre p)
|
||||
: _mode(pre), _base(p.reg()), _offset(p.offset()) { }
|
||||
: _base(p.reg()), _offset(p.offset()), _mode(pre) { }
|
||||
Address(Post p)
|
||||
: _mode(p.idx_reg() == NULL ? post : post_reg), _base(p.reg()),
|
||||
_offset(p.offset()), _target(0), _index(p.idx_reg()) { }
|
||||
: _base(p.reg()), _index(p.idx_reg()), _offset(p.offset()),
|
||||
_mode(p.idx_reg() == NULL ? post : post_reg), _target(0) { }
|
||||
Address(address target, RelocationHolder const& rspec)
|
||||
: _mode(literal),
|
||||
_rspec(rspec),
|
||||
@@ -426,7 +425,7 @@ class Address {
|
||||
Address(address target, relocInfo::relocType rtype = relocInfo::external_word_type);
|
||||
Address(Register base, RegisterOrConstant index, extend ext = lsl())
|
||||
: _base (base),
|
||||
_ext(ext), _offset(0), _target(0) {
|
||||
_offset(0), _ext(ext), _target(0) {
|
||||
if (index.is_register()) {
|
||||
_mode = base_plus_offset_reg;
|
||||
_index = index.as_register();
|
||||
|
||||
@@ -50,13 +50,13 @@ void CounterOverflowStub::emit_code(LIR_Assembler* ce) {
|
||||
}
|
||||
|
||||
RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index, LIR_Opr array)
|
||||
: _throw_index_out_of_bounds_exception(false), _index(index), _array(array) {
|
||||
: _index(index), _array(array), _throw_index_out_of_bounds_exception(false) {
|
||||
assert(info != NULL, "must have info");
|
||||
_info = new CodeEmitInfo(info);
|
||||
}
|
||||
|
||||
RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index)
|
||||
: _throw_index_out_of_bounds_exception(true), _index(index), _array(NULL) {
|
||||
: _index(index), _array(NULL), _throw_index_out_of_bounds_exception(true) {
|
||||
assert(info != NULL, "must have info");
|
||||
_info = new CodeEmitInfo(info);
|
||||
}
|
||||
|
||||
@@ -1922,7 +1922,7 @@ void LIR_Assembler::comp_op(LIR_Condition condition, LIR_Opr opr1, LIR_Opr opr2,
|
||||
if (is_32bit)
|
||||
__ cmpw(reg1, imm);
|
||||
else
|
||||
__ cmp(reg1, imm);
|
||||
__ subs(zr, reg1, imm);
|
||||
return;
|
||||
} else {
|
||||
__ mov(rscratch1, imm);
|
||||
@@ -2167,6 +2167,9 @@ void LIR_Assembler::emit_arraycopy(LIR_OpArrayCopy* op) {
|
||||
Register length = op->length()->as_register();
|
||||
Register tmp = op->tmp()->as_register();
|
||||
|
||||
__ resolve(ACCESS_READ, src);
|
||||
__ resolve(ACCESS_WRITE, dst);
|
||||
|
||||
CodeStub* stub = op->stub();
|
||||
int flags = op->flags();
|
||||
BasicType basic_type = default_type != NULL ? default_type->element_type()->basic_type() : T_ILLEGAL;
|
||||
@@ -2510,6 +2513,7 @@ void LIR_Assembler::emit_lock(LIR_OpLock* op) {
|
||||
scratch = op->scratch_opr()->as_register();
|
||||
}
|
||||
assert(BasicLock::displaced_header_offset_in_bytes() == 0, "lock_reg must point to the displaced header");
|
||||
__ resolve(ACCESS_READ | ACCESS_WRITE, obj);
|
||||
// add debug info for NullPointerException only if one is possible
|
||||
int null_check_offset = __ lock_object(hdr, obj, lock, scratch, *op->stub()->entry());
|
||||
if (op->info() != NULL) {
|
||||
@@ -2705,7 +2709,7 @@ void LIR_Assembler::emit_profile_type(LIR_OpProfileType* op) {
|
||||
|
||||
if (TypeEntries::is_type_none(current_klass)) {
|
||||
__ cbz(rscratch2, none);
|
||||
__ cmp(rscratch2, TypeEntries::null_seen);
|
||||
__ cmp(rscratch2, (u1)TypeEntries::null_seen);
|
||||
__ br(Assembler::EQ, none);
|
||||
// There is a chance that the checks above (re-reading profiling
|
||||
// data from memory) fail if another thread has just set the
|
||||
@@ -2750,7 +2754,7 @@ void LIR_Assembler::emit_profile_type(LIR_OpProfileType* op) {
|
||||
Label ok;
|
||||
__ ldr(rscratch1, mdo_addr);
|
||||
__ cbz(rscratch1, ok);
|
||||
__ cmp(rscratch1, TypeEntries::null_seen);
|
||||
__ cmp(rscratch1, (u1)TypeEntries::null_seen);
|
||||
__ br(Assembler::EQ, ok);
|
||||
// may have been set by another thread
|
||||
__ dmb(Assembler::ISHLD);
|
||||
|
||||
@@ -941,6 +941,10 @@ void LIRGenerator::do_update_CRC32(Intrinsic* x) {
|
||||
index = tmp;
|
||||
}
|
||||
|
||||
if (is_updateBytes) {
|
||||
base_op = access_resolve(ACCESS_READ, base_op);
|
||||
}
|
||||
|
||||
if (offset) {
|
||||
LIR_Opr tmp = new_pointer_register();
|
||||
__ add(base_op, LIR_OprFact::intConst(offset), tmp);
|
||||
@@ -1019,6 +1023,10 @@ void LIRGenerator::do_update_CRC32C(Intrinsic* x) {
|
||||
index = tmp;
|
||||
}
|
||||
|
||||
if (is_updateBytes) {
|
||||
base_op = access_resolve(ACCESS_READ, base_op);
|
||||
}
|
||||
|
||||
if (offset) {
|
||||
LIR_Opr tmp = new_pointer_register();
|
||||
__ add(base_op, LIR_OprFact::intConst(offset), tmp);
|
||||
|
||||
@@ -712,7 +712,7 @@ OopMapSet* Runtime1::generate_code_for(StubID id, StubAssembler* sasm) {
|
||||
{
|
||||
Label ok, not_ok;
|
||||
__ ldrw(obj_size, Address(klass, Klass::layout_helper_offset()));
|
||||
__ cmp(obj_size, 0u);
|
||||
__ cmp(obj_size, (u1)0);
|
||||
__ br(Assembler::LE, not_ok); // make sure it's an instance (LH > 0)
|
||||
__ tstw(obj_size, Klass::_lh_instance_slow_path_bit);
|
||||
__ br(Assembler::EQ, ok);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
@@ -539,7 +539,7 @@ bool frame::is_interpreted_frame_valid(JavaThread* thread) const {
|
||||
Method* m = *interpreter_frame_method_addr();
|
||||
|
||||
// validate the method we'd find in this potential sender
|
||||
if (!m->is_valid_method()) return false;
|
||||
if (!Method::is_valid_method(m)) return false;
|
||||
|
||||
// stack frames shouldn't be much larger than max_stack elements
|
||||
// this test requires the use of unextended_sp which is the sp as seen by
|
||||
|
||||
@@ -48,6 +48,10 @@ public:
|
||||
virtual void obj_equals(MacroAssembler* masm,
|
||||
Register obj1, Register obj2);
|
||||
|
||||
virtual void resolve(MacroAssembler* masm, DecoratorSet decorators, Register obj) {
|
||||
// Default implementation does not need to do anything.
|
||||
}
|
||||
|
||||
virtual void try_resolve_jobject_in_native(MacroAssembler* masm, Register jni_env,
|
||||
Register obj, Register tmp, Label& slowpath);
|
||||
|
||||
|
||||
@@ -1636,7 +1636,7 @@ void InterpreterMacroAssembler::profile_obj_type(Register obj, const Address& md
|
||||
|
||||
ldr(rscratch1, mdo_addr);
|
||||
cbz(rscratch1, none);
|
||||
cmp(rscratch1, TypeEntries::null_seen);
|
||||
cmp(rscratch1, (u1)TypeEntries::null_seen);
|
||||
br(Assembler::EQ, none);
|
||||
// There is a chance that the checks above (re-reading profiling
|
||||
// data from memory) fail if another thread has just set the
|
||||
@@ -1670,7 +1670,7 @@ void InterpreterMacroAssembler::profile_arguments_type(Register mdp, Register ca
|
||||
int off_to_start = is_virtual ? in_bytes(VirtualCallData::virtual_call_data_size()) : in_bytes(CounterData::counter_data_size());
|
||||
|
||||
ldrb(rscratch1, Address(mdp, in_bytes(DataLayout::tag_offset()) - off_to_start));
|
||||
cmp(rscratch1, is_virtual ? DataLayout::virtual_call_type_data_tag : DataLayout::call_type_data_tag);
|
||||
cmp(rscratch1, u1(is_virtual ? DataLayout::virtual_call_type_data_tag : DataLayout::call_type_data_tag));
|
||||
br(Assembler::NE, profile_continue);
|
||||
|
||||
if (MethodData::profile_arguments()) {
|
||||
@@ -1682,7 +1682,7 @@ void InterpreterMacroAssembler::profile_arguments_type(Register mdp, Register ca
|
||||
// If return value type is profiled we may have no argument to profile
|
||||
ldr(tmp, Address(mdp, in_bytes(TypeEntriesAtCall::cell_count_offset())));
|
||||
sub(tmp, tmp, i*TypeStackSlotEntries::per_arg_count());
|
||||
cmp(tmp, TypeStackSlotEntries::per_arg_count());
|
||||
cmp(tmp, (u1)TypeStackSlotEntries::per_arg_count());
|
||||
add(rscratch1, mdp, off_to_args);
|
||||
br(Assembler::LT, done);
|
||||
}
|
||||
@@ -1752,13 +1752,13 @@ void InterpreterMacroAssembler::profile_return_type(Register mdp, Register ret,
|
||||
// length
|
||||
Label do_profile;
|
||||
ldrb(rscratch1, Address(rbcp, 0));
|
||||
cmp(rscratch1, Bytecodes::_invokedynamic);
|
||||
cmp(rscratch1, (u1)Bytecodes::_invokedynamic);
|
||||
br(Assembler::EQ, do_profile);
|
||||
cmp(rscratch1, Bytecodes::_invokehandle);
|
||||
cmp(rscratch1, (u1)Bytecodes::_invokehandle);
|
||||
br(Assembler::EQ, do_profile);
|
||||
get_method(tmp);
|
||||
ldrh(rscratch1, Address(tmp, Method::intrinsic_id_offset_in_bytes()));
|
||||
cmp(rscratch1, vmIntrinsics::_compiledLambdaForm);
|
||||
subs(zr, rscratch1, vmIntrinsics::_compiledLambdaForm);
|
||||
br(Assembler::NE, profile_continue);
|
||||
|
||||
bind(do_profile);
|
||||
|
||||
@@ -494,7 +494,7 @@ int MacroAssembler::biased_locking_enter(Register lock_reg,
|
||||
ldr(swap_reg, mark_addr);
|
||||
}
|
||||
andr(tmp_reg, swap_reg, markOopDesc::biased_lock_mask_in_place);
|
||||
cmp(tmp_reg, markOopDesc::biased_lock_pattern);
|
||||
cmp(tmp_reg, (u1)markOopDesc::biased_lock_pattern);
|
||||
br(Assembler::NE, cas_label);
|
||||
// The bias pattern is present in the object's header. Need to check
|
||||
// whether the bias owner and the epoch are both still current.
|
||||
@@ -633,7 +633,7 @@ void MacroAssembler::biased_locking_exit(Register obj_reg, Register temp_reg, La
|
||||
// the bias bit would be clear.
|
||||
ldr(temp_reg, Address(obj_reg, oopDesc::mark_offset_in_bytes()));
|
||||
andr(temp_reg, temp_reg, markOopDesc::biased_lock_mask_in_place);
|
||||
cmp(temp_reg, markOopDesc::biased_lock_pattern);
|
||||
cmp(temp_reg, (u1)markOopDesc::biased_lock_pattern);
|
||||
br(Assembler::EQ, done);
|
||||
}
|
||||
|
||||
@@ -1137,7 +1137,7 @@ void MacroAssembler::check_klass_subtype_fast_path(Register sub_klass,
|
||||
|
||||
if (super_check_offset.is_register()) {
|
||||
br(Assembler::EQ, *L_success);
|
||||
cmp(super_check_offset.as_register(), sc_offset);
|
||||
subs(zr, super_check_offset.as_register(), sc_offset);
|
||||
if (L_failure == &L_fallthrough) {
|
||||
br(Assembler::EQ, *L_slow_path);
|
||||
} else {
|
||||
@@ -3312,7 +3312,7 @@ void MacroAssembler::kernel_crc32(Register crc, Register buf, Register len,
|
||||
add(table3, table0, 3*256*sizeof(juint));
|
||||
|
||||
if (UseNeon) {
|
||||
cmp(len, 64);
|
||||
cmp(len, (u1)64);
|
||||
br(Assembler::LT, L_by16);
|
||||
eor(v16, T16B, v16, v16);
|
||||
|
||||
@@ -3990,6 +3990,15 @@ void MacroAssembler::access_store_at(BasicType type, DecoratorSet decorators,
|
||||
}
|
||||
}
|
||||
|
||||
void MacroAssembler::resolve(DecoratorSet decorators, Register obj) {
|
||||
// Use stronger ACCESS_WRITE|ACCESS_READ by default.
|
||||
if ((decorators & (ACCESS_READ | ACCESS_WRITE)) == 0) {
|
||||
decorators |= ACCESS_READ | ACCESS_WRITE;
|
||||
}
|
||||
BarrierSetAssembler* bs = BarrierSet::barrier_set()->barrier_set_assembler();
|
||||
return bs->resolve(this, decorators, obj);
|
||||
}
|
||||
|
||||
void MacroAssembler::load_heap_oop(Register dst, Address src, Register tmp1,
|
||||
Register thread_tmp, DecoratorSet decorators) {
|
||||
access_load_at(T_OBJECT, IN_HEAP | decorators, dst, src, tmp1, thread_tmp);
|
||||
@@ -4362,10 +4371,10 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
|
||||
if (icnt1 == -1) {
|
||||
sub(result_tmp, cnt2, cnt1);
|
||||
cmp(cnt1, 8); // Use Linear Scan if cnt1 < 8 || cnt1 >= 256
|
||||
cmp(cnt1, (u1)8); // Use Linear Scan if cnt1 < 8 || cnt1 >= 256
|
||||
br(LT, LINEARSEARCH);
|
||||
dup(v0, T16B, cnt1); // done in separate FPU pipeline. Almost no penalty
|
||||
cmp(cnt1, 256);
|
||||
subs(zr, cnt1, 256);
|
||||
lsr(tmp1, cnt2, 2);
|
||||
ccmp(cnt1, tmp1, 0b0000, LT); // Source must be 4 * pattern for BM
|
||||
br(GE, LINEARSTUB);
|
||||
@@ -4471,7 +4480,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
BIND(BCLOOP);
|
||||
(this->*str1_load_1chr)(ch1, Address(post(tmp3, str1_chr_size)));
|
||||
if (!str1_isL) {
|
||||
cmp(ch1, ASIZE);
|
||||
subs(zr, ch1, ASIZE);
|
||||
br(HS, BCSKIP);
|
||||
}
|
||||
strb(ch2, Address(sp, ch1));
|
||||
@@ -4535,7 +4544,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
} else {
|
||||
mov(result_tmp, 1);
|
||||
}
|
||||
cmp(skipch, ASIZE);
|
||||
subs(zr, skipch, ASIZE);
|
||||
br(HS, BMADV);
|
||||
}
|
||||
ldrb(result_tmp, Address(sp, skipch)); // load skip distance
|
||||
@@ -4556,7 +4565,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
b(DONE);
|
||||
|
||||
BIND(LINEARSTUB);
|
||||
cmp(cnt1, 16); // small patterns still should be handled by simple algorithm
|
||||
cmp(cnt1, (u1)16); // small patterns still should be handled by simple algorithm
|
||||
br(LT, LINEAR_MEDIUM);
|
||||
mov(result, zr);
|
||||
RuntimeAddress stub = NULL;
|
||||
@@ -4585,7 +4594,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
{
|
||||
Label DOSHORT, FIRST_LOOP, STR2_NEXT, STR1_LOOP, STR1_NEXT;
|
||||
|
||||
cmp(cnt1, str1_isL == str2_isL ? 4 : 2);
|
||||
cmp(cnt1, u1(str1_isL == str2_isL ? 4 : 2));
|
||||
br(LT, DOSHORT);
|
||||
BIND(LINEAR_MEDIUM);
|
||||
(this->*str1_load_1chr)(first, Address(str1));
|
||||
@@ -4620,7 +4629,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
|
||||
BIND(DOSHORT);
|
||||
if (str1_isL == str2_isL) {
|
||||
cmp(cnt1, 2);
|
||||
cmp(cnt1, (u1)2);
|
||||
br(LT, DO1);
|
||||
br(GT, DO3);
|
||||
}
|
||||
@@ -4695,7 +4704,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
|
||||
BIND(DO1);
|
||||
(this->*str1_load_1chr)(ch1, str1);
|
||||
cmp(cnt2, 8);
|
||||
cmp(cnt2, (u1)8);
|
||||
br(LT, DO1_SHORT);
|
||||
|
||||
sub(result_tmp, cnt2, 8/str2_chr_size);
|
||||
@@ -4718,7 +4727,7 @@ void MacroAssembler::string_indexof(Register str2, Register str1,
|
||||
adds(cnt2_neg, cnt2_neg, 8);
|
||||
br(LT, CH1_LOOP);
|
||||
|
||||
cmp(cnt2_neg, 8);
|
||||
cmp(cnt2_neg, (u1)8);
|
||||
mov(cnt2_neg, 0);
|
||||
br(LT, CH1_LOOP);
|
||||
b(NOMATCH);
|
||||
@@ -4761,7 +4770,7 @@ void MacroAssembler::string_indexof_char(Register str1, Register cnt1,
|
||||
Register ch1 = rscratch1;
|
||||
Register result_tmp = rscratch2;
|
||||
|
||||
cmp(cnt1, 4);
|
||||
cmp(cnt1, (u1)4);
|
||||
br(LT, DO1_SHORT);
|
||||
|
||||
orr(ch, ch, ch, LSL, 16);
|
||||
@@ -4784,7 +4793,7 @@ void MacroAssembler::string_indexof_char(Register str1, Register cnt1,
|
||||
adds(cnt1_neg, cnt1_neg, 8);
|
||||
br(LT, CH1_LOOP);
|
||||
|
||||
cmp(cnt1_neg, 8);
|
||||
cmp(cnt1_neg, (u1)8);
|
||||
mov(cnt1_neg, 0);
|
||||
br(LT, CH1_LOOP);
|
||||
b(NOMATCH);
|
||||
@@ -4821,7 +4830,7 @@ void MacroAssembler::string_compare(Register str1, Register str2,
|
||||
DIFFERENCE, NEXT_WORD, SHORT_LOOP_TAIL, SHORT_LAST2, SHORT_LAST_INIT,
|
||||
SHORT_LOOP_START, TAIL_CHECK;
|
||||
|
||||
const int STUB_THRESHOLD = 64 + 8;
|
||||
const u1 STUB_THRESHOLD = 64 + 8;
|
||||
bool isLL = ae == StrIntrinsicNode::LL;
|
||||
bool isLU = ae == StrIntrinsicNode::LU;
|
||||
bool isUL = ae == StrIntrinsicNode::UL;
|
||||
@@ -5216,10 +5225,10 @@ void MacroAssembler::arrays_equals(Register a1, Register a2, Register tmp3,
|
||||
ldrw(cnt2, Address(a2, length_offset));
|
||||
// on most CPUs a2 is still "locked"(surprisingly) in ldrw and it's
|
||||
// faster to perform another branch before comparing a1 and a2
|
||||
cmp(cnt1, elem_per_word);
|
||||
cmp(cnt1, (u1)elem_per_word);
|
||||
br(LE, SHORT); // short or same
|
||||
ldr(tmp3, Address(pre(a1, base_offset)));
|
||||
cmp(cnt1, stubBytesThreshold);
|
||||
subs(zr, cnt1, stubBytesThreshold);
|
||||
br(GE, STUB);
|
||||
ldr(tmp4, Address(pre(a2, base_offset)));
|
||||
sub(tmp5, zr, cnt1, LSL, 3 + log_elem_size);
|
||||
@@ -5236,7 +5245,7 @@ void MacroAssembler::arrays_equals(Register a1, Register a2, Register tmp3,
|
||||
cbnz(tmp4, DONE);
|
||||
ldr(tmp3, Address(pre(a1, wordSize)));
|
||||
ldr(tmp4, Address(pre(a2, wordSize)));
|
||||
cmp(cnt1, elem_per_word);
|
||||
cmp(cnt1, (u1)elem_per_word);
|
||||
br(LE, TAIL2);
|
||||
cmp(tmp1, tmp2);
|
||||
} br(EQ, NEXT_DWORD);
|
||||
@@ -5409,7 +5418,7 @@ void MacroAssembler::zero_words(Register ptr, Register cnt)
|
||||
assert(ptr == r10 && cnt == r11, "mismatch in register usage");
|
||||
|
||||
BLOCK_COMMENT("zero_words {");
|
||||
cmp(cnt, zero_words_block_size);
|
||||
cmp(cnt, (u1)zero_words_block_size);
|
||||
Label around, done, done16;
|
||||
br(LO, around);
|
||||
{
|
||||
@@ -5590,15 +5599,15 @@ void MacroAssembler::encode_iso_array(Register src, Register dst,
|
||||
mov(result, len); // Save initial len
|
||||
|
||||
#ifndef BUILTIN_SIM
|
||||
cmp(len, 8); // handle shortest strings first
|
||||
cmp(len, (u1)8); // handle shortest strings first
|
||||
br(LT, LOOP_1);
|
||||
cmp(len, 32);
|
||||
cmp(len, (u1)32);
|
||||
br(LT, NEXT_8);
|
||||
// The following code uses the SIMD 'uzp1' and 'uzp2' instructions
|
||||
// to convert chars to bytes
|
||||
if (SoftwarePrefetchHintDistance >= 0) {
|
||||
ld1(Vtmp1, Vtmp2, Vtmp3, Vtmp4, T8H, src);
|
||||
cmp(len, SoftwarePrefetchHintDistance/2 + 16);
|
||||
subs(tmp2, len, SoftwarePrefetchHintDistance/2 + 16);
|
||||
br(LE, NEXT_32_START);
|
||||
b(NEXT_32_PRFM_START);
|
||||
BIND(NEXT_32_PRFM);
|
||||
@@ -5618,9 +5627,9 @@ void MacroAssembler::encode_iso_array(Register src, Register dst,
|
||||
sub(len, len, 32);
|
||||
add(dst, dst, 32);
|
||||
add(src, src, 64);
|
||||
cmp(len, SoftwarePrefetchHintDistance/2 + 16);
|
||||
subs(tmp2, len, SoftwarePrefetchHintDistance/2 + 16);
|
||||
br(GE, NEXT_32_PRFM);
|
||||
cmp(len, 32);
|
||||
cmp(len, (u1)32);
|
||||
br(LT, LOOP_8);
|
||||
BIND(NEXT_32);
|
||||
ld1(Vtmp1, Vtmp2, Vtmp3, Vtmp4, T8H, src);
|
||||
@@ -5643,12 +5652,12 @@ void MacroAssembler::encode_iso_array(Register src, Register dst,
|
||||
sub(len, len, 32);
|
||||
add(dst, dst, 32);
|
||||
add(src, src, 64);
|
||||
cmp(len, 32);
|
||||
cmp(len, (u1)32);
|
||||
br(GE, NEXT_32);
|
||||
cbz(len, DONE);
|
||||
|
||||
BIND(LOOP_8);
|
||||
cmp(len, 8);
|
||||
cmp(len, (u1)8);
|
||||
br(LT, LOOP_1);
|
||||
BIND(NEXT_8);
|
||||
ld1(Vtmp1, T8H, src);
|
||||
@@ -5661,7 +5670,7 @@ void MacroAssembler::encode_iso_array(Register src, Register dst,
|
||||
sub(len, len, 8);
|
||||
add(dst, dst, 8);
|
||||
add(src, src, 16);
|
||||
cmp(len, 8);
|
||||
cmp(len, (u1)8);
|
||||
br(GE, NEXT_8);
|
||||
|
||||
BIND(LOOP_1);
|
||||
@@ -5738,7 +5747,7 @@ void MacroAssembler::byte_array_inflate(Register src, Register dst, Register len
|
||||
const int large_loop_threshold = (64 + 16)/8;
|
||||
ldrd(vtmp2, post(src, 8));
|
||||
andw(len, len, 7);
|
||||
cmp(tmp4, large_loop_threshold);
|
||||
cmp(tmp4, (u1)large_loop_threshold);
|
||||
br(GE, to_stub);
|
||||
b(loop_start);
|
||||
|
||||
|
||||
@@ -180,8 +180,9 @@ class MacroAssembler: public Assembler {
|
||||
|
||||
template<class T>
|
||||
inline void cmpw(Register Rd, T imm) { subsw(zr, Rd, imm); }
|
||||
// imm is limited to 12 bits.
|
||||
inline void cmp(Register Rd, unsigned imm) { subs(zr, Rd, imm); }
|
||||
|
||||
inline void cmp(Register Rd, unsigned char imm8) { subs(zr, Rd, imm8); }
|
||||
inline void cmp(Register Rd, unsigned imm) __attribute__ ((deprecated));
|
||||
|
||||
inline void cmnw(Register Rd, unsigned imm) { addsw(zr, Rd, imm); }
|
||||
inline void cmn(Register Rd, unsigned imm) { adds(zr, Rd, imm); }
|
||||
@@ -795,6 +796,10 @@ public:
|
||||
void access_store_at(BasicType type, DecoratorSet decorators, Address dst, Register src,
|
||||
Register tmp1, Register tmp_thread);
|
||||
|
||||
// Resolves obj for access. Result is placed in the same register.
|
||||
// All other registers are preserved.
|
||||
void resolve(DecoratorSet decorators, Register obj);
|
||||
|
||||
void load_heap_oop(Register dst, Address src, Register tmp1 = noreg,
|
||||
Register thread_tmp = noreg, DecoratorSet decorators = 0);
|
||||
|
||||
|
||||
@@ -292,7 +292,7 @@ void MacroAssembler::fast_log(FloatRegister vtmp0, FloatRegister vtmp1,
|
||||
// vtmp1 = AS_DOUBLE_BITS(0x77F0 << 48 | mantissa(X)) == mx
|
||||
fmovd(vtmp1, tmp4);
|
||||
subw(tmp2, tmp2, 16);
|
||||
cmp(tmp2, 0x8000);
|
||||
subs(zr, tmp2, 0x8000);
|
||||
br(GE, SMALL_VALUE);
|
||||
bind(MAIN);
|
||||
fmovs(tmp3, vtmp5); // int intB0 = AS_INT_BITS(B);
|
||||
|
||||
@@ -297,7 +297,7 @@ void MacroAssembler::generate__ieee754_rem_pio2(address npio2_hw,
|
||||
fmsubd(v3, v2, v6, v31); // v3 = r = t - fn * pio2_1
|
||||
fmuld(v26, v2, v7); // v26 = w = fn * pio2_1t
|
||||
fsubd(v4, v3, v26); // y[0] = r - w. Calculated before branch
|
||||
cmp(n, 32);
|
||||
cmp(n, (u1)32);
|
||||
br(GT, LARGE_ELSE);
|
||||
subw(tmp5, n, 1); // tmp5 = n - 1
|
||||
ldrw(jv, Address(ih, tmp5, Address::lsl(2)));
|
||||
@@ -312,7 +312,7 @@ void MacroAssembler::generate__ieee754_rem_pio2(address npio2_hw,
|
||||
sub(tmp3, tmp5, jx, LSR, 32 + 20 + 1); // r7 = j-(((*(i0+(int*)&y[0]))>>20)&0x7ff);
|
||||
|
||||
block_comment("if(i>16)"); {
|
||||
cmp(tmp3, 16);
|
||||
cmp(tmp3, (u1)16);
|
||||
br(LE, X_IS_MEDIUM_BRANCH_DONE);
|
||||
// i > 16. 2nd iteration needed
|
||||
ldpd(v6, v7, Address(ih, -32));
|
||||
@@ -328,7 +328,7 @@ void MacroAssembler::generate__ieee754_rem_pio2(address npio2_hw,
|
||||
sub(tmp3, tmp5, jx, LSR, 32 + 20 + 1); // r7 = j-(((*(i0+(int*)&y[0]))>>20)&0x7ff);
|
||||
|
||||
block_comment("if(i>49)"); {
|
||||
cmp(tmp3, 49);
|
||||
cmp(tmp3, (u1)49);
|
||||
br(LE, X_IS_MEDIUM_BRANCH_DONE);
|
||||
// 3rd iteration need, 151 bits acc
|
||||
ldpd(v6, v7, Address(ih, -16));
|
||||
|
||||
@@ -196,7 +196,7 @@ address MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*
|
||||
Label L;
|
||||
BLOCK_COMMENT("verify_intrinsic_id {");
|
||||
__ ldrh(rscratch1, Address(rmethod, Method::intrinsic_id_offset_in_bytes()));
|
||||
__ cmp(rscratch1, (int) iid);
|
||||
__ subs(zr, rscratch1, (int) iid);
|
||||
__ br(Assembler::EQ, L);
|
||||
if (iid == vmIntrinsics::_linkToVirtual ||
|
||||
iid == vmIntrinsics::_linkToSpecial) {
|
||||
|
||||
@@ -1152,12 +1152,12 @@ class ComputeMoveOrder: public StackObj {
|
||||
public:
|
||||
MoveOperation(int src_index, VMRegPair src, int dst_index, VMRegPair dst):
|
||||
_src(src)
|
||||
, _src_index(src_index)
|
||||
, _dst(dst)
|
||||
, _src_index(src_index)
|
||||
, _dst_index(dst_index)
|
||||
, _processed(false)
|
||||
, _next(NULL)
|
||||
, _prev(NULL)
|
||||
, _processed(false) { Unimplemented(); }
|
||||
, _prev(NULL) { Unimplemented(); }
|
||||
|
||||
VMRegPair src() const { Unimplemented(); return _src; }
|
||||
int src_id() const { Unimplemented(); return 0; }
|
||||
@@ -1839,6 +1839,8 @@ nmethod* SharedRuntime::generate_native_wrapper(MacroAssembler* masm,
|
||||
// Load the oop from the handle
|
||||
__ ldr(obj_reg, Address(oop_handle_reg, 0));
|
||||
|
||||
__ resolve(IS_NOT_NULL, obj_reg);
|
||||
|
||||
if (UseBiasedLocking) {
|
||||
__ biased_locking_enter(lock_reg, obj_reg, swap_reg, tmp, false, lock_done, &slow_path_lock);
|
||||
}
|
||||
@@ -2001,6 +2003,8 @@ nmethod* SharedRuntime::generate_native_wrapper(MacroAssembler* masm,
|
||||
// Get locked oop from the handle we passed to jni
|
||||
__ ldr(obj_reg, Address(oop_handle_reg, 0));
|
||||
|
||||
__ resolve(IS_NOT_NULL, obj_reg);
|
||||
|
||||
Label done;
|
||||
|
||||
if (UseBiasedLocking) {
|
||||
|
||||
@@ -265,7 +265,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
{
|
||||
Label L;
|
||||
__ ldr(rscratch1, Address(rthread, in_bytes(Thread::pending_exception_offset())));
|
||||
__ cmp(rscratch1, (unsigned)NULL_WORD);
|
||||
__ cmp(rscratch1, (u1)NULL_WORD);
|
||||
__ br(Assembler::EQ, L);
|
||||
__ stop("StubRoutines::call_stub: entered with pending exception");
|
||||
__ BIND(L);
|
||||
@@ -322,13 +322,13 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ ldr(j_rarg2, result);
|
||||
Label is_long, is_float, is_double, exit;
|
||||
__ ldr(j_rarg1, result_type);
|
||||
__ cmp(j_rarg1, T_OBJECT);
|
||||
__ cmp(j_rarg1, (u1)T_OBJECT);
|
||||
__ br(Assembler::EQ, is_long);
|
||||
__ cmp(j_rarg1, T_LONG);
|
||||
__ cmp(j_rarg1, (u1)T_LONG);
|
||||
__ br(Assembler::EQ, is_long);
|
||||
__ cmp(j_rarg1, T_FLOAT);
|
||||
__ cmp(j_rarg1, (u1)T_FLOAT);
|
||||
__ br(Assembler::EQ, is_float);
|
||||
__ cmp(j_rarg1, T_DOUBLE);
|
||||
__ cmp(j_rarg1, (u1)T_DOUBLE);
|
||||
__ br(Assembler::EQ, is_double);
|
||||
|
||||
// handle T_INT case
|
||||
@@ -743,7 +743,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
// Make sure we are never given < 8 words
|
||||
{
|
||||
Label L;
|
||||
__ cmp(count, 8);
|
||||
__ cmp(count, (u1)8);
|
||||
__ br(Assembler::GE, L);
|
||||
__ stop("genrate_copy_longs called with < 8 words");
|
||||
__ bind(L);
|
||||
@@ -1103,19 +1103,19 @@ class StubGenerator: public StubCodeGenerator {
|
||||
|
||||
if (PrefetchCopyIntervalInBytes > 0)
|
||||
__ prfm(Address(s, 0), PLDL1KEEP);
|
||||
__ cmp(count, (UseSIMDForMemoryOps ? 96:80)/granularity);
|
||||
__ cmp(count, u1((UseSIMDForMemoryOps ? 96:80)/granularity));
|
||||
__ br(Assembler::HI, copy_big);
|
||||
|
||||
__ lea(send, Address(s, count, Address::lsl(exact_log2(granularity))));
|
||||
__ lea(dend, Address(d, count, Address::lsl(exact_log2(granularity))));
|
||||
|
||||
__ cmp(count, 16/granularity);
|
||||
__ cmp(count, u1(16/granularity));
|
||||
__ br(Assembler::LS, copy16);
|
||||
|
||||
__ cmp(count, 64/granularity);
|
||||
__ cmp(count, u1(64/granularity));
|
||||
__ br(Assembler::HI, copy80);
|
||||
|
||||
__ cmp(count, 32/granularity);
|
||||
__ cmp(count, u1(32/granularity));
|
||||
__ br(Assembler::LS, copy32);
|
||||
|
||||
// 33..64 bytes
|
||||
@@ -1170,7 +1170,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
|
||||
// 0..16 bytes
|
||||
__ bind(copy16);
|
||||
__ cmp(count, 8/granularity);
|
||||
__ cmp(count, u1(8/granularity));
|
||||
__ br(Assembler::LO, copy8);
|
||||
|
||||
// 8..16 bytes
|
||||
@@ -3270,7 +3270,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
|
||||
// The pipelined loop needs at least 16 elements for 1 iteration
|
||||
// It does check this, but it is more effective to skip to the cleanup loop
|
||||
__ cmp(len, 16);
|
||||
__ cmp(len, (u1)16);
|
||||
__ br(Assembler::HS, L_nmax);
|
||||
__ cbz(len, L_combine);
|
||||
|
||||
@@ -3654,7 +3654,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
|
||||
address generate_has_negatives(address &has_negatives_long) {
|
||||
StubCodeMark mark(this, "StubRoutines", "has_negatives");
|
||||
const int large_loop_size = 64;
|
||||
const u1 large_loop_size = 64;
|
||||
const uint64_t UPPER_BIT_MASK=0x8080808080808080;
|
||||
int dcache_line = VM_Version::dcache_line_size();
|
||||
|
||||
@@ -3668,7 +3668,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
Label RET_TRUE, RET_TRUE_NO_POP, RET_FALSE, ALIGNED, LOOP16, CHECK_16, DONE,
|
||||
LARGE_LOOP, POST_LOOP16, LEN_OVER_15, LEN_OVER_8, POST_LOOP16_LOAD_TAIL;
|
||||
|
||||
__ cmp(len, 15);
|
||||
__ cmp(len, (u1)15);
|
||||
__ br(Assembler::GT, LEN_OVER_15);
|
||||
// The only case when execution falls into this code is when pointer is near
|
||||
// the end of memory page and we have to avoid reading next page
|
||||
@@ -3764,7 +3764,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ br(Assembler::GE, LARGE_LOOP);
|
||||
|
||||
__ bind(CHECK_16); // small 16-byte load pre-loop
|
||||
__ cmp(len, 16);
|
||||
__ cmp(len, (u1)16);
|
||||
__ br(Assembler::LT, POST_LOOP16);
|
||||
|
||||
__ bind(LOOP16); // small 16-byte load loop
|
||||
@@ -3773,11 +3773,11 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ orr(tmp2, tmp2, tmp3);
|
||||
__ tst(tmp2, UPPER_BIT_MASK);
|
||||
__ br(Assembler::NE, RET_TRUE);
|
||||
__ cmp(len, 16);
|
||||
__ cmp(len, (u1)16);
|
||||
__ br(Assembler::GE, LOOP16); // 16-byte load loop end
|
||||
|
||||
__ bind(POST_LOOP16); // 16-byte aligned, so we can read unconditionally
|
||||
__ cmp(len, 8);
|
||||
__ cmp(len, (u1)8);
|
||||
__ br(Assembler::LE, POST_LOOP16_LOAD_TAIL);
|
||||
__ ldr(tmp3, Address(__ post(ary1, 8)));
|
||||
__ sub(len, len, 8);
|
||||
@@ -3942,7 +3942,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ br(__ LE, NO_PREFETCH_LARGE_LOOP);
|
||||
generate_large_array_equals_loop_simd(prefetchLoopThreshold,
|
||||
/* prfm = */ true, NOT_EQUAL);
|
||||
__ cmp(cnt1, nonPrefetchLoopThreshold);
|
||||
__ subs(zr, cnt1, nonPrefetchLoopThreshold);
|
||||
__ br(__ LT, TAIL);
|
||||
}
|
||||
__ bind(NO_PREFETCH_LARGE_LOOP);
|
||||
@@ -3955,7 +3955,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ br(__ LE, NO_PREFETCH_LARGE_LOOP);
|
||||
generate_large_array_equals_loop_nonsimd(prefetchLoopThreshold,
|
||||
/* prfm = */ true, NOT_EQUAL);
|
||||
__ cmp(cnt1, nonPrefetchLoopThreshold);
|
||||
__ subs(zr, cnt1, nonPrefetchLoopThreshold);
|
||||
__ br(__ LT, TAIL);
|
||||
}
|
||||
__ bind(NO_PREFETCH_LARGE_LOOP);
|
||||
@@ -4106,7 +4106,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ ldr(tmp3, Address(__ post(cnt1, 8)));
|
||||
|
||||
if (SoftwarePrefetchHintDistance >= 0) {
|
||||
__ cmp(cnt2, prefetchLoopExitCondition);
|
||||
__ subs(rscratch2, cnt2, prefetchLoopExitCondition);
|
||||
__ br(__ LT, SMALL_LOOP);
|
||||
__ bind(LARGE_LOOP_PREFETCH);
|
||||
__ prfm(Address(tmp2, SoftwarePrefetchHintDistance));
|
||||
@@ -4123,7 +4123,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ subs(tmp4, tmp4, 1);
|
||||
__ br(__ GT, LARGE_LOOP_PREFETCH_REPEAT2);
|
||||
__ sub(cnt2, cnt2, 64);
|
||||
__ cmp(cnt2, prefetchLoopExitCondition);
|
||||
__ subs(rscratch2, cnt2, prefetchLoopExitCondition);
|
||||
__ br(__ GE, LARGE_LOOP_PREFETCH);
|
||||
}
|
||||
__ cbz(cnt2, LOAD_LAST); // no characters left except last load
|
||||
@@ -4137,7 +4137,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ br(__ GE, SMALL_LOOP);
|
||||
__ cbz(cnt2, LOAD_LAST);
|
||||
__ bind(TAIL); // 1..15 characters left
|
||||
__ cmp(cnt2, -8);
|
||||
__ subs(zr, cnt2, -8);
|
||||
__ br(__ GT, TAIL_LOAD_16);
|
||||
__ ldrd(vtmp, Address(tmp2));
|
||||
__ zip1(vtmp3, __ T8B, vtmp, vtmpZ);
|
||||
@@ -4240,7 +4240,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
compare_string_16_bytes_same(DIFF, DIFF2);
|
||||
__ sub(cnt2, cnt2, isLL ? 64 : 32);
|
||||
compare_string_16_bytes_same(DIFF, DIFF2);
|
||||
__ cmp(cnt2, largeLoopExitCondition);
|
||||
__ subs(rscratch2, cnt2, largeLoopExitCondition);
|
||||
compare_string_16_bytes_same(DIFF, DIFF2);
|
||||
__ br(__ GT, LARGE_LOOP_PREFETCH);
|
||||
__ cbz(cnt2, LAST_CHECK_AND_LENGTH_DIFF); // no more chars left?
|
||||
@@ -4416,7 +4416,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ add(result, result, wordSize/str2_chr_size);
|
||||
__ br(__ GE, L_LOOP);
|
||||
__ BIND(L_POST_LOOP);
|
||||
__ cmp(cnt2, -wordSize/str2_chr_size); // no extra characters to check
|
||||
__ subs(zr, cnt2, -wordSize/str2_chr_size); // no extra characters to check
|
||||
__ br(__ LE, NOMATCH);
|
||||
__ ldr(ch2, Address(str2));
|
||||
__ sub(cnt2, zr, cnt2, __ LSL, LogBitsPerByte + str2_chr_shift);
|
||||
@@ -4446,7 +4446,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ br(__ EQ, NOMATCH);
|
||||
__ BIND(L_SMALL_HAS_ZERO_LOOP);
|
||||
__ clz(tmp4, tmp2); // potentially long. Up to 4 cycles on some cpu's
|
||||
__ cmp(cnt1, wordSize/str2_chr_size);
|
||||
__ cmp(cnt1, u1(wordSize/str2_chr_size));
|
||||
__ br(__ LE, L_SMALL_CMP_LOOP_LAST_CMP2);
|
||||
if (str2_isL) { // LL
|
||||
__ add(str2, str2, tmp4, __ LSR, LogBitsPerByte); // address of "index"
|
||||
@@ -4659,7 +4659,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ zip1(v2, __ T16B, v2, v0);
|
||||
__ st1(v1, v2, __ T16B, __ post(dst, 32));
|
||||
__ ld1(v3, v4, v5, v6, __ T16B, Address(__ post(src, 64)));
|
||||
__ cmp(octetCounter, large_loop_threshold);
|
||||
__ subs(rscratch1, octetCounter, large_loop_threshold);
|
||||
__ br(__ LE, LOOP_START);
|
||||
__ b(LOOP_PRFM_START);
|
||||
__ bind(LOOP_PRFM);
|
||||
@@ -4667,17 +4667,17 @@ class StubGenerator: public StubCodeGenerator {
|
||||
__ bind(LOOP_PRFM_START);
|
||||
__ prfm(Address(src, SoftwarePrefetchHintDistance));
|
||||
__ sub(octetCounter, octetCounter, 8);
|
||||
__ cmp(octetCounter, large_loop_threshold);
|
||||
__ subs(rscratch1, octetCounter, large_loop_threshold);
|
||||
inflate_and_store_2_fp_registers(true, v3, v4);
|
||||
inflate_and_store_2_fp_registers(true, v5, v6);
|
||||
__ br(__ GT, LOOP_PRFM);
|
||||
__ cmp(octetCounter, 8);
|
||||
__ cmp(octetCounter, (u1)8);
|
||||
__ br(__ LT, DONE);
|
||||
__ bind(LOOP);
|
||||
__ ld1(v3, v4, v5, v6, __ T16B, Address(__ post(src, 64)));
|
||||
__ bind(LOOP_START);
|
||||
__ sub(octetCounter, octetCounter, 8);
|
||||
__ cmp(octetCounter, 8);
|
||||
__ cmp(octetCounter, (u1)8);
|
||||
inflate_and_store_2_fp_registers(false, v3, v4);
|
||||
inflate_and_store_2_fp_registers(false, v5, v6);
|
||||
__ br(__ GE, LOOP);
|
||||
@@ -5308,7 +5308,7 @@ class StubGenerator: public StubCodeGenerator {
|
||||
{
|
||||
ldr(Rn, Address(Pn_base, 0));
|
||||
mul(Rlo_mn, Rn, inv);
|
||||
cmp(Rlo_mn, -1);
|
||||
subs(zr, Rlo_mn, -1);
|
||||
Label ok;
|
||||
br(EQ, ok); {
|
||||
stop("broken inverse in Montgomery multiply");
|
||||
|
||||
@@ -836,6 +836,7 @@ void TemplateInterpreterGenerator::lock_method() {
|
||||
#endif // ASSERT
|
||||
|
||||
__ bind(done);
|
||||
__ resolve(IS_NOT_NULL, r0);
|
||||
}
|
||||
|
||||
// add space for monitor & lock
|
||||
@@ -1062,6 +1063,7 @@ address TemplateInterpreterGenerator::generate_CRC32_updateBytes_entry(AbstractI
|
||||
__ ldrw(crc, Address(esp, 4*wordSize)); // Initial CRC
|
||||
} else {
|
||||
__ ldr(buf, Address(esp, 2*wordSize)); // byte[] array
|
||||
__ resolve(IS_NOT_NULL | ACCESS_READ, buf);
|
||||
__ add(buf, buf, arrayOopDesc::base_offset_in_bytes(T_BYTE)); // + header size
|
||||
__ ldrw(off, Address(esp, wordSize)); // offset
|
||||
__ add(buf, buf, off); // + offset
|
||||
@@ -1106,6 +1108,9 @@ address TemplateInterpreterGenerator::generate_CRC32C_updateBytes_entry(Abstract
|
||||
__ ldrw(off, Address(esp, wordSize)); // int offset
|
||||
__ sub(len, end, off);
|
||||
__ ldr(buf, Address(esp, 2*wordSize)); // byte[] buf | long buf
|
||||
if (kind == Interpreter::java_util_zip_CRC32C_updateBytes) {
|
||||
__ resolve(IS_NOT_NULL | ACCESS_READ, buf);
|
||||
}
|
||||
__ add(buf, buf, off); // + offset
|
||||
if (kind == Interpreter::java_util_zip_CRC32C_updateDirectByteBuffer) {
|
||||
__ ldrw(crc, Address(esp, 4*wordSize)); // long crc
|
||||
@@ -1355,7 +1360,7 @@ address TemplateInterpreterGenerator::generate_native_entry(bool synchronized) {
|
||||
{
|
||||
Label L;
|
||||
__ ldrw(t, Address(rthread, JavaThread::thread_state_offset()));
|
||||
__ cmp(t, _thread_in_Java);
|
||||
__ cmp(t, (u1)_thread_in_Java);
|
||||
__ br(Assembler::EQ, L);
|
||||
__ stop("Wrong thread state in native stub");
|
||||
__ bind(L);
|
||||
@@ -1462,7 +1467,7 @@ address TemplateInterpreterGenerator::generate_native_entry(bool synchronized) {
|
||||
Label no_reguard;
|
||||
__ lea(rscratch1, Address(rthread, in_bytes(JavaThread::stack_guard_state_offset())));
|
||||
__ ldrw(rscratch1, Address(rscratch1));
|
||||
__ cmp(rscratch1, JavaThread::stack_guard_yellow_reserved_disabled);
|
||||
__ cmp(rscratch1, (u1)JavaThread::stack_guard_yellow_reserved_disabled);
|
||||
__ br(Assembler::NE, no_reguard);
|
||||
|
||||
__ pusha(); // XXX only save smashed registers
|
||||
|
||||
@@ -331,16 +331,16 @@ void TemplateTable::ldc(bool wide)
|
||||
__ ldarb(r3, r3);
|
||||
|
||||
// unresolved class - get the resolved class
|
||||
__ cmp(r3, JVM_CONSTANT_UnresolvedClass);
|
||||
__ cmp(r3, (u1)JVM_CONSTANT_UnresolvedClass);
|
||||
__ br(Assembler::EQ, call_ldc);
|
||||
|
||||
// unresolved class in error state - call into runtime to throw the error
|
||||
// from the first resolution attempt
|
||||
__ cmp(r3, JVM_CONSTANT_UnresolvedClassInError);
|
||||
__ cmp(r3, (u1)JVM_CONSTANT_UnresolvedClassInError);
|
||||
__ br(Assembler::EQ, call_ldc);
|
||||
|
||||
// resolved class - need to call vm to get java mirror of the class
|
||||
__ cmp(r3, JVM_CONSTANT_Class);
|
||||
__ cmp(r3, (u1)JVM_CONSTANT_Class);
|
||||
__ br(Assembler::NE, notClass);
|
||||
|
||||
__ bind(call_ldc);
|
||||
@@ -351,7 +351,7 @@ void TemplateTable::ldc(bool wide)
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notClass);
|
||||
__ cmp(r3, JVM_CONSTANT_Float);
|
||||
__ cmp(r3, (u1)JVM_CONSTANT_Float);
|
||||
__ br(Assembler::NE, notFloat);
|
||||
// ftos
|
||||
__ adds(r1, r2, r1, Assembler::LSL, 3);
|
||||
@@ -361,7 +361,7 @@ void TemplateTable::ldc(bool wide)
|
||||
|
||||
__ bind(notFloat);
|
||||
|
||||
__ cmp(r3, JVM_CONSTANT_Integer);
|
||||
__ cmp(r3, (u1)JVM_CONSTANT_Integer);
|
||||
__ br(Assembler::NE, notInt);
|
||||
|
||||
// itos
|
||||
@@ -2333,7 +2333,7 @@ void TemplateTable::resolve_cache_and_index(int byte_no,
|
||||
|
||||
assert(byte_no == f1_byte || byte_no == f2_byte, "byte_no out of range");
|
||||
__ get_cache_and_index_and_bytecode_at_bcp(Rcache, index, temp, byte_no, 1, index_size);
|
||||
__ cmp(temp, (int) code); // have we resolved this bytecode?
|
||||
__ subs(zr, temp, (int) code); // have we resolved this bytecode?
|
||||
__ br(Assembler::EQ, resolved);
|
||||
|
||||
// resolve first time through
|
||||
@@ -2515,7 +2515,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notByte);
|
||||
__ cmp(flags, ztos);
|
||||
__ cmp(flags, (u1)ztos);
|
||||
__ br(Assembler::NE, notBool);
|
||||
|
||||
// ztos (same code as btos)
|
||||
@@ -2529,7 +2529,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notBool);
|
||||
__ cmp(flags, atos);
|
||||
__ cmp(flags, (u1)atos);
|
||||
__ br(Assembler::NE, notObj);
|
||||
// atos
|
||||
do_oop_load(_masm, field, r0, IN_HEAP);
|
||||
@@ -2540,7 +2540,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notObj);
|
||||
__ cmp(flags, itos);
|
||||
__ cmp(flags, (u1)itos);
|
||||
__ br(Assembler::NE, notInt);
|
||||
// itos
|
||||
__ access_load_at(T_INT, IN_HEAP, r0, field, noreg, noreg);
|
||||
@@ -2552,7 +2552,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notInt);
|
||||
__ cmp(flags, ctos);
|
||||
__ cmp(flags, (u1)ctos);
|
||||
__ br(Assembler::NE, notChar);
|
||||
// ctos
|
||||
__ access_load_at(T_CHAR, IN_HEAP, r0, field, noreg, noreg);
|
||||
@@ -2564,7 +2564,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notChar);
|
||||
__ cmp(flags, stos);
|
||||
__ cmp(flags, (u1)stos);
|
||||
__ br(Assembler::NE, notShort);
|
||||
// stos
|
||||
__ access_load_at(T_SHORT, IN_HEAP, r0, field, noreg, noreg);
|
||||
@@ -2576,7 +2576,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notShort);
|
||||
__ cmp(flags, ltos);
|
||||
__ cmp(flags, (u1)ltos);
|
||||
__ br(Assembler::NE, notLong);
|
||||
// ltos
|
||||
__ access_load_at(T_LONG, IN_HEAP, r0, field, noreg, noreg);
|
||||
@@ -2588,7 +2588,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
__ b(Done);
|
||||
|
||||
__ bind(notLong);
|
||||
__ cmp(flags, ftos);
|
||||
__ cmp(flags, (u1)ftos);
|
||||
__ br(Assembler::NE, notFloat);
|
||||
// ftos
|
||||
__ access_load_at(T_FLOAT, IN_HEAP, noreg /* ftos */, field, noreg, noreg);
|
||||
@@ -2601,7 +2601,7 @@ void TemplateTable::getfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
|
||||
__ bind(notFloat);
|
||||
#ifdef ASSERT
|
||||
__ cmp(flags, dtos);
|
||||
__ cmp(flags, (u1)dtos);
|
||||
__ br(Assembler::NE, notDouble);
|
||||
#endif
|
||||
// dtos
|
||||
@@ -2751,7 +2751,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notByte);
|
||||
__ cmp(flags, ztos);
|
||||
__ cmp(flags, (u1)ztos);
|
||||
__ br(Assembler::NE, notBool);
|
||||
|
||||
// ztos
|
||||
@@ -2766,7 +2766,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notBool);
|
||||
__ cmp(flags, atos);
|
||||
__ cmp(flags, (u1)atos);
|
||||
__ br(Assembler::NE, notObj);
|
||||
|
||||
// atos
|
||||
@@ -2782,7 +2782,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notObj);
|
||||
__ cmp(flags, itos);
|
||||
__ cmp(flags, (u1)itos);
|
||||
__ br(Assembler::NE, notInt);
|
||||
|
||||
// itos
|
||||
@@ -2797,7 +2797,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notInt);
|
||||
__ cmp(flags, ctos);
|
||||
__ cmp(flags, (u1)ctos);
|
||||
__ br(Assembler::NE, notChar);
|
||||
|
||||
// ctos
|
||||
@@ -2812,7 +2812,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notChar);
|
||||
__ cmp(flags, stos);
|
||||
__ cmp(flags, (u1)stos);
|
||||
__ br(Assembler::NE, notShort);
|
||||
|
||||
// stos
|
||||
@@ -2827,7 +2827,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notShort);
|
||||
__ cmp(flags, ltos);
|
||||
__ cmp(flags, (u1)ltos);
|
||||
__ br(Assembler::NE, notLong);
|
||||
|
||||
// ltos
|
||||
@@ -2842,7 +2842,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
}
|
||||
|
||||
__ bind(notLong);
|
||||
__ cmp(flags, ftos);
|
||||
__ cmp(flags, (u1)ftos);
|
||||
__ br(Assembler::NE, notFloat);
|
||||
|
||||
// ftos
|
||||
@@ -2858,7 +2858,7 @@ void TemplateTable::putfield_or_static(int byte_no, bool is_static, RewriteContr
|
||||
|
||||
__ bind(notFloat);
|
||||
#ifdef ASSERT
|
||||
__ cmp(flags, dtos);
|
||||
__ cmp(flags, (u1)dtos);
|
||||
__ br(Assembler::NE, notDouble);
|
||||
#endif
|
||||
|
||||
@@ -3534,7 +3534,7 @@ void TemplateTable::_new() {
|
||||
__ lea(rscratch1, Address(r0, r3, Address::lsl(0)));
|
||||
__ lea(rscratch1, Address(rscratch1, tags_offset));
|
||||
__ ldarb(rscratch1, rscratch1);
|
||||
__ cmp(rscratch1, JVM_CONSTANT_Class);
|
||||
__ cmp(rscratch1, (u1)JVM_CONSTANT_Class);
|
||||
__ br(Assembler::NE, slow_case);
|
||||
|
||||
// get InstanceKlass
|
||||
@@ -3543,7 +3543,7 @@ void TemplateTable::_new() {
|
||||
// make sure klass is initialized & doesn't have finalizer
|
||||
// make sure klass is fully initialized
|
||||
__ ldrb(rscratch1, Address(r4, InstanceKlass::init_state_offset()));
|
||||
__ cmp(rscratch1, InstanceKlass::fully_initialized);
|
||||
__ cmp(rscratch1, (u1)InstanceKlass::fully_initialized);
|
||||
__ br(Assembler::NE, slow_case);
|
||||
|
||||
// get instance_size in InstanceKlass (scaled to a count of bytes)
|
||||
@@ -3683,7 +3683,7 @@ void TemplateTable::checkcast()
|
||||
__ add(rscratch1, r3, Array<u1>::base_offset_in_bytes());
|
||||
__ lea(r1, Address(rscratch1, r19));
|
||||
__ ldarb(r1, r1);
|
||||
__ cmp(r1, JVM_CONSTANT_Class);
|
||||
__ cmp(r1, (u1)JVM_CONSTANT_Class);
|
||||
__ br(Assembler::EQ, quicked);
|
||||
|
||||
__ push(atos); // save receiver for result, and for GC
|
||||
@@ -3737,7 +3737,7 @@ void TemplateTable::instanceof() {
|
||||
__ add(rscratch1, r3, Array<u1>::base_offset_in_bytes());
|
||||
__ lea(r1, Address(rscratch1, r19));
|
||||
__ ldarb(r1, r1);
|
||||
__ cmp(r1, JVM_CONSTANT_Class);
|
||||
__ cmp(r1, (u1)JVM_CONSTANT_Class);
|
||||
__ br(Assembler::EQ, quicked);
|
||||
|
||||
__ push(atos); // save receiver for result, and for GC
|
||||
@@ -3840,6 +3840,8 @@ void TemplateTable::monitorenter()
|
||||
// check for NULL object
|
||||
__ null_check(r0);
|
||||
|
||||
__ resolve(IS_NOT_NULL, r0);
|
||||
|
||||
const Address monitor_block_top(
|
||||
rfp, frame::interpreter_frame_monitor_block_top_offset * wordSize);
|
||||
const Address monitor_block_bot(
|
||||
@@ -3939,6 +3941,8 @@ void TemplateTable::monitorexit()
|
||||
// check for NULL object
|
||||
__ null_check(r0);
|
||||
|
||||
__ resolve(IS_NOT_NULL, r0);
|
||||
|
||||
const Address monitor_block_top(
|
||||
rfp, frame::interpreter_frame_monitor_block_top_offset * wordSize);
|
||||
const Address monitor_block_bot(
|
||||
|
||||
@@ -1083,6 +1083,7 @@ class Assembler : public AbstractAssembler {
|
||||
break;
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
return;
|
||||
}
|
||||
emit_int32(0xf << 28 | 0x1 << 25 | 0x1 << 23 | 0x1 << 4 |
|
||||
(imm8 >> 7) << 24 | ((imm8 & 0x70) >> 4) << 16 | (imm8 & 0xf) |
|
||||
@@ -1113,6 +1114,7 @@ class Assembler : public AbstractAssembler {
|
||||
break;
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
return;
|
||||
}
|
||||
emit_int32(cond << 28 | 0x1D /* 0b11101 */ << 23 | 0xB /* 0b1011 */ << 8 | 0x1 << 4 |
|
||||
quad << 21 | b << 22 | e << 5 | Rs->encoding() << 12 |
|
||||
@@ -1143,6 +1145,7 @@ class Assembler : public AbstractAssembler {
|
||||
break;
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
return;
|
||||
}
|
||||
emit_int32(0xF /* 0b1111 */ << 28 | 0x3B /* 0b00111011 */ << 20 | 0x6 /* 0b110 */ << 9 |
|
||||
quad << 6 | imm4 << 16 |
|
||||
|
||||
@@ -52,13 +52,13 @@ void CounterOverflowStub::emit_code(LIR_Assembler* ce) {
|
||||
|
||||
|
||||
RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index, LIR_Opr array)
|
||||
: _throw_index_out_of_bounds_exception(false), _index(index), _array(array) {
|
||||
: _index(index), _array(array), _throw_index_out_of_bounds_exception(false) {
|
||||
assert(info != NULL, "must have info");
|
||||
_info = new CodeEmitInfo(info);
|
||||
}
|
||||
|
||||
RangeCheckStub::RangeCheckStub(CodeEmitInfo* info, LIR_Opr index)
|
||||
: _throw_index_out_of_bounds_exception(true), _index(index), _array(NULL) {
|
||||
: _index(index), _array(NULL), _throw_index_out_of_bounds_exception(true) {
|
||||
assert(info != NULL, "must have info");
|
||||
_info = new CodeEmitInfo(info);
|
||||
}
|
||||
|
||||
@@ -3086,7 +3086,7 @@ void LIR_Assembler::emit_assert(LIR_OpAssert* op) {
|
||||
|
||||
Label ok;
|
||||
if (op->condition() != lir_cond_always) {
|
||||
AsmCondition acond;
|
||||
AsmCondition acond = al;
|
||||
switch (op->condition()) {
|
||||
case lir_cond_equal: acond = eq; break;
|
||||
case lir_cond_notEqual: acond = ne; break;
|
||||
|
||||
@@ -733,6 +733,7 @@ void LIRGenerator::do_ArithmeticOp_Long(ArithmeticOp* x) {
|
||||
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
return;
|
||||
}
|
||||
#else
|
||||
switch (x->op()) {
|
||||
@@ -757,6 +758,7 @@ void LIRGenerator::do_ArithmeticOp_Long(ArithmeticOp* x) {
|
||||
break;
|
||||
default:
|
||||
ShouldNotReachHere();
|
||||
return;
|
||||
}
|
||||
LIR_Opr result = call_runtime(x->y(), x->x(), entry, x->type(), NULL);
|
||||
set_result(x, result);
|
||||
@@ -824,7 +826,7 @@ void LIRGenerator::do_ArithmeticOp_Int(ArithmeticOp* x) {
|
||||
if (x->op() == Bytecodes::_irem) {
|
||||
out_reg = FrameMap::R0_opr;
|
||||
__ irem(left_arg->result(), right_arg->result(), out_reg, tmp, info);
|
||||
} else if (x->op() == Bytecodes::_idiv) {
|
||||
} else { // (x->op() == Bytecodes::_idiv)
|
||||
out_reg = FrameMap::R1_opr;
|
||||
__ idiv(left_arg->result(), right_arg->result(), out_reg, tmp, info);
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2008, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@@ -500,7 +500,7 @@ bool frame::is_interpreted_frame_valid(JavaThread* thread) const {
|
||||
Method* m = *interpreter_frame_method_addr();
|
||||
|
||||
// validate the method we'd find in this potential sender
|
||||
if (!m->is_valid_method()) return false;
|
||||
if (!Method::is_valid_method(m)) return false;
|
||||
|
||||
// stack frames shouldn't be much larger than max_stack elements
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user