Compare commits

...

2456 Commits

Author SHA1 Message Date
Alexey Ushakov
424cf04435 IDEA-57233 Editor font antialising/appearance problems on Linux
Used desktop DPI instead of hard-coded 72
Compensated increased glyph bitmap size by adjusting font size
Added LCD filter for sub-pixel rendering
Use fontconfig library to provide right rendering options for fonts
Corrected sizes passed to fontconfig library and hinting disabling policy
Added logging and versioned fontconfig lib loading
Resolved font rendering problem in lenses

(cherry picked from commit 0456745afb)
2021-02-25 17:09:06 +03:00
Vitaly Provodin
6c3e5730e9 JBR-2922 add JCEF to jbrsdk binaries
& fix a misprint in get_mods_list
2021-02-25 07:00:18 +03:00
Alexey Ushakov
c1876409e9 JBR-2807: JDK15: update modules.list to resolve jbr build failure
removed nashorn modules
2021-02-25 07:00:18 +03:00
Vitaly Provodin
953decaaf9 JBR-2130 remove module jdk.pack 2021-02-25 07:00:18 +03:00
Vitaly Provodin
99a0823245 JBR-2922 add JCEF to jbrsdk binaries
& fix a misprint in get_mods_list
2021-02-25 07:00:18 +03:00
Vitaly Provodin
61c9ba2b62 JBR-2912 add JBR 15 builds with DCEVM 2021-02-25 07:00:18 +03:00
Vitaly Provodin
fa693423e2 JBR-2864 initial commit of DCEVM patches reworked for 15 2021-02-25 07:00:18 +03:00
Vitaly Provodin
0db4256e0c JBR-2812 remove --with-import-modules from configure for aarch64 2021-02-25 07:00:18 +03:00
Anton Tarasov
792fae5112 JBR-2812 bundle jcef in jmod format instead of modular-sdk
Build test-image with non-jcef build target
2021-02-25 07:00:17 +03:00
Vitaly Provodin
2fdc96fbea JBR-2787 fix copying jcef files into jbr/jbrsdk binaries 2021-02-25 07:00:17 +03:00
Vitaly Provodin
2331fe7ff0 JBR-2758 refactor building scripts to apply patches adding required modules instead of excluding
Add jogl and gluegen modules to support jcef osr mode
2021-02-25 07:00:17 +03:00
Anton Tarasov
e63d14a55d JBR-2016 add jcef module and export packages to it
(cherry picked from commit cf997f71c6)
2021-02-25 07:00:17 +03:00
Vitaly Provodin
e5a1355c34 JBR-2473 modify building scripts to add dcevm clauses, add git config to docker image
(cherry picked from commit 2620c62848)
2021-02-25 07:00:17 +03:00
Vitaly Provodin
b2cea6991e JBR-2473 add initial set of DCEVM patches
(cherry picked from commit c0c0a96cf4)
2021-02-25 07:00:17 +03:00
Vitaly Provodin
aff1830f11 JBR-2395 eliminate JavaFX from JBR 2021-02-25 07:00:17 +03:00
Vitaly Provodin
11916fa02e JBR-2409 fix prameters for configure 2021-02-25 07:00:17 +03:00
Vitaly Provodin
22b927a1e5 JDK14: exclude dependencies on jcef in x86, fastdebug builds 2021-02-25 07:00:16 +03:00
Vitaly Provodin
c15e0463e0 JBR-2396 fix CONF names 2021-02-25 07:00:16 +03:00
Vitaly Provodin
a6397c8d16 JBR-2394 replace --disable-debug-symbols with --with-native-debug-symbols=none 2021-02-25 07:00:16 +03:00
Vitaly Provodin
f395068fe0 add exec permitions to configure 2021-02-25 07:00:16 +03:00
Vitaly Provodin
ec7e34d60b split checkout before building JBR+JFX or JBR+JCEF on two separate commands 2021-02-25 07:00:16 +03:00
Vitaly Provodin
a24ac1d1df change BOOT_JDK, fix target names 2021-02-25 07:00:16 +03:00
Vitaly Provodin
ea0928a341 JBR-2291 add vendor info into bundles 2021-02-25 07:00:16 +03:00
Vitaly Provodin
9637d1e41c JBR-2324 address new layout in mac jcef 80.0.4+g74f7b0c+chromium-80.0.3987.122 2021-02-25 07:00:16 +03:00
Vitaly Provodin
9a282d0346 JBR-2320 add jdk.attach module into JBR 2021-02-25 07:00:15 +03:00
Vitaly Provodin
6e2ccff641 JBR-2217 provide JCEF-only (no JavaFX) bundle for master/202 branches 2021-02-25 07:00:15 +03:00
Vitaly Provodin
96b0fb3f69 JBR-2212 add scripts for linux_x86, linux_aarch64, linux_x64_fastdebug, osx_fastdebug, windows_x86 2021-02-25 07:00:15 +03:00
Vitaly Provodin
a384fdbaa9 JBR-1643 fix intermittent fialures of Windows builds at make/Init.gmk:304
combine images and test-image into one make invocation
2021-02-25 07:00:15 +03:00
Vitaly Provodin
4ab15b6d30 JBR-2181 create two separate JBR bundles with JFX and JFX+JCEF 2021-02-25 07:00:15 +03:00
Vitaly Provodin
e9439d310d JBR-2148 modify signapp&build scripts to match to the new layout 2021-02-25 07:00:15 +03:00
Vitaly Provodin
fbee339afa JBR-2084 modify scripts to sign Contents/MacOS/libjli.dylib as a a normal file 2021-02-25 07:00:15 +03:00
Vitaly Provodin
8b6b506a93 JBR-1821 notarize JBR bundles as a standalone app 2021-02-25 07:00:15 +03:00
Vitaly Provodin
3ccf9da46a JBR-2162 move building scripts from TC to JBR repo 2021-02-25 07:00:14 +03:00
Anton Tarasov
0f2d55da30 JBR-2016 add jcef module and export some sun.* packages to it 2021-02-25 07:00:14 +03:00
Vitaly Provodin
9034d9678f JBR-2014 add jdk.hotspot.agent module to jbr 2021-02-25 07:00:14 +03:00
Vitaly Provodin
8dcf59b294 JBR-1286 add jdk.compiler into JBR 2021-02-25 07:00:14 +03:00
Vitaly Provodin
a1fd490436 JBR-1199 add JBR modules list for jlink 2021-02-25 07:00:14 +03:00
Vitaly Provodin
92e9022599 Update docker script to create jdk15 build env 2021-02-25 07:00:14 +03:00
Vitaly Provodin
2639905822 JBR-3045 add pressing ESC to close the dialog after test completion
(cherry picked from commit 44d8b28b0b)
2021-02-25 07:00:14 +03:00
Vitaly Provodin
fad5f2ee4d JBR-3040 press the button END at the beggining in order to avoid text selection
(cherry picked from commit 1c2bf33db2)
2021-02-25 07:00:14 +03:00
Vitaly.Provodin
b9bae96d64 updated JTreg exclude list 2021-02-25 07:00:14 +03:00
Yang Yi
3a0d6a64bc 8262099: jcmd VM.metaspace should report unlimited size if MaxMetaspaceSize isn't specified
Reviewed-by: stuefe, lucy
2021-02-25 02:08:52 +00:00
Severin Gehwolf
a50725db2a 8254001: [Metrics] Enhance parsing of cgroup interface files for version detection
Reviewed-by: hseigel, andrew
2021-02-24 19:39:46 +00:00
Jonathan Gibbons
65492129a9 8262315: missing ';' in generated entities
Reviewed-by: lancea
2021-02-24 18:07:33 +00:00
Fernando Guallini
d70fd7b3c4 8258855: Two tests sun/security/krb5/auto/ReplayCacheTestProc.java and ReplayCacheTestProcWithMD5.java failed on OL8.3
Reviewed-by: weijun, rhalade
2021-02-24 17:05:58 +00:00
Naoto Sato
9d9ad969ca 8261919: java/util/Locale/LocaleProvidersRun.java failed with "RuntimeException: Expected log was not emitted. LogRecord: null"
Reviewed-by: joehw, dfuchs
2021-02-24 16:23:24 +00:00
Ichiroh Takiguchi
2c99bad082 8261920: [AIX] jshell command throws java.io.IOError on non English locales
Reviewed-by: stuefe
2021-02-24 13:13:57 +00:00
Zhengyu Gu
8c07063dae 8262259: Remove unused variable in MethodLiveness::BasicBlock::compute_gen_kill_single
Reviewed-by: stuefe, thartmann
2021-02-24 12:55:14 +00:00
Daniel Fuchs
0d2dbd2995 8262027: Improve how HttpConnection detects a closed channel when taking/returning a connection to the pool
Reviewed-by: chegar, michaelm
2021-02-24 10:50:35 +00:00
Eric Liu
382e38dd24 8256438: AArch64: Implement match rules with ROR shift register value
Reviewed-by: aph, roland
2021-02-24 09:49:53 +00:00
Jonathan Gibbons
fac37bf515 8262269: javadoc test TestGeneratedClasses.java fails on Windows
Reviewed-by: darcy
2021-02-24 03:50:25 +00:00
Yumin Qi
3e13b66e3f 8262157: LingeredApp.startAppExactJvmOpts does not print app output when launching fails
Reviewed-by: iklam, cjplummer
2021-02-24 00:31:57 +00:00
Daniel D. Daugherty
c769388d0f 8262266: JDK-8262049 fails validate-source
Reviewed-by: dholmes
2021-02-23 22:08:53 +00:00
Daniel D. Daugherty
03e781b470 8262265: ProblemList jdk/javadoc/doclet/testGeneratedClasses/TestGeneratedClasses.java on Windows
Reviewed-by: rriggs, bpb
2021-02-23 21:48:05 +00:00
Roman Kennke
c6eae06142 8262049: [TESTBUG] Fix TestReferenceRefersTo.java for Shenandoah IU mode
Reviewed-by: kbarrett, zgu
2021-02-23 21:43:53 +00:00
Joe Darcy
e5304b3a99 8253409: Double-rounding possibility in float fma
Reviewed-by: bpb
2021-02-23 19:42:05 +00:00
Jonathan Gibbons
3132b1c4b1 8261665: Clean up naming of StringContent and FixedStringContent
Reviewed-by: hannesw
2021-02-23 19:29:41 +00:00
Jonathan Gibbons
c30a90bb64 8261976: Normalize id's used by the standard doclet
Reviewed-by: hannesw
2021-02-23 18:55:13 +00:00
Jonathan Gibbons
53b15453d9 8223355: Redundant output by javadoc
Reviewed-by: hannesw
2021-02-23 18:27:23 +00:00
Doug Simon
d2b9c227e5 8262011: [JVMCI] allow printing to tty from unattached libgraal thread
Reviewed-by: kvn, never
2021-02-23 17:01:11 +00:00
Gerard Ziemski
0257caad38 8261397: Try Catch Method Failing to Work When Dividing An Integer By 0
Reviewed-by: stuefe, prr, dcubed, dholmes
2021-02-23 16:38:53 +00:00
Roland Westrelin
8a2f58907c 8260637: Shenandoah: assert(_base == Tuple) failure during C2 compilation
Reviewed-by: chagedorn, kvn
2021-02-23 16:35:15 +00:00
Thomas Schatzl
67762de627 8262197: JDK-8242032 uses wrong contains_reference() in assertion code
Reviewed-by: ayang, kbarrett
2021-02-23 15:55:07 +00:00
Robbin Ehn
9d9bedd051 8262094: Handshake timeout scaled wrong
Reviewed-by: dholmes, stefank
2021-02-23 12:55:16 +00:00
Doug Simon
29c72631ee 8252709: Enable JVMCI when building linux-aarch64 at Oracle
Reviewed-by: kvn
2021-02-23 10:38:57 +00:00
Albert Mingkun Yang
12f6ba0deb 8262087: Use atomic boolean type in G1FullGCAdjustTask
Reviewed-by: kbarrett, tschatzl
2021-02-23 09:27:57 +00:00
Hannes Wallnöfer
a5c4b9a6b0 8260223: Handling of unnamed package in javadoc pages
Reviewed-by: jjg
2021-02-23 08:42:51 +00:00
Ioi Lam
8cfea7c523 8261921: ClassListParser::current should be used only by main thread
Reviewed-by: dholmes, ccheung, coleenp
2021-02-23 03:11:47 +00:00
Weijun Wang
991f7c1303 8210373: Deadlock in libj2gss.so when loading "j2gss" and "net" libraries in parallel.
Reviewed-by: xuelei
2021-02-23 00:59:58 +00:00
Paul Sandoz
0217d699e0 8261975: Missing "classpath exception" in VectorSupport.java
Reviewed-by: mchung
2021-02-23 00:44:48 +00:00
Jie Fu
f2bde05e6f 8262097: Improve CompilerConfig ergonomics to fix a VM crash after JDK-8261229
Reviewed-by: iveresov, kvn
2021-02-22 23:43:28 +00:00
Chris Plummer
aea474c48d 8261269: When using clhsdb to "inspect" a java object, clhsdb prints "Oop for..." twice
Reviewed-by: sspitsyn, kevinw
2021-02-22 23:22:50 +00:00
Sergey Bylokhov
a7e2e80ff4 8260695: The java.awt.color.ICC_Profile#getData/getData(int) are not thread safe
Reviewed-by: azvegint, aivanov
2021-02-22 22:34:53 +00:00
Jamil Nimeh
a30fb4fc68 8255867: SignatureScheme JSSE property does not preserve ordering in handshake messages
Reviewed-by: xuelei
2021-02-22 22:18:11 +00:00
Evan Whelan
a86728850e 8211227: Inconsistent TLS protocol version in debug output
Reviewed-by: xuelei, rhalade
2021-02-22 21:12:04 +00:00
Zhengyu Gu
7b924d8a28 8261973: Shenandoah: Cleanup/simplify root verifier
Reviewed-by: rkennke
2021-02-22 19:13:38 +00:00
Clive Verghese
63f8fc87cd 8259662: Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
Reviewed-by: xuelei
2021-02-22 18:36:30 +00:00
Adam Farley
cf0019d964 8259942: Enable customizations in CompileJavaModules.gmk and Main.gmk
Reviewed-by: erikj, ihse
2021-02-22 17:16:29 +00:00
Joakim Nordström
a6a7e4398a 8242032: G1 region remembered sets may contain non-coarse level PRTs for already coarsened regions
Reviewed-by: ayang, tschatzl
2021-02-22 16:16:59 +00:00
Robbin Ehn
d7eebdac5d 8261391: ZGC crash - SEGV in RevokeOneBias::do_thread
Reviewed-by: eosterlund, dcubed, dholmes
2021-02-22 13:16:55 +00:00
Doug Lea
5b7b18c5bf 8259800: timeout in tck test testForkJoin(ForkJoinPool8Test)
Reviewed-by: martin, dholmes
2021-02-22 12:42:40 +00:00
Leo Korinth
419717ddae 8261803: Remove unused TaskTerminator in g1 full gc ref proc executor
Reviewed-by: ayang, tschatzl, sjohanss
2021-02-22 11:33:53 +00:00
Leo Korinth
011f5a5478 8261799: Remove unnecessary cast in psParallelCompact.hpp
Reviewed-by: ayang, stefank
2021-02-22 11:31:40 +00:00
Julia Boes
e9d7c07bda 8248318: Remove superfluous use of boxing in ObjectStreamClass
Reviewed-by: jlaskey, dfuchs, rriggs, chegar
2021-02-22 10:32:14 +00:00
Albert Mingkun Yang
6b7575bbb0 8228748: Remove GCLocker::_doing_gc
Reviewed-by: kbarrett, iwalulya, pliden, tschatzl
2021-02-22 10:10:53 +00:00
Roman Kennke
c20fb5db90 8261448: Preserve GC stack watermark across safepoints in StackWalk
Reviewed-by: eosterlund, stefank
2021-02-22 10:10:20 +00:00
Andrey Vershinin
26c1db901b 8254239: G1ConcurrentMark.hpp unnecessarily disables MSVC++ warning 4522.
Reviewed-by: iklam, kbarrett
2021-02-22 08:31:27 +00:00
Prasanta Sadhukhan
0c21dd053f 6206189: Graphics2D.clip specifies incorrectly that a 'null' is a valid value for this method
Reviewed-by: aivanov, kizune, azvegint
2021-02-22 04:46:33 +00:00
Yang Yi
2b55501519 8261949: fileStream::readln returns incorrect line string
Reviewed-by: dcubed, dholmes
2021-02-22 02:22:07 +00:00
Chris Plummer
539c80bfda 8261702: ClhsdbFindPC can fail due to PointerFinder incorrectly thinking an address is in a .so
Reviewed-by: ysuenaga, kevinw, sspitsyn
2021-02-21 18:59:02 +00:00
Joe Darcy
564011cff0 8261290: Improve error message for NumberFormatException on null input
Reviewed-by: attila, alanb
2021-02-21 18:43:26 +00:00
Chris Plummer
18188c2aa7 8261692: Bugs in clhsdb history support
Reviewed-by: amenkov, sspitsyn
2021-02-20 23:19:41 +00:00
Chris Plummer
0825bc5550 8261929: ClhsdbFindPC fails with java.lang.RuntimeException: 'In java stack' missing from stdout/stderr
Reviewed-by: amenkov, stuefe, sspitsyn
2021-02-20 20:48:00 +00:00
Chris Plummer
c2509ea9bc 8261857: serviceability/sa/ClhsdbPrintAll.java failed with "Test ERROR java.lang.RuntimeException: 'cannot be cast to' found in stdout"
Reviewed-by: sspitsyn
2021-02-20 20:46:57 +00:00
Alexander Zuev
2b00367e11 8261350: Create implementation for NSAccessibilityCheckBox protocol peer
Reviewed-by: pbansal
2021-02-20 05:39:44 +00:00
Kim Barrett
5a25cea541 8261998: Remove unused shared entry support from utilities/hashtable
Reviewed-by: coleenp, iklam
2021-02-20 03:02:27 +00:00
Joe Wang
475595847c 8262041: javax/xml/jaxp/unittest/common/prettyprint/PrettyPrintTest.java fails after JDK-8260858
Reviewed-by: lancea, naoto
2021-02-20 02:37:53 +00:00
Jie Fu
b10376bac1 8261938: ASN1Formatter.annotate should not return in the finally block
Reviewed-by: rriggs
2021-02-19 23:45:54 +00:00
Igor Veresov
977a21add8 8261225: TieredStopAtLevel should have no effect if TieredCompilation is disabled
Reviewed-by: kvn
2021-02-19 19:44:58 +00:00
Sandhya Viswanathan
c53acc2a89 8261542: X86 slice and unslice intrinsics for 256-bit byte/short vectors
Reviewed-by: kvn, neliasso
2021-02-19 18:10:56 +00:00
Daniel D. Daugherty
8b4fd77f60 8262042: ProblemList javax/xml/jaxp/unittest/common/prettyprint/PrettyPrintTest.java on Windows
Reviewed-by: joehw
2021-02-19 17:30:45 +00:00
Brian Burkhalter
7ffa1481c2 8247918: Clarify Reader.skip behavior for end of stream
Reviewed-by: rriggs, naoto
2021-02-19 17:21:11 +00:00
Naoto Sato
8a1c712c2e 8261728: SimpleDateFormat should link to DateTimeFormatter
Reviewed-by: bpb, rriggs, lancea, iris
2021-02-19 16:44:38 +00:00
Brian Burkhalter
851b2e31e1 6245663: (spec) File.renameTo(File) changes the file-system object, not the File instance
Reviewed-by: rriggs, naoto, alanb
2021-02-19 16:35:53 +00:00
Jonathan Gibbons
c4f17a3e1d 8257925: enable more support for nested inline tags
Reviewed-by: prappo, hannesw
2021-02-19 15:59:05 +00:00
Claes Redestad
433096a45e 8261744: Implement CharsetDecoder ASCII and latin-1 fast-paths
Reviewed-by: naoto, alanb
2021-02-19 15:05:25 +00:00
Christoph Langer
efbaedeb81 8262018: Wrong format in SAP copyright header of OsVersionTest
Reviewed-by: mdoerr
2021-02-19 14:44:53 +00:00
Zhengyu Gu
55463b0486 8261984: Shenandoah: Remove unused ShenandoahPushWorkerQueuesScope class
Reviewed-by: shade
2021-02-19 13:43:27 +00:00
Hamlin Li
a180a38618 8260694: (fc) Clarify FileChannel.transferFrom to better describe "no bytes available" case
Reviewed-by: alanb
2021-02-19 12:35:35 +00:00
Andrew Haley
1b0c36b05b 8261649: AArch64: Optimize LSE atomics in C++ code
Reviewed-by: adinn
2021-02-19 10:52:39 +00:00
Roberto Castañeda Lozano
61820b74dd 8259984: IGV: Crash when drawing control flow before GCM
Replace backward traversal in the IGV block formation algorithm by forward
traversal guided by node category information. This change addresses the
reported assertion failures, places block projection nodes together with their
predecessors, and gives a more natural block numbering.

Reviewed-by: chagedorn, neliasso
2021-02-19 08:18:32 +00:00
Thomas Stuefe
7e2c909ee1 8260485: Simplify and unify handler vectors in Posix signal code
Reviewed-by: dholmes, gziemski
2021-02-19 06:40:40 +00:00
Joe Wang
c99eeb0102 8260858: Implementation specific property xsltcIsStandalone for XSLTC Serializer
Reviewed-by: lancea, naoto
2021-02-19 06:34:21 +00:00
Thomas Stuefe
5caf686c80 8261644: NMT: Simplifications and cleanups
Reviewed-by: coleenp, zgu
2021-02-19 06:20:38 +00:00
Prasanta Sadhukhan
ed93bc9a01 8196301: java/awt/print/PrinterJob/Margins.java times out
Reviewed-by: prr
2021-02-19 05:03:21 +00:00
Kim Barrett
7e78c77713 8261905: Move implementation of OopStorage num_dead related functions
Reviewed-by: ayang, tschatzl
2021-02-19 02:50:22 +00:00
Calvin Cheung
78cde64800 8261860: Crash caused by lambda proxy class loaded in Shutdown hook
Reviewed-by: iklam, minqi
2021-02-19 02:40:03 +00:00
Chris Plummer
c158413e48 8261098: Add clhsdb "findsym" command
Reviewed-by: amenkov, sspitsyn
2021-02-19 00:58:28 +00:00
Alexey Semenyuk
0c31d5b9c5 8261977: Fix comment for getPrefixed() in canonicalize_md.c
Reviewed-by: alanb
2021-02-18 20:54:40 +00:00
Zhengyu Gu
9cf4f90d34 8261473: Shenandoah: Add breakpoint support
Reviewed-by: rkennke, shade
2021-02-18 18:32:01 +00:00
Joe Darcy
c4664e6446 8261940: Fix references to IOException in BigDecimal javadoc
Reviewed-by: alanb, chegar, iris, bpb
2021-02-18 17:52:30 +00:00
Amresh Sahu
0e9c5aedc8 8075909: [TEST_BUG] The regression-swing case failed as it does not have the 'Open' button when select 'subdir' folder with NimbusLAF
Reviewed-by: aivanov
2021-02-18 16:08:35 +00:00
Aleksey Shipilev
e9f3aab7f4 8261912: Code IfNode::fold_compares_helper more defensively
Reviewed-by: kvn, thartmann
2021-02-18 15:51:45 +00:00
Aleksey Shipilev
fd098e71a9 8261838: Shenandoah: reconsider heap region iterators memory ordering
Reviewed-by: rkennke
2021-02-18 15:50:40 +00:00
Zhengyu Gu
f94a845287 8261600: NMT: Relax memory order for updating MemoryCounter and fix racy updating of peak values
Reviewed-by: dholmes, shade
2021-02-18 13:30:46 +00:00
Leo Korinth
1a7adc8642 8260416: Remove unused method ReferenceProcessor::is_mt_processing_set_up()
Reviewed-by: ayang, kbarrett
2021-02-18 11:43:49 +00:00
Nils Eliasson
3a21e1df70 8260653: Unreachable nodes keep speculative types alive
Reviewed-by: vlivanov, thartmann
2021-02-18 10:22:20 +00:00
Aleksey Shipilev
b695c7eed4 8261925: ProblemList com/sun/jdi/AfterThreadDeathTest.java on Linux
Reviewed-by: dcubed
2021-02-18 06:51:03 +00:00
Tom Rodriguez
97e1657ba2 8261846: [JVMCI] c2v_iterateFrames can get out of sync with the StackFrameStream
Reviewed-by: kvn
2021-02-18 06:35:42 +00:00
Calvin Cheung
b8fd61420c 8261939: os::strdup_check_oom() should be used in os::same_files() in os_windows.cpp
Reviewed-by: minqi
2021-02-18 04:40:20 +00:00
Calvin Cheung
5f308291a0 8202750: Reduce the use of get_canonical_path() in CDS
Reviewed-by: minqi, iklam
2021-02-18 02:51:24 +00:00
Naoto Sato
ea5bf45c6f 8261621: Delegate Unicode history from JLS to j.l.Character
Reviewed-by: bpb, joehw, rriggs, darcy
2021-02-17 22:10:27 +00:00
Magnus Ihse Bursie
d5a4d2266b 8261843: incorrect info in docs/building.html
Reviewed-by: erikj
2021-02-17 17:40:11 +00:00
Mandy Chung
bf75a3a024 8261851: update ReflectionCallerCacheTest.java test to use ForceGC from test library
Reviewed-by: alanb
2021-02-17 17:34:58 +00:00
Hai-May Chao
05301f5fd2 8257497: Update keytool to create AKID from the SKID of the issuing certificate as specified by RFC 5280
Reviewed-by: coffeys, mullan, weijun
2021-02-17 16:38:56 +00:00
Jatin Bhateja
cb84539d56 8261553: Efficient mask generation using BMI2 BZHI instruction
Reviewed-by: redestad, neliasso
2021-02-17 14:09:45 +00:00
Matthias Baesken
a0658795cf 8261791: (sctp) handleSendFailed in SctpChannelImpl.c potential leaks
Reviewed-by: chegar, alanb
2021-02-17 13:49:30 +00:00
Martin Doerr
9ba2b71a61 8261657: [PPC64] Cleanup StoreCM nodes after CMS removal
Reviewed-by: lucy, goetz
2021-02-17 13:11:29 +00:00
Stefan Johansson
f639df435e 8261401: Add sanity check for UseSHM large pages similar to the one used with hugetlb large pages
Reviewed-by: stuefe, tschatzl
2021-02-17 12:03:25 +00:00
Christoph Göttschkes
2e18b52aed 8261752: Multiple GC test are missing memory requirements
Reviewed-by: tschatzl, sjohanss
2021-02-17 10:41:38 +00:00
Christoph Göttschkes
c7885eb1c5 8261758: [TESTBUG] gc/g1/TestGCLogMessages.java fails if ergonomics detect too small InitialHeapSize
Reviewed-by: tschatzl, sjohanss
2021-02-17 10:40:46 +00:00
Martin Doerr
05d5955638 8261522: [PPC64] AES intrinsics write beyond the destination array
Reviewed-by: lucy
2021-02-17 10:27:07 +00:00
Julia Boes
03b586b32c 8261750: Remove internal class sun.net.www.MimeLauncher
Reviewed-by: alanb, dfuchs
2021-02-17 10:07:15 +00:00
Christian Hagedorn
8418285530 8261235: C1 compilation fails with assert(res->vreg_number() == index) failed: conversion check
Reviewed-by: thartmann, kvn
2021-02-17 09:00:39 +00:00
Thomas Schatzl
a9308705ff 8261309: Remove remaining StoreLoad barrier with UseCondCardMark for Serial/Parallel GC
Reviewed-by: shade, ayang, sjohanss
2021-02-17 08:50:06 +00:00
Anton Kozlov
b955f85e03 8261075: Create stubRoutines.inline.hpp with SafeFetch implementation
Reviewed-by: dcubed, stuefe, stefank
2021-02-17 08:10:32 +00:00
Aleksey Shipilev
d19503353e 8261842: Shenandoah: cleanup ShenandoahHeapRegionSet
Reviewed-by: rkennke
2021-02-17 06:57:25 +00:00
Ioi Lam
fc1d0321dd 8261125: Move VM_Operation to vmOperation.hpp
Reviewed-by: coleenp, stuefe
2021-02-17 05:53:06 +00:00
Joe Darcy
d547e1a847 8261123: Augment discussion of equivalence classes in Object.equals and comparison methods
Reviewed-by: bpb, smarks, rriggs
2021-02-17 01:08:39 +00:00
Xin Liu
2677f6f47d 8261675: ObjectValue::set_visited(bool) sets _visited false
Reviewed-by: kvn
2021-02-17 00:24:35 +00:00
Chris Plummer
e7e20d4ec6 8261711: Clhsdb "versioncheck true" throws NPE every time
Reviewed-by: amenkov, sspitsyn
2021-02-16 22:32:10 +00:00
Chris Plummer
55d7bbcec0 8261607: SA attach is exceeding JNI Local Refs capacity
Reviewed-by: sgehwolf, amenkov
2021-02-16 21:16:55 +00:00
Fernando Guallini
0a50688dec 8241372: Several test failures due to javax.net.ssl.SSLException: Connection reset
Reviewed-by: dfuchs, rhalade
2021-02-16 18:54:39 +00:00
Leo Korinth
61a659f4bf 8260415: Remove unused class ReferenceProcessorMTProcMutator
Reviewed-by: ayang, sjohanss
2021-02-16 18:29:41 +00:00
Jamil Nimeh
6b6f794051 8248223: KeyAgreement spec update on multi-party key exchange support
Reviewed-by: mullan
2021-02-16 17:40:29 +00:00
Christoph Langer
8ba390d1e2 8261753: Test java/lang/System/OsVersionTest.java still failing on BigSur patch versions after JDK-8253702
Reviewed-by: rriggs
2021-02-16 12:57:59 +00:00
Roberto Castañeda Lozano
16bd7d381f 8261336: IGV: enhance default filters
Add filters to color and hide parts of the graph based on node categories or
estimated execution frequency, and simplify remaining filters.

Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Reviewed-by: vlivanov, chagedorn, thartmann
2021-02-16 12:47:56 +00:00
Aleksey Shipilev
3f8819c666 8261501: Shenandoah: reconsider heap statistics memory ordering
Reviewed-by: rkennke
2021-02-16 10:31:40 +00:00
Albert Mingkun Yang
3cbd16de3d 8259668: Make SubTasksDone use-once
Reviewed-by: tschatzl, kbarrett
2021-02-16 08:46:58 +00:00
Matthias Baesken
219b115e21 8261422: Adjust problematic String.format calls in jdk/internal/util/Preconditions.java outOfBoundsMessage
Reviewed-by: clanger
2021-02-16 08:44:08 +00:00
Matthias Baesken
cdc874d4c9 8261601: free memory in early return in Java_sun_nio_ch_sctp_SctpChannelImpl_receive0
Reviewed-by: clanger, dfuchs, bpb
2021-02-16 08:40:14 +00:00
Roman Kennke
e2d52ae265 8261413: Shenandoah: Disable class-unloading in I-U mode
Reviewed-by: shade, zgu
2021-02-16 08:17:32 +00:00
Jonathan Gibbons
34ae7aeb64 8261609: remove remnants of XML-driven builders
Reviewed-by: hannesw
2021-02-15 20:27:06 +00:00
Alexander Zuev
6badd22e66 8261351: Create implementation for NSAccessibilityRadioButton protocol
Reviewed-by: pbansal
2021-02-15 19:03:48 +00:00
Pankaj Bansal
849f4c0fb7 8260291: The case instruction is not visible in dark mode
Reviewed-by: trebari, aivanov
2021-02-15 16:43:49 +00:00
Stanimir Stamenkov
2e610f53c1 8260687: Inherited font size is smaller than expected when using StyleSheet to add styles
Co-authored-by: Alexey Ivanov <aivanov@openjdk.org>
Reviewed-by: psadhukhan, aivanov, kizune
2021-02-15 16:16:50 +00:00
Leo Korinth
3882fda83b 8260414: Remove unused set_single_threaded_mode() method in task executor
Reviewed-by: kbarrett, ayang
2021-02-15 08:52:47 +00:00
Aleksey Shipilev
c6eedda89e 8261500: Shenandoah: reconsider region live data memory ordering
Reviewed-by: zgu
2021-02-15 08:44:20 +00:00
Aleksey Shipilev
df0897ea57 8261504: Shenandoah: reconsider ShenandoahJavaThreadsIterator::claim memory ordering
Reviewed-by: zgu
2021-02-15 08:43:42 +00:00
Aleksey Shipilev
745c0b9140 8261493: Shenandoah: reconsider bitmap access memory ordering
Reviewed-by: rkennke, zgu
2021-02-15 08:43:05 +00:00
Aleksey Shipilev
4642730b05 8261496: Shenandoah: reconsider pacing updates memory ordering
Reviewed-by: zgu
2021-02-15 08:42:28 +00:00
Aleksey Shipilev
7c93159169 8261503: Shenandoah: reconsider verifier memory ordering
Reviewed-by: zgu
2021-02-15 08:41:28 +00:00
Ioi Lam
d9744f6536 8261608: Move common CDS archive building code to archiveBuilder.cpp
Reviewed-by: coleenp, ccheung
2021-02-15 06:37:39 +00:00
Ioi Lam
235da6aa04 8261672: Reduce inclusion of classLoaderData.hpp
Reviewed-by: lfoltan, coleenp
2021-02-13 07:13:22 +00:00
Hui Shi
95d73129ce 8261585: Restore HandleArea used in Deoptimization::uncommon_trap
Reviewed-by: coleenp, jiefu
2021-02-13 02:47:33 +00:00
Jaikiran Pai
849390a11e 8260401: StackOverflowError on open WindowsPreferences
Reviewed-by: bpb
2021-02-13 02:14:32 +00:00
Daniel D. Daugherty
735757f1e0 8261661: gc/stress/TestReclaimStringsLeaksMemory.java fails because Reserved memory size is too big
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Reviewed-by: ayang, kbarrett
2021-02-12 22:41:08 +00:00
Chris Plummer
e29c560a11 8247514: Improve clhsdb 'findpc' ability to determine what an address points to by improving PointerFinder and PointerLocation classes
Reviewed-by: ysuenaga, kevinw
2021-02-12 22:01:43 +00:00
Christoph Langer
dc46aa85c6 8261534: Test sun/security/pkcs11/KeyAgreement/IllegalPackageAccess.java fails on platforms where no nsslib artifacts are defined
Reviewed-by: mbaesken
2021-02-12 20:58:22 +00:00
Phil Race
f0d9829b68 8261533: Java_sun_font_CFont_getCascadeList leaks memory according to Xcode
Reviewed-by: serb
2021-02-12 18:42:07 +00:00
Coleen Phillimore
06170b7cbf 8261662: Rename compute_loader_lock_object
Reviewed-by: dcubed, stuefe
2021-02-12 17:45:47 +00:00
Chris Hegarty
3dc6f52a89 8261160: Add a deserialization JFR event
Co-authored-by: Sean Coffey <coffeys@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: coffeys, rriggs, dfuchs, egahlin
2021-02-12 17:35:25 +00:00
Andrew Haley
a305743cfa 8261660: AArch64: Race condition in stub code generation for LSE Atomics
Reviewed-by: dcubed, adinn
2021-02-12 17:34:29 +00:00
Vladimir Kempik
28163a9e98 8261652: Remove some dead comments from os_bsd_x86
Reviewed-by: dcubed
2021-02-12 17:10:21 +00:00
Roger Riggs
66757750a2 8253702: BigSur version number reported as 10.16, should be 11.nn
Reviewed-by: bpb, kcr
2021-02-12 16:42:13 +00:00
Daniel D. Daugherty
33fcd325f6 8261659: JDK-8261027 causes a Tier1 validate-source failure
Reviewed-by: iignatyev, bpb
2021-02-12 16:17:16 +00:00
Jonathan Gibbons
3aa1b4c72c 8261623: reference to javac internals in Extern class
Reviewed-by: hannesw
2021-02-12 16:16:44 +00:00
Ian Graves
350303d4f0 8260221: java.util.Formatter throws wrong exception for mismatched flags in %% conversion
Reviewed-by: smarks
2021-02-12 16:06:39 +00:00
Martin Doerr
6475d4774f 8261655: [PPC64] Build broken after JDK-8260941
Reviewed-by: shade, clanger
2021-02-12 15:46:37 +00:00
Hannes Wallnöfer
c0e805a475 8261654: Missing license header in Signatures.java
Reviewed-by: jjg
2021-02-12 15:44:15 +00:00
Anton Kozlov
b670efd896 8261072: AArch64: Fix MacroAssembler::get_thread convention
Reviewed-by: burban, aph
2021-02-12 15:11:21 +00:00
Weijun Wang
59b8d595d2 8261481: Cannot read Kerberos settings in dynamic store on macOS Big Sur
Reviewed-by: mullan
2021-02-12 14:57:01 +00:00
Stefan Johansson
9f81ca8175 8261230: GC tracing of page sizes are wrong in a few places
Reviewed-by: ayang, stuefe
2021-02-12 14:56:25 +00:00
Andrew Haley
40ae9937a0 8261027: AArch64: Support for LSE atomics C++ HotSpot code
Reviewed-by: adinn, simonis
2021-02-12 13:12:02 +00:00
Michael McMahon
9ffabf30c3 8252971: WindowsFileAttributes does not know about Unix domain sockets
Reviewed-by: alanb
2021-02-12 13:08:08 +00:00
Anton Kozlov
682e78e89b 8261071: AArch64: Refactor interpreter native wrappers
Reviewed-by: aph
2021-02-12 10:27:47 +00:00
Christoph Göttschkes
ebaa58d9c0 8261505: Test test/hotspot/jtreg/gc/parallel/TestDynShrinkHeap.java killed by Linux OOM Killer
Reviewed-by: sjohanss, tschatzl
2021-02-12 09:41:49 +00:00
Hannes Wallnöfer
3210095a17 8261079: Fix support for @hidden in classes and interfaces
Reviewed-by: jjg
2021-02-12 09:26:42 +00:00
Thomas Schatzl
9c0ec8d848 8260941: Remove the conc_scan parameter for CardTable
Reviewed-by: ayang, kbarrett
2021-02-12 08:41:33 +00:00
Hannes Wallnöfer
da9895a0a4 8261499: Simplify HTML for javadoc links
Reviewed-by: jjg
2021-02-12 08:32:47 +00:00
Hannes Wallnöfer
0779addeb7 8255059: Regressions >5% in all Javadoc benchmarks in 16-b19
Reviewed-by: jjg
2021-02-12 08:27:52 +00:00
Kim Barrett
6a84ec68c3 8260044: Parallel GC: Concurrent allocation after heap expansion may cause unnecessary full gc
8260045: Parallel GC: Waiting on ExpandHeap_lock may cause "expansion storm"

Loop to retry allocation if expand succeeds.  Treat space available after obtaining expand lock as expand success.

Reviewed-by: tschatzl, iwalulya, sjohanss
2021-02-12 08:19:08 +00:00
Matthias Baesken
92ff891877 8261593: Do not use NULL pointer as write buffer parameter in jfrEmergencyDump.cpp write_repository_files
Reviewed-by: stuefe, mgronlun
2021-02-12 07:50:28 +00:00
Alex Menkov
60a2072a43 8260431: com/sun/jdi/JdbOptions.java failed with "RuntimeException: 'prop[boo] = >foo<' missing from stdout/stderr"
Reviewed-by: sspitsyn, cjplummer
2021-02-11 23:31:37 +00:00
Sergey Bylokhov
bf47a479b9 8261282: Lazy initialization of built-in ICC_Profile/ColorSpace classes is too lazy
Reviewed-by: azvegint
2021-02-11 22:05:12 +00:00
John Jiang
f4cfd75834 8261510: Use RFC numbers and protocol titles in sun.security.ssl.SSLExtension comments
Reviewed-by: wetmore, xuelei
2021-02-11 18:25:31 +00:00
Daniel D. Daugherty
75c8489ce8 8261604: ProblemList jdk/dynalink/TypeConverterFactoryMemoryLeakTest.java
Reviewed-by: hseigel
2021-02-11 18:10:42 +00:00
Thomas Stuefe
1740de2a0d 8261297: NMT: Final report should use scale 1
Reviewed-by: zgu
2021-02-11 14:58:57 +00:00
Yasumasa Suenaga
c342323c7a 8261431: SA: Add comments about load address of executable
Reviewed-by: sspitsyn, kevinw
2021-02-11 14:58:03 +00:00
Zhengyu Gu
4a72cea019 8261509: Move per-thread StackWatermark from Thread to JavaThread class
Reviewed-by: eosterlund
2021-02-11 14:02:24 +00:00
Stefan Johansson
eef86a80f8 8261029: Code heap page sizes not traced correctly using os::trace_page_sizes
Reviewed-by: kvn, stuefe, thartmann
2021-02-11 13:10:37 +00:00
Christian Hagedorn
0a89987a96 8240281: Remove failing assertion code when selecting first memory state in SuperWord::co_locate_pack
Reviewed-by: roland, kvn, thartmann
2021-02-11 13:00:10 +00:00
Aleksey Shipilev
9fed6048a2 8261300: jpackage: rewrite while(0)/while(false) to proper blocks
Reviewed-by: herrick, asemenyuk, almatvee
2021-02-11 11:57:45 +00:00
Claes Redestad
8b6ab31d31 8261418: Reduce decoder creation overheads for sun.nio.cs.ext Charsets
Reviewed-by: naoto
2021-02-11 10:43:56 +00:00
Claes Redestad
5e1b8092d2 8261444: Remove unused fields in Lower
Reviewed-by: vromero
2021-02-11 10:41:59 +00:00
Vladimir Ivanov
a9c36805c4 8261250: Dependencies: Remove unused dependency types
Reviewed-by: kvn, thartmann
2021-02-11 10:16:37 +00:00
Vladimir Ivanov
3ede231dec 8259430: C2: assert(in_vt->length() == out_vt->length()) failed: mismatch on number of elements
Reviewed-by: kvn, thartmann
2021-02-11 10:16:09 +00:00
Patrick Concannon
1662373400 8235139: Deprecate the socket impl factory mechanism
Reviewed-by: dfuchs, alanb, chegar
2021-02-11 10:00:31 +00:00
Aleksey Shipilev
49cf13d2fb 8261449: Micro-optimize JVM_LatestUserDefinedLoader
Reviewed-by: dholmes, stuefe, alanb
2021-02-11 08:53:21 +00:00
Thomas Stuefe
837bd8930d 8261548: ProblemList runtime/NMT/CheckForProperDetailStackTrace.java
Reviewed-by: jwilhelm
2021-02-11 05:31:11 +00:00
Ioi Lam
adca84cc29 8260341: CDS dump VM init code does not check exceptions
Reviewed-by: coleenp, hseigel
2021-02-11 05:11:48 +00:00
Sergey Bylokhov
447db62762 6211198: ICC_Profile.getInstance(byte[]): IAE is not specified
Reviewed-by: prr, pbansal
2021-02-10 23:57:32 +00:00
Alex Menkov
cc5691c69e 8248162: serviceability/attach/RemovingUnixDomainSocketTest.java failed
Reviewed-by: cjplummer, sspitsyn
2021-02-10 22:17:48 +00:00
Prasanta Sadhukhan
40754f12f7 4841153: java.awt.geom.Rectangle2D.add(double,double) documented incorrectly
Reviewed-by: prr
2021-02-10 17:26:28 +00:00
Phil Race
4caeb39f01 8260380: Upgrade to LittleCMS 2.12
Reviewed-by: jdv, serb
2021-02-10 16:33:56 +00:00
Aleksey Shipilev
a7726390cc 8261298: LinuxPackage.c, getJvmLauncherLibPath RPM->DEB typo
Reviewed-by: asemenyuk, almatvee, herrick
2021-02-10 15:08:34 +00:00
Coleen Phillimore
52fc01b3ee 8261268: LOAD_INSTANCE placeholders unneeded for parallelCapable class loaders
Reviewed-by: dholmes, iklam
2021-02-10 12:33:47 +00:00
Thomas Stuefe
a3d6e37153 8261302: NMT: Improve malloc site table hashing
Reviewed-by: zgu, lucy
2021-02-10 07:46:17 +00:00
Aleksey Shipilev
ad54d8dd83 8260934: java/lang/StringBuilder/HugeCapacity.java fails without Compact Strings
Reviewed-by: iklam
2021-02-10 07:32:53 +00:00
Prasanta Sadhukhan
752f92bc10 6211242: AreaAveragingScaleFilter(int, int): IAE is not specified
Reviewed-by: azvegint, trebari, serb
2021-02-10 07:24:29 +00:00
Prasanta Sadhukhan
3af334a5c7 6211257: BasicStroke.createStrokedShape(Shape): NPE is not specified
Reviewed-by: serb, prr, aivanov
2021-02-10 07:22:44 +00:00
Weijun Wang
4619f372ae 8261472: BasicConstraintsExtension::toString shows "PathLen:2147483647" if there is no pathLenConstraint
Reviewed-by: jnimeh
2021-02-10 01:59:41 +00:00
Alexey Semenyuk
699a3cde74 8223188: Removed unnecessary #ifdef __cplusplus from .cpp sources
Reviewed-by: herrick, almatvee, iklam
2021-02-09 22:20:43 +00:00
Erik Joelsson
05c6009eab 8259656: fixpath.sh changes broke _NT_SYMBOL_PATH in RunTests.gmk
Reviewed-by: tbell, ihse
2021-02-09 19:08:45 +00:00
Rajan Halade
ef7ee3f44e 8225081: Remove Telia Company CA certificate expiring in April 2021
Reviewed-by: mullan
2021-02-09 17:56:35 +00:00
Joe Wang
7c565f8b37 8261209: isStandalone property: remove dependency on pretty-print
Reviewed-by: lancea, naoto
2021-02-09 17:50:25 +00:00
Aleksey Shipilev
01d928080a 8261299: Use-after-free on failure path in LinuxPackage.c, getJvmLauncherLibPath
Reviewed-by: stuefe, herrick
2021-02-09 17:46:18 +00:00
Albert Mingkun Yang
a00b13055a 8261356: Clean up enum G1Mark
Reviewed-by: sjohanss, tschatzl
2021-02-09 17:38:59 +00:00
Naoto Sato
becee6435b 8261279: sun/util/resources/cldr/TimeZoneNamesTest.java timed out
Reviewed-by: bpb, lancea, joehw
2021-02-09 17:09:21 +00:00
Brian Burkhalter
f395ee0c76 8261306: ServiceLoader documentation has malformed Unicode escape
Reviewed-by: lancea, iris, naoto
2021-02-09 16:43:36 +00:00
Attila Szegedi
8f4c15f641 8198540: Dynalink leaks memory when generating type converters
Reviewed-by: plevart, hannesw
2021-02-09 16:06:49 +00:00
Ian Graves
edd5fc883a 8261096: Convert jlink tool to use Stream.toList()
Reviewed-by: alanb, smarks
2021-02-09 15:42:59 +00:00
Claes Redestad
2f893c2b83 8260337: Optimize ImageReader lookup, used by Class.getResource
Reviewed-by: jlaskey, sundar
2021-02-09 15:32:36 +00:00
Markus Grönlund
f0bd9db5c7 8257569: Failure observed with JfrVirtualMemory::initialize
Reviewed-by: egahlin, poonam
2021-02-09 15:16:44 +00:00
Quaffel
906facabad 8260372: [PPC64] Add support for JDK-8210498 and JDK-8222841
Reviewed-by: mdoerr, goetz
2021-02-09 14:24:44 +00:00
Harold Seigel
b38d5be887 8261340: Fix 'deprecated' warnings in the vmTestbase/nsk tests
Reviewed-by: lfoltan, sspitsyn
2021-02-09 13:16:26 +00:00
Hannes Wallnöfer
b0e7e5abde 8261263: Simplify javadoc link code
Reviewed-by: jjg
2021-02-09 13:07:35 +00:00
Matthias Baesken
8ebed28403 8261237: remove isClassPathAttributePresent method
Reviewed-by: shade, clanger, redestad, alanb
2021-02-09 11:18:49 +00:00
Nick Gasson
5183d8ae1e 8260355: AArch64: deoptimization stub should save vector registers
Reviewed-by: vlivanov, aph
2021-02-09 01:49:52 +00:00
Sergey Bylokhov
5d8204b169 8261368: The new TestNullSetColor test is placed in the wrong group
Reviewed-by: kizune
2021-02-09 00:01:32 +00:00
David Holmes
f03e839e48 8261127: Cleanup THREAD/TRAPS/CHECK usage in CDS code
Reviewed-by: iklam, coleenp
2021-02-08 23:16:47 +00:00
Brian Burkhalter
7451962849 8129776: The optimized Stream returned from Files.lines should unmap the mapped byte buffer (if created) when closed
Reviewed-by: rriggs, psandoz, alanb
2021-02-08 22:18:00 +00:00
Alexey Semenyuk
ad525bcd38 8261281: Linking jdk.jpackage fails for linux aarch32 builds after 8254702
Reviewed-by: erikj
2021-02-08 22:05:02 +00:00
Joe Darcy
2fd8ed024b 8240632: Note differences between IEEE 754-2019 math lib special cases and java.lang.Math
Reviewed-by: bpb
2021-02-08 21:50:55 +00:00
Coleen Phillimore
ace8f94616 8195744: Avoid calling ClassLoader.checkPackageAccess if security manager is not installed
Reviewed-by: dholmes, iklam
2021-02-08 21:31:25 +00:00
Erik Joelsson
ab65d53edf 8261261: The version extra fields needs to be overridable in jib-profiles.js
Reviewed-by: ihse
2021-02-08 19:23:46 +00:00
Thomas Stuefe
20d7713c57 8261334: NMT: tuning statistic shows incorrect hash distribution
Reviewed-by: zgu, shade
2021-02-08 18:46:18 +00:00
Claes Redestad
92c6e6dffa 8261254: Initialize charset mapping data lazily
Reviewed-by: alanb, jkuhn, naoto
2021-02-08 18:45:43 +00:00
Martin Buchholz
351d788809 8259074: regex benchmarks and tests
Reviewed-by: redestad
2021-02-08 18:09:59 +00:00
Dmitry Markov
d6d5d9bf2f 8261231: Windows IME was disabled after DnD operation
Reviewed-by: kizune, serb
2021-02-08 17:09:09 +00:00
Igor Veresov
29a428f5ea 8261229: MethodData is not correctly initialized with TieredStopAtLevel=3
Reviewed-by: thartmann
2021-02-08 17:08:36 +00:00
Matthias Perktold
48c932e1f1 8231286: HTML font size too large with high-DPI scaling and W3C_LENGTH_UNITS
Reviewed-by: aivanov, psadhukhan
2021-02-08 14:32:07 +00:00
Alexey Ivanov
dbc35f607a 8261094: Open javax/swing/text/html/CSS/4765271/bug4765271.java
Reviewed-by: serb, psadhukhan, kizune
2021-02-08 14:31:34 +00:00
Harold Seigel
db0ca2b9d4 8261161: Clean up warnings in hotspot/jtreg/vmTestbase tests
Reviewed-by: lfoltan, coleenp
2021-02-08 13:19:40 +00:00
Daniel Fuchs
2c28e36454 8237352: Update DatagramSocket to add support for joining multicast groups
Reviewed-by: alanb
2021-02-08 12:55:00 +00:00
Jan Lahoda
d0a8f2f737 8260593: javac can skip a temporary local variable when pattern matching over a local variable
Reviewed-by: vromero
2021-02-08 09:36:29 +00:00
Roman Kennke
deb0544ff3 8261251: Shenandoah: Use object size for full GC humongous compaction
Reviewed-by: aph, shade
2021-02-08 08:01:35 +00:00
Aleksey Shipilev
d45343ea51 8260899: ARM32: SyncOnValueBasedClassTest fails with assert(is_valid()) failed: invalid register
Reviewed-by: dsamersoff
2021-02-08 07:29:40 +00:00
Yasumasa Suenaga
9d59dec200 8248876: LoadObject with bad base address created for exec file on linux
Reviewed-by: cjplummer, kevinw
2021-02-08 02:34:01 +00:00
Dong Bo
aa5bc6edb3 8258953: AArch64: move NEON instructions to aarch64_neon.ad
Reviewed-by: njian, aph
2021-02-08 02:12:29 +00:00
Ioi Lam
c5ff454481 8250989: Consolidate buffer allocation code for CDS static/dynamic dumping
Reviewed-by: ccheung, coleenp
2021-02-07 07:10:38 +00:00
Igor Veresov
0e18634b6a 8261270: MakeMethodNotCompilableTest fails with -XX:TieredStopAtLevel={1,2,3}
Reviewed-by: kvn
2021-02-07 02:24:15 +00:00
Pengfei Li
7a2db858e0 8261022: Fix incorrect result of Math.abs() with char type
Reviewed-by: thartmann, neliasso
2021-02-07 01:15:24 +00:00
Coleen Phillimore
2c3a86f96e 8261280: Remove THREAD argument from compute_loader_lock_object
Reviewed-by: dcubed
2021-02-06 16:35:30 +00:00
Sergey Bylokhov
74d40ab72f 8261200: Some code in the ICC_Profile may not close file streams properly
Reviewed-by: azvegint
2021-02-06 03:38:58 +00:00
Jesper Wilhelmsson
d7acfae3d2 Merge 2021-02-06 00:29:45 +00:00
Ivan Šipka
fb46d4e578 8259268: Refactor InheritIO shell test as java test
Reviewed-by: iignatyev, rriggs
2021-02-06 00:05:42 +00:00
Alexander Zuev
440db35e8f 8216358: [accessibility] [macos] The focus is invisible when tab to "Image Radio Buttons" and "Image CheckBoxes"
Reviewed-by: serb, pbansal
2021-02-05 22:27:41 +00:00
Alexey Semenyuk
fac3c2d258 8254702: jpackage app launcher crashes on CentOS
Reviewed-by: almatvee, erikj, herrick
2021-02-05 20:44:34 +00:00
Zhengyu Gu
7a6c176845 8260736: Shenandoah: Cleanup includes in ShenandoahGC and families
Reviewed-by: shade, rkennke
2021-02-05 19:30:14 +00:00
Phil Race
4a89733e70 8261198: [macOS] Incorrect JNI parameters in number conversion in A11Y code
Reviewed-by: serb, psadhukhan
2021-02-05 19:19:10 +00:00
Naoto Sato
4a1814cbf0 8261179: Norwegian Bokmål Locale fallback issue
Reviewed-by: joehw
2021-02-05 18:15:40 +00:00
Calvin Cheung
0218917109 8258732: runtime/cds/appcds/dynamicArchive/DynamicArchiveRelocationTest.java fails
Reviewed-by: minqi, iklam
2021-02-05 17:23:48 +00:00
Coleen Phillimore
f9df366255 8242300: SystemDictionary::resolve_super_or_fail() should look for the super class first
Reviewed-by: iklam, ccheung
2021-02-05 15:49:49 +00:00
Matthias Baesken
43ae0cf878 8261167: print_process_memory_info add a close call after fopen
Reviewed-by: stuefe, dholmes
2021-02-05 13:37:44 +00:00
Martin Doerr
48f5220c80 8260369: [PPC64] Add support for JDK-8200555
Reviewed-by: lucy
2021-02-05 12:58:23 +00:00
Kim Barrett
224c166c30 8261213: [BACKOUT] MutableSpace's end should be atomic
Reviewed-by: tschatzl, ayang
2021-02-05 10:18:51 +00:00
Roland Westrelin
3495febf51 8260296: SA's dumpreplaydata fails
Reviewed-by: kvn, cjplummer, iignatyev
2021-02-05 09:33:54 +00:00
Claes Redestad
07918995da 8261154: Memory leak in Java_java_lang_ClassLoader_defineClass0 with long class names
Reviewed-by: stuefe, chegar, mchung
2021-02-05 08:58:32 +00:00
Thomas Schatzl
78b0d32742 8234534: Simplify CardTable code after CMS removal
Reviewed-by: ayang, kbarrett
2021-02-05 08:33:32 +00:00
Thomas Stuefe
ee2f205529 8260926: Trace resource exhausted events unconditionally
Reviewed-by: dholmes, coleenp
2021-02-05 07:31:06 +00:00
Kim Barrett
1e0a1013ef 8259862: MutableSpace's end should be atomic
Make _end volatile and use atomic access

Reviewed-by: ayang, tschatzl
2021-02-05 07:24:09 +00:00
Fernando Guallini
d2bd499222 8163498: Many long-running security libs tests
Reviewed-by: rhalade, weijun
2021-02-05 05:22:51 +00:00
Ioi Lam
c5bb109272 8260019: Move some Thread subtypes out of thread.hpp
Reviewed-by: dholmes, coleenp
2021-02-05 03:02:11 +00:00
Daniel D. Daugherty
08f7454fa9 8261190: restore original Alibaba copyright line in two files
Reviewed-by: dholmes
2021-02-04 23:08:15 +00:00
Phil Race
3bb6a3d2ab 8261109: [macOS] Remove disabled warning for JNF in make/autoconf/flags-cflags.m4
Reviewed-by: serb, ihse, erikj
2021-02-04 21:00:18 +00:00
Ioi Lam
c59e4b66bb 8261106: Reduce inclusion of jniHandles.hpp
Reviewed-by: coleenp, hseigel
2021-02-04 19:05:38 +00:00
Kiran Sidhartha Ravikumar
d9aefa36ac 8260356: (tz) Upgrade time-zone data to tzdata2021a
Reviewed-by: naoto
2021-02-04 17:49:07 +00:00
Andy Herrick
bdcbfa10ce 8259927: Windows jpackage installer issues
Reviewed-by: asemenyuk, almatvee, kizune
2021-02-04 17:48:36 +00:00
Erik Gahlin
e93e1e1c7b 8261157: Incorrect GPL header after JDK-8259956
Reviewed-by: mgronlun
2021-02-04 17:01:45 +00:00
Roland Westrelin
4de3a6be9e 8260709: C2: assert(false) failed: unscheduable graph
Reviewed-by: thartmann, chagedorn
2021-02-04 15:11:25 +00:00
Andy Herrick
c1dea39d08 8260335: [macos] Running app using relative path causes problems
Reviewed-by: almatvee, kizune
2021-02-04 14:50:54 +00:00
Magnus Ihse Bursie
f7a6cff983 8261149: Initial nroff manpage update for JDK 17
Reviewed-by: dholmes, erikj
2021-02-04 14:37:33 +00:00
Thomas Schatzl
be772ffaf3 8261023: Document why memory pretouch must be a store
Reviewed-by: shade, iwalulya
2021-02-04 13:47:51 +00:00
Claes Redestad
83357b1196 8261030: Avoid loading GenerateJLIClassesHelper at runtime
Reviewed-by: mchung
2021-02-04 10:47:03 +00:00
Claes Redestad
992b50087d 8261036: Reduce classes loaded by CleanerFactory initialization
Reviewed-by: rriggs
2021-02-04 10:46:10 +00:00
Denghui Dong
e8ad8b3504 8259956: jdk.jfr.internal.ChunkInputStream#available should return the sum of remaining available bytes
Reviewed-by: egahlin
2021-02-04 09:22:01 +00:00
Sergey Bylokhov
06b33a0ad7 8261107: ArrayIndexOutOfBoundsException in the ICC_Profile.getInstance(InputStream)
Reviewed-by: azvegint, psadhukhan
2021-02-04 07:28:27 +00:00
Prasanta Sadhukhan
60f440deb9 6436374: Graphics.setColor(null) is not documented
Reviewed-by: serb, pbansal
2021-02-04 04:13:05 +00:00
Ioi Lam
82028e70d1 8260012: Reduce inclusion of collectedHeap.hpp and heapInspection.hpp
Reviewed-by: stefank, tschatzl
2021-02-04 04:05:33 +00:00
Jesper Wilhelmsson
9b7a8f1982 Merge 2021-02-04 02:06:33 +00:00
Phil Race
8760688d21 8260616: Removing remaining JNF dependencies in the java.desktop module
Reviewed-by: gziemski, ihse, serb
2021-02-04 01:36:19 +00:00
Jie Fu
e2516e41de 8261028: ZGC: SIGFPE when MaxVirtMemFraction=0
Reviewed-by: stefank, pliden
2021-02-04 00:05:40 +00:00
Sergey Bylokhov
f279ff9d2f 8261010: Delete the Netbeans "default" license header
Reviewed-by: iris, psadhukhan
2021-02-03 23:13:12 +00:00
Phil Race
2be60e37e0 8257988: Remove JNF dependency from libsaproc/MacosxDebuggerLocal.m
Reviewed-by: ihse, cjplummer
2021-02-03 21:58:02 +00:00
Dong Bo
5307afa9e7 8260585: AArch64: Wrong code generated for shifting right and accumulating four unsigned short integers
Reviewed-by: iveresov, dlong, njian, aph
2021-02-03 21:40:33 +00:00
Vladimir Kozlov
f025bc1d5d 8260301: misc gc/g1/unloading tests fails with "RuntimeException: Method could not be enqueued for compilation at level N"
Reviewed-by: dlong, iignatyev
2021-02-03 18:05:52 +00:00
Weijun Wang
4a8b5c1602 8257858: [macOS]: Remove JNF dependency from libosxsecurity/KeystoreImpl.m
8257860: [macOS]: Remove JNF dependency from libosxkrb5/SCDynamicStoreConfig.m

Reviewed-by: erikj, prr, ihse, valeriep
2021-02-03 16:20:16 +00:00
Nils Eliasson
472bf629cd 8258799: [Testbug] RandomCommandsTest must check if tested directive is added via jcmd
Reviewed-by: kvn, iignatyev
2021-02-03 16:01:59 +00:00
Julia Boes
b0ee7a8624 8241995: Clarify InetSocketAddress::toString specification
Reviewed-by: michaelm, chegar
2021-02-03 14:15:00 +00:00
Ivan Šipka
0ef93feb43 8259265: Refactor UncaughtExceptions shell test as java test.
Reviewed-by: rriggs
2021-02-03 14:08:29 +00:00
Zhengyu Gu
5324b5c582 8260998: Shenandoah: Restore reference processing statistics reporting
Reviewed-by: shade
2021-02-03 13:15:59 +00:00
Claes Redestad
c8de943c1f 8260617: Merge ZipFile encoding check with the initial hash calculation
Reviewed-by: lancea
2021-02-03 11:43:17 +00:00
Roberto Castañeda Lozano
ae2c5f07ce 8260581: IGV: enhance node search
Allow users to search by node id or name by default, show partial matches when
searching for a specific property, show 'All N matching nodes' entry only if
relevant, and rank results by level of matching.

Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Reviewed-by: chagedorn, vlivanov, xliu
2021-02-03 11:11:57 +00:00
Jan Lahoda
90376156be 8222850: jshell tool: Misleading cascade compiler error in switch expression with undefined vars
Reviewed-by: vromero
2021-02-03 09:21:43 +00:00
Tobias Hartmann
91e6c755f3 8260928: InitArrayShortSize constraint func should print a helpful error message
Reviewed-by: shade, chagedorn
2021-02-03 08:10:21 +00:00
Prasanta Sadhukhan
cb127a4bb5 8198343: Test java/awt/print/PrinterJob/TestPgfmtSetMPA.java may fail w/o printer
Reviewed-by: jdv, trebari
2021-02-03 06:49:32 +00:00
Prasanta Sadhukhan
c0084100bc 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test
Reviewed-by: trebari, aivanov
2021-02-03 04:33:42 +00:00
Ioi Lam
b9d4211bc1 8260193: Remove JVM_GetInterfaceVersion() and JVM_DTraceXXX
Reviewed-by: alanb, lfoltan, gziemski, ihse
2021-02-03 03:56:35 +00:00
Sergey Bylokhov
98a76921ec 8076313: GraphicsEnvironment does not detect changes in count of monitors on Linux OS
Reviewed-by: kizune
2021-02-03 03:41:53 +00:00
Jie Fu
a47befc86f 8260878: com/sun/jdi/JdbOptions.java fails without jfr
Reviewed-by: amenkov, cjplummer
2021-02-03 01:18:11 +00:00
Kim Barrett
d423d368e7 8258508: Merge G1RedirtyCardsQueue into qset
Reviewed-by: tschatzl, iwalulya
2021-02-03 00:52:09 +00:00
Alexander Matveev
bec60432ec 8259570: (macos) tools/jpackage tests fails with 'hdiutil: couldn't eject "disk2" - Resource busy'
Reviewed-by: herrick, asemenyuk
2021-02-03 00:29:08 +00:00
Ioi Lam
ffbcf1b0a7 8260471: Change SystemDictionary::X_klass calls to vmClasses::X_klass
Reviewed-by: lfoltan, hseigel, dholmes, stuefe
2021-02-02 23:40:29 +00:00
Mahendra Chhipa
9af333923b 8261003: Bad Copyright header format after JDK-8183372
Reviewed-by: bchristi
2021-02-02 22:14:07 +00:00
Mahendra Chhipa
6dc3c6dcdd 8183372: Refactor java/lang/Class shell tests to java
Reviewed-by: bchristi, mchung
2021-02-02 21:11:41 +00:00
Davin Kevin
105d3e8f40 8260861: TrustStoreDescriptor log the same value
Reviewed-by: xuelei
2021-02-02 20:54:10 +00:00
Jesper Wilhelmsson
1a7040e5b9 8259794: Remove EA from JDK 16 version string starting with Initial RC promotion on Feb 04, 2021(B35)
Reviewed-by: iignatyev, mikael
2021-02-02 19:45:37 +00:00
Kim Barrett
afd5eefdae 8260704: ParallelGC: oldgen expansion needs release-store for _end
Move JDK-8257999 barrier to correct location.

Reviewed-by: tschatzl, sjohanss
2021-02-02 19:20:19 +00:00
Rajan Halade
69189f8820 8256421: Add 2 HARICA roots to cacerts truststore
Reviewed-by: hchao, mullan
2021-02-02 18:26:34 +00:00
Thomas Stuefe
f546fd0097 8260902: CDS mapping errors should not lead to unconditional output
Reviewed-by: iklam
2021-02-02 18:21:53 +00:00
Aleksey Shipilev
081fa3e715 8260927: StringBuilder::insert is incorrect without Compact Strings
Reviewed-by: redestad, alanb, rriggs, jlaskey
2021-02-02 18:00:43 +00:00
Thomas Stuefe
d7b1fc59a5 8260707: java/lang/instrument/PremainClass/InheritAgent0100.java times out
Co-authored-by: Arno Zeller <azeller@openjdk.org>
Reviewed-by: dholmes, sspitsyn, dcubed
2021-02-02 17:56:38 +00:00
Quaffel
0093183b33 8260368: [PPC64] GC interface needs enhancement to support GCs with load barriers
Reviewed-by: mdoerr, rkennke, goetz
2021-02-02 15:53:56 +00:00
Daniel D. Daugherty
defcb04270 8260867: ProblemList java/awt/FullScreen/TranslucentWindow/TranslucentWindow.java on linux
Reviewed-by: psadhukhan, jdv, pbansal
2021-02-02 15:36:31 +00:00
Coleen Phillimore
a421bfad28 8259839: SystemDictionary exports too much implementation
Reviewed-by: iklam, dholmes
2021-02-02 13:29:16 +00:00
Harold Seigel
189b65b2ca 8260264: Move common os_<unix> inline methods to a common posix source file
Reviewed-by: iklam, dholmes, coleenp, stuefe
2021-02-02 13:10:34 +00:00
Thomas Schatzl
288a4fed3f 8260643: Remove parallel version handling in CardTableRS::younger_refs_in_space_iterate()
Reviewed-by: ayang, sjohanss
2021-02-02 11:01:48 +00:00
Magnus Ihse Bursie
ed1a7755c3 8258378: Final nroff manpage update for JDK 16
Reviewed-by: erikj, dholmes
2021-02-02 07:41:48 +00:00
Thomas Stuefe
ddd2951ba9 8260571: Add PrintMetaspaceStatistics to print metaspace statistics upon VM exit
Reviewed-by: iklam
2021-02-02 07:36:09 +00:00
Tobias Hartmann
fe407cf1b6 8260420: C2 compilation fails with assert(found_sfpt) failed: no node in loop that's not input to safepoint
Reviewed-by: kvn, roland, chagedorn
2021-02-02 07:23:55 +00:00
Joe Darcy
474dba2d8b 8257086: Clarify differences between {Float, Double}.equals and ==
Reviewed-by: smarks, bpb
2021-02-02 02:33:56 +00:00
bobpengxie
54e7a642bb 8260576: Typo in compiler/runtime/safepoints/TestRegisterRestoring.java
Reviewed-by: thartmann, jiefu
2021-02-02 02:16:46 +00:00
Daniel D. Daugherty
a6d950587b 8260864: ProblemList two security/krb5 tests on Linux
Reviewed-by: dholmes
2021-02-01 22:53:27 +00:00
Daniel D. Daugherty
9880c4cd17 8260860: ProblemList tools/jlink/plugins/CompressorPluginTest.java
Reviewed-by: dholmes
2021-02-01 22:52:09 +00:00
Calvin Cheung
55d62a5338 8213226: [TESTBUG] Reduce the usage of CDSTestUtils.executeAndLog()
Reviewed-by: iklam, minqi
2021-02-01 22:17:57 +00:00
David Holmes
b6a736738a 8260349: Cannot programmatically retrieve Metaspace max set via JAVA_TOOL_OPTIONS
Reviewed-by: shade, stuefe
2021-02-01 21:31:25 +00:00
JSNORDST
50f9a70f0d 8217327: G1 Post-Cleanup region liveness printing should not print out-of-date efficiency
Reviewed-by: tschatzl, sjohanss
2021-02-01 18:19:43 +00:00
Zhengyu Gu
e963ebd721 8260004: Shenandoah: Rename ShenandoahMarkCompact to ShenandoahFullGC
Reviewed-by: shade, rkennke
2021-02-01 18:10:22 +00:00
Roman Kennke
df33595e9f 8260309: Shenandoah: Clean up ShenandoahBarrierSet
Reviewed-by: shade, zgu
2021-02-01 17:29:50 +00:00
Harold Seigel
181d63ffce 8260522: Clean up warnings in hotspot JTReg runtime tests
Reviewed-by: lfoltan, coleenp
2021-02-01 16:46:17 +00:00
Vladimir Kozlov
02d586e13e 8259398: Super word not applied to a loop with byteArrayViewVarHandle
Reviewed-by: vlivanov, thartmann, chagedorn
2021-02-01 15:48:10 +00:00
Erik Joelsson
80760a322b 8260669: Missing quotes in fixpath.sh
Reviewed-by: tbell, iris, mikael, ihse
2021-02-01 14:07:16 +00:00
Athijegannathan Sundararajan
c0cde7dc88 8259814: test/jdk/tools/jlink/plugins/CompressorPluginTest.java has compilation issues
Reviewed-by: alanb
2021-02-01 12:57:35 +00:00
Christian Hagedorn
aec037721c 8257498: Remove useless skeleton predicates
Reviewed-by: roland, thartmann
2021-02-01 09:39:31 +00:00
Aleksey Shipilev
ab727f0a58 8260591: Shenandoah: improve parallelism for concurrent thread root scans
Reviewed-by: zgu, rkennke
2021-02-01 08:49:36 +00:00
Johannes Kuhn
cf942081a5 8259395: Patching automatic module with additional packages re-creates module without "requires java.base"
Reviewed-by: attila, alanb
2021-02-01 08:09:36 +00:00
Tobias Hartmann
039affc8bc 8260577: Unused code in AbstractCompiler after Shark compiler removal
Reviewed-by: shade, chagedorn, kvn
2021-02-01 06:33:08 +00:00
Erik Gahlin
21f8bf4411 8257215: JFR: Events dropped when streaming over a chunk rotation
Reviewed-by: mgronlun
2021-02-01 05:57:08 +00:00
casparcwang
0fdf9cdd3a 8260473: [vector] ZGC: VectorReshape test produces incorrect results with ZGC enabled
Co-authored-by: Stuart Monteith <smonteith@openjdk.org>
Co-authored-by: Wang Chao <casparcwang@tencent.com>
Reviewed-by: vlivanov, neliasso
2021-02-01 01:28:31 +00:00
Albert Mingkun Yang
8a9004da9b 8260574: Remove parallel constructs in GenCollectedHeap::process_roots
Reviewed-by: tschatzl, kbarrett
2021-01-31 17:03:37 +00:00
Jie Fu
0da9cad5f5 8260501: [Vector API] Improve register usage for shift operations on x86
Reviewed-by: vlivanov, kvn
2021-01-31 00:27:55 +00:00
Daniel D. Daugherty
a61ff87cd4 8260685: ProblemList 2 compiler/jvmci/compilerToVM tests in Xcomp configs
Reviewed-by: iignatyev
2021-01-30 15:23:34 +00:00
Alexey Ivanov
fcfe6478f9 8260462: Missing <thead> in Modality.html
Reviewed-by: serb, psadhukhan
2021-01-30 11:54:59 +00:00
Kim Barrett
67a34daf68 8260630: Templatize literal_size
8260629: Remove explicit instantiation of Hashtable with oop value

Reviewed-by: pliden, tschatzl, coleenp
2021-01-30 09:56:53 +00:00
Yasumasa Suenaga
6b24e98c42 8259008: ArithmeticException was thrown at "Monitor Cache Dump" on HSDB
Reviewed-by: dcubed, gziemski, eosterlund, cjplummer, sspitsyn
2021-01-30 03:46:23 +00:00
Joe Wang
69ee314b63 8249867: xml declaration is not followed by a newline
Reviewed-by: rriggs, naoto, lancea, dfuchs
2021-01-30 02:34:52 +00:00
Daniel D. Daugherty
fb46c91027 8260674: ProblemList jdk/incubator/vector/VectorHash.java in Xcomp configs
Reviewed-by: vlivanov
2021-01-30 00:56:50 +00:00
Xue-Lei Andrew Fan
71bfe962eb 8217633: Configurable extensions with system properties
Reviewed-by: rhalade, jnimeh
2021-01-30 00:21:01 +00:00
Leonid Mesnik
f5ca8385ab 8065773: JDI: UOE is not thrown, when redefineClasses changes a class modifier
Reviewed-by: sspitsyn, coleenp
2021-01-29 20:49:40 +00:00
Guoxiong Li
739bbd03c5 8260566: Pattern type X is a subtype of expression type Y message is incorrect
Reviewed-by: jlahoda, tvaleev
2021-01-29 18:27:03 +00:00
Aleksey Shipilev
bc41bb10c7 8260632: Build failures after JDK-8253353
Reviewed-by: stuefe, thartmann, kvn
2021-01-29 17:48:11 +00:00
Vicente Romero
b2e582a882 8259905: Compiler treats 'sealed' keyword as 'var' keyword
Reviewed-by: jlahoda
2021-01-29 16:50:27 +00:00
Vladimir Kozlov
6415d3b82b 8259584: SuperWord::fix_commutative_inputs checks in_bb(fin1) instead of in_bb(fin2)
Reviewed-by: shade
2021-01-29 16:16:14 +00:00
Thomas Stuefe
b7b391b2ac 8260625: Rename MetaspaceExpand_lock
Reviewed-by: shade
2021-01-29 15:33:00 +00:00
Zhengyu Gu
22bfa5b0ac 8255837: Shenandoah: Remove ShenandoahConcurrentRoots class
Reviewed-by: rkennke
2021-01-29 14:22:13 +00:00
Erik Joelsson
53f1b93881 8260518: Change default -mmacosx-version-min to 10.12
Reviewed-by: tbell, prr, ihse, serb
2021-01-29 14:20:39 +00:00
Aleksey Shipilev
24a262124f 8260592: jpackage tests fail when Desktop is not supported
Reviewed-by: asemenyuk, herrick
2021-01-29 14:06:15 +00:00
Ralf Schmelter
d2b0ea1d01 8260282: Add option to compress heap dumps created by -XX:+HeapDumpOnOutOfMemoryError
Reviewed-by: cjplummer, stuefe
2021-01-29 13:53:40 +00:00
Zhengyu Gu
a5fb5173c1 8259404: Shenandoah: Fix time tracking in parallel_cleaning
Reviewed-by: shade
2021-01-29 13:01:28 +00:00
Jan Lahoda
0675473486 8252409: JShell: Intersection types cause NoSuchFieldError
Reviewed-by: vromero
2021-01-29 09:19:14 +00:00
Wang Huang
a117e11524 8260339: JVM crashes when executing PhaseIdealLoop::match_fill_loop
Co-authored-by: He Xuejin <hexuejin2@huawei.com>
Reviewed-by: neliasso, kvn, iignatyev
2021-01-29 08:07:21 +00:00
Sergey Bylokhov
64a150c518 6986863: ProfileDeferralMgr throwing ConcurrentModificationException
Reviewed-by: kizune
2021-01-29 06:18:43 +00:00
Igor Ignatyev
8ffdbcebad 8260608: add a regression test for 8260370
Reviewed-by: kvn
2021-01-29 04:04:23 +00:00
Kim Barrett
ea2c4474be 8259778: Merge MutableSpace and ImmutableSpace
Reviewed-by: sspitsyn, dholmes, tschatzl
2021-01-29 03:49:57 +00:00
Kim Barrett
251c6419bf 8259487: Remove unused StarTask
Reviewed-by: iklam, tschatzl
2021-01-29 03:34:02 +00:00
Igor Veresov
1519632597 8251462: Simplify compilation policy
Reviewed-by: cjplummer, kvn
2021-01-28 20:51:12 +00:00
Aleksey Shipilev
71128cf4ce 8260586: Shenandoah: simplify "Concurrent Weak References" logging
Reviewed-by: rkennke, zgu
2021-01-28 19:04:50 +00:00
Martin Buchholz
81e9e6a7fc 8260461: Modernize jsr166 tck tests
Reviewed-by: dl
2021-01-28 18:06:55 +00:00
Weijun Wang
2b166d816a 8260596: Comment cleanup in BigInteger
Reviewed-by: bpb
2021-01-28 17:54:09 +00:00
Aleksey Shipilev
1de3c55447 8260584: Shenandoah: simplify "Concurrent Thread Roots" logging
Reviewed-by: rkennke, zgu
2021-01-28 16:31:45 +00:00
Calvin Cheung
bbbfaa58c0 8249262: Initialize InstanceKlass::_package_entry during CDS dump time
Reviewed-by: iklam, minqi
2021-01-28 16:17:46 +00:00
Vladimir Kozlov
1926765f5e 8253353: Crash in C2: guarantee(n != NULL) failed: No Node
Co-authored-by: Fei Yang <fyang@openjdk.org>
Reviewed-by: vlivanov, neliasso
2021-01-28 16:16:51 +00:00
Matthias Baesken
3aabbd7216 8260432: allocateSpaceForGP in freetypeScaler.c might leak memory
Reviewed-by: shade, stuefe
2021-01-28 15:20:57 +00:00
Poonam Bajaj
abc4300de9 8257746: Regression introduced with JDK-8250984 - memory might be null in some machines
Reviewed-by: hseigel
2021-01-28 15:07:03 +00:00
Patrick Concannon
13ca433ff6 8259628: jdk/net/ExtendedSocketOption/AsynchronousSocketChannelNAPITest.java fails intermittently
Reviewed-by: dfuchs
2021-01-28 15:01:38 +00:00
Sean Mullan
baf46bac41 8259801: Enable XML Signature secure validation mode by default
Reviewed-by: weijun, rhalade
2021-01-28 14:28:27 +00:00
Harold Seigel
20e7df506f 8260466: Test TestHeapDumpOnOutOfMemoryError.java needs multiple @test sections
Reviewed-by: shade, lmesnik
2021-01-28 13:17:22 +00:00
Roland Westrelin
11d6467c50 8260407: cmp != __null && cmp->Opcode() == Op_CmpL failure with -XX:StressLongCountedLoop=200000000 in lucene
Reviewed-by: thartmann, kvn
2021-01-28 12:27:40 +00:00
Jorn Vernee
d07af2b8ec 8255531: MethodHandles::permuteArguments throws NPE when duplicating dropped arguments
Reviewed-by: redestad
2021-01-28 12:26:32 +00:00
Aleksey Shipilev
a68c6c2a13 8260579: PPC64 and S390 builds failures after JDK-8260467
Reviewed-by: mdoerr
2021-01-28 12:00:59 +00:00
Martin Doerr
87522573ac 8260502: [s390] NativeMovRegMem::verify() fails because it's too strict
Reviewed-by: lucy, rrich
2021-01-28 11:39:06 +00:00
Claes Redestad
8fe1323dcb 8260520: Avoid getting permissions in JarFileFactory when no SecurityManager installed
Reviewed-by: alanb, dfuchs, michaelm, mullan
2021-01-28 11:14:35 +00:00
Claes Redestad
ecde52ece6 8260506: VersionHelper cleanup
Reviewed-by: alanb, dfuchs, aefimov
2021-01-28 11:13:26 +00:00
Aleksey Shipilev
a97aedff9f 8256215: Shenandoah: re-organize saving/restoring machine state in assembler code
Reviewed-by: rkennke, zgu
2021-01-28 10:24:37 +00:00
Roman Kennke
316d52c1a5 8260497: Shenandoah: Improve SATB flushing
Reviewed-by: shade, zgu
2021-01-28 09:50:21 +00:00
Per Liden
e68eac9c36 8259765: ZGC: Handle incorrect processor id reported by the operating system
Reviewed-by: ayang, eosterlund
2021-01-28 07:58:50 +00:00
Matthias Baesken
11a70d113e 8260426: awt debug_mem.c DMem_AllocateBlock might leak memory
Reviewed-by: psadhukhan, aivanov
2021-01-28 07:35:58 +00:00
Ioi Lam
396a496f3c 8260467: Move well-known classes from systemDictionary.hpp to vmClasses.hpp
Reviewed-by: dholmes, coleenp
2021-01-28 04:24:04 +00:00
Jesper Wilhelmsson
62ffe75b1f Merge 2021-01-28 03:38:32 +00:00
Hamlin Li
7030d2e026 8260200: G1: Remove unnecessary update in FreeRegionList::remove_starting_at
Reviewed-by: ayang, sjohanss, tschatzl
2021-01-28 00:45:16 +00:00
Roger Riggs
c7661aed6f 8260561: [doc] HexFormat has incorrect @since tag
Reviewed-by: darcy, naoto, bpb, lancea
2021-01-27 22:37:43 +00:00
Jesper Wilhelmsson
c52212b146 Merge 2021-01-27 20:56:26 +00:00
Stuart Marks
eb9236853c 8259816: Typo in java.util.stream package description
Reviewed-by: iris, lancea, naoto
2021-01-27 19:02:49 +00:00
Guoxiong Li
0eed2c3312 8259359: javac does not attribute unexpected super constructor invocation qualifier, and may crash
Reviewed-by: vromero
2021-01-27 18:12:57 +00:00
Daniel D. Daugherty
684c8558f6 8260524: validate-source fails on test/jdk/jdk/jfr/event/gc/detailed/TestGCLockerEvent.java
Reviewed-by: bpb, iignatyev
2021-01-27 17:26:41 +00:00
Denghui Dong
311a0a91ba 8259808: Add JFR event to detect GC locker stall
Reviewed-by: sjohanss, tschatzl, egahlin
2021-01-27 15:28:46 +00:00
Roberto Castañeda Lozano
f353fcf256 8258894: C2: Forbid GCM to move stores into loops
Prevent GCM from placing memory-writing nodes (such as stores) into loops deeper
than their home loop (determined by their control input). Such placements are
invalid, as they cause memory definitions to interfere, and risk causing
miscompilations. This change complements JDK-8255763, which only addresses
invalid placements in irreducible CFGs.

Add control input to stores in generated stubs to ensure that all memory-writing
nodes have control inputs from which their home block can be derived.

Add a battery of simplified fuzzer test cases where, before this change, GCM
moves stores into deeper loops.

Reviewed-by: thartmann, kvn
2021-01-27 15:08:39 +00:00
Chris Hegarty
ac276bb394 8257074: Update the ByteBuffers micro benchmark
Reviewed-by: redestad, dfuchs, jvernee, bpb
2021-01-27 14:09:15 +00:00
Alexey Ivanov
7ed591cc9a 8260314: Replace border="1" on tables with CSS
Reviewed-by: serb
2021-01-27 12:09:48 +00:00
Claes Redestad
e696baabfb 8260448: Simplify ManagementFactory$PlatformMBeanFinder
Reviewed-by: mchung, dfuchs
2021-01-27 11:30:28 +00:00
Jan Lahoda
b3c8a52803 8259050: Error recovery in lexer could be improved
Reviewed-by: vromero
2021-01-27 11:00:12 +00:00
Aleksey Shipilev
bf15c70993 8260460: GitHub actions still fail on Linux x86_32 with "Could not configure libc6:i386"
Reviewed-by: ihse
2021-01-27 10:48:32 +00:00
Thomas Stuefe
3e4194c42e 8260022: [ppc] os::print_function_and_library_name shall resolve function descriptors transparently
Reviewed-by: mdoerr, lucy
2021-01-27 10:43:04 +00:00
Vladimir Ivanov
e28e11119d 8260370: C2: LoopLimit node is not eliminated
Reviewed-by: kvn, thartmann
2021-01-27 10:29:59 +00:00
Albert Mingkun Yang
fa40a9661b 8253420: Refactor HeapRegionManager::find_highest_free
Reviewed-by: sjohanss, kbarrett
2021-01-27 09:57:24 +00:00
Roman Kennke
4d004c9447 8260449: Remove stale declaration of SATBMarkQueue::apply_closure_and_empty()
Reviewed-by: tschatzl
2021-01-27 09:32:08 +00:00
Matthias Baesken
fd2641ed36 8260236: better init AnnotationCollector _contended_group
Reviewed-by: coleenp, shade
2021-01-27 07:57:32 +00:00
Thomas Stuefe
1c77046811 8260404: jvm_io.h include missing in a number of files
Reviewed-by: shade, iklam, dholmes
2021-01-27 07:34:46 +00:00
Aleksey Shipilev
bd2744dd42 8260106: Shenandoah: refactor reference updating closures and related code
Reviewed-by: zgu, rkennke
2021-01-27 07:17:30 +00:00
Martin Buchholz
c836da387e 8252412: [macos11] system dynamic libraries removed from filesystem
Co-authored-by: Dominik Röttsches <drott@google.com>
Reviewed-by: jiangli, valeriep
2021-01-27 04:31:29 +00:00
Sergey Bylokhov
e1411fd4d4 6606673: Path2D.Double, Path2D.Float and GeneralPath ctors throw exception when initialCapacity is negative
Reviewed-by: psadhukhan, kizune
2021-01-27 02:52:37 +00:00
David Holmes
6f2be9c608 8246112: Remove build-time and run-time checks for clock_gettime and CLOCK_MONOTONIC
Reviewed-by: ihse, erikj, gziemski, hseigel
2021-01-27 01:18:52 +00:00
Xin Liu
19b6f61bd2 8260334: Remove deprecated sv_for_node_id() from Compile
Reviewed-by: neliasso, chagedorn, thartmann, phh
2021-01-26 20:52:19 +00:00
Zhengyu Gu
1bebd41828 8260421: Shenandoah: Fix conc_mark_roots timing name and indentations
Reviewed-by: rkennke, shade
2021-01-26 20:25:51 +00:00
Sergey Bylokhov
42cef27fd8 8260343: Delete obsolete classes in the Windows L&F
Reviewed-by: aivanov, pbansal
2021-01-26 18:31:26 +00:00
Fernando Guallini
9f0a043648 8260286: Manual Test "ws/open/test/jdk/sun/security/tools/jarsigner/compatibility/Compatibility.java" fails
Reviewed-by: rhalade
2021-01-26 18:15:26 +00:00
Zhengyu Gu
fd00ed747a 8256298: Shenandoah: Enable concurrent stack processing
Reviewed-by: rkennke, shade
2021-01-26 16:46:22 +00:00
Vicente Romero
408772c966 8259025: Record compact constructor using Objects.requireNonNull
Reviewed-by: mcimadamore
2021-01-26 16:00:41 +00:00
Claes Redestad
b07797c284 8260391: Remove StringCoding::err
Reviewed-by: shade, rriggs
2021-01-26 15:25:01 +00:00
Severin Gehwolf
af8a08f584 8260378: [TESTBUG] DcmdMBeanTestCheckJni.java reports false positive
Reviewed-by: dcubed
2021-01-26 15:18:56 +00:00
Magnus Ihse Bursie
8d2f77fd43 8260406: Do not copy pure java source code to gensrc
Reviewed-by: alanb, erikj
2021-01-26 14:08:06 +00:00
Jan Lahoda
5e8e0ada7a 8242456: PreviewFeature.Feature enum removal of TEXT_BLOCKS
Reviewed-by: jlaskey
2021-01-26 13:42:40 +00:00
Harold Seigel
e080ce9212 8252545: runtime/ErrorHandling/TestHeapDumpOnOutOfMemoryError.java timed out
Reviewed-by: stuefe, coleenp
2021-01-26 13:17:08 +00:00
Aleksey Shipilev
edd27074af 8260408: Shenandoah: adjust inline hints after JDK-8255019
Reviewed-by: rkennke, ihse
2021-01-26 13:04:38 +00:00
Coleen Phillimore
81a66dfa81 8259809: Remove PerfEvent class loading locking counters
Reviewed-by: redestad, iklam
2021-01-26 11:50:10 +00:00
Thomas Schatzl
b4ace3e979 8260042: G1 Post-cleanup liveness printing occurs too early
Reviewed-by: sjohanss, iwalulya
2021-01-26 10:14:53 +00:00
Guoxiong Li
23edb6f6b2 8236490: Compiler bug relating to @NonNull annotation
Reviewed-by: vromero, jfranck
2021-01-26 08:57:20 +00:00
Matthias Baesken
abd9310bff 8260222: remove unused _thread member SymbolTableLookup
Reviewed-by: coleenp, dholmes, shade
2021-01-26 07:42:15 +00:00
Serguei Spitsyn
c538cd8b79 8165276: Spec states to invoke the premain method in an agent class if it's public but implementation differs
Reviewed-by: mchung, dholmes, alanb
2021-01-26 07:15:50 +00:00
Coleen Phillimore
9ea93238fb 8254246: SymbolHashMapEntry wastes space
Reviewed-by: redestad
2021-01-25 23:58:33 +00:00
Jonathan Gibbons
982e42b896 8259726: Use of HashSet leads to undefined order in test output
Reviewed-by: hannesw
2021-01-25 21:45:54 +00:00
Jonathan Gibbons
d6fb9d7256 8255464: Cannot access ModuleTree in a CompilationUnitTree
Reviewed-by: vromero
2021-01-25 21:44:58 +00:00
Vladimir Ivanov
81e730e5f1 8259276: C2: Empty expression stack when reexecuting tableswitch/lookupswitch instructions after deoptimization
Reviewed-by: dlong, kvn, thartmann
2021-01-25 20:02:56 +00:00
Andrew Leonard
12ccd211f2 8260289: Unable to customize module lists after change JDK-8258411
Reviewed-by: ihse, alanb
2021-01-25 19:26:36 +00:00
Joe Darcy
73c78c8aa0 8260329: Update references to TAOCP to latest edition
Reviewed-by: alanb, bpb
2021-01-25 19:06:56 +00:00
Daniel D. Daugherty
5b0b24b58d 8260381: ProblemList com/sun/management/DiagnosticCommandMBean/DcmdMBeanTestCheckJni.java on Win with ZGC
Reviewed-by: sspitsyn, sgehwolf
2021-01-25 18:20:21 +00:00
Martin Balao
47c7dc7734 8258833: Cancel multi-part cipher operations in SunPKCS11 after failures
Reviewed-by: valeriep
2021-01-25 18:01:59 +00:00
Dan Lutker
ef247ab276 8260308: Update LogCompilation junit to 4.13.1
Reviewed-by: ecaspole, iignatyev
2021-01-25 17:16:21 +00:00
Christian Hagedorn
c5ab7c3214 8260284: C2: assert(_base == Int) failed: Not an Int
Reviewed-by: thartmann, kvn
2021-01-25 17:09:52 +00:00
Eric Caspole
d076977d03 8260169: LogCompilation: Unexpected method mismatch
Reviewed-by: kvn, vlivanov
2021-01-25 14:11:33 +00:00
Coleen Phillimore
6e03735427 8259845: Move placeholder implementation details to cpp file and add logging
Reviewed-by: iklam, lfoltan, dholmes
2021-01-25 13:40:43 +00:00
Thomas Stuefe
ca20c63c04 8259710: Inlining trace leaks memory
Reviewed-by: thartmann, neliasso
2021-01-25 10:50:39 +00:00
Yasumasa Suenaga
09489e28bd 8260338: Some fields in HaltNode is not cloned
Reviewed-by: xliu, neliasso, thartmann
2021-01-25 09:12:49 +00:00
Severin Gehwolf
af155fc068 8258836: JNI local refs exceed capacity getDiagnosticCommandInfo
Reviewed-by: cjplummer, shade
2021-01-25 08:57:56 +00:00
Thomas Schatzl
d825339da5 8260263: Remove PtrQueue::_qset
Remove dead code related to PtrQueue::_qset and itself.

Reviewed-by: kbarrett, sjohanss
2021-01-25 08:38:47 +00:00
Ioi Lam
5898ab6545 8259894: refactor parts of jvm.h into jvm_io.h and jvm_constants.h
Reviewed-by: dholmes, coleenp
2021-01-25 08:00:40 +00:00
Dongbo He
764111ff83 8260272: bash configure --prefix does not work after JDK-8257679
Reviewed-by: erikj, ihse
2021-01-25 01:08:38 +00:00
Hamlin Li
4ae39b1481 8260208: Improve dummy object filling condition in G1CollectedHeap::fill_archive_regions in cds
Reviewed-by: tschatzl, iklam
2021-01-25 01:06:33 +00:00
Hamlin Li
c52c6c66db 8260273: DataOutputStream writeChars optimization
Reviewed-by: rriggs, bpb, alanb
2021-01-25 01:05:40 +00:00
Ioi Lam
535c2927b6 8260306: Do not include osThread.hpp in thread.hpp
Reviewed-by: coleenp, lfoltan
2021-01-24 02:40:57 +00:00
Kim Barrett
06348dfcae 8259776: Remove ParallelGC non-CAS oldgen allocation
Reviewed-by: tschatzl, sjohanss
2021-01-23 22:47:31 +00:00
Kim Barrett
6c4c96fadf 8258742: Move PtrQueue reset to PtrQueueSet subclasses
Reviewed-by: tschatzl, iwalulya
2021-01-23 19:47:24 +00:00
Alexey Ivanov
b53d5cacf4 8260315: Typo "focul" instead of "focus" in FocusSpec.html
Reviewed-by: kizune, pbansal
2021-01-23 17:03:09 +00:00
Alexey Ivanov
f624dba612 8240247: No longer need to wrap files with contentContainer
Reviewed-by: serb
2021-01-23 11:38:00 +00:00
Ioi Lam
5cdcce1c1f 8260307: Do not include method.hpp in frame.hpp
Reviewed-by: lfoltan, coleenp
2021-01-23 06:24:22 +00:00
Jesper Wilhelmsson
6f2a394314 Merge 2021-01-23 03:15:43 +00:00
Ioi Lam
aa57d07ce8 8259214: MetaspaceClosure support for Arrays of MetaspaceObj
Reviewed-by: fparain, ccheung
2021-01-22 22:47:08 +00:00
Alex Menkov
bdc305e1cb 8258917: NativeMemoryTracking is handled by launcher inconsistenly
Reviewed-by: zgu
2021-01-22 21:33:02 +00:00
Dan Lemmond
7be9113b1c 8255216: Change _directive->BreakAtCompileOption to env()->break_at_compile()
Reviewed-by: kvn, phh
2021-01-22 20:33:44 +00:00
Aleksey Shipilev
5aca934c98 8260304: (se) EPollSelectorImpl wakeup mechanism broken on Linux 32-bit
Reviewed-by: bpb, alanb
2021-01-22 19:21:45 +00:00
Dmitry Markov
53fecba709 8258805: Japanese characters not entered by mouse click on Windows 10
Reviewed-by: aivanov
2021-01-22 19:21:10 +00:00
Stuart Marks
a8871776e6 8246788: ZoneRules invariants can be broken
Reviewed-by: rriggs, naoto
2021-01-22 18:51:32 +00:00
Alexey Bakhtin
874aef4a8f 8259707: LDAP channel binding does not work with StartTLS extension
Reviewed-by: mullan, dfuchs, aefimov
2021-01-22 18:21:59 +00:00
Aleksey Shipilev
c5ad713e18 8260250: Duplicate check in DebugInformationRecorder::recorders_frozen
Reviewed-by: iveresov, thartmann
2021-01-22 17:19:33 +00:00
Johannes Kuhn
bf5e801501 8259922: MethodHandles.collectArguments does not throw IAE if pos is outside the arity range
Reviewed-by: mchung
2021-01-22 17:18:06 +00:00
Guoxiong Li
0ea5862670 8260053: Optimize Tokens' use of Names
Reviewed-by: mcimadamore
2021-01-22 15:47:05 +00:00
Sean Coffey
18eb6d9e34 8255348: NPE in PKIXCertPathValidator event logging code
Reviewed-by: mullan
2021-01-22 15:31:35 +00:00
Kim Barrett
a97f3c18d5 8258853: Support separate function declaration and definition with ENABLE_IF-based SFINAE
Add ENABLE_IF_SDEFN, unit tests

Reviewed-by: jrose, eosterlund
2021-01-22 14:44:35 +00:00
Yasumasa Suenaga
154e1d637e 8259009: G1 heap summary should be shown in "Heap Parameters" window on HSDB
Reviewed-by: cjplummer, tschatzl
2021-01-22 14:16:29 +00:00
Pankaj Bansal
acbcde8c3c 8256111: Create implementation for NSAccessibilityStaticText protocol
Reviewed-by: serb, kizune
2021-01-22 13:53:36 +00:00
Harold Seigel
f928265e81 8260009: InstanceKlass::has_as_permitted_subclass() fails if subclass was redefined
Reviewed-by: lfoltan, sspitsyn, dholmes
2021-01-22 13:52:05 +00:00
Kim Barrett
7ed8ba1ca0 8256814: WeakProcessorPhases may be redundant
Remove WeakProcessorPhase, adding scoped enum categories to OopStorageSet.

Reviewed-by: stefank, tschatzl, rkennke
2021-01-22 13:12:39 +00:00
Aleksey Shipilev
bfac3fb595 8260212: Shenandoah: resolve-only UpdateRefsMode is not used
Reviewed-by: rkennke, zgu
2021-01-22 11:39:16 +00:00
Claes Redestad
58ceb25443 8259842: Remove Result cache from StringCoding
Reviewed-by: naoto, plevart, rriggs
2021-01-22 11:27:13 +00:00
Kim Barrett
685c03dc48 8259271: gc/parallel/TestDynShrinkHeap.java still fails "assert(covered_region.contains(new_memregion)) failed: new region is not in covered_region"
Use load_acquire to order reads of top and end.

Reviewed-by: tschatzl, iwalulya, eosterlund
2021-01-22 11:20:52 +00:00
Thomas Stuefe
d066f2b06c 8260030: Improve stringStream buffer handling
Reviewed-by: iklam, kbarrett
2021-01-22 09:00:56 +00:00
Prasanta Sadhukhan
1452280073 8164484: Unity, JTable cell editor, javax/swing/JComboBox/6559152/bug6559152.java
Reviewed-by: serb, jdv
2021-01-22 08:02:56 +00:00
Aleksey Shipilev
a70acf2c1e 8259928: compiler/jvmci tests fail with -Xint
Reviewed-by: kvn, iignatyev
2021-01-22 07:05:30 +00:00
Ioi Lam
ba38661504 8259882: Reduce the inclusion of perfData.hpp
Reviewed-by: redestad, coleenp
2021-01-22 04:20:41 +00:00
Phil Race
92c2f084a2 8259869: [macOS] Remove desktop module dependencies on JNF Reference APIs
Reviewed-by: serb
2021-01-22 01:50:00 +00:00
Sergey Bylokhov
a7c2ebc763 8239894: Xserver crashes when the wrong high refresh rate is used
Reviewed-by: kizune
2021-01-22 00:21:36 +00:00
Jie Fu
d90e06af7b 8259775: [Vector API] Incorrect code-gen for VectorReinterpret operation
Reviewed-by: rbackman, neliasso, kvn
2021-01-22 00:13:58 +00:00
Brian Burkhalter
2f47c39a74 8259943: FileDescriptor.close0 does not handle EINTR
Reviewed-by: naoto, alanb
2021-01-21 21:54:24 +00:00
Brian Burkhalter
a8073efeed 8253478: (se) epoll Selector should use eventfd for wakeup instead of pipe
Reviewed-by: alanb
2021-01-21 21:36:19 +00:00
Thomas Schatzl
ede1beaef7 8227695: assert(pss->trim_ticks().seconds() == 0.0) failed: Unexpected partial trimming during evacuation
Change FP comparison to integer comparison.

Reviewed-by: kbarrett, iwalulya, eosterlund
2021-01-21 18:21:07 +00:00
Zhengyu Gu
34eb8b344d 8255765: Shenandoah: Isolate concurrent, degenerated and full GC
Reviewed-by: rkennke, shade
2021-01-21 16:55:56 +00:00
Weijun Wang
62eab50582 8255199: Catching a few NumberFormatExceptions in xmldsig
Reviewed-by: rhalade
2021-01-21 07:41:19 -08:00
Brian Burkhalter
a5367cbb7a 8247619: Improve Direct Buffering of Characters
Reviewed-by: alanb, ahgross, rhalade, psandoz
2021-01-21 07:41:18 -08:00
Aleksey Shipilev
c3c6662528 8259954: gc/shenandoah/mxbeans tests fail with -Xcomp
Reviewed-by: rkennke, zgu
2021-01-21 13:32:45 +00:00
Albert Mingkun Yang
6ce0799b66 8259851: Use boolean type for tasks in SubTasksDone
Reviewed-by: kbarrett, tschatzl
2021-01-21 12:10:37 +00:00
Fei Yang
4bcffeb9f4 8260029: aarch64: fix typo in verify_oop_array
Co-authored-by: Zhuxuan Ni <nizhuxuan@huawei.com>
Reviewed-by: shade, aph
2021-01-21 11:58:23 +00:00
Eirik Bjorsnos
e1de0bf8d4 8260043: Reduce allocation in sun.net.www.protocol.jar.Handler.parseURL
Reviewed-by: redestad, chegar
2021-01-21 10:37:40 +00:00
Thomas Stuefe
4dfd8cc4a6 8259897: gtest os.dll_address_to_function_and_library_name_vm fails on AIX
Reviewed-by: mdoerr
2021-01-21 10:30:36 +00:00
Prasanta Sadhukhan
7f7166dbc8 8260035: Deproblemlist few problemlisted test
Reviewed-by: jdv
2021-01-21 08:27:39 +00:00
Aleksey Shipilev
5940287b9f 8260048: Shenandoah: ShenandoahMarkingContext asserts are unnecessary
Reviewed-by: zgu, rkennke
2021-01-21 07:21:24 +00:00
Yasumasa Suenaga
f8a9602a0a 8260025: Missing comma in VM_Version_Ext::_family_id_amd
Reviewed-by: dholmes, stuefe
2021-01-21 06:08:13 +00:00
Jesper Wilhelmsson
133bcb0995 Merge 2021-01-21 05:23:42 +00:00
Ioi Lam
044bae0e5e 8260191: Do not include access.hpp in oop.hpp
Reviewed-by: kbarrett
2021-01-21 03:54:16 +00:00
David Holmes
77a4302309 8223056: Remove Type-Stable-Memory support for Parkers
Reviewed-by: coleenp, rehn
2021-01-21 02:41:52 +00:00
Claes Redestad
35c9da7031 8259498: Reduce overhead of MD5 and SHA digests
Reviewed-by: valeriep
2021-01-20 23:45:55 +00:00
Claes Redestad
27cc62a5c7 8259911: byteArrayViewVarHandle should throw ArrayIndexOutOfBoundsException
Reviewed-by: jvernee, mchung
2021-01-20 23:42:58 +00:00
Claes Redestad
1f47de5f6a 8260010: UTF8ZipCoder not thread-safe since JDK-8243469
Reviewed-by: lancea
2021-01-20 23:42:29 +00:00
Hai-May Chao
8b95d9549e 8256895: Add support for RFC 8954: Online Certificate Status Protocol (OCSP) Nonce Extension
Reviewed-by: jnimeh, mullan
2021-01-20 22:23:50 +00:00
Zhengyu Gu
4f11ff325f 8259488: Shenandoah: Missing timing tracking for STW CLD root processing
Reviewed-by: shade
2021-01-20 21:41:15 +00:00
Igor Ignatyev
0408b23bcf 8259757: add a regression test for 8259353 and 8259601
Co-authored-by: Xiaohong Gong <xgong@openjdk.org>
Co-authored-by: Igor Ignatyev <iignatyev@openjdk.org>
Reviewed-by: kvn, jiefu
2021-01-20 18:48:10 +00:00
Andrew John Hughes
0785147460 8259949: x86 32-bit build fails when -fcf-protection is passed in the compiler flags
Use -march=i686 instead of -march=i586 if -fcf-protection is passed to the build as CMOV is required

Reviewed-by: erikj
2021-01-20 16:13:42 +00:00
Claes Redestad
5891509d13 8259947: (fs) Optimize UnixPath.encode implementation
Reviewed-by: chegar, shade, alanb
2021-01-20 15:14:48 +00:00
Matthias Baesken
69f90b5fd4 8259843: initialize dli_fname array before calling dll_address_to_library_name
Reviewed-by: lucy, dholmes
2021-01-20 15:08:02 +00:00
Matthias Baesken
52ed2aab9b 8259786: initialize last parameter of getpwuid_r
Reviewed-by: mdoerr, hseigel
2021-01-20 15:04:28 +00:00
Leo Jiang
012051090d 8259732: JDK 16 L10n resource file update - msg drop 10
Reviewed-by: naoto
2021-01-20 13:58:49 +00:00
Stanimir Stamenkov
70b5b3119b 8257664: HTMLEditorKit: Wrong CSS relative font sizes
Reviewed-by: aivanov, psadhukhan
2021-01-20 13:34:52 +00:00
Zhengyu Gu
0b01d6924a 8260005: Shenandoah: Remove unused AlwaysTrueClosure in ShenandoahConcurrentRootScanner::roots_do()
Reviewed-by: shade, rkennke
2021-01-20 13:11:35 +00:00
Eirik Bjorsnos
05294802c4 8259867: Move encoding checks into ZipCoder
Reviewed-by: redestad, lancea
2021-01-20 12:02:39 +00:00
Tobias Hartmann
7c32ffea51 8258383: vmTestbase/gc/g1/unloading/tests/unloading_compilation_level[1,2,3] time out without TieredCompilation
Reviewed-by: kvn
2021-01-20 11:48:27 +00:00
Matthias Baesken
9f21bb6ac1 8259983: do not use uninitialized expand_ms value in G1CollectedHeap::expand_heap_after_young_collection
Reviewed-by: kbarrett, lucy
2021-01-20 07:49:07 +00:00
Jesper Wilhelmsson
cf25383d19 Merge 2021-01-19 22:49:44 +00:00
Zhengyu Gu
a37cd5a313 8259859: Missing metaspace NMT memory tag
Reviewed-by: iklam
2021-01-19 20:01:45 +00:00
Kim Barrett
33dcc00c55 8132984: incorrect type for Reference.discovered
Use unbounded wildcard placeholders, plus a new helper to get back to the Reference<T> domain.

Reviewed-by: rkennke, plevart, rriggs, mchung
2021-01-19 19:14:30 +00:00
Martin Buchholz
f7b96d347a 8259796: timed CompletableFuture.get may swallow InterruptedException
Reviewed-by: dl, alanb
2021-01-19 18:41:08 +00:00
Aleksey Shipilev
3edf393d42 8259978: PPC64 builds broken after JDK-8258004
Reviewed-by: lucy, iklam
2021-01-19 18:33:18 +00:00
Markus Grönlund
5d8861b03d 8259995: Missing comma to separate years in copyright header
Reviewed-by: egahlin
2021-01-19 16:56:07 +00:00
Markus Grönlund
5cfb36e79a 8259036: Failed JfrVersionSystem invariant when VM built with -fno-elide-constructors
Reviewed-by: egahlin
2021-01-19 15:27:22 +00:00
Aleksey Shipilev
c0e9c44628 8259962: Shenandoah: task queue statistics is inconsistent after JDK-8255019
Reviewed-by: zgu
2021-01-19 14:39:04 +00:00
Harold Seigel
82adfb3233 8134540: Much nearly duplicated code for PerfMemory support
Reviewed-by: coleenp, dholmes
2021-01-19 13:44:07 +00:00
Aleksey Shipilev
a9519c83b8 8259924: GitHub actions fail on Linux x86_32 with "Could not configure libc6:i386"
Reviewed-by: dholmes
2021-01-19 09:38:36 +00:00
Yasumasa Suenaga
139f5d33e1 8259035: Comments for load order of hsdis should be updated
Reviewed-by: thartmann
2021-01-19 08:57:44 +00:00
Jie Fu
bd81ccfd92 8259957: Build failure without C1 Compiler after JDK-8258004
Reviewed-by: dholmes, shade
2021-01-19 07:43:53 +00:00
Sergey Bylokhov
dfee7b8ad6 8259511: java/awt/Window/MainKeyWindowTest/TestMainKeyWindow.java failed with "RuntimeException: Test failed: 20 failure(s)"
Reviewed-by: jdv
2021-01-19 07:16:02 +00:00
Ioi Lam
14ce8f1a52 8259870: zBarrier.inline.hpp should not include javaClasses.hpp
Reviewed-by: stefank, tschatzl
2021-01-19 06:44:54 +00:00
Jesper Wilhelmsson
a1a851b6db Merge 2021-01-19 05:43:27 +00:00
Ioi Lam
492bebc7aa 8258004: Remove unnecessary inclusion of vm_version.hpp
Reviewed-by: dholmes, stefank
2021-01-19 04:32:51 +00:00
Xin Liu
533a2d398b 8258961: move some fields of SafePointNode from public to protected
Reviewed-by: thartmann, kvn
2021-01-18 22:34:05 +00:00
Alexander Zuev
bb0821eb6a 8258643: [TESTBUG] javax/swing/JComponent/7154030/bug7154030.java failed with "Exception: Failed to hide opaque button"
Reviewed-by: trebari, psadhukhan
2021-01-18 22:12:06 +00:00
Aleksey Shipilev
6b4732fe51 8259679: GitHub actions should use MSVC 14.28
Reviewed-by: ihse, redestad
2021-01-18 18:42:05 +00:00
Markus Grönlund
061ffc47cf 8249245: assert(((((JfrTraceIdBits::load(klass)) & ((JfrTraceIdEpoch::this_epoch_method_and_class_bits()))) != 0))) failed: invariant
Reviewed-by: egahlin
2021-01-18 16:14:07 +00:00
Roman Kennke
e60c992699 8259849: Shenandoah: Rename store-val to IU-barrier
Reviewed-by: zgu, shade
2021-01-18 15:29:54 +00:00
Jaikiran Pai
db9c114d40 7146776: deadlock between URLStreamHandler.getHostAddress and file.Handler.openconnection
Reviewed-by: alanb, chegar
2021-01-18 11:53:22 +00:00
Laurent Bourgès
61292be755 8259681: Remove the Marlin rendering engine (single-precision)
Reviewed-by: serb
2021-01-18 11:34:10 +00:00
Aleksey Shipilev
ff275b3764 8259403: Zero: crash with NULL MethodHandle receiver
Reviewed-by: coleenp
2021-01-18 10:28:14 +00:00
Markus Grönlund
cd25bf2ee7 8259574: SIGSEGV in BFSClosure::closure_impl
Reviewed-by: stefank, egahlin
2021-01-18 10:22:16 +00:00
Albert Mingkun Yang
e93f08e2ac 8074101: Add verification that all tasks are actually claimed during roots processing
Reviewed-by: kbarrett, tschatzl
2021-01-18 08:33:33 +00:00
Alexander Zuev
917f7e9a95 8259650: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button"
Reviewed-by: jdv
2021-01-18 08:23:55 +00:00
Roland Westrelin
d5ca3b3fd5 8259641: C2: assert(early->dominates(LCA)) failed: early is high enough
Reviewed-by: chagedorn, thartmann
2021-01-18 07:54:48 +00:00
Prasanta Sadhukhan
3f19ef63b7 8202880: Test javax/swing/JPopupMenu/8075063/ContextMenuScrollTest.java fails
Reviewed-by: aivanov
2021-01-18 07:20:12 +00:00
Valerie Peng
68cf65d284 8023980: JCE doesn't provide any class to handle RSA private key in PKCS#1
Reviewed-by: weijun
2021-01-18 02:26:17 +00:00
Alexander Zuev
5dc5d9401e 8256110: Create implementation for NSAccessibilityStepper protocol
Reviewed-by: pbansal, serb
2021-01-17 20:39:22 +00:00
Alan Bateman
5f2e280cab 8259865: (fs) test/jdk/java/nio/file/attribute/UserDefinedFileAttributeView/Basic.java failing on macOS 10.13
Reviewed-by: dcubed
2021-01-17 18:13:08 +00:00
Andy Herrick
da4cf05dc6 8258755: jpackage: Invalid 32-bit exe when building app-image
Reviewed-by: asemenyuk, almatvee, kizune
2021-01-16 14:38:57 +00:00
Andy Herrick
c3bdbf9dda 8259238: Clean up Log.java and remove usage of non-final static variables.
Reviewed-by: asemenyuk, almatvee, kizune
2021-01-16 14:38:10 +00:00
Andy Herrick
6d6a23e3a7 8259062: Remove MacAppStoreBundler
Reviewed-by: asemenyuk, almatvee, kizune
2021-01-16 14:37:19 +00:00
Sebastian Stenzel
afd3f78aec 8030048: (fs) Support UserDefinedFileAttributeView/extended attributes on OS X / HFS+
Reviewed-by: alanb
2021-01-16 08:36:05 +00:00
Pankaj Bansal
bbb93ca3c8 8256126: Create implementation for NSAccessibilityImage protocol peer
Reviewed-by: kizune, serb
2021-01-16 07:52:04 +00:00
Thomas Stuefe
90c73d057d 8259569: gtest os.dll_address_to_function_and_library_name_vm fails
Reviewed-by: dcubed
2021-01-16 05:17:10 +00:00
Jesper Wilhelmsson
536082db13 Merge 2021-01-16 02:46:13 +00:00
Alex Menkov
d63388c00c 8259266: com/sun/jdi/JdbOptions.java failed with "RuntimeException: 'prop[boo] = >foo 2<' missing from stdout/stderr"
Reviewed-by: cjplummer, sspitsyn
2021-01-15 22:40:47 +00:00
Leonid Mesnik
d7d34dd964 8259799: vmTestbase/nsk/jvmti/Breakpoint/breakpoint001 is incorrect
Reviewed-by: iignatyev, sspitsyn, cjplummer
2021-01-15 19:33:23 +00:00
Kiran Sidhartha Ravikumar
fe84ecd52b 8259048: (tz) Upgrade time-zone data to tzdata2020f
Reviewed-by: naoto, erikj
2021-01-15 19:14:08 +00:00
Coleen Phillimore
9aa5672af0 8259068: Streamline class loader locking
Reviewed-by: dcubed, iklam
2021-01-15 17:47:33 +00:00
Sergey Tsypanov
27a39c8d3f 8193031: Collections.addAll is likely to perform worse than Collection.addAll
Reviewed-by: plevart
2021-01-15 17:38:08 +00:00
Phil Race
5855d52a2a 8259651: [macOS] Replace JNF_COCOA_ENTER/EXIT macros
Reviewed-by: serb
2021-01-15 17:04:53 +00:00
Phil Race
360c7226a7 8259729: Missed JNFInstanceOf -> IsInstanceOf conversion
Reviewed-by: serb, psadhukhan, kizune
2021-01-15 17:02:05 +00:00
Daniel D. Daugherty
b78cd633f6 8259846: [BACKOUT] JDK-8259278 Optimize Vector API slice and unslice operations
Reviewed-by: vlivanov, psandoz
2021-01-15 16:53:33 +00:00
liach
eb7fa00690 8259216: javadoc omits method receiver for any nested type annotation
Reviewed-by: hannesw
2021-01-15 15:12:34 +00:00
Jaroslav Bachorik
e85892bfe2 8258396: SIGILL in jdk.jfr.internal.PlatformRecorder.rotateDisk()
Reviewed-by: egahlin
Backport-of: a06cea50a5
2021-01-15 15:12:03 +00:00
Jatin Bhateja
bcf20a0dcc 8259777: Incorrect predication condition generated by ADLC
Reviewed-by: vlivanov
2021-01-15 15:03:04 +00:00
Thomas Stuefe
bbac91a4b4 8257959: Add gtest run with -XX:+UseLargePages
Reviewed-by: lfoltan, tschatzl
2021-01-15 14:51:34 +00:00
Conor Cleary
707bce080d 8257212: (bf spec) Clarify byte order of the buffer returned by CharBuffer.subsequence(int,int)
Reviewed-by: chegar, bpb, alanb
2021-01-15 14:06:38 +00:00
Jan Lahoda
0ec2c969df 8259820: JShell does not handle -source 8 properly
Reviewed-by: sundar
2021-01-15 12:45:22 +00:00
K Suman Rajkumaar
b01a15e4f0 8258884: [TEST_BUG] Convert applet-based test open/test/jdk/javax/swing/JMenuItem/8031573/bug8031573.java to a regular java test
Reviewed-by: aivanov, serb
2021-01-15 09:40:31 +00:00
Richard Reingruber
6d4a593f8d 8259627: Potential memory leaks in JVMTI after JDK-8227745
Reviewed-by: shade, stuefe, dholmes, sspitsyn
2021-01-15 07:39:38 +00:00
Tagir F. Valeev
2c8e337dff 8259622: TreeMap.computeIfAbsent deviates from spec
Reviewed-by: smarks
2021-01-15 04:11:31 +00:00
Jesper Wilhelmsson
d701babb06 Merge 2021-01-15 03:10:55 +00:00
Yasumasa Suenaga
90960c5f22 8252657: JVMTI agent is not unloaded when Agent_OnAttach is failed
Reviewed-by: dholmes, sspitsyn
2021-01-15 02:47:30 +00:00
Yasumasa Suenaga
e3b548a68b 8257736: InputStream from BodyPublishers.ofInputStream() leaks when IOE happens
Reviewed-by: dfuchs, chegar
2021-01-15 01:58:36 +00:00
Sergey Bylokhov
978bed6c7f 8259522: Apply java.io.Serial annotations in java.desktop
Reviewed-by: aivanov, psadhukhan
2021-01-15 00:28:08 +00:00
Coleen Phillimore
bf28f92555 8259713: Fix comments about ResetNoHandleMark in deoptimization
Reviewed-by: lfoltan, dcubed, dholmes
2021-01-14 23:25:14 +00:00
Chris Plummer
4f881ba54a 8258652: Assert in JvmtiThreadState::cur_stack_depth() can noticeably slow down debugging single stepping
Reviewed-by: sspitsyn, dholmes, amenkov
2021-01-14 23:04:07 +00:00
Erik Gahlin
4307fa68b7 8253505: JFR: onFlush invoked out of order with a sorted event stream
Reviewed-by: mgronlun
2021-01-14 21:26:13 +00:00
Chris Plummer
d18d26e89d 8259350: Add some internal debugging APIs to the debug agent
Reviewed-by: sspitsyn, amenkov
2021-01-14 21:01:42 +00:00
Sandhya Viswanathan
a6b2162f54 8259278: Optimize Vector API slice and unslice operations
Reviewed-by: psandoz, vlivanov
2021-01-14 17:48:44 +00:00
Zhengyu Gu
da6bcf966a 8255019: Shenandoah: Split STW and concurrent mark into separate classes
Reviewed-by: rkennke, shade
2021-01-14 17:42:52 +00:00
Vladimir Ivanov
0148adf20e 8255120: C2: assert(outer->outcnt() >= phis + 2 && outer->outcnt() <= phis + 2 + stores + 1) failed: only phis
Reviewed-by: thartmann
2021-01-14 17:18:44 +00:00
Naoto Sato
aba3431c4e 8258956: Memory Leak in StringCoding on ThreadLocal resultCached StringCoding.Result
Reviewed-by: rriggs, alanb
2021-01-14 16:58:37 +00:00
Jamil Nimeh
8554fe6ebc 8253866: Security Libs Terminology Refresh
Reviewed-by: erikj, weijun, mullan
2021-01-14 16:36:51 +00:00
Jonathan Gibbons
c2a3c7ef7d 8259727: Remove redundant "target" arguments to methods in Links
Reviewed-by: hannesw
2021-01-14 16:20:45 +00:00
Jonathan Gibbons
1620664ebc 8259723: Move Table class to formats.html package
Reviewed-by: hannesw
2021-01-14 16:18:43 +00:00
Harold Seigel
38a1201746 8258912: Remove JVM options CountJNICalls and CountJVMCalls
Reviewed-by: coleenp, lfoltan, shade
2021-01-14 15:04:31 +00:00
Daniel D. Daugherty
be57cf149e 8226416: MonitorUsedDeflationThreshold can cause repeated async deflation requests
Reviewed-by: dholmes, coleenp
2021-01-14 14:23:27 +00:00
Sergey Tsypanov
c822eda1d8 8259699: Reduce char[] copying in URLEncoder.encode(String, Charset)
Reviewed-by: attila, redestad, chegar
2021-01-14 14:18:12 +00:00
Jatin Bhateja
ff3e6e46cd 8259773: Incorrect encoding of AVX-512 kmovq instruction
Reviewed-by: vlivanov
2021-01-14 13:20:06 +00:00
Wang Xue
b8ef2bad52 8259563: The CPU model name is printed multiple times when using -Xlog:os+cpu
Reviewed-by: dholmes
2021-01-14 12:56:56 +00:00
Aleksei Efimov
b040a3d7a9 8259631: Reapply pattern match instanceof use in HttpClientImpl
Reviewed-by: dfuchs, chegar
2021-01-14 11:57:48 +00:00
Stefan Karlsson
3462f7a918 8256955: Move includes of events.hpp out of header files
Reviewed-by: kbarrett, coleenp
2021-01-14 11:34:27 +00:00
Tobias Hartmann
8b8b1f9a37 8259706: C2 compilation fails with assert(vtable_index == Method::invalid_vtable_index) failed: correct sentinel value
Reviewed-by: lucy, chagedorn
2021-01-14 07:23:09 +00:00
Alexander Zuev
ae9187d757 8256109: Create implementation for NSAccessibilityButton protocol
Reviewed-by: prr, serb
2021-01-14 05:07:25 +00:00
Hao Sun
5513f9893b 8258010: Debug build failure with clang-10 due to -Wdeprecated-copy
Reviewed-by: xliu, kvn, kbarrett
2021-01-14 04:11:20 +00:00
Jesper Wilhelmsson
51e14f2e2a Merge 2021-01-14 01:29:47 +00:00
Hai-May Chao
c7e2174bf1 8259401: Add checking to jarsigner to warn weak algorithms used in signer’s cert chain
Reviewed-by: mullan, weijun, rhalade
2021-01-13 22:32:45 +00:00
Daniel D. Daugherty
5926d75fa1 8259719: ProblemList runtime/cds/appcds/jigsaw/modulepath/ModulePathAndCP_JFR.java on Windows
Reviewed-by: pliden
2021-01-13 19:52:04 +00:00
Zhengyu Gu
ccdf171d78 8259377: Shenandoah: Enhance weak reference processing time tracking
Reviewed-by: rkennke
2021-01-13 19:01:18 +00:00
Daniel D. Daugherty
8abefdeca4 8259720: ProblemList java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.java on Windows
Reviewed-by: kizune, pbansal
2021-01-13 18:23:41 +00:00
Daniel D. Daugherty
fb8ac24720 8259722: ProblemList two jdk/jfr/startupargs tests on Windows
Reviewed-by: mgronlun
2021-01-13 18:23:12 +00:00
Vicente Romero
ac4cd2e3c9 8231461: static/instance overload leads to 'unexpected static method found in unbound lookup' when resolving method reference
Reviewed-by: mcimadamore
2021-01-13 17:27:32 +00:00
Jonathan Gibbons
916ab4e7d8 8259283: use new HtmlId and HtmlIds classes
Reviewed-by: hannesw
2021-01-13 17:01:39 +00:00
Erik Österlund
42d2d6dcc1 8259063: Possible deadlock with vtable/itable creation vs concurrent class unloading
Reviewed-by: pliden, neliasso
2021-01-13 16:48:17 +00:00
Mahendra Chhipa
5df2a949e3 8212035: merge jdk.test.lib.util.SimpleHttpServer with jaxp.library.SimpleHttpServer
Reviewed-by: dfuchs
2021-01-13 15:53:05 +00:00
Coleen Phillimore
535f2da5e2 8259486: Replace PreserveExceptionMark with implementation for CautiouslyPreserveExceptionMark
Reviewed-by: dholmes, sspitsyn
2021-01-13 14:32:52 +00:00
Jonathan Gibbons
6bb6093fca 8259657: typo in generated HELP page prevents localization
Reviewed-by: vromero
2021-01-13 12:40:25 +00:00
Aleksey Shipilev
ce94512087 8259619: C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
Reviewed-by: chagedorn, kvn
2021-01-13 12:30:28 +00:00
Aleksey Shipilev
2e124544e6 8259580: Shenandoah: uninitialized label in VerifyThreadGCState
Reviewed-by: zgu, rkennke
2021-01-13 11:55:45 +00:00
Jan Lahoda
77ca1031a0 8257236: can't use var with a class named Z
Reviewed-by: sundar
2021-01-13 11:27:52 +00:00
Nils Eliasson
5567530916 8258272: LoadVectorMaskedNode can't be replaced by zero con
Reviewed-by: chagedorn, vlivanov
2021-01-13 09:16:08 +00:00
Aleksey Shipilev
a99df45b7c 8259560: Zero m68k: "static assertion failed: align" after JDK-8252049
Reviewed-by: dholmes
2021-01-13 08:49:12 +00:00
Kim Barrett
efc36be5be 8258985: Parallel WeakProcessor may use too few threads
Use total workers rather than active.

Reviewed-by: tschatzl, ayang, sjohanss
2021-01-13 08:22:40 +00:00
liach
2243a1703b 8259485: Document need for short paths when building on Windows
Reviewed-by: erikj, shade
2021-01-13 08:02:33 +00:00
Matthias Baesken
139b6daea2 8259372: remove AIX related USE_LIBRARY_BASED_TLS_ONLY and THREAD_LOCAL special handling
Reviewed-by: dholmes, stuefe
2021-01-13 07:53:39 +00:00
Roberto Castañeda Lozano
417e1d1a4e 8259061: C2: assert(found) failed: memory-writing node is not placed in its original loop or an ancestor of it
Remove assertion that is too general, that is, it can fail on compilations where
C2 generates correct code otherwise.

Reviewed-by: chagedorn, thartmann, kvn
2021-01-13 07:22:30 +00:00
Prasanta Sadhukhan
a483869a6a 8225045: javax/swing/JInternalFrame/8146321/JInternalFrameIconTest.java fails on linux-x64
Reviewed-by: serb, pbansal, trebari
2021-01-13 07:00:37 +00:00
Prasanta Sadhukhan
44c83794f7 8256019: JLabel HTML text does not support translucent text colors
Reviewed-by: serb
2021-01-13 06:57:52 +00:00
Xiaohong Gong
793017d2ed 8259601: AArch64: Fix reinterpretX2D match rule issue
Reviewed-by: adinn, njian
2021-01-13 05:52:45 +00:00
Calvin Cheung
15dd8f3aa4 8259275: JRuby crashes while resolving invokedynamic instruction
Reviewed-by: iklam, minqi, lfoltan
2021-01-13 05:51:52 +00:00
Xiaohong Gong
1cf2378bda 8259353: VectorReinterpretNode is incorrectly optimized out
Reviewed-by: vlivanov, njian
2021-01-13 05:48:08 +00:00
Sergey Bylokhov
0957d9eb14 8259519: The java.awt.datatransfer.DataFlavor#ioInputStreamClass field is redundant
Reviewed-by: aivanov
2021-01-13 02:30:33 +00:00
Xue-Lei Andrew Fan
65bed6470c 8253635: Implement toString() for SSLEngineImpl
Reviewed-by: coffeys, wetmore
2021-01-13 01:10:29 +00:00
Dong Bo
c6d798c25a 8259629: aarch64 builds fail after JDK-8258932
Reviewed-by: kvn
2021-01-13 00:30:58 +00:00
Martin Balao
4be2173478 8259319: Illegal package access when SunPKCS11 requires SunJCE's classes
Reviewed-by: valeriep, mullan
2021-01-12 23:44:19 +00:00
Maurizio Cimadamore
17b4db31cb 8259636: Check for buffer backed by shared segment kicks in in unexpected places
Reviewed-by: sundar, alanb, chegar
2021-01-12 21:06:03 +00:00
Laurent Bourgès
e4df2098a8 7018932: Drawing very large coordinates with a dashed Stroke can cause Java to hang
Reviewed-by: serb, prr
2021-01-12 20:51:54 +00:00
Evan Whelan
5f7ccce0c0 8226810: Failed to launch JVM because of NullPointerException occured on System.props
Reviewed-by: alanb, naoto
2021-01-12 20:41:04 +00:00
Phil Race
d6a2105b5c 8259343: [macOS] Update JNI error handling in Cocoa code.
Reviewed-by: erikj, serb
2021-01-12 20:19:44 +00:00
Jonathan Gibbons
5f9cd72c54 8259645: Revert JDK-8245956 JavaCompiler still uses File API instead of Path API in a specific case
Reviewed-by: chegar
2021-01-12 19:57:08 +00:00
Maurizio Cimadamore
b03880e33b 8259634: MemorySegment::asByteBuffer does not respect spatial bounds
Reviewed-by: alanb, chegar
2021-01-12 17:09:05 +00:00
Stuart Marks
8a81cf154f 8259298: broken link in Stream::toList spec
Reviewed-by: bchristi, iris, lancea, naoto
2021-01-12 17:04:34 +00:00
Daniel D. Daugherty
c338f1167f 8259349: -XX:AvgMonitorsPerThreadEstimate=1 does not work right
Reviewed-by: coleenp, dholmes
2021-01-12 14:39:58 +00:00
Dong Bo
ccac7aaea3 8258932: AArch64: Enhance floating-point Min/MaxReductionV with fminp/fmaxp
Reviewed-by: aph
2021-01-12 13:27:47 +00:00
Coleen Phillimore
4c75d14aba 8259374: Make ThreadInVMfromNative have ResetNoHandleMark
Reviewed-by: dcubed, pchilanomate
2021-01-12 13:07:21 +00:00
Sergey Platonov
563b268c8f 8257709: C1: Double assignment in InstructionPrinter::print_stack
Reviewed-by: shade, chagedorn
2021-01-12 11:57:34 +00:00
Peter Zhelezniakov
400dc76f68 8252015: [macos11] java.awt.TrayIcon requires updates for template images
Co-authored-by: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Co-authored-by: Peter Zhelezniakov <peterz@openjdk.org>
Reviewed-by: serb
2021-01-12 11:50:19 +00:00
Thomas Stuefe
ac2dee567b 8259539: JDK-8255711 broke trap messages
Reviewed-by: lfoltan, dholmes
2021-01-12 11:41:29 +00:00
Aleksey Shipilev
4697cfa4b0 8259576: Misplaced curly brace in Matcher::find_shared_post_visit
Reviewed-by: lucy, thartmann
2021-01-12 10:52:36 +00:00
Patrick Zhang
67e1b639ba 8259380: Correct pretouch chunk size to cap with actual page size
Reviewed-by: tschatzl, sjohanss
2021-01-12 10:10:48 +00:00
Pankaj Bansal
28ff2de186 8259237: Demo selection changes with left/right arrow key. No need to press space for selection.
Reviewed-by: psadhukhan, kizune, serb
2021-01-12 09:46:06 +00:00
Richard Reingruber
a6ab9e4740 8258576: Try to get zerobased CCS if heap is above 32 and CDS is disabled
Reviewed-by: mdoerr, stuefe
2021-01-12 08:35:12 +00:00
Christian Hagedorn
a3561ae8a4 8258243: C2: assert failed ("Bad derived pointer") with -XX:+VerifyRegisterAllocator
Reviewed-by: kvn, thartmann
2021-01-12 08:18:45 +00:00
Aleksey Shipilev
46637047bf 8259583: Remove unused decode_env::_codeBuffer
Reviewed-by: thartmann
2021-01-12 07:58:12 +00:00
Aleksey Shipilev
9d4e84fd41 8259565: Zero: compiler/runtime/criticalnatives fails because CriticalJNINatives is not supported
Reviewed-by: coleenp, zgu
2021-01-12 07:49:21 +00:00
Sergey Bylokhov
98ccfbf469 8255710: Opensource unit/regression tests for CMM
Reviewed-by: pbansal, prr
2021-01-12 06:56:49 +00:00
Sergey Bylokhov
61c5b95b0d 7194219: java/awt/Component/UpdatingBootTime/UpdatingBootTime.html fails on Linux
Reviewed-by: aivanov
2021-01-12 06:53:17 +00:00
Kim Barrett
77f6290995 8258254: Move PtrQueue flush to PtrQueueSet subclasses
Reviewed-by: tschatzl, shade
2021-01-12 04:12:31 +00:00
Kim Barrett
2255ab7603 8258810: Improve enum traits
Reviewed-by: ayang, iklam, lfoltan
2021-01-12 03:38:54 +00:00
Wang Huang
ae0532edc3 8259044: JVM lacks data type qualifier when using -XX:+PrintAssembly with AArch64-Neon backend
Co-authored-by: He Xuejin <hexuejin2@huawei.com>
Reviewed-by: njian, aph
2021-01-12 01:40:08 +00:00
Ningsheng Jian
a7e5da22c4 8258384: AArch64: SVE verify_ptrue fails on some tests
Reviewed-by: adinn, ngasson
2021-01-12 01:31:58 +00:00
Jesper Wilhelmsson
b378f54df3 Merge 2021-01-12 01:08:14 +00:00
Alexander Zuev
b6d51e1554 8259585: Accessible actions do not work on mac os x
Reviewed-by: serb
2021-01-12 00:28:22 +00:00
Andrey Turbanov
022bc9f0cb 8258422: Cleanup unnecessary null comparison before instanceof check in java.base
Reviewed-by: chegar, aefimov
2021-01-11 23:30:44 +00:00
Sergey Bylokhov
ff54b77b76 8259439: Apply java.io.Serial annotations in java.datatransfer
Reviewed-by: aivanov, pbansal, trebari, darcy
2021-01-11 23:14:56 +00:00
Yasumasa Suenaga
712ea25057 8258925: configure script failed on WSL
Reviewed-by: dholmes, erikj
2021-01-11 23:13:52 +00:00
Naoto Sato
cd73939b79 8259528: Broken Link for [java.text.Normalizer.Form]
Reviewed-by: lancea, joehw, iris
2021-01-11 22:02:46 +00:00
Volker Simonis
e9929e2b5a 8259582: Backout JDK-8237578 until all affected tests have been fixed
Reviewed-by: xuelei
2021-01-11 21:36:16 +00:00
Daniel D. Daugherty
8dfc77bfa6 8259586: ProblemList dll_address_to_function_and_library_name
Reviewed-by: hseigel
2021-01-11 19:44:26 +00:00
Jonathan Gibbons
d9f21346bf 8258655: remove <-- NewPage --> comment from generated pages
Reviewed-by: hannesw
2021-01-11 18:49:50 +00:00
Jonathan Gibbons
c956e7a69c 8258659: Eliminate whitespace comments from generated pages
Reviewed-by: hannesw
2021-01-11 18:46:52 +00:00
Magnus Ihse Bursie
386196023e 8258426: Split up autoconf/version-numbers and move it to conf dir
Reviewed-by: erikj
2021-01-11 18:22:58 +00:00
Magnus Ihse Bursie
dab1787583 8259559: COMPARE_BUILD can't compare patch files
Reviewed-by: erikj
2021-01-11 18:18:46 +00:00
Harold Seigel
cf3e4bfdb5 8258838: Remove JVM option UseStackBanging
Reviewed-by: dholmes, coleenp, kvn
2021-01-11 18:18:13 +00:00
Jonathan Gibbons
2cb271e691 8253996: Javac error on jdk16 build 18: invalid flag: -Xdoclint:-missing
Reviewed-by: hannesw
2021-01-11 17:35:50 +00:00
Maurizio Cimadamore
d60a937e87 8259028: ClassCastException when using custom filesystem with wrapper FileChannel impl
Reviewed-by: chegar, alanb, uschindler
2021-01-11 16:14:56 +00:00
Guoxiong Li
33fbc10cb8 8259025: Record compact constructor using Objects.requireNonNull
Reviewed-by: attila
2021-01-11 13:50:53 +00:00
Aleksey Shipilev
e05f36f463 8259043: More Zero architectures need linkage with libatomic
Co-authored-by: Matthias Klose <doko@openjdk.org>
Reviewed-by: erikj
2021-01-11 13:45:35 +00:00
Coleen Phillimore
23801da94b 8259482: jni_Set/GetField_probe are the same as their _nh versions
Reviewed-by: hseigel, sspitsyn, dholmes
2021-01-11 12:27:30 +00:00
Clive Verghese
01b2804ef7 8237578: JDK-8214339 (SSLSocketImpl wraps SocketException) appears to not be fully fixed
Reviewed-by: xuelei, simonis
2021-01-11 12:02:09 +00:00
Magnus Ihse Bursie
1bd015fb0c 8258407: Split up CompileJavaModules.gmk into make/modules/$M/Java.gmk
Reviewed-by: erikj
2021-01-11 11:28:29 +00:00
Jan Lahoda
235488215b 8250768: javac should be adapted to changes in JEP 12
Reviewed-by: mcimadamore, erikj, jjg, ihse
2021-01-11 10:10:47 +00:00
Aleksey Shipilev
18a37f9453 8259368: Zero: UseCompressedClassPointers does not depend on UseCompressedOops
Reviewed-by: aph, zgu
2021-01-11 09:43:18 +00:00
Aleksey Shipilev
a03e22bb14 8253910: UseCompressedClassPointers depends on UseCompressedOops in vmError.cpp
Reviewed-by: rrich, dholmes
2021-01-11 09:42:48 +00:00
Thomas Stuefe
e0d748d56f 8258606: os::print_signal_handlers() should resolve the function name of the handlers
Reviewed-by: dholmes, coleenp, gziemski
2021-01-11 09:06:40 +00:00
Magnus Ihse Bursie
bd34418429 8258445: Move make/templates to make/data
Reviewed-by: erikj
2021-01-11 07:42:10 +00:00
Magnus Ihse Bursie
d21a0ea1ff 8258449: Move make/hotspot/symbols to make/data
Reviewed-by: erikj
2021-01-11 07:37:37 +00:00
Aleksey Shipilev
3974fd4f33 8259451: Zero: skip serviceability/sa tests, set vm.hasSA to false
Reviewed-by: sgehwolf, cjplummer
2021-01-11 07:33:33 +00:00
Aleksey Shipilev
bb247b02c8 8259392: Zero error reporting is broken after JDK-8255711
Reviewed-by: dholmes
2021-01-11 07:32:57 +00:00
Aleksey Shipilev
2806bf2e73 8259475: Fix bad merge in compilerOracle
Reviewed-by: redestad, thartmann
2021-01-11 07:32:27 +00:00
Xue-Lei Andrew Fan
b72de3c5fc 8259385: Cleanup unused assignment
Reviewed-by: attila
2021-01-11 00:33:22 +00:00
Martin Buchholz
9154f64349 8254973: CompletableFuture.ThreadPerTaskExecutor does not throw NPE in #execute
Reviewed-by: dl
2021-01-10 23:47:04 +00:00
Martin Buchholz
e7c174083a 8258187: IllegalMonitorStateException in ArrayBlockingQueue
Reviewed-by: dl
2021-01-10 18:38:00 +00:00
Martin Buchholz
11d5b04791 8258217: PriorityBlockingQueue constructor spec and behavior mismatch
Reviewed-by: dl
2021-01-10 18:20:16 +00:00
Tejpal Rebari
65ca5c6656 8048109: JToggleButton does not fire actionPerformed under certain conditions
Reviewed-by: serb, psadhukhan, vdyakov
2021-01-10 12:38:10 +00:00
Xue-Lei Andrew Fan
81db63e8d7 8259517: Incorrect test path in test cases
Reviewed-by: weijun
2021-01-10 04:36:12 +00:00
Martin Buchholz
270014ab4e 8234131: Miscellaneous changes imported from jsr166 CVS 2021-01
8257671: ThreadPoolExecutor.Discard*Policy: rejected tasks are not cancelled

Reviewed-by: alanb, prappo, dl
2021-01-09 21:59:27 +00:00
Martin Buchholz
63e3bd7613 8246677: LinkedTransferQueue and SynchronousQueue synchronization updates
Reviewed-by: alanb, dl
2021-01-09 21:08:32 +00:00
Martin Buchholz
5cfa8c94d6 8246585: ForkJoin updates
8229253: forkjoin/FJExceptionTableLeak.java fails "AssertionError: failed to satisfy condition"

Reviewed-by: dl
2021-01-09 20:57:52 +00:00
Sergey Bylokhov
6472104e18 6278172: TextComponent.getSelectedText() throws StringIndexOutOfBoundsException
Reviewed-by: aivanov
2021-01-09 07:22:20 +00:00
Joe Darcy
a653928230 8259512: Update --release 16 symbol information for JDK 16 build 31
Reviewed-by: jjg
2021-01-09 00:03:32 +00:00
David Holmes
7e6677b532 8259446: runtime/jni/checked/TestCheckedReleaseArrayElements.java fails with stderr not empty
Reviewed-by: dcubed
2021-01-08 22:25:21 +00:00
Roger Riggs
628c546bea 8258796: [test] Apply HexFormat to tests for java.security
Reviewed-by: xuelei
2021-01-08 21:32:54 +00:00
Roger Riggs
876c7fb5f7 8259493: [test] Use HexFormat instead of adhoc hex utilities in network code and locale SoftKeys
Reviewed-by: lancea, naoto
2021-01-08 21:31:37 +00:00
Erik Joelsson
020ec84852 8259429: Update reference to README.md
Reviewed-by: iris
2021-01-08 18:30:38 +00:00
Michael McMahon
fb68395dcd 8259014: (so) ServerSocketChannel.bind(UnixDomainSocketAddress)/SocketChannel.bind(UnixDomainSocketAddress) will have unknown user and group owner (win)
Reviewed-by: alanb
2021-01-08 15:59:45 +00:00
Daniel D. Daugherty
090bd3afc3 8259397: ThreadsSMRSupport::print_info_on() should use try_lock_without_rank_check()
Reviewed-by: coleenp, dholmes
2021-01-08 15:30:33 +00:00
Kim Barrett
10a6b0d983 8234773: Fix ThreadsSMRSupport::_bootstrap_list
Make ThreadsList noncopyable, direct initializing _bootstrap_list. Avoid C-heap allocation for _bootstrap_list.

Reviewed-by: dholmes, dcubed
2021-01-08 14:25:12 +00:00
Eric Caspole
6f7723b4ac 8258792: LogCompilation: remove redundant check fixed by 8257518
Reviewed-by: kvn, redestad
2021-01-08 14:18:21 +00:00
Guoxiong Li
697bf7ab51 8257740: Compiler crash when compiling type annotation on multicatch inside lambda
Reviewed-by: vromero
2021-01-08 13:56:07 +00:00
Thomas Schatzl
b549cbd392 8258481: gc.g1.plab.TestPLABPromotion fails on Linux x86
Reviewed-by: sjohanss, kbarrett
2021-01-08 10:52:08 +00:00
Claes Redestad
fc1d2a1e8e 8259065: Optimize MessageDigest.getInstance
Reviewed-by: valeriep
2021-01-08 09:20:42 +00:00
David Holmes
712014c595 8258077: Using -Xcheck:jni can lead to a double-free after JDK-8193234
Reviewed-by: dcubed, hseigel
2021-01-08 04:11:22 +00:00
Jesper Wilhelmsson
56a354eb55 Merge 2021-01-07 23:51:21 +00:00
Coleen Phillimore
b996cccf12 8259373: c1 and jvmci runtime code use ResetNoHandleMark incorrectly
Reviewed-by: kvn
2021-01-07 23:04:11 +00:00
Christoph Langer
677802d2ff 8258484: AIX build fails in Harfbuzz with XLC 16.01.0000.0006
Backport-of: 3f9f86f0d3
2021-01-07 22:51:49 +00:00
Jesper Wilhelmsson
555641ede5 Merge 2021-01-07 21:17:35 +00:00
Brian Burkhalter
2659bc449c 8259274: Increase timeout duration in sun/nio/ch/TestMaxCachedBufferSize.java
Reviewed-by: lancea
2021-01-07 20:57:11 +00:00
Roberto Castañeda Lozano
bc56541424 8256535: C2: randomize CCP processing order for stress testing
Add 'StressCCP' option to randomize the selection of the node to be examined in
each CCP iteration.

Reviewed-by: chagedorn, kvn, thartmann
2021-01-07 20:43:48 +00:00
Rajan Halade
1973fbee37 8039278: console.sh failed Automatically with exit code 1
Backport-of: 4ce83f2a3a
2021-01-07 19:21:41 +00:00
Roberto Castañeda Lozano
d8ad63019a 8258772: Some runtime/cds tests fail with +LogCompilation or +StressX
Emit warning about TraceDependencies results in
ClassHierarchyWalker::count_find_witness_calls() only if TraceDependencies is
actually enabled. Use standard warning() function instead of ad hoc printing.
Remove warning about using Stress(LCM|GCM|IGVN) without LogCompilation in
Compile::Compile(), and add the information to the description of the StressSeed
option instead. These changes prevent false test failures when using
LogCompilation or Stress(LCM|GCM|IGVN).

Reviewed-by: chagedorn, kvn, thartmann
2021-01-07 18:57:58 +00:00
Rajan Halade
4ce83f2a3a 8039278: console.sh failed Automatically with exit code 1
Reviewed-by: xuelei, weijun
2021-01-07 18:47:43 +00:00
Sergey Bylokhov
2e99e28fc6 8213126: java/awt/Window/MainKeyWindow/TestMainKeyWindow.java time-out on mac10.13
Reviewed-by: psadhukhan
2021-01-07 17:49:48 +00:00
Coleen Phillimore
8530ef0e4d 8259375: JvmtiExport::jni_Get/SetField_probe calls do not need ResetNoHandleMark
Reviewed-by: lfoltan, dcubed
2021-01-07 17:13:41 +00:00
Vicente Romero
acdd90b699 8258972: unexpected compilation error with generic sealed interface
Reviewed-by: jlahoda
2021-01-07 16:38:53 +00:00
Christian Hagedorn
c1fb521694 8259227: C2 crashes with SIGFPE due to a division that floats above its zero check
Reviewed-by: kvn, thartmann
2021-01-07 15:02:45 +00:00
Erik Joelsson
484e23b92a 8258657: Doc build is broken by use of new language features
Reviewed-by: tbell, iris
2021-01-07 14:57:30 +00:00
Harold Seigel
f91f92dcaa 8259317: Remove JVM option BreakAtWarning
Reviewed-by: lfoltan, coleenp
2021-01-07 13:18:50 +00:00
Matthias Baesken
3f9f86f0d3 8258484: AIX build fails in Harfbuzz with XLC 16.01.0000.0006
Reviewed-by: clanger, mdoerr
2021-01-07 12:39:44 +00:00
Coleen Phillimore
1c33847b8b 8259067: bootclasspath append takes out object lock
Reviewed-by: lfoltan, sspitsyn, iklam, dholmes
2021-01-07 12:35:16 +00:00
Erik Gahlin
4a478b8a98 8250903: jdk/jfr/javaagent/TestLoadedAgent.java fails with Mismatch in TestEvent count
Reviewed-by: mgronlun
2021-01-07 12:21:59 +00:00
Tobias Hartmann
0e6de4eb57 8259339: AllocateUninitializedArray C2 intrinsic fails with void.class input
Reviewed-by: kvn, chagedorn
2021-01-07 12:15:23 +00:00
Carter Kozak
81c0624286 8259354: Fix race condition in AbstractEventStream.nextThreadName
Reviewed-by: egahlin
2021-01-07 06:11:32 +00:00
Prasanta Sadhukhan
227f99d394 8233555: [TESTBUG] JRadioButton tests failing on MacoS
Reviewed-by: serb
2021-01-07 03:57:43 +00:00
Yasumasa Suenaga
67c2211481 8259045: Exception message from saproc.dll is garbled on Windows with Japanese locale
Reviewed-by: erikj, cjplummer, iklam
2021-01-06 23:59:52 +00:00
Yoshiki Sato
28e1f4d9ee 8247957: remove doclint support for HTML 4
8257204: Remove usage of -Xhtmlversion option from javac
8256313: JavaCompilation.gmk needs to be updated not to use --doclint-format html5 option
8258460: Remove --doclint-format option from javac
8256312: Valid anchor 'id' value not allowed

Reviewed-by: jjg, ihse
2021-01-06 22:48:00 +00:00
Jonathan Gibbons
4f914e21c4 8249633: doclint reports missing javadoc for JavaFX property methods that have a property description
Reviewed-by: hannesw
2021-01-06 19:26:17 +00:00
Jonathan Gibbons
eef43be71c 8251200: False positive messages about missing comments for serialization
Reviewed-by: hannesw
2021-01-06 18:52:59 +00:00
Joe Darcy
80544e4d5f 8250564: Remove terminally deprecated constructor in GSSUtil
8250565: Remove terminally deprecated constructor in java.net.URLDecoder

Reviewed-by: bpb, smarks, alanb, mullan
2021-01-06 18:05:33 +00:00
Phil Race
940b053065 8259232: Bad JNI lookup during printing
Reviewed-by: psadhukhan
2021-01-06 17:34:15 +00:00
Xue-Lei Andrew Fan
df721f0c69 8259291: Cleanup unnecessary local variables
Reviewed-by: mullan
2021-01-06 16:57:17 +00:00
Rajan Halade
f1bc4e05a4 8259312: VerifyCACerts.java fails as soneraclass2ca cert will expire in 90 days
Backport-of: 3be6e06958
2021-01-06 16:39:08 +00:00
Naoto Sato
4a5786b553 8259075: Update the copyright notice in the files generated by CLDR Converter tool
Reviewed-by: joehw
2021-01-06 16:30:30 +00:00
Joe Darcy
d20d2fa957 8258143: Update --release 16 symbol information for JDK 16 build 30 or later
Reviewed-by: iris, erikj
2021-01-06 16:26:23 +00:00
Rajan Halade
3be6e06958 8259312: VerifyCACerts.java fails as soneraclass2ca cert will expire in 90 days
Reviewed-by: mullan
2021-01-06 16:20:24 +00:00
Rafael Winterhalter
d25a1bed56 8259224: (ann) getAnnotatedReceiverType should not parameterize owner(s) of statically nested classes
Reviewed-by: jfranck
2021-01-06 15:46:33 +00:00
Lehua Ding
722f23610e 8259231: Epsilon: improve performance under contention during virtual space expansion
Reviewed-by: shade
2021-01-06 15:36:57 +00:00
Harold Seigel
f6cb8c558b 8258908: Remove JVM option CleanChunkPoolAsync
Reviewed-by: coleenp
2021-01-06 15:11:52 +00:00
Daniel D. Daugherty
c0540ffda9 8231627: ThreadsListHandleInErrorHandlingTest.java fails in printing all threads
Reviewed-by: eosterlund, coleenp, pchilanomate, sspitsyn
2021-01-06 14:34:55 +00:00
Aleksey Shipilev
ad45678719 8258558: Revert changes for JDK-8252505 and related issues
Reviewed-by: kvn
2021-01-06 13:27:57 +00:00
Maurizio Cimadamore
e66187d885 8259032: MappedMemorySegmentImpl#makeMappedSegment() ignores Unmapper#pagePosition
Co-authored-by: Uwe Schindler <uschindler@openjdk.org>
Reviewed-by: alanb
2021-01-06 12:18:43 +00:00
Mat Carter
7e01bc967d 8255264: Support for identifying the full range of IPv4 localhost addresses on Windows
Reviewed-by: alanb
2021-01-06 10:39:07 +00:00
Sergey Bylokhov
8a05d60532 8259042: Inconsistent use of general primitives loops
Reviewed-by: prr
2021-01-06 10:07:03 +00:00
Xin Liu
e3b9da1456 8259287: AbstractCompiler marks const in wrong position for is_c1/is_c2/is_jvmci
Reviewed-by: thartmann, chagedorn, shade
2021-01-06 09:51:18 +00:00
Prasanta Sadhukhan
32538b5b1d 8193942: Regression automated test '/open/test/jdk/javax/swing/JFrame/8175301/ScaledFrameBackgroundTest.java' fails
Reviewed-by: serb
2021-01-06 06:45:48 +00:00
Prasanta Sadhukhan
80110dac91 8259007: This test printed a blank page
Reviewed-by: prr, serb
2021-01-06 06:36:29 +00:00
Wang Huang
554e60c400 8258989: JVM is failed to inline in jdk.internal.vm.vector.VectorSupport::convert
Co-authored-by: He Xuejin <hexuejin2@huawei.com>
Reviewed-by: vlivanov, thartmann
2021-01-06 01:49:15 +00:00
Xiaohong Gong
52d3feec41 8258813: [TESTBUG] Fix incorrect Vector API test output message
Reviewed-by: psandoz, njian
2021-01-06 01:40:34 +00:00
Yasumasa Suenaga
8b4549773b 8259037: livenmethods cannot find hsdis library
Reviewed-by: cjplummer, sspitsyn
2021-01-05 22:36:09 +00:00
Guoxiong Li
7d769663b3 8255757: Javac emits duplicate pool entries on array::clone
Reviewed-by: vromero
2021-01-05 22:21:19 +00:00
Vicente Romero
d529306722 8213032: program fails with LambdaConversionException at execution time
Reviewed-by: jlahoda
2021-01-05 21:35:47 +00:00
Harold Seigel
cf9908b437 8258937: Remove JVM IgnoreRewrites flag
Reviewed-by: coleenp
2021-01-05 21:15:13 +00:00
Xue-Lei Andrew Fan
4d3d59912d 8259223: Simplify boolean expression in the SunJSSE provider
Reviewed-by: mullan
2021-01-05 19:32:46 +00:00
Zhengyu Gu
1b60acd8aa 8259252: Shenandoah: Shenandoah build failed on AArch64 after JDK-8258459
Reviewed-by: rkennke, shade
2021-01-05 18:33:41 +00:00
Xue-Lei Andrew Fan
7ddc2b5606 8258852: Arrays.asList() for single item could be replaced with List.of()
Reviewed-by: mullan
2021-01-05 18:29:35 +00:00
Sandhya Viswanathan
50bf433030 8259213: Vector conversion with part > 0 is not getting intrinsic implementation
Reviewed-by: psandoz
2021-01-05 17:42:22 +00:00
Peter Levart
85bac8c415 8259021: SharedSecrets should avoid double racy reads from non-volatile fields
Reviewed-by: shade, redestad, rriggs, mchung, rrich, alanb
2021-01-05 17:41:50 +00:00
Claes Redestad
d5aa49d154 8259236: C2 compilation fails with assert(is_power_of_2(value)) failed: value must be a power of 2: 8000000000000000
Reviewed-by: thartmann
2021-01-05 16:41:17 +00:00
Hao Sun
82bdbfd7fa 8258857: Zero: non-PCH release build fails after JDK-8258074
Reviewed-by: jiefu, shade, iklam
2021-01-05 16:28:28 +00:00
Maurizio Cimadamore
b7940aa1c4 8259027: NullPointerException in makeMappedSegment due to NULL Unmapper when length of segment is 0
Reviewed-by: chegar, uschindler
2021-01-05 16:15:28 +00:00
Harold Seigel
f4122d6aa2 8258896: Remove the JVM ForceFloatExceptions option
Reviewed-by: lfoltan, iklam, coleenp
2021-01-05 16:14:58 +00:00
Alexander Zuev
fc3b45c068 8258643: javax/swing/JComponent/7154030/bug7154030.java failed with "Exception: Failed to hide opaque button"
Reviewed-by: psadhukhan
2021-01-05 14:46:03 +00:00
Erik Gahlin
bbc2e9510b 8257906: JFR: RecordingStream leaks memory
Reviewed-by: mgronlun
Backport-of: 3c66485015
2021-01-05 13:39:57 +00:00
Roland Westrelin
6775113ce8 8258393: Shenandoah: "graph should be schedulable" assert failure
Reviewed-by: rkennke, thartmann
2021-01-05 13:06:54 +00:00
Sergey Bylokhov
a6c088131b 8256321: Some "inactive" color profiles use the wrong profile class
Reviewed-by: prr
2021-01-05 12:47:33 +00:00
Jan Lahoda
4ffbe841fc 8256266: Binding variables don't correctly support declaration annotations and the final modifier
Reviewed-by: mcimadamore
2021-01-05 11:40:25 +00:00
Christian Hagedorn
9f1516492c 8259049: Uninitialized variable after JDK-8257513
Reviewed-by: kvn, thartmann
2021-01-05 09:54:18 +00:00
Aleksey Shipilev
db6f39302b 8251944: Add Shenandoah test config to compiler/gcbarriers/UnsafeIntrinsicsTest.java
Reviewed-by: rkennke, adityam
2021-01-05 08:37:06 +00:00
Lehua Ding
3817c32fd1 8258534: Epsilon: clean up unused includes
Reviewed-by: shade, jiefu
2021-01-05 08:34:11 +00:00
Hao Sun
17d1645ece 8258751: Improve ExceptionHandlerTable dump
Reviewed-by: thartmann, chagedorn, njian
2021-01-05 08:29:41 +00:00
Hao Sun
dd8996c5f5 8258946: Fix optimization-unstable code involving signed integer overflow
Reviewed-by: thartmann, kvn
2021-01-05 07:31:44 +00:00
Ioi Lam
5ea960728c 8258459: Decouple gc_globals.hpp from globals.hpp
Reviewed-by: lfoltan, coleenp
2021-01-05 05:57:08 +00:00
Xue-Lei Andrew Fan
2499ac3db5 8259069: Fields could be final
Reviewed-by: wetmore
2021-01-05 00:11:55 +00:00
Xin Liu
f0aae81ed5 8259020: null-check of g1 write_ref_field_pre_entry is not necessary
Reviewed-by: kbarrett, ayang, phh
2021-01-04 23:58:53 +00:00
Jie Fu
216c2ec077 8258703: Incorrect 512-bit vector registers restore on x86_32
Reviewed-by: kvn, sviswanathan
2021-01-04 23:41:51 +00:00
Phil Race
e6f9926009 8257809: JNI warnings from Toolkit JPEG image decoding
Reviewed-by: serb
2021-01-04 21:09:01 +00:00
Claes Redestad
9d160aa1b7 8257815: Replace global log2 functions with efficient implementations
Reviewed-by: kbarrett, stefank
2021-01-04 21:01:25 +00:00
Zhengyu Gu
f80c63b380 8258490: Shenandoah: Full GC does not need to remark threads and drain SATB buffers
Reviewed-by: shade
2021-01-04 18:10:36 +00:00
Coleen Phillimore
7f04d23be4 8258800: Deprecate -XX:+AlwaysLockClassLoader
Reviewed-by: hseigel
2021-01-04 16:44:39 +00:00
Prasanta Sadhukhan
d679caa28d 8196466: javax/swing/JFileChooser/8062561/bug8062561.java fails
Reviewed-by: serb
2021-01-04 06:35:37 +00:00
Prasanta Sadhukhan
a2a3f4a3dc 8258924: javax/swing/JSplitPane/4201995/bug4201995.java fails in GTk L&F
Reviewed-by: serb
2021-01-04 04:33:30 +00:00
Hao Sun
f351e155e2 8258382: Fix optimization-unstable code involving pointer overflow
Reviewed-by: kbarrett
2021-01-04 02:21:58 +00:00
Guoxiong Li
526c00057e 8255729: com.sun.tools.javac.processing.JavacFiler.FilerOutputStream is inefficient
Reviewed-by: jjg
2021-01-03 17:32:46 +00:00
Sergey Bylokhov
497efefa3d 8225116: Test OwnedWindowsLeak.java intermittently fails
Reviewed-by: pbansal
2021-01-03 05:08:48 +00:00
Chris Hegarty
73f5415363 8258955: (bf) slice(int, int) on view buffers fails to adjust index according to primitive size
Reviewed-by: alanb
2021-01-02 19:29:50 +00:00
Jamil Nimeh
f5ee356540 8179503: Java should support GET OCSP calls
Reviewed-by: xuelei
2020-12-31 18:03:54 +00:00
Guoxiong Li
8435f0daf2 8258525: Some existing tests should use /nodynamiccopyright/ instead of the standard header
Reviewed-by: jjg
2020-12-30 17:20:54 +00:00
Jesper Wilhelmsson
07c93fab85 Merge 2020-12-29 05:24:20 +00:00
Guoxiong Li
881bceb9a3 8258662: JDK 17ea: Crash compiling instanceof check involving sealed interface
Reviewed-by: vromero
2020-12-28 15:32:02 +00:00
Xiaohong Gong
779ee1104c 8257147: [TESTBUG] Set a larger default loop count for the VectorAPI jtreg tests
Reviewed-by: psandoz
2020-12-28 02:44:03 +00:00
Guoxiong Li
97c99b5d7d 8216400: improve handling of IOExceptions in JavaCompiler.close()
8069116: improve fatal error handling in JavaCompiler

Reviewed-by: jjg
2020-12-26 17:30:39 +00:00
Sergey Bylokhov
fb607f1651 8245922: [macos] Taskbar.Feature.ICON_BADGE_NUMBER no longer supported on MacOS
Reviewed-by: kcr, prr
2020-12-26 05:52:05 +00:00
Xue-Lei Andrew Fan
b575dd80b6 8258914: javax/net/ssl/DTLS/RespondToRetransmit.java timed out
Reviewed-by: wetmore
2020-12-25 04:25:20 +00:00
Prasanta Sadhukhan
3f67afd3a8 8251377: [macos11] JTabbedPane selected tab text is barely legible
Reviewed-by: prr
2020-12-24 18:50:45 +00:00
Jonathan Gibbons
e2aa724a67 8258941: Test specify the Classpath exception in the header
Reviewed-by: vromero
2020-12-24 17:32:25 +00:00
Jesper Wilhelmsson
57217b58bf Merge 2020-12-24 08:28:24 +00:00
Jonathan Gibbons
c398a8281a 8258916: javac/doclint reports broken HTML on multiline mailto links
Reviewed-by: jlaskey, iris
2020-12-24 04:52:49 +00:00
Vicente Romero
23b83c518d 8253954: javac crash when compiling code with enhanced switch expressions with option -Xjcov
Reviewed-by: jjg
2020-12-24 01:24:32 +00:00
Daniel D. Daugherty
127582f81e 8258913: ProblemList javax/swing/JComboBox/6559152/bug6559152.java on Linux-X64
Reviewed-by: prr
2020-12-23 23:19:18 +00:00
Hao Sun
cdb487a6fd 8258856: VM build without C1/C2 fails after JDK-8243205
Reviewed-by: jiefu, kvn
2020-12-23 23:14:37 +00:00
Valerie Peng
78c9fb92aa 8258851: Mismatch in SunPKCS11 provider registration properties and actual implementation
Reviewed-by: weijun
2020-12-23 22:36:45 +00:00
Daniel D. Daugherty
8b37c2c58f 8257468: runtime/whitebox/TestWBDeflateIdleMonitors.java fails with Monitor should be deflated.: expected true to equal false
Reviewed-by: hseigel
2020-12-23 22:02:09 +00:00
Harold Seigel
fda0943419 8258839: Remove JVM option ExitVMOnVerifyError
Reviewed-by: iignatyev, dcubed, coleenp
2020-12-23 20:49:36 +00:00
Valerie Peng
cd94606c0c 8258186: Replace use of JNI_COMMIT mode with mode 0
Reviewed-by: xuelei, alanb
2020-12-23 20:47:54 +00:00
Daniel D. Daugherty
e46edb5528 8258911: ProblemList serviceability/attach/RemovingUnixDomainSocketTest.java on Linux-X64
Reviewed-by: amenkov
2020-12-23 20:30:27 +00:00
Prasanta Sadhukhan
91244cc738 8258557: Deproblemlist fixed problemlisted test
Reviewed-by: trebari, serb
2020-12-23 16:35:31 +00:00
Harold Seigel
244573509d 8258837: Remove JVM option DisableStartThread
Reviewed-by: kbarrett, dcubed
2020-12-23 14:45:13 +00:00
Daniel D. Daugherty
9cd8e38ab8 8257521: runtime/logging/MonitorInflationTest.java crashed in MonitorList::unlink_deflated
Reviewed-by: kbarrett
2020-12-23 14:36:47 +00:00
Sean Coffey
a4e082e985 8253368: TLS connection always receives close_notify exception
Reviewed-by: xuelei
2020-12-23 12:26:44 +00:00
Hao Sun
4ea88512dd 8257928: Test image build failure with clang-10 due to -Wmisleading-indentation
Reviewed-by: amenkov, cjplummer
2020-12-23 01:32:05 +00:00
Jesper Wilhelmsson
f2bad3a0be Merge 2020-12-22 21:16:59 +00:00
Xue-Lei Andrew Fan
47c9b437af 8258828: The method local variable is not really used
Reviewed-by: jnimeh, wetmore
2020-12-22 19:43:20 +00:00
Lin Zang
0ae78d4cd0 8258593: remove redundant codes in HeapObjectDumper
Reviewed-by: coleenp, lfoltan, cjplummer
2020-12-22 19:19:51 +00:00
Daniel D. Daugherty
61e5e393a7 8258832: ProblemList com/sun/jdi/AfterThreadDeathTest.java on Linux-X64
Reviewed-by: ccheung, amenkov
2020-12-22 18:59:36 +00:00
Xue-Lei Andrew Fan
39e03a0b2c 8258804: Collection.toArray() should use empty array
Reviewed-by: mullan
2020-12-22 18:12:37 +00:00
Daniel D. Daugherty
eabc9030ab 8258827: ProblemList Naming/DefaultRegistryPort.java and Naming/legalRegistryNames/LegalRegistryNames.java on Windows
Reviewed-by: rriggs, msheppar, prr
2020-12-22 17:15:34 +00:00
Weijun Wang
9e463d1a88 8258631: Remove sun.security.jgss.krb5.Krb5Util.getSubject()
Reviewed-by: xuelei
2020-12-22 16:41:19 +00:00
Corey Ashford
0849117d5c 8256431: [PPC64] Implement Base64 encodeBlock() for Power64-LE
Reviewed-by: mdoerr
2020-12-22 14:19:32 +00:00
Daniel D. Daugherty
172af1524d 8258284: clean up issues with nested ThreadsListHandles
Reviewed-by: eosterlund, rehn
2020-12-22 14:07:43 +00:00
Daniel D. Daugherty
88dd6a9434 8258802: ProblemList TestJstatdDefaults.java, TestJstatdRmiPort.java, and TestJstatdServer.java
Reviewed-by: amenkov, cjplummer
2020-12-22 13:43:17 +00:00
Vladimir Ivanov
772addfd24 8258790: C2: Crash on empty macro node list
Reviewed-by: kvn, chagedorn
2020-12-22 12:12:21 +00:00
Roberto Castañeda Lozano
3df6ec2fbc 8258682: compiler/intrinsics/mathexact/sanity tests fail with RepeatCompilation
Normalize match and suspect counts in the verify() method by the number of
compilation repetitions, if the RepeatCompilation option is used.

Reviewed-by: kvn, chagedorn
2020-12-22 10:04:00 +00:00
Jie Fu
1594372c28 8258584: java/util/HexFormat/HexFormatTest.java fails on x86_32
Reviewed-by: rriggs
2020-12-22 02:07:33 +00:00
Xin Liu
30b9ff660f 8258653: CallJavaNode::_bci is not in use
Reviewed-by: kvn, vlivanov
2020-12-21 23:27:33 +00:00
Xue-Lei Andrew Fan
12297a00ef 8258736: No break in the loop
Reviewed-by: wetmore
2020-12-21 19:09:03 +00:00
Guoxiong Li
01d51a101a 8231622: SuppressWarning("serial") ignored on field serialVersionUID
Reviewed-by: jjg
2020-12-21 17:50:21 +00:00
Jonathan Gibbons
8da7c58016 8258443: doclint should be service-loaded with system class loader
Reviewed-by: alanb
2020-12-21 17:04:37 +00:00
Roberto Castañeda Lozano
4e8338eb13 8255763: C2: OSR miscompilation caused by invalid memory instruction placement
Disable GCM hoisting of memory-writing nodes for irreducible CFGs. This prevents
GCM from wrongly "hoisting" stores into descendants of their original loop. Such
an "inverted hoisting" can happen due to CFGLoop::compute_freq()'s inaccurate
estimation of frequencies for irreducible CFGs.

Extend CFG verification code by checking that memory-writing nodes are placed in
either their original loop or an ancestor.

Add tests for the reducible and irreducible cases. The former was already
handled correctly before the change (the frequency estimation model prevents
"inverted hoisting" for reducible CFGs), and is just added for coverage.

This change addresses the specific miscompilation issue in a conservative way,
for simplicity and safety. Future work includes investigating if only the
illegal blocks can be discarded as candidates for GCM hoisting, and refining
frequency estimation for irreducible CFGs.

Reviewed-by: kvn, chagedorn
2020-12-21 13:04:24 +00:00
Roman Kennke
2525f39d35 8258714: Shenandoah: Process references before evacuation during degen
Reviewed-by: shade
2020-12-21 12:42:34 +00:00
Jaroslav Bachorik
a06cea50a5 8258396: SIGILL in jdk.jfr.internal.PlatformRecorder.rotateDisk()
Reviewed-by: mgronlun
2020-12-21 11:43:13 +00:00
Jesper Wilhelmsson
d234388042 Merge 2020-12-21 09:09:05 +00:00
Anton Kozlov
d4c7db5060 8257620: Do not use objc_msgSend_stret to get macOS version
Reviewed-by: ihse, rriggs
2020-12-21 08:44:59 +00:00
Christian Hagedorn
8e42efaada 8257513: C2: assert((constant_addr - _masm.code()->consts()->start()) == con.offset())
Reviewed-by: kvn, thartmann
2020-12-21 08:06:48 +00:00
Phil Race
fa50877c2e 8257853: Remove dependencies on JNF's JNI utility functions in AWT and 2D code
Reviewed-by: psadhukhan, kizune
2020-12-19 23:35:04 +00:00
Andrey Turbanov
580af4906d 8258006: Replaces while cycles with iterator with enhanced for in java.desktop
Reviewed-by: prr, serb
2020-12-19 22:19:41 +00:00
Alexander Zuev
dc7f01f448 8257584: [macos] NullPointerException originating from LWCToolkit.java
Reviewed-by: serb
2020-12-19 21:34:34 +00:00
Prasanta Sadhukhan
c7c53d016e 8258554: javax/swing/JTable/4235420/bug4235420.java fails in GTK L&F
Reviewed-by: serb
2020-12-19 12:00:18 +00:00
Doug Simon
c50b464a12 8258715: [JVMCI] separate JVMCI code install timers for CompileBroker and hosted compilations
Reviewed-by: kvn
2020-12-19 11:17:16 +00:00
Mikael Vidstedt
64644a1072 8253881: Hotspot/Serviceability Terminology Refresh
Reviewed-by: kbarrett, tschatzl, dholmes, lfoltan, dcubed
2020-12-19 02:47:28 +00:00
Brent Christian
e680ebeb2f 8258007: Add instrumentation to NativeLibraryTest
Reviewed-by: mchung, naoto
2020-12-19 00:17:02 +00:00
Alexandre Iline
6a78b2a2b2 8258645: Bring Jemmy 1.3.11 to JDK test base
Reviewed-by: serb
2020-12-18 21:16:35 +00:00
Igor Veresov
7f92d187b1 8258553: Limit number of fields in instance to be considered for scalar replacement
Reviewed-by: kvn, vlivanov
2020-12-18 21:08:04 +00:00
Xin Liu
adf0e23aa2 8257800: CompileCommand TypedMethodOptionMatcher::parse_method_pattern() may over consume
Reviewed-by: thartmann, chagedorn, phh
2020-12-18 20:35:38 +00:00
Yumin Qi
06c24e14eb 8256213: Remove os::split_reserved_memory
Reviewed-by: ccheung, iklam
2020-12-18 20:23:43 +00:00
Chris Hegarty
be41468c83 8258696: Temporarily revert use of pattern match instanceof until docs-reference is fixed
Reviewed-by: rriggs, dcubed, bpb, jjg, dfuchs, aefimov
2020-12-18 19:49:28 +00:00
Xue-Lei Andrew Fan
a4f393caf4 8258661: Inner class ResponseCacheEntry could be static
Reviewed-by: jnimeh
2020-12-18 19:01:57 +00:00
Xue-Lei Andrew Fan
3c488199c4 8169086: DTLS tests fail intermittently with too much loops or timeout
Reviewed-by: ascarpino
2020-12-18 18:52:52 +00:00
Jonathan Gibbons
c04c7e1f10 8258002: Update "type" terminology in generated docs
Reviewed-by: hannesw
2020-12-18 18:34:25 +00:00
Leonid Mesnik
71ae05d51f 8258061: Improve diagnostic information about errors during class redefinition
Reviewed-by: coleenp, sspitsyn
2020-12-18 16:40:12 +00:00
Roger Riggs
68f2acbf4c 8252055: Use java.util.HexFormat in java.security
Reviewed-by: xuelei
2020-12-18 16:35:11 +00:00
Roger Riggs
1dae45d745 8250523: Remove abortOnException diagnostic option from TestHumongousNonArrayAllocation.java
Reviewed-by: kbarrett
2020-12-18 16:34:17 +00:00
Hannes Wallnöfer
45bd3b9ec0 8223607: --override-methods=summary ignores some signature changes
Reviewed-by: jjg
2020-12-18 15:46:25 +00:00
Kim Barrett
00d80fdd86 8258255: Move PtrQueue active flag to SATBMarkQueue
Reviewed-by: tschatzl, sjohanss
2020-12-18 15:08:46 +00:00
Jie Fu
59ae054873 8258687: Build broken on Windows after fix for JDK-8258134
Reviewed-by: thartmann
2020-12-18 14:13:01 +00:00
Joel Borggrén-Franck
1cc98bde67 8256693: getAnnotatedReceiverType parameterizes types too eagerly
Reviewed-by: vromero
2020-12-18 13:34:36 +00:00
Richard Reingruber
1ce2e94f5f 8256843: [PPC64] runtime/logging/RedefineClasses.java fails with assert: registers not saved on stack
Reviewed-by: mdoerr, lucy
2020-12-18 13:16:09 +00:00
Jie Fu
45a150b8dc 8258134: assert(size == calc_size) failed: incorrect size calculation on x86_32 with AVX512 machines
Reviewed-by: kvn, thartmann
2020-12-18 12:50:19 +00:00
Stefan Johansson
38593a4f2a 8257974: Regression 21% in DaCapo-lusearch-large after JDK-8236926
Reviewed-by: ayang, redestad, tschatzl
2020-12-18 08:14:58 +00:00
Thomas Stuefe
853c04712d 8258469: Cleanup remaining safefetch test coding
Reviewed-by: coleenp, dholmes
2020-12-18 08:13:16 +00:00
Sergey Bylokhov
7afb01dce9 8258373: Update the text handling in the JPasswordField
Reviewed-by: kizune, prr, psadhukhan
2020-12-18 06:26:16 +00:00
Yasumasa Suenaga
1e03ca13cc 8258471: "search codecache" clhsdb command does not work
Reviewed-by: cjplummer, sspitsyn
2020-12-18 04:50:09 +00:00
Stuart Marks
cbc3feeb89 8258259: Unicode linebreak matching behavior is incorrect; backout JDK-8235812
Reviewed-by: naoto
2020-12-18 00:36:33 +00:00
Nils Eliasson
7320e051ea 8258647: TestCharVect2 is very slow
Reviewed-by: vlivanov, kvn
2020-12-17 22:43:00 +00:00
Daniel Fuchs
3f77a6002e 8258582: HttpClient: the HttpClient doesn't explicitly shutdown its default executor when stopping.
Reviewed-by: chegar, michaelm
2020-12-17 22:33:38 +00:00
Rajan Halade
9fdfc6dfc6 8225072: Add LuxTrust certificate that is expiring in March 2021 to list of allowed but expired certs
8258630: Add expiry exception for QuoVadis root certificate

Backport-of: 666e6c4033
2020-12-17 22:14:25 +00:00
Jesper Wilhelmsson
f15528eb64 Merge 2020-12-17 20:41:37 +00:00
Rajan Halade
666e6c4033 8225072: Add LuxTrust certificate that is expiring in March 2021 to list of allowed but expired certs
8258630: Add expiry exception for QuoVadis root certificate

Reviewed-by: ascarpino
2020-12-17 20:27:25 +00:00
Hai-May Chao
b0b70df4ad 8246005: KeyStoreSpi::engineStore(LoadStoreParameter) spec mismatch to its behavior
Reviewed-by: xuelei
2020-12-17 20:10:54 +00:00
Jie Kang
763623db80 8258524: Instrumented EventHandler calls private instance method EventWriter.reset
Reviewed-by: mgronlun
2020-12-17 19:21:13 +00:00
Coleen Phillimore
6e824b3f51 8258408: SystemDictionary passes TRAPS to functions that don't throw exceptions
Reviewed-by: dholmes, lfoltan
2020-12-17 18:49:42 +00:00
Jonathan Gibbons
30ca0a5d4b 8247994: Localize javadoc search
Reviewed-by: hannesw, ihse
2020-12-17 18:34:27 +00:00
Phil Race
9ed0b76403 8254850: Update terminology in java.awt.GridBagLayout source code comments
Reviewed-by: kcr, kizune
2020-12-17 18:21:40 +00:00
Vicente Romero
47c180da43 8258515: javac should issue an error if an annotation is nested in a local class or interface
Reviewed-by: jjg
2020-12-17 18:08:35 +00:00
Nils Eliasson
cb5a6b1a7d 8258225: compiler/c2/cr6340864/TestIntVect.java runs faster in interpreter
Reviewed-by: vlivanov, thartmann, kvn
2020-12-17 17:50:53 +00:00
Patricio Chilano Mateo
7b05439dcc 8258057: serviceability/attach/RemovingUnixDomainSocketTest.java doesn't ignore VM warnings
Reviewed-by: cjplummer, amenkov, dholmes
2020-12-17 16:41:50 +00:00
Brian Burkhalter
143998e46c 8248383: Clarify java.io.Reader.read(char[], ...) behavior for full array
Reviewed-by: naoto, smarks, rriggs
2020-12-17 16:29:57 +00:00
Coleen Phillimore
8251b74665 8257530: vmTestbase/metaspace/stressDictionary/StressDictionary.java timed out
Reviewed-by: lfoltan
2020-12-17 15:40:44 +00:00
Alexey Semenyuk
61cbf0fffe 8258293: tools/jpackage/share/RuntimePackageTest.java#id0 with RuntimePackageTest.testUsrInstallDir2
Reviewed-by: almatvee, herrick
2020-12-17 15:33:03 +00:00
Markus Grönlund
7aac4dc175 8257621: JFR StringPool misses cached items across consecutive recordings
Reviewed-by: egahlin
2020-12-17 14:34:44 +00:00
Kim Barrett
61390d8e45 8257999: Parallel GC crash in gc/parallel/TestDynShrinkHeap.java: new region is not in covered_region
Reviewed-by: sjohanss, tschatzl
2020-12-17 14:18:00 +00:00
Coleen Phillimore
6aa8eed352 8258415: gtest for committed memory leaks reservation
Reviewed-by: hseigel, stuefe
2020-12-17 13:35:09 +00:00
Julia Boes
952dc70402 8257636: Update usage of "type" terminology in java.lang.Class and java.lang.reflect
Reviewed-by: darcy
2020-12-17 11:32:58 +00:00
Xin Liu
83be8a902c 8247732: validate user-input intrinsic_ids in ControlIntrinsic
renew webrev to the latest jdk. fixed a typo and a bug.  Add constraints for both DisableIntrinsic and ControlIntrinsics.  Add tests to cover different use cases of them.

Reviewed-by: neliasso, thartmann
2020-12-17 10:05:09 +00:00
Christian Hagedorn
04a1e5b75b 8258505: [TESTBUG] TestDivZeroWithSplitIf.java fails due to missing UnlockDiagnosticVMOptions
Reviewed-by: thartmann, kvn, dcubed
2020-12-17 08:09:19 +00:00
Guoxiong Li
41f312eb64 8254023: A module declaration is not allowed to be a target of an annotation that lacks an @Target meta-annotation
Reviewed-by: jfranck, vromero
2020-12-17 08:06:35 +00:00
Thomas Stuefe
178c00182c 8258479: Minor cleanups in VMError
Reviewed-by: lfoltan, coleenp
2020-12-17 05:26:11 +00:00
Jatin Bhateja
c11525a45e 8257772: Vectorizing clear memory operation using AVX-512 masked operations
Reviewed-by: thartmann, kvn
2020-12-17 04:42:19 +00:00
Prasanta Sadhukhan
d77b49d172 8258233: Reenable another fixed problemlisted test
Reviewed-by: trebari, jdv
2020-12-17 04:36:02 +00:00
Prasanta Sadhukhan
513269d24e 8196093: javax/swing/JComboBox/8072767/bug8072767.java fails
Reviewed-by: prr
2020-12-17 03:32:46 +00:00
Nick Gasson
643ddc1320 8257882: Implement linkToNative intrinsic on AArch64
Reviewed-by: jvernee, mcimadamore, aph
2020-12-17 03:24:40 +00:00
Jesper Wilhelmsson
11bd7a814f Merge 2020-12-17 03:04:19 +00:00
Brent Christian
b2f035549a 8253497: Core Libs Terminology Refresh
Reviewed-by: naoto, kcr, rriggs, joehw, bpb, smarks, alanb
2020-12-16 23:09:20 +00:00
Jonathan Gibbons
ce0ab2dd84 8258338: Support deprecated records
Reviewed-by: hannesw
2020-12-16 22:26:57 +00:00
Jonathan Gibbons
6b4b676550 8241353: NPE in ToolProvider.getSystemJavaCompiler
Reviewed-by: vromero
2020-12-16 22:21:54 +00:00
Magnus Ihse Bursie
a244b82293 8258411: Move module set configuration from Modules.gmk to conf dir
Reviewed-by: alanb, mchung
2020-12-16 21:57:32 +00:00
Roger Riggs
aa9c136d67 8251989: Hex formatting and parsing utility
Reviewed-by: tvaleev, chegar, naoto, darcy
2020-12-16 20:29:49 +00:00
Anton Litvinov
87644a2bb7 8255880: UI of Swing components is not redrawn after their internal state changed
Reviewed-by: prr
Backport-of: e8c40bafa5
2020-12-16 19:48:07 +00:00
Xue-Lei Andrew Fan
efd61c6f53 8258514: Replace Collections.unmodifiableList with List.of
Reviewed-by: jnimeh
2020-12-16 19:42:03 +00:00
Ioi Lam
59f4c4aad5 8258075: Use auto variable declarations for enum iteration
Reviewed-by: jrose, ccheung
2020-12-16 19:39:24 +00:00
Harold Seigel
330ce86123 8257700: Add logging for sealed classes in JVM_GetPermittedSubclasses
Reviewed-by: lfoltan, coleenp, dholmes
2020-12-16 19:20:54 +00:00
Coleen Phillimore
c4632647ae 8258048: Placeholder hash code is the same as Dictionary hash code
Reviewed-by: dholmes, hseigel, lfoltan
2020-12-16 19:17:58 +00:00
Magnus Ihse Bursie
ab5d581ba8 8258447: Move make/hotspot/hotspot.script to make/scripts
Reviewed-by: dcubed
2020-12-16 18:48:32 +00:00
Gerard Ziemski
70183f4d6e 8251438: Issues with our POSIX set_signal_handler()
Reviewed-by: dholmes, stuefe
2020-12-16 17:09:45 +00:00
Magnus Ihse Bursie
6eca29600d 8258420: Move URL configuration from Docs.gmk to conf dir
Reviewed-by: alanb
2020-12-16 13:38:10 +00:00
Erik Gahlin
3c66485015 8257906: JFR: RecordingStream leaks memory
Reviewed-by: mgronlun
2020-12-16 11:03:41 +00:00
Julia Boes
72dfba8053 8257637: Update usage of "type" terminology in java.lang.annotation
Reviewed-by: darcy
2020-12-16 10:46:39 +00:00
Xin Liu
0c8cc2cde4 8258058: improve description of OutOfMemoryError relevant flags
OutOfMemoryError thrown out of JVM doesn't notify hotspot, so debug.cpp::report_java_out_out_memory does not handle it. ie. Some options don't respect OOMEs from Java libraries.  We need to make the description more clear to users.

Reviewed-by: dholmes, jiefu
2020-12-16 09:01:27 +00:00
Kim Barrett
cdb53422e8 8258252: Move PtrQueue enqueue to PtrQueueSet subclasses
Reviewed-by: tschatzl, rkennke
2020-12-16 07:53:40 +00:00
Ioi Lam
17ace8339d 8258074: Move some flags related to compiler to compiler_globals.hpp
Reviewed-by: kvn, coleenp
2020-12-16 04:36:43 +00:00
Stuart Marks
47ba652d5a 8258455: problem list tools/jdeprscan/tests/jdk/jdeprscan/TestRelease.java
Reviewed-by: dholmes, darcy
2020-12-16 04:13:28 +00:00
Calvin Cheung
b5a3a5b621 8258236: Segfault in ClassListParser::resolve_indy dumping static AppCDS archive
Reviewed-by: redestad, coleenp
2020-12-16 02:37:29 +00:00
David Holmes
1e77896838 8236225: Remove expired flags in JDK 17
8256717: Expire the long term obsoleted VM flags

Reviewed-by: coleenp, kvn
2020-12-16 00:00:12 +00:00
Coleen Phillimore
4d6f318153 8257726: Make -XX:+StressLdcRewrite option a diagnostic option
Reviewed-by: lfoltan, stuefe, dcubed
2020-12-15 23:54:50 +00:00
Weijun Wang
b97fe6c410 8258419: RSA cipher buffer cleanup
Reviewed-by: valeriep
2020-12-15 22:49:35 +00:00
Ioi Lam
8bf46c7368 8258438: build error in test/hotspot/gtest/runtime/test_os.cpp
Reviewed-by: dcubed, tschatzl
2020-12-15 21:42:01 +00:00
Andrii Rodionov
7977e381ea 8254024: Enhance native libs for AWT and Swing to work with GraalVM Native Image
Reviewed-by: serb, ihse, bobv
2020-12-15 21:37:38 +00:00
Tom Rodriguez
1f556d22ca 8258380: [JVMCI] don't clear InstalledCode reference when unloading JVMCI nmethods
Reviewed-by: kvn, eosterlund
2020-12-15 21:31:00 +00:00
Pankaj Bansal
e7aa5fe602 8258427: Problem List some tests related to FileDialog for MacOS
Reviewed-by: prr, serb
2020-12-15 21:28:50 +00:00
Coleen Phillimore
c37eabe73b 8252148: vmError::controlled_crash should be #ifdef ASSERT and move tests to gtest
Reviewed-by: iklam, stuefe
2020-12-15 20:48:18 +00:00
Anton Kozlov
2273f9555a 8234930: Use MAP_JIT when allocating pages for code cache on macOS
Reviewed-by: stuefe, iklam, burban
2020-12-15 18:43:49 +00:00
Joe Darcy
da2415fed5 8257457: Update --release 16 symbol information for JDK 16 build 28
Reviewed-by: jjg
2020-12-15 17:18:48 +00:00
Yumin Qi
36e2097401 8255917: runtime/cds/SharedBaseAddress.java failed "assert(reserved_rgn != 0LL) failed: No reserved region"
Reviewed-by: ccheung, iklam, stuefe
2020-12-15 16:52:26 +00:00
Joe Darcy
e9113517d4 8258140: Update @jls tags in java.base for renamed/renumbered sections
Reviewed-by: psandoz
2020-12-15 16:48:31 +00:00
Alexey Semenyuk
d53ee6219b 8255899: Allow uninstallation of jpackage exe bundles
Reviewed-by: almatvee, herrick
2020-12-15 16:42:29 +00:00
Eric Caspole
65756abf44 8257802: LogCompilation throws couldn't find bytecode on JDK 8 log
Reviewed-by: kvn, redestad
2020-12-15 16:20:15 +00:00
Christian Hagedorn
ce36aeaac3 8257822: C2 crashes with SIGFPE due to a division that floats above its zero check
Reviewed-by: kvn, thartmann
2020-12-15 15:14:34 +00:00
Markus Grönlund
fa1cbb47aa 8258404: Restore stacktrace reuse after 8258094
Reviewed-by: egahlin
2020-12-15 14:48:57 +00:00
Maurizio Cimadamore
7ff9c85639 8258242: Type profile pollution occurs when memory segments of different kinds are used
Reviewed-by: vlivanov, redestad
2020-12-15 13:50:40 +00:00
Zhengyu Gu
a372be4ba2 8258244: Shenandoah: Not expecting forwarded object in roots during mark after JDK-8240868
Reviewed-by: rkennke
2020-12-15 13:22:10 +00:00
Thomas Stuefe
568dc29b9a 8185734: [Windows] Structured Exception Catcher missing around gtest execution
Reviewed-by: dholmes, ihse
2020-12-15 09:02:46 +00:00
Richard Reingruber
09e8675f56 8255381: com/sun/jdi/EATests.java should not suspend graal threads
Reviewed-by: cjplummer, mdoerr, sspitsyn
2020-12-15 08:38:58 +00:00
Thomas Stuefe
3ab1dfeb8f 8257828: SafeFetch may crash if invoked in non-JavaThreads
Reviewed-by: mdoerr, kbarrett, coleenp, dholmes
2020-12-15 07:00:54 +00:00
Jesper Wilhelmsson
381021aebf Merge 2020-12-15 03:40:30 +00:00
Zhengyu Gu
2c3ae19a20 8258239: Shenandoah: Used wrong closure to mark concurrent roots
Reviewed-by: rkennke
2020-12-14 17:55:23 +00:00
Kim Barrett
1ff0f1673d 8258142: Simplify G1RedirtyCardsQueue
Separate local redirty qset from redirty queue.

Reviewed-by: tschatzl, iwalulya
2020-12-14 16:13:23 +00:00
Anton Litvinov
e8c40bafa5 8255880: UI of Swing components is not redrawn after their internal state changed
Reviewed-by: prr, serb
2020-12-14 14:36:15 +00:00
Sergey Tsypanov
15481041e0 8255477: Remove unused method URL.set(String protocol, String host, int port, String file, String ref)
Reviewed-by: dfuchs
2020-12-14 13:03:55 +00:00
Claes Redestad
e69ae07f08 8257985: count_trailing_zeros doesn't handle 64-bit values on 32-bit JVM
Reviewed-by: kbarrett
2020-12-14 11:59:05 +00:00
Markus Grönlund
afc44414d5 8258094: AIX build fails after 8257602
Reviewed-by: rrich, stuefe, egahlin
2020-12-14 11:36:01 +00:00
Prasanta Sadhukhan
2ee795d9e4 8196092: javax/swing/JComboBox/8032878/bug8032878.java fails
Reviewed-by: serb, pbansal
2020-12-14 11:34:39 +00:00
Hannes Wallnöfer
164c8a6e18 8258092: Link to early access platform documentation in TestHtmlTableTags.java
Reviewed-by: jjg
2020-12-14 08:08:57 +00:00
Ioi Lam
c30fff7c32 8257229: gtest death tests fail with unrecognized stderr output
Reviewed-by: coleenp, minqi
2020-12-14 07:00:40 +00:00
Prasanta Sadhukhan
e1182920db 8258040: Reenable fixed problemlisted test
Reviewed-by: prr
2020-12-14 03:36:22 +00:00
Martin Buchholz
43dc3f7992 8254350: CompletableFuture.get may swallow InterruptedException
Reviewed-by: alanb, dl
2020-12-13 19:17:36 +00:00
Aleksey Shipilev
6d79ec87fb 8258111: Problemlist compiler/blackhole tests for -Xcomp until JDK-8258101 is fixed
Reviewed-by: iignatyev, kvn
2020-12-12 06:09:57 +00:00
Mandy Chung
2001da3dd4 8257596: Clarify trusted final fields for record classes
Reviewed-by: hseigel, chegar, psandoz
2020-12-11 22:44:48 +00:00
Vladimir Ivanov
b1afed7501 8257919: [JVMCI] profiling info didn't change after reprofile
Reviewed-by: kvn, redestad
2020-12-11 21:50:49 +00:00
Naoto Sato
74b79c6e19 8257964: Broken Calendar#getMinimalDaysInFirstWeek with java.locale.providers=HOST
Reviewed-by: joehw
2020-12-11 21:26:16 +00:00
Vicente Romero
b7ac32d6ee 8257598: Clarify what component values are used in Record::equals
Reviewed-by: darcy, chegar
2020-12-11 19:16:34 +00:00
Joe Darcy
a280182956 8258060: Update @jls tags for renamed/renumbered sections
Reviewed-by: jjg, abuckley
2020-12-11 18:38:45 +00:00
Thomas Schatzl
bacf22b907 8256641: CDS VM operations do not lock the heap
Reviewed-by: kbarrett, iklam
2020-12-11 18:14:37 +00:00
Conor Cleary
f9c9bf03a8 8255583: Investigate creating a test to trigger the condition in KeepAliveStreamCleaner
Reviewed-by: dfuchs, chegar, michaelm
2020-12-11 16:07:11 +00:00
Ivan Šipka
8273514095 8166026: Refactor java/lang shell tests to java
Reviewed-by: mullan
2020-12-11 14:37:25 +00:00
Claes Redestad
ff75ad515b 8258059: Clean up MethodData::profile_unsafe
Reviewed-by: roland, chegar
2020-12-11 11:26:10 +00:00
Per Liden
b5592c05ad 8257970: Remove julong types in os::limit_heap_by_allocatable_memory
Reviewed-by: stefank, tschatzl
2020-12-11 10:17:21 +00:00
Dongbo He
b28b0947d9 8257145: Performance regression with -XX:-ResizePLAB after JDK-8079555
Co-authored-by: Junjun Lin <linjunjun@huawei.com>
Reviewed-by: tschatzl, sjohanss
2020-12-11 09:06:10 +00:00
Kim Barrett
fa20186cb6 8257676: Simplify WeakProcessorPhase
Reviewed-by: iwalulya, ayang, tschatzl
2020-12-11 07:45:18 +00:00
Prasanta Sadhukhan
b90b7f50df 8196090: javax/swing/JComboBox/6559152/bug6559152.java fails
Reviewed-by: serb
2020-12-11 04:54:27 +00:00
Ioi Lam
1d15ebe19e 8243205: Modularize JVM flags declaration
Reviewed-by: kvn, coleenp, stefank
2020-12-11 04:18:54 +00:00
Jie Fu
8befc3210d 8258073: x86_32 build broken after JDK-8257731
Reviewed-by: iklam
2020-12-11 03:36:17 +00:00
John Lin
37dc675cd0 8247402: Documentation for Map::compute contains confusing implementation requirements
Reviewed-by: prappo, martin
2020-12-11 00:26:10 +00:00
Ioi Lam
d4282b0cfc 8257731: Remove excessive include of stubRoutines.hpp
Reviewed-by: coleenp, kvn
2020-12-10 23:57:35 +00:00
Yudi Zheng
58dca9253d 8257910: [JVMCI] Set exception_seen accordingly in the runtime.
Reviewed-by: kvn
2020-12-10 22:43:37 +00:00
Markus Grönlund
e90d0d1da4 8258065: ProblemList JfrGTestAdaptiveSampling
Reviewed-by: iignatyev
2020-12-10 22:25:23 +00:00
Doug Simon
fa77008f19 8258015: [JVMCI] JVMCI_lock shouldn't be held while initializing box classes
Reviewed-by: kvn
Backport-of: d163c6fe2e
2020-12-10 21:18:35 +00:00
Ioi Lam
80dac5a87c 8257912: Convert enum iteration to use range-based for loops
Reviewed-by: kbarrett, tschatzl, gziemski
2020-12-10 20:33:13 +00:00
Igor Ignatyev
164c55be78 8258056: jdk/javadoc/doclet/testHtmlTableTags/TestHtmlTableTags.java fails against jdk17
Reviewed-by: jwilhelm
2020-12-10 20:21:35 +00:00
Brian Burkhalter
42264b2db4 8257971: (fs) Remove unused code from WindowsPath.subpath(begin, end)
Reviewed-by: lancea
2020-12-10 19:55:44 +00:00
Igor Ignatyev
3342ecaf44 8258054: runtime/sealedClasses/GetPermittedSubclassesTest.java fails w/ jdk17
Reviewed-by: mikael, hseigel, darcy
2020-12-10 18:16:33 +00:00
Claes Redestad
f57405617e 8256424: Move ciSymbol::symbol_name() to ciSymbols::symbol_name()
Reviewed-by: kvn, iklam
2020-12-10 17:22:48 +00:00
Ioi Lam
1e5e790ba0 8258018: Remove arrayOop.inline.hpp
Reviewed-by: stefank, kbarrett, coleenp
2020-12-10 17:04:35 +00:00
Severin Gehwolf
669361117d 8253797: [cgroups v2] Account for the fact that swap accounting is disabled on some systems
Reviewed-by: hseigel
2020-12-10 16:47:02 +00:00
Joe Darcy
6be1f5671e 8257450: Start of release updates for JDK 17
8257451: Add SourceVersion.RELEASE_17
8257453: Add source 17 and target 17 to javac

Reviewed-by: dholmes, erikj, iris, mikael, jjg, jlahoda, jwilhelm, mchung, ihse
2020-12-10 16:46:28 +00:00
Doug Simon
d163c6fe2e 8258015: [JVMCI] JVMCI_lock shouldn't be held while initializing box classes
Reviewed-by: iveresov
2020-12-10 16:16:25 +00:00
Michael McMahon
b35401d6a7 8257966: Instrument test/jdk/java/nio/channels/spi/SelectorProvider/inheritedChannel/StateTestService.java
Reviewed-by: alanb, dfuchs
2020-12-10 16:02:25 +00:00
Maurizio Cimadamore
37043b0557 8257837: Performance regression in heap byte buffer views
Reviewed-by: chegar, roland
2020-12-10 15:32:36 +00:00
Magnus Ihse Bursie
0890620c94 8258005: JDK build fails with incorrect fixpath script
Co-authored-by: Mikael Vidstedt <mikael@openjdk.org>
Reviewed-by: erikj
2020-12-10 14:54:40 +00:00
Markus Grönlund
502a5241e5 8257602: Introduce JFR Event Throttling and new jdk.ObjectAllocationSample event (enabled by default)
Co-authored-by: Jaroslav Bachorik <jbachorik@openjdk.org>
Reviewed-by: egahlin, jbachorik
2020-12-10 12:33:48 +00:00
Dong Bo
026b09cf64 8257483: C2: Split immediate vector rotate from RotateLeftV and RotateRightV nodes
Reviewed-by: vlivanov
2020-12-10 12:26:04 +00:00
Per Liden
0a0691ebcf 8257901: ZGC: Take virtual memory usage into account when sizing heap
Reviewed-by: stefank, eosterlund, ayang, tschatzl
2020-12-10 11:10:38 +00:00
Christoph Langer
29ffffa7b9 8257997: sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java again reports leaks after JDK-8257884
Reviewed-by: mbaesken
2020-12-10 10:56:36 +00:00
Kim Barrett
db5da9619b 8257876: Avoid Reference.isEnqueued in tests
Reviewed-by: mchung, tschatzl
2020-12-10 10:34:47 +00:00
Daniel Fuchs
4a839e95de 8256459: java/net/httpclient/ManyRequests.java and java/net/httpclient/LineBodyHandlerTest.java fail infrequently with java.net.ConnectException: Connection timed out: no further information
Reviewed-by: chegar
2020-12-10 10:09:29 +00:00
Roland Westrelin
d93293f31b 8256730: Code that uses Object.checkIndex() range checks doesn't optimize well
Reviewed-by: vlivanov, thartmann
2020-12-10 08:09:08 +00:00
Sandhya Viswanathan
869dcb6f50 8257806: Optimize x86 allTrue and anyTrue vector mask operations of Vector API
Reviewed-by: kvn, psandoz
2020-12-10 04:31:27 +00:00
Koichi Sakata
34650f52b5 8257872: UL: -Xlog does not check number of options
Reviewed-by: dholmes, iklam, ysuenaga
2020-12-10 04:05:18 +00:00
Michael Edgar
6847bbbb11 8255918: XMLStreamFilterImpl constructor consumes XMLStreamException
Reviewed-by: joehw
2020-12-10 03:40:01 +00:00
Joe Darcy
d2f9e31ae4 8257638: Update usage of "type" terminology in javax.lang.model
Reviewed-by: jjg
2020-12-10 02:59:26 +00:00
Phil Race
f631a9901f 8256888: Client manual test problem list update
Reviewed-by: serb
2020-12-10 01:36:52 +00:00
Alexander Matveev
eb1c8a15b6 8257924: Use full path when running external executable from jpackage
Reviewed-by: herrick, asemenyuk
2020-12-10 01:01:38 +00:00
Andy Herrick
1ce2a36c7b 8257539: tools/jpackage/windows/WinL10nTest.java unpack.bat failed with Exit code: 1618
Reviewed-by: almatvee, asemenyuk, prr, kizune
2020-12-10 00:50:28 +00:00
Toshio Nakamura
53e537c738 8255387: Japanese characters were printed upside down on AIX
Reviewed-by: prr, serb
2020-12-10 00:27:44 +00:00
Coleen Phillimore
0a3e446ad9 8257993: vmTestbase/nsk/jvmti/RedefineClasses/StressRedefine/TestDescription.java crash intermittently
Reviewed-by: sspitsyn, hseigel, dholmes
2020-12-09 23:08:52 +00:00
Guoxiong Li
46c9a860b6 8245956: JavaCompiler still uses File API instead of Path API in a specific case
Reviewed-by: jjg
2020-12-09 21:09:23 +00:00
Doug Simon
baf4c1a4af 8257917: [JVMCI] crash when materializing boxed values under -Xcomp
Reviewed-by: iveresov, kvn
2020-12-09 20:26:55 +00:00
Vladimir Kozlov
fd5f6e2e19 8257986: [JVMCI] ProblemList 2 reprofile JVMCI tests
Reviewed-by: iignatyev
2020-12-09 19:21:53 +00:00
Andrey Turbanov
30de320c01 6882207: Convert javap to use diamond operator internally
Reviewed-by: jjg
2020-12-09 19:20:13 +00:00
Harold Seigel
d33a689b96 8256867: Classes with empty PermittedSubclasses attribute cannot be extended
Reviewed-by: lfoltan, mchung, jlahoda, chegar
2020-12-09 19:07:11 +00:00
Alexander Matveev
e6b4c4d716 8238781: [macos] jpackage tests failed due to "hdiutil: convert failed" in various ways
Reviewed-by: herrick, asemenyuk
2020-12-09 19:02:15 +00:00
Marcus G K Williams
b977a7b8a5 8257989: Error in gtest os_page_size_for_region_unaligned after 8257588
Reviewed-by: stuefe
2020-12-09 18:59:09 +00:00
Mandy Chung
5f03341211 8052260: Reference.isEnqueued() spec does not match the long-standing behavior returning true iff it's in the ref queue
Reviewed-by: kbarrett, alanb
2020-12-09 17:27:02 +00:00
Patrick Concannon
6dd06add9d 8254996: make jdk.net.UnixDomainPrincipal a record class
Reviewed-by: dfuchs, michaelm
2020-12-09 17:03:07 +00:00
Jan Lahoda
bd22aa5e86 8229862: NPE in jdk.compiler/com.sun.tools.javac.jvm.Code.emitop0(Code.java:570)
Co-authored-by: Bernard Blaser <bsrbnd@openjdk.org>
Reviewed-by: vromero
2020-12-09 16:49:50 +00:00
Eric Caspole
cf62b0ad86 8257518: LogCompilation: java.lang.InternalError with JFR turned on
Reviewed-by: kvn, redestad
2020-12-09 15:55:33 +00:00
Magnus Ihse Bursie
6c69eca380 8257973: UTIL_LOOKUP_PROGS should only find executable files
Reviewed-by: erikj
2020-12-09 15:41:08 +00:00
Jan Lahoda
6eff9315e1 8256950: Add record attribute support to symbol generator CreateSymbols
Reviewed-by: jjg, chegar
2020-12-09 15:05:01 +00:00
Christian Hagedorn
f148915d54 8245107: Use Unified Logging in trace_method_handle_stub()
Reviewed-by: coleenp, mdoerr
2020-12-09 14:36:13 +00:00
Martin Doerr
0201a33dd6 8255959: Timeouts in VectorConversion tests
Reviewed-by: psandoz, stuefe
2020-12-09 13:17:50 +00:00
Bernhard Urban-Forster
d3dddb6a56 8256657: Add cross-compiled build for Windows+Arm64 to submit workflow
Reviewed-by: shade, ihse
2020-12-09 11:21:37 +00:00
Ivan Šipka
616b1f12bd 8257516: define test group for manual tests
Reviewed-by: iignatyev
2020-12-09 10:28:04 +00:00
Julia Boes
5bdce9b995 8257639: Update usage of "type" terminology in java.lang.Enum & java.lang.Record
Reviewed-by: chegar, dfuchs
2020-12-09 09:32:22 +00:00
Hannes Wallnöfer
b4615c67a3 8256580: Fault in new grid display
Reviewed-by: jjg
2020-12-09 09:21:50 +00:00
Jie Fu
df55ecd83c 8257794: Zero: assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1) failed: wrong on Linux/x86_32
Reviewed-by: shade
2020-12-09 09:01:07 +00:00
Christoph Langer
fae7961a03 8257884: Re-enable sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java as automatic test
Reviewed-by: xuelei
2020-12-09 08:12:09 +00:00
Per Liden
79f1dfb8d3 8255987: JDI tests fail with com.sun.jdi.ObjectCollectedException
Reviewed-by: dholmes, cjplummer
2020-12-09 07:46:04 +00:00
Aleksey Shipilev
9ce3d806fa 8257887: java/foreign/TestSegments.java test fails on 32-bit after JDK-8257186
Reviewed-by: jiefu, adityam, redestad
2020-12-09 06:42:38 +00:00
Igor Veresov
10da767c2f 8257847: Tiered should publish MDO data pointer for interpreter after profile start
Reviewed-by: thartmann, kvn, dlong
2020-12-09 04:28:59 +00:00
Joe Darcy
2a62d5d34f 8256917: Use combo @returns tag in java.compiler javadoc
Reviewed-by: jjg, iris
2020-12-09 02:37:30 +00:00
Jonathan Gibbons
b29f9cd7b0 8075778: Add javadoc tag to avoid duplication of return information in simple situations.
Reviewed-by: prappo, jlahoda
2020-12-08 23:25:08 +00:00
Dan Smith
48d8650ae1 8257845: Integrate JEP 390
8254047: [JEP 390] Revise "value-based class" & apply to wrappers
8252181: [JEP 390] Define & apply annotation jdk.internal.ValueBased
8252183: [JEP 390] Add 'lint' warning for @ValueBased classes
8257027: [JEP 390] Diagnose synchronization on @ValueBased classes
8252180: [JEP 390] Deprecate wrapper class constructors for removal

Co-authored-by: Roger Riggs <rriggs@openjdk.org>
Co-authored-by: Srikanth Adayapalam <sadayapalam@openjdk.org>
Co-authored-by: Lois Foltan <lfoltan@openjdk.org>
Reviewed-by: rriggs, hseigel, mchung, darcy
2020-12-08 23:04:01 +00:00
Mark Reinhold
ed4c4ee73b 8256299: Implement JEP 396: Strongly Encapsulate JDK Internals by Default
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Reviewed-by: mchung, alanb
2020-12-08 22:12:24 +00:00
Marius Volkhart
c47ab5f6b7 8256515: javax.xml.XMLEventReader produces incorrect START_DOCUMENT event
Reviewed-by: joehw
2020-12-08 20:43:42 +00:00
Calvin Cheung
291ba97fab 8251267: CDS tests should use CDSTestUtils.getOutputDir instead of System.getProperty("user.dir")
Reviewed-by: minqi, iklam
2020-12-08 20:00:10 +00:00
Erik Joelsson
f48d5d1b7e 8257789: Fix incremental build of test-image and bundles
Reviewed-by: tbell, ihse
2020-12-08 18:45:38 +00:00
Brent Christian
1a9ed92d6f 8200102: NativeLibraryTest.java fails intermittently, unloaded count is not same as expected
Reviewed-by: mchung, naoto
2020-12-08 18:01:04 +00:00
Magnus Ihse Bursie
264feb35ff 8257905: Make fixpath.sh more liberal in accepting paths embedded in arguments
Reviewed-by: erikj
2020-12-08 17:59:35 +00:00
Vladimir Ivanov
044616bd71 8252049: Native memory leak in ciMethodData ctor
Reviewed-by: kbarrett, coleenp
2020-12-08 17:02:09 +00:00
Daniel Fuchs
fab6158c19 8236413: AbstractConnectTimeout should tolerate both NoRouteToHostException and UnresolvedAddressException
Reviewed-by: aefimov, michaelm
2020-12-08 16:36:04 +00:00
Gerard Ziemski
936a7acf32 8252797: Non-PCH build fails on Ubuntu 16.4 when building with gtests
Reviewed-by: dholmes
2020-12-08 15:49:11 +00:00
Jan Lahoda
d0c526513d 8256149: Weird AST structure for incomplete member select
Reviewed-by: vromero
2020-12-08 13:09:15 +00:00
Maurizio Cimadamore
a70802477e 8257194: Add 'foreign linker API' in 'jdk.incubator.foreign' module desc/summary
Reviewed-by: jvernee, shade
2020-12-08 12:15:13 +00:00
Aleksey Shipilev
35e81536e7 8257848: -XX:CompileCommand=blackhole,* should be diagnostic
Reviewed-by: vlivanov
2020-12-08 10:11:01 +00:00
Athijegannathan Sundararajan
d2b66196b4 8242258: (jrtfs) Path::toUri throws AssertionError for malformed input
Reviewed-by: alanb
2020-12-08 09:38:38 +00:00
Kim Barrett
52ab72127d 8254733: HotSpot Style Guide should permit using range-based for loops
Reviewed-by: dholmes, pliden, jrose, dcubed, iklam, eosterlund, tschatzl, kvn
2020-12-08 09:25:42 +00:00
Christian Hagedorn
1d0adbb812 8253644: C2: assert(skeleton_predicate_has_opaque(iff)) failed: unexpected
Reviewed-by: roland, kvn
2020-12-08 08:48:58 +00:00
Jan Lahoda
51ac37686c 8256411: Based anonymous classes have a weird end position
Reviewed-by: vromero
2020-12-08 08:38:24 +00:00
Roland Westrelin
0b6b6eb59a 8257813: [redo] C2: Filter type in PhiNode::Value() for induction variables of trip-counted integer loops
Reviewed-by: chagedorn, kvn
2020-12-08 08:30:18 +00:00
Jamil Nimeh
500ab45770 8257769: Cipher.getParameters() throws NPE for ChaCha20-Poly1305
Reviewed-by: mullan, valeriep
2020-12-08 06:10:10 +00:00
Vicente Romero
6ff18e38b4 8257855: Example SafeVarargsNotApplicableToRecordAccessors breaks test tools/javac/diags/CheckExamples.java
Reviewed-by: jjg
2020-12-08 04:07:38 +00:00
Erik Gahlin
cef606feca 8253762: JFR: getField(String) should be able to access subfields
Reviewed-by: mgronlun
2020-12-08 00:06:20 +00:00
Xue-Lei Andrew Fan
39b8a2e682 8257670: sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java reports leaks
Reviewed-by: jnimeh
2020-12-07 23:53:17 +00:00
Jie Fu
c43c224ef9 8257796: [TESTBUG] TestUseSHA512IntrinsicsOptionOnSupportedCPU.java fails on x86_32
Reviewed-by: kvn
2020-12-07 22:59:51 +00:00
Vladimir Ivanov
62c7788b29 8257211: C2: Enable call devirtualization during post-parse phase
Reviewed-by: kvn, neliasso, thartmann
2020-12-07 22:50:38 +00:00
David Holmes
149a02f99a 8257572: Deprecate the archaic signal-chaining interfaces: sigset and signal
Reviewed-by: ihse, alanb, dcubed, erikj
2020-12-07 21:56:05 +00:00
Eric Caspole
f92745d73e 8257718: LogCompilation: late_inline doesnt work right for JDK 8 logs
Reviewed-by: redestad, kvn
2020-12-07 21:31:19 +00:00
Joe Darcy
6937d9f9dd 8257799: Update JLS cross-references in java.compiler
Reviewed-by: jjg
2020-12-07 20:46:22 +00:00
Dean Long
a5297bd0d4 8254939: macOS: unused function 'replicate4_imm'
Reviewed-by: redestad, thartmann
2020-12-07 20:10:07 +00:00
Aleksey Shipilev
36c0600523 8257805: Add compiler/blackhole tests to tier1
Reviewed-by: kvn
2020-12-07 19:26:40 +00:00
Zhengyu Gu
395b6bdeee 8257817: Shenandoah: Don't race with conc-weak-in-progress flag in weak-LRB
Reviewed-by: rkennke
2020-12-07 19:19:23 +00:00
Alexander Matveev
a265c20138 8255619: Localized WinResources.properties have MsiInstallerStrings_en.wxl resource
Reviewed-by: herrick, naoto, asemenyuk
2020-12-07 18:11:35 +00:00
Andy Herrick
e3793e5a60 8257514: Fix the issues in jdk.jpackage identified by SpotBugs
Reviewed-by: asemenyuk, almatvee, shade
2020-12-07 18:04:04 +00:00
Maurizio Cimadamore
bbc44f57c4 8257186: Size of heap segments is not computed correctlyFix overflow in size computation for heap segments
Reviewed-by: jvernee, chegar
2020-12-07 17:25:23 +00:00
Vicente Romero
b4b9828cb0 8254784: javac should reject records with @SafeVarargs applied to varargs record component
Reviewed-by: mcimadamore
2020-12-07 16:45:51 +00:00
Xue-Lei Andrew Fan
dcf63f8578 8257788: Class fields could be local in the SunJSSE provider
Reviewed-by: shade
2020-12-07 16:35:01 +00:00
Magnus Ihse Bursie
d29c78da19 8257679: Improved unix compatibility layer in Windows build (winenv)
Reviewed-by: erikj, jvernee, burban
2020-12-07 15:55:53 +00:00
Eric Caspole
74be819088 8257517: LogCompilation: Add -z to the help messages
Reviewed-by: redestad
2020-12-07 15:41:03 +00:00
Guoxiong Li
2c04fc02c9 8257037: No javac warning when calling deprecated constructor with diamond
Reviewed-by: mcimadamore
2020-12-07 13:51:33 +00:00
Martin Doerr
46b35acfcb 8257798: [PPC64] undefined reference to Klass::vtable_start_offset()
Reviewed-by: goetz
2020-12-07 13:45:19 +00:00
Zhengyu Gu
ecd7e476f8 8257793: Shenandoah: SATB barrier should only filter out already strongly marked oops
Reviewed-by: shade, rkennke
2020-12-07 13:18:02 +00:00
Thomas Schatzl
e08b9ed0be 8257820: Remove gc/ergonomics/TestMinHeapSize.java as it is too brittle
Reviewed-by: jiefu, kbarrett
2020-12-07 12:43:35 +00:00
Jan Lahoda
637b0c64b0 8246778: Compiler implementation for Sealed Classes (Second Preview)
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Reviewed-by: lfoltan, mchung, alanb, mcimadamore, chegar
2020-12-07 11:11:31 +00:00
Erik Gahlin
09707dd4f2 8252807: The jdk.jfr.Recording.getStream does not work when toDisk is disabled
Reviewed-by: mgronlun
2020-12-07 11:09:25 +00:00
Jorn Vernee
04ce8e3840 8257184: Upstream 8252504: Add a method to MemoryLayout which returns a offset-computing method handle
Reviewed-by: mcimadamore, chegar
2020-12-07 11:08:24 +00:00
Chris Hegarty
5a03e47605 8255560: Class::isRecord should check that the current class is final and not abstract
Reviewed-by: mchung, darcy
2020-12-07 11:02:52 +00:00
Thomas Stuefe
8e8e584552 8257588: Make os::_page_sizes a bitmask
Reviewed-by: tschatzl, stefank
2020-12-07 10:32:05 +00:00
Daniel Fuchs
566d77a2ae 8254802: ThrowingPushPromisesAsStringCustom.java fails in "try throwing in GET_BODY"
Reviewed-by: michaelm
2020-12-07 09:58:16 +00:00
Roland Westrelin
f5a582c287 8257575: C2: "failed: only phis" assert failure in loop strip mining verification
Reviewed-by: thartmann, neliasso
2020-12-07 09:38:22 +00:00
Julia Boes
d05401d886 8256679: Update serialization javadoc once JOSS changes for records are complete
Reviewed-by: chegar, rriggs
2020-12-07 09:30:52 +00:00
Jie Fu
7620124ee9 8257230: assert(InitialHeapSize >= MinHeapSize) failed: Ergonomics decided on incompatible initial and minimum heap sizes
Reviewed-by: tschatzl, sjohanss
2020-12-07 09:27:33 +00:00
Aleksey Shipilev
05dac03f36 8257803: Add -Xbatch to compiler/blackhole tests
Reviewed-by: dholmes
2020-12-07 06:43:34 +00:00
Lin Zang
29a09c8911 8257668: SA JMap - skip non-java thread stack dump for heap dump
Reviewed-by: cjplummer, sspitsyn, phh
2020-12-07 04:01:51 +00:00
Aleksey Shipilev
e590618962 8252505: C1/C2 compiler support for blackholes
Reviewed-by: vlivanov, aph
2020-12-06 17:43:34 +00:00
Mandy Chung
972bc3b408 8256167: Convert JDK use of Reference::get to Reference::refersTo
Reviewed-by: sspitsyn, shade, dfuchs, alanb, kbarrett
2020-12-06 00:08:22 +00:00
Valerie Peng
78be334c38 8242332: Add SHA3 support to SunPKCS11 provider
Reviewed-by: xuelei
2020-12-05 23:47:35 +00:00
Martin Buchholz
c4339c3064 8243614: Typo in ReentrantLock's Javadoc
Reviewed-by: dholmes, alanb
2020-12-05 08:44:22 +00:00
Sergey Bylokhov
d3ac1bf16c 8198390: Test MultiResolutionDrawImageWithTransformTest.java fails when -esa is passed
Reviewed-by: kizune
2020-12-04 23:06:07 +00:00
Erik Joelsson
51d325e613 8257633: Missing -mmacosx-version-min=X flag when linking libjvm
Reviewed-by: mikael
2020-12-04 21:40:39 +00:00
Brian Burkhalter
e27ea4d12c 8257750: writeBuffer field of java.io.DataOutputStream should be final
Reviewed-by: lancea, naoto
2020-12-04 20:32:07 +00:00
Vladimir Kozlov
dd0b9454a2 8257531: Super word not applied to a loop of simple Buffer operations
Reviewed-by: roland, psandoz
2020-12-04 19:23:52 +00:00
Xue-Lei Andrew Fan
d76039d3dc 8257725: No throws of SSLHandshakeException
Reviewed-by: jnimeh
2020-12-04 18:29:55 +00:00
Xue-Lei Andrew Fan
fcc84795f6 8257724: Incorrect package of the linked class in BaseSSLSocketImpl
Reviewed-by: valeriep, wetmore
2020-12-04 18:20:14 +00:00
Calvin Cheung
d8ac76fa09 8257651: LambdaEagerInit.java test failed in 2 different ways
Reviewed-by: iklam, lfoltan
2020-12-04 17:07:00 +00:00
Mikhailo Seledtsov
3eb694605e 8257732: Problem list TestJFRWithJMX for OL 8.2 until the issue is resolved
Reviewed-by: hseigel
2020-12-04 16:38:21 +00:00
Kartik Ohri
ac54900849 8257401: Use switch expressions in jdk.internal.net.http and java.net.http
Reviewed-by: chegar, dfuchs, pconcannon
2020-12-04 15:15:56 +00:00
Roland Westrelin
86b65756cb 8257574: C2: "failed: parsing found no loops but there are some" assert failure
Reviewed-by: thartmann, neliasso, chagedorn
2020-12-04 12:01:53 +00:00
Maurizio Cimadamore
dede01eb20 8257622: MemoryAccess methods are missing @ForceInline annotations
Reviewed-by: jvernee, shade
2020-12-04 11:46:06 +00:00
Martin Doerr
1d2d9815d0 8257423: [PPC64] Support -XX:-UseInlineCaches
Reviewed-by: stuefe, rrich
2020-12-04 11:24:15 +00:00
Erik Gahlin
feabddee56 8251843: jfr/tool/TestPrintJSON.java fails intermittently
Reviewed-by: mgronlun
2020-12-04 10:37:59 +00:00
Andrey Turbanov
c6f93ec9f2 8257707: Fix incorrect format string in Http1HeaderParser
Reviewed-by: shade
2020-12-04 10:19:30 +00:00
Vladimir Ivanov
fbdc1877e2 8257624: C2: PhaseMacroExpand::eliminate_macro_nodes() crashes on out-of-bounds access into macro node array
Reviewed-by: neliasso, kvn
2020-12-04 09:37:18 +00:00
Vladimir Ivanov
fd6756ee2b 8257634: C2: Introduce IncrementalInliningForceCleanup diagnostic flag
Reviewed-by: kvn, adityam, thartmann
2020-12-04 09:24:08 +00:00
Hao Sun
af6b7f9c55 8257743: Minimal build on AArch64 failed with --disable-precompiled-headers
Reviewed-by: shade
2020-12-04 09:12:30 +00:00
Alexander Scherbatiy
d6dd440c76 8256264: Printed GlyphVector outline with low DPI has bad quality on Windows
Reviewed-by: serb
2020-12-04 09:02:20 +00:00
Alan Bateman
2b4a423fd7 8255542: Attribute length of Module, ModulePackages and other attributes is ignored
Reviewed-by: mchung, dfuchs, chegar
2020-12-04 08:59:14 +00:00
Thomas Schatzl
ca402671af 8257509: Strengthen requirements to call G1HeapVerifier::verify(VerifyOption)
Reviewed-by: sjohanss, ayang
2020-12-04 08:40:12 +00:00
Christian Hagedorn
4a85514963 8257182: JCK test failures in integer / long rotation tests
Reviewed-by: mdoerr, vlivanov, thartmann, kvn
2020-12-04 08:10:31 +00:00
Vladimir Ivanov
f33808ffc9 8257631: C2: Assertion failure in ArrayCopyNode::get_count() during late inlining
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:55:40 +00:00
Vladimir Ivanov
417e7e6317 8257632: C2: Late inlining attempt on a call with a dead memory crashes
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:55:04 +00:00
Vladimir Ivanov
6845fee905 8257625: C2: Harden input checks in vector intrinsics
Reviewed-by: thartmann
2020-12-04 07:54:24 +00:00
Vladimir Ivanov
4390f2c8c3 8257630: C2: ReplacedNodes doesn't handle non-CFG multi nodes
Reviewed-by: neliasso, kvn, thartmann
2020-12-04 07:53:17 +00:00
Andrey Turbanov
d08c612b40 8257708: Remove redundant unmodifiableSet wrapper from already immutable set returned by Collections.singleton
Reviewed-by: shade, sspitsyn
2020-12-04 06:32:14 +00:00
Valerie Peng
49f9e57715 8257734: Extraneous output in HmacSHA3_512 constructor
Reviewed-by: ascarpino
2020-12-04 03:52:04 +00:00
Andrey Turbanov
f83fd4acb4 8257438: Avoid adding duplicate values into extendedKeyCodesSet
Reviewed-by: serb
2020-12-03 23:11:55 +00:00
Jie Fu
37c7835c78 8257673: Build fails without shenandoahgc after JDK-8257563
Reviewed-by: aph, shade
2020-12-03 23:09:07 +00:00
Mandy Chung
f0b1194004 8235784: java/lang/invoke/VarHandles/VarHandleTestByteArrayAsInt.java fails due to timeout with fastdebug bits
Reviewed-by: bchristi, naoto
2020-12-03 22:14:52 +00:00
Erik Joelsson
36209b70da 8257547: Handle multiple prereqs on the same line in deps files
Reviewed-by: ihse, tbell
2020-12-03 21:41:37 +00:00
Alex Menkov
c5b32b33eb 8256808: com/sun/jdi/CatchAllTest.java failed with "NullPointerException: Cannot invoke "lib.jdb.Jdb.log(String)" because "this.jdb" is null"
Reviewed-by: cjplummer, sspitsyn
2020-12-03 21:31:33 +00:00
Sergey Bylokhov
85269470e5 6508941: java.awt.Desktop.open causes VM to crash with video files sporadically
Reviewed-by: kizune, aivanov
2020-12-03 20:08:09 +00:00
Zhengyu Gu
7c7facc234 8257701: Shenandoah: objArrayKlass metadata is not marked with chunked arrays
Reviewed-by: shade
2020-12-03 19:58:58 +00:00
Stuart Marks
2b73f9929f 8228615: Optional.empty doc should suggest using isEmpty
Reviewed-by: lancea, bpb, naoto
2020-12-03 19:32:53 +00:00
Amit Pawar
805d05812c 8254699: Suboptimal PreTouchParallelChunkSize defaults and limits
Reviewed-by: tschatzl, sjohanss
2020-12-03 19:05:04 +00:00
Zhengyu Gu
e29ee5b8a5 8257641: Shenandoah: Query is_at_shenandoah_safepoint() from control thread should return false
Reviewed-by: shade
2020-12-03 18:42:42 +00:00
Anthony Scarpino
55f5542ca2 8026976: ECParameters, Point does not match field size
Reviewed-by: xuelei
2020-12-03 18:05:53 +00:00
Volker Simonis
d3f3c32282 8255742: PrintInlining as compiler directive doesn't print virtual calls
Reviewed-by: thartmann, kvn
2020-12-03 18:02:05 +00:00
Vladimir Kozlov
6c9482eef5 8257561: Some code is not vectorized after 8251925 and 8250607
Reviewed-by: chagedorn, vlivanov, thartmann
2020-12-03 17:02:04 +00:00
Anthony Scarpino
70517c83c2 8257642: CipherByteBufferOverwriteTest copyright issue
Reviewed-by: xuelei, wetmore
2020-12-03 16:29:16 +00:00
Evgeny Astigeevich
e836396207 8257436: [aarch64] Regressions in ArrayCopyUnalignedDst.testByte/testChar for 65-78 bytes when UseSIMDForMemoryOps is on
Reviewed-by: simonis
2020-12-03 15:55:32 +00:00
Julia Boes
b170c8376d 8257591: Remove suppression of record preview related warnings in java.lang
Reviewed-by: chegar
2020-12-03 15:48:03 +00:00
Evan Whelan
66a2e70985 8255845: Memory leak in imageFile.cpp
Reviewed-by: jlaskey, sundar
2020-12-03 15:28:42 +00:00
Doug Simon
fa58671f9f 8257020: [JVMCI] enable a JVMCICompiler to specify which GCs it supports
Reviewed-by: stefank, kvn
2020-12-03 13:42:50 +00:00
Tobias Hartmann
129c37700f 8257594: C2 compiled checkcast of non-null object triggers endless deoptimization/recompilation cycle
Reviewed-by: roland, vlivanov
2020-12-03 13:42:19 +00:00
Harold Seigel
e4497c9e69 8256718: Obsolete the long term deprecated and aliased Trace flags
Reviewed-by: sspitsyn, iklam, dholmes, coleenp
2020-12-03 13:14:57 +00:00
Richard Reingruber
4a267f1bc2 8244847: Linux/PPC: runtime/CompressedOops/CompressedClassPointers: smallHeapTest fails
Reviewed-by: stuefe, mdoerr
2020-12-03 08:50:08 +00:00
Thomas Stuefe
b44a329f91 8256864: [windows] Improve tracing for mapping errors
Reviewed-by: iklam, rrich
2020-12-03 08:41:26 +00:00
Thomas Stuefe
ae1eb286c6 8257604: JNI_ArgumentPusherVaArg leaks valist
Reviewed-by: dcubed, coleenp
2020-12-03 07:50:19 +00:00
Nick Gasson
4169d96e24 8257143: Enable JVMCI code installation tests on AArch64
Reviewed-by: burban, kvn
2020-12-03 07:26:10 +00:00
Hannes Wallnöfer
a5a034b72f 8257617: TestLinkPlatform fails with new Java source version
Reviewed-by: darcy
2020-12-03 07:12:25 +00:00
Jamil Nimeh
d80ae05f61 8166596: TLS support for the EdDSA signature algorithm
Reviewed-by: xuelei
2020-12-03 06:12:07 +00:00
Kim Barrett
3932527288 8257466: Improve enum iteration
Improve support for iteration on enums that are just range of values, without named enumerators.

Reviewed-by: iklam, lfoltan
2020-12-03 04:26:23 +00:00
Ioi Lam
02a0a027f4 8257563: Remove excessive include of klass.inline.hpp
Reviewed-by: dholmes, stuefe, stefank
2020-12-03 01:34:04 +00:00
Anthony Scarpino
cc1915b3b3 8253821: Improve ByteBuffer performance with GCM
Reviewed-by: xuelei, valeriep
2020-12-02 23:10:32 +00:00
Calvin Cheung
3da30e991a 8257241: CDS should not handle disableEagerInitialization for archived lambda proxy classes
Reviewed-by: iklam, redestad, mchung
2020-12-02 22:17:46 +00:00
Vladimir Ivanov
7104400ad8 8257164: Share LambdaForms for VH linkers/invokers
Reviewed-by: redestad, kvn, psandoz
2020-12-02 21:47:27 +00:00
Leonid Mesnik
3e89981d98 8257623: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java shouldn't use timeout
Reviewed-by: sspitsyn, dcubed
2020-12-02 20:16:28 +00:00
Christoph Langer
93b6ab56ae 8256818: SSLSocket that is never bound or connected leaks socket resources
Reviewed-by: xuelei
2020-12-02 19:23:26 +00:00
Vladimir Ivanov
692b273ec5 8257189: Handle concurrent updates of MH.form better
Reviewed-by: redestad, psandoz
2020-12-02 17:35:41 +00:00
Ioi Lam
670426646d 8257565: epsilonBarrierSet.hpp should not include barrierSetAssembler
Reviewed-by: kbarrett, stuefe, shade
2020-12-02 16:56:55 +00:00
Yumin Qi
0b8c7807fe 8256256: UL should not use heap allocation for output string
Reviewed-by: dholmes, stuefe
2020-12-02 16:22:51 +00:00
Coleen Phillimore
2508bc7c58 8257140: Crash in JvmtiTagMap::flush_object_free_events()
Reviewed-by: sspitsyn, kbarrett
2020-12-02 14:09:55 +00:00
Coleen Phillimore
cfb50a9cb7 8253916: ResourceExhausted/resexhausted001 crashes on Linux-x64
Reviewed-by: stuefe, sspitsyn, dholmes
2020-12-02 13:40:26 +00:00
Stefan Karlsson
287b829c04 8254877: GCLogPrecious::_lock rank constrains what locks you are allowed to have when crashing
Reviewed-by: eosterlund
2020-12-02 12:28:38 +00:00
Stefan Karlsson
1fd0ea7035 8256382: Use try_lock for hs_err EventLog printing
Reviewed-by: stuefe
2020-12-02 12:28:10 +00:00
Magnus Ihse Bursie
bff68f1f67 8257533: legacy-jre-image includes jpackage and jlink tools
Reviewed-by: alanb, sundar
2020-12-02 10:30:48 +00:00
Stuart Monteith
9a60413ba0 8248736: [aarch64] runtime/signal/TestSigpoll.java failed "fatal error: not an ldr (literal) instruction."
Reviewed-by: aph, shade
2020-12-02 10:22:20 +00:00
Magnus Ihse Bursie
e7ca0c4ae3 8257224: JDK-8251549 didn't update building.html
Reviewed-by: sundar, shade
2020-12-02 10:18:15 +00:00
Doug Simon
7e37c7c544 8257471: fatal error: Fatal exception in JVMCI: Exception during JVMCI compiler initialization
Reviewed-by: kvn, never
2020-12-02 10:14:46 +00:00
Yasumasa Suenaga
3e3745c2da 8256008: UL does not report anything if disk writing fails
Reviewed-by: stuefe
2020-12-02 09:19:24 +00:00
Yasumasa Suenaga
fb139cff1a 8257467: [TESTBUG] -Wdeprecated-declarations is reported at sigset() in exesigtest.c
Reviewed-by: dholmes, stuefe
2020-12-02 09:06:02 +00:00
Stefan Johansson
9de283b891 8257505: nsk/share/test/StressOptions stressTime is scaled in getter but not when printed
Reviewed-by: kbarrett, dholmes
2020-12-02 08:53:54 +00:00
Sergey Bylokhov
282cb325b1 8005970: Mouse cursor is default cursor over TextArea's scrollbar
Reviewed-by: kizune
2020-12-02 06:51:53 +00:00
Jie Fu
f2a0988a4a 8257228: G1: SIGFPE in G1ConcurrentRefine::create(int*) due to buffers_to_cards overflow
Reviewed-by: kbarrett, tschatzl
2020-12-02 06:49:57 +00:00
Bradford Wetmore
fe5cccc1ec 8254631: Better support ALPN byte wire values in SunJSSE
Reviewed-by: xuelei, dfuchs
2020-12-02 04:14:28 +00:00
Alexey Semenyuk
541c7f74bb 8257434: jpackage fails to create rpm on Fedora Linux
Reviewed-by: almatvee, herrick
2020-12-02 02:50:33 +00:00
Jie Fu
8f4fa3f8d5 8257232: CompileThresholdScaling fails to work on 32-bit platforms
Reviewed-by: kvn, redestad
2020-12-02 02:31:08 +00:00
Paul Sandoz
cfd070ece6 8257537: [vector] Cleanup redundant bitwise cases on floating point vectors
Reviewed-by: vlivanov
2020-12-02 02:01:19 +00:00
Sergey Bylokhov
03f3b8eadd 8210253: Clipped UI rendering with X11 pipeline and HiDPI
Reviewed-by: aivanov, kizune
2020-12-02 00:04:20 +00:00
Xin Liu
ce496cbda5 8257190: simplify PhaseIdealLoop constructors
Currently, C2 has 3 private constructors of PhaseIdealLoop as follows. a-b are for verification. only c is for real loop optimizations.
a. PhaseIdealLoop( PhaseIterGVN &igvn)
b. PhaseIdealLoop(PhaseIterGVN &igvn, const PhaseIdealLoop *verify_me)
c. PhaseIdealLoop(PhaseIterGVN &igvn, LoopOptsMode mode)

I propose 3 changes to simplify them.
1. add assertion in the constructor c. C2 shouldn't use mode = LoopOptsVerify for it.
2. merge a and b into one constructor.
3. make the merged verification ctor only for debug builds.

Reviewed-by: thartmann, kvn
2020-12-01 23:50:53 +00:00
David Holmes
927504e827 8256474: Migrate Mutex _owner accesses to use Atomic operations
Reviewed-by: coleenp, kbarrett
2020-12-01 23:10:39 +00:00
Claes Redestad
00e79db89e 8257511: JDK-8254082 brings regression to AbstractStringBuilder.insert(int dstOffset, CharSequence s, int start, int end)
Reviewed-by: alanb, rriggs, bpb
2020-12-01 22:50:05 +00:00
Nils Eliasson
015e6e58c5 8257460: Further CompilerOracle cleanup
Reviewed-by: kvn, redestad, thartmann
2020-12-01 21:08:45 +00:00
Guoxiong Li
29d90b952c 8255968: Confusing error message for inaccessible constructor
Reviewed-by: mcimadamore
2020-12-01 21:06:06 +00:00
Brian Burkhalter
c5046ca5b3 8246739: InputStream.skipNBytes could be implemented more efficiently
Reviewed-by: rriggs, lancea, naoto
2020-12-01 20:07:53 +00:00
Mandy Chung
56b15fbbcc 8159746: (proxy) Support for default methods
Co-authored-by: Peter Levart <plevart@openjdk.org>
Reviewed-by: darcy, alanb, plevart
2020-12-01 17:23:07 +00:00
Alan Bateman
1433bafb33 8253751: Dependencies of automatic modules are not propagated through module layers
Reviewed-by: mchung
2020-12-01 15:40:10 +00:00
Patric Hedlin
e3d0f27031 8257231: assert(!is_mcall || (call_returns[block->_pre_order] <= (uint) current_offset))
Reviewed-by: shade, chagedorn
2020-12-01 14:16:41 +00:00
Aleksey Shipilev
eaf4db6b8b 8257502: Builds fail with new warnings after JDK-8256254
Reviewed-by: jiefu, stuefe
2020-12-01 13:51:35 +00:00
Claes Redestad
2966d0d334 8257223: C2: Optimize RegMask::is_bound
Reviewed-by: kvn, neliasso
2020-12-01 13:18:32 +00:00
Coleen Phillimore
3a11009dac 8256830: misc tests failed with "assert(env->is_enabled(JVMTI_EVENT_OBJECT_FREE)) failed: checking"
Reviewed-by: kbarrett, sspitsyn, dholmes
2020-12-01 13:07:41 +00:00
Mahendra Chhipa
c859fb02f3 8249836: java/io/IOException/LastErrorString.java should have bug-id as 1st word in @ignore
Reviewed-by: iignatyev
2020-12-01 12:57:36 +00:00
Yasumasa Suenaga
e0de28c1d3 8257424: RecordingStream does not specify the recording name
Reviewed-by: egahlin
2020-12-01 11:17:43 +00:00
Magnus Ihse Bursie
60f2ba9a24 8257487: Include configuration name in summary
Reviewed-by: shade
2020-12-01 11:04:13 +00:00
Per Liden
021dced22a 8257415: ZGC: Fix barrier_data types
Reviewed-by: smonteith, stefank
2020-12-01 10:40:46 +00:00
Christian Hagedorn
aa2d36f6de 8256807: C2: Not marking stores correctly as mismatched in string opts
Reviewed-by: vlivanov, roland, thartmann
2020-12-01 10:11:39 +00:00
Roland Westrelin
3d460bd295 8256655: rework long counted loop handling
Reviewed-by: kvn, thartmann, vlivanov
2020-12-01 07:30:51 +00:00
Aleksey Shipilev
13bd2e82ca 8257396: AArch64 Zero build is broken after JDK-8252684
Reviewed-by: dholmes
2020-12-01 07:14:24 +00:00
Tobias Hartmann
353e791a18 8257398: Enhance debug output in Type::check_symmetrical
Reviewed-by: vlivanov, chagedorn
2020-12-01 07:02:48 +00:00
Ioi Lam
f48737c7b3 8256254: Convert vmIntrinsics::ID to enum class
Reviewed-by: redestad, kvn
2020-12-01 05:35:29 +00:00
Sergey Bylokhov
b5ce8af3d7 8256373: [Windows/HiDPI] The Frame#setBounds does not work in a minimized state
Reviewed-by: kizune, aivanov
2020-12-01 04:49:21 +00:00
Jie Fu
0eaf0bbe26 8257420: Zero VM build broken with clang after JDK-8256726 due to strlen() is not a constexpr
Reviewed-by: shade, stuefe
2020-12-01 03:38:30 +00:00
Prasanta Sadhukhan
822ee47459 8257242: [macOS] Java app crashes while switching input methods
Reviewed-by: serb
2020-12-01 03:21:57 +00:00
Valerie Peng
7d8985243d 8244154: Update SunPKCS11 provider with PKCS11 v3.0 header files
Reviewed-by: weijun
2020-12-01 00:49:39 +00:00
Mandy Chung
4356469a31 8230501: Class data support for hidden classes
Reviewed-by: jvernee, psandoz, chegar
2020-12-01 00:24:40 +00:00
Lance Andersen
11dad148ff 8257445: (zipfs) Add DataProvider to TestLocOffsetFromZip64EF.java
Reviewed-by: bpb
2020-12-01 00:14:59 +00:00
Rohit Arul Raj
29f86e00b1 8256536: Newer AMD 19h (EPYC) Processor family defaults
Reviewed-by: kvn
2020-11-30 22:29:53 +00:00
Weijun Wang
7f58a8e954 8213719: Both sect163r2 and sect163k1 are default curves for field size 163
Reviewed-by: valeriep, xuelei
2020-11-30 22:19:53 +00:00
Xue-Lei Andrew Fan
ae5b5268f3 8257448: Clean duplicated non-null check in the SunJSSE provider implementation
Reviewed-by: mullan
2020-11-30 21:57:14 +00:00
Stuart Marks
41dbc139ab 8180352: Add Stream.toList() method
Reviewed-by: psandoz
2020-11-30 19:37:56 +00:00
Paul Sandoz
89690699b2 8256995: [vector] Improve broadcast operations
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Reviewed-by: kvn, vlivanov
2020-11-30 18:52:20 +00:00
Sergey Tsypanov
6eb25d7cb4 8254082: AbstractStringBuilder.insert(int dstOffset, CharSequence s, int start, int end) is missing fast-path for String
Reviewed-by: redestad
2020-11-30 17:43:19 +00:00
Erik Joelsson
4c86e46d75 8256810: Incremental rebuild broken on Macosx
Reviewed-by: mikael, ihse
2020-11-30 17:40:39 +00:00
Stefan Johansson
02ba5194c0 8255001: Move G1PeriodicGCTask to its own file
Reviewed-by: tschatzl, lkorinth
2020-11-30 17:37:19 +00:00
skodanda
8aaee53c2c 8256187: [TEST_BUG] Automate bug4275046.java test
Reviewed-by: aivanov, psadhukhan
2020-11-30 17:36:45 +00:00
Magnus Ihse Bursie
a3e1980c08 8256541: Sort out what version of awk is used in the build system
Reviewed-by: erikj
2020-11-30 16:35:02 +00:00
Per Liden
e3abe51a31 8257418: C2: Rename barrier data member in MemNode and LoadStoreNode
Reviewed-by: vlivanov
2020-11-30 14:15:43 +00:00
Sean Mullan
c0719605e7 8257083: Security infra test failures caused by JDK-8202343
Reviewed-by: xuelei
2020-11-30 13:31:47 +00:00
Coleen Phillimore
4db05e991b 8254042: gtest/GTestWrapper.java failed os.test_random
Reviewed-by: dholmes, stuefe, kbarrett
2020-11-30 12:48:17 +00:00
Thomas Schatzl
962f7a3bae 8257162: Initialize ThreadLocalAllocBuffer members
Reviewed-by: shade, ayang, sjohanss, pliden
2020-11-30 11:27:45 +00:00
Vladimir Ivanov
337d7bce03 8257165: C2: Improve box elimination for vector masks and shuffles
Reviewed-by: kvn, thartmann
2020-11-30 10:36:38 +00:00
Vladimir Ivanov
4e55d0f31e 8257057: C2: Improve safepoint processing during vector scalarization pass
Reviewed-by: kvn, thartmann
2020-11-30 10:30:47 +00:00
Richard Reingruber
e77aed624e 8256754: Deoptimization::revoke_for_object_deoptimization: stack processing start call is redundant
Reviewed-by: dlong, eosterlund
2020-11-30 08:37:06 +00:00
Erik Gahlin
738efea9c6 8248564: JFR: Remote Recording Stream
Reviewed-by: mgronlun
2020-11-30 08:19:08 +00:00
Claes Redestad
9bcd2695c3 8257221: C2: RegMask::is_bound_set split set handling broken since JDK-8221404
Reviewed-by: kvn, neliasso
2020-11-30 08:18:32 +00:00
David Holmes
222e943074 8257238: Cleanup include directives for precompiled.hpp
Reviewed-by: kbarrett
2020-11-30 03:38:10 +00:00
Xue-Lei Andrew Fan
fdee70d174 8257237: Cleanup unused imports in the SunJSSE provider implementation
Reviewed-by: wetmore
2020-11-30 01:54:36 +00:00
Vladimir Kozlov
816e8f83b8 8256999: Add C2 intrinsic for Reference.refersTo and PhantomReference::refersTo
Reviewed-by: pliden, vlivanov, rkennke, eosterlund, shade
2020-11-29 20:27:01 +00:00
Doug Simon
c5d95071df 8257220: [JVMCI] option validation should not result in a heavy-weight VM crash
Reviewed-by: kvn
2020-11-29 16:52:14 +00:00
Vladimir Kempik
c2af27beb0 8257148: Remove obsolete code in AWTView.m
Reviewed-by: serb
2020-11-29 08:17:52 +00:00
Aleksey Shipilev
87f37aa278 8256726: Zero: print proper message in ArrayIndexOutOfBoundException
Reviewed-by: dholmes, sgehwolf
2020-11-29 08:02:53 +00:00
Aleksey Shipilev
f4c15a98e3 8256832: Zero: micro-optimize safepoint handling after JDK-8255384
Reviewed-by: rehn
2020-11-29 08:02:25 +00:00
David Holmes
04eecf03eb 8257233: Windows x86 build is broken by JDK-8252684
Reviewed-by: mikael
2020-11-29 01:20:37 +00:00
Nick Gasson
c93f0a07c4 8252684: Move the AArch64 assember test under test/hotspot/gtest
Reviewed-by: aph
2020-11-28 15:37:18 +00:00
Sergey Bylokhov
1241f80002 8196086: java/awt/image/DrawImage/IncorrectSourceOffset.java fails
Reviewed-by: shade
2020-11-28 04:30:22 +00:00
Joe Darcy
65137ff02c 8253753: Enable default constructor warning in client modules
Reviewed-by: prr, serb, ihse
2020-11-27 21:31:59 +00:00
Hollow Man
f6bfbb2b09 8257208: Fix typo in doc/building.md
Reviewed-by: ihse
2020-11-27 19:32:24 +00:00
Fleshgrinder
b4cba15a0e 8170432: Class java.util.UUID & @Override
Reviewed-by: dfuchs, lancea
2020-11-27 19:29:50 +00:00
Hannes Wallnöfer
5be4de8583 8245058: improve presentation of annotations for modules and packages
Reviewed-by: jjg
2020-11-27 19:12:31 +00:00
Martin Doerr
d51e2ab219 8256986: [PPC64] C2 crashes when accessing nonexisting jvms of CallLeafDirectNode
Reviewed-by: clanger
2020-11-27 15:43:52 +00:00
Hannes Wallnöfer
644271e7a4 8248566: Make API docs more usable on mobile browsers
Reviewed-by: jjg
2020-11-27 15:31:56 +00:00
Hannes Wallnöfer
53d14442c9 8244535: JavaDoc search is overly strict with letter case
Reviewed-by: jjg
2020-11-27 15:27:19 +00:00
Hannes Wallnöfer
78fdb65dcf 8254893: Fix display of search tag results without holder information
Reviewed-by: jjg
2020-11-27 13:21:18 +00:00
Albert Mingkun Yang
20525d2110 8257149: Improve G1 Service thread task scheduling to guarantee task delay
Reviewed-by: sjohanss, iwalulya
2020-11-27 11:57:11 +00:00
Hannes Wallnöfer
f2f3ba92d7 8242652: Throw SkippedException if no JS engine availabe in TestSearchScript
Reviewed-by: prappo
2020-11-27 09:43:01 +00:00
Stefan Johansson
ee99686b28 8252645: Change time measurements in G1ServiceThread to only account remembered set work
Reviewed-by: ayang, tschatzl
2020-11-27 08:44:35 +00:00
Aleksey Shipilev
a3eec39b01 8257181: s390x builds are very noisy with gc-sections messages
Reviewed-by: mdoerr, lucy
2020-11-27 06:48:04 +00:00
Aleksey Shipilev
9a468d8599 8256757: Incorrect MachCallRuntimeNode::ret_addr_offset() for CallLeafNoFP on x86_32
Reviewed-by: jiefu, kvn
2020-11-27 06:47:30 +00:00
Evgeny Astigeevich
2215e5a47e 8255351: Add detection for Graviton 2 CPUs
Reviewed-by: simonis, kvn
2020-11-26 19:55:39 +00:00
Bradford Wetmore
62d72dec5e 8220730: sun.security.provider.SecureRandom default constructor has wrong documentation
Reviewed-by: weijun
2020-11-26 18:47:38 +00:00
Andrew Haley
4e43b28858 8256359: AArch64: runtime/ReservedStack/ReservedStackTestCompiler.java fails
Reviewed-by: shade, adinn
2020-11-26 17:52:54 +00:00
Evgeny Astigeevich
6e0062236c 8256488: [aarch64] Use ldpq/stpq instead of ld4/st4 for small copies in StubGenerator::copy_memory
Reviewed-by: simonis
2020-11-26 16:10:23 +00:00
Daniel Fuchs
a93841ac9c 8255277: randomDelay in DrainDeadlockT and LoggingDeadlock do not randomly delay
Reviewed-by: lancea
2020-11-26 14:50:40 +00:00
Claes Redestad
2d30a10138 8257069: C2: Clarify and sanity test RegMask/RegMaskIterator
Reviewed-by: jvernee, kvn
2020-11-26 13:42:55 +00:00
Stefan Karlsson
0a5de50052 8257151: ZGC: Simplify ZVerify
Reviewed-by: pliden, eosterlund
2020-11-26 13:02:49 +00:00
Per Liden
bf66d734bc 8257073: ZGC: Try forward object before retaining page
Reviewed-by: ayang, eosterlund, stefank
2020-11-26 12:30:28 +00:00
Aleksey Shipilev
1b3aa3afc5 8256831: MIPS Zero builds fail with undefined __atomic_compare_exchange_8
Reviewed-by: ihse
2020-11-26 11:26:01 +00:00
Jorn Vernee
734d3c3b8a 8256862: Several java/foreign tests fail on x86_32 platforms
Reviewed-by: sundar
2020-11-26 11:21:10 +00:00
Per Liden
7946c94170 8257082: ZGC: Clean up ZRuntimeWorkers and ZWorkers
Reviewed-by: stefank
2020-11-26 10:57:24 +00:00
Stefan Johansson
f6d6a07c30 8256938: Improve remembered set sampling task scheduling
Reviewed-by: tschatzl, ayang
2020-11-26 10:06:14 +00:00
Per Liden
b823ad9270 8257072: ZGC: Rename roots iterators
Reviewed-by: ayang, stefank
2020-11-26 09:54:19 +00:00
Sergey Bylokhov
973255c469 8196100: javax/swing/text/JTextComponent/5074573/bug5074573.java fails
Reviewed-by: kizune
2020-11-26 08:43:29 +00:00
Joakim Nordström
a8e3eabb6d 8245026: PsAdaptiveSizePolicy::_old_gen_policy_is_ready is unused
Reviewed-by: sjohanss, pliden
2020-11-26 07:31:09 +00:00
Jie Fu
b1d1499356 8256956: RegisterImpl::max_slots_per_register is incorrect on AMD64
Reviewed-by: thartmann, vlivanov
2020-11-26 02:41:42 +00:00
Claes Redestad
20020d1572 8254360: Re-examine use of CodeBuffer::verify_section_allocation
Reviewed-by: neliasso, thartmann, kvn
2020-11-25 21:50:34 +00:00
Thomas Stuefe
e56a8df8a0 8257042: [aix] Disable os.release_one_mapping_multi_commits_vm gtest
Reviewed-by: shade
2020-11-25 21:26:36 +00:00
Sergey Bylokhov
9d7121c180 8256713: SwingSet2 : Slider leaves tracks in uiScale=2
Reviewed-by: jdv, psadhukhan
2020-11-25 20:28:10 +00:00
Per Liden
434b98fe0f 8257077: ZGC: Remove ZWorkers::run_serial()
Reviewed-by: stefank
2020-11-25 20:12:16 +00:00
Per Liden
f3fc0e088d 8257079: ZGC: Fold ZMark::prepare_mark() into ZMark::start()
Reviewed-by: stefank, ayang
2020-11-25 20:11:26 +00:00
Aleksey Shipilev
a14f02d8e5 8256267: Relax compiler/floatingpoint/NaNTest.java for x86_32 and lower -XX:+UseSSE
Reviewed-by: kvn, iignatyev
2020-11-25 20:01:00 +00:00
Jorn Vernee
7c73fff34d 8256486: Linux/Windows-x86 builds broken after JDK-8254231
Reviewed-by: shade
2020-11-25 18:09:22 +00:00
Lin Zang
461c5fc637 8256450: Add gz option to jmap to write a gzipped heap dump
Reviewed-by: cjplummer, sspitsyn, phh
2020-11-25 16:51:42 +00:00
Vipin Sharma
dee79d6053 8253936: Replace <code>...</code> with {@code ...} for java.sql
Reviewed-by: lancea
2020-11-25 16:01:40 +00:00
Nils Eliasson
cfb175dfdf 8256508: Improve CompileCommand flag
Reviewed-by: redestad, kvn
2020-11-25 14:20:35 +00:00
Christian Hagedorn
7aed9b65d0 8256016: Dacapo24H.java failed with "assert(false) failed: unscheduable graph"
Reviewed-by: kvn, vlivanov
2020-11-25 14:00:40 +00:00
Ralf Schmelter
26e6cb3eb9 8256489: Make gtest for long path names on Windows more resilient in the presence of virus scanners
Reviewed-by: dholmes, clanger
2020-11-25 13:16:36 +00:00
Aleksey Shipilev
911f16d4c8 8257056: Submit workflow should apt-get update to avoid package installation errors
Reviewed-by: rwestberg, sgehwolf
2020-11-25 13:13:15 +00:00
Chris Hegarty
b0bd0c24aa 8256755: Update build.tools.depend.Depend to handle record components in API signatures
Reviewed-by: jlahoda
2020-11-25 11:37:19 +00:00
Maurizio Cimadamore
9aeadbb020 8256865: Foreign Memory Access and Linker API are missing NPE checks
Reviewed-by: jvernee, sundar, chegar
2020-11-25 10:48:37 +00:00
Joakim Nordström
8cd2e0f694 8243315: ParallelScavengeHeap::initialize() passes GenAlignment as page size to os::trace_page_sizes instead of actual page size
Reviewed-by: sjohanss, tschatzl
2020-11-25 09:36:45 +00:00
Chris Hegarty
cdb41ba1d0 8255904: Remove superfluous use of reflection in Class::isRecord
Reviewed-by: redestad, alanb
2020-11-25 09:00:30 +00:00
Robin Westberg
c45725e587 8256747: GitHub Actions: decouple the hotspot build-only jobs from Linux x64 testing
Reviewed-by: shade
2020-11-25 08:28:59 +00:00
Alan Bateman
79e57ace65 8256643: Terminally deprecate ThreadGroup stop, destroy, isDestroyed, setDaemon and isDaemon
Reviewed-by: serb, rriggs, iris, mchung, smarks
2020-11-25 08:26:00 +00:00
Jatin Bhateja
0d91f0a1df 8252848: Optimize small primitive arrayCopy operations through partial inlining using AVX-512 masked instructions
Reviewed-by: neliasso, kvn
2020-11-25 06:08:19 +00:00
Kim Barrett
66943fefa7 8256517: (ref) Reference.clear during reference processing may lose notification
8240696: (ref) Reference.clear may extend the lifetime of the referent

Use private native helper to implement Reference.clear.

Reviewed-by: pliden, rkennke, mchung
2020-11-25 03:34:50 +00:00
Mandy Chung
3c230b8ac5 8256993: Clarify Package::isSealed javadoc about package sealing vs sealed class or interface
Reviewed-by: alanb
2020-11-24 21:18:46 +00:00
Stefan Johansson
1b7a61ff4a 8254999: Move G1RemSetSamplingTask to more appropriate location
Reviewed-by: tschatzl, ayang
2020-11-24 20:56:14 +00:00
Patric Hedlin
695117f8f6 8255479: [aarch64] assert(src->section_index_of(target) == CodeBuffer::SECT_NONE) failed: sanity
Reviewed-by: aph, neliasso
2020-11-24 18:56:58 +00:00
Sean Mullan
dbfeb90d3a 8243559: Remove root certificates with 1024-bit keys
Reviewed-by: weijun
2020-11-24 18:14:05 +00:00
Alex Menkov
2a1e9be6c2 8256364: vmTestbase/nsk/jvmti/scenarios/capability/CM01/cm01t002 failed with "assert(handle != __null) failed: JNI handle should not be null"
Reviewed-by: cjplummer, sspitsyn
2020-11-24 17:49:55 +00:00
Eric Liu
f1d6e8dbb6 8256387: Unexpected result if patching an entire instruction on AArch64
Reviewed-by: shade, aph
2020-11-24 17:29:03 +00:00
Roger Riggs
bd14274b1b 8256480: Refactor ObjectInputStream field reader implementation
Reviewed-by: bchristi
2020-11-24 17:04:08 +00:00
Tobias Hartmann
1c4c99eae2 8256823: C2 compilation fails with "assert(isShiftCount(imm8 >> 1)) failed: illegal shift count"
Reviewed-by: vlivanov, kvn, chagedorn
2020-11-24 16:52:13 +00:00
Martin Doerr
3b3e90ecad 8256924: ppc, ppcle, s390: JVM crashes at VM init after JDK-8254231
Reviewed-by: shade
2020-11-24 16:24:55 +00:00
Andy Herrick
ff6df15be3 8256801: tools/jpackage/share/FileAssociationsTest.java#id0 failed unpack.bat with "Exit code: 1603"
Reviewed-by: asemenyuk, almatvee, kizune
2020-11-24 14:59:13 +00:00
Andy Herrick
303631e3d5 8256475: Fix Behavior when Installer name differs from application name.
Reviewed-by: asemenyuk, almatvee, kizune
2020-11-24 14:56:23 +00:00
Claes Redestad
fa3cfcd0cd 8256883: C2: Add a RegMask iterator
Reviewed-by: kvn, pliden, eosterlund
2020-11-24 14:35:51 +00:00
Claes Redestad
f55ae9595e 8256858: C2: Devirtualize PhaseIterGVN-specific methods
Reviewed-by: kvn, thartmann
2020-11-24 14:33:47 +00:00
Aleksey Shipilev
7b3d0958c0 8256618: Zero: Linux x86_32 build still fails
Reviewed-by: aph, dholmes, stuefe
2020-11-24 12:26:44 +00:00
Magnus Ihse Bursie
9e4944f7b6 8256308: Send arguments to javac server in a config file
Reviewed-by: erikj, jfranck
2020-11-24 11:13:09 +00:00
Aleksey Shipilev
8f7caa4353 8256857: ARM32 builds broken after JDK-8254231
Reviewed-by: jvernee, stuefe
2020-11-24 11:02:13 +00:00
Thomas Stuefe
f8d7c5a5cf 8256922: ppc, ppcle build broken after JDK-8254231
Reviewed-by: shade, lucy, mdoerr
2020-11-24 10:59:54 +00:00
Aleksey Shipilev
b52f6c053b 8256736: Zero: GTest tests fail with "unsuppported vm variant"
Reviewed-by: dholmes
2020-11-24 06:49:55 +00:00
Fairoz Matte
e838d71d61 8256722: handle VC++:1927 VS2019 in abstract_vm_version
Reviewed-by: shade, dholmes
2020-11-24 04:48:40 +00:00
Kim Barrett
cc96b0acbc 8256813: Simplify WeakProcessor counting of OopStorage entries
Reviewed-by: sjohanss, stefank
2020-11-24 02:17:47 +00:00
Xiaohong Gong
67a959002d 8256614: AArch64: Add SVE backend implementation for integer min/max
Reviewed-by: adinn
2020-11-24 02:04:34 +00:00
Per Liden
372595cca3 8256390: ZGC: Relocate in-place instead of having a heap reserve
Reviewed-by: stefank, eosterlund
2020-11-23 23:30:38 +00:00
Aleksey Shipilev
1df94c9fff 8256912: Zero builds fail after JDK-8255984
Reviewed-by: zgu, rkennke
2020-11-23 22:30:36 +00:00
Naoto Sato
b3497f9b36 8256839: JavaDoc for java.time.Period.negated() method
Reviewed-by: rriggs, lancea, joehw, scolebourne
2020-11-23 22:17:45 +00:00
Kim Barrett
b50b99dfcb 8256825: Cleanup WeakProcessorPhaseTimes
Reviewed-by: sjohanss, stefank
2020-11-23 20:20:20 +00:00
Aleksey Shipilev
47a78e8a6d 8256829: GNU hash style is not available on MIPS
Reviewed-by: ihse, aoqi, glaubitz
2020-11-23 19:32:34 +00:00
Aleksey Shipilev
7551c6800c 8256675: Zero: purge biased locking support
Reviewed-by: coleenp, pchilanomate
2020-11-23 19:15:50 +00:00
Aleksey Shipilev
d9ae0db699 8256746: gc/CriticalNativeArgs.java fails without -XX:-CriticalJNINatives
Reviewed-by: kbarrett, coleenp, rkennke
2020-11-23 19:12:13 +00:00
William Kemper
aac5c2a862 8255984: Shenandoah: "adaptive" heuristic is prone to missing load spikes
Reviewed-by: shade
2020-11-23 18:53:59 +00:00
Thomas Stuefe
fa75ad695c 8256725: Metaspace: better blocktree and binlist asserts
Reviewed-by: shade, rrich, lkorinth
2020-11-23 18:50:09 +00:00
Sandhya Viswanathan
9de5d091ff 8256585: Remove in-place conversion vector operators from Vector API
Reviewed-by: psandoz
2020-11-23 18:48:16 +00:00
Aleksey Shipilev
18e8506412 8256860: S390 builds broken after JDK-8254231
Reviewed-by: stuefe
2020-11-23 17:55:20 +00:00
Joe Darcy
042734cc5b 8251549: Update docs on building for Git
Reviewed-by: lancea
2020-11-23 17:44:10 +00:00
Naoto Sato
ae0ca743f5 8247432: Update IANA Language Subtag Registry to Version 2020-09-29
Reviewed-by: joehw
2020-11-23 16:41:50 +00:00
Elliott Baron
8ddf5e172b 8256809: Annotation processing causes NPE during flow analysis
Reviewed-by: jlahoda
2020-11-23 16:02:52 +00:00
Patricio Chilano Mateo
aabc9ca266 8255678: Add Mutex::try_lock version without rank checks
Reviewed-by: dcubed, dholmes, coleenp
2020-11-23 15:41:19 +00:00
Jorn Vernee
884b9ff24f 8256485: Zero VM build broken after JDK-8254231
Reviewed-by: shade, redestad
2020-11-23 15:13:51 +00:00
Zhengyu Gu
84429cd944 8249144: Potential memory leak in TypedMethodOptionMatcher
Reviewed-by: thartmann
2020-11-23 13:44:43 +00:00
ANUPAM DEV
895cc4f0a2 8255675: Typo in java.net.HttpURLConnection
Reviewed-by: chegar
2020-11-23 12:08:47 +00:00
Conor Cleary
5ed704484e 8256154: Some TestNG tests require default constructors
Reviewed-by: dfuchs, bpb
2020-11-23 11:48:39 +00:00
Magnus Ihse Bursie
b0485b9632 8256240: Reproducible builds should turn on the "deterministic" flag for Visual Studio
Reviewed-by: erikj
2020-11-23 11:33:18 +00:00
Maurizio Cimadamore
0fb31dbf3a 8254231: Implementation of Foreign Linker API (Incubator)
Reviewed-by: coleenp, ihse, dholmes, vlivanov
2020-11-23 11:00:38 +00:00
Per Liden
53f38353e0 8256419: ZGC: Remove "Heap Used Before/After Mark/Relocation" samplers
Reviewed-by: eosterlund, stefank
2020-11-23 10:38:38 +00:00
Claes Redestad
b450e7c1c5 8256827: C2: Avoid reallocations by pre-sizing lists in post_allocate_copy_removal
Reviewed-by: kvn, thartmann
2020-11-23 10:18:40 +00:00
Claes Redestad
c0689d25fb 8256741: Reduce footprint of compiler interface data structures
Reviewed-by: cjplummer, kvn
2020-11-23 10:17:43 +00:00
Claes Redestad
65b77d5920 8256738: Compiler interface clean-up
Reviewed-by: neliasso, kvn, thartmann
2020-11-23 10:17:09 +00:00
Stefan Karlsson
69c3470e72 8252973: ZGC: Implement Large Pages support on Windows
Reviewed-by: eosterlund, mbeckwit, pliden
2020-11-23 08:39:23 +00:00
Christian Hagedorn
e4a32bea9f 8251925: C2: RenaissanceStressTest fails with assert(!had_error): bad dominance
Reviewed-by: kvn, thartmann
2020-11-23 08:37:09 +00:00
Stefan Karlsson
1f32c11d5e 8256740: ZGC: Move closures out of zOopClosure files
Reviewed-by: pliden
2020-11-23 08:24:47 +00:00
Tobias Hartmann
659aec8096 8256719: C1 flags that should have expired are still present
Reviewed-by: shade, neliasso
2020-11-23 07:09:32 +00:00
Aleksey Shipilev
e06a68397d 8256497: Zero: enable G1 and Shenandoah GCs
Reviewed-by: rkennke, erikj, ihse
2020-11-22 18:10:04 +00:00
Aleksey Shipilev
037e49cf57 8256670: Zero: enable compressed oops support back
Reviewed-by: coleenp
2020-11-22 18:06:18 +00:00
Aleksey Shipilev
d46f6f5a80 8256523: Streamline Java SHA2 implementation
Reviewed-by: valeriep
2020-11-22 18:03:06 +00:00
Coleen Phillimore
1aa90ac629 8256822: runtime/logging/RedefineClasses.java fails with "Error: VM option 'Verbose' is develop and is available only in debug version of VM."
Reviewed-by: stuefe
2020-11-21 21:55:59 +00:00
Kim Barrett
edf72f065f 8256824: test/langtools/tools/javac/diags/examples/InnerClassCantHaveStatic.java has a bad copyright
Reviewed-by: dcubed
2020-11-21 16:06:31 +00:00
Vicente Romero
9a19eb6918 8254105: allow static nested declarations
Reviewed-by: mcimadamore
2020-11-21 03:17:57 +00:00
Alex Menkov
14de791d60 8255934: JConsole 14 and greater fails to connect to older JVM
Reviewed-by: cjplummer, sspitsyn
2020-11-20 23:33:11 +00:00
Aleksey Shipilev
86f36027e4 8256806: Shenandoah: optimize shenandoah/jni/TestPinnedGarbage.java test
Reviewed-by: rkennke
2020-11-20 21:45:13 +00:00
Vladimir Ivanov
57025e65e1 8256073: Improve vector rematerialization support
Reviewed-by: thartmann, kvn
2020-11-20 21:17:09 +00:00
Vladimir Ivanov
41c05876bc 8255367: C2: Deoptimization during vector box construction is broken
Reviewed-by: thartmann, kvn
2020-11-20 21:16:34 +00:00
Vladimir Ivanov
f79e9d4573 8256061: RegisterSaver::save_live_registers() omits upper halves of ZMM0-15 registers
Reviewed-by: kvn
2020-11-20 21:15:58 +00:00
Vladimir Ivanov
503590f6bf 8256056: Deoptimization stub doesn't save vector registers on x86
Reviewed-by: redestad, kvn
2020-11-20 21:15:21 +00:00
Vladimir Ivanov
e6fa85b493 8256058: Improve vector register handling in RegisterMap::pd_location() on x86
Reviewed-by: kvn
2020-11-20 21:14:34 +00:00
Conor Cleary
be6c89366f 8256183: InputStream.skipNBytes is missing @since 12
Reviewed-by: dfuchs, lancea, bpb
2020-11-20 20:11:48 +00:00
Weijun Wang
b21b96df21 8256507: Add a micro benchmark for JDK-8153005
Reviewed-by: shade
2020-11-20 19:53:24 +00:00
Poonam Bajaj
8d9cf48e81 8255908: ExceptionInInitializerError due to UncheckedIOException while initializing cgroupv1 subsystem
Reviewed-by: shade, sgehwolf, bobv
2020-11-20 18:40:01 +00:00
Zhengyu Gu
5ad1e22866 8256658: Shenandoah: Deadlock between nmethod_entry_barrier and concurrent code root evacuator
Reviewed-by: rkennke
2020-11-20 18:36:17 +00:00
Stuart Marks
cc0ed401ec 8037384: Fix wording in Javadoc of java.io.Serializable
8231547: Serializable class doc should link to serialization specification

Reviewed-by: rriggs, iris, chegar
2020-11-20 18:26:38 +00:00
Erik Joelsson
19b2898691 8256751: Incremental rebuild with precompiled header fails when touching a header file
Reviewed-by: ihse
2020-11-20 18:13:56 +00:00
Daniel D. Daugherty
4dd71ae1c5 8256803: ProblemList runtime/ReservedStack/ReservedStackTestCompiler.java on linux-aarch64
Reviewed-by: mikael
2020-11-20 17:59:05 +00:00
Naoto Sato
2c3a2bed6d 8211449: Correction to the spec of implicit negative subpattern in DecimalFormat
Reviewed-by: bpb
2020-11-20 17:10:00 +00:00
Alexey Semenyuk
11bfdc57f9 8235304: JPackage Windows test should be added to set Publisher
Reviewed-by: herrick, almatvee
2020-11-20 16:38:50 +00:00
Brian Burkhalter
2ae3e51f59 8229845: Decrease memory consumption of BigInteger.toString()
Reviewed-by: redestad
2020-11-20 16:23:41 +00:00
Igor Ignatyev
ff00c591c3 8256569: Add C2 compiler stress flags to CTW
Reviewed-by: kvn, shade, thartmann
2020-11-20 15:01:37 +00:00
Coleen Phillimore
e7c7469cf5 8246378: [Windows] assert on MethodHandle logging code
Reviewed-by: iklam, vlivanov
2020-11-20 13:00:10 +00:00
Zhengyu Gu
98a5d5a6ee 8256664: Shenandoah: Cleanup after JDK-8212879
Reviewed-by: rkennke
2020-11-20 12:57:13 +00:00
jasontatton-aws
b99fd4c7d6 8033441: print line numbers with -XX:+PrintOptoAssembly
Reviewed-by: jiefu, thartmann
2020-11-20 12:51:47 +00:00
Zhengyu Gu
266dea06ec 8256688: Shenandoah: Lock rank inversion after JDK-8212879
Reviewed-by: rkennke
2020-11-20 12:51:11 +00:00
Per Liden
aeba9259b2 8256416: ZGC: Lower ZMarkCompleteTimeout
Reviewed-by: ayang, eosterlund
2020-11-20 12:36:42 +00:00
Stefan Karlsson
10ba541846 8256727: ZGC: Clean out dead code after JDK-8212879
Reviewed-by: pliden
2020-11-20 12:35:37 +00:00
Roberto Castañeda Lozano
eb35ade9a0 6232281: -XX:-UseLoopSafepoints causes assert(v_false,"Parse::remove_useless_nodes missed this node")
Check for nodes missed by remove_useless_nodes() only if PhaseRemoveUseless has
actually been run. This makes it possible to use -XX:-UseLoopSafepoints without
crashing trivially, although implicit assumptions in other parts of C2 about the
existence of loop safepoints might lead to more subtle failures for more complex
methods.

Reviewed-by: neliasso, thartmann, kvn
2020-11-20 12:06:36 +00:00
Thomas Schatzl
a25fb0356a 8256406: G1 x86 C1/Interpreter post write barrier always uses 32 bit to access variable sized PtrQueue::_index
Reviewed-by: shade
2020-11-20 11:09:07 +00:00
Bernhard Urban-Forster
f57662874a 8256633: Fix product build on Windows+Arm64
Reviewed-by: shade
2020-11-20 11:01:25 +00:00
Magnus Ihse Bursie
8e7a855ee8 8255526: Enable jcheck whitespace checking of build system files
Reviewed-by: shade, erikj
2020-11-20 10:01:34 +00:00
Robin Westberg
c45ab1aada 8256393: Github Actions build on Linux should define OS and GCC versions
Reviewed-by: shade, erikj, ihse
2020-11-20 08:04:08 +00:00
Guoxiong Li
5fedb69e66 8250888: nsk/jvmti/scenarios/general_functions/GF08/gf08t001/TestDriver.java fails
Reviewed-by: cjplummer, sspitsyn
2020-11-20 07:02:48 +00:00
Thomas Stuefe
02adaa5854 8255885: Metaspace: freelist commit counter is not updated when purging
Reviewed-by: coleenp, iklam
2020-11-20 06:52:21 +00:00
David Holmes
fa240f2261 8256594: Unexpected warning: SIGSEGV handler flags expected:SA_RESTART|SA_SIGINFO found:SA_RESTART|SA_SIGINFO
Reviewed-by: stuefe, coleenp, dcubed
2020-11-20 04:17:27 +00:00
Alexander Zuev
4c095252a5 8256108: Create implementation for NSAccessibilityElement protocol peer
Reviewed-by: serb
2020-11-20 04:10:09 +00:00
Naoto Sato
68138893a5 8251317: Support for CLDR version 38
Reviewed-by: erikj, bchristi, joehw
2020-11-19 22:41:11 +00:00
Sergey Bylokhov
c816464c1d 4916923: In MetalRootPaneUI, MetalRootLayout does not correctly calculate minimumsize
Reviewed-by: shade
2020-11-19 22:39:37 +00:00
Coleen Phillimore
fae68ff016 8256640: assert(!m->is_old() || ik()->is_being_redefined()) failed: old methods should not be in vtable
Reviewed-by: lfoltan, dcubed, dholmes
2020-11-19 22:39:07 +00:00
Aleksey Shipilev
c1407733c5 8256692: Zero: remove obsolete block from ZeroInterpreter::native_entry
Reviewed-by: coleenp
2020-11-19 21:57:53 +00:00
Ian Graves
080c707aab 8253459: Formatter treats index, width and precision > Integer.MAX_VALUE incorrectly
Reviewed-by: rriggs, smarks
2020-11-19 20:20:55 +00:00
Sean Mullan
b9db002fef 8256682: JDK-8202343 is incomplete
Reviewed-by: dfuchs
2020-11-19 19:09:22 +00:00
Stefan Johansson
b8244b606e 8236926: Concurrently uncommit memory in G1
Reviewed-by: ayang, tschatzl
2020-11-19 17:55:33 +00:00
Aleksey Shipilev
defdd12e70 8142984: Zero: fast accessors should handle both getters and setters
Reviewed-by: andrew, coleenp
2020-11-19 17:37:07 +00:00
Alexey Semenyuk
1718abaefa 8227400: Adjust jib profiles to make 3rd party tools for creating installers available on Mach5 test machines
Reviewed-by: almatvee, herrick
2020-11-19 17:24:32 +00:00
Hai-May Chao
9bb82232fa 8253299: Manifest bytes are read twice when verifying a signed JAR
Reviewed-by: redestad, lancea, alanb
2020-11-19 17:22:59 +00:00
Paul Sandoz
580f22ccb7 8256581: Refactor vector conversion tests
Reviewed-by: vlivanov
2020-11-19 16:58:03 +00:00
Kim Barrett
675d1d56e6 8256516: Simplify clearing References
Provide and use explicit referent clearing instead of set to null.

Reviewed-by: rkennke, shade, pliden, mchung
2020-11-19 15:42:46 +00:00
Coleen Phillimore
ba721f5f2f 8212879: Make JVMTI TagMap table concurrent
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Co-authored-by: Coleen Phillimore <coleenp@openjdk.org>
Reviewed-by: stefank, ihse, zgu, eosterlund, sspitsyn, kbarrett
2020-11-19 14:30:02 +00:00
Sean Mullan
3a4b90f086 8202343: Disable TLS 1.0 and 1.1
Reviewed-by: xuelei, dfuchs, coffeys
2020-11-19 14:15:57 +00:00
Patricio Chilano Mateo
342ccf6903 8256253: Defer Biased Locking obsoletion to JDK 18
Reviewed-by: dholmes, coleenp, dcubed, mdoerr
2020-11-19 14:12:41 +00:00
Alan Hayward
d183fc7faa 8221554: aarch64 cross-modifying code
Reviewed-by: rehn, aph
2020-11-19 12:27:22 +00:00
Thomas Stuefe
f626ed6a43 8255978: [windows] os::release_memory may not release the full range
Reviewed-by: iklam, minqi
2020-11-19 11:51:09 +00:00
Dong Bo
6702910b74 8256375: AArch64: aarch64-asmtest.py may generate undefined register r18
Reviewed-by: aph
2020-11-19 09:46:34 +00:00
Patrick Concannon
9fe2d31d6e 8252304: Seed an HttpRequest.Builder from an existing HttpRequest
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: chegar, dfuchs, michaelm
2020-11-19 09:35:49 +00:00
Aleksey Shipilev
cb2676c8b7 8256499: Zero: enable Epsilon GC
Reviewed-by: rkennke, ihse
2020-11-19 08:02:37 +00:00
Nils Eliasson
8e241b5262 8256552: Let ReplayCompiles set UseDebuggerErgo
Reviewed-by: vlivanov, redestad
2020-11-19 07:45:08 +00:00
Ioi Lam
4178834deb 8256172: Clean up CDS handling of i2i_entry
Reviewed-by: minqi, ccheung
2020-11-19 07:31:00 +00:00
Yasumasa Suenaga
cfa92a53c0 8256178: Add RAII object for file lock
Reviewed-by: dholmes, coleenp
2020-11-19 04:09:25 +00:00
David Holmes
2b15571316 8256383: PlatformMutex::try_lock has different semantics on Windows and Posix
Reviewed-by: stuefe, dcubed
2020-11-18 22:48:39 +00:00
David Holmes
99eac53580 8225631: Consider replacing muxAcquire/Release with PlatformMonitor
Reviewed-by: coleenp, dcubed, kbarrett
2020-11-18 22:45:49 +00:00
Stuart Marks
646c20022c 8256152: tests fail because of ambiguous method resolution
Reviewed-by: psandoz
2020-11-18 22:04:18 +00:00
Christoph Langer
5912df2440 8256427: Test com/sun/jndi/dns/ConfigTests/PortUnreachable.java does not work on AIX
Reviewed-by: jiefu, mbaesken
2020-11-18 22:00:19 +00:00
Magnus Ihse Bursie
3110d589e1 8256538: Fix annoying awk warning in configure for java versions
Reviewed-by: erikj
2020-11-18 21:54:12 +00:00
Jorn Vernee
03e84ef7e3 8256189: Exact VarHandle tests should test withInvokeBehavior() works as expected
Reviewed-by: mcimadamore, chegar
2020-11-18 19:01:52 +00:00
Leonid Mesnik
300cbaa6ad 8256418: Jittester make build is broken.
Reviewed-by: iignatyev
2020-11-18 18:05:38 +00:00
Daniel D. Daugherty
c9c1573375 8256567: ProblemList java/util/stream/test/org/openjdk/tests/java/util/stream/SpliteratorTest.java for Xcomp testing
Reviewed-by: mcimadamore
2020-11-18 18:02:40 +00:00
Daniel D. Daugherty
33d3918e5a 8256565: ProblemList jdk/jfr/api/recording/event/TestReEnableName.java on windows
Reviewed-by: egahlin
2020-11-18 17:15:37 +00:00
Daniel D. Daugherty
1707d5ca3c 8238174: migrate ObjectMonitor::_owner field away from C++ volatile semantics
Reviewed-by: dholmes, mdoerr
2020-11-18 16:48:17 +00:00
Gerard Ziemski
50a2c22ff7 8253742: POSIX signal code cleanup
Reviewed-by: stuefe, dholmes
2020-11-18 15:29:13 +00:00
Coleen Phillimore
fa8dce4f77 8256365: Clean up vtable initialization code
Reviewed-by: eosterlund, dholmes
2020-11-18 14:12:48 +00:00
Erik Joelsson
4e5116c46e 8256501: libTestMainKeyWindow fails to build with Xcode 12.2
Reviewed-by: ihse, serb
2020-11-18 14:10:27 +00:00
Weijun Wang
486d6f631b 8256363: Define toString() for MGF1ParameterSpec
Reviewed-by: mullan
2020-11-18 13:14:11 +00:00
Zhengyu Gu
eab170c0af 8256415: Shenandoah: Should evacuate/update codecache concurrently when class unloading is off
Reviewed-by: rkennke
2020-11-18 12:59:17 +00:00
Tobias Hartmann
f504f419d3 8256385: C2: fatal error: modified node is not on IGVN._worklist
Reviewed-by: chagedorn, roland
2020-11-18 11:53:25 +00:00
Tobias Hartmann
5bcf898b97 8256478: C2 compilation fails with assert(t1->isa_long()) failed: Type must be a long
Reviewed-by: roland, chagedorn, kvn
2020-11-18 11:52:47 +00:00
Claes Redestad
f7f3447496 8256453: C2: Reduce State footprint
Reviewed-by: neliasso, kvn
2020-11-18 10:31:13 +00:00
Maurizio Cimadamore
d2ddf07461 8256477: Specialize heap memory segment implementations
Reviewed-by: jvernee, chegar
2020-11-18 10:23:20 +00:00
Martin Doerr
97074969a5 8256479: [PPC64] C2 crashes when UseVectorByteReverseInstructionsPPC64 used without SuperwordUseVSX
Reviewed-by: goetz, psandoz
2020-11-18 10:20:37 +00:00
Dong Bo
b0b9dd27b8 8256318: AArch64: Add support for floating-point absolute difference
Reviewed-by: aph
2020-11-18 10:14:20 +00:00
Roland Westrelin
655bb619a3 8255936: "parsing found no loops but there are some" assertion failure with Shenandoah
Reviewed-by: thartmann, rkennke
2020-11-18 09:24:17 +00:00
Michael McMahon
6948456dbf 8256461: AbstractFileSystemProvider.getSunPathForSocketCall for empty Path returns '.'
Reviewed-by: dfuchs, alanb
2020-11-18 08:43:51 +00:00
Thomas Schatzl
d30956055b 8253081: G1 fails on stale objects in archived module graph in Open Archive regions
Change the handling of Open Archive areas, instead of assuming that everything in there is live always, a root containing references to all live root objects is provided. Adapt G1 to handle Open Archive regions as any other old region apart from never compacting or evacuating them.

Co-authored-by: Ioi Lam <iklam@openjdk.org>
Reviewed-by: kbarrett, sjohanss, redestad
2020-11-18 08:21:03 +00:00
Xubo Zhang
c08921487b 8255368: Math.exp() gives wrong result for large values on x86 32-bit platforms
Reviewed-by: darcy, kvn
2020-11-18 04:49:15 +00:00
Ioi Lam
7ecf070e7d 8256476: Assert in vmIntrinsics::flags_for with -XX:+Verbose
Reviewed-by: redestad
2020-11-18 03:44:27 +00:00
Nick Gasson
26a1ec1b96 8256435: [TESTBUG] java/foreign/TestHandshake.java fails with direct buffer memory OOM
Reviewed-by: mcimadamore
2020-11-18 02:08:20 +00:00
Dongbo He
ef3ddb1d03 8255448: Fastdebug JVM crashes with Vector API when PrintAssembly is turned on
Co-authored-by: Huang Wang <wanghuang3@huawei.com>
Reviewed-by: vlivanov
2020-11-18 01:10:11 +00:00
Daniel D. Daugherty
eb021848ba 8134630: make code and comments consistent for stack lock optimization
Reviewed-by: dholmes, coleenp
2020-11-17 23:59:08 +00:00
Per Liden
f751738645 8256484: ZGC: Rename ZRelocationSetSelector::register_garbage_page()
Reviewed-by: stefank, ayang
2020-11-17 20:48:14 +00:00
Igor Ignatyev
d9dbd5def6 8256430: add linux-x64-optimized to regular testing
Reviewed-by: kvn, dcubed, vlivanov, erikj
2020-11-17 19:59:04 +00:00
Roman Kennke
9efbb463a4 8256426: Shenandoah: Remove superfluous assert is ShBS::load_reference_barrier()
Reviewed-by: shade
2020-11-17 17:09:56 +00:00
Per Liden
9130ca4c73 8256401: ZGC: Improve ZList verification
Reviewed-by: ayang, stefank
2020-11-17 16:40:12 +00:00
Roman Kennke
f2a9d02de2 8256370: Add asserts to Reference.getInactive()
Reviewed-by: mchung
2020-11-17 15:46:34 +00:00
Magnus Ihse Bursie
c255b18cfc 8256216: Enable reproducible builds in jib-profiles
Reviewed-by: erikj
2020-11-17 15:29:43 +00:00
Jose Ricardo Ziviani
c371782630 8255553: [PPC64] Introduce and use setbc and setnbc P10 instructions
Reviewed-by: mdoerr
2020-11-17 15:15:44 +00:00
Aleksey Shipilev
3b9c5a36f5 8255796: Zero: CASE(_new) should replenish TLABs properly
Reviewed-by: sgehwolf
2020-11-17 14:48:00 +00:00
Claes Redestad
654ad27418 8256392: C2: Various Node cleanups
Reviewed-by: neliasso, thartmann, vlivanov
2020-11-17 12:24:42 +00:00
Daniel Fuchs
9dbbe83a06 8256146: Cleanup test/jdk/java/nio/channels/DatagramChannel/Connect.java
Reviewed-by: alanb
2020-11-17 12:21:11 +00:00
Michael McMahon
9d0ee66f2d 8255758: JEP 380 spec clarifications
Reviewed-by: dfuchs, alanb
2020-11-17 12:12:08 +00:00
Aleksey Shipilev
3dcde557f7 8256386: ARM32 tests fail with "bad AD file" after JDK-8223051
Reviewed-by: azeemj, kvn, roland
2020-11-17 12:10:52 +00:00
Rafael Winterhalter
53a31889fe 8202471: (ann) Cannot read type annotations on generic receiver type's type variables
Reviewed-by: jfranck
2020-11-17 11:23:47 +00:00
Doug Simon
adb8561aba 8253228: [JVMCI] provide more info on fatal JVMCI errors
Reviewed-by: kvn, never
2020-11-17 11:21:17 +00:00
Roland Westrelin
a7422ac2f4 8255150: Add utility methods to check long indexes and ranges
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Reviewed-by: jvernee, dlong, vlivanov
2020-11-17 10:37:27 +00:00
Tobias Hartmann
6d878565f8 8256325: Remove duplicate asserts in PhaseMacroExpand::expand_macro_nodes
Reviewed-by: shade, redestad
2020-11-17 09:37:36 +00:00
Christian Hagedorn
5dbfae0176 8255058: C1: assert(is_virtual()) failed: type check
Reviewed-by: neliasso, kvn
2020-11-17 09:16:06 +00:00
Matthias Baesken
4553fa0b98 8256258: some missing NULL checks or asserts after CodeCache::find_blob_unsafe
Reviewed-by: shade
2020-11-17 07:59:01 +00:00
Claes Redestad
1228517261 8256274: C2: Optimize copying of the shared type dictionary
Reviewed-by: neliasso, kvn
2020-11-17 07:15:04 +00:00
Kim Barrett
537b40e013 8252588: HotSpot Style Guide should permit uniform initialization
Reviewed-by: jrose, dholmes, dcubed, tschatzl, kvn
2020-11-17 03:16:10 +00:00
Alexander Matveev
c35e1a284b 8255947: [macos] Signed macOS jpackage app doesn't filter spurious '-psn' argument
Reviewed-by: herrick, asemenyuk
2020-11-17 01:57:24 +00:00
Eric Liu
30a2ad5501 8254872: Optimize Rotate on AArch64
Reviewed-by: aph, kvn
2020-11-17 01:55:09 +00:00
Jie Fu
eabf3bace7 8256037: [TESTBUG] com/sun/jndi/dns/ConfigTests/PortUnreachable.java fails due to the hard coded threshold is small
Reviewed-by: shade, aefimov
2020-11-17 01:35:30 +00:00
Sergey Bylokhov
36dbe6f2de 8256376: The javax/swing/JSpinner/SerializationTest.java fails on headful windows
Reviewed-by: aivanov
2020-11-16 23:14:58 +00:00
Naoto Sato
bf84dac4cf 8247781: Day periods support
Reviewed-by: scolebourne, rriggs, joehw
2020-11-16 23:12:45 +00:00
Thomas Stuefe
0357db3581 8256287: [windows] add loop fuse to map_or_reserve_memory_aligned
Reviewed-by: luhenry, iklam, minqi
2020-11-16 20:08:49 +00:00
Claes Redestad
6e35bcbf03 8256205: Simplify compiler calling convention handling
Reviewed-by: kvn, neliasso
2020-11-16 19:39:36 +00:00
Igor Ignatyev
68fd71d2ad 8256414: add optimized build to submit workflow
add linux-x64-optimized to submit workflow

Reviewed-by: vlivanov, shade, kvn
2020-11-16 19:30:43 +00:00
Patricio Chilano Mateo
3675653c20 8255384: Remove special_runtime_exit_condition() check from SS::block()
Reviewed-by: dholmes, rrich, dcubed
2020-11-16 17:21:13 +00:00
Boris Ulasevich
f611fdfee8 8254016: Test8237524 fails with -XX:-CompactStrings option
Reviewed-by: shade
2020-11-16 14:58:14 +00:00
Jorn Vernee
b8de2391d6 8256380: JDK-8254162 broke 32bit windows build
Reviewed-by: shade
2020-11-16 14:25:51 +00:00
Daniel D. Daugherty
1d7ed03d5c 8244376: possibly stale comment above "struct SharedGlobals" in synchronizer.cpp
Reviewed-by: hseigel, dholmes
2020-11-16 14:10:08 +00:00
Jie Kang
c85c9ad1f1 8255992: JFR EventWriter does not use first string from StringPool with id 0
Reviewed-by: egahlin
2020-11-16 13:25:40 +00:00
Robbin Ehn
c5fe2c1fcb 8244679: JVM/TI GetCurrentContendedMonitor/contmon001 failed due to "(IsSameObject#3) unexpected monitor object: 0x000000562336DBA8"
Reviewed-by: pchilanomate, dcubed, dholmes, sspitsyn
2020-11-16 13:06:45 +00:00
Hui Shi
8eeb36f14a 8255883: Avoid duplicated GeneratedMethodAccessor when reflect method invoked from different threads
Reviewed-by: shade, alanb
2020-11-16 11:34:47 +00:00
Thomas Schatzl
ac3948930e 8256323: Remove HeapRegionManager::update_committed_space()
Reviewed-by: shade, sjohanss
2020-11-16 10:11:33 +00:00
Robin Westberg
1103e3374c 8256354: Github Action build on Windows should define OS and MSVC versions
Reviewed-by: erikj, shade
2020-11-16 08:02:11 +00:00
Robin Westberg
588caab074 8256277: Github Action build on macOS should define OS and Xcode versions
Reviewed-by: shade, ehelin, erikj
2020-11-16 08:00:21 +00:00
Stefan Karlsson
6a69e304dd 8256337: ap01t001.cpp, 67: Received unexpected number of ObjectFree events: 7
Reviewed-by: coleenp, sspitsyn
2020-11-16 07:58:40 +00:00
Thomas Stuefe
298bce1d92 8256367: [windows] Better logging for some system calls
Reviewed-by: iklam
2020-11-16 07:15:43 +00:00
Christoph Langer
1e9a432d59 8256202: Some tweaks for jarsigner tests PosixPermissionsTest and SymLinkTest
Reviewed-by: mbaesken
2020-11-13 17:28:05 +00:00
Daniel Fuchs
1c47244b01 8255244: HttpClient: Response headers contain incorrectly encoded Unicode characters
Reviewed-by: chegar, michaelm
2020-11-13 15:10:41 +00:00
Harold Seigel
56ea7864d4 8245215: Obsolete InitialBootClassLoaderMetaspaceSize and UseLargePagesInMetaspace
Reviewed-by: lfoltan, ccheung, stuefe, coleenp
2020-11-13 13:13:43 +00:00
Aleksey Shipilev
e9956fec9a 8256127: Add cross-compiled foreign architectures builds to submit workflow
Reviewed-by: ihse, rwestberg
2020-11-13 12:36:51 +00:00
Stefan Karlsson
c8dd0b53ee 8256320: ZGC: Update zDebug to support UseCompressedClassPointers
Reviewed-by: pliden
2020-11-13 12:23:08 +00:00
Patrick Concannon
5973e91cc3 8253005: Add @throws IOException in javadoc for HttpEchange.sendResponseHeaders
Reviewed-by: dfuchs
2020-11-13 11:31:25 +00:00
Vladimir Ivanov
8c31bd2939 8256275: Optimized build is broken
Reviewed-by: redestad, coleenp
2020-11-13 11:07:53 +00:00
Roman Kennke
b0c28fadaa 8256011: Shenandoah: Don't resurrect finalizably reachable objects
Reviewed-by: shade, zgu
2020-11-13 09:47:00 +00:00
Nils Eliasson
41139e31c0 8255964: Add all details to jstack log in jtreg timeout handler
Reviewed-by: iignatyev
2020-11-13 09:40:06 +00:00
Aleksey Shipilev
b4d0186718 8253525: Implement getInstanceSize/sizeOf intrinsics
Reviewed-by: kvn, sspitsyn
2020-11-13 08:20:11 +00:00
Roland Westrelin
ea576ddbd4 8254887: C2: assert(cl->trip_count() > 0) failed: peeling a fully unrolled loop
Reviewed-by: chagedorn, thartmann
2020-11-13 08:19:33 +00:00
Aleksey Shipilev
05b824567c 8256290: javac/lambda/T8031967.java fails with StackOverflowError on x86_32
Reviewed-by: mcimadamore
2020-11-13 07:40:19 +00:00
Aleksey Shipilev
c3139abe38 8256220: C1: x86_32 fails with -XX:UseSSE=1 after JDK-8210764 due to mishandled lir_neg
Reviewed-by: chagedorn
2020-11-13 07:39:29 +00:00
Yumin Qi
1d3d64f34c 8255973: Add more logging to debug JDK-8255917
Reviewed-by: ccheung, stuefe, iklam
2020-11-13 03:44:41 +00:00
Alexandre Iline
e32a4ea4ef 8253820: Save test images and dumps with timestamps from client sanity suite
Reviewed-by: serb
2020-11-13 02:27:32 +00:00
Mandy Chung
dff26a489d 8256063: Module::getPackages on an unnamed module may return packages that are in a named module
Reviewed-by: alanb, chegar
2020-11-13 00:32:29 +00:00
Zhengyu Gu
531c56ea65 8256278: Shenandoah: Avoid num of dead callback from weak processor in Shenandoah root verifier
Reviewed-by: rkennke, shade
2020-11-12 21:37:30 +00:00
Roger Riggs
b5a9c92b7a 8256244: java/lang/ProcessHandle/PermissionTest.java fails with TestNG 7.1
Reviewed-by: lancea, iignatyev
2020-11-12 17:06:00 +00:00
Fernando Guallini
90f9a7053a 8255546: Missing coverage for javax.smartcardio.CardPermission and ResponseAPDU
Reviewed-by: xuelei
2020-11-12 17:04:16 +00:00
Sergey Bylokhov
1c0b490c28 8256201: java/awt/FullScreen/FullscreenWindowProps/FullscreenWindowProps.java failed
Reviewed-by: jdv
2020-11-12 17:00:15 +00:00
Maurizio Cimadamore
3e70aac5cc 8254162: Implementation of Foreign-Memory Access API (Third Incubator)
Reviewed-by: erikj, psandoz, alanb
2020-11-12 16:37:23 +00:00
Calvin Cheung
c6ab0fdb15 8255990: Bitmap region of dynamic CDS archive is not unmapped
Reviewed-by: iklam, minqi
2020-11-12 16:14:29 +00:00
Patricio Chilano Mateo
943acd22e5 8256276: Temporarily disable gtest special_flags
Reviewed-by: tschatzl, dcubed
2020-11-12 15:45:26 +00:00
Claes Redestad
19bade0280 8256238: Remove Matcher::pass_original_key_for_aes
Reviewed-by: thartmann, chagedorn
2020-11-12 14:21:24 +00:00
Claes Redestad
f7685a4639 8256203: Simplify RegMask::Empty
Reviewed-by: thartmann, chagedorn
2020-11-12 14:20:48 +00:00
Roland Westrelin
70c7b1d93c 8250607: C2: Filter type in PhiNode::Value() for induction variables of trip-counted integer loops
Reviewed-by: chagedorn, thartmann
2020-11-12 14:15:40 +00:00
Thomas Schatzl
bd8693a084 8256181: Remove Allocation of old generation on alternate memory devices functionality
Reviewed-by: ayang, iignatyev, iklam
2020-11-12 14:05:50 +00:00
Harold Seigel
4df8abc200 8255787: Tag container tests that use cGroups with cgroups keyword
Reviewed-by: sspitsyn
2020-11-12 13:23:57 +00:00
Matthias Baesken
ec08b3f28d 8256188: Adjust output of make/autoconf/configure
Reviewed-by: clanger, ihse
2020-11-12 06:29:13 +00:00
Hao Sun
da48003abd 8255975: Fix AArch64 OpenJDK build failure with gcc-5
Reviewed-by: dholmes
2020-11-12 02:30:39 +00:00
Lin Zang
14e25e2059 8255982: Extend BasicJMapTest to test with different GC Heap
Reviewed-by: shade, iignatyev
2020-11-12 02:12:15 +00:00
Ioi Lam
2f06893a29 8252526: Remove excessive inclusion of jvmti.h and jvmtiExport.hpp
Reviewed-by: ihse, kbarrett
2020-11-12 01:45:27 +00:00
Corey Ashford
ccb48b7203 8248188: Add IntrinsicCandidate and API for Base64 decoding
8248188: Add IntrinsicCandidate and API for Base64 decoding, add Power64LE intrinsic implementation.

This patch set encompasses the following commits:

Adds a new intrinsic candidate to the java.lang.Base64 class - decodeBlock(), and provides a flexible API for the intrinsic. The API is similar to the existing encodeBlock intrinsic.

Adds the code in HotSpot to check and martial the new intrinsic's arguments to the arch-specific intrinsic implementation.

Adds a Power64LE-specific implementation of the decodeBlock intrinsic.

Adds a JMH microbenchmark for both Base64 encoding and encoding.

Enhances the JTReg hotspot intrinsic "TestBase64.java" regression test to more fully test both decoding and encoding.

Reviewed-by: rriggs, mdoerr, kvn
2020-11-11 21:31:07 +00:00
Aleksey Shipilev
59965c17b4 8256237: Zero: non-PCH build fails after JDK-8253064
Reviewed-by: zgu, dcubed
2020-11-11 19:52:18 +00:00
Zhengyu Gu
bfa060f098 8256051: nmethod_entry_barrier stub miscalculates xmm spill size on x86_32
Reviewed-by: shade
2020-11-11 19:12:55 +00:00
Roman Kennke
96e0261041 8256106: Bypass intrinsic/barrier when calling Reference.get() from Finalizer
Reviewed-by: eosterlund
2020-11-11 18:07:08 +00:00
Roman Kennke
3c3469b9ce 8256020: Shenandoah: Don't resurrect objects during evacuation on AS_NO_KEEPALIVE
Reviewed-by: shade
2020-11-11 18:03:58 +00:00
Daniel D. Daugherty
2e19026d45 8253064: monitor list simplifications and getting rid of TSM
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Reviewed-by: eosterlund, rehn, coleenp
2020-11-11 16:20:11 +00:00
Aleksey Shipilev
421a7c3b41 8256182: Update qemu-debootstrap cross-compilation recipe
Reviewed-by: ihse
2020-11-11 16:06:08 +00:00
Lance Andersen
6247736fc9 8256018: Adler32/CRC32/CRC32C missing reachabilityFence
Reviewed-by: naoto, alanb
2020-11-11 15:34:03 +00:00
Martin Doerr
436019b8bb 8256166: [C2] Registers get confused on Big Endian after 8221404
Reviewed-by: redestad, thartmann
2020-11-11 15:28:09 +00:00
Alexander Zuev
ed615e3ca0 4907798: MEMORY LEAK: javax.swing.plaf.basic.BasicPopupMenuUI$MenuKeyboardHelper
Reviewed-by: psadhukhan, serb
2020-11-11 11:43:47 +00:00
Boris Ulasevich
362feaae24 8254661: arm32: additional cleanup after fixing SIGSEGV
Reviewed-by: ngasson, shade
2020-11-11 11:09:26 +00:00
Roberto Castañeda Lozano
432c387e21 8254317: C2: Resource consumption of ConvI2LNode::Ideal() grows exponentially
Prevent exponential number of calls to ConvI2LNode::Ideal() when AddIs are used
multiple times by other AddIs in the optimization ConvI2L(AddI(x, y)) ->
AddL(ConvI2L(x), ConvI2L(y)). This is achieved by (1) reusing existing ConvI2Ls
if possible rather than eagerly creating new ones and (2) postponing the
optimization of newly created ConvI2Ls. Remove hook node solution introduced in
8217359, since this is subsumed by (2). Use phase->is_IterGVN() rather than
can_reshape to check if ConvI2LNode::Ideal() is called within iterative GVN, for
clarity. Add regression tests that cover different shapes and sizes of AddI
subgraphs, implicitly checking (by not timing out) that there is no
combinatorial explosion.

Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, kvn
2020-11-11 10:18:36 +00:00
Nick Gasson
79ac041844 8256025: AArch64: MachCallRuntimeNode::ret_addr_offset() is incorrect for stub calls
Reviewed-by: aph
2020-11-11 09:59:56 +00:00
prajwal_kumaraswamy
6e8b862811 8255559: Leak File Descriptors Because of ResolverLocalFilesystem#engineResolveURI()
Reviewed-by: weijun
2020-11-11 09:24:42 +00:00
Jan Lahoda
129ff97fe6 8231599: NPE when loading a preview classfile from a future Java version
Reviewed-by: vromero
2020-11-11 09:11:02 +00:00
Prasanta Sadhukhan
5181f9cea2 7190978: javax/swing/JComponent/7154030/bug7154030.java fails on mac
Reviewed-by: serb
2020-11-11 08:08:39 +00:00
Prasanta Sadhukhan
35284e4667 8255916: [macos] javax/swing/JInternalFrame/6647340/bug6647340.java timed out
Reviewed-by: serb
2020-11-11 08:05:20 +00:00
Dong Bo
8638cd9acf 8255625: AArch64: Implement Base64.encodeBlock accelerator/intrinsic
Reviewed-by: aph
2020-11-11 01:51:27 +00:00
Sergey Bylokhov
5de99da75c 8237495: Java MIDI fails with a dereferenced memory error when asked to send a raw 0xF7
Reviewed-by: kizune
2020-11-11 01:31:03 +00:00
Sergey Bylokhov
be635258fa 8211999: Window positioning bugs due to overlapping GraphicsDevice bounds (Windows/HiDPI)
Reviewed-by: kizune, aivanov
2020-11-11 01:29:33 +00:00
Jorn Vernee
0a41ca6b75 8254354: Add a withInvokeExactBehavior() VarHandle combinator
Reviewed-by: psandoz, chegar
2020-11-10 23:26:02 +00:00
Alexey Semenyuk
d6f1463cb3 8233332: Need to create exploded tests covering all forms of modules
Reviewed-by: herrick, almatvee
2020-11-10 22:36:31 +00:00
Claes Redestad
f2a0bf3ea8 8256017: Remove unused elapsedTimer constructor
Reviewed-by: tschatzl, hseigel
2020-11-10 20:39:30 +00:00
Coleen Phillimore
7d4e86be3b 8138588: VerifyMergedCPBytecodes option cleanup needed
Reviewed-by: hseigel, dcubed, sspitsyn
2020-11-10 20:38:25 +00:00
Jayashree S Kumar
a7f46919ff 8244088: [Regression] Switch of Gnome theme ends up in deadlocked UI
Reviewed-by: serb
2020-11-10 19:36:59 +00:00
Frederic Parain
bd3e65b576 8256052: Remove unused allocation type from fieldInfo
Reviewed-by: redestad, lfoltan, hseigel
2020-11-10 19:16:35 +00:00
Mandy Chung
6d8acd2696 8256066: Tests use deprecated TestNG API that is no longer available in new versions
Reviewed-by: jjg
2020-11-10 17:51:52 +00:00
Aleksey Shipilev
643969a184 8255822: Zero: improve build-time JVMTI handling
Reviewed-by: dholmes, ihse
2020-11-10 17:23:10 +00:00
Claes Redestad
6ae5e5b6b7 8221404: C2: Convert RegMask and IndexSet to use uintptr_t
Reviewed-by: kvn, thartmann
2020-11-10 16:48:21 +00:00
Thomas Schatzl
6555996f92 8253600: G1: Fully support pinned regions for full gc
Reviewed-by: sjohanss, ayang
2020-11-10 16:36:06 +00:00
Roman Kennke
97d6e4aed7 8256046: Shenandoah: Mix-in NULL_PTR in non-strong ShLRBNode's type
Reviewed-by: roland, shade
2020-11-10 15:25:44 +00:00
Jie Fu
a1d4b9f35b 8256009: Remove src/hotspot/share/adlc/Test/i486.ad
Reviewed-by: shade, thartmann
2020-11-10 13:49:01 +00:00
Vladimir Ivanov
3455fa9bfd 8256050: JVM crashes with -XX:+PrintDeoptimizationDetails
Reviewed-by: kvn, dcubed
2020-11-10 12:41:11 +00:00
Vladimir Ivanov
e6df13e6e0 8256054: C2: Floating-point min/max operations on vectors intermittently produce wrong results for NaN values
Reviewed-by: redestad, psandoz, dlong
2020-11-10 12:39:33 +00:00
Jie Fu
52805f526b 8256048: Incomplete gitignore setting for netbeans project
Reviewed-by: erikj
2020-11-10 12:16:00 +00:00
Martin Doerr
9d07259f16 8255598: [PPC64] assert(Universe::heap()->is_in(result)) failed: object not in heap
Reviewed-by: ayang, tschatzl
2020-11-10 11:48:23 +00:00
Nils Eliasson
e281b13597 8255011: [TESTBUG] compiler/codecache/stress/UnexpectedDeoptimizationAllTest.java timed out
Change CodeCacheStressRunner to have a 60 second test time

Reviewed-by: iignatyev
2020-11-10 11:25:53 +00:00
Thomas Schatzl
c601849e00 8256038: G1: Improve comment about mark word handling of displaced mark words
Reviewed-by: sjohanss, kbarrett
2020-11-10 09:12:29 +00:00
Roman Kennke
a38dd53411 8256040: Shenandoah: Allow NULL referent in ShenandoahReferenceProcessor::should_discover()
Reviewed-by: shade
2020-11-10 06:56:58 +00:00
Aleksey Shipilev
01567b51dc 8256036: Shenandoah: MethodHandles adapters section overflows after JDK-8255762
Reviewed-by: jiefu, redestad
2020-11-10 06:30:26 +00:00
Aleksey Shipilev
4bc065cf9e 8255782: Turn UseTLAB and ResizeTLAB from product_pd to product, defaulting to "true"
Reviewed-by: stuefe, stefank, tschatzl
2020-11-10 06:29:53 +00:00
Sergey Bylokhov
b5d78afe20 8254863: Delete code leftover from old fixes
Reviewed-by: azeemj, kizune, prr
2020-11-10 06:17:19 +00:00
amresh-sahu
8066b33c40 8253905: Update sanity test suite to not place windows at (0,0)
Reviewed-by: shurailine, serb
2020-11-10 05:27:16 +00:00
Dong Bo
f71f9dc93a 8255949: AArch64: Add support for vectorized shift right and accumulate
Reviewed-by: aph
2020-11-10 01:24:25 +00:00
Zhengyu Gu
1332ba3c3c 8256039: Shenandoah: runtime/stringtable/StringTableCleaningTest.java fails
Reviewed-by: shade, rkennke
2020-11-10 00:05:20 +00:00
Sergey Bylokhov
11431b16e0 4619330: All built-in java.awt.color.ColorSpace fields should be specified as such
Reviewed-by: prr
2020-11-09 23:40:04 +00:00
Andrew Haley
17f04fc9e7 8254078: DataOutputStream is very slow post-disabling of Biased Locking
Reviewed-by: rriggs, shade, alanb
2020-11-09 16:02:30 +00:00
Stefan Johansson
79b7909507 8255980: G1 Service thread register_task can be used after shutdown
Reviewed-by: tschatzl, ayang
2020-11-09 14:24:24 +00:00
Thomas Stuefe
dd8e4ffbe5 8255711: Fix and unify hotspot signal handlers
Reviewed-by: coleenp, gziemski, dholmes
2020-11-09 12:03:06 +00:00
Roman Kennke
d99e1f6c29 8255991: Shenandoah: Apply 'weak' LRB on cmpxchg and xchg
Reviewed-by: shade
2020-11-09 09:19:13 +00:00
Sergey Bylokhov
c7551c37c7 8256014: Eliminate the warning about serialization in non-public API of Swing
Reviewed-by: prr, psadhukhan
2020-11-09 06:38:53 +00:00
Sergey Bylokhov
2d6c28db24 6847157: java.lang.NullPointerException: HDC for component at sun.java2d.loops.Blit.Blit
Reviewed-by: prr
2020-11-09 06:35:50 +00:00
Sergey Bylokhov
3ce09c05c4 8255920: J2DBench should support CS_PYCC color profile
Reviewed-by: prr
2020-11-09 01:38:28 +00:00
Anton Kozlov
2c8f4e202b 8255799: AArch64: CPU_A53MAC feature may be set incorrectly
Reviewed-by: ngasson, aph
2020-11-09 01:35:26 +00:00
Sergey Bylokhov
2cad836833 8255575: java.awt.color.ICC_ColorSpace is not thread-safe
Reviewed-by: prr
2020-11-09 01:28:19 +00:00
Sergey Bylokhov
a53b12df2d 8255722: Create a new test for rotated blit
Reviewed-by: prr
2020-11-09 01:12:46 +00:00
Roman Kennke
f39a2c89fc 8256015: Shenandoah: Add missing Shenandoah implementation in WB_isObjectInOldGen
Reviewed-by: shade
2020-11-08 20:35:25 +00:00
Phil Race
ed7526a66c 8247872: Upgrade HarfBuzz to the latest 2.7.2
Reviewed-by: serb
2020-11-08 17:06:12 +00:00
Xin Liu
6a183fbbc3 8255562: delete UseRDPCForConstantTableBase
Reviewed-by: simonis
2020-11-08 15:03:57 +00:00
Pavel Rappo
c5462bb95d 8255989: Remove explicitly unascribed authorship from Java source files
Reviewed-by: redestad, mr, mchung, iris, serb
2020-11-07 12:11:43 +00:00
Sergey Bylokhov
358f5d2b03 6422025: ThemeReader.cpp can be updated for VC7
Reviewed-by: aivanov
2020-11-07 06:10:56 +00:00
Alex Menkov
a9dff9420a 8254864: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java timed out
Reviewed-by: sspitsyn, cjplummer
2020-11-06 21:57:43 +00:00
Coleen Phillimore
0b7fba75c1 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c
Reviewed-by: redestad, cjplummer, dholmes, stuefe
2020-11-06 19:04:09 +00:00
Conor Cleary
f5d36e6c94 8246741: NetworkInterface/UniqueMacAddressesTest: mac address uniqueness test failed
Reviewed-by: chegar, dfuchs
2020-11-06 17:35:24 +00:00
Vicente Romero
688b10b970 8255561: add tests to check binary compatibility rules for records
Reviewed-by: jjg
2020-11-06 16:39:40 +00:00
Brian Burkhalter
727a69f537 8255969: Improve java/io/BufferedInputStream/LargeCopyWithMark.java using jtreg tags
Reviewed-by: naoto
2020-11-06 16:15:14 +00:00
Andy Herrick
952abea47b 8254920: Application launched with jpackage produced .exe crashes JVM
Reviewed-by: asemenyuk, almatvee, kizune
2020-11-06 16:14:36 +00:00
David Holmes
5dfb42fc68 8255563: Missing NULL checks after JDK-8233624
Reviewed-by: kvn
2020-11-06 01:38:10 +00:00
Sergey Bylokhov
e730e8b691 8241806: The sun/awt/shell/FileSystemViewMemoryLeak.java is unstable
Reviewed-by: jdv, aivanov
2020-11-06 00:30:09 +00:00
Eric Caspole
57b98fa55a 8255965: LogCompilation: add sort by nmethod code size
Reviewed-by: kvn, redestad
2020-11-05 23:51:27 +00:00
Chris Plummer
e42c134038 8255706: The JDWP debug agent unecessarily checks for JVMTI_ERROR_INTERRUPT after calling RawMonitorEnter
Reviewed-by: alanb, dholmes, sspitsyn
2020-11-05 23:18:01 +00:00
Claes Redestad
e66fd6f0aa 8255756: Disabling logging does unnecessary work
Reviewed-by: iklam
2020-11-05 21:20:13 +00:00
Claes Redestad
140c162a0d 8255894: Remove unused StubRoutines::_zero_aligned_words
Reviewed-by: shade
2020-11-05 21:18:59 +00:00
Zhengyu Gu
fc894ab11b 8255955: Shenandoah: Only STW GC should process concurrent roots at pauses
Reviewed-by: rkennke
2020-11-05 18:59:33 +00:00
Brian Burkhalter
d6f0940400 8255913: Decrease number of iterations in TestMaxCachedBufferSize
Reviewed-by: lancea, dfuchs
2020-11-05 18:30:34 +00:00
Vladimir Kozlov
1b59595e1e 8255914: [AOT] Using AOT flag should give warning when AOT is not included in build
Reviewed-by: dholmes, iveresov
2020-11-05 17:18:19 +00:00
Brian Burkhalter
a50fdd5484 8219014: (bf) Add absolute bulk put methods which accept a source Buffer
Reviewed-by: psandoz, alanb
2020-11-05 16:27:49 +00:00
Erik Österlund
3a02578b33 8255452: Doing GC during JVMTI MethodExit event posting breaks return oop
Reviewed-by: coleenp, dlong, rrich, sspitsyn
2020-11-05 16:17:33 +00:00
Gerard Ziemski
ba2ff3a6d2 8250637: UseOSErrorReporting times out (on Mac and Linux)
Reviewed-by: stuefe, dholmes
2020-11-05 16:15:27 +00:00
Zhengyu Gu
31918c55f3 8255847: Shenandoah: Shenandoah should not mark through weak roots
Reviewed-by: rkennke
2020-11-05 15:29:11 +00:00
Rahul Yadav
867a484df1 8255214: Unsupported 'valign' attribute for 'th' tag used in j.u.l.LogManager
Reviewed-by: mchung, dfuchs
2020-11-05 14:35:06 +00:00
Sergey Bylokhov
d3c43c2816 8255937: Better cleanup for test/jdk/javax/imageio/stream/StreamFlush.java
Reviewed-by: jdv
2020-11-05 11:35:54 +00:00
Kiran Sidhartha Ravikumar
b65ff60a8e 8255226: (tz) Upgrade time-zone data to tzdata2020d
Reviewed-by: naoto
2020-11-05 11:29:19 +00:00
Patrick Concannon
2b78a43f77 8255584: HttpPrincipal::getName returns incorrect name
Reviewed-by: dfuchs
2020-11-05 10:10:21 +00:00
Lin Zang
a6ce6a5d80 8252103: Parallel heap inspection for ParallelScavengeHeap
Reviewed-by: sjohanss, tschatzl
2020-11-05 09:43:21 +00:00
Jan Lahoda
cdef186c11 8232856: jshell crashes when pressing up arrow after /!
Reviewed-by: psandoz
2020-11-05 09:12:07 +00:00
Claes Redestad
700447f7e4 8255909: Remove unused delayed_value methods
Reviewed-by: minqi, coleenp, thartmann
2020-11-05 08:37:08 +00:00
Stefan Johansson
397972ebf3 8255848: -Xlog:gc+heap+exit shows "used 0K"
Reviewed-by: tschatzl, ayang
2020-11-05 08:13:40 +00:00
Tobias Hartmann
eb85b8da32 8255665: C2 should aggressively remove temporary hook nodes
Reviewed-by: chagedorn, kvn
2020-11-05 08:02:47 +00:00
Jan Lahoda
18bc95ba51 8250625: Compiler implementation of Pattern Matching for instanceof (Final)
Reviewed-by: vromero
2020-11-05 08:01:33 +00:00
Aleksey Shipilev
60e4aca846 8255890: Zero: remove unused methods from BytecodeInterpreter
Reviewed-by: coleenp
2020-11-05 06:29:35 +00:00
Ioi Lam
397bae20e9 8255860: Clean up CDS logging related to lambda
Reviewed-by: ccheung, minqi
2020-11-05 05:20:59 +00:00
Vicente Romero
97a81cee25 8253385: annotation processors remove varargs information from record components
Reviewed-by: jjg
2020-11-04 23:30:41 +00:00
Chris Plummer
166c728300 8255858: Add debug agent support for storing thread names
Reviewed-by: sspitsyn, amenkov
2020-11-04 22:43:34 +00:00
Claes Redestad
a0ade22057 8255900: x86: Reduce impact when VerifyOops is disabled
Reviewed-by: neliasso, minqi, kvn
2020-11-04 21:40:31 +00:00
Roman Kennke
29db1dcd62 8255886: Shenandoah: Resolve cset address truncation and register clash in interpreter LRB
Reviewed-by: shade
2020-11-04 21:30:27 +00:00
Andy Herrick
26e7ef78fb 8252870: Finalize (remove "incubator" from) jpackage
Reviewed-by: kcr, erikj, almatvee, asemenyuk, prr, ihse
2020-11-04 20:27:11 +00:00
Jorn Vernee
804bd72599 8255128: linux x86 build failure with libJNIPoint.c
Reviewed-by: coleenp, shade, ihse
2020-11-04 18:10:49 +00:00
Jorn Vernee
160759ceef 8255838: Use 32-bit immediate movslq in macro assembler if 64-bit value fits in 32 bits on x86_64
Reviewed-by: azeemj, kvn, redestad, thartmann
2020-11-04 18:10:23 +00:00
Mandy Chung
94ace035a5 8255863: Clean up test/jdk/java/lang/invoke/defineHiddenClass/BasicTest.java
Reviewed-by: rriggs, chegar
2020-11-04 17:44:09 +00:00
Mandy Chung
2da9981e33 8255862: Remove @SuppressWarnings from sun.misc.Unsafe
Reviewed-by: shade, alanb, chegar
2020-11-04 17:40:06 +00:00
Calvin Cheung
5348298f62 8255855: appcds/jigsaw/NewModuleFinderTest.java test failed due to unexpected NPE
Reviewed-by: iklam
2020-11-04 17:17:46 +00:00
Brian Burkhalter
c287170c94 8254742: InputStream::readNBytes(int) result may contain zeros not in input
Reviewed-by: shade, bchristi
2020-11-04 16:50:02 +00:00
Magnus Ihse Bursie
7dcaba6312 8253892: Disable misleading-indentation on clang as well as gcc
Reviewed-by: erikj
2020-11-04 16:17:15 +00:00
Aleksey Shipilev
61c924701f 8255895: Submit workflow artifacts miss hs_errs/replays due to ZIP include mismatch
Reviewed-by: erikj
2020-11-04 14:44:27 +00:00
Prasanta Sadhukhan
7f4d873dd9 8255215: Unsupported 'valign' attribute for 'tr' tag used in j.s.t.h.HTMLDocument
Reviewed-by: serb
2020-11-04 13:08:46 +00:00
Jesper Wilhelmsson
724217c740 8255893: Problemlist runtime/cds/appcds/jigsaw/NewModuleFinderTest.java
Reviewed-by: dholmes
2020-11-04 11:51:59 +00:00
Kim Barrett
6023f6b1bf 8188055: (ref) Add Reference::refersTo predicate
Reviewed-by: mchung, pliden, rriggs, dholmes, ihse, smarks, alanb
2020-11-04 09:18:23 +00:00
Matthias Baesken
ab9192e463 8255681: print callstack in error case in runAWTLoopWithApp
Reviewed-by: clanger, serb
2020-11-04 07:44:43 +00:00
Roberto Castañeda Lozano
c7a2c24529 8255797: ciReplay: improve documentation of replay file syntax in parser
Complete and disambiguate the informal specification of the replay file syntax
given in the ciReplay class implementation.

Reviewed-by: kvn, thartmann
2020-11-04 07:32:21 +00:00
Aleksey Shipilev
a5d8a9c211 8255617: Zero: purge the remaining bytecode interpreter profiling support
Reviewed-by: coleenp, sgehwolf, jiefu
2020-11-04 06:40:31 +00:00
Kim Barrett
4b88119b4b 8253037: G1: Improve check for string dedup
Combine dedup enabled and is_string into a single test, using the already in-hand klass of the object.

Reviewed-by: ayang, tschatzl
2020-11-04 05:04:02 +00:00
Magnus Ihse Bursie
2668d23244 8255861: Also update jaotc.1 for JDK 16
Reviewed-by: kvn
2020-11-03 23:52:08 +00:00
Erik Joelsson
76fa974cb2 8255850: Hotspot recompiled on first incremental build
Reviewed-by: ihse
2020-11-03 23:11:23 +00:00
Magnus Ihse Bursie
622f72bc8b 8255853: Update all nroff manpages for JDK 16 release
Reviewed-by: erikj
2020-11-03 22:12:56 +00:00
Yumin Qi
cdf9cd8afa 8255784: appcds/javaldr/ExceptionDuringDumpAtObjectsInitPhase.java test failed resulting in VM crash
Reviewed-by: ccheung, iklam
2020-11-03 20:50:51 +00:00
Roman Kennke
eab99f37ce 8255852: Shenandoah: Fix incorrect copyright header in new files added by 8254315
Reviewed-by: zgu
2020-11-03 20:34:42 +00:00
Brian Burkhalter
450452bb8c 8254876: (fs) NullPointerException not thrown when first argument to Path.of or Paths.get is null
Reviewed-by: rriggs, alanb
2020-11-03 19:39:28 +00:00
Calvin Cheung
b46d73bee8 8255239: The timezone of the hs_err_pid log file is corrupted in Japanese locale
Reviewed-by: iklam, minqi
2020-11-03 19:30:46 +00:00
Lance Andersen
6606e0909c 8255380: (zipfs) ZipFileSystem::readExtra can fail if zipinfo-time is not set to false
Reviewed-by: redestad
2020-11-03 19:20:42 +00:00
Bernhard Urban-Forster
88ee973334 8254827: JVMCI: Enable it for Windows+AArch64
Reviewed-by: ihse, never, kvn
2020-11-03 19:04:47 +00:00
Roman Kennke
f64a15d62e 8254315: Shenandoah: Concurrent weak reference processing
Reviewed-by: zgu, shade
2020-11-03 18:58:46 +00:00
Sergey Bylokhov
83f3cf4298 8196087: java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java fails
Reviewed-by: jdv
2020-11-03 18:28:19 +00:00
Zhengyu Gu
134e22a00f 8255606: Enable concurrent stack processing on x86_32 platforms
Reviewed-by: shade, rkennke, eosterlund
2020-11-03 17:23:47 +00:00
Aleksey Shipilev
ca216bae1a 8255810: Zero: build fails without JVMTI
Reviewed-by: coleenp
2020-11-03 17:21:16 +00:00
Jonathan Gibbons
d47336bf1c 8248320: Provide a unique accessible name for <nav role="navigation">
Reviewed-by: hannesw
2020-11-03 17:15:17 +00:00
Magnus Ihse Bursie
64a981124a 8255798: Remove dead headless code in CompileJavaModules.gmk
Reviewed-by: shade, erikj
2020-11-03 14:52:05 +00:00
Magnus Ihse Bursie
364b0fe82e 8255801: Race when building ct.sym build tools
Reviewed-by: erikj
2020-11-03 14:51:14 +00:00
Aleksey Shipilev
f389a718a8 8255737: Zero: DO_UPDATE_INSTRUCTION_COUNT should only update when relevant VM flags are set
Reviewed-by: sgehwolf
2020-11-03 14:00:28 +00:00
Roman Kennke
93ef0091db 8255762: Shenandoah: Consolidate/streamline interpreter LRBs
Reviewed-by: shade
2020-11-03 12:59:17 +00:00
Richard Reingruber
63461d59a1 8255072: [TESTBUG] com/sun/jdi/EATests.java should not fail if expected VMOutOfMemoryException is not thrown
Reviewed-by: cjplummer, sspitsyn, kvn
2020-11-03 12:36:59 +00:00
Jorn Vernee
b8d4e02ce7 8255374: Add a dropReturn MethodHandle combinator
Reviewed-by: redestad
2020-11-03 12:10:48 +00:00
Stefan Johansson
1d0bd50624 8254758: Change G1ServiceThread to be task based
Reviewed-by: ayang, iwalulya, tschatzl
2020-11-03 11:07:35 +00:00
Aleksey Shipilev
9a0cf58721 8255615: Zero: demote ZeroStack::abi_stack_available guarantee to assert
Reviewed-by: sgehwolf
2020-11-03 11:04:47 +00:00
Aleksey Shipilev
904561ebf2 8255719: Zero: on return path, check for pending exception before attempting to clear it
Reviewed-by: sgehwolf
2020-11-03 11:02:15 +00:00
Aleksey Shipilev
9bd836e046 8255744: Zero: handle JVM_CONSTANT_DynamicInError
Reviewed-by: sgehwolf
2020-11-03 10:35:20 +00:00
Patrick Zhang
36998b006d 8255716: AArch64: Regression: JVM crashes if manually offline a core
Reviewed-by: aph, adinn, akozlov
2020-11-03 09:28:12 +00:00
Jayathirth D V
4107670d62 8233562: [TESTBUG] Swing StyledEditorKit test bug4506788.java fails on MacOS
Reviewed-by: psadhukhan
2020-11-03 07:54:31 +00:00
Thomas Stuefe
9a36747927 8255780: Remove unused overloads of VMError::report_and_die()
Reviewed-by: mdoerr, coleenp
2020-11-03 07:34:06 +00:00
Stefan Karlsson
c96a914b52 8255662: ZGC: Unify nmethod closures in the heap iterator
Reviewed-by: eosterlund, pliden
2020-11-03 07:31:47 +00:00
Aleksey Shipilev
aa2862ad86 8255741: Zero: print signal name in unhandled signal handler
Reviewed-by: stuefe
2020-11-03 07:28:06 +00:00
Tobias Hartmann
15805741f1 8255672: Replace PhaseTransform::eqv by pointer equality check
Reviewed-by: chagedorn, redestad, kvn
2020-11-03 07:17:58 +00:00
Thomas Stuefe
e7a2d5c843 8252533: Signal handlers should run with synchronous error signals unblocked
Reviewed-by: gziemski, dholmes
2020-11-03 07:16:45 +00:00
Aleksey Shipilev
6d36b4bb79 8255743: Relax SIGFPE match in in runtime/ErrorHandling/SecondaryErrorTest.java
Reviewed-by: stuefe
2020-11-03 07:06:14 +00:00
Aleksey Shipilev
f0eeca9080 8255718: Zero: VM should know it runs in interpreter-only mode
Reviewed-by: andrew, coleenp
2020-11-03 07:04:28 +00:00
Jayathirth D V
9beb866b12 8233561: [TESTBUG] Swing text test bug8014863.java fails on macos
Reviewed-by: psadhukhan
2020-11-03 06:38:22 +00:00
Prasanta Sadhukhan
fe4e6b3e90 8196089: javax/swing/Action/8133039/bug8133039.java fails
Reviewed-by: jdv
2020-11-03 03:16:36 +00:00
Nick Gasson
50357d136a 8254723: add diagnostic command to write Linux perf map file
Reviewed-by: ysuenaga, sspitsyn
2020-11-03 01:37:57 +00:00
Magnus Ihse Bursie
f97ec359ec 8255785: X11 libraries should not be required by configure for headless only
Reviewed-by: mikael, prr
2020-11-03 01:17:10 +00:00
Erik Joelsson
184db64dfb 8255732: OpenJDK fails to build if $A is set to a value with spaces
Reviewed-by: ihse
2020-11-02 21:06:38 +00:00
Chris Plummer
c774741655 8255695: Some JVMTI calls in the jdwp debug agent are using FUNC_PTR instead of JVMTI_FUNC_PTR
Reviewed-by: sspitsyn, amenkov
2020-11-02 20:31:49 +00:00
Bernhard Urban-Forster
bee864fb3a 8255766: Fix linux+arm64 build after 8254072
Reviewed-by: kvn, ihse
2020-11-02 20:25:59 +00:00
Chris Plummer
ceba2f8503 8255696: JDWP debug agent's canSuspendResumeThreadLists() should be removed
Reviewed-by: amenkov, sspitsyn
2020-11-02 20:23:44 +00:00
Chris Plummer
a250716ad2 8255694: memory leak in JDWP debug agent after calling JVMTI GetAllThreads
Reviewed-by: amenkov, sspitsyn
2020-11-02 20:13:32 +00:00
Sergey Bylokhov
acb5f654b1 8211958: Broken links in java.desktop files
Reviewed-by: aivanov
2020-11-02 19:32:06 +00:00
Tom Rodriguez
bc6085b06c 8255578: [JVMCI] be more careful about reflective reads of Class.componentType.
Reviewed-by: kvn, dlong
2020-11-02 19:19:48 +00:00
Lance Andersen
05bcd67e65 8255529: Remove unused methods from java.util.zip.ZipFile
Reviewed-by: naoto, redestad
2020-11-02 18:24:48 +00:00
Aleksey Shipilev
d93e3a7d0b 8255760: Shenandoah: match constants style in ShenandoahMarkTask fallback
Reviewed-by: zgu, rkennke
2020-11-02 17:34:01 +00:00
Per Liden
3e89f729af 8255237: ZGC: Bulk free garbage pages during relocation set selection
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Co-authored-by: Per Liden <pliden@openjdk.org>
Reviewed-by: ayang, eosterlund
2020-11-02 17:00:34 +00:00
Naoto Sato
6dac8d2780 8255671: Bidi.reorderVisually has misleading exception messages
Reviewed-by: joehw
2020-11-02 16:48:16 +00:00
Vladimir Kozlov
2f7d34f205 8255616: Disable AOT and Graal in Oracle OpenJDK
Reviewed-by: iignatyev, vlivanov, iveresov, ihse
2020-11-02 16:04:46 +00:00
Roman Kennke
0e19ded93d 8255401: Shenandoah: Allow oldval and newval registers to overlap in cmpxchg_oop()
Reviewed-by: roland
2020-11-02 16:01:18 +00:00
Roland Westrelin
a3aad11918 8255400: Shenandoah: C2 failures after JDK-8255000
Reviewed-by: rkennke
2020-11-02 15:48:14 +00:00
Stefan Karlsson
1769c48342 8255471: ZGC: Rework root iterators and closures
Reviewed-by: eosterlund, pliden
2020-11-02 15:26:32 +00:00
Erik Joelsson
b028074384 8255673: Wrong version in docs bundles
Reviewed-by: tbell, ihse
2020-11-02 14:45:39 +00:00
Per Liden
4c66b158a8 8255235: ZGC: Allocate and initialize forwarding data structures in parallel
Reviewed-by: ayang, eosterlund
2020-11-02 14:31:56 +00:00
Roman Kennke
1019581ce2 8255691: Shenandoah: Invoke native-LRB only on non-strong refs
Reviewed-by: zgu
2020-11-02 14:10:47 +00:00
Bernhard Urban-Forster
d2812f780e 8254072: AArch64: Get rid of --disable-warnings-as-errors on Windows+ARM64 build
Reviewed-by: ihse, aph
2020-11-02 13:42:56 +00:00
Claes Redestad
120aec7054 8255720: Optimize bci_to_dp/-data by enabling iteration over raw DataLayouts
Reviewed-by: kvn, thartmann
2020-11-02 13:25:11 +00:00
Claes Redestad
4b775e64bd 8255721: Remove no-op clean_weak_method_links methods
Reviewed-by: kvn, thartmann
2020-11-02 13:24:37 +00:00
Andrew Haley
3302d3adb5 8255544: Create a checked cast
Reviewed-by: adinn, iklam
2020-11-02 13:12:18 +00:00
Thomas Stuefe
54c8813254 8255734: VM should ignore SIGXFSZ on ppc64, s390 too
Reviewed-by: mdoerr, lucy
2020-11-02 12:45:05 +00:00
Sergey Bylokhov
ceab9f3248 6816284: Notepad class should be public
Reviewed-by: pbansal
2020-11-02 12:26:15 +00:00
Sergey Bylokhov
eb66418b32 7124397: [macosx] JSpinner serialiazation - deserialization issue
Reviewed-by: pbansal
2020-11-02 12:22:28 +00:00
Claes Redestad
79a010f76b 8255697: LogTargetHandle::print should check if log level is enabled
Reviewed-by: stefank, tschatzl, stuefe
2020-11-02 10:58:16 +00:00
Prasanta Sadhukhan
98c91b64b2 8233637: [TESTBUG] Swing ActionListenerCalledTwiceTest.java fails on macos
Reviewed-by: jdv
2020-11-02 10:37:45 +00:00
Prasanta Sadhukhan
e97809d3d4 8233641: [TESTBUG] JMenuItem test bug4171437.java fails on macos
Reviewed-by: jdv
2020-11-02 10:37:09 +00:00
Kim Barrett
69f5235e16 8255596: Mutex safepoint checking options and flags should be scoped enums
Reviewed-by: tschatzl, rehn
2020-11-02 10:16:40 +00:00
Jan Lahoda
d05df7c17a 8236842: Surprising 'multiple elements' behaviour from getTypeElement when cross-compiling with --release
Reviewed-by: vromero
2020-11-02 10:15:16 +00:00
Christoph Langer
64feeab70a 8255603: Memory/Performance regression after JDK-8210985
Reviewed-by: simonis, xuelei, aph
2020-11-01 23:24:47 +00:00
Prasanta Sadhukhan
518ff518e1 8233569: [TESTBUG] JTextComponent test bug6361367.java fails on macos
Reviewed-by: serb
2020-11-01 15:49:49 +00:00
Prasanta Sadhukhan
4c4b8f4de2 8196302: javax/swing/JFileChooser/8041694/bug8041694.java
Reviewed-by: serb
2020-11-01 15:46:07 +00:00
Christian Stein
f61ce32770 8255576: (fs) Files.isHidden() throws ArrayIndexOutOfBoundsException (unix)
Reviewed-by: alanb
2020-11-01 12:39:43 +00:00
Sergey Bylokhov
fe7672bac6 8196099: javax/swing/text/CSSBorder/6796710/bug6796710.java fails
Reviewed-by: psadhukhan
2020-10-31 22:20:30 +00:00
Prasanta Sadhukhan
cacce843aa 8169954: JFileChooser/8021253: java.lang.RuntimeException: Default button is not pressed
Reviewed-by: serb
2020-10-31 11:03:43 +00:00
Prasanta Sadhukhan
7597cba92b 8143021: [TEST_BUG] Test javax/swing/JColorChooser/Test6541987.java fails
Reviewed-by: serb
2020-10-31 10:58:38 +00:00
Weijun Wang
80380d51d2 8255494: PKCS7 should use digest algorithm to verify the signature
Reviewed-by: valeriep
2020-10-31 03:22:35 +00:00
Yumin Qi
9d5c9cc78b 8254309: appcds GCDuringDump.java failed - class must exist
Reviewed-by: ccheung, iklam
2020-10-31 00:08:37 +00:00
Calvin Cheung
36c150b199 8255489: Unify the parsing of @lambda-proxy and @lambda-form-invokers tags in a classlist
Reviewed-by: iklam, minqi
2020-10-30 22:01:59 +00:00
Brent Christian
0f48603394 8214561: Use {@systemProperty} for definition of "java.util.prefs.PreferencesFactory" system property
Reviewed-by: lancea
2020-10-30 20:35:33 +00:00
Brent Christian
98a69edec7 8255690: &nbsp in StringBuilder.subSequence
Reviewed-by: lancea
2020-10-30 20:35:06 +00:00
Claes Redestad
4158567f84 8255455: Pre-generate ThreadHeapSampler::_log_table
Reviewed-by: iklam, sspitsyn
2020-10-30 18:13:45 +00:00
Jonathan Gibbons
d086757834 8254052: improve type specificity of TagletWriter and friends
Reviewed-by: hannesw
2020-10-30 17:23:39 +00:00
Roman Kennke
8600d0d982 8255614: Shenandoah: Consolidate/streamline runtime LRBs
Reviewed-by: zgu
2020-10-30 17:09:56 +00:00
Erik Joelsson
9b1eebc73d 8255620: Build race between modulegraphs and exploded-image-optimize targets
Reviewed-by: tbell
2020-10-30 13:55:31 +00:00
Erik Joelsson
3fd821606d 8255612: Explicitly disable dtrace for Oracle OpenJDK Linux builds
Reviewed-by: mikael
2020-10-30 13:42:12 +00:00
Weijun Wang
a7563207f6 8255536: Remove the directsign property and option
Reviewed-by: mullan
2020-10-30 13:29:41 +00:00
Weijun Wang
f77a658557 8153005: Upgrade the default PKCS12 encryption/MAC algorithms
Reviewed-by: mullan
2020-10-30 13:23:33 +00:00
Harold Seigel
8a065ef2e2 8255005: Fix indentation levels in classFileParser.cpp
Reviewed-by: lfoltan, coleenp
2020-10-30 12:56:15 +00:00
Jie Fu
e48016b163 8255565: [Vector API] Add missing format strings for extract instructs in x86.ad
Reviewed-by: vlivanov, jbhateja
2020-10-30 08:49:08 +00:00
Thomas Schatzl
2c7fc85be9 8254972: Fix pretouch chunk calculations
Reviewed-by: sjohanss, kbarrett
2020-10-30 08:45:34 +00:00
Patrick Concannon
d12819158a 8253473: Javadoc clean up in HttpHandler, HttpPrincipal, HttpContext, and HttpsConfigurator
Reviewed-by: dfuchs
2020-10-30 08:42:20 +00:00
Kim Barrett
379ba80eb7 8255595: delay_to_keep_mmu passes wrong arguments to Monitor wait
Remove improper wait argument.

Reviewed-by: sjohanss, tschatzl, ayang
2020-10-30 04:24:34 +00:00
Ioi Lam
1a89d68e87 8255285: Move JVMFlag origins into a new enum JVMFlagOrigin
Reviewed-by: dholmes, redestad
2020-10-30 03:44:54 +00:00
Vladimir Kozlov
56eb5f54f4 8255466: C2 crashes at ciObject::get_oop() const+0x0
Reviewed-by: vlivanov
2020-10-29 22:34:14 +00:00
Mandy Chung
5782a2a309 8254975: lambda proxy fails to access a protected member inherited from a split package
Reviewed-by: rriggs
2020-10-29 21:11:37 +00:00
Conor Cleary
d5138d1fce 8255604: java/nio/channels/DatagramChannel/Connect.java fails with java.net.BindException: Cannot assign requested address: connect
Reviewed-by: dfuchs, michaelm
2020-10-29 19:08:06 +00:00
Jorn Vernee
2a2fa134c3 8255449: Improve the exception message of MethodHandles::permuteArguments
Reviewed-by: chegar, mchung
2020-10-29 18:32:48 +00:00
Xin Liu
2a50c3f810 8241495: Make more compiler related flags available on a per method level
add more method-level options  for -XX:CompileCommand
eg. -XX:CompileCommand=option,java.lang.String::startsWith,BreakAtCompile directs JIT compilers to hit BREAKPOINT when they compile the method java.lang.String::startsWith.

Reviewed-by: neliasso, azeemj, phh
2020-10-29 17:41:57 +00:00
Thomas Schatzl
5c520c3fdd 8255232: G1: Make G1BiasedMappedArray freeable
Reviewed-by: ayang, kbarrett
2020-10-29 15:06:25 +00:00
Aleksey Shipilev
9e5bbff51d 8255550: x86: Assembler::cmpq(Address dst, Register src) encoding is incorrect
Reviewed-by: kvn, eosterlund
2020-10-29 14:19:56 +00:00
Erik Österlund
5b185585e8 8255243: Reinforce escape barrier interactions with ZGC conc stack processing
Co-authored-by: Richard Reingruber <rrich@openjdk.org>
Reviewed-by: rrich, sspitsyn
2020-10-29 14:18:11 +00:00
Roman Kennke
faf23de54d 8255534: Shenandoah: Fix CmpP optimization wrt native-LRB
Reviewed-by: shade
2020-10-29 12:55:54 +00:00
Zhengyu Gu
579e50bb40 8255564: InterpreterMacroAssembler::remove_activation() needs to restore thread right after VM call on x86_32
Reviewed-by: dholmes, shade
2020-10-29 12:32:30 +00:00
Aleksey Shipilev
4b20e460dc 8255579: x86: Use cmpq(Register,Address) in safepoint_poll
Reviewed-by: eosterlund, zgu
2020-10-29 12:25:11 +00:00
jasontatton-aws
72ff8e2118 8254782: Fix benchmark issues in java/lang/StringIndexOfChar.java benchmark
Reviewed-by: redestad, shade
2020-10-29 12:06:43 +00:00
Conor Cleary
ea26ff1142 8247614: java/nio/channels/DatagramChannel/Connect.java timed out
Reviewed-by: dfuchs, alanb
2020-10-29 09:57:09 +00:00
Thomas Schatzl
38574d5169 8255298: Remove SurvivorAlignmentInBytes functionality
Reviewed-by: shade, ayang, kbarrett
2020-10-29 08:49:15 +00:00
Thomas Stuefe
4031cb4190 8254189: Improve comments for StackOverFlow and fix in_xxx() functions
Reviewed-by: dholmes, gziemski
2020-10-29 06:30:03 +00:00
Prasanta Sadhukhan
caec8d2208 8233560: [TESTBUG] ToolTipManager/Test6256140.java is failing on macos
Reviewed-by: serb
2020-10-29 02:37:09 +00:00
Prasanta Sadhukhan
a5b42ec8b2 8233570: [TESTBUG] HTMLEditorKit test bug5043626.java is failing on macos
Reviewed-by: serb
2020-10-29 02:35:07 +00:00
Igor Ignatyev
7e305ad1d4 8255405: sun/net/ftp/imp/FtpClient uses SimpleDateFormat in not thread-safe manner
Reviewed-by: chegar, ryadav, dfuchs
2020-10-28 23:53:51 +00:00
Jie Fu
d82a6dcfb9 8255438: [Vector API] More instructs in x86.ad should use legacy mode for code-gen
Reviewed-by: kvn, vlivanov, azeemj
2020-10-28 23:03:11 +00:00
Jason Tatton (AWS)
1a5e6c98c2 8253101: Clean up CallStaticJavaNode EA flags
Reviewed-by: kvn
2020-10-28 22:44:52 +00:00
Claes Redestad
a7595b2a61 8250669: Running JMH micros is broken after JDK-8248135
Reviewed-by: ecaspole, erikj
2020-10-28 22:36:43 +00:00
Magnus Ihse Bursie
edd19888df 8255530: Additional cleanup after JDK-8235710 (elliptic curve removal)
Reviewed-by: erikj
2020-10-28 22:25:21 +00:00
Naoto Sato
790d6e2d25 8255533: Incorrect javadoc in DateTimeFormatterBuilder.appendPattern() for 'uu'/'yy'
Reviewed-by: lancea, rriggs
2020-10-28 20:01:51 +00:00
Michael McMahon
3f20612e03 8255555: Bad copyright headers in SocketChannelCompare.java SocketChannelConnectionSetup.java UnixSocketChannelReadWrite.java
Reviewed-by: dfuchs, bpb
2020-10-28 19:00:47 +00:00
Severin Gehwolf
42fc158991 8253939: [TESTBUG] Increase coverage of the cgroups detection code
Reviewed-by: shade, bobv
2020-10-28 18:54:02 +00:00
Michael McMahon
01eb69035e 8255554: Bad copyright header in AbstractFileSystemProvider.java
Reviewed-by: bpb, alanb, iris
2020-10-28 18:27:08 +00:00
Aleksey Shipilev
1215b1a8f5 8255457: Shenandoah: cleanup ShenandoahMarkTask
Reviewed-by: rkennke
2020-10-28 18:04:34 +00:00
Aleksey Shipilev
af33e16225 8255441: Cleanup ciEnv/jvmciEnv::lookup_method-s
Reviewed-by: kvn
2020-10-28 17:45:53 +00:00
Vicente Romero
8ad7f383c1 8255014: Record Classes javax.lang.model changes, follow-up
Reviewed-by: jlahoda
2020-10-28 17:34:10 +00:00
Michael McMahon
6bb7e45e8e 8245194: Unix domain socket channel implementation
Reviewed-by: erikj, dfuchs, alanb, chegar
2020-10-28 17:26:26 +00:00
Vicente Romero
8bde2f4e3d 8255013: implement Record Classes as a standard feature in Java, follow-up
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: jlahoda
2020-10-28 17:18:46 +00:00
Igor Veresov
0425889885 8255429: Remove C2-based profiling
Reviewed-by: kvn, neliasso, vlivanov
2020-10-28 16:22:07 +00:00
Erik Österlund
aaf4f690f0 8255233: InterpreterRuntime::at_unwind should be a JRT_LEAF
Reviewed-by: coleenp, dholmes
2020-10-28 14:14:51 +00:00
Claes Redestad
bbf0a31e9e 8255397: x86: coalesce reference and int entry points into vtos bytecodes
Reviewed-by: shade, coleenp
2020-10-28 14:13:31 +00:00
Harold Seigel
3bd5b80761 8243583: Change 'final' error checks to throw ICCE
Reviewed-by: lfoltan, dholmes
2020-10-28 12:32:45 +00:00
Roman Kennke
1f00c3b9ba 8255527: Shenandoah: Let ShenadoahGCStateResetter disable barriers
Reviewed-by: shade, zgu
2020-10-28 12:14:44 +00:00
Sergey Tsypanov
3c4fc79326 8255299: Drop explicit zeroing at instantiation of Atomic* objects
Reviewed-by: redestad, serb, prr
2020-10-28 12:11:53 +00:00
Dong Bo
6b2d11ba24 8255246: AArch64: Implement BigInteger shiftRight and shiftLeft accelerator/intrinsic
Reviewed-by: aph
2020-10-28 11:52:07 +00:00
Jie Fu
591e7e2c19 8255378: [Vector API] Remove redundant vector length check after JDK-8254814 and JDK-8255210
Reviewed-by: vlivanov, adinn
2020-10-28 11:04:08 +00:00
Per Liden
2c9dfc73f9 8255234: ZGC: Bulk allocate forwarding data structures
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Co-authored-by: Per Liden <pliden@openjdk.org>
Reviewed-by: ayang, stefank
2020-10-28 08:56:57 +00:00
Christian Hagedorn
b7d483c7d5 8255245: C1: Fix output of -XX:+PrintCFGToFile to open it with visualizer
Reviewed-by: kvn, xliu
2020-10-28 08:47:14 +00:00
Sergey Bylokhov
5e0a8cdf89 8255488: Re-enable some problem listed tests
Reviewed-by: psadhukhan
2020-10-28 08:40:41 +00:00
Prasanta Sadhukhan
3f8bd92308 8233556: [TESTBUG] JPopupMenu tests fail on MacOS
Reviewed-by: serb
2020-10-28 06:37:49 +00:00
Prasanta Sadhukhan
4acf634d05 8171998: javax/swing/JMenu/4692443/bug4692443.java fails on Windows
Reviewed-by: serb
2020-10-28 06:32:29 +00:00
Eric Liu
a804c6a6ef 8254871: Remove unnecessary string copy in NetworkInterface.c
Reviewed-by: michaelm
2020-10-28 02:15:36 +00:00
Anton Kozlov
acd0e2560c 8255254: Split os::reserve_memory and os::map_memory_to_file interfaces
Reviewed-by: stefank, stuefe
2020-10-27 20:37:01 +00:00
Sergey Bylokhov
dc85a3fe81 8015602: [macosx] Test javax/swing/SpringLayout/4726194/bug4726194.java fails on MacOSX
Reviewed-by: psadhukhan, pbansal
2020-10-27 20:23:32 +00:00
Alex Menkov
1d245c6ec8 8252117: com/sun/jdi/BadHandshakeTest.java failed with "ConnectException: Connection refused: connect"
Reviewed-by: cjplummer, sspitsyn
2020-10-27 19:49:38 +00:00
Alexey Bakhtin
7a7ce021de 8007632: DES/3DES keys support in PKCS12 keystore
Reviewed-by: weijun
2020-10-27 18:41:44 +00:00
Roger Riggs
a023b93712 8255394: jdk/test/lib/hexdump/ASN1FormatterTest.java fails with ---illegal-access=deny
Reviewed-by: alanb, weijun
2020-10-27 18:17:57 +00:00
Calvin Cheung
84e985da4b 8253920: Share method trampolines in CDS dynamic archive
Reviewed-by: redestad, minqi, iklam
2020-10-27 16:16:01 +00:00
Thomas Stuefe
7d41a54188 8255450: runtime/ThreadCountLimit.java causes high system load
Reviewed-by: shade
2020-10-27 14:25:34 +00:00
Magnus Ihse Bursie
504cb00568 8252113: Move jfr man page into jfr module
Reviewed-by: erikj
2020-10-27 13:57:56 +00:00
Aleksey Shipilev
552192ff71 8255305: Add Linux x86_32 tier1 to submit workflow
Reviewed-by: ihse
2020-10-27 13:57:07 +00:00
Aleksey Shipilev
66a3917d4d 8255331: Problemlist java/foreign/TestMismatch.java on 32-bit platforms until JDK-8254162
Reviewed-by: mcimadamore
2020-10-27 13:53:02 +00:00
Stefan Karlsson
cf56c7e04c 8254980: ZGC: ZHeapIterator visits armed nmethods with -XX:-ClassUnloading
Reviewed-by: eosterlund, pliden
2020-10-27 12:27:23 +00:00
Harold Seigel
18d9905c40 8255342: Remove non-specified JVM checks on Classes with Record attributes
Reviewed-by: dholmes, coleenp
2020-10-27 12:23:14 +00:00
Prasanta Sadhukhan
767965046e 8231231: The printing result is different from the case instruction
Reviewed-by: prr
2020-10-27 11:16:27 +00:00
Claes Redestad
f7c59c661c 8255231: Avoid upcalls when initializing the statSampler
Reviewed-by: iklam, dholmes
2020-10-27 10:31:21 +00:00
Aleksey Shipilev
dccfd2b3e0 8255389: ConcurrentHashTable::NoOp omits return in non-void return method
Reviewed-by: kbarrett, rehn
2020-10-27 08:16:43 +00:00
Jie Fu
d735f91919 8255040: Replace __sync_add_and_fetch with __atomic_add_fetch to avoid build errors with clang
Reviewed-by: dholmes, kbarrett
2020-10-27 05:50:54 +00:00
Prasanta Sadhukhan
bcdeeaa04c 8199054: Test javax/swing/UIDefaults/8149879/InternalResourceBundle.java is unstable
Reviewed-by: prr, serb
2020-10-27 02:59:33 +00:00
Prasanta Sadhukhan
dee31d0e95 8167355: [macos 10.12] Timeout in javax/swing/JTextArea/TextViewOOM/TextViewOOM.java
Reviewed-by: prr
2020-10-27 02:55:40 +00:00
Sergey Bylokhov
abdbbe3a79 8254370: Update the classes in the java.awt.color package
Reviewed-by: prr
2020-10-26 23:56:11 +00:00
Alexander Matveev
8ca59c9e2e 8255206: [macos] LicenseTest fails on macOS 11
Reviewed-by: asemenyuk, herrick
2020-10-26 22:45:58 +00:00
Harold Seigel
ca8bba64dc 8238263: Create at-requires mechanism for containers
Reviewed-by: bobv, iignatyev
2020-10-26 20:30:37 +00:00
Vladimir Kozlov
a7fa1b70f2 8251994: VM crashed running TestComplexAddrExpr.java test with -XX:UseAVX=X
Reviewed-by: shade, redestad
2020-10-26 19:40:48 +00:00
Daniel Kamil Kozar
b498433631 8254825: Monitoring available clipboard formats should be done via new Windows APIs
Reviewed-by: serb
2020-10-26 19:13:20 +00:00
Phil Race
de05b0065a 8255365: Problem list failing client manual tests
Reviewed-by: kizune, serb
2020-10-26 18:56:23 +00:00
Sergey Bylokhov
49c4978d0a 8060202: [macosx] Test closed/java/awt/Choice/GetSizeTest/GetSizeTest fails only in MacOSX(10.10)
Reviewed-by: prr
2020-10-26 18:35:52 +00:00
Sergey Bylokhov
2b47a58dd7 8028281: [TEST_BUG] [macosx] javax/swing/JTabbedPane/7024235/Test7024235.java fails
Reviewed-by: psadhukhan, prr
2020-10-26 18:31:54 +00:00
Vladimir Ivanov
83a91bfaed 8253734: C2: Optimize Move nodes
Reviewed-by: thartmann, neliasso, kvn
2020-10-26 17:24:08 +00:00
Stefan Karlsson
6666dcbe72 8237363: Remove automatic is in heap verification in OopIterateClosure
Reviewed-by: eosterlund, pliden
2020-10-26 17:22:47 +00:00
Aleksey Shipilev
fa64477c82 8255301: Common and strengthen the code in ciMemberName and ciMethodHandle
Reviewed-by: vlivanov, kvn
2020-10-26 15:42:39 +00:00
Martin Doerr
9b5a2a6b24 8255349: Vector API issues on Big Endian
Reviewed-by: psandoz, rrich
2020-10-26 15:29:51 +00:00
Weijun Wang
e8b75b13dc 8255393: sun/security/util/DerValue/Indefinite.java fails with ---illegal-access=deny
Reviewed-by: alanb
2020-10-26 14:33:34 +00:00
Aleksey Shipilev
7cafe35424 8255352: Archive important test outputs in submit workflow
Reviewed-by: rwestberg, ihse
2020-10-26 11:20:38 +00:00
Aleksey Shipilev
888086f109 8255373: Submit workflow artifact name is always "test-results_.zip"
Reviewed-by: rwestberg, ihse
2020-10-26 10:18:36 +00:00
Aleksey Shipilev
69188188f4 8255265: IdealLoopTree::iteration_split_impl does not use should_align
Reviewed-by: thartmann, kvn
2020-10-26 07:16:10 +00:00
Aleksey Shipilev
c28b011121 8255343: java/util/stream/SpliteratorTest.java fails on 32-bit platforms with "Misaligned access at address: 12"
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Reviewed-by: mcimadamore
2020-10-26 07:11:44 +00:00
Prasanta Sadhukhan
b71b5b4375 8199062: Test javax/swing/text/Utilities/8134721/bug8134721.java is unstable
Reviewed-by: serb
2020-10-26 04:36:21 +00:00
Sergey Bylokhov
ee34fa585a 8199060: Test javax/swing/text/html/parser/Parser/6990651/bug6990651.java is unstable
Reviewed-by: prr
2020-10-25 20:54:35 +00:00
Sergey Bylokhov
93dadbe0dc 7190589: [macosx] In the test bug4278839 never press ctrl+arrow
Reviewed-by: prr
2020-10-25 20:47:48 +00:00
Naoto Sato
57d903bdd9 8255242: Bidi.requiresBidi has misleading exception message
Reviewed-by: bchristi
2020-10-25 18:22:10 +00:00
Daniel D. Daugherty
60d014242b 8255379: ProblemList compiler/loopstripmining/BackedgeNodeWithOutOfLoopControl.java
Reviewed-by: alanb
2020-10-25 14:49:26 +00:00
Prasanta Sadhukhan
1a94ebc7d7 8254112: javax/swing/plaf/basic/BasicComboPopup/JComboBoxPopupLocation/JComboBoxPopupLocation.java fails on windows
Reviewed-by: trebari, serb
2020-10-25 07:32:57 +00:00
Prasanta Sadhukhan
69b017248b 8199074: Test javax/swing/DataTransfer/8059739/bug8059739.java is unstable
Reviewed-by: serb, prr
2020-10-25 07:27:22 +00:00
Igor Ignatyev
6545e19fcc 8255078: sun/net/ftp/imp/FtpClient$MLSxParser uses wrong datetime format
Reviewed-by: dfuchs
2020-10-23 22:31:18 +00:00
Aleksey Shipilev
3f6abd220f 8255330: gtest/MetaspaceGtests.java fail on 32-bit platforms
Reviewed-by: stuefe
2020-10-23 19:42:30 +00:00
Alexey Semenyuk
cf821b0bd3 8232024: Don't pollute log output with multiple errors of the same type
Reviewed-by: almatvee, herrick
2020-10-23 18:36:31 +00:00
Claes Redestad
185c8bcf8a 8255338: CodeSections are never frozen
Reviewed-by: neliasso, kvn
2020-10-23 17:46:30 +00:00
Claes Redestad
cc861134f4 8255271: Avoid generating duplicate interpreter entries for subword types
Reviewed-by: iklam, coleenp
2020-10-23 15:37:46 +00:00
Fei Yang
5ec1b80c4a 8255287: aarch64: fix SVE patterns for vector shift count
Co-authored-by: Yanhong Zhu <zhuyanhong2@huawei.com>
Reviewed-by: adinn
2020-10-23 13:16:37 +00:00
Martin Doerr
12daf2b692 8255340: [s390] build failure after JDK-8255208
Reviewed-by: shade
2020-10-23 12:20:35 +00:00
Martin Doerr
9007bc20b0 8255129: [PPC64, s390] Check vector_size_supported and add VectorReinterpret node
Reviewed-by: lucy
2020-10-23 10:52:17 +00:00
Martin Doerr
df792573e8 8255274: [PPC64, s390] wrong StringLatin1.indexOf version matched
Reviewed-by: clanger, rrich
2020-10-23 10:49:29 +00:00
Kiran Sidhartha Ravikumar
55a0cad827 8254982: (tz) Upgrade time-zone data to tzdata2020c
Reviewed-by: erikj, naoto
2020-10-23 10:13:08 +00:00
Ningsheng Jian
ac1748e786 8254670: SVE test uses linux-specific api
Reviewed-by: adinn, vkempik
2020-10-23 10:06:40 +00:00
Jan Lahoda
0e9205315e 8254286: Wrong inference in switch expression with "null" arm
Reviewed-by: mcimadamore, vromero
2020-10-23 09:47:29 +00:00
Markus Grönlund
63ce304ea4 8249675: x86: frequency extraction from cpu brand string is incomplete
Reviewed-by: egahlin, dholmes
2020-10-23 09:04:03 +00:00
Vladimir Ivanov
e52156d730 8255067: Restore Copyright line in file modified by 8253191
Reviewed-by: kvn, shade
2020-10-23 08:33:14 +00:00
Thomas Schatzl
c520469639 8255131: G1CollectedHeap::is_in() returns wrong result
Reviewed-by: sjohanss, kbarrett, ayang
2020-10-23 08:22:05 +00:00
Claes Redestad
107fb9ccf8 8255049: Remove support for the hsdis decode_instructions entry point in hotspot
Reviewed-by: neliasso, kvn
2020-10-23 07:59:31 +00:00
Claes Redestad
c1524c59ad 8255208: CodeStrings passed to Disassembler::decode are ignored
Reviewed-by: kvn, iklam
2020-10-23 07:30:28 +00:00
Jie Fu
8e5dff08fa 8255213: Shenandoah build fails without JFR after JDK-8255036
Reviewed-by: shade
2020-10-23 07:16:03 +00:00
Roland Westrelin
fe74f3cd10 8255224: x86_32 tests fail with "bad AD file" after JDK-8223051
Reviewed-by: shade, kvn
2020-10-23 07:11:58 +00:00
Aleksey Shipilev
64dc4b1888 8255225: compiler/aot tests fail on Windows with NPE during artifact resolution
Reviewed-by: erikj, clanger
2020-10-23 06:34:17 +00:00
Jie Fu
a824781b8c 8255210: [Vector API] jdk/incubator/vector/Int256VectorTests.java crashes on AVX512 machines
Reviewed-by: psandoz, sviswanathan, jbhateja
2020-10-23 05:49:56 +00:00
Thomas Stuefe
2ca7a08091 8255268: 32-bit failures in runtime/Metaspace/elastic
Reviewed-by: shade
2020-10-23 05:27:57 +00:00
Sergey Bylokhov
d8d9197712 8242559: Clean the "libawt_xawt" library from code for headless mode
Reviewed-by: kizune
2020-10-23 01:51:44 +00:00
Naoto Sato
ff5f2265d2 8255086: Update the root locale display names
Reviewed-by: bchristi, joehw
2020-10-23 01:13:36 +00:00
Brent Christian
8afdcaee1c 8255031: Update java/util/prefs/AddNodeChangeListener.java to report more failure info
Reviewed-by: bpb
2020-10-22 21:45:43 +00:00
Jonathan Gibbons
0aa3c92577 8255262: Remove use of legacy custom @spec tag
Reviewed-by: lancea, mr, iris, alanb, darcy, mchung
2020-10-22 19:42:01 +00:00
Severin Gehwolf
a0b687bfb2 8254854: [cgroups v1] Metric limits not properly detected on some join controller combinations
Reviewed-by: bobv
2020-10-22 16:36:29 +00:00
Patric Hedlin
f279ddfa06 8248411: [aarch64] Insufficient error handling when CodeBuffer is exhausted
Reviewed-by: adinn
2020-10-22 15:56:56 +00:00
Robbin Ehn
4634dbef6d 8223312: Utilize handshakes instead of is_thread_fully_suspended
Reviewed-by: dholmes, rrich, dcubed, eosterlund
2020-10-22 15:16:50 +00:00
Thomas Schatzl
cc50c8d4f1 8255196: Remove unused G1FullGCCompactionPoint::merge()
Reviewed-by: shade
2020-10-22 09:15:30 +00:00
Stefan Karlsson
ae72b5283b 8255047: Add HotSpot UseDebuggerErgo flags
Reviewed-by: dcubed, dholmes
2020-10-22 08:24:51 +00:00
Jan Lahoda
211bb62a90 8255124: KeepAliveStreamCleaner may crash with java.lang.IllegalMonitorStateException: current thread is not owner
Reviewed-by: alanb, chegar, dfuchs
2020-10-22 07:29:37 +00:00
Prasanta Sadhukhan
299e1154af 8198395: Test javax/swing/plaf/metal/MetalLookAndFeel/Test8039750.java fails in mach5
Reviewed-by: prr
2020-10-22 06:55:50 +00:00
Prasanta Sadhukhan
a5b7bc50d4 7156347: javax/swing/JList/6462008/bug6462008.java fails
Reviewed-by: serb, pbansal
2020-10-22 06:45:03 +00:00
Fei Yang
b25d894015 8252204: AArch64: Implement SHA3 accelerator/intrinsic
Co-authored-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Co-authored-by: Dong Bo <dongbo4@huawei.com>
Reviewed-by: aph, kvn
2020-10-22 04:38:39 +00:00
Sergey Bylokhov
7d3d4daefd 8240709: Enable javax/swing/UI/UnninstallUIMemoryLeaks/UnninstallUIMemoryLeaks.java on all L&F
Reviewed-by: kizune
2020-10-22 03:43:45 +00:00
Sandhya Viswanathan
5d262290c4 8255174: Vector API unit tests for missed public api code coverage
Reviewed-by: psandoz
2020-10-22 00:09:41 +00:00
Alex Menkov
b9186bebc3 6606767: resexhausted00[34] fail assert(!thread->owns_locks(), "must release all locks when leaving VM")
Reviewed-by: sspitsyn, cjplummer
2020-10-21 23:40:48 +00:00
Valerie Peng
1191a633fe 8199697: FIPS 186-4 RSA Key Generation
Reviewed-by: xuelei
2020-10-21 22:42:07 +00:00
Paul Sandoz
60d3fa2ed8 8255022: Documentation missing for Vector API zero methods
Reviewed-by: vlivanov, darcy
2020-10-21 22:27:42 +00:00
Erik Joelsson
9ade94b727 8206311: Add docs-javase, docs-reference to CI build
Reviewed-by: ihse
2020-10-21 22:04:37 +00:00
Daniel D. Daugherty
34450311d9 8255200: ProblemList com/sun/jdi/EATests.java for ZGC
Reviewed-by: kvn, iignatyev, dholmes
2020-10-21 21:30:28 +00:00
Eric Caspole
85a8949caa 8254913: Increase InlineSmallCode default from 2000 to 2500 for x64
Reviewed-by: redestad, shade, azeemj
2020-10-21 20:34:58 +00:00
Coleen Phillimore
56ea490f1e 8233343: Deprecate -XX:+CriticalJNINatives flag which implements JavaCritical native functions
Reviewed-by: rehn, mdoerr, zgu
2020-10-21 20:33:24 +00:00
Zhengyu Gu
615b759edd 8255070: Shenandoah: Use single thread for concurrent CLD liveness test
Reviewed-by: rkennke
2020-10-21 19:44:24 +00:00
Tom Rodriguez
6020991530 8255068: [JVMCI] errors during compiler creation can be hidden
Reviewed-by: kvn
2020-10-21 19:37:52 +00:00
Aleksey Shipilev
8d9e6d01fb 8255041: Zero: remove old JSR 292 support leftovers
Reviewed-by: rkennke
2020-10-21 16:33:53 +00:00
Raffaello Giulietti
0efdde188b 8238669: Long.divideUnsigned is extremely slow for certain values (Needs to be Intrinsic)
Reviewed-by: bpb
2020-10-21 16:32:59 +00:00
Sandhya Viswanathan
365f19c8e1 8254790: SIGSEGV in string_indexof_char and stringL_indexof_char intrinsics
Reviewed-by: kvn, thartmann
2020-10-21 16:24:30 +00:00
Fernando Guallini
f813a28b95 8254692: (se) Clarify the behaviour of the non-abstract SelectorProvider::inheritedChannel
Reviewed-by: chegar, bpb, alanb
2020-10-21 14:54:19 +00:00
Zhengyu Gu
c9269bf59e 8255036: Shenandoah: Reset GC state for root verifier
Reviewed-by: rkennke
2020-10-21 14:42:37 +00:00
Weijun Wang
839f01ddf5 8242068: Signed JAR support for RSASSA-PSS and EdDSA
Reviewed-by: valeriep
2020-10-21 14:18:43 +00:00
Matthias Baesken
e559bd2c8b 8254889: name_and_sig_as_C_string usages in frame coding without ResourceMark
Reviewed-by: dholmes
2020-10-21 12:24:35 +00:00
Patrick Concannon
da97ab5c8a 8253474: Javadoc clean up in HttpsExchange, HttpsParameters, and HttpsServer
Reviewed-by: dfuchs, michaelm
2020-10-21 10:04:21 +00:00
Vladimir Ivanov
7e2640432b 8255000: C2: Unify IGVN processing when loop opts are over
Reviewed-by: neliasso, iveresov, kvn
2020-10-21 08:09:00 +00:00
Vladimir Ivanov
27230fae24 8255026: C2: Miscellaneous cleanups in Compile and PhaseIdealLoop code
Reviewed-by: thartmann, neliasso, redestad
2020-10-21 07:34:54 +00:00
David Leopoldseder
c107178bcc 8253964: [Graal] UnschedulableGraphTest#test01fails with expected:<4> but was:<3>
Reviewed-by: kvn, dlong
2020-10-21 07:34:08 +00:00
Aleksey Shipilev
bd45191f00 8255065: Zero: accessor_entry misses the IRIW case
Reviewed-by: mdoerr
2020-10-21 06:14:25 +00:00
Aleksey Shipilev
2a0633507c 8254785: compiler/graalunit/HotspotTest.java failed with "missing Graal intrinsics for: java/lang/StringLatin1.indexOfChar([BIII)I"
Reviewed-by: psandoz, iignatyev, kvn
2020-10-21 06:09:54 +00:00
Prasanta Sadhukhan
1b7ddebe46 8254976: Re-enable swing jtreg tests which were broken due to samevm mode
Reviewed-by: serb
2020-10-21 05:52:20 +00:00
Sergey Bylokhov
2e510e04bd 8255043: Incorrectly styled copyright text
Reviewed-by: dholmes, trebari, jdv
2020-10-21 04:53:16 +00:00
Igor Ignatyev
6bd05b12a0 8255074: sun.nio.fs.WindowsPath::getPathForWin32Calls synchronizes on String object
Reviewed-by: bpb
2020-10-21 02:34:47 +00:00
Sergey Bylokhov
9e9f5e6974 8017179: [macosx] list1 and list2 vistble item isn't desired
Reviewed-by: kizune
2020-10-21 02:28:01 +00:00
Sergey Bylokhov
2ee2b4ae19 8231454: File lock in Windows on a loaded jar due to a leak in Introspector::getBeanInfo
Reviewed-by: kizune
2020-10-21 02:05:16 +00:00
Ningsheng Jian
42a6eadb85 8254884: Make sure jvm does not crash with Arm SVE and Vector API
Reviewed-by: vlivanov, adinn
2020-10-21 01:15:13 +00:00
Sergey Bylokhov
e5870cf002 8252133: The java/awt/GraphicsDevice/DisplayModes/CycleDMImage.java fails if metal pipeline is active
Reviewed-by: prr
2020-10-21 00:15:46 +00:00
Andy Herrick
afc967fcd0 8254783: jpackage fails on Windows when application name differs from installer name
Reviewed-by: asemenyuk, kizune, almatvee
2020-10-20 22:54:19 +00:00
Phil Race
3ccf4877a8 8253019: Enhanced JPEG decoding
Reviewed-by: rhalade, mschoene, serb, psadhukhan
2020-10-20 14:58:40 -07:00
Tobias Hartmann
cfb02d4854 8250861: Crash in MinINode::Ideal(PhaseGVN*, bool)
Added missing NULL checks.

Reviewed-by: kvn, chagedorn
2020-10-20 14:58:40 -07:00
Roger Riggs
0d35235723 8249927: Specify limits of jdk.serialProxyInterfaceLimit
corrections to limits defined by 8236862 implemented by 8248183

Reviewed-by: smarks, rhalade, skoivu
2020-10-20 14:58:39 -07:00
Jamil Nimeh
d6cef99050 8245417: Improve certificate chain handling
Co-authored-by: Hai-may Chao <hai-may.chao@oracle.com>
Reviewed-by: mullan, jnimeh
2020-10-20 14:58:39 -07:00
Ioi Lam
24f7f84594 8245412: Better class definitions
Reviewed-by: coleenp, rhalade, jwilhelm, skoivu
2020-10-20 14:58:39 -07:00
Phil Race
00a5af44af 8248574: Improve jpeg processing
Reviewed-by: serb, jdv, mschoene, rhalade
2020-10-20 14:58:39 -07:00
Roger Riggs
036da9950b 8236862: Enhance support of Proxy class
Reviewed-by: smarks, chegar, skoivu, rhalade
2020-10-20 14:58:39 -07:00
Harold Seigel
29c68087c9 8243302: Advanced class supports
Co-authored-by: Harold Seigel <harold.seigel@oracle.com>
Reviewed-by: coleenp, lfoltan, mschoene, rhalade
2020-10-20 14:58:39 -07:00
Aleksei Efimov
7eda1196c6 8237990: Enhanced LDAP contexts
Reviewed-by: dfuchs, robm, weijun, xyin, rhalade, ahgross
2020-10-20 14:58:39 -07:00
Naoto Sato
d149dcdbd5 8245407: Enhance zoning of times
Reviewed-by: rriggs, rhalade, skoivu
2020-10-20 14:58:39 -07:00
Brian Burkhalter
fc5fca9ade 8242695: Enhanced buffer support
Reviewed-by: alanb, rhalade
2020-10-20 14:58:38 -07:00
Brian Burkhalter
a6723c8552 8244136: Improved Buffer supports
Reviewed-by: alanb, ahgross, rhalade, psandoz
2020-10-20 14:58:38 -07:00
Sean Mullan
27f1ebc0af 8244479: Further constrain certificates
Reviewed-by: ascarpino, ahgross, rhalade
2020-10-20 14:58:38 -07:00
Coleen Phillimore
5f1918db26 8244955: Additional Fix for JDK-8240124
Reviewed-by: rehn, pliden, smarks
2020-10-20 14:58:38 -07:00
David Holmes
798bfb3b9c 8233624: Enhance JNI linkage
Co-authored-by: David Holmes <david.holmes@oracle.com>, Alex Buckley <alex.buckley@oracle.com>, John Rose <john.r.rose@oracle.com>
Reviewed-by: abuckley, jrose, rhalade, mschoene
2020-10-20 14:58:38 -07:00
Tobias Hartmann
7c05f32bc9 8244924: Additional fix for JDK-8241119
Reviewed-by: kvn, vlivanov, rhalade, ahgross
2020-10-20 14:58:38 -07:00
Sean Mullan
62a03bd387 8237995: Enhance certificate processing
Reviewed-by: weijun, rhalade, ahgross, erikj
2020-10-20 14:58:38 -07:00
Brian Burkhalter
9291e60892 8242680: Improved URI Support
Reviewed-by: alanb, rhalade
2020-10-20 14:58:37 -07:00
Brian Burkhalter
ff3e558679 8242685: Better Path Validation
Reviewed-by: alanb, rhalade
2020-10-20 14:58:37 -07:00
Coleen Phillimore
a5cb23e29f 8240124: Better VM Interning
Reviewed-by: rehn, pliden, smarks, rhalade, ahgross, jwilhelm
2020-10-20 14:58:37 -07:00
Erik Gahlin
fa25d083be 8236196: Improve string pooling
Reviewed-by: mgronlun, rehn, ahgross, jwilhelm, rhalade
2020-10-20 14:58:37 -07:00
Tobias Hartmann
afd852ccb8 8241114: Better range handling
Reviewed-by: kvn, vlivanov, rhalade, ahgross
2020-10-20 14:58:37 -07:00
Andy Herrick
acacae5e0c 8254843: Exception launching app on windows in some cases
Reviewed-by: asemenyuk, kcr, almatvee, kizune
2020-10-20 21:28:09 +00:00
Zhengyu Gu
856037c417 8255006: Add NULL-check to StringDedupTable lookup
Reviewed-by: rkennke, kbarrett
2020-10-20 18:06:43 +00:00
Aleksey Shipilev
ee6eb9860e 8254995: [x86] ControlWord::print(), rc/pc variables might not be initialized
Reviewed-by: kvn
2020-10-20 17:55:36 +00:00
Michael Bien
e577c8c852 8253641: Missing newline in the printout of certain JFR events
Co-authored-by: Michael Bien <mbien42@gmail.com>
Reviewed-by: mgronlun
2020-10-20 17:47:34 +00:00
Sergey Bylokhov
89e5444554 8254788: Dead code in the sun.java2d.xr.XRPMBlitLoops$XrSwToPMBlit
Reviewed-by: prr
2020-10-20 17:31:54 +00:00
Per Liden
3267b09d5a 8254883: ZGC: Make the ZArrayIterator reusable for ZRelocationSetIterators
Reviewed-by: eosterlund
2020-10-20 16:07:33 +00:00
Guoxiong Li
cb6167b226 8254557: Compiler crashes with java.lang.AssertionError: isSubtype UNKNOWN
Reviewed-by: mcimadamore
2020-10-20 15:45:17 +00:00
Richard Reingruber
40f847e2fb 8227745: Enable Escape Analysis for Better Performance in the Presence of JVMTI Agents
8233915: JVMTI FollowReferences: Java Heap Leak not found because of C2 Scalar Replacement

Reviewed-by: mdoerr, goetz, sspitsyn, kvn
2020-10-20 15:31:55 +00:00
Patricio Chilano Mateo
f167a71f1d 8254264: Remove redundant cross_modify_fence()
Reviewed-by: rehn, dholmes, dcubed
2020-10-20 15:07:36 +00:00
Joe Darcy
44f9271dc2 8254974: Fix stutter typo in TypeElement
Reviewed-by: shade, redestad
2020-10-20 14:44:38 +00:00
Claes Redestad
76fdd7fccf 8255038: Adjust adapter_code_size to account for -Xlog:methodhandles in debug builds
Reviewed-by: shade, neliasso
2020-10-20 14:23:50 +00:00
Per Liden
cdc8c401b5 8254878: Move last piece of ZArray to GrowableArray
Reviewed-by: stefank, eosterlund
2020-10-20 13:07:35 +00:00
Roland Westrelin
294e0705fa 8254998: C2: assert(!n->as_Loop()->is_transformed_long_loop()) failure with -XX:StressLongCountedLoop=1
Reviewed-by: vlivanov, kvn, thartmann
2020-10-20 11:53:41 +00:00
Vipin Menon
3ee0380e99 8234393: [macos] printing ignores printer tray
Reviewed-by: psadhukhan, prr
2020-10-20 11:14:28 +00:00
Claes Redestad
3f9c8a3920 8254966: Remove unused code from Matcher
Reviewed-by: neliasso, kvn
2020-10-20 09:27:35 +00:00
Pankaj Bansal
21e67e5460 8225790: Two NestedDialogs tests fail on Ubuntu
Reviewed-by: serb
2020-10-20 09:05:51 +00:00
Doug Simon
017d151e11 8254842: [JVMCI] copy thread name when attaching libgraal thread to HotSpot
Reviewed-by: kvn, never
2020-10-20 08:38:14 +00:00
Aleksey Shipilev
5d1397fa9a 8254282: Add Linux x86_32 builds to submit workflow
Reviewed-by: erikj, rwestberg
2020-10-20 06:55:36 +00:00
Thomas Stuefe
7ba6a6bf00 8251158: Implementation of JEP 387: Elastic Metaspace
Reviewed-by: lkorinth, coleenp, iklam, rrich
2020-10-20 06:48:09 +00:00
Nhat Nguyen
5fedfa707e 8251271: C2: Compile::_for_igvn list is corrupted after RenumberLiveNodes
Reviewed-by: vlivanov, thartmann
2020-10-20 06:18:49 +00:00
Roberto Castañeda Lozano
98ec4a6792 8254805: compiler/debug/TestStressCM.java is still failing
Use the code motion trace produced by TraceOptoPipelining (excluding traces of
stubs) to assert that two compilations with the same seed cause StressLCM and
StressGCM to take the same randomized decisions. Previously, the entire output
produced by PrintOptoStatistics was used instead, which has shown to be too
fragile. Also, disable inlining in both TestStressCM.java and the similar
TestStressIGVN.java to prevent flaky behavior, and run both tests for ten
different seeds to improve coverage.

Reviewed-by: kvn, thartmann
2020-10-20 06:08:25 +00:00
Aleksey Shipilev
355f44dd11 8254994: [x86] C1 StubAssembler::call_RT, "call_offset might not be initialized"
Reviewed-by: chagedorn, kvn
2020-10-20 05:31:39 +00:00
Aleksey Shipilev
0a75b37f7a 8254776: Remove unimplemented LowMemoryDetector::check_memory_usage
Reviewed-by: sspitsyn, cjplummer
2020-10-20 05:28:22 +00:00
Aleksey Shipilev
b65dcfa3a0 8197981: Missing return statement in __sync_val_compare_and_swap_8
Reviewed-by: andrew, dholmes
2020-10-20 05:26:59 +00:00
Aleksey Shipilev
5b51085c98 8254997: Remove unimplemented OSContainer::read_memory_limit_in_bytes
Reviewed-by: sgehwolf
2020-10-20 05:25:57 +00:00
Daniel D. Daugherty
c87cdf70e4 8254029: ObjectMonitor cleanup/minor bug-fix changes extracted from JDK-8253064
Reviewed-by: dholmes, eosterlund
2020-10-20 01:08:19 +00:00
Vladimir Kozlov
7a580ca8c0 8255027: Problem list for Graal test gc/stress/TestStressG1Humongous.java
Reviewed-by: dlong
2020-10-20 00:12:37 +00:00
Sergey Bylokhov
6e8835c6bc 7110890: reg test TranslucentShapedFrameTest fails to create non-opaque frame
Reviewed-by: prr
2020-10-19 23:54:10 +00:00
Stuart Marks
bf19581ab0 8255016: ConstantDescs.FALSE claims it represents TRUE
Reviewed-by: bpb, jvernee, mchung, rriggs
2020-10-19 23:53:06 +00:00
Jonathan Gibbons
0f4fb367d5 8255032: Conflict between recent pushes breaks the build
Reviewed-by: redestad, vromero
2020-10-19 22:05:47 +00:00
Jonathan Gibbons
cb5cdd7705 8254721: Improve support for conditionally generated files
Reviewed-by: hannesw
2020-10-19 20:52:01 +00:00
Paul Sandoz
0001435044 8255020: Minor updates to docs jdk.incubator.vector
Reviewed-by: erikj, darcy
2020-10-19 20:37:36 +00:00
Doug Simon
14e1e1741f 8255004: [JVMCI] expose JVM_ACC_FIELD_INITIALIZED_FINAL_UPDATE
Reviewed-by: never, kvn
2020-10-19 19:39:19 +00:00
Doug Simon
f42c03226f 8254793: [JVMCI] improve speculation encoding
Reviewed-by: kvn, dlong, never
2020-10-19 19:06:23 +00:00
Calvin Cheung
74ac77e2b1 8247666: Support Lambda proxy classes in static CDS archive
Reviewed-by: iklam, mchung
2020-10-19 18:27:50 +00:00
Claes Redestad
e2e11d3449 8254955: x86: MethodHandlesAdapterBlob is too big
Reviewed-by: neliasso, kvn
2020-10-19 17:50:40 +00:00
Erik Joelsson
0b5101658d 8253660: Need better error report when artifact resolution fails in AotCompiler.java
Reviewed-by: ihse
2020-10-19 17:40:54 +00:00
Erik Joelsson
52cb3292ae 8254862: lldb in devkit doesn't work
Reviewed-by: lmesnik, mikael, ihse
2020-10-19 17:38:22 +00:00
Jonathan Gibbons
60f63ec811 8254796: Cleanup pervasive unnecessary parameter
Reviewed-by: ksrini, hannesw
2020-10-19 17:08:06 +00:00
Michael McMahon
953e472ded 8254967: com.sun.net.HttpsServer spins on TLS session close
Reviewed-by: dfuchs
2020-10-19 16:57:40 +00:00
Vicente Romero
1da28de82f 8255009: delta apply fixes for JDK-8246774 and JDK-8253455, pushed too soon
Reviewed-by: jlahoda
2020-10-19 15:55:54 +00:00
Ekaterina Vergizova
a0382cd17c 8253235: JFR.dump does not respect maxage parameter
Reviewed-by: egahlin
2020-10-19 14:19:58 +00:00
Jie Fu
cb7701b725 8253970: Build error: address argument to atomic builtin must be a pointer to integer or pointer ('volatile narrowOop *' invalid)
Reviewed-by: kbarrett, dholmes
2020-10-19 13:18:50 +00:00
Anton Kozlov
4ffed326fa 8254940: AArch64: Cleanup non-product thread members
Reviewed-by: aph
2020-10-19 11:43:02 +00:00
Thomas Schatzl
cd66e0f25f 8253877: gc/g1/TestGCLogMessages.java fails - missing "Evacuation failure" message
Reviewed-by: sjohanss
2020-10-19 11:40:58 +00:00
Roland Westrelin
e76de18956 8223051: support loops with long (64b) trip counts
Reviewed-by: vlivanov, thartmann, jrose
2020-10-19 11:30:13 +00:00
Claes Redestad
e9be2db7ac 8253453: SourceFileInfoTable should be allocated lazily
Reviewed-by: neliasso, chagedorn
2020-10-19 10:49:33 +00:00
Markus Grönlund
e10b53853a 8243962: Various JVM TI tests time out using JFR on Windows
Reviewed-by: sspitsyn, cjplummer
2020-10-19 09:18:40 +00:00
Per Liden
a1a3e9def7 8254882: ZGC: Use static_assert instead of guarantee
Reviewed-by: kbarrett, tschatzl
2020-10-19 07:35:36 +00:00
Stefan Karlsson
8edc2f05b5 8254912: ZGC: Change ZCollectionInterval type to double
Reviewed-by: pliden, ayang
2020-10-19 07:23:43 +00:00
Stefan Karlsson
672f56695e 8254874: ZGC: JNIHandleBlock verification failure in stack watermark processing
Reviewed-by: tschatzl, cjplummer, sspitsyn, pliden
2020-10-19 07:22:29 +00:00
Per Liden
98a395a39e 8254880: ZGC: Let ZList iterators be alias templates
Reviewed-by: ayang, kbarrett, tschatzl
2020-10-19 07:11:40 +00:00
Robbin Ehn
011dd0d8fa 8254824: SignalHandlerMark have no purpose
Reviewed-by: stuefe, shade, dholmes, coleenp
2020-10-19 06:28:47 +00:00
Aleksey Shipilev
736e077335 8254178: Remove .hgignore
Reviewed-by: ehelin
2020-10-19 06:16:50 +00:00
Alexander Zuev
51a865d66a 8254085: javax/swing/text/Caret/TestCaretPositionJTextPane.java failed with "RuntimeException: Wrong caret position"
Reviewed-by: serb
2020-10-19 04:26:42 +00:00
Sergey Bylokhov
dd032b7fa6 8254798: Deprecate for removal an empty finalize() methods in java.desktop module
Reviewed-by: kcr, pbansal
2020-10-19 03:11:51 +00:00
Vicente Romero
272bb5d580 8253455: Record Classes javax.lang.model changes
Reviewed-by: darcy
2020-10-19 02:03:10 +00:00
Vicente Romero
c17d58516f 8246774: implement Record Classes as a standard feature in Java
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: coleenp, jlahoda, sspitsyn, chegar
2020-10-18 18:54:33 +00:00
Prasanta Sadhukhan
0b3e6c51ba 8194126: Regression automated Test '/open/test/jdk/javax/swing/JColorChooser/Test7194184.java' fails
Reviewed-by: serb, trebari
2020-10-17 07:18:48 +00:00
Prasanta Sadhukhan
ce1aac1e13 8028707: javax/swing/JComboBox/6236162/bug6236162.java fails on azure
Reviewed-by: serb, pbansal
2020-10-17 07:12:59 +00:00
Jonathan Gibbons
83ea863122 8253559: The INDEX page should link to Serialized Form and Constant Values pages
Reviewed-by: hannesw
2020-10-16 22:15:52 +00:00
Sergey Bylokhov
e66c6bb9d5 8254349: The TestNoScreenMenuBar test should be updated
Reviewed-by: pbansal
2020-10-16 21:56:54 +00:00
Jonathan Gibbons
402d01aa11 8254795: Remove obsolete template files
Reviewed-by: ksrini
2020-10-16 19:35:10 +00:00
Thomas Schatzl
07ec35e2e5 8254623: gc/g1/TestHumongousConcurrentStartUndo.java still fails sometimes
Reviewed-by: kbarrett, sjohanss
2020-10-16 15:21:37 +00:00
Claes Redestad
0570cc10b5 8254855: Clean up and remove unused code in vmIntrinsics
Reviewed-by: kbarrett, iklam, kvn
2020-10-16 11:38:02 +00:00
Thomas Schatzl
1742c44ac9 8254695: G1: Next mark bitmap clear not cancelled after marking abort
Reviewed-by: iwalulya, sjohanss
2020-10-16 09:19:22 +00:00
Chris Hegarty
34583ebdfc 8254161: Prevent instantiation of EnumSet subclasses through deserialization
Reviewed-by: dfuchs, alanb, rriggs, smarks
2020-10-16 08:09:57 +00:00
Jie Fu
3d23bd8e5b 8254814: [Vector API] Fix an AVX512 crash after JDK-8223347
Reviewed-by: vlivanov, thartmann, psandoz
2020-10-16 06:57:36 +00:00
Tobias Hartmann
7c0d417027 8251535: Partial peeling at unsigned test adds incorrect loop exit check
Reviewed-by: chagedorn, neliasso, kvn
2020-10-16 06:25:33 +00:00
Ioi Lam
5145bed028 8254125: Assertion in cppVtables.cpp during builds on 32bit Windows
Reviewed-by: shade, ccheung
2020-10-16 05:14:46 +00:00
Xin Liu
bdda2058c2 8254369: Node::disconnect_inputs may skip precedences
disconnect_inputs() needs to iterate precedences edges in reverse order because rm_prec(i) may backfill _in[i] with a value afterward.
also remove the predicate if (n != NULL) in set_prec because it's always true.

Reviewed-by: kvn, redestad
2020-10-16 01:59:07 +00:00
Calvin Cheung
96bb6e76bf 8251325: Miss 'L' for long value in if statement
Reviewed-by: iklam
2020-10-15 20:05:28 +00:00
Yumin Qi
546620bb9e 8254192: ExtraSharedClassListFile contains extra white space at end of line
Reviewed-by: iklam, ccheung, mchung
2020-10-15 16:47:06 +00:00
Jie Fu
f3ce45f2a1 8254799: runtime/ErrorHandling/TestHeapDumpOnOutOfMemoryError.java fails with release VMs
Reviewed-by: dholmes, dcubed, stuefe
2020-10-15 14:46:04 +00:00
Martin Doerr
cda22e3624 8254811: JDK-8254158 broke ppc64, s390 builds
Reviewed-by: stuefe, goetz
2020-10-15 14:16:20 +00:00
Markus Grönlund
8ef88e5905 8249878: jfr_emergency_dump has secondary crashes
Reviewed-by: egahlin
2020-10-15 14:07:52 +00:00
Thomas Schatzl
3c2f5e08f7 8254674: G1: Improve root location reference to dead obj verification message
Reviewed-by: sjohanss, lkorinth
2020-10-15 10:39:11 +00:00
Per Liden
abe5137737 8254719: ZGC: Clean up includes
Reviewed-by: stefank
2020-10-15 09:23:00 +00:00
Volker Simonis
60159cff40 8253952: Refine ZipOutputStream.putNextEntry() to recalculate ZipEntry's compressed size
Reviewed-by: lancea, alanb
2020-10-15 09:18:26 +00:00
Amit Pawar
9359ff03ae 8252221: Use multiple workers for Parallel GC pre-touching
Reviewed-by: kbarrett, tschatzl
2020-10-15 07:22:38 +00:00
Roland Westrelin
f44fc6defc 8254734: "dead loop detected" assert failure with patch from 8223051
Reviewed-by: chagedorn, kvn
2020-10-15 06:53:03 +00:00
Aleksey Shipilev
7f73474f74 8254773: Remove unimplemented ciReplay::is_loaded(Klass* klass)
Reviewed-by: thartmann, kvn
2020-10-15 06:32:16 +00:00
Aleksey Shipilev
167c192456 8254771: Remove unimplemented ciSignature::get_all_klasses
Reviewed-by: thartmann, kvn
2020-10-15 06:31:19 +00:00
Aleksey Shipilev
81a8ff1d92 8254769: Remove unimplemented BCEscapeAnalyzer::{add_dependence, propagate_dependencies}
Reviewed-by: thartmann, kvn
2020-10-15 06:30:19 +00:00
Ioi Lam
7e5eb493e1 8253402: Convert vmSymbols::SID to enum class
Reviewed-by: kvn, coleenp, kbarrett, iveresov
2020-10-15 05:52:54 +00:00
Yasumasa Suenaga
038f58d4f0 8226236: [TESTBUG] win32: gc/metaspace/TestCapacityUntilGCWrapAround.java fails
Reviewed-by: stuefe
2020-10-15 00:21:42 +00:00
Vladimir Kozlov
5194f11bc7 8254792: Disable intrinsic StringLatin1.indexOf until 8254790 is fixed
Reviewed-by: dcubed
2020-10-15 00:05:40 +00:00
Patricio Chilano Mateo
55d760d416 8254263: Remove special_runtime_exit_condition() check from ~ThreadInVMForHandshake()
Reviewed-by: rrich, dholmes, dcubed, rehn
2020-10-14 22:15:57 +00:00
Aleksey Shipilev
03fa733e8b 8254777: Remove unimplemented Management::get_loaded_classes
Reviewed-by: sspitsyn
2020-10-14 20:58:18 +00:00
Aleksey Shipilev
8fb294a2bf 8254781: Remove unimplemented ClassFieldMap::compute_field_count
Reviewed-by: phh, sspitsyn
2020-10-14 20:57:41 +00:00
Aleksey Shipilev
da2f5ab5b2 8254780: EnterInterpOnlyModeClosure::completed() always returns true
Reviewed-by: sspitsyn, rehn
2020-10-14 20:56:58 +00:00
Paul Sandoz
0c99b19258 8223347: Integration of Vector API (Incubator)
Co-authored-by: Vivek Deshpande <vdeshpande@openjdk.org>
Co-authored-by: Qi Feng <qfeng@openjdk.org>
Co-authored-by: Ian Graves <igraves@openjdk.org>
Co-authored-by: Jean-Philippe Halimi <jphalimi@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Co-authored-by: Ningsheng Jian <njian@openjdk.org>
Co-authored-by: Razvan Lupusoru <rlupusoru@openjdk.org>
Co-authored-by: Smita Kamath <svkamath@openjdk.org>
Co-authored-by: Rahul Kandu <rkandu@openjdk.org>
Co-authored-by: Kishor Kharbas <kkharbas@openjdk.org>
Co-authored-by: Eric Liu <Eric.Liu2@arm.com>
Co-authored-by: Aaloan Miftah <someusername3@gmail.com>
Co-authored-by: John R Rose <jrose@openjdk.org>
Co-authored-by: Shravya Rukmannagari <srukmannagar@openjdk.org>
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Co-authored-by: Lauren Walkowski <lauren.walkowski@arm.com>
Co-authored-by: Yang Zang <Yang.Zhang@arm.com>
Co-authored-by: Joshua Zhu <jzhu@openjdk.org>
Co-authored-by: Wang Zhuo <wzhuo@openjdk.org>
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: erikj, chegar, kvn, darcy, forax, briangoetz, aph, epavlova, coleenp
2020-10-14 20:02:46 +00:00
Daniel D. Daugherty
386e7e8b73 8254789: ProblemList compiler/graalunit/HotspotTest.java
Reviewed-by: rriggs, iignatyev, kvn
2020-10-14 19:07:53 +00:00
Alex Menkov
cd33abb136 8249623: test @ignore-d due to 7013634 should be returned back to execution
Reviewed-by: cjplummer, sspitsyn
2020-10-14 17:49:42 +00:00
Alex Menkov
b7daf8427b 8254345: com/sun/jdi/JdwpAttachTest.java reports error incorrectly
Reviewed-by: cjplummer, sspitsyn
2020-10-14 17:46:36 +00:00
Yumin Qi
fde02e231b 8254012: NMT: MetaspaceSnapshot::snapshot uses wrong enum
Reviewed-by: stuefe, rrich
2020-10-14 17:13:27 +00:00
Claes Redestad
96a1f08e80 8254775: Microbenchmark StringIndexOfChar doesn't compile
Reviewed-by: rriggs
2020-10-14 15:25:43 +00:00
Claes Redestad
a6a381353a 8254761: Wrong intrinsic annotation used for StringLatin1.indexOfChar
Reviewed-by: alanb
2020-10-14 14:11:16 +00:00
Claes Redestad
738effade4 8254744: Clean-up CodeBlob::align_code_offset
Reviewed-by: mdoerr, eosterlund
2020-10-14 13:21:07 +00:00
Jason Tatton (AWS)
f71e8a6198 8173585: Intrinsify StringLatin1.indexOf(char)
Reviewed-by: neliasso
2020-10-14 12:58:21 +00:00
Harold Seigel
95e68c6346 8254586: Replace fthrow() calls with simpler method calls in classFileParser.cpp
Reviewed-by: lfoltan, dholmes, coleenp
2020-10-14 12:23:09 +00:00
Thomas Stuefe
ba140b0f11 8254748: Bad Copyright header format after JDK-8212218
Reviewed-by: shade, dholmes
2020-10-14 11:21:38 +00:00
Stefan Karlsson
db9dcdf1ae 8254668: JVMTI process frames on thread without started processing
Reviewed-by: eosterlund, rrich
2020-10-14 10:29:15 +00:00
Thomas Stuefe
dc262dfcbf 8212218: [TESTBUG] runtime/ErrorHandling/TestHeapDumpOnOutOfMemoryErrorInMetaspace.java timed out
Reviewed-by: iklam, lmesnik
2020-10-14 09:37:54 +00:00
Martin Doerr
9eeeb8a20f 8254696: safepointMechanism_aix needs adaptation for JDK-8253180
Reviewed-by: dholmes, clanger
2020-10-14 08:17:13 +00:00
Roberto Castañeda Lozano
b509e31e5f 8254602: compiler/debug/TestStressCM.java failed with "RuntimeException: got the same optimization stats for different seeds: expected 45"
Remove test assertion checking that different random seeds lead to different
code motion decisions. This was the case for the specific pair of random seeds,
IR fed to code motion, and target platforms tested originally; but does not need
to hold in general. Remove similar test assertion in IGVN randomization test
case. Re-enable the test case.

Reviewed-by: shade, kvn
2020-10-14 08:07:59 +00:00
Roberto Castañeda Lozano
9fe9b24b88 8254575: C2: Clean up unused TRACK_PHI_INPUTS assertion code
Remove assertion code that was disabled in all build configurations.

Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, kvn
2020-10-14 08:06:59 +00:00
Tobias Hartmann
31d9b7fe45 8254252: Generic arraycopy stub overwrites callee-save rdi register on 64-bit Windows
Reviewed-by: kvn, chagedorn
2020-10-14 07:26:13 +00:00
Ioi Lam
a098037375 8254365: ciMethod.hpp should not include methodHandles.hpp
Reviewed-by: dholmes, coleenp
2020-10-14 04:59:52 +00:00
Jie Fu
d50e0de8fb 8254722: bsd_zero builds broken after JDK-8253717
Reviewed-by: dholmes
2020-10-14 03:09:01 +00:00
Coleen Phillimore
ba5dc67a74 8254158: Consolidate per-platform stack overflow handling code
Reviewed-by: fparain, hseigel
2020-10-13 20:42:34 +00:00
Ludovic Henry
715e24afb2 8254311: Incorrect statements in createWindowsDevkit2017.sh
Reviewed-by: erikj, thartmann
2020-10-13 17:28:41 +00:00
Kiran Sidhartha Ravikumar
ba24f9633e 8251861: Remove unused jdk.internal.ref.SoftCleanable and WeakCleanable
Reviewed-by: mchung, rriggs
2020-10-13 17:08:47 +00:00
Daniel Fuchs
6ed4c89dc8 8254704: Add missing @since tag to BodyPublishers::concat
Reviewed-by: chegar
2020-10-13 16:53:40 +00:00
Jonathan Gibbons
3fb2e822be 8254627: Cleanup {Abstract,Single,Split}IndexWriter classes
Reviewed-by: hannesw
2020-10-13 16:22:52 +00:00
Per Liden
02d9c29185 8254672: ZGC: ZParallelOopsDo/ZSerialWeakOopsDo should use atomic load/store
Reviewed-by: stefank
2020-10-13 15:36:23 +00:00
Daniel Fuchs
65393a093c 8229867: Re-examine synchronization usages in http and https protocol handlers
Reviewed-by: chegar, alanb, michaelm
2020-10-13 14:22:11 +00:00
Per Liden
6fe209b564 8254671: ZGC: Remove unused roots iterator types
Reviewed-by: stefank
2020-10-13 13:40:50 +00:00
Kiran Sidhartha Ravikumar
9c9349098a 8254177: (tz) Upgrade time-zone data to tzdata2020b
Reviewed-by: erikj, naoto, coffeys
2020-10-13 11:38:03 +00:00
Per Liden
5d6a625543 8254576: ZGC: Clean up timers in roots iterators
Reviewed-by: eosterlund, stefank
2020-10-13 09:49:14 +00:00
Aleksei Voitylov
508c8a9585 8247591: Document Alpine Linux build steps in OpenJDK build guide
Co-authored-by: Aleksei Voitylov <avoitylov@openjdk.org>
Reviewed-by: erikj
2020-10-13 09:42:23 +00:00
Aleksei Voitylov
63009f90ec 8247589: Implementation of Alpine Linux/x64 Port
Co-authored-by: Mikael Vidstedt <mikael@openjdk.org>
Co-authored-by: Alexander Scherbatiy <alexsch@openjdk.org>
Co-authored-by: Axel Siebenborn <asiebenborn@openjdk.org>
Co-authored-by: Aleksei Voitylov <avoitylov@openjdk.org>
Reviewed-by: alanb, erikj, dholmes
2020-10-13 09:35:58 +00:00
Stefan Karlsson
9d230ea87d 8254562: ZGC: Remove ZMarkRootsTask
Reviewed-by: pliden
2020-10-13 09:05:52 +00:00
Aleksey Shipilev
90de2894e9 8254611: x86_32: Call to IRT::at_unwind clobbers rthread after JDK-8253180
Reviewed-by: eosterlund
2020-10-13 05:47:03 +00:00
Ioi Lam
c9ca1bb025 8254364: Remove leading _ from struct/union declarations in jvmti.h
Reviewed-by: dholmes, sspitsyn
2020-10-13 05:22:49 +00:00
Yumin Qi
e49232a0d2 8254599: CDS dump should not warn about hidden classes
Reviewed-by: redestad, lfoltan, iklam
2020-10-13 04:05:21 +00:00
Eric Liu
b464213942 8252407: Build failure with gcc-8+ and asan
Reviewed-by: ihse, kbarrett
2020-10-13 03:38:41 +00:00
Vladimir Kozlov
2a4328ba7d 8254610: Problem list test compiler/debug/TestStressCM.java
Reviewed-by: iignatyev, dcubed
2020-10-12 20:08:43 +00:00
Xin Liu
bff586f07a 8254269: simplify Node::disconnect_inputs
Node::disconnect_inputs cuts off all input edges without exception.

Reviewed-by: redestad, kvn
2020-10-12 19:54:25 +00:00
Stuart Marks
d7128e7dac 8254090: Collectors.toUnmodifiableList exposes shared secret
Co-authored-by: Tagir F. Valeev <tvaleev@openjdk.org>
Reviewed-by: psandoz
2020-10-12 17:22:21 +00:00
Valerie Peng
df1f132b67 8253563: Change sun.security.jca.Providers.threadLists to be ThreadLocal
Reviewed-by: alanb
2020-10-12 16:56:47 +00:00
Vladimir Kempik
c7f0064062 8253899: Make IsClassUnloadingEnabled signature match specification
Reviewed-by: sspitsyn, dholmes
2020-10-12 13:16:28 +00:00
Chris Hegarty
aad3cf4df7 8254234: Add test library stream object builder
Reviewed-by: rriggs
2020-10-12 13:06:10 +00:00
Daniel Fuchs
4184959d85 8252374: Add a new factory method to concatenate a sequence of BodyPublisher instances into a single publisher.
Reviewed-by: chegar
2020-10-12 12:52:55 +00:00
Roberto Castañeda Lozano
05459df0c7 8253765: C2: Control randomization in StressLCM and StressGCM
Use the compilation-local seed in 'StressLCM' and 'StressGCM' rather than the
global one. As a consequence, these options use by default a fresh seed in every
compilation, unless 'StressSeed=N' is specified, in which case they behave
deterministically. Annotate tests that use 'StressLCM' and 'StressGCM' with the
'stress' and 'randomness' keys to reflect this change in default behavior.

Reviewed-by: kvn, thartmann
2020-10-12 11:40:50 +00:00
Roman Kennke
6620b617a7 8254573: Shenandoah: Streamline/inline native-LRB entry point
Reviewed-by: shade
2020-10-12 11:29:36 +00:00
Roland Westrelin
a6c23b7753 8253923: C2 doesn't always run loop opts for compilations that include loops
Reviewed-by: neliasso, thartmann
2020-10-12 10:55:22 +00:00
Roman Kennke
dfe8ba6099 8254320: Shenandoah: C2 native LRB should activate for non-cset objects
Reviewed-by: roland, shade
2020-10-12 10:54:32 +00:00
Aleksey Shipilev
295a44af6f 8254558: Remove unimplemented Arguments::do_pd_flag_adjustments
Reviewed-by: dholmes
2020-10-12 10:35:21 +00:00
Aleksey Shipilev
0fab73ed58 8254560: Shenandoah: Concurrent Strong Roots logging is incorrect
Reviewed-by: rkennke
2020-10-12 10:33:22 +00:00
Aleksey Shipilev
638f910951 8254559: Remove unimplemented JVMFlag::get_locked_message_ext
Reviewed-by: dholmes, tschatzl
2020-10-12 09:40:03 +00:00
Hannes Wallnöfer
0ec1d6385a 8253117: Replace HTML tables in javadoc summaries with CSS grid elements
Reviewed-by: jjg
2020-10-12 09:36:43 +00:00
Christian Hagedorn
54bbe76ed0 8251544: CTW: C2 fails with assert(no_dead_loop) failed: dead loop detected
Reviewed-by: kvn, roland
2020-10-12 08:18:13 +00:00
Christian Hagedorn
13fe054cb9 8253588: C1: assert(false) failed: unknown register on x86_32 only with -XX:+TraceLinearScanLevel=4
Reviewed-by: thartmann, kvn
2020-10-12 08:16:33 +00:00
Thomas Schatzl
59378a19b2 8254164: G1 only removes self forwarding pointers for last collection set increment
Reviewed-by: sjohanss, kbarrett
2020-10-12 07:55:01 +00:00
Thomas Schatzl
bf46acf933 8254028: G1 incorrectly updates scan_top for collection set regions during preparation of evacuation
Reviewed-by: kbarrett
2020-10-12 07:42:22 +00:00
Roland Westrelin
a2bb4c6014 8254314: Shenandoah: null checks in c2 should not skip over native load barrier
Reviewed-by: rkennke
2020-10-12 07:21:03 +00:00
Per Liden
c73a0fffaa 8252105: Parallel heap inspection for ZCollectedHeap
Reviewed-by: ayang, eosterlund
2020-10-12 07:04:59 +00:00
Robbin Ehn
45b09a3f25 8253833: mutexLocker assert_locked_or_safepoint should not access VMThread state from non-VM-thread
Reviewed-by: shade, coleenp, dcubed, dholmes
2020-10-12 06:01:31 +00:00
Claes Redestad
77c776275e 8254353: Remove unused non-product flags
Reviewed-by: iignatyev, kvn
2020-10-11 21:59:52 +00:00
Aleksey Shipilev
d3069ac9ec 8254362: x86_32 builds fail after JDK-8253180
Reviewed-by: kvn
2020-10-11 21:07:48 +00:00
Vladimir Kozlov
25001c50d6 8254352: 3 compiler tests failed with "assert(allocates2(pc)) failed: not in CodeBuffer memory"
Reviewed-by: shade
2020-10-11 19:37:36 +00:00
Jie Fu
d43f14161e 8254351: Minimal VM build fails with undeclared identifier 'MaxVectorSize' after JDK-8252847
Reviewed-by: kvn
2020-10-11 00:41:06 +00:00
Daniel D. Daugherty
cc52358c42 8254335: logging/logStream.hpp includes memory/resourceArea.hpp but doesn't need it
Reviewed-by: kbarrett, iklam
2020-10-10 13:38:55 +00:00
Jatin Bhateja
4b5ac3abac 8252847: Optimize primitive arrayCopy stubs using AVX-512 masked instructions
Reviewed-by: neliasso, kvn
2020-10-10 06:29:38 +00:00
Jie Fu
ec41046c5c 8254348: Build fails when cds is disabled after JDK-8247536
Reviewed-by: dcubed
2020-10-10 04:26:37 +00:00
Yumin Qi
e4469d2c8c 8247536: Support for pre-generated java.lang.invoke classes in CDS static archive
Reviewed-by: iklam, mchung
2020-10-10 02:06:52 +00:00
Coleen Phillimore
7ec9c8eac7 8233214: Remove runtime code not needed with CMS removed
Reviewed-by: shade, stefank, tschatzl
2020-10-09 20:46:11 +00:00
Roman Kennke
536b35b53a 8254319: Shenandoah: Interpreter native-LRB needs to activate during HAS_FORWARDED
Reviewed-by: shade, zgu
2020-10-09 19:07:14 +00:00
Andy Herrick
be26972432 8253379: [windows] Several jpackage tests failed with error code 1638
Reviewed-by: asemenyuk, almatvee, kizune
2020-10-09 18:17:37 +00:00
Evgeny Nikitin
52e45a3677 8229186: Improve error messages for TestStringIntrinsics failures
Reviewed-by: iignatyev, lmesnik
2020-10-09 16:48:49 +00:00
Aleksey Shipilev
6d2c1a66bb 8254292: Update JMH devkit to 1.26
Reviewed-by: erikj, aph
2020-10-09 16:44:37 +00:00
Severin Gehwolf
2bbf8a2a96 8245543: Cgroups: Incorrect detection logic on some systems (still reproducible)
Reviewed-by: bobv, shade
2020-10-09 16:25:50 +00:00
Jie Fu
aaa0a2a047 8254297: Zero and Minimal VMs are broken with undeclared identifier 'DerivedPointerTable' after JDK-8253180
Reviewed-by: shade, eosterlund
2020-10-09 15:16:49 +00:00
Igor Ignatyev
7e80c9897d 8254261: fix javadocs in jdk.test.lib.Utils
Reviewed-by: shade
2020-10-09 14:47:25 +00:00
Zhengyu Gu
d4b5dfd1a2 8253857: Shenandoah: Bugs in ShenandoahEvacOOMHandler related code
Reviewed-by: rkennke
2020-10-09 13:44:13 +00:00
Martin Doerr
e9c1905bd0 8253740: [PPC64] Minor interpreter cleanup
Reviewed-by: lucy
2020-10-09 13:35:01 +00:00
Jose Ricardo Ziviani
b1448da109 8253900: SA: wrong size computation when JVM was built without AOT
Reviewed-by: cjplummer, sspitsyn
2020-10-09 12:56:47 +00:00
Martin Doerr
2bc8bc5722 8254265: s390 and linux 32 bit builds broken
Reviewed-by: coleenp, dholmes
2020-10-09 11:51:21 +00:00
Jim Laskey
4f9a1ffcdd 8254073: Tokenizer improvements (revised)
Reviewed-by: mcimadamore
2020-10-09 11:08:56 +00:00
Claes Redestad
9cecc16747 8254244: Some code emitted by TemplateTable::branch is unused when running TieredCompilation
Reviewed-by: mdoerr, coleenp, iveresov
2020-10-09 11:01:53 +00:00
Thomas Schatzl
a95590d00e 8254285: G1: Remove "What is this about" comment in G1CollectedHeap.cpp
Reviewed-by: shade, sjohanss
2020-10-09 09:55:57 +00:00
Aleksey Shipilev
0230781107 8254175: Build no-pch configuration in debug mode for submit checks
Reviewed-by: rwestberg, erikj, dholmes
2020-10-09 09:42:39 +00:00
Erik Österlund
b9873e1833 8253180: ZGC: Implementation of JEP 376: ZGC: Concurrent Thread-Stack Processing
Reviewed-by: stefank, pliden, rehn, neliasso, coleenp, smonteith
2020-10-09 08:40:33 +00:00
Jan Lahoda
a2f651904d 8233685: Test tools/javac/modules/AddLimitMods.java fails
Reviewed-by: vromero
2020-10-09 06:22:15 +00:00
Sergey Bylokhov
70be8c7a46 8253965: Delete the outdated java.awt.PeerFixer class
Reviewed-by: prr, pbansal
2020-10-09 05:08:49 +00:00
Martin Doerr
ced46b19f7 8254190: [s390] interpreter misses exception check after calling monitorenter
Reviewed-by: shade, rrich
2020-10-08 20:52:50 +00:00
Igor Ignatyev
5351ba6cfa 8254262: jdk.test.lib.Utils::createTemp* don't pass attrs
Reviewed-by: shade
2020-10-08 19:09:25 +00:00
Nhat Nguyen
8c0d3d754b 8254195: java/nio/file/Files/SubstDrive.java failed with "AssertionError: expected [144951656448] but found [144951640064]"
Reviewed-by: alanb, bpb
2020-10-08 18:05:23 +00:00
Sergey Bylokhov
c2a5de636f 8253681: closed java/awt/dnd/MouseEventAfterStartDragTest/MouseEventAfterStartDragTest.html test failed
Reviewed-by: shade
2020-10-08 16:34:01 +00:00
Zhengyu Gu
d036dca085 8254103: Shenandoah: Move updating thread roots to concurrent phase
Reviewed-by: rkennke
2020-10-08 13:50:57 +00:00
Christoph Dreis
7e82ba1ff0 8254146: Avoid unnecessary volatile write on new AtomicBoolean(false)
Reviewed-by: redestad, rriggs, chegar
2020-10-08 13:18:09 +00:00
Vladimir Ivanov
6d13c766bf 8253191: C2: Masked byte comparisons with large masks produce wrong result on x86
Reviewed-by: thartmann
2020-10-08 12:41:46 +00:00
Roberto Castañeda Lozano
a191c586dc 8253404: C2: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
Record nodes as dead in Node::destruct() if their index cannot be directly
reclaimed. This prevents the "Live Node limit exceeded limit" assertion failure
by improving the accuracy of Compile::live_nodes() when "hook" nodes in
ConvI2LNode::Ideal() are created and deleted non-consecutively.

This addition might result in multiple calls to compile::record_dead_node() for
the same node (e.g. from PhaseIdealLoop::spinup()), but this is safe, as
compile::record_dead_node() is idempotent.

Reviewed-by: neliasso, thartmann
2020-10-08 12:30:38 +00:00
Coleen Phillimore
6bc493188b 8253717: Relocate stack overflow code out of thread.hpp/cpp
Reviewed-by: rehn, dcubed, dholmes, stuefe
2020-10-08 11:24:27 +00:00
Jaikiran Pai
782d45bdec 8242882: opening jar file with large manifest might throw NegativeArraySizeException
Reviewed-by: bchristi, lancea
2020-10-08 10:46:37 +00:00
Roland Westrelin
f86037207c 8253566: clazz.isAssignableFrom will return false for interface implementors
Reviewed-by: kvn, thartmann, neliasso
2020-10-08 09:33:42 +00:00
Kim Barrett
66f27b5fca 8254015: copy_to_survivor_space should use in-hand klass for scanning
Reviewed-by: tschatzl, sjohanss, ayang
2020-10-08 08:56:01 +00:00
Roland Westrelin
76a5852776 8253756: C2 CompilerThread0 crash in Node::add_req(Node*)
Reviewed-by: vlivanov, thartmann
2020-10-08 08:39:40 +00:00
Aleksey Shipilev
8f9e4792a1 8254144: Non-x86 Zero builds fail with return-type warning in os_linux_zero.cpp
Reviewed-by: zgu
2020-10-08 08:11:26 +00:00
Aleksey Shipilev
7952c06b36 8254166: Zero: return-type warning in zeroInterpreter_zero.cpp
Reviewed-by: sgehwolf
2020-10-08 08:10:55 +00:00
Thomas Schatzl
894ec76c11 8254027: gc/g1/TestHumongousConcurrentStartUndo.java failed with "'Concurrent Mark Cycle' missing from stdout/stderr"
Reviewed-by: sjohanss, kbarrett
2020-10-08 07:43:32 +00:00
Aleksey Shipilev
bc236903a2 8254173: Add Zero, Minimal hotspot targets to submit workflow
Reviewed-by: erikj, rwestberg
2020-10-08 07:25:42 +00:00
Christian Stein
e1187c401e 8248262: Wrong link target in ModuleDescriptor#isAutomatic's API documentation
Reviewed-by: alanb
2020-10-08 07:11:43 +00:00
Igor Ignatyev
9cdfd0fafe 8254096: remove jdk.test.lib.Utils::getMandatoryProperty(String) method
Reviewed-by: shade
2020-10-08 06:56:20 +00:00
Ioi Lam
d1e94eebdd 8253909: Implement detailed map file for CDS
Reviewed-by: stuefe, ccheung
2020-10-08 06:55:42 +00:00
Igor Ignatyev
7733a0e76b 8254182: remove Utils.tryFindJvmPid/waitForJvmPid
Reviewed-by: rriggs
2020-10-08 06:54:21 +00:00
Igor Veresov
4e5ef30303 8254104: MethodCounters must exist before nmethod is installed
Reviewed-by: dnsimon, kvn
2020-10-08 06:53:24 +00:00
Boris Ulasevich
fd0cb98ed0 8253901: ARM32: SIGSEGV during monitorexit due to incorrect register use (after JDK-8253540)
Reviewed-by: shade
2020-10-08 06:52:27 +00:00
Nhat Nguyen
abe2593772 8232092: (fs) Files::isWritable returns false on a writeable root directory (win)
Reviewed-by: alanb
2020-10-07 19:45:20 +00:00
Igor Ignatyev
5a9bd41e79 8254102: use ProcessHandle::pid instead of ManagementFactory::getRuntimeMXBean to get pid in tests
Reviewed-by: rriggs, shade
2020-10-07 18:51:52 +00:00
Roger Riggs
38159d52d4 8253876: jdk/test/lib/hexdump/ASN1FormatterTest.java fails with "AssertionError: Lines expected [126] but found [202]"
Reviewed-by: shade, lancea
2020-10-07 18:36:14 +00:00
Brian Burkhalter
db3053dcd1 8067127: Tags cleanup
Reviewed-by: rriggs, dfuchs, lancea
2020-10-07 17:16:04 +00:00
Claes Redestad
739347f093 8254168: Remove TemplateTable::count_calls
Reviewed-by: coleenp
2020-10-07 17:10:37 +00:00
Gerard Ziemski
4fe07ccc53 8252324: Signal related code should be shared among POSIX platforms
Reviewed-by: coleenp, dholmes, stuefe, ysuenaga
2020-10-07 16:21:51 +00:00
Hannes Wallnöfer
1e8e543b26 8216497: javadoc should auto-link to platform classes
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: erikj, jjg
2020-10-07 13:08:34 +00:00
Doug Simon
04ca660e81 8253874: [JVMCI] added test omitted in 8252881
Reviewed-by: shade
2020-10-07 09:14:43 +00:00
Patrick Concannon
49128a1ee5 8253475: Javadoc clean up in HttpExchange and HttpServer
Reviewed-by: dfuchs
2020-10-07 09:12:34 +00:00
Adam Farley
9543d7607b 8253000: Remove redundant MAKE_SUBDIR argument
Reviewed-by: erikj
2020-10-07 08:07:22 +00:00
Adam Farley
4dfa411247 8252997: Null-proofing for linker_md.c
Reviewed-by: sspitsyn
2020-10-07 08:05:27 +00:00
Prasanta Sadhukhan
97ff38caff 8254141: Typo in copyright year
Reviewed-by: jdv
2020-10-07 07:14:05 +00:00
Jan Lahoda
cd4faff0ec 8249095: tools/javac/launcher/SourceLauncherTest.java fails on Windows
Reviewed-by: jjg
2020-10-07 06:52:03 +00:00
Prasanta Sadhukhan
bdd5782a67 8253980: javax/swing/plaf/synth/7158712/bug7158712.java fails on windows
Reviewed-by: kizune, prr
2020-10-07 06:41:02 +00:00
Conor Cleary
703b345eee 8253179: Replace LinkedList Impl in net.http.Http2Connection
Reviewed-by: dfuchs, prappo, chegar, shade
2020-10-07 06:21:53 +00:00
Sergey Bylokhov
397307311e 8253977: More memory leaks in client-libs on macOS
Reviewed-by: kizune
2020-10-07 03:06:35 +00:00
Igor Ignatyev
2a0389a892 8254095: remove jdk.test.lib.Utils::distro() method
Reviewed-by: bchristi
2020-10-06 22:57:56 +00:00
Igor Ignatyev
ac772cd916 8253750: use build-stable default seed for Utils.RANDOM_GENERATOR
Reviewed-by: rriggs
2020-10-06 20:35:34 +00:00
Claes Redestad
6712f8caff 8254084: Remove TemplateTable::pd_initialize
Reviewed-by: mdoerr, coleenp
2020-10-06 20:23:59 +00:00
Harold Seigel
82fe023b06 8254061: Missing space in flag description
Reviewed-by: coleenp
2020-10-06 19:19:27 +00:00
Jonathan Gibbons
bd50ccd037 8253735: Cleanup SearchIndexItem API
Reviewed-by: hannesw
2020-10-06 17:32:33 +00:00
Rajan Halade
54b340b44f 8254081: java/security/cert/PolicyNode/GetPolicyQualifiers.java fails due to an expired certificate
Perform backdated validation of test certificate.

Reviewed-by: mullan, xuelei
2020-10-06 16:38:42 +00:00
Zhengyu Gu
51fdb4c039 8254075: Shenandoah: Remove ShenandoahCodeRootsStyle diagnostic flag and related test
Reviewed-by: shade
2020-10-06 15:28:44 +00:00
Ian Graves
77921b9736 8254080: fix for JDK-8204256 causes jlink test failures
Reviewed-by: alanb
2020-10-06 15:23:19 +00:00
Patricio Chilano Mateo
57493c1991 8253694: Remove Thread::muxAcquire() from ThreadCrashProtection()
Reviewed-by: dholmes, dcubed, coleenp
2020-10-06 14:48:56 +00:00
Robin Westberg
d2b1dc6d78 8254054: Pre-submit testing using GitHub Actions should not use the deprecated set-env command
Reviewed-by: ehelin, erikj
2020-10-06 13:39:57 +00:00
Naoto Sato
a34f48bcf5 8253832: CharsetDecoder : decode() mentioning CoderMalfunctionError behavior not as per spec
Reviewed-by: alanb
2020-10-06 12:35:52 +00:00
Sergey Bylokhov
f397b60ae1 8251123: doclint warnings about missing javadoc tags and comments
Reviewed-by: jdv, prr
2020-10-06 10:49:56 +00:00
Thomas Schatzl
c9d1dcc63d 8253902: G1: Starting a new marking cycle before the conc mark thread fully completed causes assertion failure
Reviewed-by: kbarrett, sjohanss
2020-10-06 10:16:19 +00:00
Jose Ricardo Ziviani
919978380c 8253565: PPC64: Fix duplicate if condition in vm_version_ppc.cpp
Reviewed-by: mdoerr
2020-10-06 08:16:57 +00:00
Tobias Hartmann
1728547270 8254010: GrowableArrayView::print fails to compile
Reviewed-by: stefank
2020-10-06 05:48:45 +00:00
Christoph Langer
6e61861740 8254046: Remove double semicolon introduced by JDK-8235521
Reviewed-by: serb
2020-10-06 05:42:19 +00:00
Ian Graves
5d84e95ed5 8204256: improve jlink error message to report unsupported class file format
Reviewed-by: mchung
2020-10-05 23:19:27 +00:00
Andy Herrick
4fe68f55a4 8253426: jpackage is unable to generate working EXE for add-launcher configurations
Reviewed-by: almatvee, kizune, asemenyuk
2020-10-05 21:10:48 +00:00
Robbin Ehn
c9d0407e94 8253794: TestAbortVMOnSafepointTimeout never timeouts
Reviewed-by: pchilanomate, dcubed, mdoerr
2020-10-05 19:16:11 +00:00
Christian Stein
f2f77f7b14 8253761: Wrong URI syntax printed by jar --describe-module
Reviewed-by: alanb
2020-10-05 18:16:29 +00:00
Paul Sandoz
b29e1086ac 8253944: Certain method references to VarHandle methods should fail
Reviewed-by: mcimadamore
2020-10-05 17:15:31 +00:00
Stuart Marks
88d75c9ad5 8156071: List.of: reduce array copying during creation
Reviewed-by: psandoz, redestad
2020-10-05 17:00:57 +00:00
Calvin Cheung
ea27a54bf0 8224509: Incorrect alignment in CDS related allocation code on 32-bit platforms
Reviewed-by: iklam, stuefe
2020-10-05 16:52:00 +00:00
Coleen Phillimore
4d29116d6d 8253433: Remove -XX:+Debugging product option
Reviewed-by: kbarrett, stuefe, dholmes
2020-10-05 15:46:07 +00:00
Zhengyu Gu
81dae70f67 8253948: Memory leak in ImageFileReader
Reviewed-by: alanb
2020-10-05 13:51:37 +00:00
Per Liden
65cab55c1b 8253971: ZGC: Flush mark stacks after processing concurrent roots
Reviewed-by: ayang, eosterlund
2020-10-05 13:18:38 +00:00
Zhengyu Gu
19219a964b 8253960: Memory leak in Java_java_lang_ClassLoader_defineClass0()
Reviewed-by: mchung, stuefe, alanb
2020-10-05 13:09:42 +00:00
Yudi Zheng
5d4a1350d0 8253842: [JVMCI] Allow implicit exception to dispatch to other address in jvmci compilers.
Reviewed-by: kvn
2020-10-05 12:21:33 +00:00
Adam Farley
289ae798f4 8252998: ModuleWrapper.gmk doesn't consult include path
Reviewed-by: erikj
2020-10-05 09:53:16 +00:00
Monica Beckwith
9604ee8269 8248238: Implementation: JEP 388: Windows AArch64 Support
Co-authored-by: Monica Beckwith <mbeckwit@openjdk.org>
Co-authored-by: Ludovic Henry <luhenry@openjdk.org>
Co-authored-by: Bernhard Urban-Forster <burban@openjdk.org>
Reviewed-by: dholmes, cjplummer, aph, ihse
2020-10-05 03:21:39 +00:00
Sergey Bylokhov
1c2754bfe3 8253269: The CheckCommonColors test should provide more info on failure
Reviewed-by: prr
2020-10-03 19:46:41 +00:00
Sergey Bylokhov
d296708ca6 8253606: Need to add missed constructor to the SwingEventMonitor
Reviewed-by: jdv, pbansal, prr
2020-10-02 22:03:55 +00:00
Phil Race
58102386eb 8253945: Missed default constructor for StreamPrintServiceFactory.java
Reviewed-by: kcr, serb
2020-10-02 21:54:53 +00:00
Rajan Halade
123e786db2 8239105: Add exception for expiring Digicert root certificates to VerifyCACerts test
"8239105: added verisigntsaca and thawtepremiumserverca to EXPIRY_EXC_ENTRIES list"

Reviewed-by: mullan
2020-10-02 17:21:56 +00:00
Per Liden
22f091608d 8253938: ZGC: Clean up argument names after JDK-8253030
Reviewed-by: tschatzl, ayang
2020-10-02 16:53:34 +00:00
Jonathan Gibbons
777804759f 8253736: Cleanup some of WorkArounds and usage thereof
Reviewed-by: vromero, ksrini
2020-10-02 16:15:46 +00:00
Jonathan Gibbons
87d77eb2a0 8253879: Simplify redundant code in IndexBuilder
Reviewed-by: ksrini
2020-10-02 16:12:26 +00:00
Vipin Sharma
dffe9db25c 8252537: Updated @exception with @throws
8252536: Replace @exception with @throws for core-libs
8252539: Replace @exception with @throws java.rmi.activation package
8252540: Replace @exception with @throws java.rmi.registry package
8252541: Replace @exception with @throws java.rmi.server package

Reviewed-by: rriggs, sspitsyn, lancea
2020-10-02 14:50:53 +00:00
Igor Ignatyev
406db1c270 8253913: unify gtest test names
Reviewed-by: stefank
2020-10-02 13:46:13 +00:00
Xin Liu
ea5a2b15a0 8251464: make Node::dump(int depth) support indent
Reviewed-by: thartmann
2020-10-02 13:45:29 +00:00
Igor Ignatyev
fff8c8deaa 8253882: remove PropertyResolvingWrapper
Reviewed-by: shade
2020-10-02 13:44:12 +00:00
Robin Westberg
7dcdc1fbdd 8253865: Pre-submit testing using GitHub Actions does not detect failures reliably
8253867: Pre-submit testing using GitHub Actions can fail to download intermediate artifacts

Reviewed-by: erikj
2020-10-02 13:12:14 +00:00
Patrick Concannon
0fd41c3b6a 8253470: Javadoc clean up in Filter and Headers
Reviewed-by: dfuchs, michaelm
2020-10-02 12:06:48 +00:00
Stefan Johansson
f686a380f3 8253926: Use extra_size correctly in anon_mmap_aligned
Reviewed-by: shade, kbarrett, tschatzl, stefank
2020-10-02 11:45:24 +00:00
Thomas Schatzl
b8966e1f7b 8253928: G1: Remove G1ConcurrentMarkThread::set_in_progress declaration
Reviewed-by: ayang, shade
2020-10-02 11:05:34 +00:00
Prasanta Sadhukhan
4185ed3290 5078989: Null Pointer exception in SpinnerListMode
Reviewed-by: serb
2020-10-02 08:10:21 +00:00
Aleksey Shipilev
6f40a41466 8253891: Debug x86_32 builds fail after JDK-8239090
Reviewed-by: stuefe, phh
2020-10-02 06:57:03 +00:00
Igor Veresov
b9505df3b4 8253118: Avoid unnecessary deopts when OSR nmethods of the same level are present.
Reviewed-by: kvn
2020-10-02 02:22:56 +00:00
Weijun Wang
3c4e824aa5 8249783: Simplify DerValue and DerInputStream
Reviewed-by: valeriep
2020-10-01 18:55:35 +00:00
Andy Herrick
9230c2aaae 8253747: tools/jpackage/share/AppImagePackageTest.java fails with InstalledPackageSize: 0
Reviewed-by: almatvee, prr
2020-10-01 18:36:35 +00:00
Fernando Guallini
cfd41c0c1d 8232840: java/math/BigInteger/largeMemory/SymmetricRangeTests.java fails due to "OutOfMemoryError: Requested array size exceeds VM limit"
Reviewed-by: alanb
2020-10-01 17:44:23 +00:00
Jim Laskey
8fda5b82f0 8253904: Revert Tokenizer improvements JDK-8224225
Reviewed-by: mcimadamore
2020-10-01 17:42:29 +00:00
Aleksey Shipilev
60ec2a53c2 8253824: Revert JDK-8253089 since VS warning C4307 has been disabled
Reviewed-by: mdoerr, iklam
2020-10-01 16:07:43 +00:00
Jim Laskey
90c131f29f 8224225: Tokenizer improvements
Reviewed-by: mcimadamore
2020-10-01 15:39:01 +00:00
Nils Eliasson
96704253b6 8253822: Remove unused exception_address_is_unpack_entry
Removing dead code

Reviewed-by: chagedorn, kvn
2020-10-01 15:31:11 +00:00
Leonid Mesnik
84402796b2 8180514: TestPrintMdo.java test fails with -XX:-TieredCompilation
Reviewed-by: cjplummer, sspitsyn
2020-10-01 14:59:51 +00:00
Thomas Stuefe
44e6820c37 8253650: Cleanup: remove alignment_hint parameter from os::reserve_memory
Reviewed-by: stefank, tschatzl
2020-10-01 12:09:59 +00:00
Prasanta Sadhukhan
ed62b0104f 6646602: Spelling error in javadoc for javax.swing.tree.TreeModel
Reviewed-by: jdv
2020-10-01 12:02:46 +00:00
Prasanta Sadhukhan
87276bce47 6690021: typos in TransferHandler Javadoc
Reviewed-by: jdv
2020-10-01 12:00:52 +00:00
Zhengyu Gu
dd36d8c64d 8253429: Error reporting should report correct state of terminated/aborted threads
Reviewed-by: dholmes, stuefe
2020-10-01 11:57:21 +00:00
Kim Barrett
2d9fa9da02 8247912: Make narrowOop a scoped enum
Reviewed-by: iklam, stefank
2020-10-01 10:45:22 +00:00
Jayathirth D V
928da494a8 8253739: java/awt/image/MultiResolutionImage/MultiResolutionImageObserverTest.java fails
Reviewed-by: serb
2020-10-01 09:38:15 +00:00
Severin Gehwolf
3e96721cd9 8253727: [cgroups v2] Memory and swap limits reported incorrectly
Account for interface files for swap and memory being reported independently.
The cgroup v1-like value is now reported by adding the memory.max value to
the memory.swap.max value, and memory.current and memory.swap.current
respectively.

Reviewed-by: bobv, shade
2020-10-01 09:28:40 +00:00
Martin Doerr
7779ce9fb4 8253689: [s390] Use flag kind "diagnostic" for platform specific flags
Reviewed-by: stuefe, lucy
2020-10-01 09:23:31 +00:00
Martin Doerr
a8242892c2 8253690: [PPC64] Use flag kind "diagnostic" for platform specific flags
Reviewed-by: stuefe, lucy
2020-10-01 09:21:12 +00:00
Sergey Bylokhov
1d88172c06 8253682: The AppletInitialFocusTest1.java is unstable
Reviewed-by: jdv
2020-10-01 08:10:32 +00:00
Roberto Castañeda Lozano
5dd9353b83 8253636: C2: Adjust NodeClasses::_max_classes
Update NodeClasses::_max_classes to the max class id within the
enumeration. Update comment and assertion to reflect that NodeClasses uses now
32 bits after the addition of Opaque1 in JDK-8229495.

Reviewed-by: neliasso, kvn
2020-10-01 06:39:25 +00:00
Roger Riggs
05a764f4ff 8253883: Problem list jdk/test/lib/hexdump/ASN1Formatter on Windows
Reviewed-by: lancea
2020-09-30 23:45:08 +00:00
Igor Ignatyev
55c282bb34 8253878: clean up nsk/share/jvmti/ArgumentHandler
Reviewed-by: cjplummer
2020-09-30 23:34:06 +00:00
Igor Ignatyev
776acfd80a 8253880: clean up sun/hotspot/tools/ctw/Utils class
Reviewed-by: kvn
2020-09-30 22:40:43 +00:00
Igor Veresov
79d70f6b51 8253869: sun/hotspot/whitebox/CPUInfoTest.java fails after JDK-8239090
Reviewed-by: mikael
2020-09-30 21:49:16 +00:00
Igor Ignatyev
ca0e014e60 8252003: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jvmti
Reviewed-by: cjplummer, sspitsyn
2020-09-30 21:37:12 +00:00
Roger Riggs
092c227721 8252523: Add ASN.1 Formatter to work with test utility HexPrinter
Reviewed-by: weijun
2020-09-30 20:42:39 +00:00
Jonathan Gibbons
06d8cf6fef 8253812: Cleanup AbstractMemberWriter
Reviewed-by: ksrini
2020-09-30 20:29:11 +00:00
Doug Simon
424d7d6485 8252881: [JVMCI] ResolvedJavaType.resolveMethod fails in fastdebug when invoked with a constructor
Reviewed-by: never
2020-09-30 20:06:31 +00:00
Philippe Marschall
2a406f3ce5 8138732: Rename @HotSpotIntrinsicCandidate to @IntrinsicCandidate and move it to the jdk.internal.vm.annotation package
Reviewed-by: dholmes, alanb, psandoz, kvn, egahlin
2020-09-30 20:05:07 +00:00
Igor Ignatyev
4b16f8ab94 8253872: ArgumentHandler must use the same delimiters as in jvmti_tools.cpp
Reviewed-by: cjplummer
2020-09-30 20:03:20 +00:00
Jonathan Gibbons
4fb8c77696 8253733: Cleanup internal taglet API
Reviewed-by: prappo
2020-09-30 19:28:10 +00:00
Weijun Wang
e5ba020ee9 8253829: Wrong length compared in SSPI bridge
Reviewed-by: valeriep
2020-09-30 17:13:47 +00:00
Paul Hohensee
9e453d9792 8239090: Improve CPU feature support in VM_Version
Reviewed-by: iveresov, simonis
2020-09-30 17:02:08 +00:00
Igor Ignatyev
8f7c9a7b18 8252001: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jdi
Reviewed-by: cjplummer, sspitsyn
2020-09-30 16:18:27 +00:00
Jonathan Gibbons
8cf8e463c6 8253700: spurious "extends Throwable" at end of Optional.orElseThrow method declaration
Reviewed-by: prappo
2020-09-30 16:08:58 +00:00
Igor Ignatyev
8b3d67681e 8238737: remove DeoptimizeAllClassesRate from CTW library
Reviewed-by: shade, vlivanov
2020-09-30 14:50:15 +00:00
Stefan Johansson
709cfe5f28 8253815: Remove unused HeapRegionManager::_num_committed from SA
Reviewed-by: tschatzl, cjplummer
2020-09-30 13:02:41 +00:00
Paul Hohensee
f80a6066e4 8253375: OSX build fails with Xcode 12.0 (12A7209)
Replace double array with short array in AdapterHandlerLibrary::create_native_wrapper, add parens around ?: in CSystemColors:getColor

Reviewed-by: prr, kbarrett, lucy
2020-09-30 12:16:25 +00:00
Patric Hedlin
04775f11fe 8253768: Deleting unused pipe_class definitions in adl-file (x86_64.ad).
Reviewed-by: neliasso
2020-09-30 09:06:17 +00:00
Martin Doerr
dc3a0f5f88 8253183: Fragile memory barrier selection for some weak memory model platforms
Reviewed-by: dholmes, eosterlund, dcubed
2020-09-30 09:03:06 +00:00
Aleksey Shipilev
8331e63fe4 8253778: ShenandoahSafepoint::is_at_shenandoah_safepoint should not access VMThread state from other threads
Reviewed-by: jiefu, rehn, rkennke
2020-09-30 08:58:24 +00:00
Prasanta Sadhukhan
4c65365116 8253792: javax.swing.text.GapContent documentation typos
Reviewed-by: jdv
2020-09-30 07:04:00 +00:00
Prasanta Sadhukhan
3078b5f340 6441211: Small Error in API at javax.swing.plaf.synth.Region
Reviewed-by: trebari, jdv
2020-09-30 07:02:29 +00:00
Matthias Baesken
4622a18a72 8253791: Issue with useAppleColor check in CSystemColors.m
Reviewed-by: phh, lucy, serb
2020-09-30 05:28:20 +00:00
Jatin Bhateja
ac02afe9dc 8253721: Flag -XX:AVX3Threshold does not accept Zero value
Reviewed-by: kvn, thartmann
2020-09-30 05:09:12 +00:00
Tejpal Rebari
4d9f207347 7151826: [TEST_BUG] [macosx] The test javax/swing/JPopupMenu/4966112/bug4966112.java not for mac
Reviewed-by: serb, jdv
2020-09-30 05:00:26 +00:00
Igor Ignatyev
1eca634736 8252000: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jdb
Reviewed-by: shade, cjplummer, sspitsyn
2020-09-30 03:03:53 +00:00
Igor Ignatyev
a55cde4d6b 8252002: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jdwp
Reviewed-by: cjplummer, sspitsyn
2020-09-30 02:43:10 +00:00
Alexandre Iline
ffc97ba585 8253543: sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java failed with "AssertionError: All pixels are not black"
Reviewed-by: serb
2020-09-30 01:27:30 +00:00
Brian Burkhalter
5310d85809 8252937: Correct "no comment" warnings from javadoc in java.math package
Reviewed-by: darcy
2020-09-29 22:46:16 +00:00
Ian Graves
8df3e72cea 8218685: jlink --list-plugins needs to be readable and tidy
Reviewed-by: mchung, alanb
2020-09-29 21:16:35 +00:00
Harold Seigel
2fe0a5d75e 8253476: TestUseContainerSupport.java fails on some Linux kernels w/o swap limit capabilities
Reviewed-by: bobv, coleenp
2020-09-29 19:59:26 +00:00
Anthony Scarpino
fb206908b4 8253637: Update EC removal
Reviewed-by: mullan
2020-09-29 18:05:20 +00:00
Ioi Lam
b1ce6bdba9 8253548: jvmFlagAccess.cpp: clang 9.0.0 format specifier error
Reviewed-by: lfoltan
2020-09-29 15:17:34 +00:00
Severin Gehwolf
ff6843ca48 8253714: [cgroups v2] Soft memory limit incorrectly using memory.high
The early implementation of cgroups v2 support was done with
crun 0.8 and it contained a bug which set memory.high over
memory.low when --memory-reservation was being used as a CLI
option.

This bug has been fixed in later crun versions, starting with
crun 0.11. Use memory.low in OpenJDK as well.

Reviewed-by: bobv, adinn
2020-09-29 15:15:50 +00:00
Jan Lahoda
d5be82948b 8253770: Test tools/javac/parser/JavacParserTest.java fails on Windows after JDK-8253584
Reviewed-by: vromero
2020-09-29 14:29:28 +00:00
Evgeny Nikitin
6e5d4f33c5 8253607: [mlvm] meth/func/jdi/breakpointOtherStratum: un-problemlist and add randomness keyword
Reviewed-by: iignatyev
2020-09-29 12:42:20 +00:00
Stefan Karlsson
3ed960ec77 8253640: Make MEMFLAGS an enum class
Reviewed-by: stuefe, tschatzl
2020-09-29 12:03:00 +00:00
Jan Lahoda
86491a5f6b 8253584: Redunant errors for partial member selects
Reviewed-by: vromero
2020-09-29 10:11:08 +00:00
Maurizio Cimadamore
ebf443a16f 8253590: java/foreign tests are still failing on x86_32 after foreign-memaccess integration
Reviewed-by: psandoz
2020-09-29 09:40:21 +00:00
Robbin Ehn
431338bcb3 8212107: VMThread issues and cleanup
Reviewed-by: shade, dcubed, coleenp, dholmes, redestad
2020-09-29 09:37:15 +00:00
Robbin Ehn
6bddeb709d 8238761: Asynchronous handshakes
Reviewed-by: pchilanomate, dcubed, dholmes, coleenp, sspitsyn
2020-09-29 08:50:54 +00:00
Per Liden
6d19fe65d1 8253763: ParallelObjectIterator should have virtual destructor
Reviewed-by: shade, stefank
2020-09-29 08:39:09 +00:00
Prasanta Sadhukhan
55c90a171f 6514600: AbstractAction can throw NullPointerException when clone()d
Reviewed-by: serb, pbansal
2020-09-29 08:20:21 +00:00
John Tortugo
b65913249f 8252888: Collapse G1MMUTracker class hierarchy
Reviewed-by: ayang, sjohanss, kbarrett
2020-09-29 08:15:41 +00:00
Aditya Mandaleeka
e63b90cc17 8251358: Clean up Access configuration after Shenandoah barrier change
Reviewed-by: eosterlund, rkennke, shade
2020-09-29 07:25:08 +00:00
Jie Fu
9c17a35e50 8253748: StressIGV tests fail with release VMs
Reviewed-by: thartmann
2020-09-29 06:37:46 +00:00
Patric Hedlin
70b0fccf79 8253728: tests fail with "assert(fr.is_compiled_frame()) failed: Wrong frame type"
Reviewed-by: kvn
2020-09-28 21:48:55 +00:00
Mikael Vidstedt
527b0e44eb 8248984: Bump minimum boot jdk to JDK 15
Reviewed-by: darcy, erikj, dholmes
2020-09-28 21:22:00 +00:00
Vicente Romero
ac15d6445b 8241151: Incorrect lint warning for no definition of serialVersionUID in a record
Co-authored-by: Bernard Blaser <bsrbnd@gmail.com>
Co-authored-by: Vicente Romero <vicente.romero@oracle.com>
Reviewed-by: jjg
2020-09-28 21:20:14 +00:00
Mikael Vidstedt
d25b03e987 8253616: Change to GCC 10.2 for building on Linux at Oracle
Reviewed-by: erikj
2020-09-28 18:31:30 +00:00
Daniel D. Daugherty
821bd08cd6 8253667: ProblemList tools/jlink/JLinkReproducible{,3}Test.java on linux-aarch64
Reviewed-by: dfuchs, iignatyev
2020-09-28 16:41:35 +00:00
Pankaj Bansal
1ae6b533fb 8252194: Add automated test for fix done in JDK-8218469
Reviewed-by: serb, jdv, kizune
2020-09-28 16:05:38 +00:00
Coleen Phillimore
77a0f3999a 8253540: InterpreterRuntime::monitorexit should be a JRT_LEAF function
Reviewed-by: rehn, mdoerr, dcubed, pchilanomate
2020-09-28 15:49:02 +00:00
Volker Simonis
0054c15f60 8253435: Cgroup: 'stomping of _mount_path' crash if manually mounted cpusets exist
Reviewed-by: sgehwolf, bobv
2020-09-28 15:42:10 +00:00
Claes Redestad
8e338f67b2 8253646: ZGC: Avoid overhead of sorting ZStatIterableValues on bootstrap
Reviewed-by: pliden, eosterlund
2020-09-28 15:14:56 +00:00
Anton Kozlov
ec9bee6866 8253015: Aarch64: Move linux code out from generic CPU feature detection
Reviewed-by: aph
2020-09-28 13:52:10 +00:00
Patrick Concannon
16b8c39964 8253053: Javadoc clean up in Authenticator and BasicAuthenicator
Reviewed-by: dfuchs, rriggs, chegar, michaelm
2020-09-28 13:17:46 +00:00
Robin Westberg
840aa2b79e 8253424: Add support for running pre-submit testing using GitHub Actions
Reviewed-by: ehelin, erikj
2020-09-28 09:31:51 +00:00
Nick Gasson
8e87d46f41 8252857: AArch64: Shenandoah C1 CAS is not sequentially consistent
Reviewed-by: rkennke, shade
2020-09-28 09:12:26 +00:00
Martin Doerr
c2692f8875 8225329: -XX:+PrintBiasedLockingStatistics causes crash during initia…
Reviewed-by: stuefe, dholmes
2020-09-28 09:06:31 +00:00
Thomas Schatzl
e9c178276f 8252752: Clear card table for old regions during scan in G1
Reviewed-by: kbarrett, iwalulya, ayang
2020-09-28 08:28:57 +00:00
Wang Zhuo
276fcee795 8252835: Revert fix for JDK-8246051
Reviewed-by: psandoz, dholmes, mikael
2020-09-28 07:34:01 +00:00
Stefan Karlsson
ca1ed16292 8253639: Change os::attempt_reserve_memory_at parameter order
Reviewed-by: tschatzl, iklam
2020-09-28 07:12:48 +00:00
Roberto Castaneda Lozano
fed3636f12 8252219: C2: Randomize IGVN worklist for stress testing
Add 'StressIGVN' option to let C2 randomize IGVN worklist order. When enabled,
the worklist is shuffled before each main run of the IGVN loop. Also add
'StressSeed=N' option to specify the seed. If the seed is not specified, a
random one is generated. In either case, the seed is logged if 'LogCompilation'
is enabled. The new options are declared as production+diagnostic for
consistency with the existing 'StressLCM' and 'StressGCM' options.

Reviewed-by: kvn, chagedorn, thartmann
2020-09-28 06:44:58 +00:00
Stefan Karlsson
625a9352bf 8253638: Cleanup os::reserve_memory and remove MAP_FIXED
Reviewed-by: stuefe, iklam
2020-09-28 06:30:09 +00:00
Nick Gasson
f014854ac7 8253624: gtest fails when run from make with read-only source directory
Reviewed-by: erikj
2020-09-28 01:54:45 +00:00
Patric Hedlin
7817963ce9 8247691: [aarch64] Incorrect handling of VM exceptions in C1 deopt stub/traps
Reviewed-by: eosterlund, aph
2020-09-26 18:24:11 +00:00
Ian Graves
79904c1fa3 8252730: jlink does not create reproducible builds on different servers
Reviewed-by: mchung, alanb
2020-09-26 07:01:22 +00:00
Phil Race
ea7c47c1bb 7179006: [macosx] Print-to-file doesn't work: printing to the default printer instead.
Reviewed-by: serb
2020-09-26 04:15:30 +00:00
Thomas Stuefe
b66fa8f444 8253572: [windows] CDS archive may fail to open with long file names
8249943: [TESTBUG] runtime/cds/serviceability/transformRelatedClasses/TransformInterfaceAndImplementor.java


Reviewed-by: ccheung, iklam
2020-09-26 04:12:54 +00:00
Zhengyu Gu
4167540074 8253647: Remove dead code in os::create_thread() on Linux/BSD
Reviewed-by: stuefe, dholmes
2020-09-25 23:33:42 +00:00
Alexander Matveev
5a57945f1a 8231591: [TESTBUG] Create additional two phase jpackage tests
Reviewed-by: asemenyuk, herrick
2020-09-25 23:02:00 +00:00
Andy Herrick
b159e4ed9e 8253149: Building an installer from invalid app image fails on Window…
Reviewed-by: asemenyuk, almatvee, kizune
2020-09-25 20:22:38 +00:00
Hai-May Chao
0e855fe5fa 8252377: Incorrect encoding for EC AlgorithmIdentifier
Reviewed-by: weijun
2020-09-25 19:47:15 +00:00
Daniel D. Daugherty
9150b902d5 8253659: ProblemList sun/security/ec/TestEC.java on linux-aarch64
Reviewed-by: iklam
2020-09-25 19:38:15 +00:00
Harold Seigel
0187567704 8250984: Memory Docker tests fail on some Linux kernels w/o cgroupv1 …
Reviewed-by: bobv, sgehwolf
2020-09-25 17:16:38 +00:00
Aleksei Efimov
a75edc29c6 8251188: Update LDAP tests not to use wildcard addresses
Reviewed-by: dfuchs
2020-09-25 12:46:08 +00:00
Stefan Karlsson
1f5a033421 8253555: Make ByteSize and WordSize typed scoped enums
Reviewed-by: kbarrett, tschatzl
2020-09-25 10:29:26 +00:00
Aleksey Shipilev
f62eefc02b 8253469: ARM32 Zero: replace usages of __sync_synchronize() with OrderAccess::fence
Reviewed-by: dholmes
2020-09-25 10:14:04 +00:00
Gilles Duboscq
1b79326c05 8242451: ensure semantics of non-capturing lambdas are preserved independent of execution mode
Reviewed-by: mchung
2020-09-25 10:10:36 +00:00
Aleksey Shipilev
dc1ef58351 8253631: Remove unimplemented CompileBroker methods after JEP-165
Reviewed-by: thartmann
2020-09-25 10:10:04 +00:00
Aleksey Shipilev
27d0a70b34 8253633: Remove unimplemented TieredThresholdPolicy::set_carry_if_neccessary
Reviewed-by: thartmann
2020-09-25 10:09:27 +00:00
Stefan Karlsson
e12d94af0b 8253594: Remove CollectedHeap::supports_tlab_allocation
Reviewed-by: sjohanss, pliden
2020-09-25 09:12:38 +00:00
Alexey Bakhtin
cfa3f74931 8245527: LDAP Channel Binding support for Java GSS/Kerberos
Reviewed-by: dfuchs, aefimov, mullan
2020-09-25 07:26:54 +00:00
Thomas Schatzl
37b70282b5 8240556: Abort concurrent mark after effective eager reclamation of humongous objects
Reviewed-by: sjohanss, ayang
2020-09-25 07:11:55 +00:00
Roberto Castaneda Lozano
dcde95ba0d 8253586: C2: Clean up unused PhaseIterGVN::init_worklist()
Remove unused method PhaseIterGVN::init_worklist(Node *).

Reviewed-by: thartmann, chagedorn, neliasso
2020-09-25 06:53:48 +00:00
Anthony Scarpino
0b83fc0150 8235710: Remove the legacy elliptic curves
Reviewed-by: xuelei, erikj
2020-09-25 02:40:36 +00:00
Sergey Bylokhov
8239b67d4f 8253322: Update the specification in the newly added constructors
Reviewed-by: psadhukhan, prr
2020-09-24 22:48:28 +00:00
Erik Joelsson
24a424891c 8253615: Change to Visual Studio 2019 16.7.2 for building on Windows at Oracle
Reviewed-by: mikael
2020-09-24 22:29:25 +00:00
Ioi Lam
8b85c3a6d7 8251261: CDS dumping should not clear states in live classes
Reviewed-by: minqi, ccheung
2020-09-24 19:19:53 +00:00
Igor Ignatyev
9ac162e896 8251999: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/aod
Reviewed-by: shade, sspitsyn
2020-09-24 16:32:05 +00:00
Prasanta Sadhukhan
527a30930e 8252722: More Swing plaf APIs that rely on default constructors
Reviewed-by: prr
2020-09-24 16:19:20 +00:00
Conor Cleary
3495c19d1a 8250855: Address reliance on default constructors in the Java 2D APIs
Reviewed-by: prr, serb
2020-09-24 16:07:24 +00:00
Conor Cleary
a9d04408b3 8250859: Address reliance on default constructors in the Accessibility APIs
Reviewed-by: prr
2020-09-24 16:06:37 +00:00
Yumin Qi
89c5e49ba2 8253500: [REDO] JDK-8253208 Move CDS related code to a separate class
Reviewed-by: mchung, iklam
2020-09-24 15:28:10 +00:00
Coleen Phillimore
bf442c5b9e 8253539: Remove unused JavaThread functions for set_last_Java_fp/pc
Reviewed-by: rehn, dholmes
2020-09-24 10:45:37 +00:00
Aleksey Shipilev
dd2c456eb8 8253583: java/util/StringJoiner tests failing on 32-bit VMs after JDK-8246697
Reviewed-by: alanb, tschatzl
2020-09-24 10:38:12 +00:00
Roland Westrelin
b1e2f026d9 8253524: C2: Refactor code that clones predicates during loop unswitching
Reviewed-by: chagedorn, kvn, thartmann
2020-09-24 10:00:33 +00:00
Aleksey Shipilev
c303fd5de9 8253581: runtime/stringtable/StringTableCleaningTest.java fails on 32-bit platforms
Reviewed-by: kbarrett, tschatzl
2020-09-24 09:19:40 +00:00
Roberto Castaneda Lozano
f3ea0d362f 8252583: Clean up unused phi-to-copy degradation mechanism
Remove unused notion of 'PhiNode-to-copy degradation', where PhiNodes can be
degraded to copies by setting their RegionNode to NULL. Remove corresponding
PhiNode::is_copy() test, which always returned NULL (false). Assert that
PhiNodes have an associated RegionNode in PhiNode::Ideal().

Reviewed-by: thartmann, kvn
2020-09-24 08:10:56 +00:00
Lutz Schmidt
4440bda325 8219586: CodeHeap State Analytics processes dead nmethods
Reviewed-by: thartmann, eosterlund
2020-09-24 07:48:48 +00:00
Kim Barrett
154b8cfcfd 8253014: OopStorage bulk release logs entries multiple times
Remove excess logging.

Reviewed-by: shade, tschatzl
2020-09-24 07:07:47 +00:00
Joshua Zhu
ba174af344 8253048: AArch64: When CallLeaf, no need to preserve callee-saved registers in caller
Reviewed-by: adinn, aph
2020-09-24 00:55:27 +00:00
Alex Menkov
3320fc0f52 8253372: [TESTBUG] update tests which require jvmti - hotspot
Reviewed-by: sspitsyn, iklam
2020-09-23 21:11:31 +00:00
Jonathan Gibbons
f765a7f513 8252712: move doclint to jdk.javadoc module
Reviewed-by: hannesw
2020-09-23 19:55:08 +00:00
Aleksey Shipilev
c21690b518 8253464: ARM32 Zero: atomic_copy64 is incorrect, breaking volatile stores
Reviewed-by: aph
2020-09-23 16:53:10 +00:00
Lutz Schmidt
0bc01da702 8250635: MethodArityHistogram should use Compile_lock in favour of fancy checks
Reviewed-by: mdoerr, thartmann
2020-09-23 15:37:57 +00:00
Lance Andersen
812b39f574 8252739: Deflater.setDictionary(byte[], int off, int len) ignores the starting offset for the dictionary
Reviewed-by: uschindler, alanb
2020-09-23 14:21:45 +00:00
Claes Redestad
5f1d6120a5 8253397: Ensure LogTag types are sorted
Reviewed-by: dholmes, kbarrett, tschatzl
2020-09-23 14:14:52 +00:00
Coleen Phillimore
b8ea80af33 8253457: Remove unimplemented register stack functions
Reviewed-by: iklam, dholmes, shade
2020-09-23 11:29:58 +00:00
Stefan Karlsson
e4d0e5af4d 8253516: ZGC: Remove card table functions
Reviewed-by: tschatzl, eosterlund
2020-09-23 08:26:10 +00:00
Roland Westrelin
3fe5886baf 8252696: Loop unswitching may cause out of bound array load to be executed
Reviewed-by: neliasso, chagedorn
2020-09-23 07:34:56 +00:00
Richard Reingruber
226faa5503 8253241: Update comment on java_suspend_self_with_safepoint_check()
Reviewed-by: dcubed, dholmes
2020-09-23 07:17:30 +00:00
Aleksey Shipilev
bd6797543f 8253349: Remove unimplemented SharedRuntime::native_method_throw_unsupported_operation_exception_entry
Reviewed-by: adityam, dholmes
2020-09-23 06:36:35 +00:00
Naoto Sato
bddb82255c 8253240: No javadoc for DecimalFormatSymbols.hashCode()
Reviewed-by: rriggs, lancea
2020-09-22 22:59:07 +00:00
Ioi Lam
c68a31ddce 8253499: Problem list runtime/cds/DeterministicDump.java
Reviewed-by: dcubed
2020-09-22 22:20:46 +00:00
Phil Race
93a2018d1e 8252195: AWT Accessibility API nested classes rely on default constructors
Reviewed-by: serb
2020-09-22 22:14:51 +00:00
Xin Liu
426c9049ce 8253392: remove PhaseCCP_DCE declaration
remove the deprecated declaration PhaseCCP_DCE

Reviewed-by: neliasso, phh
2020-09-22 20:24:05 +00:00
Ioi Lam
65af837391 8253496: [BACKOUT] JDK-8253208 Move CDS related code to a separate class
Reviewed-by: eosterlund, dcubed
2020-09-22 20:15:01 +00:00
Zhengyu Gu
581f0f2643 8253493: Shenandoah: Remove ShenandoahSerialRoot definition
Reviewed-by: rkennke
2020-09-22 19:41:56 +00:00
Yumin Qi
7b860120e1 8253492: Miss comma after second copyright year in FDBigInteger.java
Reviewed-by: ccheung
2020-09-22 18:18:58 +00:00
Doug Simon
0f26ab16dd 8252518: cache result of CompilerToVM.getComponentType
Reviewed-by: kvn, never
2020-09-22 16:55:04 +00:00
Yumin Qi
c1df13b855 8253208: Move CDS related code to a separate class
Reviewed-by: mchung, iklam
2020-09-22 16:12:05 +00:00
Vladimir Kozlov
24e12b3811 8247251: Assert (_pcs_length == 0 || last_pc()->pc_offset() < pc_offs…
Co-authored-by: Tom Rodriguez <never@openjdk.org>
Reviewed-by: never
2020-09-22 15:41:12 +00:00
Zhengyu Gu
3d5fea1f07 8253434: Shenandoah: Cleanup ShenandoahRootScanner
Reviewed-by: rkennke
2020-09-22 14:03:25 +00:00
Zhengyu Gu
8c02bdbf13 8252921: NMT overwrite memory type for region assert when building dynamic archive
Reviewed-by: minqi, iklam, dholmes
2020-09-22 11:58:03 +00:00
Roman Kennke
0c287de4f6 8253421: Initialize JFR trace-IDs with zero
Reviewed-by: mgronlun, egahlin
2020-09-22 10:53:00 +00:00
skodanda
aa3862403b 8248352: [TEST_BUG] Test test/jdk/java/awt/font/TextLayout/ArabicDiacriticTest.java can leave frame open
Reviewed-by: prr, serb, aivanov
2020-09-22 09:59:10 +00:00
Patrick Concannon
ae20dd6b9b 8251496: Fix doclint warnings in jdk.net.httpserver
Reviewed-by: dfuchs, rriggs, chegar
2020-09-22 08:56:15 +00:00
Aleksey Shipilev
b9729cb432 8253284: Zero OrderAccess barrier mappings are incorrect
Reviewed-by: dholmes, aph, andrew
2020-09-22 08:33:42 +00:00
Ioi Lam
284bbf02dd 8253079: DeterministicDump.java fails due to garbage in structure padding
Reviewed-by: minqi, jiefu, shade
2020-09-22 08:04:26 +00:00
Aleksey Shipilev
a4affd5b04 8253412: Unsupported GC options passed in JAVA_TOOL_OPTIONS are silently ignored
Reviewed-by: pliden
2020-09-22 07:58:45 +00:00
Monica Beckwith
96f722cf63 8252114: Windows-AArch64: Enable and test ZGC and ShenandoahGC
Reviewed-by: shade, stefank, rkennke
2020-09-22 07:09:48 +00:00
Jamsheed Mohammed C M
f7b1ce457a 8253447: Remove buggy code introduced by 8249451
Reviewed-by: iveresov, eosterlund
2020-09-22 06:26:32 +00:00
Ioi Lam
282b9dcfdc 8081833: Clean up JVMFlag getter/setter code
Reviewed-by: gziemski, coleenp
2020-09-22 06:04:31 +00:00
Kim Barrett
0e98fc1ccd 8253237: [REDO] Improve large object handling during evacuation
8253238: [REDO] Improve object array chunking test in G1's copy_to_survivor_space
8253236: [REDO] Investigate fast-path for scanning only objects with references during gc

Generate multiple partial array tasks for large objArrays.

Reviewed-by: sjohanss, ayang, tschatzl
2020-09-22 05:14:06 +00:00
Alex Menkov
d1f9b8a8b5 8234808: jdb quoted option parsing broken
Reviewed-by: cjplummer, sspitsyn
2020-09-22 00:05:14 +00:00
Daniel D. Daugherty
d8921ed573 8247281: migrate ObjectMonitor::_object to OopStorage
Co-authored-by: Erik Österlund <erik.osterlund@oracle.com>
Co-authored-by: Daniel Daugherty <daniel.daugherty@oracle.com>
Reviewed-by: eosterlund, coleenp, dholmes, stefank, kbarrett, rkennke, sspitsyn
2020-09-21 22:12:07 +00:00
Daniil Titov
f800af978c 8241390: 'Deadlock' with VM_RedefineClasses::lock_classes()
Reviewed-by: coleenp, sspitsyn
2020-09-21 19:32:24 +00:00
Kim Barrett
2e30ff61b0 8253311: Cleanup relocInfo constructors
Reviewed-by: kvn, thartmann
2020-09-21 14:50:11 +00:00
Andy Herrick
43be5a3cb6 8230652: Improve verbose output
Reviewed-by: almatvee, asemenyuk, kizune
2020-09-21 13:08:19 +00:00
Stefan Karlsson
5a7390b62a 8253418: ZGC: Use pd_ prefix to denote platform dependent code
Reviewed-by: pliden, eosterlund
2020-09-21 13:04:10 +00:00
Stefan Karlsson
7e49eaecbc 8253407: Move max_pow2 from test to src
Reviewed-by: kbarrett, tschatzl
2020-09-21 13:02:04 +00:00
Stefan Karlsson
fbfb62dffe 8253332: ZGC: Make heap views reservation platform independent
Reviewed-by: shade, pliden
2020-09-21 12:48:18 +00:00
Naoto Sato
dad6edbf83 8253321: java.util.Locale.LanguageRange#equals is inconsistent after calling hashCode
Reviewed-by: joehw, rriggs
2020-09-21 12:33:00 +00:00
Stefan Johansson
edc14f92d9 8253286: Use expand_exact() instead of expand_at() for fixed requests in G1
Reviewed-by: tschatzl, ayang
2020-09-21 12:02:33 +00:00
Thomas Schatzl
bba948f0ff 8253411: [BACKOUT] [REDO] G1 incorrectly limiting young gen size when using the reserve can result in repeated full gcs
Reviewed-by: kbarrett, sjohanss
2020-09-21 11:29:41 +00:00
Thomas Schatzl
955c2e6292 8253303: G1: Move static initialization of G1FromCardCache to a proper location
Reviewed-by: ayang, sjohanss
2020-09-21 11:28:24 +00:00
Lin Zang
34ec1bedd1 8252104: parallel heap inspection for ShenandoahHeap
Reviewed-by: shade, zgu
2020-09-21 07:50:52 +00:00
Junyuan Zheng
fdce055a9b 8253253: Binutils tar ball extension update to gz
Reviewed-by: erikj
2020-09-21 05:57:00 +00:00
Aleksey Shipilev
388c8f2538 8253348: Remove unimplemented JNIHandles::initialize
Reviewed-by: zgu
2020-09-21 05:00:07 +00:00
Kim Barrett
bca9e55b1e 8253167: ARM32 builds fail after JDK-8247910
8213483: ARM32: runtime/ErrorHandling/ShowRegistersOnAssertTest.java jtreg test fail

Removed platform-dependent definitions of BREAKPOINT as asm(breakpoint instruction).

Reviewed-by: coleenp, mikael, bulasevich
2020-09-21 00:31:26 +00:00
Phil Race
cc7521c452 8252199: Reimplement support of Type 1 fonts without MappedByteBuffer
Reviewed-by: serb, jdv
2020-09-20 16:17:30 +00:00
Sergey Bylokhov
3d88d387c3 8252070: Some platform-specific BLIT optimizations are not effective
Reviewed-by: prr, jdv
2020-09-20 04:33:27 +00:00
Sergey Bylokhov
83b05373a1 8253291: bug7072653.java still failed "Popup window height ... is wrong"
Reviewed-by: prr
2020-09-19 22:22:43 +00:00
Phil Race
d27835b34e 8249142: java/awt/FontClass/CreateFont/DeleteFont.sh is unstable
Reviewed-by: serb
2020-09-19 17:36:12 +00:00
Vladimir Kozlov
1438ce097f 8252188: Crash in OrINode::Ideal(PhaseGVN*, bool)+0x8b9
Reviewed-by: vlivanov, thartmann, jbhateja
2020-09-19 16:06:35 +00:00
Boris Ulasevich
224a30f12c 8252311: AArch64: save two words in itable lookup stub
Reviewed-by: adinn, aph
2020-09-19 07:47:37 +00:00
Sergey Bylokhov
22f7af7fcf 8253317: The "com/apple/eawt" is missed in the "othervm.dirs" config option
Reviewed-by: shade
2020-09-19 02:22:26 +00:00
Sergey Tsypanov
f55dd9d40e 8251548: Remove unnecessary explicit initialization of volatile variables in security-libs code
Reviewed-by: mullan
2020-09-18 21:26:59 +00:00
Zhengyu Gu
d35b117956 8253361: Shenandoah: runtime barrier does not honor ShenandoahSelfFixing flag
Reviewed-by: rkennke
2020-09-18 20:15:42 +00:00
Kim Barrett
f37c34d32e 8253270: Limit fastdebug inlining in G1 evacuation
Reviewed-by: tschatzl, sjohanss, ayang
2020-09-18 19:29:18 +00:00
Naoto Sato
89044200cd 8253153: Mentioning of "hour-of-minute" in java.time.temporal.TemporalField JavaDoc
Reviewed-by: joehw, lancea, rriggs
2020-09-18 15:40:37 +00:00
Matthias Baesken
52c28b8692 8253239: Disable VS warning C4307
Reviewed-by: mdoerr, erikj
2020-09-18 14:06:29 +00:00
Aleksey Shipilev
05572e8651 8253350: Remove unimplemented SharedRuntime::clean_*_entry
Reviewed-by: zgu, coleenp
2020-09-18 13:30:48 +00:00
Aleksey Shipilev
43019a0e6b 8253345: Remove unimplemented Arguments::lookup_logging_aliases
Reviewed-by: tschatzl
2020-09-18 13:26:43 +00:00
Aleksey Shipilev
6e9efffced 8253344: Remove unimplemented Arguments::check_gc_consistency
Reviewed-by: tschatzl, coleenp
2020-09-18 13:25:03 +00:00
Pavel Rappo
83b2411fd1 8253342: Fix typos in String.transform
Reviewed-by: jlaskey
2020-09-18 10:45:28 +00:00
Ivan Walulya
86a16400bd 8244505: G1 pause time ratio calculation does not consider Remark/Cleanup pauses
Reviewed-by: tschatzl, sjohanss
2020-09-18 09:35:34 +00:00
Aleksey Shipilev
11c4ea963c 8253278: Refactor/cleanup oopDesc::*_klass_addr
Reviewed-by: coleenp, stefank
2020-09-18 08:22:54 +00:00
Jamsheed Mohammed C M
73c9088b81 8249451: Unconditional exceptions clearing logic in compiler code should honor Async Exceptions.
Reviewed-by: dholmes, iveresov
2020-09-18 05:48:14 +00:00
Prasanta Sadhukhan
3ef2efb1f4 8252721: Nested classes in Swing APIs rely on default constructors
Reviewed-by: prr
2020-09-18 03:57:08 +00:00
Sergey Bylokhov
fd380d75b0 8253274: The CycleDMImagetest brokes the system
Reviewed-by: prr
2020-09-18 01:33:03 +00:00
Ioi Lam
2c3a37c6d7 8253314: precompiled.hpp missing from vmIntrinsics.cpp
Reviewed-by: mikael
2020-09-17 22:39:40 +00:00
Chris Plummer
d4269fd520 8253028: SA core file tests still time out on OSX with "java.io.IOException: App waiting timeout"
Reviewed-by: amenkov
2020-09-17 22:17:36 +00:00
Ioi Lam
6c3e483b56 8253313: xmlstream.hpp missing from vmIntrinsics.cpp
Reviewed-by: mikael
2020-09-17 21:49:53 +00:00
Ioi Lam
0a1dc50f54 8253271: vm_version_x86.hpp should not include globals_extension.hpp
Reviewed-by: dholmes
2020-09-17 21:32:22 +00:00
John Tortugo
1e39649907 8243066: Move VM_INTRINSICS_DO into its own vmIntrinsics.hpp file
Reviewed-by: iklam, vlivanov
2020-09-17 21:20:20 +00:00
Yumin Qi
12dfe1c9b6 8253262: Allocate in DumpRegion is not thread safe
Reviewed-by: ccheung
2020-09-17 16:56:37 +00:00
Thomas Schatzl
3570f5a924 8252041: G1: Fix incorrect uses of HeapRegionManager::max_length
Reviewed-by: sjohanss, kbarrett
2020-09-17 15:40:54 +00:00
Andrew Leonard
24765e4559 8253285: Some java/util/StringJoiner tests do not explicitly specify required -XX:+CompactStrings
Reviewed-by: rriggs, jlaskey
2020-09-17 14:43:51 +00:00
Galder Zamarreño
81e2cf82d9 8251397: NPE on ClassValue.ClassValueMap.cacheArray
Add release fence to ClassValueMap constructor.

* Release fence guarantees that cacheArray field will published
with a non-null value.
* Without this fix, CacheValueMap.cacheArray can sometimes be
seen as null.

Reviewed-by: shade, psandoz
2020-09-17 13:42:15 +00:00
David M. Lloyd
cca3a26e43 8252996: Thread safety problem in java.net.ProxySelector
Reviewed-by: alanb
2020-09-17 13:40:29 +00:00
Richard Reingruber
a4c6a99e61 8252593: [TESTBUG] serviceability/jvmti/GetLocalVariable/GetLocalWithoutSuspendTest.java failed with JVMTI_ERROR_INVALID_SLOT
Reviewed-by: sspitsyn, cjplummer
2020-09-17 13:08:43 +00:00
Ekaterina Vergizova
a67f890fc6 8253050: jfr disassemble command processes --max-chunks incorrectly
Reviewed-by: egahlin
2020-09-17 13:03:26 +00:00
Per Lidén
f972155d63 8252196: ZGC: TestUncommit.java fails due to "Exception: Uncommitted too fast" again(2)
Reviewed-by: stefank, eosterlund
2020-09-17 10:05:43 +00:00
Aleksey Shipilev
a9993f9464 8253275: Remove unused methods after CMS removal
Reviewed-by: pliden, tschatzl
2020-09-17 10:01:34 +00:00
Ivan Walulya
4ac6934965 8253232: G1Analytics::compute_pause_time_ratios() uses wrong pause times in calculation
Reviewed-by: tschatzl, kbarrett
2020-09-17 07:58:30 +00:00
Rafael Winterhalter
53a4ef2670 8202473: A type variable with multiple bounds does not correctly place type annotation
Reviewed-by: jfranck
2020-09-17 07:26:49 +00:00
Jayathirth D V
b87a159967 8252100: NumberOverflow in class MemoryCache
Reviewed-by: prr, serb
2020-09-17 04:31:11 +00:00
Ioi Lam
9a7dcdcdba 8253261: Disable CDS full module graph until JDK-8253081 is fixed
Reviewed-by: ccheung
2020-09-16 22:43:32 +00:00
Sergey Bylokhov
1c84cfa236 8253130: bug7072653.java failed "Popup window height ... is wrong"
Reviewed-by: psadhukhan
2020-09-16 20:23:04 +00:00
Harold Seigel
ce93cbce77 8253125: vmTestbase/nsk/stress/stack/stack017.java timed out
Reviewed-by: dcubed
2020-09-16 18:58:06 +00:00
Zhengyu Gu
d250f9e08c 8253244: Shenandoah: cleanup includes in Shenandoah root processor files
Reviewed-by: shade
2020-09-16 17:19:28 +00:00
Igor Ignatyev
d38c97dd52 8253207: enable problemlists jcheck's check
Reviewed-by: erikj
2020-09-16 17:18:27 +00:00
Jaikiran Pai
671dfba802 6714834: JarFile.getManifest() leaves an open InputStream as an undocumented side effect
Reviewed-by: lancea, alanb
2020-09-16 15:13:32 +00:00
Jaikiran Pai
e5866aa756 8244706: GZIP "OS" header flag hard-coded to 0 instead of 255 (RFC 1952 non-compliance)
Reviewed-by: lancea, bchristi
2020-09-16 15:10:57 +00:00
Kevin Rushforth
10867134fd 8253206: Enforce whitespace checking for additional source files
Reviewed-by: prr, erikj, jdv
2020-09-16 14:02:22 +00:00
Stefan Karlsson
e2196f8882 8253162: Make frame::oops_do const
Reviewed-by: kbarrett, coleenp, pliden
2020-09-16 12:21:39 +00:00
Aleksey Shipilev
300b8517c3 8253226: Shenandoah: remove unimplemented ShenandoahStrDedupQueue::verify
Reviewed-by: rkennke, zgu
2020-09-16 12:17:22 +00:00
Aleksey Shipilev
c781594bfe 8253224: Shenandoah: ShenandoahStrDedupQueue destructor calls virtual num_queues()
Reviewed-by: rkennke, zgu
2020-09-16 12:16:51 +00:00
Stefan Karlsson
33f8e7022c 8253173: Print heap before and after GC lacks a newline
Reviewed-by: tschatzl, pliden, rkennke, sjohanss
2020-09-16 11:53:58 +00:00
Aleksey Shipilev
f509eb069d 8253219: Epsilon: clean up unnecessary includes
Reviewed-by: tschatzl, kbarrett
2020-09-16 11:17:51 +00:00
Aleksey Shipilev
7f9b5d9e32 8253220: Epsilon: clean up unused code/declarations
Reviewed-by: tschatzl
2020-09-16 11:15:40 +00:00
Julia Boes
e0cf023263 8245309: Re-examine use of ThreadLocalCoders in sun.net.www.ParseUtil
Reviewed-by: shade, dfuchs, alanb, chegar
2020-09-16 10:49:13 +00:00
Prasanta Sadhukhan
60c4902f61 8253016: Box.Filler components should be unfocusable by default
Reviewed-by: prr, serb
2020-09-16 09:47:13 +00:00
Aleksey Shipilev
dd43533165 8253222: Shenandoah: unused AlwaysTrueClosure after JDK-8246591
Reviewed-by: rkennke
2020-09-16 09:25:58 +00:00
Roberto Castaneda Lozano
efe3540d8f 8252966: CI: Remove KILL_COMPILE_ON_FATAL_ and KILL_COMPILE_ON_ANY macros
Remove the KILL_COMPILE_ON_FATAL_ and KILL_COMPILE_ON_ANY macros, replacing uses
of KILL_COMPILE_ON_FATAL_ with CHECK_AND_CLEAR_. Unlike KILL_COMPILE_ON_FATAL_,
CHECK_AND_CLEAR_ ignores ThreadDeath exceptions, which compiler threads should
not receive anyway.

Reviewed-by: vlivanov, neliasso
2020-09-16 06:47:45 +00:00
Cesar
fbf4699d23 8253040: Remove unused Matcher::regnum_to_fpu_offset()
Reviewed-by: adityam, vlivanov
2020-09-16 06:41:37 +00:00
Aleksey Shipilev
7c564e13ee 8253146: C2: Purge unused MachCallNode::_arg_size field
Reviewed-by: thartmann, adityam
2020-09-16 06:38:53 +00:00
Cesar
2caa20a76d 8250668: Clean up method_oop names in adlc
Reviewed-by: coleenp, adityam, thartmann
2020-09-16 05:54:16 +00:00
Naoto Sato
57f92d23b1 8220483: Calendar.setTime(Date date) throws NPE with Date date = null
Reviewed-by: lancea, joehw
2020-09-15 22:14:14 +00:00
Sergey Bylokhov
65bfe0928a 8253147: The javax/swing/JPopupMenu/7154841/bug7154841.java fail on big screens
Reviewed-by: prr
2020-09-15 21:32:56 +00:00
Joe Darcy
fc36328d4f 8253034: Update symbol generation to accomodate Git as the SCM
Reviewed-by: erikj, adityam
2020-09-15 20:41:43 +00:00
Valerie Peng
40206822f4 8172366: Support SHA-3 based signatures
Enhance default JDK providers including SUN, SunRsaSign, and SunEC, with signatures using SHA-3 family of digests.

Reviewed-by: xuelei
2020-09-15 20:28:48 +00:00
Thomas Schatzl
46598c8644 8253177: outputStream not declared in markWord.hpp
Reviewed-by: iklam
2020-09-15 18:59:16 +00:00
Joe Wang
5191f3159a 8251495: Remove the implNote in the DOM package description added by JDK-8249643
Remove the implNote from the package description added by JDK-8249643.

Reviewed-by: lancea, smarks, naoto, alanb
2020-09-15 16:39:48 +00:00
Daniil Titov
65d6c10185 8252933: com.sun.tools.jdi.ObjectReferenceImpl#validateAssignment always requests referenceType
Reviewed-by: cjplummer, amenkov
2020-09-15 15:29:12 +00:00
Kim Barrett
74851c507b 8253169: [BACKOUT] Improve large object handling during evacuation
Revert "8027545: Improve object array chunking test in G1's copy_to_survivor_space"
Revert "8158045: Improve large object handling during evacuation"
Revert "8027761: Investigate fast-path for scanning only objects with references during gc"

Reviewed-by: tschatzl, sjohanss
2020-09-15 14:33:04 +00:00
Christoph Langer
b5620a36f4 8253155: Minor cleanups and Javadoc fixes for LdapDnsProvider of java.naming
Reviewed-by: dfuchs, aefimov, alanb, vtewari
2020-09-15 13:50:37 +00:00
Jorn Vernee
d219d8b987 8253002: Remove the unused SafePointNode::_oop_map field
Reviewed-by: thartmann
2020-09-15 12:21:45 +00:00
Kim Barrett
dafcf1056f 8027545: Improve object array chunking test in G1's copy_to_survivor_space
8158045: Improve large object handling during evacuation
8027761: Investigate fast-path for scanning only objects with references during gc

Generate multiple partial array tasks for large objArrays.

Reviewed-by: sjohanss, ayang, tschatzl
2020-09-15 12:18:24 +00:00
Kim Barrett
7eb4d4aa01 8247909: Improve PrimitiveConversions::cast using C++14
Reimpliment PrimitiveConversions::cast, with some cases now constexpr.
<!-- Anything below this marker will be automatically updated, please do not edit manually! -->
---------
### Progress
- [x] Change must not contain extraneous whitespace
- [x] Commit message must refer to an issue
- [ ] Change must be properly reviewed

### Issue
* [JDK-8247909](https://bugs.openjdk.java.net/browse/JDK-8247909): Improve PrimitiveConversions::cast using C++14


### Download
`$ git fetch https://git.openjdk.java.net/jdk pull/143/head:pull/143`
`$ git checkout pull/143`

Reviewed-by: dholmes, stefank
2020-09-15 10:52:50 +00:00
Thomas Schatzl
fa30241ddb 8249676: [REDO] G1 incorrectly limiting young gen size when using the reserve can result in repeated full gcs
Reviewed-by: sjohanss, kbarrett
2020-09-15 10:19:36 +00:00
Kim Barrett
9ea43a9213 8253148: Fix terminology in align_down comment
Change lognot => logical_not in comment

Reviewed-by: shade
2020-09-15 07:07:58 +00:00
Aleksey Shipilev
3f455f09dc 8253089: Windows (MSVC 2017) build fails after JDK-8243208
Reviewed-by: mdoerr, goetz, iklam
2020-09-15 05:14:06 +00:00
Kim Barrett
af8c678038 8247910: Improve alignment and power-of-2 utilities using C++14
8238956: Replace powerOfTwo::max_value with std::numeric_limits

Reviewed-by: tschatzl, stefank
2020-09-15 04:34:49 +00:00
Ioi Lam
70cc7fc198 8253098: Archived full module graph should be disabled if CDS heap cannot be mapped
Reviewed-by: ccheung, dholmes
2020-09-15 02:37:19 +00:00
Alexander Matveev
ac9d1b08ee 8223187: Remove setLocale() call in jpackage native launcher
Reviewed-by: kcr, herrick, naoto
2020-09-14 20:41:50 +00:00
Martin Doerr
9c24a5635e 8253029: [PPC64] Remove obsolete Power6 code
Reviewed-by: dholmes, lucy
2020-09-14 17:34:08 +00:00
Pavel Rappo
e6a493ab88 8252882: Clean up jdk.javadoc and the related parts of jdk.compiler
Reviewed-by: vromero
2020-09-14 17:21:42 +00:00
Jan Lahoda
68da63dcde 8240658: Code completion not working for lambdas in method invocations that require type inference
Reviewed-by: vromero
2020-09-14 08:13:10 +00:00
Doug Simon
b05290aaea 8252898: remove bulk registration of JFR CompilerPhaseType names
Reviewed-by: kvn, jcm
2020-09-14 07:48:59 +00:00
Jie Fu
779d2c34ae 8253084: Zero VM is broken after JDK-8252689
Reviewed-by: iklam, dholmes
2020-09-14 07:21:04 +00:00
Per Lidén
07da3a1808 8253030: ZGC: Change ZMarkCompleteTimeout unit to microseconds
Reviewed-by: kbarrett, stefank, eosterlund
2020-09-14 07:06:20 +00:00
Yumin Qi
f978f6fe8a 8252689: Classes are loaded from jrt:/java.base even when CDS is used
Reviewed-by: iklam, ccheung
2020-09-14 03:39:13 +00:00
Ioi Lam
c5e63b639e 8248186: Move CDS C++ vtable code to cppVtables.cpp
Reviewed-by: coleenp
2020-09-13 19:20:45 +00:00
Ioi Lam
03a4df0acd 8244778: Archive full module graph in CDS
Reviewed-by: erikj, coleenp, lfoltan, redestad, alanb, mchung
2020-09-13 14:45:12 +00:00
Doug Simon
998ce78e53 8252543: [JVMCI] Libgraal can deadlock in blocking compilation mode
Reviewed-by: kvn
2020-09-12 05:26:16 +00:00
Stuart Marks
b1b0f0b2cc 8253066: typo in Stream.mapMulti
Reviewed-by: darcy, lancea
2020-09-11 23:11:10 +00:00
Leonid Mesnik
306b166336 8253033: CheckUnhandledOops check fails in ThreadSnapshot::initialize…
Reviewed-by: coleenp, dholmes
2020-09-11 23:03:38 +00:00
Igor Ignatyev
5c0d985abf 8253060: remove test/hotspot/jtreg/test_env.sh
Reviewed-by: dcubed
2020-09-11 17:22:47 +00:00
Kevin Rushforth
952518640a 8253031: git jcheck complains about invalid tags in jdk repo after fix for JDK-8252844
Reviewed-by: ehelin, erikj
2020-09-11 15:17:51 +00:00
Jonathan Gibbons
7f27d0b013 8236142: DocTrees should provide getCharacters(EntityTree)
Reviewed-by: prappo
2020-09-11 14:47:15 +00:00
Daniel D. Daugherty
e7a1b9bf81 8252981: ObjectMonitor::object() cleanup changes extracted from JDK-8247281
Co-authored-by: Erik Österlund <erik.osterlund@oracle.com>
Co-authored-by: Daniel Daugherty <daniel.daugherty@oracle.com>
Reviewed-by: rehn, coleenp, eosterlund
2020-09-11 13:35:34 +00:00
Roberto Castaneda Lozano
040c8f58e5 8250914: Matcher::stack_direction() is unused
Remove unused Matcher::stack_direction() together with related ADL entries and
ADLC support.

Reviewed-by: vlivanov, thartmann
2020-09-11 11:57:46 +00:00
Roberto Castaneda Lozano
9687dcabb6 8252494: C2: TypeAryPtr::cast_to_autobox_cache does not use ptr_type
Remove dead definition of ptr_type in TypeAryPtr::cast_to_autobox_cache. Also remove
unnecessary cache parameter (always true) for simplicity.

Reviewed-by: shade, vlivanov, thartmann
2020-09-11 11:55:30 +00:00
Robbin Ehn
8777ded123 8253008: Remove develop flags TraceLongCompiles/LongCompileThreshold
Reviewed-by: shade, dholmes, adityam
2020-09-11 07:23:31 +00:00
Robbin Ehn
c7062dc22b 8253026: Remove dummy call to gc alot from VM Thread
Reviewed-by: coleenp, dholmes
2020-09-11 07:07:22 +00:00
Ioi Lam
5144190ea0 8243208: Clean up JVMFlag implementation
Reviewed-by: dholmes, coleenp, gziemski
2020-09-11 04:05:18 +00:00
David Holmes
976acddeb5 8252406: Introduce Thread::as_Java_thread() convenience function
Reviewed-by: shade, coleenp, kbarrett, dcubed
2020-09-11 01:31:32 +00:00
Sergey Bylokhov
488022689f 8171303: sun/java2d/pipe/InterpolationQualityTest.java fails on Windows & Linux
Reviewed-by: prr, psadhukhan, kcr
2020-09-10 21:47:05 +00:00
Sergey Bylokhov
8da6c8d6aa 7183828: Invalid Image Variant when using anything other than BufferedImage
Reviewed-by: prr
2020-09-10 21:26:10 +00:00
Sergey Bylokhov
ff21696bc0 8252817: Cleanup the classes in the java.awt.color package
Reviewed-by: jdv, pbansal
2020-09-10 19:26:39 +00:00
Mandy Chung
44a74dac95 8252919: JDK built with --enable-cds=no fails with NoClassDefFoundError
Reviewed-by: minqi, sundar, alanb, redestad
2020-09-10 16:04:58 +00:00
Roger Riggs
418e4a259c 8252830: Correct missing javadoc comments in java.rmi module
Reviewed-by: dfuchs, lancea, smarks, chegar
2020-09-10 14:38:04 +00:00
Igor Ignatyev
41d29b752b 8252774: remove jdk.test.lib.FileInstaller action from graalunit tests
Reviewed-by: shade, epavlova
2020-09-10 13:25:29 +00:00
Igor Ignatyev
5b30a83133 8252778: remove jdk.test.lib.FileInstaller action from compiler/c2/stemmer test
Reviewed-by: shade, epavlova
2020-09-10 13:23:01 +00:00
Thomas Schatzl
8db333531f 8247928: Refactor G1ConcurrentMarkThread for mark abort
Reviewed-by: sjohanss, kbarrett
2020-09-10 11:06:39 +00:00
Goetz Lindenmaier
7ccf435825 8252846: Fix ppc/s390 after "8231441: AArch64: Initial SVE backend su…
Reviewed-by: shade
2020-09-10 09:16:23 +00:00
Kim Barrett
d236cf4bec 8252995: Non-PCH builds broken by JDK-8250961
Reviewed-by: sjohanss, stefank
2020-09-10 08:48:50 +00:00
Aditya Mandaleeka
6a005343b4 8250961: Move Universe::update_heap_info_at_gc to CollectedHeap
Reviewed-by: stefank, kbarrett
2020-09-10 07:09:19 +00:00
Tobias Hartmann
f78f780570 8252889: Obsolete -XX:+InsertMemBarAfterArraycopy
Reviewed-by: shade, adityam
2020-09-10 05:41:51 +00:00
Daniel D. Daugherty
f9339616e1 8252980: comment only changes extracted from JDK-8247281
Reviewed-by: iklam, dholmes
2020-09-09 23:35:17 +00:00
Vicente Romero
433394203d 8250217: com.sun.tools.javac.api.JavacTaskImpl swallows compiler exceptions potentially producing false positive test results
Reviewed-by: jlahoda
2020-09-09 14:05:00 +00:00
Severin Gehwolf
5166094647 8252957: Wrong comment in CgroupV1Subsystem::cpu_quota
The comment is wrong. The 'us' in 'cpu.cfs_quota_us' stands for
microseconds, which is read verbatim. Similarly for cgroups v2
all units in 'cpu.max' are in microseconds.

Reviewed-by: shade, hseigel
2020-09-09 13:53:10 +00:00
Prasanta Sadhukhan
6329de4504 8248532: Every time I change keyboard language at my MacBook, Java crashes
Reviewed-by: serb, prr
2020-09-09 13:43:06 +00:00
Robbin Ehn
d56096471b 8252794: Creation of JNIMethodBlock should be done with a leaf lock
Reviewed-by: coleenp, dholmes
2020-09-09 13:21:01 +00:00
Jan Lahoda
5fef8ddaff 8235229: Compilation against a modular, multi-release JAR erroneous with --release
Reviewed-by: vromero
2020-09-09 13:03:00 +00:00
Aleksey Shipilev
382b8fedf5 8240751: Shenandoah: fold ShenandoahTracer definition
Reviewed-by: adityam, zgu
2020-09-09 12:10:36 +00:00
Jan Lahoda
c98417ebca 8250840: some tests use --enable-preview unnecessarily
Reviewed-by: vromero
2020-09-09 07:51:43 +00:00
Tobias Hartmann
c655b703a9 8252916: Newline in object field values list of ScopeDesc should be removed
Reviewed-by: vlivanov
2020-09-09 05:57:41 +00:00
Stuart Marks
30fa8d5d34 8157729: examples in LinkedHashMap and LinkedHashSet class doc use raw types
Reviewed-by: darcy, naoto, lancea
2020-09-09 00:43:48 +00:00
Christoph Göttschkes
26c7218ab9 8252773: [TESTBUG] serviceability/jvmti/GetObjectSizeOverflow fails due to OOM conditions
Reviewed-by: cjplummer, lmesnik
2020-09-08 22:59:41 +00:00
Calvin Cheung
e20004d7c1 8249625: cleanup unused SkippedException in the tests under cds/appcds/dynamicArchive/methodHandles
Reviewed-by: iklam
2020-09-08 19:00:50 +00:00
Ivan Walulya
63a5a12949 8252658: G1: Do not consider G1HeapWastePercent during region selection within a gc
Reviewed-by: tschatzl, sjohanss
2020-09-08 18:39:56 +00:00
Ioi Lam
001e51d965 8250563: Add KVHashtable::add_if_absent
Reviewed-by: ccheung, coleenp
2020-09-08 18:27:59 +00:00
Aleksey Shipilev
91a20ca7e5 8252695: Shenandoah: clean up Graal enabled/disabled filter in tests
Reviewed-by: zgu
2020-09-08 17:42:38 +00:00
Robbin Ehn
704f784c88 8252871: fatal error: must own lock JvmtiThreadState_lock
8252816: JvmtiEnvThreadState::clear_to_frame_pop() is not used

Reviewed-by: ysuenaga, dholmes
2020-09-08 13:45:19 +00:00
Robin Westberg
bf5da0c778 8252897: Minor .jcheck/conf update
Reviewed-by: ehelin
2020-09-08 12:04:44 +00:00
Albert Mingkun Yang
76002747d5 8252859: Inconsistent use of alpha in class AbsSeq
Reviewed-by: tschatzl, sjohanss
2020-09-08 11:17:09 +00:00
Nick Gasson
4fb1980fd0 8252853: AArch64: gc/shenandoah/TestVerifyJCStress.java fails intermittently with C1
Reviewed-by: shade
2020-09-08 10:17:25 +00:00
Christoph Göttschkes
73ba3ae1f5 8252500: ZGC on aarch64: Unable to allocate heap for certain Linux kernel configurations
Reviewed-by: stefank, eosterlund, pliden
2020-09-08 09:34:40 +00:00
Jaikiran Pai
5dd1eaded7 8252767: URLConnection.setRequestProperty throws IllegalAccessError
Reviewed-by: chegar, michaelm, alanb
2020-09-08 09:10:15 +00:00
Evgeny Nikitin
2cceeedfe1 8166554: Avoid compilation blocking in OverloadCompileQueueTest.java
Reviewed-by: shade
2020-09-08 08:24:35 +00:00
Stefan Johansson
188b0bc7be 8252868: Clean up unused function from G1MMUTracker
Reviewed-by: tschatzl
2020-09-08 07:58:29 +00:00
9960 changed files with 757163 additions and 234692 deletions

1613
.github/workflows/submit.yml vendored Normal file

File diff suppressed because it is too large Load Diff

2
.gitignore vendored
View File

@@ -2,6 +2,7 @@
/dist/
/.idea/
/.vscode/
/nbproject/
nbproject/private/
/webrev
/.src-rev
@@ -14,3 +15,4 @@ test/nashorn/lib
NashornProfile.txt
**/JTreport/**
**/JTwork/**
/src/utils/LogCompilation/target/

View File

@@ -1,18 +0,0 @@
^build/
^dist/
^.idea/
^.vscode/
nbproject/private/
^webrev
^.src-rev$
^.jib/
(^|/)\.DS_Store
(^|/)\.metadata/
(^|/)\.recommenders/
test/nashorn/script/external
test/nashorn/lib
NashornProfile.txt
(^|/)JTreport/
(^|/)JTwork/
(^|/)\.git/
^src/utils/hsdis/build/

View File

@@ -3,10 +3,10 @@ project=jdk
jbs=JDK
[checks]
error=blacklist.author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists
[repository]
tags=(?:jdk-(?:[1-9]([0-9]*)(?:\\.(?:0|[1-9][0-9]*)){0,4})(?:\\+(?:(?:[0-9]+))|(?:-ga)))|(?:jdk[4-9](?:u\\d{1,3})?-(?:(?:b\\d{2,3})|(?:ga)))|(?:hs\\d\\d(?:\\.\\d{1,2})?-b\\d\\d)
tags=(?:jdk-(?:[1-9]([0-9]*)(?:\.(?:0|[1-9][0-9]*)){0,4})(?:\+(?:(?:[0-9]+))|(?:-ga)))|(?:jdk[4-9](?:u\d{1,3})?-(?:(?:b\d{2,3})|(?:ga)))|(?:hs\d\d(?:\.\d{1,2})?-b\d\d)
branches=
[census]
@@ -14,7 +14,8 @@ version=0
domain=openjdk.org
[checks "whitespace"]
files=.*\.cpp|.*\.hpp|.*\.c|.*\.h|.*\.java
files=.*\.cpp|.*\.hpp|.*\.c|.*\.h|.*\.java|.*\.cc|.*\.hh|.*\.m|.*\.mm|.*\.gmk|.*\.m4|.*\.ac|Makefile
ignore-tabs=.*\.gmk|Makefile
[checks "merge"]
message=Merge
@@ -28,3 +29,6 @@ role=committer
[checks "issues"]
pattern=^([124-8][0-9]{6}): (\S.*)$
[checks "problemlists"]
dirs=test/jdk|test/langtools|test/lib-test|test/hotspot/jtreg|test/jaxp

0
configure vendored Normal file → Executable file
View File

View File

@@ -78,6 +78,7 @@
<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="#building-for-musl">Building for musl</a></li>
<li><a href="#verifying-the-build">Verifying the Build</a></li>
</ul></li>
<li><a href="#build-performance">Build Performance</a><ul>
@@ -96,12 +97,10 @@
<li><a href="#getting-help">Getting Help</a></li>
</ul></li>
<li><a href="#hints-and-suggestions-for-advanced-users">Hints and Suggestions for Advanced Users</a><ul>
<li><a href="#setting-up-a-repository-for-pushing-changes-defpath">Setting Up a Repository for Pushing Changes (defpath)</a></li>
<li><a href="#bash-completion">Bash Completion</a></li>
<li><a href="#using-multiple-configurations">Using Multiple Configurations</a></li>
<li><a href="#handling-reconfigurations">Handling Reconfigurations</a></li>
<li><a href="#using-fine-grained-make-targets">Using Fine-Grained Make Targets</a></li>
<li><a href="#learn-about-mercurial">Learn About Mercurial</a></li>
</ul></li>
<li><a href="#understanding-the-build-system">Understanding the Build System</a><ul>
<li><a href="#configurations">Configurations</a></li>
@@ -115,10 +114,10 @@
</ul>
</nav>
<h2 id="tldr-instructions-for-the-impatient">TL;DR (Instructions for the Impatient)</h2>
<p>If you are eager to try out building the JDK, these simple steps works most of the time. They assume that you have installed Mercurial (and Cygwin if running on Windows) and cloned the top-level JDK repository that you want to build.</p>
<p>If you are eager to try out building the JDK, these simple steps works most of the time. They assume that you have installed Git (and Cygwin if running on Windows) and cloned the top-level JDK repository that you want to build.</p>
<ol type="1">
<li><p><a href="#getting-the-source-code">Get the complete source code</a>:<br />
<code>hg clone http://hg.openjdk.java.net/jdk/jdk</code></p></li>
<code>git clone https://git.openjdk.java.net/jdk/</code></p></li>
<li><p><a href="#running-configure">Run configure</a>:<br />
<code>bash configure</code></p>
<p>If <code>configure</code> fails due to missing dependencies (to either the <a href="#native-compiler-toolchain-requirements">toolchain</a>, <a href="#build-tools-requirements">build tools</a>, <a href="#external-library-requirements">external libraries</a> or the <a href="#boot-jdk-requirements">boot JDK</a>), most of the time it prints a suggestion on how to resolve the situation on your platform. Follow the instructions, and try running <code>bash configure</code> again.</p></li>
@@ -134,8 +133,8 @@
<p>The JDK is a complex software project. Building it requires a certain amount of technical expertise, a fair number of dependencies on external software, and reasonably powerful hardware.</p>
<p>If you just want to use the JDK and not build it yourself, this document is not for you. See for instance <a href="http://openjdk.java.net/install">OpenJDK installation</a> for some methods of installing a prebuilt JDK.</p>
<h2 id="getting-the-source-code">Getting the Source Code</h2>
<p>Make sure you are getting the correct version. As of JDK 10, the source is no longer split into separate repositories so you only need to clone one single repository. At the <a href="http://hg.openjdk.java.net/">OpenJDK Mercurial server</a> you can see a list of all available repositories. If you want to build an older version, e.g. JDK 8, it is recommended that you get the <code>jdk8u</code> forest, which contains incremental updates, instead of the <code>jdk8</code> forest, which was frozen at JDK 8 GA.</p>
<p>If you are new to Mercurial, a good place to start is the <a href="http://www.mercurial-scm.org/guide">Mercurial Beginner's Guide</a>. The rest of this document assumes a working knowledge of Mercurial.</p>
<p>Make sure you are getting the correct version. As of JDK 10, the source is no longer split into separate repositories so you only need to clone one single repository. At the <a href="https://git.openjdk.java.net/">OpenJDK Git site</a> you can see a list of all available repositories. If you want to build an older version, e.g. JDK 11, it is recommended that you get the <code>jdk11u</code> repo, which contains incremental updates, instead of the <code>jdk11</code> repo, which was frozen at JDK 11 GA.</p>
<p>If you are new to Git, a good place to start is the book <a href="https://git-scm.com/book/en/v2">Pro Git</a>. The rest of this document assumes a working knowledge of Git.</p>
<h3 id="special-considerations">Special Considerations</h3>
<p>For a smooth building experience, it is recommended that you follow these rules on where and how to check out the source code.</p>
<ul>
@@ -146,7 +145,11 @@
<ul>
<li><p>Create the directory that is going to contain the top directory of the JDK clone by using the <code>mkdir</code> command in the Cygwin bash shell. That is, do <em>not</em> create it using Windows Explorer. This will ensure that it will have proper Cygwin attributes, and that it's children will inherit those attributes.</p></li>
<li><p>Do not put the JDK clone in a path under your Cygwin home directory. This is especially important if your user name contains spaces and/or mixed upper and lower case letters.</p></li>
<li><p>Clone the JDK repository using the Cygwin command line <code>hg</code> client as instructed in this document. That is, do <em>not</em> use another Mercurial client such as TortoiseHg.</p></li>
<li><p>You need to install a git client. You have two choices, Cygwin git or Git for Windows. Unfortunately there are pros and cons with each choice.</p>
<ul>
<li><p>The Cygwin <code>git</code> client has no line ending issues and understands Cygwin paths (which are used throughout the JDK build system). However, it does not currently work well with the Skara CLI tooling. Please see the <a href="https://wiki.openjdk.java.net/display/SKARA/Skara#Skara-Git">Skara wiki on Git clients</a> for up-to-date information about the Skara git client support.</p></li>
<li><p>The <a href="https://gitforwindows.org">Git for Windows</a> client has issues with line endings, and do not understand Cygwin paths. It does work well with the Skara CLI tooling, however. To alleviate the line ending problems, make sure you set <code>core.autocrlf</code> to <code>false</code> (this is asked during installation).</p></li>
</ul></li>
</ul>
<p>Failure to follow this procedure might result in hard-to-debug build problems.</p></li>
</ul>
@@ -193,7 +196,7 @@
<p>Windows XP is not a supported platform, but all newer Windows should be able to build the JDK.</p>
<p>On Windows, it is important that you pay attention to the instructions in the <a href="#special-considerations">Special Considerations</a>.</p>
<p>Windows is the only non-POSIX OS supported by the JDK, and as such, requires some extra care. A POSIX support layer is required to build on Windows. Currently, the only supported such layers are Cygwin and Windows Subsystem for Linux (WSL). (Msys is no longer supported due to a too old bash; msys2 would likely be possible to support in a future version but that would require effort to implement.)</p>
<p>Internally in the build system, all paths are represented as Unix-style paths, e.g. <code>/cygdrive/c/hg/jdk9/Makefile</code> rather than <code>C:\hg\jdk9\Makefile</code>. This rule also applies to input to the build system, e.g. in arguments to <code>configure</code>. So, use <code>--with-msvcr-dll=/cygdrive/c/msvcr100.dll</code> rather than <code>--with-msvcr-dll=c:\msvcr100.dll</code>. For details on this conversion, see the section on <a href="#fixpath">Fixpath</a>.</p>
<p>Internally in the build system, all paths are represented as Unix-style paths, e.g. <code>/cygdrive/c/git/jdk/Makefile</code> rather than <code>C:\git\jdk\Makefile</code>. This rule also applies to input to the build system, e.g. in arguments to <code>configure</code>. So, use <code>--with-msvcr-dll=/cygdrive/c/msvcr100.dll</code> rather than <code>--with-msvcr-dll=c:\msvcr100.dll</code>. For details on this conversion, see the section on <a href="#fixpath">Fixpath</a>.</p>
<h4 id="cygwin">Cygwin</h4>
<p>A functioning <a href="http://www.cygwin.com/">Cygwin</a> environment is required for building the JDK on Windows. If you have a 64-bit OS, we strongly recommend using the 64-bit version of Cygwin.</p>
<p><strong>Note:</strong> Cygwin has a model of continuously updating all packages without any easy way to install or revert to a specific version of a package. This means that whenever you add or update a package in Cygwin, you might (inadvertently) update tools that are used by the JDK build process, and that can cause unexpected build problems.</p>
@@ -224,6 +227,8 @@
<pre><code>sudo apt-get install build-essential</code></pre>
<p>For rpm-based distributions (Fedora, Red Hat, etc), try this:</p>
<pre><code>sudo yum groupinstall &quot;Development Tools&quot;</code></pre>
<p>For Alpine Linux, aside from basic tooling, install the GNU versions of some programs:</p>
<pre><code>sudo apk add build-base bash grep zip</code></pre>
<h3 id="aix">AIX</h3>
<p>Please consult the AIX section of the <a href="https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms">Supported Build Platforms</a> OpenJDK Build Wiki page for details about which versions of AIX are supported.</p>
<h2 id="native-compiler-toolchain-requirements">Native Compiler (Toolchain) Requirements</h2>
@@ -265,7 +270,7 @@
<tbody>
<tr class="odd">
<td style="text-align: left;">Linux</td>
<td style="text-align: left;">gcc 9.2.0</td>
<td style="text-align: left;">gcc 10.2.0</td>
</tr>
<tr class="even">
<td style="text-align: left;">macOS</td>
@@ -273,14 +278,14 @@
</tr>
<tr class="odd">
<td style="text-align: left;">Windows</td>
<td style="text-align: left;">Microsoft Visual Studio 2019 update 16.5.3</td>
<td style="text-align: left;">Microsoft Visual Studio 2019 update 16.7.2</td>
</tr>
</tbody>
</table>
<p>All compilers are expected to be able to compile to the C99 language standard, as some C99 features are used in the source code. Microsoft Visual Studio doesn't fully support C99 so in practice shared code is limited to using C99 features that it does support.</p>
<h3 id="gcc">gcc</h3>
<p>The minimum accepted version of gcc is 5.0. Older versions will generate a warning by <code>configure</code> and are unlikely to work.</p>
<p>The JDK is currently known to be able to compile with at least version 9.2 of gcc.</p>
<p>The JDK is currently known to be able to compile with at least version 10.2 of gcc.</p>
<p>In general, any version between these two should be usable.</p>
<h3 id="clang">clang</h3>
<p>The minimum accepted version of clang is 3.5. Older versions will not be accepted by <code>configure</code>.</p>
@@ -294,6 +299,7 @@
<h3 id="microsoft-visual-studio">Microsoft Visual Studio</h3>
<p>The minimum accepted version of Visual Studio is 2017. Older versions will not be accepted by <code>configure</code> and will not work. The maximum accepted version of Visual Studio is 2019.</p>
<p>If you have multiple versions of Visual Studio installed, <code>configure</code> will by default pick the latest. You can request a specific version to be used by setting <code>--with-toolchain-version</code>, e.g. <code>--with-toolchain-version=2017</code>.</p>
<p>If you have Visual Studio installed but <code>configure</code> fails to detect it, it may be because of <a href="#spaces-in-path">spaces in path</a>.</p>
<h3 id="ibm-xl-cc">IBM XL C/C++</h3>
<p>Please consult the AIX section of the <a href="https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms">Supported Build Platforms</a> OpenJDK Build Wiki page for details about which versions of XLC are supported.</p>
<h2 id="boot-jdk-requirements">Boot JDK Requirements</h2>
@@ -313,6 +319,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libfreetype6-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install freetype-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add freetype-dev</code>.</li>
</ul>
<p>Use <code>--with-freetype-include=&lt;path&gt;</code> and <code>--with-freetype-lib=&lt;path&gt;</code> if <code>configure</code> does not automatically locate the platform FreeType files.</p>
<h3 id="cups">CUPS</h3>
@@ -320,6 +327,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libcups2-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install cups-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add cups-dev</code>.</li>
</ul>
<p>Use <code>--with-cups=&lt;path&gt;</code> if <code>configure</code> does not properly locate your CUPS files.</p>
<h3 id="x11">X11</h3>
@@ -327,6 +335,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libx11-dev libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install libXtst-devel libXt-devel libXrender-devel libXrandr-devel libXi-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add libx11-dev libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev</code>.</li>
</ul>
<p>Use <code>--with-x=&lt;path&gt;</code> if <code>configure</code> does not properly locate your X11 files.</p>
<h3 id="alsa">ALSA</h3>
@@ -334,6 +343,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libasound2-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install alsa-lib-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add alsa-lib-dev</code>.</li>
</ul>
<p>Use <code>--with-alsa=&lt;path&gt;</code> if <code>configure</code> does not properly locate your ALSA files.</p>
<h3 id="libffi">libffi</h3>
@@ -341,6 +351,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libffi-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install libffi-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add libffi-dev</code>.</li>
</ul>
<p>Use <code>--with-libffi=&lt;path&gt;</code> if <code>configure</code> does not properly locate your libffi files.</p>
<h2 id="build-tools-requirements">Build Tools Requirements</h2>
@@ -349,6 +360,7 @@
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install autoconf</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install autoconf</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add autoconf</code>.</li>
<li>To install on macOS, try running <code>brew install autoconf</code>.</li>
<li>To install on Windows, try running <code>&lt;path to Cygwin setup&gt;/setup-x86_64 -q -P autoconf</code>.</li>
</ul>
@@ -391,7 +403,7 @@
<li><code>--enable-jvm-feature-&lt;feature&gt;</code> or <code>--disable-jvm-feature-&lt;feature&gt;</code> - Include (or exclude) <code>&lt;feature&gt;</code> as a JVM feature in Hotspot. You can also specify a list of features to be enabled, separated by space or comma, as <code>--with-jvm-features=&lt;feature&gt;[,&lt;feature&gt;...]</code>. If you prefix <code>&lt;feature&gt;</code> with a <code>-</code>, it will be disabled. These options will modify the default list of features for the JVM variant(s) you are building. For the <code>custom</code> JVM variant, the default list is empty. A complete list of valid JVM features can be found using <code>bash configure --help</code>.</li>
<li><code>--with-target-bits=&lt;bits&gt;</code> - Create a target binary suitable for running on a <code>&lt;bits&gt;</code> platform. Use this to create 32-bit output on a 64-bit build platform, instead of doing a full cross-compile. (This is known as a <em>reduced</em> build.)</li>
</ul>
<p>On Linux, BSD and AIX, it is possible to override where Java by default searches for runtime/JNI libraries. This can be useful in situations where there is a special shared directory for system JNI libraries. This setting can in turn be overriden at runtime by setting the <code>java.library.path</code> property.</p>
<p>On Linux, BSD and AIX, it is possible to override where Java by default searches for runtime/JNI libraries. This can be useful in situations where there is a special shared directory for system JNI libraries. This setting can in turn be overridden at runtime by setting the <code>java.library.path</code> property.</p>
<ul>
<li><code>--with-jni-libpath=&lt;path&gt;</code> - Use the specified path as a default when searching for runtime libraries.</li>
</ul>
@@ -430,7 +442,7 @@
<h3 id="configure-control-variables">Configure Control Variables</h3>
<p>It is possible to control certain aspects of <code>configure</code> by overriding the value of <code>configure</code> variables, either on the command line or in the environment.</p>
<p>Normally, this is <strong>not recommended</strong>. If used improperly, it can lead to a broken configuration. Unless you're well versed in the build system, this is hard to use properly. Therefore, <code>configure</code> will print a warning if this is detected.</p>
<p>However, there are a few <code>configure</code> variables, known as <em>control variables</em> that are supposed to be overriden on the command line. These are variables that describe the location of tools needed by the build, like <code>MAKE</code> or <code>GREP</code>. If any such variable is specified, <code>configure</code> will use that value instead of trying to autodetect the tool. For instance, <code>bash configure MAKE=/opt/gnumake4.0/bin/make</code>.</p>
<p>However, there are a few <code>configure</code> variables, known as <em>control variables</em> that are supposed to be overridden on the command line. These are variables that describe the location of tools needed by the build, like <code>MAKE</code> or <code>GREP</code>. If any such variable is specified, <code>configure</code> will use that value instead of trying to autodetect the tool. For instance, <code>bash configure MAKE=/opt/gnumake4.0/bin/make</code>.</p>
<p>If a configure argument exists, use that instead, e.g. use <code>--with-jtreg</code> instead of setting <code>JTREGEXE</code>.</p>
<p>Also note that, despite what autoconf claims, setting <code>CFLAGS</code> will not accomplish anything. Instead use <code>--with-extra-cflags</code> (and similar for <code>cxxflags</code> and <code>ldflags</code>).</p>
<h2 id="running-make">Running Make</h2>
@@ -467,7 +479,7 @@
<h3 id="make-control-variables">Make Control Variables</h3>
<p>It is possible to control <code>make</code> behavior by overriding the value of <code>make</code> variables, either on the command line or in the environment.</p>
<p>Normally, this is <strong>not recommended</strong>. If used improperly, it can lead to a broken build. Unless you're well versed in the build system, this is hard to use properly. Therefore, <code>make</code> will print a warning if this is detected.</p>
<p>However, there are a few <code>make</code> variables, known as <em>control variables</em> that are supposed to be overriden on the command line. These make up the &quot;make time&quot; configuration, as opposed to the &quot;configure time&quot; configuration.</p>
<p>However, there are a few <code>make</code> variables, known as <em>control variables</em> that are supposed to be overridden on the command line. These make up the &quot;make time&quot; configuration, as opposed to the &quot;configure time&quot; configuration.</p>
<h4 id="general-make-control-variables">General Make Control Variables</h4>
<ul>
<li><code>JOBS</code> - Specify the number of jobs to build with. See <a href="#build-performance">Build Performance</a>.</li>
@@ -620,21 +632,30 @@ cp: cannot stat `arm-linux-gnueabihf/libXt.so&#39;: No such file or directory</c
<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>Install cross-compiler on the <em>build</em> system:</li>
</ul>
<pre><code>apt install g++-aarch64-linux-gnu gcc-aarch64-linux-gnu</code></pre>
<ul>
<li>Create chroot on the <em>build</em> system, configuring it for <em>target</em> system:</li>
</ul>
<pre><code>sudo qemu-debootstrap --arch=arm64 --verbose \
--include=fakeroot,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-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>
<ul>
<li>Configure and build with newly created chroot as sysroot/toolchain-path:</li>
</ul>
<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/
<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,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev \
--resolve-deps \
buster \
~/sysroot-arm64 \
http://httpredir.debian.org/debian/</code></pre></li>
<li><p>Make sure the symlinks inside the newly created chroot point to proper locations:</p>
<pre><code>sudo chroot ~/sysroot-arm64 symlinks -cr .</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=~/sysroot-arm64 \
--with-toolchain-path=~/sysroot-arm64 \
--with-freetype-lib=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/ \
--with-freetype-include=~/sysroot-arm64/usr/include/freetype2/ \
--x-libraries=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/
make images
ls build/linux-aarch64-normal-server-release/</code></pre>
ls build/linux-aarch64-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>
@@ -688,6 +709,15 @@ ls build/linux-aarch64-normal-server-release/</code></pre>
<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>
<h3 id="building-for-musl">Building for musl</h3>
<p>Just like it's possible to cross-compile for a different CPU, it's possible to cross-compile for musl libc on a glibc-based <em>build</em> system. A devkit suitable for most target CPU architectures can be obtained from <a href="https://musl.cc">musl.cc</a>. After installing the required packages in the sysroot, configure the build with <code>--openjdk-target</code>:</p>
<pre><code>sh ./configure --with-jvm-variants=server \
--with-boot-jdk=$BOOT_JDK \
--with-build-jdk=$BUILD_JDK \
--openjdk-target=x86_64-unknown-linux-musl \
--with-devkit=$DEVKIT \
--with-sysroot=$SYSROOT</code></pre>
<p>and run <code>make</code> normally.</p>
<h3 id="verifying-the-build">Verifying the Build</h3>
<p>The build will end up in a directory named like <code>build/linux-arm-normal-server-release</code>.</p>
<p>Inside this build output directory, the <code>images/jdk</code> will contain the newly built JDK, for your <em>target</em> system.</p>
@@ -731,14 +761,14 @@ ls build/linux-aarch64-normal-server-release/</code></pre>
=== Output from failing command(s) repeated here ===
* For target hotspot_variant-server_libjvm_objs_psMemoryPool.o:
/localhome/hg/jdk9-sandbox/hotspot/src/share/vm/services/psMemoryPool.cpp:1:1: error: &#39;failhere&#39; does not name a type
/localhome/git/jdk-sandbox/hotspot/src/share/vm/services/psMemoryPool.cpp:1:1: error: &#39;failhere&#39; does not name a type
... (rest of output omitted)
* All command lines available in /localhome/hg/jdk9-sandbox/build/linux-x64/make-support/failure-logs.
* All command lines available in /localhome/git/jdk-sandbox/build/linux-x64/make-support/failure-logs.
=== End of repeated output ===
=== Make failed targets repeated here ===
lib/CompileJvm.gmk:207: recipe for target &#39;/localhome/hg/jdk9-sandbox/build/linux-x64/hotspot/variant-server/libjvm/objs/psMemoryPool.o&#39; failed
lib/CompileJvm.gmk:207: recipe for target &#39;/localhome/git/jdk-sandbox/build/linux-x64/hotspot/variant-server/libjvm/objs/psMemoryPool.o&#39; failed
make/Main.gmk:263: recipe for target &#39;hotspot-server-libs&#39; failed
=== End of repeated output ===
@@ -765,7 +795,7 @@ Hint: If caused by a warning, try configure --disable-warnings-as-errors.</code>
<p>Here are a suggested list of things to try if you are having unexpected build problems. Each step requires more time than the one before, so try them in order. Most issues will be solved at step 1 or 2.</p>
<ol type="1">
<li><p>Make sure your repository is up-to-date</p>
<p>Run <code>hg pull -u</code> to make sure you have the latest changes.</p></li>
<p>Run <code>git pull origin master</code> to make sure you have the latest changes.</p></li>
<li><p>Clean build results</p>
<p>The simplest way to fix incremental rebuild issues is to run <code>make clean</code>. This will remove all build results, but not the configuration or any build system support artifacts. In most cases, this will solve build errors resulting from incremental build mismatches.</p></li>
<li><p>Completely clean the build directory.</p>
@@ -774,8 +804,8 @@ Hint: If caused by a warning, try configure --disable-warnings-as-errors.</code>
make dist-clean
bash configure $(cat current-configuration)
make</code></pre></li>
<li><p>Re-clone the Mercurial repository</p>
<p>Sometimes the Mercurial repository gets in a state that causes the product to be un-buildable. In such a case, the simplest solution is often the &quot;sledgehammer approach&quot;: delete the entire repository, and re-clone it. If you have local changes, save them first to a different location using <code>hg export</code>.</p></li>
<li><p>Re-clone the Git repository</p>
<p>Sometimes the Git repository gets in a state that causes the product to be un-buildable. In such a case, the simplest solution is often the &quot;sledgehammer approach&quot;: delete the entire repository, and re-clone it. If you have local changes, save them first to a different location using <code>git format-patch</code>.</p></li>
</ol>
<h3 id="specific-build-issues">Specific Build Issues</h3>
<h4 id="clock-skew">Clock Skew</h4>
@@ -790,23 +820,12 @@ Clock skew detected. Your build may be incomplete.</code></pre>
cannot create ... Permission denied
spawn failed</code></pre>
<p>This can be a sign of a Cygwin problem. See the information about solving problems in the <a href="#cygwin">Cygwin</a> section. Rebooting the computer might help temporarily.</p>
<h4 id="spaces-in-path">Spaces in Path</h4>
<p>On Windows, when configuring, <code>fixpath.sh</code> may report that some directory names have spaces. Usually, it assumes those directories have <a href="https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/fsutil-8dot3name">short paths</a>. You can run <code>fsutil file setshortname</code> in <code>cmd</code> on certain directories, such as <code>Microsoft Visual Studio</code> or <code>Windows Kits</code>, to assign arbitrary short paths so <code>configure</code> can access them.</p>
<h3 id="getting-help">Getting Help</h3>
<p>If none of the suggestions in this document helps you, or if you find what you believe is a bug in the build system, please contact the Build Group by sending a mail to <a href="mailto:build-dev@openjdk.java.net">build-dev@openjdk.java.net</a>. Please include the relevant parts of the configure and/or build log.</p>
<p>If you need general help or advice about developing for the JDK, you can also contact the Adoption Group. See the section on <a href="#contributing-to-openjdk">Contributing to OpenJDK</a> for more information.</p>
<h2 id="hints-and-suggestions-for-advanced-users">Hints and Suggestions for Advanced Users</h2>
<h3 id="setting-up-a-repository-for-pushing-changes-defpath">Setting Up a Repository for Pushing Changes (defpath)</h3>
<p>To help you prepare a proper push path for a Mercurial repository, there exists a useful tool known as <a href="http://openjdk.java.net/projects/code-tools/defpath">defpath</a>. It will help you setup a proper push path for pushing changes to the JDK.</p>
<p>Install the extension by cloning <code>http://hg.openjdk.java.net/code-tools/defpath</code> and updating your <code>.hgrc</code> file. Here's one way to do this:</p>
<pre><code>cd ~
mkdir hg-ext
cd hg-ext
hg clone http://hg.openjdk.java.net/code-tools/defpath
cat &lt;&lt; EOT &gt;&gt; ~/.hgrc
[extensions]
defpath=~/hg-ext/defpath/defpath.py
EOT</code></pre>
<p>You can now setup a proper push path using:</p>
<pre><code>hg defpath -d -u &lt;your OpenJDK username&gt;</code></pre>
<h3 id="bash-completion">Bash Completion</h3>
<p>The <code>configure</code> and <code>make</code> commands tries to play nice with bash command-line completion (using <code>&lt;tab&gt;</code> or <code>&lt;tab&gt;&lt;tab&gt;</code>). To use this functionality, make sure you enable completion in your <code>~/.bashrc</code> (see instructions for bash in your operating system).</p>
<p>Make completion will work out of the box, and will complete valid make targets. For instance, typing <code>make jdk-i&lt;tab&gt;</code> will complete to <code>make jdk-image</code>.</p>
@@ -830,7 +849,7 @@ sudo mv /tmp/configure /usr/local/bin</code></pre>
<p>If you update the repository and part of the configure script has changed, the build system will force you to re-run <code>configure</code>.</p>
<p>Most of the time, you will be fine by running <code>configure</code> again with the same arguments as the last time, which can easily be performed by <code>make reconfigure</code>. To simplify this, you can use the <code>CONF_CHECK</code> make control variable, either as <code>make CONF_CHECK=auto</code>, or by setting an environment variable. For instance, if you add <code>export CONF_CHECK=auto</code> to your <code>.bashrc</code> file, <code>make</code> will always run <code>reconfigure</code> automatically whenever the configure script has changed.</p>
<p>You can also use <code>CONF_CHECK=ignore</code> to skip the check for a needed configure update. This might speed up the build, but comes at the risk of an incorrect build result. This is only recommended if you know what you're doing.</p>
<p>From time to time, you will also need to modify the command line to <code>configure</code> due to changes. Use <code>make print-configure</code> to show the command line used for your current configuration.</p>
<p>From time to time, you will also need to modify the command line to <code>configure</code> due to changes. Use <code>make print-configuration</code> to show the command line used for your current configuration.</p>
<h3 id="using-fine-grained-make-targets">Using Fine-Grained Make Targets</h3>
<p>The default behavior for make is to create consistent and correct output, at the expense of build speed, if necessary.</p>
<p>If you are prepared to take some risk of an incorrect build, and know enough of the system to understand how things build and interact, you can speed up the build process considerably by instructing make to only build a portion of the product.</p>
@@ -859,14 +878,6 @@ sudo mv /tmp/configure /usr/local/bin</code></pre>
<h4 id="rebuilding-part-of-java.base-jdk_filter">Rebuilding Part of java.base (JDK_FILTER)</h4>
<p>If you are modifying files in <code>java.base</code>, which is the by far largest module in the JDK, then you need to rebuild all those files whenever a single file has changed. (This inefficiency will hopefully be addressed in JDK 10.)</p>
<p>As a hack, you can use the make control variable <code>JDK_FILTER</code> to specify a pattern that will be used to limit the set of files being recompiled. For instance, <code>make java.base JDK_FILTER=javax/crypto</code> (or, to combine methods, <code>make java.base-java-only JDK_FILTER=javax/crypto</code>) will limit the compilation to files in the <code>javax.crypto</code> package.</p>
<h3 id="learn-about-mercurial">Learn About Mercurial</h3>
<p>To become an efficient JDK developer, it is recommended that you invest in learning Mercurial properly. Here are some links that can get you started:</p>
<ul>
<li><a href="http://www.mercurial-scm.org/wiki/GitConcepts">Mercurial for git users</a></li>
<li><a href="http://www.mercurial-scm.org/wiki/Tutorial">The official Mercurial tutorial</a></li>
<li><a href="http://hginit.com/">hg init</a></li>
<li><a href="http://hgbook.red-bean.com/read/">Mercurial: The Definitive Guide</a></li>
</ul>
<h2 id="understanding-the-build-system">Understanding the Build System</h2>
<p>This section will give you a more technical description on the details of the build system.</p>
<h3 id="configurations">Configurations</h3>

View File

@@ -3,11 +3,11 @@
## TL;DR (Instructions for the Impatient)
If you are eager to try out building the JDK, these simple steps works most of
the time. They assume that you have installed Mercurial (and Cygwin if running
the time. They assume that you have installed Git (and Cygwin if running
on Windows) and cloned the top-level JDK repository that you want to build.
1. [Get the complete source code](#getting-the-source-code): \
`hg clone http://hg.openjdk.java.net/jdk/jdk`
`git clone https://git.openjdk.java.net/jdk/`
2. [Run configure](#running-configure): \
`bash configure`
@@ -47,14 +47,14 @@ JDK.
Make sure you are getting the correct version. As of JDK 10, the source is no
longer split into separate repositories so you only need to clone one single
repository. At the [OpenJDK Mercurial server](http://hg.openjdk.java.net/) you
repository. At the [OpenJDK Git site](https://git.openjdk.java.net/) you
can see a list of all available repositories. If you want to build an older version,
e.g. JDK 8, it is recommended that you get the `jdk8u` forest, which contains
incremental updates, instead of the `jdk8` forest, which was frozen at JDK 8 GA.
e.g. JDK 11, it is recommended that you get the `jdk11u` repo, which contains
incremental updates, instead of the `jdk11` repo, which was frozen at JDK 11 GA.
If you are new to Mercurial, a good place to start is the [Mercurial Beginner's
Guide](http://www.mercurial-scm.org/guide). The rest of this document assumes a
working knowledge of Mercurial.
If you are new to Git, a good place to start is the book [Pro
Git](https://git-scm.com/book/en/v2). The rest of this document
assumes a working knowledge of Git.
### Special Considerations
@@ -89,9 +89,21 @@ on where and how to check out the source code.
directory. This is especially important if your user name contains
spaces and/or mixed upper and lower case letters.
* Clone the JDK repository using the Cygwin command line `hg` client
as instructed in this document. That is, do *not* use another Mercurial
client such as TortoiseHg.
* You need to install a git client. You have two choices, Cygwin git or
Git for Windows. Unfortunately there are pros and cons with each choice.
* The Cygwin `git` client has no line ending issues and understands
Cygwin paths (which are used throughout the JDK build system).
However, it does not currently work well with the Skara CLI tooling.
Please see the [Skara wiki on Git clients](
https://wiki.openjdk.java.net/display/SKARA/Skara#Skara-Git) for
up-to-date information about the Skara git client support.
* The [Git for Windows](https://gitforwindows.org) client has issues
with line endings, and do not understand Cygwin paths. It does work
well with the Skara CLI tooling, however. To alleviate the line ending
problems, make sure you set `core.autocrlf` to `false` (this is asked
during installation).
Failure to follow this procedure might result in hard-to-debug build
problems.
@@ -173,7 +185,7 @@ likely be possible to support in a future version but that would require effort
to implement.)
Internally in the build system, all paths are represented as Unix-style paths,
e.g. `/cygdrive/c/hg/jdk9/Makefile` rather than `C:\hg\jdk9\Makefile`. This
e.g. `/cygdrive/c/git/jdk/Makefile` rather than `C:\git\jdk\Makefile`. This
rule also applies to input to the build system, e.g. in arguments to
`configure`. So, use `--with-msvcr-dll=/cygdrive/c/msvcr100.dll` rather than
`--with-msvcr-dll=c:\msvcr100.dll`. For details on this conversion, see the section
@@ -273,6 +285,13 @@ For rpm-based distributions (Fedora, Red Hat, etc), try this:
sudo yum groupinstall "Development Tools"
```
For Alpine Linux, aside from basic tooling, install the GNU versions of some
programs:
```
sudo apk add build-base bash grep zip
```
### AIX
Please consult the AIX section of the [Supported Build Platforms](
@@ -302,9 +321,9 @@ issues.
Operating system Toolchain version
------------------ -------------------------------------------------------
Linux gcc 9.2.0
Linux gcc 10.2.0
macOS Apple Xcode 10.1 (using clang 10.0.0)
Windows Microsoft Visual Studio 2019 update 16.5.3
Windows Microsoft Visual Studio 2019 update 16.7.2
All compilers are expected to be able to compile to the C99 language standard,
as some C99 features are used in the source code. Microsoft Visual Studio
@@ -316,7 +335,7 @@ features that it does support.
The minimum accepted version of gcc is 5.0. Older versions will generate a warning
by `configure` and are unlikely to work.
The JDK is currently known to be able to compile with at least version 9.2 of
The JDK is currently known to be able to compile with at least version 10.2 of
gcc.
In general, any version between these two should be usable.
@@ -363,6 +382,9 @@ If you have multiple versions of Visual Studio installed, `configure` will by
default pick the latest. You can request a specific version to be used by
setting `--with-toolchain-version`, e.g. `--with-toolchain-version=2017`.
If you have Visual Studio installed but `configure` fails to detect it, it may
be because of [spaces in path](#spaces-in-path).
### IBM XL C/C++
Please consult the AIX section of the [Supported Build Platforms](
@@ -431,6 +453,7 @@ rather than bundling the JDK's own copy.
libfreetype6-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
freetype-devel`.
* To install on Alpine Linux, try running `sudo apk add freetype-dev`.
Use `--with-freetype-include=<path>` and `--with-freetype-lib=<path>`
if `configure` does not automatically locate the platform FreeType files.
@@ -445,6 +468,7 @@ your operating system.
libcups2-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
cups-devel`.
* To install on Alpine Linux, try running `sudo apk add cups-dev`.
Use `--with-cups=<path>` if `configure` does not properly locate your CUPS
files.
@@ -458,6 +482,8 @@ Linux.
libx11-dev libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
libXtst-devel libXt-devel libXrender-devel libXrandr-devel libXi-devel`.
* To install on Alpine Linux, try running `sudo apk add libx11-dev
libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev`.
Use `--with-x=<path>` if `configure` does not properly locate your X11 files.
@@ -470,6 +496,7 @@ required on Linux. At least version 0.9.1 of ALSA is required.
libasound2-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
alsa-lib-devel`.
* To install on Alpine Linux, try running `sudo apk add alsa-lib-dev`.
Use `--with-alsa=<path>` if `configure` does not properly locate your ALSA
files.
@@ -484,6 +511,7 @@ Hotspot.
libffi-dev`.
* To install on an rpm-based Linux, try running `sudo yum install
libffi-devel`.
* To install on Alpine Linux, try running `sudo apk add libffi-dev`.
Use `--with-libffi=<path>` if `configure` does not properly locate your libffi
files.
@@ -499,6 +527,7 @@ platforms. At least version 2.69 is required.
autoconf`.
* To install on an rpm-based Linux, try running `sudo yum install
autoconf`.
* To install on Alpine Linux, try running `sudo apk add autoconf`.
* To install on macOS, try running `brew install autoconf`.
* To install on Windows, try running `<path to Cygwin setup>/setup-x86_64 -q
-P autoconf`.
@@ -627,7 +656,7 @@ features, use `bash configure --help=short` instead.)
On Linux, BSD and AIX, it is possible to override where Java by default
searches for runtime/JNI libraries. This can be useful in situations where
there is a special shared directory for system JNI libraries. This setting
can in turn be overriden at runtime by setting the `java.library.path` property.
can in turn be overridden at runtime by setting the `java.library.path` property.
* `--with-jni-libpath=<path>` - Use the specified path as a default
when searching for runtime libraries.
@@ -693,7 +722,7 @@ hard to use properly. Therefore, `configure` will print a warning if this is
detected.
However, there are a few `configure` variables, known as *control variables*
that are supposed to be overriden on the command line. These are variables that
that are supposed to be overridden on the command line. These are variables that
describe the location of tools needed by the build, like `MAKE` or `GREP`. If
any such variable is specified, `configure` will use that value instead of
trying to autodetect the tool. For instance, `bash configure
@@ -773,7 +802,7 @@ broken build. Unless you're well versed in the build system, this is hard to
use properly. Therefore, `make` will print a warning if this is detected.
However, there are a few `make` variables, known as *control variables* that
are supposed to be overriden on the command line. These make up the "make time"
are supposed to be overridden on the command line. These make up the "make time"
configuration, as opposed to the "configure time" configuration.
#### General Make Control Variables
@@ -1072,23 +1101,39 @@ 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
```
```
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,libxrandr-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/
```
```
sudo qemu-debootstrap \
--arch=arm64 \
--verbose \
--include=fakeroot,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev \
--resolve-deps \
buster \
~/sysroot-arm64 \
http://httpredir.debian.org/debian/
```
* Make sure the symlinks inside the newly created chroot point to proper locations:
```
sudo chroot ~/sysroot-arm64 symlinks -cr .
```
* 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/
```
```
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ sh ./configure \
--openjdk-target=aarch64-linux-gnu \
--with-sysroot=~/sysroot-arm64 \
--with-toolchain-path=~/sysroot-arm64 \
--with-freetype-lib=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/ \
--with-freetype-include=~/sysroot-arm64/usr/include/freetype2/ \
--x-libraries=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/
make images
ls build/linux-aarch64-server-release/
```
The build does not create new files in that chroot, so it can be reused for multiple builds
without additional cleanup.
@@ -1113,6 +1158,25 @@ available using `--with-abi-profile`: 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.
### Building for musl
Just like it's possible to cross-compile for a different CPU, it's possible to
cross-compile for musl libc on a glibc-based *build* system.
A devkit suitable for most target CPU architectures can be obtained from
[musl.cc](https://musl.cc). After installing the required packages in the
sysroot, configure the build with `--openjdk-target`:
```
sh ./configure --with-jvm-variants=server \
--with-boot-jdk=$BOOT_JDK \
--with-build-jdk=$BUILD_JDK \
--openjdk-target=x86_64-unknown-linux-musl \
--with-devkit=$DEVKIT \
--with-sysroot=$SYSROOT
```
and run `make` normally.
### Verifying the Build
The build will end up in a directory named like
@@ -1237,14 +1301,14 @@ ERROR: Build failed for target 'hotspot' in configuration 'linux-x64' (exit code
=== Output from failing command(s) repeated here ===
* For target hotspot_variant-server_libjvm_objs_psMemoryPool.o:
/localhome/hg/jdk9-sandbox/hotspot/src/share/vm/services/psMemoryPool.cpp:1:1: error: 'failhere' does not name a type
/localhome/git/jdk-sandbox/hotspot/src/share/vm/services/psMemoryPool.cpp:1:1: error: 'failhere' does not name a type
... (rest of output omitted)
* All command lines available in /localhome/hg/jdk9-sandbox/build/linux-x64/make-support/failure-logs.
* All command lines available in /localhome/git/jdk-sandbox/build/linux-x64/make-support/failure-logs.
=== End of repeated output ===
=== Make failed targets repeated here ===
lib/CompileJvm.gmk:207: recipe for target '/localhome/hg/jdk9-sandbox/build/linux-x64/hotspot/variant-server/libjvm/objs/psMemoryPool.o' failed
lib/CompileJvm.gmk:207: recipe for target '/localhome/git/jdk-sandbox/build/linux-x64/hotspot/variant-server/libjvm/objs/psMemoryPool.o' failed
make/Main.gmk:263: recipe for target 'hotspot-server-libs' failed
=== End of repeated output ===
@@ -1342,7 +1406,7 @@ order. Most issues will be solved at step 1 or 2.
1. Make sure your repository is up-to-date
Run `hg pull -u` to make sure you have the latest changes.
Run `git pull origin master` to make sure you have the latest changes.
2. Clean build results
@@ -1367,13 +1431,13 @@ order. Most issues will be solved at step 1 or 2.
make
```
4. Re-clone the Mercurial repository
4. Re-clone the Git repository
Sometimes the Mercurial repository gets in a state that causes the product
Sometimes the Git repository gets in a state that causes the product
to be un-buildable. In such a case, the simplest solution is often the
"sledgehammer approach": delete the entire repository, and re-clone it.
If you have local changes, save them first to a different location using
`hg export`.
`git format-patch`.
### Specific Build Issues
@@ -1405,6 +1469,15 @@ This can be a sign of a Cygwin problem. See the information about solving
problems in the [Cygwin](#cygwin) section. Rebooting the computer might help
temporarily.
#### Spaces in Path
On Windows, when configuring, `fixpath.sh` may report that some directory
names have spaces. Usually, it assumes those directories have
[short paths](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/fsutil-8dot3name).
You can run `fsutil file setshortname` in `cmd` on certain directories, such as
`Microsoft Visual Studio` or `Windows Kits`, to assign arbitrary short paths so
`configure` can access them.
### Getting Help
If none of the suggestions in this document helps you, or if you find what you
@@ -1418,33 +1491,6 @@ contact the Adoption Group. See the section on [Contributing to OpenJDK](
## Hints and Suggestions for Advanced Users
### Setting Up a Repository for Pushing Changes (defpath)
To help you prepare a proper push path for a Mercurial repository, there exists
a useful tool known as [defpath](
http://openjdk.java.net/projects/code-tools/defpath). It will help you setup a
proper push path for pushing changes to the JDK.
Install the extension by cloning
`http://hg.openjdk.java.net/code-tools/defpath` and updating your `.hgrc` file.
Here's one way to do this:
```
cd ~
mkdir hg-ext
cd hg-ext
hg clone http://hg.openjdk.java.net/code-tools/defpath
cat << EOT >> ~/.hgrc
[extensions]
defpath=~/hg-ext/defpath/defpath.py
EOT
```
You can now setup a proper push path using:
```
hg defpath -d -u <your OpenJDK username>
```
### Bash Completion
The `configure` and `make` commands tries to play nice with bash command-line
@@ -1510,8 +1556,8 @@ update. This might speed up the build, but comes at the risk of an incorrect
build result. This is only recommended if you know what you're doing.
From time to time, you will also need to modify the command line to `configure`
due to changes. Use `make print-configure` to show the command line used for
your current configuration.
due to changes. Use `make print-configuration` to show the command line used
for your current configuration.
### Using Fine-Grained Make Targets
@@ -1585,16 +1631,6 @@ instance, `make java.base JDK_FILTER=javax/crypto` (or, to combine methods,
`make java.base-java-only JDK_FILTER=javax/crypto`) will limit the compilation
to files in the `javax.crypto` package.
### Learn About Mercurial
To become an efficient JDK developer, it is recommended that you invest in
learning Mercurial properly. Here are some links that can get you started:
* [Mercurial for git users](http://www.mercurial-scm.org/wiki/GitConcepts)
* [The official Mercurial tutorial](http://www.mercurial-scm.org/wiki/Tutorial)
* [hg init](http://hginit.com/)
* [Mercurial: The Definitive Guide](http://hgbook.red-bean.com/read/)
## Understanding the Build System
This section will give you a more technical description on the details of the

View File

@@ -49,6 +49,7 @@
<li><a href="#thread_local">thread_local</a></li>
<li><a href="#nullptr">nullptr</a></li>
<li><a href="#atomic">&lt;atomic&gt;</a></li>
<li><a href="#uniform-initialization">Uniform Initialization</a></li>
<li><a href="#additional-permitted-features">Additional Permitted Features</a></li>
<li><a href="#excluded-features">Excluded Features</a></li>
<li><a href="#undecided-features">Undecided Features</a></li>
@@ -275,6 +276,17 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<p>Do not use facilities provided by the <code>&lt;atomic&gt;</code> header (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2427.html">n2427</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2752.htm">n2752</a>); instead, use the HotSpot <code>Atomic</code> class and related facilities.</p>
<p>Atomic operations in HotSpot code must have semantics which are consistent with those provided by the JDK's compilers for Java. There are platform-specific implementation choices that a C++ compiler might make or change that are outside the scope of the C++ Standard, and might differ from what the Java compilers implement.</p>
<p>In addition, HotSpot <code>Atomic</code> has a concept of &quot;conservative&quot; memory ordering, which may differ from (may be stronger than) sequentially consistent. There are algorithms in HotSpot that are believed to rely on that ordering.</p>
<h3 id="uniform-initialization">Uniform Initialization</h3>
<p>The use of <em>uniform initialization</em> (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm">n2672</a>), also known as <em>brace initialization</em>, is permitted.</p>
<p>Some relevant sections from cppreference.com:</p>
<ul>
<li><a href="https://en.cppreference.com/w/cpp/language/initialization">initialization</a></li>
<li><a href="https://en.cppreference.com/w/cpp/language/value_initialization">value initialization</a></li>
<li><a href="https://en.cppreference.com/w/cpp/language/direct_initialization">direct initialization</a></li>
<li><a href="https://en.cppreference.com/w/cpp/language/list_initialization">list initialization</a></li>
<li><a href="https://en.cppreference.com/w/cpp/language/aggregate_initialization">aggregate initialization</a></li>
</ul>
<p>Although related, the use of <code>std::initializer_list</code> remains forbidden, as part of the avoidance of the C++ Standard Library in HotSpot code.</p>
<h3 id="additional-permitted-features">Additional Permitted Features</h3>
<ul>
<li><p><code>constexpr</code> (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf">n2235</a>) (<a href="https://isocpp.org/files/papers/N3652.html">n3652</a>)</p></li>
@@ -292,6 +304,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><p>Dynamic initialization and destruction with concurrency (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm">n2660</a>)</p></li>
<li><p><code>final</code> virtual specifiers for classes and virtual functions (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm">n2928</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm">n3206</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm">n3272</a>)</p></li>
<li><p>Local and unnamed types as template parameters (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm">n2657</a>)</p></li>
<li><p>Range-based <code>for</code> loops (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html">n2930</a>) (<a href="https://en.cppreference.com/w/cpp/language/range-for">range-for</a>)</p></li>
</ul>
<h3 id="excluded-features">Excluded Features</h3>
<ul>

View File

@@ -681,6 +681,23 @@ ordering, which may differ from (may be stronger than) sequentially
consistent. There are algorithms in HotSpot that are believed to rely
on that ordering.
### Uniform Initialization
The use of _uniform initialization_
([n2672](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm)),
also known as _brace initialization_, is permitted.
Some relevant sections from cppreference.com:
* [initialization](https://en.cppreference.com/w/cpp/language/initialization)
* [value initialization](https://en.cppreference.com/w/cpp/language/value_initialization)
* [direct initialization](https://en.cppreference.com/w/cpp/language/direct_initialization)
* [list initialization](https://en.cppreference.com/w/cpp/language/list_initialization)
* [aggregate initialization](https://en.cppreference.com/w/cpp/language/aggregate_initialization)
Although related, the use of `std::initializer_list` remains forbidden, as
part of the avoidance of the C++ Standard Library in HotSpot code.
### Additional Permitted Features
* `constexpr`
@@ -733,6 +750,10 @@ on that ordering.
* Local and unnamed types as template parameters
([n2657](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm))
* Range-based `for` loops
([n2930](http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html))
([range-for](https://en.cppreference.com/w/cpp/language/range-for))
### Excluded Features
* New string and character literals

View File

@@ -0,0 +1,13 @@
# jetbrains/runtime:jbr15env
FROM centos:7
RUN yum -y install centos-release-scl
RUN yum -y install devtoolset-8
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool gcc gcc-c++ libstdc++-devel alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel git
# Install Java 15
RUN wget https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz \
-O - | tar xz -C /
RUN mv /zulu15.27.17-ca-jdk15.0.0-linux_x64 /jdk15.0.0
ENV PATH /opt/rh/devtoolset-8/root/usr/bin:$PATH
RUN mkdir .git
RUN git config user.email "builduser@jetbrains.com"
RUN git config user.name "builduser"

View File

@@ -0,0 +1,54 @@
VENDOR_NAME="JetBrains s.r.o."
VENDOR_VERSION_STRING="JBR-${JBSDK_VERSION_WITH_DOTS}.${JDK_BUILD_NUMBER}-${build_number}"
[ -z "$bundle_type" ] || VENDOR_VERSION_STRING="${VENDOR_VERSION_STRING}-${bundle_type}"
do_reset_changes=0
do_reset_dcevm=0
HEAD_REVISION=0
function do_exit() {
exit_code=$1
[ $do_reset_changes -eq 1 ] && git checkout HEAD modules.list src/java.desktop/share/classes/module-info.java
if [ $do_reset_dcevm -eq 1 ]; then
[ ! -z $HEAD_REVISION ] && git reset --hard $HEAD_REVISION
fi
exit "$exit_code"
}
function update_jsdk_mods() {
__jsdk=$1
__jcef_mods=$2
__orig_jsdk_mods=$3
__updated_jsdk_mods=$4
# re-create java.desktop.jmod with updated module-info.class
tmp=.java.desktop.$$.tmp
mkdir "$tmp" || exit $?
"$__jsdk"/bin/jmod extract --dir "$tmp" "$__orig_jsdk_mods"/java.desktop.jmod || exit $?
"$__jsdk"/bin/javac \
--patch-module java.desktop="$__orig_jsdk_mods"/java.desktop.jmod \
--module-path "$__jcef_mods" -d "$tmp"/classes src/java.desktop/share/classes/module-info.java || exit $?
"$__jsdk"/bin/jmod \
create --class-path "$tmp"/classes --config "$tmp"/conf --header-files "$tmp"/include --legal-notice "$tmp"/legal --libs "$tmp"/lib \
java.desktop.jmod || exit $?
mv java.desktop.jmod "$__updated_jsdk_mods" || exit $?
rm -rf "$tmp"
# re-create java.base.jmod with updated hashes
tmp=.java.base.$$.tmp
mkdir "$tmp" || exit $?
hash_modules=$("$JSDK"/bin/jmod describe "$__orig_jsdk_mods"/java.base.jmod | grep hashes | awk '{print $2}' | tr '\n' '|' | sed s/\|$//) || exit $?
"$__jsdk"/bin/jmod extract --dir "$tmp" "$__orig_jsdk_mods"/java.base.jmod || exit $?
rm "$__updated_jsdk_mods"/java.base.jmod || exit $? # temp exclude from path
"$__jsdk"/bin/jmod \
create --module-path "$__updated_jsdk_mods" --hash-modules "$hash_modules" \
--class-path "$tmp"/classes --cmds "$tmp"/bin --config "$tmp"/conf --header-files "$tmp"/include --legal-notice "$tmp"/legal --libs "$tmp"/lib \
java.base.jmod || exit $?
mv java.base.jmod "$__updated_jsdk_mods" || exit $?
rm -rf "$tmp"
}
function get_mods_list() {
__mods=$1
echo $(ls $__mods) | sed s/\.jmod/,/g | sed s/,$//g | sed s/' '//g
}

View File

@@ -0,0 +1,84 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes || exit $?
make clean CONF=linux-aarch64-server-release || exit $?
make images CONF=linux-aarch64-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-aarch64-b${build_number}
BASE_DIR=build/linux-aarch64-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
tar -pcf $JBSDK.tar \
--exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
-C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
gzip $JBSDK.tar || exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
JBR=$JBR_BASE_NAME-linux-aarch64-b$build_number
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.aarch64
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.aarch64 | sed s/" "//g | sed s/,$//g) \
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar -pcf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-aarch64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?

View File

@@ -0,0 +1,137 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
JCEF_PATH=${JCEF_PATH:=./jcef_linux_x64}
source jb/project/tools/common/scripts/common.sh
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
[ "$bundle_type" == "fd" ] && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-x64-${fastdebug_infix}b${build_number}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__arch_name" ] && rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__arch_name"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__arch_name"/release
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__arch_name"/release > release
mv release "$IMAGES_DIR"/"$__arch_name"/release
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
tar -pcf "$JBR".tar -C "$IMAGES_DIR" "$__arch_name" || do_exit $?
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86_64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86_64-server-fastdebug
;;
esac
sh configure \
--disable-warnings-as-errors \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes || do_exit $?
make clean CONF=$RELEASE_NAME || exit $?
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods $JSDK $JCEF_PATH/jmods $JSDK/jmods $JSDK_MODS_DIR || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
fi
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle $JBRSDK_BUNDLE $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-test-x64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
make test-image CONF=$RELEASE_NAME || do_exit $?
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
do_exit 0

View File

@@ -0,0 +1,81 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
linux32 bash configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes || exit $?
make clean CONF=linux-x86-server-release || exit $?
make images CONF=linux-x86-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-x86-b${build_number}
BASE_DIR=build/linux-x86-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man -C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
gzip $JBSDK.tar || exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
JBR=$JBR_BASE_NAME-linux-x86-b$build_number
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g | sed s/,$//g) --output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar -pcf $JBR.tar -C $BASE_DIR $JBR_BUNDLE || exit $?
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' --exclude='test/hotspot/gtest' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.disable-executable-page-protection</key>
<true/>
</dict>
</plist>

View File

@@ -0,0 +1,139 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_mac
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo "$JBSDK_VERSION" | sed 's/_/\./g')
JCEF_PATH=${JCEF_PATH:=./jcef_mac}
MAJOR_JBSDK_VERSION=$(echo "$JBSDK_VERSION_WITH_DOTS" | awk -F "." '{print $1}')
BOOT_JDK=${BOOT_JDK:=$(/usr/libexec/java_home -v 14)}
source jb/project/tools/common/scripts/common.sh
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
tmp=.bundle.$$.tmp
mkdir "$tmp" || do_exit $?
[ "$bundle_type" == "fd" ] && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-osx-x64-${fastdebug_infix}b${build_number}
JRE_CONTENTS=$tmp/$__arch_name/Contents
mkdir -p "$JRE_CONTENTS" || do_exit $?
echo Running jlink...
"$JSDK"/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$JRE_CONTENTS/Home" || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$JRE_CONTENTS/Home/release"
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $JRE_CONTENTS/Home/release > release
mv release $JRE_CONTENTS/Home/release
fi
cp -R "$JSDK"/../MacOS "$JRE_CONTENTS"
cp "$JSDK"/../Info.plist "$JRE_CONTENTS"
[ -n "$bundle_type" ] && (cp -a $JCEF_PATH/Frameworks "$JRE_CONTENTS" || do_exit $?)
echo Creating "$JBR".tar.gz ...
COPYFILE_DISABLE=1 tar -pczf "$JBR".tar.gz --exclude='*.dSYM' --exclude='man' -C "$tmp" "$__arch_name" || do_exit $?
rm -rf "$tmp"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=macosx-x86_64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=macosx-x86_64-server-fastdebug
;;
esac
sh configure \
--disable-warnings-as-errors \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk-bundle/jdk-$MAJOR_JBSDK_VERSION.jdk/Contents/Home
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
fi
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat "$JSDK"/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-osx-test-x64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
make test-image CONF=$RELEASE_NAME || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
COPYFILE_DISABLE=1 tar -pczf "$JBRSDK_TEST".tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi
do_exit 0

View File

@@ -0,0 +1,120 @@
#!/bin/bash
APP_DIRECTORY=$1
APPL_USER=$2
APPL_PASSWORD=$3
APP_NAME=$4
BUNDLE_ID=$5
FAKE_ROOT="${6:-fake-root}"
if [[ -z "$APP_DIRECTORY" ]] || [[ -z "$APPL_USER" ]] || [[ -z "$APPL_PASSWORD" ]]; then
echo "Usage: $0 AppDirectory Username Password"
exit 1
fi
if [[ ! -d "$APP_DIRECTORY" ]]; then
echo "AppDirectory '$APP_DIRECTORY' does not exist or not a directory"
exit 1
fi
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
function publish-log() {
id=$1
file=$2
curl -T "$file" "$ARTIFACTORY_URL/$id" || true
}
function altool-upload() {
# Since altool uses same file for upload token we have to trick it into using different folders for token file location
# Also it copies zip into TMPDIR so we override it too, to simplify cleanup
OLD_HOME="$HOME"
export HOME="$FAKE_ROOT/home"
export TMPDIR="$FAKE_ROOT/tmp"
mkdir -p "$HOME"
mkdir -p "$TMPDIR"
export _JAVA_OPTIONS="-Duser.home=$HOME -Djava.io.tmpdir=$TMPDIR"
# Reduce amount of downloads, cache transporter libraries
shared_itmstransporter="$OLD_HOME/shared-itmstransporter"
if [[ -f "$shared_itmstransporter" ]]; then
cp -r "$shared_itmstransporter" "$HOME/.itmstransporter"
fi
# For some reason altool prints everything to stderr, not stdout
set +e
xcrun altool --notarize-app \
--username "$APPL_USER" --password "$APPL_PASSWORD" \
--primary-bundle-id "$BUNDLE_ID" \
--asc-provider JetBrainssro --file "$1" 2>&1 | tee "altool.init.out"
unset TMPDIR
export HOME="$OLD_HOME"
set -e
}
#immediately exit script with an error if a command fails
set -euo pipefail
file="$APP_NAME.zip"
log "Zipping $file..."
rm -rf "$file"
ditto -c -k --sequesterRsrc --keepParent "$APP_DIRECTORY/Contents" "$file"
log "Notarizing $file..."
rm -rf "altool.init.out" "altool.check.out"
altool-upload "$file"
rm -rf "$file"
notarization_info="$(grep -e "RequestUUID" "altool.init.out" | grep -oE '([0-9a-f-]{36})')"
if [ -z "$notarization_info" ]; then
log "Faile to read RequestUUID from altool.init.out"
exit 10
fi
PATH="$PATH:/usr/local/bin/"
log "Notarization request sent, awaiting response"
spent=0
while true; do
# For some reason altool prints everything to stderr, not stdout
xcrun altool --username "$APPL_USER" --notarization-info "$notarization_info" --password "$APPL_PASSWORD" >"altool.check.out" 2>&1 || true
status="$(grep -oe 'Status: .*' "altool.check.out" | cut -c 9- || true)"
log "Current status: $status"
if [ "$status" = "invalid" ]; then
log "Notarization failed"
ec=1
elif [ "$status" = "success" ]; then
log "Notarization succeeded"
ec=0
else
if [ "$status" != "in progress" ]; then
log "Unknown notarization status, waiting more, altool output:"
cat "altool.check.out"
fi
if [[ $spent -gt 60 ]]; then
log "Waiting time out (apx 60 minutes)"
ec=2
break
fi
sleep 60
((spent += 1))
continue
fi
developer_log="developer_log.json"
log "Fetching $developer_log"
# TODO: Replace cut with trim or something better
url="$(grep -oe 'LogFileURL: .*' "altool.check.out" | cut -c 13-)"
wget "$url" -O "$developer_log" && cat "$developer_log" || true
if [ $ec != 0 ]; then
log "Publishing $developer_log"
publish-log "$notarization_info" "$developer_log"
fi
break
done
cat "altool.check.out"
rm -rf "altool.init.out" "altool.check.out"
exit $ec

View File

@@ -0,0 +1,94 @@
#!/bin/bash
APP_DIRECTORY=$1
JB_CERT=$2
if [[ -z "$APP_DIRECTORY" ]] || [[ -z "$JB_CERT" ]]; then
echo "Usage: $0 AppDirectory CertificateID"
exit 1
fi
if [[ ! -d "$APP_DIRECTORY" ]]; then
echo "AppDirectory '$APP_DIRECTORY' does not exist or not a directory"
exit 1
fi
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
#immediately exit script with an error if a command fails
set -euo pipefail
# Cleanup files left from previous sign attempt (if any)
find "$APP_DIRECTORY" -name '*.cstemp' -exec rm '{}' \;
log "Signing libraries and executables..."
# -perm +111 searches for executables
for f in \
"Contents/Home/bin" \
"Contents/Home/lib" \
"Contents/Frameworks"; do
if [ -d "$APP_DIRECTORY/$f" ]; then
find "$APP_DIRECTORY/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
-exec codesign --timestamp \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
fi
done
log "Signing libraries in jars in $PWD"
# todo: add set -euo pipefail; into the inner sh -c
# `-e` prevents `grep -q && printf` loginc
# with `-o pipefail` there's no input for 'while' loop
find "$APP_DIRECTORY" -name '*.jar' \
-exec sh -c "set -u; unzip -l \"\$0\" | grep -q -e '\.dylib\$' -e '\.jnilib\$' -e '\.so\$' -e '^jattach\$' && printf \"\$0\0\" " {} \; |
while IFS= read -r -d $'\0' file; do
log "Processing libraries in $file"
rm -rf jarfolder jar.jar
mkdir jarfolder
filename="${file##*/}"
log "Filename: $filename"
cp "$file" jarfolder && (cd jarfolder && jar xf "$filename" && rm "$filename")
find jarfolder \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "jattach" \) \
-exec codesign --timestamp \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
(cd jarfolder; zip -q -r -o ../jar.jar .)
mv jar.jar "$file"
done
rm -rf jarfolder jar.jar
log "Signing other files..."
for f in \
"Contents/MacOS"; do
if [ -d "$APP_DIRECTORY/$f" ]; then
find "$APP_DIRECTORY/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
-exec codesign --timestamp \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
fi
done
#log "Signing executable..."
#codesign --timestamp \
# -v -s "$JB_CERT" --options=runtime \
# --force \
# --entitlements entitlements.xml "$APP_DIRECTORY/Contents/MacOS/idea"
log "Signing whole app..."
codesign --timestamp \
-v -s "$JB_CERT" --options=runtime \
--force \
--entitlements entitlements.xml "$APP_DIRECTORY"
log "Verifying java is not broken"
find "$APP_DIRECTORY" \
-type f -name 'java' -perm +111 -exec {} -version \;

View File

@@ -0,0 +1,138 @@
#!/bin/bash
#immediately exit script with an error if a command fails
set -euo pipefail
export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
export COPYFILE_DISABLE=true
INPUT_FILE=$1
EXPLODED=$2.exploded
BACKUP_JMODS=$2.backup
USERNAME=$3
PASSWORD=$4
CODESIGN_STRING=$5
NOTARIZE=$6
BUNDLE_ID=$7
cd "$(dirname "$0")"
function log() {
echo "$(date '+[%H:%M:%S]') $*"
}
log "Deleting $EXPLODED ..."
if test -d "$EXPLODED"; then
find "$EXPLODED" -mindepth 1 -maxdepth 1 -exec chmod -R u+wx '{}' \;
fi
rm -rf "$EXPLODED"
mkdir "$EXPLODED"
rm -rf "$BACKUP_JMODS"
mkdir "$BACKUP_JMODS"
log "Unzipping $INPUT_FILE to $EXPLODED ..."
tar -xzvf "$INPUT_FILE" --directory $EXPLODED
rm "$INPUT_FILE"
BUILD_NAME="$(ls "$EXPLODED")"
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/jmods; then
mv $EXPLODED/$BUILD_NAME/Contents/Home/jmods $BACKUP_JMODS
fi
if test -f $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib; then
mv $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib $BACKUP_JMODS
fi
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks; then
mv $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks $BACKUP_JMODS
fi
log "$INPUT_FILE extracted and removed"
APPLICATION_PATH="$EXPLODED/$BUILD_NAME"
find "$APPLICATION_PATH/Contents/Home/bin" \
-maxdepth 1 -type f -name '*.jnilib' -print0 |
while IFS= read -r -d $'\0' file; do
if [ -f "$file" ]; then
log "Linking $file"
b="$(basename "$file" .jnilib)"
ln -sf "$b.jnilib" "$(dirname "$file")/$b.dylib"
fi
done
find "$APPLICATION_PATH/Contents/" \
-maxdepth 1 -type f -name '*.txt' -print0 |
while IFS= read -r -d $'\0' file; do
if [ -f "$file" ]; then
log "Moving $file"
mv "$file" "$APPLICATION_PATH/Contents/Resources"
fi
done
non_plist=$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist' | wc -l)
if [[ $non_plist -gt 0 ]]; then
log "Only Info.plist file is allowed in Contents directory but found $non_plist file(s):"
log "$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist')"
exit 1
fi
log "Unlocking keychain..."
# Make sure *.p12 is imported into local KeyChain
security unlock-keychain -p "$PASSWORD" "/Users/$USERNAME/Library/Keychains/login.keychain"
attempt=1
limit=3
set +e
while [[ $attempt -le $limit ]]; do
log "Signing (attempt $attempt) $APPLICATION_PATH ..."
./sign.sh "$APPLICATION_PATH" "$CODESIGN_STRING"
ec=$?
if [[ $ec -ne 0 ]]; then
((attempt += 1))
if [ $attempt -eq $limit ]; then
set -e
fi
log "Signing failed, wait for 30 sec and try to sign again"
sleep 30
else
log "Signing done"
codesign -v "$APPLICATION_PATH" -vvvvv
log "Check sign done"
((attempt += limit))
fi
done
set -e
if [ "$NOTARIZE" = "yes" ]; then
log "Notarizing..."
# shellcheck disable=SC1090
source "$HOME/.notarize_token"
APP_NAME=$(echo ${INPUT_FILE} | awk -F"." '{ print $1 }')
# Since notarization tool uses same file for upload token we have to trick it into using different folders, hence fake root
# Also it leaves copy of zip file in TMPDIR, so notarize.sh overrides it and uses FAKE_ROOT as location for temp TMPDIR
FAKE_ROOT="$(pwd)/fake-root"
mkdir -p "$FAKE_ROOT"
echo "Notarization will use fake root: $FAKE_ROOT"
./notarize.sh "$APPLICATION_PATH" "$APPLE_USERNAME" "$APPLE_PASSWORD" "$APP_NAME" "$BUNDLE_ID" "$FAKE_ROOT"
rm -rf "$FAKE_ROOT"
set +e
log "Stapling..."
xcrun stapler staple "$APPLICATION_PATH"
else
log "Notarization disabled"
log "Stapling disabled"
fi
log "Zipping $BUILD_NAME to $INPUT_FILE ..."
(
#cd "$EXPLODED"
#ditto -c -k --sequesterRsrc --keepParent "$BUILD_NAME" "../$INPUT_FILE"
if test -d $BACKUP_JMODS/jmods; then
mv $BACKUP_JMODS/jmods $EXPLODED/$BUILD_NAME/Contents/Home
fi
COPYFILE_DISABLE=1 tar -pczf $INPUT_FILE --exclude='*.dSYM' --exclude='man' -C $EXPLODED $BUILD_NAME
log "Finished zipping"
)
rm -rf "$EXPLODED"
log "Done"

View File

@@ -0,0 +1,30 @@
diff --git modules.list modules.list
index 7c4b3e9cb6d..5ed60349ca7 100644
--- modules.list
+++ modules.list
@@ -53,4 +53,7 @@ jdk.security.jgss,
jdk.unsupported,
jdk.xml.dom,
jdk.zipfs,
-jdk.hotspot.agent
+jdk.hotspot.agent,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index b663b382f52..3e9acdc0c27 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -109,7 +109,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,29 @@
From 960dafbeeba190911955c208b611fecc15d66738 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Wed, 11 Mar 2020 14:19:34 +0100
Subject: [PATCH 03/34] Fix class cast exception on redefinition of class A,
that is superclass of B that has anonymous class C
---
src/hotspot/share/oops/instanceKlass.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp
index 994fc8a3bc8..3be3a09ef8f 100644
--- a/src/hotspot/share/oops/instanceKlass.cpp
+++ b/src/hotspot/share/oops/instanceKlass.cpp
@@ -953,7 +953,10 @@ bool InstanceKlass::link_class_impl(TRAPS) {
if (!is_linked()) {
if (!is_rewritten()) {
- {
+ // (DCEVM): If class A is being redefined and class B->A (B is extended from A) and B is host class of anonymous class C
+ // then second redefinition fails with cannot cast klass exception. So we currently turn off bytecode verification
+ // on redefinition.
+ if (!AllowEnhancedClassRedefinition || !newest_version()->is_redefining()) {
bool verify_ok = verify_code(THREAD);
if (!verify_ok) {
return false;
--
2.23.0

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,240 @@
From 39df5f163d4a0f1fd6b92313a5570808f19d5e20 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 4 Oct 2020 21:12:12 +0200
Subject: [PATCH 05/34] Support for Lambda class redefinition
---
.../share/classfile/classLoaderData.cpp | 9 +++
.../share/classfile/classLoaderData.hpp | 2 +-
.../share/classfile/systemDictionary.cpp | 12 +++-
.../share/classfile/systemDictionary.hpp | 1 +
.../prims/jvmtiEnhancedRedefineClasses.cpp | 65 +++++++++++++++++--
.../prims/jvmtiEnhancedRedefineClasses.hpp | 1 +
.../share/prims/resolvedMethodTable.cpp | 2 +
src/hotspot/share/prims/unsafe.cpp | 1 +
8 files changed, 83 insertions(+), 10 deletions(-)
diff --git a/src/hotspot/share/classfile/classLoaderData.cpp b/src/hotspot/share/classfile/classLoaderData.cpp
index 0cd90bb8c27..4d64c6b454a 100644
--- a/src/hotspot/share/classfile/classLoaderData.cpp
+++ b/src/hotspot/share/classfile/classLoaderData.cpp
@@ -593,6 +593,15 @@ Dictionary* ClassLoaderData::create_dictionary() {
return new Dictionary(this, size, resizable);
}
+void ClassLoaderData::exchange_holders(ClassLoaderData* cld) {
+ oop holder_oop = _holder.peek();
+ _holder.replace(cld->_holder.peek());
+ cld->_holder.replace(holder_oop);
+ WeakHandle<vm_class_loader_data> exchange = _holder;
+ _holder = cld->_holder;
+ cld->_holder = exchange;
+}
+
// Tell the GC to keep this klass alive while iterating ClassLoaderDataGraph
oop ClassLoaderData::holder_phantom() const {
// A klass that was previously considered dead can be looked up in the
diff --git a/src/hotspot/share/classfile/classLoaderData.hpp b/src/hotspot/share/classfile/classLoaderData.hpp
index ba2393f8dd0..e2ae0a77351 100644
--- a/src/hotspot/share/classfile/classLoaderData.hpp
+++ b/src/hotspot/share/classfile/classLoaderData.hpp
@@ -181,7 +181,7 @@ class ClassLoaderData : public CHeapObj<mtClass> {
bool has_accumulated_modified_oops() { return _accumulated_modified_oops; }
oop holder_no_keepalive() const;
oop holder_phantom() const;
-
+ void exchange_holders(ClassLoaderData* cld);
private:
void unload();
bool keep_alive() const { return _keep_alive > 0; }
diff --git a/src/hotspot/share/classfile/systemDictionary.cpp b/src/hotspot/share/classfile/systemDictionary.cpp
index bd0cae7cb9b..8f2b46add4d 100644
--- a/src/hotspot/share/classfile/systemDictionary.cpp
+++ b/src/hotspot/share/classfile/systemDictionary.cpp
@@ -1062,10 +1062,14 @@ InstanceKlass* SystemDictionary::parse_stream(Symbol* class_name,
Handle class_loader,
ClassFileStream* st,
const ClassLoadInfo& cl_info,
+ InstanceKlass* old_klass,
TRAPS) {
EventClassLoad class_load_start_event;
ClassLoaderData* loader_data;
+
+ bool is_redefining = (old_klass != NULL);
+
bool is_unsafe_anon_class = cl_info.unsafe_anonymous_host() != NULL;
// - for unsafe anonymous class: create a new CLD whith a class holder that uses
@@ -1094,8 +1098,12 @@ InstanceKlass* SystemDictionary::parse_stream(Symbol* class_name,
class_name,
loader_data,
cl_info,
- false, // pick_newest
+ is_redefining, // pick_newest
CHECK_NULL);
+ if (is_redefining && k != NULL) {
+ k->set_redefining(true);
+ k->set_old_version(old_klass);
+ }
if ((cl_info.is_hidden() || is_unsafe_anon_class) && k != NULL) {
// Hidden classes that are not strong and unsafe anonymous classes must update
@@ -1998,7 +2006,7 @@ void SystemDictionary::remove_from_hierarchy(InstanceKlass* k) {
k->remove_from_sibling_list();
}
-// (DCEVM)
+// (DCEVM)
void SystemDictionary::update_constraints_after_redefinition() {
constraints()->update_after_redefinition();
}
diff --git a/src/hotspot/share/classfile/systemDictionary.hpp b/src/hotspot/share/classfile/systemDictionary.hpp
index 4547449dbec..931e655d631 100644
--- a/src/hotspot/share/classfile/systemDictionary.hpp
+++ b/src/hotspot/share/classfile/systemDictionary.hpp
@@ -329,6 +329,7 @@ public:
Handle class_loader,
ClassFileStream* st,
const ClassLoadInfo& cl_info,
+ InstanceKlass* old_klass,
TRAPS);
// Resolve from stream (called by jni_DefineClass and JVM_DefineClass)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 92ce6c27b8a..8b765623dcd 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -494,6 +494,8 @@ void VM_EnhancedRedefineClasses::doit() {
ClassLoaderDataGraph::classes_do(&clear_cpool_cache);
+ // SystemDictionary::methods_do(fix_invoke_method);
+
// JSR-292 support
if (_any_class_has_resolved_methods) {
bool trace_name_printed = false;
@@ -756,12 +758,34 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
// load hook event.
state->set_class_being_redefined(the_class, _class_load_kind);
- InstanceKlass* k = SystemDictionary::resolve_from_stream(the_class_sym,
- the_class_loader,
- protection_domain,
- &st,
- the_class,
- THREAD);
+ InstanceKlass* k;
+
+ if (InstanceKlass::cast(the_class)->is_anonymous()) {
+ const InstanceKlass* host_class = the_class->host_klass();
+
+ // Make sure it's the real host class, not another anonymous class.
+ while (host_class != NULL && host_class->is_anonymous()) {
+ host_class = host_class->host_klass();
+ }
+
+ k = SystemDictionary::parse_stream(the_class_sym,
+ the_class_loader,
+ protection_domain,
+ &st,
+ host_class,
+ the_class,
+ NULL,
+ THREAD);
+ k->class_loader_data()->exchange_holders(the_class->class_loader_data());
+ the_class->class_loader_data()->inc_keep_alive();
+ } else {
+ k = SystemDictionary::resolve_from_stream(the_class_sym,
+ the_class_loader,
+ protection_domain,
+ &st,
+ the_class,
+ THREAD);
+ }
// Clear class_being_redefined just to be sure.
state->clear_class_being_redefined();
@@ -1442,6 +1466,30 @@ void VM_EnhancedRedefineClasses::MethodDataCleaner::do_klass(Klass* k) {
}
}
+void VM_EnhancedRedefineClasses::fix_invoke_method(Method* method) {
+
+ constantPoolHandle other_cp = constantPoolHandle(method->constants());
+
+ for (int i = 0; i < other_cp->length(); i++) {
+ if (other_cp->tag_at(i).is_klass()) {
+ Klass* klass = other_cp->resolved_klass_at(i);
+ if (klass->new_version() != NULL) {
+ // Constant pool entry points to redefined class -- update to the new version
+ other_cp->klass_at_put(i, klass->newest_version());
+ }
+ assert(other_cp->resolved_klass_at(i)->new_version() == NULL, "Must be new klass!");
+ }
+ }
+
+ ConstantPoolCache* cp_cache = other_cp->cache();
+ if (cp_cache != NULL) {
+ cp_cache->clear_entries();
+ }
+
+}
+
+
+
void VM_EnhancedRedefineClasses::update_jmethod_ids() {
for (int j = 0; j < _matching_methods_length; ++j) {
Method* old_method = _matching_old_methods[j];
@@ -1979,7 +2027,10 @@ jvmtiError VM_EnhancedRedefineClasses::find_sorted_affected_classes(TRAPS) {
// Find classes not directly redefined, but affected by a redefinition (because one of its supertypes is redefined)
AffectedKlassClosure closure(_affected_klasses);
// Updated in j10, from original SystemDictionary::classes_do
- ClassLoaderDataGraph::dictionary_classes_do(&closure);
+
+ ClassLoaderDataGraph::classes_do(&closure);
+ //ClassLoaderDataGraph::dictionary_classes_do(&closure);
+
log_trace(redefine, class, load)("%d classes affected", _affected_klasses->length());
// Sort the affected klasses such that a supertype is always on a smaller array index than its subtype.
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index 60b62c3170a..d8a11b51fe9 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -116,6 +116,7 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
void rollback();
static void mark_as_scavengable(nmethod* nm);
static void unpatch_bytecode(Method* method);
+ static void fix_invoke_method(Method* method);
// Figure out which new methods match old methods in name and signature,
// which methods have been added, and which are no longer present
diff --git a/src/hotspot/share/prims/resolvedMethodTable.cpp b/src/hotspot/share/prims/resolvedMethodTable.cpp
index 122bb8c186b..81b3aa96564 100644
--- a/src/hotspot/share/prims/resolvedMethodTable.cpp
+++ b/src/hotspot/share/prims/resolvedMethodTable.cpp
@@ -414,6 +414,8 @@ void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed)
InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
Method* newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
+ log_info(redefine, class, load, exceptions)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
+
assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
assert(newer_method != NULL, "method_with_idnum() should not be NULL");
assert(old_method != newer_method, "sanity check");
diff --git a/src/hotspot/share/prims/unsafe.cpp b/src/hotspot/share/prims/unsafe.cpp
index 72d81ec9d6c..027afa3fabd 100644
--- a/src/hotspot/share/prims/unsafe.cpp
+++ b/src/hotspot/share/prims/unsafe.cpp
@@ -865,6 +865,7 @@ Unsafe_DefineAnonymousClass_impl(JNIEnv *env,
host_loader,
&st,
cl_info,
+ NULL,
CHECK_NULL);
if (anonk == NULL) {
return NULL;
--
2.23.0

View File

@@ -0,0 +1,135 @@
From 5af1daedc86b5fec0f222cbdda3afbdf518985ea Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sat, 23 May 2020 10:02:15 +0200
Subject: [PATCH 06/34] Fix "no original bytecode found" error if method with
bkp is missing
Sometimes IDE can deploy class with erroneous method, such method has
n bytecode, but breakpoint position can still exist.
---
src/hotspot/share/interpreter/bytecodes.cpp | 2 +-
.../share/interpreter/interpreterRuntime.cpp | 2 +-
src/hotspot/share/oops/method.cpp | 8 ++++----
src/hotspot/share/oops/method.hpp | 4 ++--
.../prims/jvmtiEnhancedRedefineClasses.cpp | 18 ++++++++++--------
5 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/src/hotspot/share/interpreter/bytecodes.cpp b/src/hotspot/share/interpreter/bytecodes.cpp
index e377e36b88c..262ecc021b2 100644
--- a/src/hotspot/share/interpreter/bytecodes.cpp
+++ b/src/hotspot/share/interpreter/bytecodes.cpp
@@ -84,7 +84,7 @@ Bytecodes::Code Bytecodes::code_at(Method* method, int bci) {
Bytecodes::Code Bytecodes::non_breakpoint_code_at(const Method* method, address bcp) {
assert(method != NULL, "must have the method for breakpoint conversion");
assert(method->contains(bcp), "must be valid bcp in method");
- return method->orig_bytecode_at(method->bci_from(bcp));
+ return method->orig_bytecode_at(method->bci_from(bcp), false);
}
int Bytecodes::special_length_at(Bytecodes::Code code, address bcp, address end) {
diff --git a/src/hotspot/share/interpreter/interpreterRuntime.cpp b/src/hotspot/share/interpreter/interpreterRuntime.cpp
index ed3cc3eb6a2..504e59caf51 100644
--- a/src/hotspot/share/interpreter/interpreterRuntime.cpp
+++ b/src/hotspot/share/interpreter/interpreterRuntime.cpp
@@ -814,7 +814,7 @@ JRT_END
// Invokes
JRT_ENTRY(Bytecodes::Code, InterpreterRuntime::get_original_bytecode_at(JavaThread* thread, Method* method, address bcp))
- return method->orig_bytecode_at(method->bci_from(bcp));
+ return method->orig_bytecode_at(method->bci_from(bcp), false);
JRT_END
JRT_ENTRY(void, InterpreterRuntime::set_original_bytecode_at(JavaThread* thread, Method* method, address bcp, Bytecodes::Code new_code))
diff --git a/src/hotspot/share/oops/method.cpp b/src/hotspot/share/oops/method.cpp
index 516f2bb8f2f..1c88511a5fc 100644
--- a/src/hotspot/share/oops/method.cpp
+++ b/src/hotspot/share/oops/method.cpp
@@ -1853,14 +1853,14 @@ bool CompressedLineNumberReadStream::read_pair() {
#if INCLUDE_JVMTI
-Bytecodes::Code Method::orig_bytecode_at(int bci) const {
+Bytecodes::Code Method::orig_bytecode_at(int bci, bool no_fatal) const {
BreakpointInfo* bp = method_holder()->breakpoints();
for (; bp != NULL; bp = bp->next()) {
if (bp->match(this, bci)) {
return bp->orig_bytecode();
}
}
- {
+ if (!no_fatal) {
ResourceMark rm;
fatal("no original bytecode found in %s at bci %d", name_and_sig_as_C_string(), bci);
}
@@ -2006,7 +2006,7 @@ BreakpointInfo::BreakpointInfo(Method* m, int bci) {
_signature_index = m->signature_index();
_orig_bytecode = (Bytecodes::Code) *m->bcp_from(_bci);
if (_orig_bytecode == Bytecodes::_breakpoint)
- _orig_bytecode = m->orig_bytecode_at(_bci);
+ _orig_bytecode = m->orig_bytecode_at(_bci, false);
_next = NULL;
}
@@ -2015,7 +2015,7 @@ void BreakpointInfo::set(Method* method) {
{
Bytecodes::Code code = (Bytecodes::Code) *method->bcp_from(_bci);
if (code == Bytecodes::_breakpoint)
- code = method->orig_bytecode_at(_bci);
+ code = method->orig_bytecode_at(_bci, false);
assert(orig_bytecode() == code, "original bytecode must be the same");
}
#endif
diff --git a/src/hotspot/share/oops/method.hpp b/src/hotspot/share/oops/method.hpp
index 83ed2d9c3c1..4d4cc6dc012 100644
--- a/src/hotspot/share/oops/method.hpp
+++ b/src/hotspot/share/oops/method.hpp
@@ -230,7 +230,7 @@ class Method : public Metadata {
// JVMTI breakpoints
#if !INCLUDE_JVMTI
- Bytecodes::Code orig_bytecode_at(int bci) const {
+ Bytecodes::Code orig_bytecode_at(int bci, bool no_fatal) const {
ShouldNotReachHere();
return Bytecodes::_shouldnotreachhere;
}
@@ -239,7 +239,7 @@ class Method : public Metadata {
};
u2 number_of_breakpoints() const {return 0;}
#else // !INCLUDE_JVMTI
- Bytecodes::Code orig_bytecode_at(int bci) const;
+ Bytecodes::Code orig_bytecode_at(int bci, bool no_fatal) const;
void set_orig_bytecode_at(int bci, Bytecodes::Code code);
void set_breakpoint(int bci);
void clear_breakpoint(int bci);
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 8b765623dcd..a859b8e1162 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -1362,14 +1362,16 @@ void VM_EnhancedRedefineClasses::unpatch_bytecode(Method* method) {
if (code == Bytecodes::_breakpoint) {
int bci = method->bci_from(bcp);
- code = method->orig_bytecode_at(bci);
- java_code = Bytecodes::java_code(code);
- if (code != java_code &&
- (java_code == Bytecodes::_getfield ||
- java_code == Bytecodes::_putfield ||
- java_code == Bytecodes::_aload_0)) {
- // Let breakpoint table handling unpatch bytecode
- method->set_orig_bytecode_at(bci, java_code);
+ code = method->orig_bytecode_at(bci, true);
+ if (code != Bytecodes::_shouldnotreachhere) {
+ java_code = Bytecodes::java_code(code);
+ if (code != java_code &&
+ (java_code == Bytecodes::_getfield ||
+ java_code == Bytecodes::_putfield ||
+ java_code == Bytecodes::_aload_0)) {
+ // Let breakpoint table handling unpatch bytecode
+ method->set_orig_bytecode_at(bci, java_code);
+ }
}
} else {
java_code = Bytecodes::java_code(code);
--
2.23.0

View File

@@ -0,0 +1,57 @@
From 19d2274a5dff6e6b31474252b45e5e7484f0180b Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 24 May 2020 12:07:42 +0200
Subject: [PATCH 07/34] Replace deleted method with
Universe::throw_no_such_method_error
---
.../share/prims/resolvedMethodTable.cpp | 28 +++++++++----------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/src/hotspot/share/prims/resolvedMethodTable.cpp b/src/hotspot/share/prims/resolvedMethodTable.cpp
index 81b3aa96564..caf03ffe56d 100644
--- a/src/hotspot/share/prims/resolvedMethodTable.cpp
+++ b/src/hotspot/share/prims/resolvedMethodTable.cpp
@@ -404,25 +404,25 @@ void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed)
if (old_method->is_old()) {
+ InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
+ Method* newer_method;
+
// Method* new_method;
if (old_method->is_deleted()) {
- // FIXME:(DCEVM) - check if exception can be thrown
- // new_method = Universe::throw_no_such_method_error();
- continue;
- }
-
- InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
- Method* newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
+ newer_method = Universe::throw_no_such_method_error();
+ } else {
+ newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
- log_info(redefine, class, load, exceptions)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
+ log_info(redefine, class, load, exceptions)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
- assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
- assert(newer_method != NULL, "method_with_idnum() should not be NULL");
- assert(old_method != newer_method, "sanity check");
+ assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
+ assert(newer_method != NULL, "method_with_idnum() should not be NULL");
+ assert(old_method != newer_method, "sanity check");
- if (_the_table->lookup(newer_method) != NULL) {
- // old method was already adjusted if new method exists in _the_table
- continue;
+ if (_the_table->lookup(newer_method) != NULL) {
+ // old method was already adjusted if new method exists in _the_table
+ continue;
+ }
}
java_lang_invoke_ResolvedMethodName::set_vmtarget(mem_name, newer_method);
--
2.23.0

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,50 @@
From ca47ab5a0a6ce8e2644736f323a335a957311af9 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sat, 13 Jun 2020 18:50:59 +0200
Subject: [PATCH 09/34] Change log level in advanced redefinition
- Change log level for "Comparing different class ver.." to debug
- Fix adjust_method_entries_dcevm logging levels and severity
---
src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp | 2 +-
src/hotspot/share/prims/resolvedMethodTable.cpp | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 6c9eb40ecf5..b09ba554e07 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -916,7 +916,7 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
// Calculated the difference between new and old class (field change, method change, supertype change, ...).
int VM_EnhancedRedefineClasses::calculate_redefinition_flags(InstanceKlass* new_class) {
int result = Klass::NoRedefinition;
- log_info(redefine, class, load)("Comparing different class versions of class %s",new_class->name()->as_C_string());
+ log_debug(redefine, class, load)("Comparing different class versions of class %s",new_class->name()->as_C_string());
assert(new_class->old_version() != NULL, "must have old version");
InstanceKlass* the_class = InstanceKlass::cast(new_class->old_version());
diff --git a/src/hotspot/share/prims/resolvedMethodTable.cpp b/src/hotspot/share/prims/resolvedMethodTable.cpp
index caf03ffe56d..eb9fcda44f3 100644
--- a/src/hotspot/share/prims/resolvedMethodTable.cpp
+++ b/src/hotspot/share/prims/resolvedMethodTable.cpp
@@ -413,7 +413,7 @@ void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed)
} else {
newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
- log_info(redefine, class, load, exceptions)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
+ log_debug(redefine, class, update)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
assert(newer_method != NULL, "method_with_idnum() should not be NULL");
@@ -433,7 +433,7 @@ void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed)
ResourceMark rm;
if (!(*trace_name_printed)) {
- log_info(redefine, class, update)("adjust: name=%s", old_method->method_holder()->external_name());
+ log_debug(redefine, class, update)("adjust: name=%s", old_method->method_holder()->external_name());
*trace_name_printed = true;
}
log_debug(redefine, class, update, constantpool)
--
2.23.0

View File

@@ -0,0 +1,26 @@
From 7e236beee0375656d1955fc1168143c1639fb7f1 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Tue, 6 Oct 2020 22:15:31 +0200
Subject: [PATCH 10/34] AllowEnhancedClassRedefinition is false (disabled) by
default
---
src/hotspot/share/runtime/globals.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/runtime/globals.hpp b/src/hotspot/share/runtime/globals.hpp
index 5b367704800..2710c6ea0e5 100644
--- a/src/hotspot/share/runtime/globals.hpp
+++ b/src/hotspot/share/runtime/globals.hpp
@@ -2466,7 +2466,7 @@ const size_t minimumSymbolTableSize = 1024;
diagnostic(bool, DeoptimizeNMethodBarriersALot, false, \
"Make nmethod barriers deoptimise a lot.") \
\
- product(bool, AllowEnhancedClassRedefinition, true, \
+ product(bool, AllowEnhancedClassRedefinition, false, \
"Allow enhanced class redefinition beyond swapping method " \
"bodies") \
\
--
2.23.0

View File

@@ -0,0 +1,25 @@
From d56e73885111b386771f564ec6beb305338993df Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Mon, 19 Oct 2020 20:00:04 +0200
Subject: [PATCH 12/34] Set HOTSPOT_VM_DISTRO=Dynamic Code Evolution
---
make/autoconf/version-numbers | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/make/autoconf/version-numbers b/make/autoconf/version-numbers
index aabdc5bed20..df8025a2e84 100644
--- a/make/autoconf/version-numbers
+++ b/make/autoconf/version-numbers
@@ -45,7 +45,7 @@ PRODUCT_NAME=OpenJDK
PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A
-HOTSPOT_VM_DISTRO="OpenJDK"
+HOTSPOT_VM_DISTRO="Dynamic Code Evolution"
VENDOR_URL=https://openjdk.java.net/
VENDOR_URL_BUG=https://bugreport.java.com/bugreport/
VENDOR_URL_VM_BUG=https://bugreport.java.com/bugreport/crash.jsp
--
2.23.0

View File

@@ -0,0 +1,71 @@
From 7ebad43ed45805b0a3736c510f708ff17697ba7e Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 11 Oct 2020 10:43:28 +0200
Subject: [PATCH 13/34] Fix G1 nmethod registration
---
.../prims/jvmtiEnhancedRedefineClasses.cpp | 19 ++++++++++++++++---
.../prims/jvmtiEnhancedRedefineClasses.hpp | 3 ++-
2 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index b09ba554e07..718426f2819 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -216,7 +216,14 @@ void VM_EnhancedRedefineClasses::mark_as_scavengable(nmethod* nm) {
}
}
-void VM_EnhancedRedefineClasses::mark_as_scavengable_g1(nmethod* nm) {
+void VM_EnhancedRedefineClasses::unregister_nmethod_g1(nmethod* nm) {
+ // It should work not only for G1 but also for another GCs, but this way is safer now
+ if (!nm->is_zombie() && !nm->is_unloaded()) {
+ Universe::heap()->unregister_nmethod(nm);
+ }
+}
+
+void VM_EnhancedRedefineClasses::register_nmethod_g1(nmethod* nm) {
// It should work not only for G1 but also for another GCs, but this way is safer now
if (!nm->is_zombie() && !nm->is_unloaded()) {
Universe::heap()->register_nmethod(nm);
@@ -521,8 +528,9 @@ void VM_EnhancedRedefineClasses::doit() {
// For now, mark all nmethod's as scavengable that are not scavengable already
if (ScavengeRootsInCode) {
if (UseG1GC) {
- // this should work also for other GCs
- CodeCache::nmethods_do(mark_as_scavengable_g1);
+ // G1 holds references to nmethods in regions based on oops values. Since oops in nmethod can be changed in ChangePointers* closures
+ // we unregister nmethods from G1 heap, then closures are processed (oops are changed) and finally we register nmethod to G1 again
+ CodeCache::nmethods_do(unregister_nmethod_g1);
} else {
CodeCache::nmethods_do(mark_as_scavengable);
}
@@ -545,6 +553,11 @@ void VM_EnhancedRedefineClasses::doit() {
Universe::root_oops_do(&oopClosureNoBarrier);
+ if (UseG1GC) {
+ // this should work also for other GCs
+ CodeCache::nmethods_do(register_nmethod_g1);
+ }
+
}
log_trace(redefine, class, obsolete, metadata)("After updating instances");
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index 9755944d70b..4c0412d343d 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -116,7 +116,8 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
void rollback();
static void mark_as_scavengable(nmethod* nm);
- static void mark_as_scavengable_g1(nmethod* nm);
+ static void unregister_nmethod_g1(nmethod* nm);
+ static void register_nmethod_g1(nmethod* nm);
static void unpatch_bytecode(Method* method);
static void fix_invoke_method(Method* method);
--
2.23.0

View File

@@ -0,0 +1,26 @@
From 5c7e5f245f79d7e8575461dab0c356ed74c8e9a3 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Thu, 22 Oct 2020 20:15:20 +0200
Subject: [PATCH 14/34] Initialize method's _new_version/_old_version to NULL
---
src/hotspot/share/oops/method.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/hotspot/share/oops/method.cpp b/src/hotspot/share/oops/method.cpp
index 1c88511a5fc..ce940cf10a9 100644
--- a/src/hotspot/share/oops/method.cpp
+++ b/src/hotspot/share/oops/method.cpp
@@ -91,7 +91,8 @@ Method* Method::allocate(ClassLoaderData* loader_data,
return new (loader_data, size, MetaspaceObj::MethodType, THREAD) Method(cm, access_flags);
}
-Method::Method(ConstMethod* xconst, AccessFlags access_flags) {
+Method::Method(ConstMethod* xconst, AccessFlags access_flags) : _new_version(NULL),
+ _old_version(NULL) {
NoSafepointVerifier no_safepoint;
set_constMethod(xconst);
set_access_flags(access_flags);
--
2.23.0

View File

@@ -0,0 +1,193 @@
From 6ffac6e5064ec6633fdbeb8520333dca00bc6a62 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Fri, 23 Oct 2020 10:20:26 +0200
Subject: [PATCH 15/34] Clear dcevm code separation
---
src/hotspot/share/classfile/systemDictionary.cpp | 4 ++--
src/hotspot/share/gc/serial/genMarkSweep.cpp | 8 +++++---
src/hotspot/share/interpreter/linkResolver.cpp | 16 +++++++++++-----
.../instrumentation/jfrEventClassTransformer.cpp | 2 +-
src/hotspot/share/oops/instanceKlass.cpp | 10 ++++++----
src/hotspot/share/oops/method.cpp | 2 +-
.../share/prims/jvmtiGetLoadedClasses.cpp | 2 +-
src/hotspot/share/runtime/reflection.cpp | 2 +-
8 files changed, 28 insertions(+), 18 deletions(-)
diff --git a/src/hotspot/share/classfile/systemDictionary.cpp b/src/hotspot/share/classfile/systemDictionary.cpp
index 8f2b46add4d..9ac6ec96cb5 100644
--- a/src/hotspot/share/classfile/systemDictionary.cpp
+++ b/src/hotspot/share/classfile/systemDictionary.cpp
@@ -1241,7 +1241,7 @@ InstanceKlass* SystemDictionary::resolve_from_stream(Symbol* class_name,
MutexLocker mu(THREAD, SystemDictionary_lock);
Klass* check = find_class(h_name, k->class_loader_data());
- assert((check == k && !k->is_redefining()) || (k->is_redefining() && check == k->old_version()), "should be present in the dictionary");
+ assert(check == k && !k->is_redefining() || k->is_redefining() && check == k->old_version(), "should be present in the dictionary");
} );
return k;
@@ -2290,7 +2290,7 @@ void SystemDictionary::check_constraints(unsigned int d_hash,
// also hold array classes.
assert(check->is_instance_klass(), "noninstance in systemdictionary");
- if ((defining == true) || ((k != check) && k->old_version() != check)) {
+ if ((defining == true) || (k != check && (!AllowEnhancedClassRedefinition || k->old_version() != check))) {
throwException = true;
ss.print("loader %s", loader_data->loader_name_and_id());
ss.print(" attempted duplicate %s definition for %s. (%s)",
diff --git a/src/hotspot/share/gc/serial/genMarkSweep.cpp b/src/hotspot/share/gc/serial/genMarkSweep.cpp
index 1d13c647452..548df01e557 100644
--- a/src/hotspot/share/gc/serial/genMarkSweep.cpp
+++ b/src/hotspot/share/gc/serial/genMarkSweep.cpp
@@ -334,7 +334,9 @@ void GenMarkSweep::mark_sweep_phase4() {
GenCompactClosure blk;
gch->generation_iterate(&blk, true);
- DcevmSharedGC::copy_rescued_objects_back(MarkSweep::_rescued_oops, true);
- DcevmSharedGC::clear_rescued_objects_resource(MarkSweep::_rescued_oops);
- MarkSweep::_rescued_oops = NULL;
+ if (AllowEnhancedClassRedefinition) {
+ DcevmSharedGC::copy_rescued_objects_back(MarkSweep::_rescued_oops, true);
+ DcevmSharedGC::clear_rescued_objects_resource(MarkSweep::_rescued_oops);
+ MarkSweep::_rescued_oops = NULL;
+ }
}
diff --git a/src/hotspot/share/interpreter/linkResolver.cpp b/src/hotspot/share/interpreter/linkResolver.cpp
index b6e9e0a308d..b2f24ddbeda 100644
--- a/src/hotspot/share/interpreter/linkResolver.cpp
+++ b/src/hotspot/share/interpreter/linkResolver.cpp
@@ -282,9 +282,14 @@ void LinkResolver::check_klass_accessibility(Klass* ref_klass, Klass* sel_klass,
if (!base_klass->is_instance_klass()) {
return; // no relevant check to do
}
-
- Reflection::VerifyClassAccessResults vca_result =
- Reflection::verify_class_access(ref_klass->newest_version(), InstanceKlass::cast(base_klass->newest_version()), true);
+ Klass* refKlassNewest = ref_klass;
+ Klass* baseKlassNewest = base_klass;
+ if (AllowEnhancedClassRedefinition) {
+ refKlassNewest = ref_klass->newest_version();
+ baseKlassNewest = base_klass->newest_version();
+ }
+ Reflection::VerifyClassAccessResults vca_result =
+ Reflection::verify_class_access(refKlassNewest, InstanceKlass::cast(baseKlassNewest), true);
if (vca_result != Reflection::ACCESS_OK) {
ResourceMark rm(THREAD);
char* msg = Reflection::verify_class_access_msg(ref_klass,
@@ -566,7 +571,8 @@ void LinkResolver::check_method_accessability(Klass* ref_klass,
// We'll check for the method name first, as that's most likely
// to be false (so we'll short-circuit out of these tests).
if (sel_method->name() == vmSymbols::clone_name() &&
- sel_klass->newest_version() == SystemDictionary::Object_klass()->newest_version() &&
+ ( !AllowEnhancedClassRedefinition && sel_klass == SystemDictionary::Object_klass() ||
+ AllowEnhancedClassRedefinition && sel_klass->newest_version() == SystemDictionary::Object_klass()->newest_version()) &&
resolved_klass->is_array_klass()) {
// We need to change "protected" to "public".
assert(flags.is_protected(), "clone not protected?");
@@ -1011,7 +1017,7 @@ void LinkResolver::resolve_field(fieldDescriptor& fd,
// or by the <init> method (in case of an instance field).
if (is_put && fd.access_flags().is_final()) {
- if (sel_klass != current_klass && sel_klass != current_klass->active_version()) {
+ if (sel_klass != current_klass && (!AllowEnhancedClassRedefinition || sel_klass != current_klass->active_version())) {
ResourceMark rm(THREAD);
stringStream ss;
ss.print("Update to %s final field %s.%s attempted from a different class (%s) than the field's declaring class",
diff --git a/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp b/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
index 96fc139bea3..f7284197c5a 100644
--- a/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
+++ b/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
@@ -1471,7 +1471,7 @@ static InstanceKlass* create_new_instance_klass(InstanceKlass* ik, ClassFileStre
cld,
&cl_info,
ClassFileParser::INTERNAL, // internal visibility
- false,
+ false,
THREAD);
if (HAS_PENDING_EXCEPTION) {
log_pending_exception(PENDING_EXCEPTION);
diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp
index 3be3a09ef8f..f8e60941046 100644
--- a/src/hotspot/share/oops/instanceKlass.cpp
+++ b/src/hotspot/share/oops/instanceKlass.cpp
@@ -199,7 +199,9 @@ bool InstanceKlass::has_nest_member(InstanceKlass* k, TRAPS) const {
// able to perform that loading but we can't exclude the compiler threads from
// executing this logic. But it should actually be impossible to trigger loading here.
Klass* k2 = _constants->klass_at(cp_index, THREAD);
- k2 = k2->newest_version();
+ if (AllowEnhancedClassRedefinition) {
+ k2 = k2->newest_version();
+ }
assert(!HAS_PENDING_EXCEPTION || PENDING_EXCEPTION->is_a(SystemDictionary::VirtualMachineError_klass()),
"Exceptions should not be possible here");
if (k2 == k) {
@@ -1003,7 +1005,7 @@ bool InstanceKlass::link_class_impl(TRAPS) {
#endif
set_init_state(linked);
// (DCEVM) Must check for old version in order to prevent infinite loops.
- if (JvmtiExport::should_post_class_prepare() && old_version() == NULL /* JVMTI deadlock otherwise */) {
+ if (JvmtiExport::should_post_class_prepare() && (!AllowEnhancedClassRedefinition || old_version() == NULL) /* JVMTI deadlock otherwise */) {
Thread *thread = THREAD;
assert(thread->is_Java_thread(), "thread->is_Java_thread()");
JvmtiExport::post_class_prepare((JavaThread *) thread, this);
@@ -1084,7 +1086,7 @@ void InstanceKlass::initialize_impl(TRAPS) {
// we might end up throwing IE from link/symbol resolution sites
// that aren't expected to throw. This would wreak havoc. See 6320309.
while ((is_being_initialized() && !is_reentrant_initialization(jt))
- || (old_version() != NULL && InstanceKlass::cast(old_version())->is_being_initialized())) {
+ || (AllowEnhancedClassRedefinition && old_version() != NULL && InstanceKlass::cast(old_version())->is_being_initialized())) {
wait = true;
jt->set_class_to_be_initialized(this);
ol.wait_uninterruptibly(jt);
@@ -3782,7 +3784,7 @@ void InstanceKlass::verify_on(outputStream* st) {
guarantee(sib->is_klass(), "should be klass");
// TODO: (DCEVM) explain
- guarantee(sib->super() == super || super->newest_version() == SystemDictionary::Object_klass(), "siblings should have same superklass");
+ guarantee(sib->super() == super || AllowEnhancedClassRedefinition && super->newest_version() == SystemDictionary::Object_klass(), "siblings should have same superklass");
}
// Verify local interfaces
diff --git a/src/hotspot/share/oops/method.cpp b/src/hotspot/share/oops/method.cpp
index ce940cf10a9..2d8e5b0256b 100644
--- a/src/hotspot/share/oops/method.cpp
+++ b/src/hotspot/share/oops/method.cpp
@@ -2208,7 +2208,7 @@ void Method::ensure_jmethod_ids(ClassLoaderData* loader_data, int capacity) {
// Add a method id to the jmethod_ids
jmethodID Method::make_jmethod_id(ClassLoaderData* loader_data, Method* m) {
// FIXME: (DCEVM) ???
- if (m != m->newest_version()) {
+ if (AllowEnhancedClassRedefinition && m != m->newest_version()) {
m = m->newest_version();
}
ClassLoaderData* cld = loader_data;
diff --git a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
index 1c7677f270f..6c12ee64a6e 100644
--- a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
@@ -75,7 +75,7 @@ public:
// the new version (SystemDictionary stores only new versions). But the LoadedClassesClosure's functionality was
// changed in java8 where jvmtiLoadedClasses collects all classes from all classloaders, therefore we
// must use new versions only.
- if (k->new_version()==NULL) {
+ if (AllowEnhancedClassRedefinition && k->new_version()==NULL) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
if (_dictionary_walk) {
// Collect array classes this way when walking the dictionary (because array classes are
diff --git a/src/hotspot/share/runtime/reflection.cpp b/src/hotspot/share/runtime/reflection.cpp
index 0e7722dba7d..d67457f02ac 100644
--- a/src/hotspot/share/runtime/reflection.cpp
+++ b/src/hotspot/share/runtime/reflection.cpp
@@ -628,7 +628,7 @@ bool Reflection::verify_member_access(const Klass* current_class,
TRAPS) {
// (DCEVM) Decide accessibility based on active version
- if (current_class != NULL) {
+ if (AllowEnhancedClassRedefinition && current_class != NULL) {
current_class = current_class->active_version();
}
--
2.23.0

View File

@@ -0,0 +1,26 @@
From dc675de6ac42819b8536827ea450fcad13a97448 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Wed, 11 Nov 2020 18:45:15 +0100
Subject: [PATCH 16/34] Fix LoadedClassesClosure - fixes problems with remote
debugging
---
src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
index 6c12ee64a6e..2a469555dbd 100644
--- a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
@@ -75,7 +75,7 @@ public:
// the new version (SystemDictionary stores only new versions). But the LoadedClassesClosure's functionality was
// changed in java8 where jvmtiLoadedClasses collects all classes from all classloaders, therefore we
// must use new versions only.
- if (AllowEnhancedClassRedefinition && k->new_version()==NULL) {
+ if (!AllowEnhancedClassRedefinition || k->new_version()==NULL) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
if (_dictionary_walk) {
// Collect array classes this way when walking the dictionary (because array classes are
--
2.23.0

View File

@@ -0,0 +1,183 @@
From 1d682efa88c716e1849163d5abff3a3367581d16 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Mon, 16 Nov 2020 21:11:19 +0100
Subject: [PATCH 18/34] pre dcevm15 - fix GC spaces originally in removed CMS
patch
---
src/hotspot/share/gc/shared/space.cpp | 16 ++++++++--------
src/hotspot/share/gc/shared/space.hpp | 6 +++---
src/hotspot/share/gc/shared/space.inline.hpp | 14 ++++++++------
.../share/prims/jvmtiEnhancedRedefineClasses.cpp | 6 ++----
4 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/src/hotspot/share/gc/shared/space.cpp b/src/hotspot/share/gc/shared/space.cpp
index 875a6dc854f..9772c32c42e 100644
--- a/src/hotspot/share/gc/shared/space.cpp
+++ b/src/hotspot/share/gc/shared/space.cpp
@@ -375,11 +375,11 @@ HeapWord* CompactibleSpace::forward_compact_top(size_t size, CompactPoint* cp, H
}
HeapWord* CompactibleSpace::forward(oop q, size_t size,
- CompactPoint* cp, HeapWord* compact_top) {
+ CompactPoint* cp, HeapWord* compact_top, bool force_forward) {
compact_top = forward_compact_top(size, cp, compact_top);
// store the forwarding pointer into the mark word
- if (cast_from_oop<HeapWord*>(q) != compact_top || (size_t)q->size() != size) {
+ if (force_forward || cast_from_oop<HeapWord*>(q) != compact_top || (size_t)q->size() != size) {
q->forward_to(oop(compact_top));
assert(q->is_gc_marked(), "encoding the pointer should preserve the mark");
} else {
@@ -501,7 +501,7 @@ bool CompactibleSpace::must_rescue(oop old_obj, oop new_obj) {
} else {
assert(space_index(old_obj) != space_index(new_obj), "old_obj and new_obj must be in different spaces");
- if (tenured_gen->is_in_reserved(new_obj)) {
+ if (new_in_tenured) {
// Must never rescue when moving from the new into the old generation.
assert(GenCollectedHeap::heap()->young_gen()->is_in_reserved(old_obj), "old_obj must be in DefNewGeneration");
assert(space_index(old_obj) > space_index(new_obj), "must be");
@@ -824,14 +824,14 @@ void OffsetTableContigSpace::verify() const {
// Compute the forward sizes and leave out objects whose position could
// possibly overlap other objects.
HeapWord* CompactibleSpace::forward_with_rescue(HeapWord* q, size_t size,
- CompactPoint* cp, HeapWord* compact_top) {
+ CompactPoint* cp, HeapWord* compact_top, bool force_forward) {
size_t forward_size = size;
// (DCEVM) There is a new version of the class of q => different size
if (oop(q)->klass()->new_version() != NULL) {
size_t new_size = oop(q)->size_given_klass(oop(q)->klass()->new_version());
- assert(size != new_size, "instances without changed size have to be updated prior to GC run");
+ // assert(size != new_size, "instances without changed size have to be updated prior to GC run");
forward_size = new_size;
}
@@ -845,7 +845,7 @@ HeapWord* CompactibleSpace::forward_with_rescue(HeapWord* q, size_t size,
return compact_top;
}
- return forward(oop(q), forward_size, cp, compact_top);
+ return forward(oop(q), forward_size, cp, compact_top, force_forward);
}
// Compute the forwarding addresses for the objects that need to be rescued.
@@ -861,11 +861,11 @@ HeapWord* CompactibleSpace::forward_rescued(CompactPoint* cp, HeapWord* compact_
// (DCEVM) There is a new version of the class of q => different size
if (oop(q)->klass()->new_version() != NULL) {
size_t new_size = oop(q)->size_given_klass(oop(q)->klass()->new_version());
- assert(size != new_size, "instances without changed size have to be updated prior to GC run");
+ // assert(size != new_size, "instances without changed size have to be updated prior to GC run");
size = new_size;
}
- compact_top = cp->space->forward(oop(q), size, cp, compact_top);
+ compact_top = cp->space->forward(oop(q), size, cp, compact_top, true);
assert(compact_top <= end(), "must not write over end of space!");
}
MarkSweep::_rescued_oops->clear();
diff --git a/src/hotspot/share/gc/shared/space.hpp b/src/hotspot/share/gc/shared/space.hpp
index c9bfc365f0f..f7648995454 100644
--- a/src/hotspot/share/gc/shared/space.hpp
+++ b/src/hotspot/share/gc/shared/space.hpp
@@ -405,7 +405,7 @@ public:
virtual void prepare_for_compaction(CompactPoint* cp) = 0;
// MarkSweep support phase3
DEBUG_ONLY(int space_index(oop obj));
- bool must_rescue(oop old_obj, oop new_obj);
+ virtual bool must_rescue(oop old_obj, oop new_obj);
HeapWord* rescue(HeapWord* old_obj);
virtual void adjust_pointers();
// MarkSweep support phase4
@@ -436,11 +436,11 @@ public:
// function of the then-current compaction space, and updates "cp->threshold
// accordingly".
virtual HeapWord* forward(oop q, size_t size, CompactPoint* cp,
- HeapWord* compact_top);
+ HeapWord* compact_top, bool force_forward);
// (DCEVM) same as forwad, but can rescue objects. Invoked only during
// redefinition runs
HeapWord* forward_with_rescue(HeapWord* q, size_t size, CompactPoint* cp,
- HeapWord* compact_top);
+ HeapWord* compact_top, bool force_forward);
HeapWord* forward_rescued(CompactPoint* cp, HeapWord* compact_top);
diff --git a/src/hotspot/share/gc/shared/space.inline.hpp b/src/hotspot/share/gc/shared/space.inline.hpp
index 5a93e93471b..fa645423685 100644
--- a/src/hotspot/share/gc/shared/space.inline.hpp
+++ b/src/hotspot/share/gc/shared/space.inline.hpp
@@ -163,6 +163,8 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
HeapWord* cur_obj = space->bottom();
HeapWord* scan_limit = space->scan_limit();
+ bool force_forward = false;
+
while (cur_obj < scan_limit) {
assert(!space->scanned_block_is_obj(cur_obj) ||
oop(cur_obj)->mark_raw().is_marked() || oop(cur_obj)->mark_raw().is_unlocked() ||
@@ -174,14 +176,15 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
size_t size = space->scanned_block_size(cur_obj);
if (redefinition_run) {
- compact_top = cp->space->forward_with_rescue(cur_obj, size, cp, compact_top);
+ compact_top = cp->space->forward_with_rescue(cur_obj, size, cp, compact_top, force_forward);
if (first_dead == NULL && oop(cur_obj)->is_gc_marked()) {
/* Was moved (otherwise, forward would reset mark),
set first_dead to here */
first_dead = cur_obj;
+ force_forward = true;
}
} else {
- compact_top = cp->space->forward(oop(cur_obj), size, cp, compact_top);
+ compact_top = cp->space->forward(oop(cur_obj), size, cp, compact_top, false);
}
cur_obj += size;
@@ -197,9 +200,9 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
// see if we might want to pretend this object is alive so that
// we don't have to compact quite as often.
- if (cur_obj == compact_top && dead_spacer.insert_deadspace(cur_obj, end)) {
+ if (!redefinition_run && cur_obj == compact_top && dead_spacer.insert_deadspace(cur_obj, end)) {
oop obj = oop(cur_obj);
- compact_top = cp->space->forward(obj, obj->size(), cp, compact_top);
+ compact_top = cp->space->forward(obj, obj->size(), cp, compact_top, force_forward);
end_of_live = end;
} else {
// otherwise, it really is a free region.
@@ -362,8 +365,7 @@ inline void CompactibleSpace::scan_and_compact(SpaceType* space, bool redefiniti
Prefetch::write(compaction_top, copy_interval);
// copy object and reinit its mark
- assert(cur_obj != compaction_top || oop(cur_obj)->klass()->new_version() != NULL,
- "everything in this pass should be moving");
+ assert(redefinition_run || cur_obj != compaction_top, "everything in this pass should be moving");
if (redefinition_run && oop(cur_obj)->klass()->new_version() != NULL) {
Klass* new_version = oop(cur_obj)->klass()->new_version();
if (new_version->update_information() == NULL) {
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 718426f2819..1da6661dd3e 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -431,13 +431,11 @@ public:
Klass* new_klass = obj->klass()->new_version();
if (new_klass->update_information() != NULL) {
- int size_diff = obj->size() - obj->size_given_klass(new_klass);
-
- // Either new size is bigger or gap is to small to be filled
- if (size_diff < 0 || (size_diff > 0 && (size_t) size_diff < CollectedHeap::min_fill_size())) {
+ if (obj->size() - obj->size_given_klass(new_klass) != 0) {
// We need an instance update => set back to old klass
_needs_instance_update = true;
} else {
+ // Either new size is bigger or gap is to small to be filled
oop src = obj;
if (new_klass->is_copying_backwards()) {
copy_to_tmp(obj);
--
2.23.0

View File

@@ -0,0 +1,942 @@
From 297f564f6af79fb824f5b4e9119f1d3d0c827fb0 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Mon, 16 Nov 2020 20:20:12 +0100
Subject: [PATCH 19/34] dcevm15 - fix java15 patch compilation issues
---
.../share/classfile/classFileParser.hpp | 8 +-
.../share/classfile/classLoaderData.cpp | 2 +-
src/hotspot/share/classfile/dictionary.hpp | 10 +-
src/hotspot/share/classfile/javaClasses.hpp | 2 +
.../share/gc/g1/g1FullGCCompactTask.cpp | 4 +-
.../share/gc/g1/g1FullGCCompactionPoint.cpp | 8 +-
.../share/gc/g1/g1FullGCPrepareTask.cpp | 4 +-
src/hotspot/share/gc/shared/dcevmSharedGC.cpp | 14 +-
src/hotspot/share/gc/shared/dcevmSharedGC.hpp | 2 +-
src/hotspot/share/gc/shared/gcConfig.cpp | 2 +-
src/hotspot/share/gc/shared/space.cpp | 4 +-
.../share/interpreter/linkResolver.cpp | 2 +-
src/hotspot/share/oops/instanceKlass.cpp | 17 ++-
src/hotspot/share/oops/instanceKlass.hpp | 1 +
src/hotspot/share/oops/klass.cpp | 8 +-
src/hotspot/share/prims/jvm.cpp | 2 +
.../prims/jvmtiEnhancedRedefineClasses.cpp | 129 +++++++++---------
.../prims/jvmtiEnhancedRedefineClasses.hpp | 14 +-
src/hotspot/share/prims/jvmtiEnv.cpp | 11 +-
.../share/prims/jvmtiRedefineClasses.cpp | 1 +
src/hotspot/share/prims/methodHandles.hpp | 3 +
src/hotspot/share/runtime/arguments.cpp | 22 +--
src/hotspot/share/runtime/mutexLocker.cpp | 2 +-
23 files changed, 159 insertions(+), 113 deletions(-)
diff --git a/src/hotspot/share/classfile/classFileParser.hpp b/src/hotspot/share/classfile/classFileParser.hpp
index e5761e61767..0d266b9047e 100644
--- a/src/hotspot/share/classfile/classFileParser.hpp
+++ b/src/hotspot/share/classfile/classFileParser.hpp
@@ -150,9 +150,6 @@ class ClassFileParser {
const intArray* _method_ordering;
GrowableArray<Method*>* _all_mirandas;
- // Enhanced class redefinition
- const bool _pick_newest;
-
enum { fixed_buffer_size = 128 };
u_char _linenumbertable_buffer[fixed_buffer_size];
@@ -206,6 +203,9 @@ class ClassFileParser {
bool _has_vanilla_constructor;
int _max_bootstrap_specifier_index; // detects BSS values
+ // (DCEVM) Enhanced class redefinition
+ const bool _pick_newest;
+
void parse_stream(const ClassFileStream* const stream, TRAPS);
void mangle_hidden_class_name(InstanceKlass* const ik);
@@ -582,7 +582,7 @@ class ClassFileParser {
ClassLoaderData* loader_data() const { return _loader_data; }
const Symbol* class_name() const { return _class_name; }
const InstanceKlass* super_klass() const { return _super_klass; }
- Array<Klass*>* local_interfaces() const { return _local_interfaces; }
+ Array<InstanceKlass*>* local_interfaces() const { return _local_interfaces; }
ReferenceType reference_type() const { return _rt; }
AccessFlags access_flags() const { return _access_flags; }
diff --git a/src/hotspot/share/classfile/classLoaderData.cpp b/src/hotspot/share/classfile/classLoaderData.cpp
index 4d64c6b454a..aadcd50ef4a 100644
--- a/src/hotspot/share/classfile/classLoaderData.cpp
+++ b/src/hotspot/share/classfile/classLoaderData.cpp
@@ -597,7 +597,7 @@ void ClassLoaderData::exchange_holders(ClassLoaderData* cld) {
oop holder_oop = _holder.peek();
_holder.replace(cld->_holder.peek());
cld->_holder.replace(holder_oop);
- WeakHandle<vm_class_loader_data> exchange = _holder;
+ WeakHandle<vm_weak_data> exchange = _holder;
_holder = cld->_holder;
cld->_holder = exchange;
}
diff --git a/src/hotspot/share/classfile/dictionary.hpp b/src/hotspot/share/classfile/dictionary.hpp
index 114a983e783..a50f4ff84d2 100644
--- a/src/hotspot/share/classfile/dictionary.hpp
+++ b/src/hotspot/share/classfile/dictionary.hpp
@@ -84,6 +84,11 @@ public:
void print_on(outputStream* st) const;
void verify();
+ // (DCEVM) Enhanced class redefinition
+ bool update_klass(unsigned int hash, Symbol* name, ClassLoaderData* loader_data, InstanceKlass* k, InstanceKlass* old_klass);
+
+ void rollback_redefinition();
+
private:
DictionaryEntry* new_entry(unsigned int hash, InstanceKlass* klass);
@@ -106,11 +111,6 @@ public:
void free_entry(DictionaryEntry* entry);
- // Enhanced class redefinition
- bool update_klass(unsigned int hash, Symbol* name, ClassLoaderData* loader_data, InstanceKlass* k, InstanceKlass* old_klass);
-
- void rollback_redefinition();
-
// (DCEVM) return old class if redefining in AllowEnhancedClassRedefinition, otherwise return "k"
static InstanceKlass* old_if_redefined(InstanceKlass* k) {
return (k != NULL && k->is_redefining()) ? ((InstanceKlass* )k->old_version()) : k;
diff --git a/src/hotspot/share/classfile/javaClasses.hpp b/src/hotspot/share/classfile/javaClasses.hpp
index a68c5139151..9abf2e1d105 100644
--- a/src/hotspot/share/classfile/javaClasses.hpp
+++ b/src/hotspot/share/classfile/javaClasses.hpp
@@ -255,7 +255,9 @@ class java_lang_Class : AllStatic {
static void set_init_lock(oop java_class, oop init_lock);
static void set_protection_domain(oop java_class, oop protection_domain);
static void set_class_loader(oop java_class, oop class_loader);
+ public: // DCEVM
static void set_component_mirror(oop java_class, oop comp_mirror);
+ private:
static void initialize_mirror_fields(Klass* k, Handle mirror, Handle protection_domain,
Handle classData, TRAPS);
static void initialize_mirror_fields(Klass* k, Handle mirror, Handle protection_domain, TRAPS);
diff --git a/src/hotspot/share/gc/g1/g1FullGCCompactTask.cpp b/src/hotspot/share/gc/g1/g1FullGCCompactTask.cpp
index f70f4606dc8..a22ed48560d 100644
--- a/src/hotspot/share/gc/g1/g1FullGCCompactTask.cpp
+++ b/src/hotspot/share/gc/g1/g1FullGCCompactTask.cpp
@@ -157,14 +157,14 @@ void G1FullGCCompactTask::serial_compaction_dcevm() {
size_t G1FullGCCompactTask::G1CompactRegionClosureDcevm::apply(oop obj) {
size_t size = obj->size();
- HeapWord* destination = (HeapWord*)obj->forwardee();
+ HeapWord* destination = cast_from_oop<HeapWord*>(obj->forwardee());
if (destination == NULL) {
// Object not moving
return size;
}
// copy object and reinit its mark
- HeapWord* obj_addr = (HeapWord*) obj;
+ HeapWord* obj_addr = cast_from_oop<HeapWord*>(obj);
if (!_rescue_oops_it->at_end() && **_rescue_oops_it == obj_addr) {
++(*_rescue_oops_it);
diff --git a/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp b/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp
index 1e49571c999..755935a2c91 100644
--- a/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp
+++ b/src/hotspot/share/gc/g1/g1FullGCCompactionPoint.cpp
@@ -174,7 +174,7 @@ void G1FullGCCompactionPoint::forward_dcevm(oop object, size_t size, bool force_
assert(_current_region != NULL, "Must have been initialized");
// Store a forwarding pointer if the object should be moved.
- if ((HeapWord*)object != _compaction_top || force_forward) {
+ if (cast_from_oop<HeapWord*>(object) != _compaction_top || force_forward) {
object->forward_to(oop(_compaction_top));
} else {
if (object->forwardee() != NULL) {
@@ -188,11 +188,11 @@ void G1FullGCCompactionPoint::forward_dcevm(oop object, size_t size, bool force_
} else {
// Make sure object has the correct mark-word set or that it will be
// fixed when restoring the preserved marks.
- assert(object->mark_raw() == markOopDesc::prototype_for_object(object) || // Correct mark
- object->mark_raw()->must_be_preserved(object) || // Will be restored by PreservedMarksSet
+ assert(object->mark_raw() == markWord::prototype_for_klass(object->klass()) || // Correct mark
+ object->mark_must_be_preserved() || // Will be restored by PreservedMarksSet
(UseBiasedLocking && object->has_bias_pattern_raw()), // Will be restored by BiasedLocking
"should have correct prototype obj: " PTR_FORMAT " mark: " PTR_FORMAT " prototype: " PTR_FORMAT,
- p2i(object), p2i(object->mark_raw()), p2i(markOopDesc::prototype_for_object(object)));
+ p2i(object), object->mark_raw().value(), markWord::prototype_for_klass(object->klass()).value());
}
assert(object->forwardee() == NULL, "should be forwarded to NULL");
}
diff --git a/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp b/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
index a45681b60cf..2f06b9617e4 100644
--- a/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
+++ b/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
@@ -269,7 +269,7 @@ size_t G1FullGCPrepareTask::G1PrepareCompactLiveClosureDcevm::apply(oop object)
HeapWord* compact_top = _cp->forward_compact_top(forward_size);
if (compact_top == NULL || must_rescue(object, oop(compact_top))) {
- _cp->rescued_oops()->append((HeapWord*)object);
+ _cp->rescued_oops()->append(cast_from_oop<HeapWord*>(object));
} else {
_cp->forward_dcevm(object, forward_size, (size != forward_size));
}
@@ -295,7 +295,7 @@ bool G1FullGCPrepareTask::G1PrepareCompactLiveClosureDcevm::must_rescue(oop old_
int new_size = old_obj->size_given_klass(oop(old_obj)->klass()->new_version());
int original_size = old_obj->size();
- bool overlap = ((HeapWord*)old_obj + original_size < (HeapWord*)new_obj + new_size);
+ bool overlap = (cast_from_oop<HeapWord*>(old_obj) + original_size < cast_from_oop<HeapWord*>(new_obj) + new_size);
return overlap;
}
diff --git a/src/hotspot/share/gc/shared/dcevmSharedGC.cpp b/src/hotspot/share/gc/shared/dcevmSharedGC.cpp
index 803e645f843..3dee097f1d3 100644
--- a/src/hotspot/share/gc/shared/dcevmSharedGC.cpp
+++ b/src/hotspot/share/gc/shared/dcevmSharedGC.cpp
@@ -58,10 +58,10 @@ void DcevmSharedGC::copy_rescued_objects_back(GrowableArray<HeapWord*>* rescued_
DcevmSharedGC::update_fields(rescued_obj, new_obj);
} else {
rescued_obj->set_klass(new_klass);
- Copy::aligned_disjoint_words((HeapWord*)rescued_obj, (HeapWord*)new_obj, size);
+ Copy::aligned_disjoint_words(cast_from_oop<HeapWord*>(rescued_obj), cast_from_oop<HeapWord*>(new_obj), size);
}
} else {
- Copy::aligned_disjoint_words((HeapWord*)rescued_obj, (HeapWord*)new_obj, size);
+ Copy::aligned_disjoint_words(cast_from_oop<HeapWord*>(rescued_obj), cast_from_oop<HeapWord*>(new_obj), size);
}
new_obj->init_mark_raw();
@@ -111,11 +111,11 @@ void DcevmSharedGC::update_fields(oop q, oop new_location) {
// Save object somewhere, there is an overlap in fields
if (new_klass_oop->is_copying_backwards()) {
- if (((HeapWord *)q >= (HeapWord *)new_location && (HeapWord *)q < (HeapWord *)new_location + new_size) ||
- ((HeapWord *)new_location >= (HeapWord *)q && (HeapWord *)new_location < (HeapWord *)q + size)) {
+ if ((cast_from_oop<HeapWord*>(q) >= cast_from_oop<HeapWord*>(new_location) && cast_from_oop<HeapWord*>(q) < cast_from_oop<HeapWord*>(new_location) + new_size) ||
+ (cast_from_oop<HeapWord*>(new_location) >= cast_from_oop<HeapWord*>(q) && cast_from_oop<HeapWord*>(new_location) < cast_from_oop<HeapWord*>(q) + size)) {
tmp = NEW_RESOURCE_ARRAY(HeapWord, size);
q = (oop) tmp;
- Copy::aligned_disjoint_words((HeapWord*)tmp_obj, (HeapWord*)q, size);
+ Copy::aligned_disjoint_words(cast_from_oop<HeapWord*>(tmp_obj), cast_from_oop<HeapWord*>(q), size);
}
}
@@ -131,13 +131,13 @@ void DcevmSharedGC::update_fields(oop q, oop new_location) {
void DcevmSharedGC::update_fields(oop new_location, oop tmp_obj, int *cur) {
assert(cur != NULL, "just checking");
- char* to = (char*)(HeapWord*)new_location;
+ char* to = (char*)cast_from_oop<HeapWord*>(new_location);
while (*cur != 0) {
int size = *cur;
if (size > 0) {
cur++;
int offset = *cur;
- HeapWord* from = (HeapWord*)(((char *)(HeapWord*)tmp_obj) + offset);
+ HeapWord* from = (HeapWord*)(((char *)cast_from_oop<HeapWord*>(tmp_obj)) + offset);
if (size == HeapWordSize) {
*((HeapWord*)to) = *from;
} else if (size == HeapWordSize * 2) {
diff --git a/src/hotspot/share/gc/shared/dcevmSharedGC.hpp b/src/hotspot/share/gc/shared/dcevmSharedGC.hpp
index e2ef0171fb2..a4e27e00280 100644
--- a/src/hotspot/share/gc/shared/dcevmSharedGC.hpp
+++ b/src/hotspot/share/gc/shared/dcevmSharedGC.hpp
@@ -29,7 +29,7 @@
#include "gc/shared/genOopClosures.hpp"
#include "gc/shared/taskqueue.hpp"
#include "memory/iterator.hpp"
-#include "oops/markOop.hpp"
+#include "oops/markWord.hpp"
#include "oops/oop.hpp"
#include "runtime/timer.hpp"
#include "utilities/growableArray.hpp"
diff --git a/src/hotspot/share/gc/shared/gcConfig.cpp b/src/hotspot/share/gc/shared/gcConfig.cpp
index f01d64d1434..5c1a09390f1 100644
--- a/src/hotspot/share/gc/shared/gcConfig.cpp
+++ b/src/hotspot/share/gc/shared/gcConfig.cpp
@@ -100,7 +100,7 @@ void GCConfig::fail_if_non_included_gc_is_selected() {
void GCConfig::select_gc_ergonomically() {
if (AllowEnhancedClassRedefinition && !UseG1GC) {
// Enhanced class redefinition only supports serial GC at the moment
- FLAG_SET_ERGO(bool, UseSerialGC, true);
+ FLAG_SET_ERGO(UseSerialGC, true);
} else if (os::is_server_class_machine()) {
#if INCLUDE_G1GC
FLAG_SET_ERGO_IF_DEFAULT(UseG1GC, true);
diff --git a/src/hotspot/share/gc/shared/space.cpp b/src/hotspot/share/gc/shared/space.cpp
index 9772c32c42e..e8e3d7884c2 100644
--- a/src/hotspot/share/gc/shared/space.cpp
+++ b/src/hotspot/share/gc/shared/space.cpp
@@ -440,7 +440,7 @@ int CompactibleSpace::space_index(oop obj) {
index++;
}
- tty->print_cr("could not compute space_index for %08xh", (HeapWord*)obj);
+ tty->print_cr("could not compute space_index for %08xh", cast_from_oop<HeapWord*>(obj));
index = 0;
Generation* gen = heap->old_gen();
@@ -485,7 +485,7 @@ bool CompactibleSpace::must_rescue(oop old_obj, oop new_obj) {
bool new_in_tenured = tenured_gen->is_in_reserved(new_obj);
if (old_in_tenured == new_in_tenured) {
// Rescue if object may overlap with a higher memory address.
- bool overlap = ((HeapWord*)old_obj + original_size < (HeapWord*)new_obj + new_size);
+ bool overlap = (cast_from_oop<HeapWord*>(old_obj) + original_size < cast_from_oop<HeapWord*>(new_obj) + new_size);
if (old_in_tenured) {
// Old and new address are in same space, so just compare the address.
// Must rescue if object moves towards the top of the space.
diff --git a/src/hotspot/share/interpreter/linkResolver.cpp b/src/hotspot/share/interpreter/linkResolver.cpp
index b2f24ddbeda..9daeeb70b34 100644
--- a/src/hotspot/share/interpreter/linkResolver.cpp
+++ b/src/hotspot/share/interpreter/linkResolver.cpp
@@ -1031,7 +1031,7 @@ void LinkResolver::resolve_field(fieldDescriptor& fd,
assert(m != NULL, "information about the current method must be available for 'put' bytecodes");
bool is_initialized_static_final_update = (byte == Bytecodes::_putstatic &&
fd.is_static() &&
- !(m()->is_static_initializer() || m()->name() == vmSymbols::ha_class_initializer_name()));
+ !(m->is_static_initializer() || m->name() == vmSymbols::ha_class_initializer_name()));
bool is_initialized_instance_final_update = ((byte == Bytecodes::_putfield || byte == Bytecodes::_nofast_putfield) &&
!fd.is_static() &&
!m->is_object_initializer());
diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp
index f8e60941046..5e40d78a87e 100644
--- a/src/hotspot/share/oops/instanceKlass.cpp
+++ b/src/hotspot/share/oops/instanceKlass.cpp
@@ -1316,7 +1316,7 @@ void InstanceKlass::init_implementor() {
// (DCEVM) - init_implementor() for dcevm
void InstanceKlass::init_implementor_from_redefine() {
assert(is_interface(), "not interface");
- Klass** addr = adr_implementor();
+ Klass* volatile* addr = adr_implementor();
assert(addr != NULL, "null addr");
if (addr != NULL) {
*addr = NULL;
@@ -1659,6 +1659,21 @@ void InstanceKlass::methods_do(void f(Method* method)) {
}
}
+void InstanceKlass::methods_do(void f(Method* method, TRAPS), TRAPS) {
+ // Methods aren't stable until they are loaded. This can be read outside
+ // a lock through the ClassLoaderData for profiling
+ if (!is_loaded()) {
+ return;
+ }
+
+ int len = methods()->length();
+ for (int index = 0; index < len; index++) {
+ Method* m = methods()->at(index);
+ assert(m->is_method(), "must be method");
+ f(m, CHECK);
+ }
+}
+
// (DCEVM) Update information contains mapping of fields from old class to the new class.
// Info is stored on HEAP, you need to call clear_update_information to free the space.
void InstanceKlass::store_update_information(GrowableArray<int> &values) {
diff --git a/src/hotspot/share/oops/instanceKlass.hpp b/src/hotspot/share/oops/instanceKlass.hpp
index 6ead9426728..b56d42cb177 100644
--- a/src/hotspot/share/oops/instanceKlass.hpp
+++ b/src/hotspot/share/oops/instanceKlass.hpp
@@ -1069,6 +1069,7 @@ public:
void clear_update_information();
void methods_do(void f(Method* method));
+ void methods_do(void f(Method* method, TRAPS), TRAPS);
void array_klasses_do(void f(Klass* k));
void array_klasses_do(void f(Klass* k, TRAPS), TRAPS);
diff --git a/src/hotspot/share/oops/klass.cpp b/src/hotspot/share/oops/klass.cpp
index 352d8f84631..88f5ec9ba4a 100644
--- a/src/hotspot/share/oops/klass.cpp
+++ b/src/hotspot/share/oops/klass.cpp
@@ -200,13 +200,13 @@ void* Klass::operator new(size_t size, ClassLoaderData* loader_data, size_t word
Klass::Klass(KlassID id) : _id(id),
_java_mirror(NULL),
_prototype_header(markWord::prototype()),
- _shared_class_path_index(-1),
- _new_version(NULL),
_old_version(NULL),
+ _new_version(NULL),
+ _redefinition_flags(Klass::NoRedefinition),
_is_redefining(false),
+ _update_information(NULL),
_is_copying_backwards(false),
- _redefinition_flags(Klass::NoRedefinition),
- _update_information(NULL) {
+ _shared_class_path_index(-1) {
CDS_ONLY(_shared_class_flags = 0;)
CDS_JAVA_HEAP_ONLY(_archived_mirror = 0;)
_primary_supers[0] = this;
diff --git a/src/hotspot/share/prims/jvm.cpp b/src/hotspot/share/prims/jvm.cpp
index 333b65ccfc1..13bcac352fb 100644
--- a/src/hotspot/share/prims/jvm.cpp
+++ b/src/hotspot/share/prims/jvm.cpp
@@ -1054,6 +1054,7 @@ static jclass jvm_lookup_define_class(JNIEnv *env, jclass lookup, const char *na
class_loader,
protection_domain,
&st,
+ NULL,
CHECK_NULL);
if (log_is_enabled(Debug, class, resolve) && defined_k != NULL) {
@@ -1074,6 +1075,7 @@ static jclass jvm_lookup_define_class(JNIEnv *env, jclass lookup, const char *na
class_loader,
&st,
cl_info,
+ NULL,
CHECK_NULL);
if (defined_k == NULL) {
THROW_MSG_0(vmSymbols::java_lang_Error(), "Failure to define a hidden class");
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 1da6661dd3e..619e3988e3a 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -24,11 +24,14 @@
#include "precompiled.hpp"
#include "aot/aotLoader.hpp"
+#include "classfile/classFileParser.hpp"
#include "classfile/classFileStream.hpp"
#include "classfile/metadataOnStackMark.hpp"
#include "classfile/systemDictionary.hpp"
#include "classfile/verifier.hpp"
#include "classfile/dictionary.hpp"
+#include "classfile/classLoaderDataGraph.hpp"
+#include "interpreter/linkResolver.hpp"
#include "interpreter/oopMapCache.hpp"
#include "interpreter/rewriter.hpp"
#include "logging/logStream.hpp"
@@ -37,17 +40,22 @@
#include "memory/resourceArea.hpp"
#include "memory/iterator.inline.hpp"
#include "oops/fieldStreams.hpp"
+#include "oops/fieldStreams.inline.hpp"
#include "oops/klassVtable.hpp"
#include "oops/oop.inline.hpp"
#include "oops/constantPool.inline.hpp"
+#include "oops/metadata.hpp"
+#include "oops/methodData.hpp"
#include "prims/jvmtiImpl.hpp"
#include "prims/jvmtiClassFileReconstituter.hpp"
#include "prims/jvmtiEnhancedRedefineClasses.hpp"
#include "prims/methodComparator.hpp"
#include "prims/resolvedMethodTable.hpp"
+#include "prims/methodHandles.hpp"
#include "runtime/deoptimization.hpp"
#include "runtime/jniHandles.inline.hpp"
#include "runtime/relocator.hpp"
+#include "runtime/fieldDescriptor.hpp"
#include "runtime/fieldDescriptor.inline.hpp"
#include "utilities/bitMap.inline.hpp"
#include "prims/jvmtiThreadState.inline.hpp"
@@ -55,6 +63,8 @@
#include "oops/constantPool.inline.hpp"
#include "gc/g1/g1CollectedHeap.hpp"
#include "gc/shared/dcevmSharedGC.hpp"
+#include "gc/shared/scavengableNMethods.hpp"
+#include "ci/ciObjectFactory.hpp"
Array<Method*>* VM_EnhancedRedefineClasses::_old_methods = NULL;
Array<Method*>* VM_EnhancedRedefineClasses::_new_methods = NULL;
@@ -66,6 +76,7 @@ int VM_EnhancedRedefineClasses::_matching_methods_length = 0;
int VM_EnhancedRedefineClasses::_deleted_methods_length = 0;
int VM_EnhancedRedefineClasses::_added_methods_length = 0;
Klass* VM_EnhancedRedefineClasses::_the_class_oop = NULL;
+u8 VM_EnhancedRedefineClasses::_id_counter = 0;
//
// Create new instance of enhanced class redefiner.
@@ -88,6 +99,7 @@ VM_EnhancedRedefineClasses::VM_EnhancedRedefineClasses(jint class_count, const j
_class_load_kind = class_load_kind;
_res = JVMTI_ERROR_NONE;
_any_class_has_resolved_methods = false;
+ _id = next_id();
}
static inline InstanceKlass* get_ik(jclass def) {
@@ -211,9 +223,7 @@ class FieldCopier : public FieldClosure {
// TODO: review...
void VM_EnhancedRedefineClasses::mark_as_scavengable(nmethod* nm) {
- if (!nm->on_scavenge_root_list()) {
- CodeCache::add_scavenge_root_nmethod(nm);
- }
+ ScavengableNMethods::register_nmethod(nm);
}
void VM_EnhancedRedefineClasses::unregister_nmethod_g1(nmethod* nm) {
@@ -414,7 +424,7 @@ public:
_tmp_obj_size = size;
_tmp_obj = (oop)resource_allocate_bytes(size * HeapWordSize);
}
- Copy::aligned_disjoint_words((HeapWord*)o, (HeapWord*)_tmp_obj, size);
+ Copy::aligned_disjoint_words(cast_from_oop<HeapWord*>(o), cast_from_oop<HeapWord*>(_tmp_obj), size);
}
virtual void do_object(oop obj) {
@@ -505,9 +515,6 @@ void VM_EnhancedRedefineClasses::doit() {
ClearCpoolCacheAndUnpatch clear_cpool_cache(thread);
ClassLoaderDataGraph::classes_do(&clear_cpool_cache);
-
- // SystemDictionary::methods_do(fix_invoke_method);
-
// JSR-292 support
if (_any_class_has_resolved_methods) {
bool trace_name_printed = false;
@@ -564,8 +571,8 @@ void VM_EnhancedRedefineClasses::doit() {
InstanceKlass* old = InstanceKlass::cast(cur->old_version());
// Swap marks to have same hashcodes
- markOop cur_mark = cur->prototype_header();
- markOop old_mark = old->prototype_header();
+ markWord cur_mark = cur->prototype_header();
+ markWord old_mark = old->prototype_header();
cur->set_prototype_header(old_mark);
old->set_prototype_header(cur_mark);
@@ -579,14 +586,14 @@ void VM_EnhancedRedefineClasses::doit() {
// Revert pool holder for old version of klass (it was updated by one of ours closure!)
old->constants()->set_pool_holder(old);
- Klass* array_klasses = old->array_klasses();
+ ObjArrayKlass* array_klasses = old->array_klasses();
if (array_klasses != NULL) {
assert(cur->array_klasses() == NULL, "just checking");
// Transfer the array classes, otherwise we might get cast exceptions when casting array types.
// Also, set array klasses element klass.
cur->set_array_klasses(array_klasses);
- ObjArrayKlass::cast(array_klasses)->set_element_klass(cur);
+ array_klasses->set_element_klass(cur);
java_lang_Class::release_set_array_klass(cur->java_mirror(), array_klasses);
java_lang_Class::set_component_mirror(array_klasses->java_mirror(), cur->java_mirror());
}
@@ -641,11 +648,15 @@ void VM_EnhancedRedefineClasses::doit() {
//ClassLoaderDataGraph::classes_do(&clean_weak_method_links);
// Disable any dependent concurrent compilations
- SystemDictionary::notice_modification();
+ // SystemDictionary::notice_modification();
+
+ JvmtiExport::increment_redefinition_count();
// Set flag indicating that some invariants are no longer true.
// See jvmtiExport.hpp for detailed explanation.
- JvmtiExport::set_has_redefined_a_class();
+
+ // dcevm15: handled by _redefinition_count
+ // JvmtiExport::set_has_redefined_a_class();
#ifdef PRODUCT
if (log_is_enabled(Trace, redefine, class, obsolete, metadata)) {
@@ -718,7 +729,7 @@ bool VM_EnhancedRedefineClasses::is_modifiable_class(oop klass_mirror) {
}
// Cannot redefine or retransform an anonymous class.
- if (InstanceKlass::cast(k)->is_anonymous()) {
+ if (InstanceKlass::cast(k)->is_unsafe_anonymous()) {
return false;
}
return true;
@@ -804,22 +815,30 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
InstanceKlass* k;
- if (InstanceKlass::cast(the_class)->is_anonymous()) {
- const InstanceKlass* host_class = the_class->host_klass();
+ if (InstanceKlass::cast(the_class)->is_unsafe_anonymous()) {
+ const InstanceKlass* host_class = the_class->unsafe_anonymous_host();
// Make sure it's the real host class, not another anonymous class.
- while (host_class != NULL && host_class->is_anonymous()) {
- host_class = host_class->host_klass();
+ while (host_class != NULL && host_class->is_unsafe_anonymous()) {
+ host_class = host_class->unsafe_anonymous_host();
}
+ ClassLoadInfo cl_info(protection_domain,
+ host_class,
+ NULL, // dynamic_nest_host
+ NULL, // cp_patches
+ Handle(), // classData
+ false, // is_hidden
+ false, // is_strong_hidden
+ true); // FIXME: check if correct. can_access_vm_annotations
+
k = SystemDictionary::parse_stream(the_class_sym,
the_class_loader,
- protection_domain,
&st,
- host_class,
+ cl_info,
the_class,
- NULL,
THREAD);
+
k->class_loader_data()->exchange_holders(the_class->class_loader_data());
the_class->class_loader_data()->inc_keep_alive();
} else {
@@ -966,7 +985,7 @@ int VM_EnhancedRedefineClasses::calculate_redefinition_flags(InstanceKlass* new_
// Check interfaces
// Interfaces removed?
- Array<Klass*>* old_interfaces = the_class->transitive_interfaces();
+ Array<InstanceKlass*>* old_interfaces = the_class->transitive_interfaces();
for (i = 0; i < old_interfaces->length(); i++) {
InstanceKlass* old_interface = InstanceKlass::cast(old_interfaces->at(i));
if (!new_class->implements_interface_any_version(old_interface)) {
@@ -976,7 +995,7 @@ int VM_EnhancedRedefineClasses::calculate_redefinition_flags(InstanceKlass* new_
}
// Interfaces added?
- Array<Klass*>* new_interfaces = new_class->transitive_interfaces();
+ Array<InstanceKlass*>* new_interfaces = new_class->transitive_interfaces();
for (i = 0; i<new_interfaces->length(); i++) {
if (!the_class->implements_interface_any_version(new_interfaces->at(i))) {
result = result | Klass::ModifyClass;
@@ -1389,8 +1408,8 @@ void VM_EnhancedRedefineClasses::rollback() {
// Rewrite faster byte-codes back to their slower equivalent. Undoes rewriting happening in templateTable_xxx.cpp
// The reason is that once we zero cpool caches, we need to re-resolve all entries again. Faster bytecodes do not
// do that, they assume that cache entry is resolved already.
-void VM_EnhancedRedefineClasses::unpatch_bytecode(Method* method) {
- RawBytecodeStream bcs(method);
+void VM_EnhancedRedefineClasses::unpatch_bytecode(Method* method, TRAPS) {
+ RawBytecodeStream bcs(methodHandle(THREAD, method));
Bytecodes::Code code;
Bytecodes::Code java_code;
while (!bcs.is_last_bytecode()) {
@@ -1454,11 +1473,11 @@ void VM_EnhancedRedefineClasses::ClearCpoolCacheAndUnpatch::do_klass(Klass* k) {
HandleMark hm(_thread);
InstanceKlass *ik = InstanceKlass::cast(k);
- constantPoolHandle other_cp = constantPoolHandle(ik->constants());
+ constantPoolHandle other_cp = constantPoolHandle(_thread, ik->constants());
// Update host klass of anonymous classes (for example, produced by lambdas) to newest version.
- if (ik->is_anonymous() && ik->host_klass()->new_version() != NULL) {
- ik->set_host_klass(InstanceKlass::cast(ik->host_klass()->newest_version()));
+ if (ik->is_unsafe_anonymous() && ik->unsafe_anonymous_host()->new_version() != NULL) {
+ ik->set_unsafe_anonymous_host(InstanceKlass::cast(ik->unsafe_anonymous_host()->newest_version()));
}
// Update implementor if there is only one, in this case implementor() can reference old class
@@ -1492,7 +1511,18 @@ void VM_EnhancedRedefineClasses::ClearCpoolCacheAndUnpatch::do_klass(Klass* k) {
// If bytecode rewriting is enabled, we also need to unpatch bytecode to force resolution of zeroed entries
if (RewriteBytecodes) {
- ik->methods_do(unpatch_bytecode);
+ ik->methods_do(unpatch_bytecode, _thread);
+ }
+}
+
+u8 VM_EnhancedRedefineClasses::next_id() {
+ while (true) {
+ u8 id = _id_counter;
+ u8 next_id = id + 1;
+ u8 result = Atomic::cmpxchg(&_id_counter, id, next_id);
+ if (result == id) {
+ return next_id;
+ }
}
}
@@ -1512,31 +1542,8 @@ void VM_EnhancedRedefineClasses::MethodDataCleaner::do_klass(Klass* k) {
}
}
-void VM_EnhancedRedefineClasses::fix_invoke_method(Method* method) {
-
- constantPoolHandle other_cp = constantPoolHandle(method->constants());
-
- for (int i = 0; i < other_cp->length(); i++) {
- if (other_cp->tag_at(i).is_klass()) {
- Klass* klass = other_cp->resolved_klass_at(i);
- if (klass->new_version() != NULL) {
- // Constant pool entry points to redefined class -- update to the new version
- other_cp->klass_at_put(i, klass->newest_version());
- }
- assert(other_cp->resolved_klass_at(i)->new_version() == NULL, "Must be new klass!");
- }
- }
-
- ConstantPoolCache* cp_cache = other_cp->cache();
- if (cp_cache != NULL) {
- cp_cache->clear_entries();
- }
-
-}
-
-
-void VM_EnhancedRedefineClasses::update_jmethod_ids() {
+void VM_EnhancedRedefineClasses::update_jmethod_ids(TRAPS) {
for (int j = 0; j < _matching_methods_length; ++j) {
Method* old_method = _matching_old_methods[j];
jmethodID jmid = old_method->find_jmethod_id_or_null();
@@ -1547,10 +1554,10 @@ void VM_EnhancedRedefineClasses::update_jmethod_ids() {
if (jmid != NULL) {
// There is a jmethodID, change it to point to the new method
- methodHandle new_method_h(_matching_new_methods[j]);
+ methodHandle new_method_h(THREAD, _matching_new_methods[j]);
if (old_method->new_version() == NULL) {
- methodHandle old_method_h(_matching_old_methods[j]);
+ methodHandle old_method_h(THREAD, _matching_old_methods[j]);
jmethodID new_jmethod_id = Method::make_jmethod_id(old_method_h->method_holder()->class_loader_data(), old_method_h());
bool result = InstanceKlass::cast(old_method_h->method_holder())->update_jmethod_id(old_method_h(), new_jmethod_id);
} else {
@@ -1887,7 +1894,7 @@ void VM_EnhancedRedefineClasses::redefine_single_class(InstanceKlass* new_class_
// track number of methods that are EMCP for add_previous_version() call below
check_methods_and_mark_as_obsolete();
- update_jmethod_ids();
+ update_jmethod_ids(THREAD);
_any_class_has_resolved_methods = the_class->has_resolved_methods() || _any_class_has_resolved_methods;
@@ -2119,12 +2126,12 @@ jvmtiError VM_EnhancedRedefineClasses::do_topological_class_sorting(TRAPS) {
Handle protection_domain(THREAD, klass->protection_domain());
+ ClassLoadInfo cl_info(protection_domain);
+
ClassFileParser parser(&st,
klass->name(),
klass->class_loader_data(),
- protection_domain,
- NULL, // host_klass
- NULL, // cp_patches
+ &cl_info,
ClassFileParser::INTERNAL, // publicity level
true,
THREAD);
@@ -2134,7 +2141,7 @@ jvmtiError VM_EnhancedRedefineClasses::do_topological_class_sorting(TRAPS) {
links.append(KlassPair(super_klass, klass));
}
- Array<Klass*>* local_interfaces = parser.local_interfaces();
+ Array<InstanceKlass*>* local_interfaces = parser.local_interfaces();
for (int j = 0; j < local_interfaces->length(); j++) {
Klass* iface = local_interfaces->at(j);
if (iface != NULL && _affected_klasses->contains(iface)) {
@@ -2157,7 +2164,7 @@ jvmtiError VM_EnhancedRedefineClasses::do_topological_class_sorting(TRAPS) {
links.append(KlassPair(super_klass, klass));
}
- Array<Klass*>* local_interfaces = klass->local_interfaces();
+ Array<InstanceKlass*>* local_interfaces = klass->local_interfaces();
for (int j = 0; j < local_interfaces->length(); j++) {
Klass* interfaceKlass = local_interfaces->at(j);
if (_affected_klasses->contains(interfaceKlass)) {
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index 4c0412d343d..0066088b3b0 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -32,7 +32,7 @@
#include "memory/resourceArea.hpp"
#include "oops/objArrayKlass.hpp"
#include "oops/objArrayOop.hpp"
-#include "gc/shared/vmGCOperations.hpp"
+#include "gc/shared/gcVMOperations.hpp"
#include "../../../java.base/unix/native/include/jni_md.h"
//
@@ -59,6 +59,7 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
static int _deleted_methods_length;
static int _added_methods_length;
static Klass* _the_class_oop;
+ static u8 _id_counter;
// The instance fields are used to pass information from
// doit_prologue() to doit() and doit_epilogue().
@@ -91,6 +92,9 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
elapsedTimer _timer_heap_iterate;
elapsedTimer _timer_heap_full_gc;
+ // Redefinition id used by JFR
+ u8 _id;
+
// These routines are roughly in call order unless otherwise noted.
// Load and link new classes (either redefined or affected by redefinition - subclass, ...)
@@ -118,15 +122,14 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
static void mark_as_scavengable(nmethod* nm);
static void unregister_nmethod_g1(nmethod* nm);
static void register_nmethod_g1(nmethod* nm);
- static void unpatch_bytecode(Method* method);
- static void fix_invoke_method(Method* method);
+ static void unpatch_bytecode(Method* method, TRAPS);
// Figure out which new methods match old methods in name and signature,
// which methods have been added, and which are no longer present
void compute_added_deleted_matching_methods();
// Change jmethodIDs to point to the new methods
- void update_jmethod_ids();
+ void update_jmethod_ids(TRAPS);
// marking methods as old and/or obsolete
void check_methods_and_mark_as_obsolete();
@@ -141,6 +144,8 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
void flush_dependent_code(InstanceKlass* k_h, TRAPS);
+ u8 next_id();
+
static void check_class(InstanceKlass* k_oop, TRAPS);
static void dump_methods();
@@ -181,6 +186,7 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
bool allow_nested_vm_operations() const { return true; }
jvmtiError check_error() { return _res; }
+ u8 id() { return _id; }
// Modifiable test must be shared between IsModifiableClass query
// and redefine implementation
diff --git a/src/hotspot/share/prims/jvmtiEnv.cpp b/src/hotspot/share/prims/jvmtiEnv.cpp
index b6838ac034d..fba0f48abd7 100644
--- a/src/hotspot/share/prims/jvmtiEnv.cpp
+++ b/src/hotspot/share/prims/jvmtiEnv.cpp
@@ -456,20 +456,23 @@ JvmtiEnv::RetransformClasses(jint class_count, const jclass* classes) {
EventRetransformClasses event;
jvmtiError error;
+ u8 op_id;
if (AllowEnhancedClassRedefinition) {
MutexLocker sd_mutex(EnhancedRedefineClasses_lock);
VM_EnhancedRedefineClasses op(class_count, class_definitions, jvmti_class_load_kind_retransform);
VMThread::execute(&op);
+ op_id = op.id();
error = (op.check_error());
} else {
VM_RedefineClasses op(class_count, class_definitions, jvmti_class_load_kind_retransform);
VMThread::execute(&op);
+ op_id = op.id();
error = op.check_error();
}
if (error == JVMTI_ERROR_NONE) {
event.set_classCount(class_count);
- event.set_redefinitionId(op.id());
+ event.set_redefinitionId(op_id);
event.commit();
}
return error;
@@ -484,19 +487,23 @@ JvmtiEnv::RedefineClasses(jint class_count, const jvmtiClassDefinition* class_de
EventRedefineClasses event;
jvmtiError error;
+ u8 op_id;
+
if (AllowEnhancedClassRedefinition) {
MutexLocker sd_mutex(EnhancedRedefineClasses_lock);
VM_EnhancedRedefineClasses op(class_count, class_definitions, jvmti_class_load_kind_redefine);
VMThread::execute(&op);
+ op_id = op.id();
error = (op.check_error());
} else {
VM_RedefineClasses op(class_count, class_definitions, jvmti_class_load_kind_redefine);
VMThread::execute(&op);
+ op_id = op.id();
error = op.check_error();
}
if (error == JVMTI_ERROR_NONE) {
event.set_classCount(class_count);
- event.set_redefinitionId(op.id());
+ event.set_redefinitionId(op_id);
event.commit();
}
return error;
diff --git a/src/hotspot/share/prims/jvmtiRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
index a7840848e10..346eac7c431 100644
--- a/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
@@ -1271,6 +1271,7 @@ jvmtiError VM_RedefineClasses::load_new_class_versions(TRAPS) {
the_class_loader,
&st,
cl_info,
+ NULL,
THREAD);
// Clear class_being_redefined just to be sure.
state->clear_class_being_redefined();
diff --git a/src/hotspot/share/prims/methodHandles.hpp b/src/hotspot/share/prims/methodHandles.hpp
index 54f36202a5f..917d31efd77 100644
--- a/src/hotspot/share/prims/methodHandles.hpp
+++ b/src/hotspot/share/prims/methodHandles.hpp
@@ -180,6 +180,9 @@ public:
assert(ref_kind_is_valid(ref_kind), "");
return (ref_kind & 1) != 0;
}
+ static bool ref_kind_is_static(int ref_kind) {
+ return !ref_kind_has_receiver(ref_kind) && (ref_kind != JVM_REF_newInvokeSpecial);
+ }
static int ref_kind_to_flags(int ref_kind);
diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp
index d05a2893498..3a92b8869dc 100644
--- a/src/hotspot/share/runtime/arguments.cpp
+++ b/src/hotspot/share/runtime/arguments.cpp
@@ -2128,13 +2128,15 @@ bool Arguments::check_gc_consistency() {
// of collectors.
uint i = 0;
if (UseSerialGC) i++;
- if (UseConcMarkSweepGC) i++;
- if (UseParallelGC || UseParallelOldGC) i++;
+ if (UseParallelGC) i++;
if (UseG1GC) i++;
+ if (UseEpsilonGC) i++;
+ if (UseZGC) i++;
+ if (UseShenandoahGC) i++;
if (AllowEnhancedClassRedefinition) {
// Must use serial GC. This limitation applies because the instance size changing GC modifications
// are only built into the mark and compact algorithm.
- if ((!UseSerialGC && !UseG1GC) && i >= 1) {
+ if (!UseSerialGC && !UseG1GC && i >= 1) {
jio_fprintf(defaultStream::error_stream(),
"Must use the Serial or G1 GC with enhanced class redefinition.\n");
return false;
@@ -4494,18 +4496,18 @@ void Arguments::setup_hotswap_agent() {
// TODO: open it only for org.hotswap.agent module
// Use to access java.lang.reflect.Proxy/proxyCache
- create_numbered_property("jdk.module.addopens", "java.base/java.lang=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.base/java.lang=ALL-UNNAMED", addopens_count++);
// Class of field java.lang.reflect.Proxy/proxyCache
- create_numbered_property("jdk.module.addopens", "java.base/jdk.internal.loader=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.base/jdk.internal.loader=ALL-UNNAMED", addopens_count++);
// Use to access java.io.Reader, java.io.InputStream, java.io.FileInputStream
- create_numbered_property("jdk.module.addopens", "java.base/java.io=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.base/java.io=ALL-UNNAMED", addopens_count++);
// java.beans.Introspector access
- create_numbered_property("jdk.module.addopens", "java.desktop/java.beans=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.desktop/java.beans=ALL-UNNAMED", addopens_count++);
// java.beans.Introspector access
- create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.desktop/com.sun.beans=ALL-UNNAMED", addopens_count++);
// com.sun.beans.introspect.ClassInfo access
- create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans.introspect=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.desktop/com.sun.beans.introspect=ALL-UNNAMED", addopens_count++);
// com.sun.beans.introspect.util.Cache access
- create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans.util=ALL-UNNAMED", addopens_count++);
+ create_numbered_module_property("jdk.module.addopens", "java.desktop/com.sun.beans.util=ALL-UNNAMED", addopens_count++);
}
diff --git a/src/hotspot/share/runtime/mutexLocker.cpp b/src/hotspot/share/runtime/mutexLocker.cpp
index 6f982072909..14a3ed730fe 100644
--- a/src/hotspot/share/runtime/mutexLocker.cpp
+++ b/src/hotspot/share/runtime/mutexLocker.cpp
@@ -287,7 +287,7 @@ void mutex_init() {
def(InitCompleted_lock , PaddedMonitor, leaf, true, _safepoint_check_never);
def(VtableStubs_lock , PaddedMutex , nonleaf, true, _safepoint_check_never);
def(Notify_lock , PaddedMonitor, nonleaf, true, _safepoint_check_always);
- def(EnhancedRedefineClasses_lock , PaddedMutex , nonleaf+7, false, Monitor::_safepoint_check_always); // for ensuring that class redefinition is not done in parallel
+ def(EnhancedRedefineClasses_lock , PaddedMutex , nonleaf+7, false, _safepoint_check_always); // for ensuring that class redefinition is not done in parallel
def(JNICritical_lock , PaddedMonitor, nonleaf, true, _safepoint_check_always); // used for JNI critical regions
def(AdapterHandlerLibrary_lock , PaddedMutex , nonleaf, true, _safepoint_check_always);
--
2.23.0

View File

@@ -0,0 +1,25 @@
From 336cab4f72c6e642e3077ea8d1a4860de33f5a4d Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Tue, 17 Nov 2020 17:40:24 +0100
Subject: [PATCH 20/34] dcevm15 - G1 fixes
---
src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp b/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
index 2f06b9617e4..476728a5d26 100644
--- a/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
+++ b/src/hotspot/share/gc/g1/g1FullGCPrepareTask.cpp
@@ -240,7 +240,7 @@ void G1FullGCPrepareTask::prepare_serial_compaction_dcevm() {
// collect remaining, not forwarded rescued oops using serial compact point
while (cp->last_rescued_oop() < cp->rescued_oops()->length()) {
- HeapRegion* hr = G1CollectedHeap::heap()->new_region(HeapRegion::GrainBytes / HeapWordSize, false, true);
+ HeapRegion* hr = G1CollectedHeap::heap()->new_region(HeapRegion::GrainBytes / HeapWordSize, HeapRegionType::Eden, true, G1NUMA::AnyNodeIndex);
if (hr == NULL) {
vm_exit_out_of_memory(0, OOM_MMAP_ERROR, "G1 - not enough of free regions after redefinition.");
}
--
2.23.0

View File

@@ -0,0 +1,133 @@
From cea4e2cca3c37233c728be7235f8f9d8be136cb5 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Tue, 17 Nov 2020 18:52:57 +0100
Subject: [PATCH 21/34] dcevm15 - Fix flush dependent code
---
.../prims/jvmtiEnhancedRedefineClasses.cpp | 57 +++++++------------
.../prims/jvmtiEnhancedRedefineClasses.hpp | 4 +-
2 files changed, 25 insertions(+), 36 deletions(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 619e3988e3a..efaf11e1666 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -508,7 +508,7 @@ void VM_EnhancedRedefineClasses::doit() {
// Deoptimize all compiled code that depends on this class (do only once, because it clears whole cache)
// if (_max_redefinition_flags > Klass::ModifyClass) {
- flush_dependent_code(NULL, thread);
+ flush_dependent_code(thread);
// }
// Adjust constantpool caches for all classes that reference methods of the evolved class.
@@ -647,17 +647,8 @@ void VM_EnhancedRedefineClasses::doit() {
//MethodDataCleaner clean_weak_method_links;
//ClassLoaderDataGraph::classes_do(&clean_weak_method_links);
- // Disable any dependent concurrent compilations
- // SystemDictionary::notice_modification();
-
JvmtiExport::increment_redefinition_count();
- // Set flag indicating that some invariants are no longer true.
- // See jvmtiExport.hpp for detailed explanation.
-
- // dcevm15: handled by _redefinition_count
- // JvmtiExport::set_has_redefined_a_class();
-
#ifdef PRODUCT
if (log_is_enabled(Trace, redefine, class, obsolete, metadata)) {
#endif
@@ -1746,6 +1737,18 @@ void VM_EnhancedRedefineClasses::transfer_old_native_function_registrations(Inst
transfer.transfer_registrations(_matching_old_methods, _matching_methods_length);
}
+// First step is to walk the code cache for each class redefined and mark
+// dependent methods. Wait until all classes are processed to deoptimize everything.
+void VM_EnhancedRedefineClasses::mark_dependent_code(InstanceKlass* ik) {
+ assert_locked_or_safepoint(Compile_lock);
+
+ // All dependencies have been recorded from startup or this is a second or
+ // subsequent use of RedefineClasses
+ if (0 && JvmtiExport::all_dependencies_are_recorded()) {
+ CodeCache::mark_for_evol_deoptimization(ik);
+ }
+}
+
// DCEVM - it always deoptimizes everything! (because it is very difficult to find only correct dependencies)
// Deoptimize all compiled code that depends on this class.
//
@@ -1762,33 +1765,21 @@ void VM_EnhancedRedefineClasses::transfer_old_native_function_registrations(Inst
// subsequent calls to RedefineClasses need only throw away code
// that depends on the class.
//
-void VM_EnhancedRedefineClasses::flush_dependent_code(InstanceKlass* k_h, TRAPS) {
+void VM_EnhancedRedefineClasses::flush_dependent_code(TRAPS) {
assert_locked_or_safepoint(Compile_lock);
// All dependencies have been recorded from startup or this is a second or
// subsequent use of RedefineClasses
// FIXME: for now, deoptimize all!
- if (0 && k_h != NULL && JvmtiExport::all_dependencies_are_recorded()) {
- CodeCache::flush_evol_dependents_on(k_h);
- Klass* superCl = k_h->super();
- // Deoptimize super classes since redefined class can has a new method override
- while (superCl != NULL && !superCl->is_redefining()) {
- CodeCache::flush_evol_dependents_on(InstanceKlass::cast(superCl));
- superCl = superCl->super();
+ if (0 && JvmtiExport::all_dependencies_are_recorded()) {
+ int deopt = CodeCache::mark_dependents_for_evol_deoptimization();
+ log_debug(redefine, class, nmethod)("Marked %d dependent nmethods for deopt", deopt);
+ if (deopt != 0) {
+ CodeCache::flush_evol_dependents();
}
} else {
- CodeCache::mark_all_nmethods_for_deoptimization();
-
- ResourceMark rm(THREAD);
- DeoptimizationMarker dm;
-
- // Deoptimize all activations depending on marked nmethods
- Deoptimization::deoptimize_dependents();
-
- // Make the dependent methods not entrant
- CodeCache::make_marked_nmethods_not_entrant();
-
- // From now on we know that the dependency information is complete
+ CodeCache::mark_all_nmethods_for_evol_deoptimization();
+ CodeCache::flush_evol_dependents();
JvmtiExport::set_all_dependencies_are_recorded(true);
}
}
@@ -1881,11 +1872,7 @@ void VM_EnhancedRedefineClasses::redefine_single_class(InstanceKlass* new_class_
JvmtiBreakpoints& jvmti_breakpoints = JvmtiCurrentBreakpoints::get_jvmti_breakpoints();
jvmti_breakpoints.clearall_in_class_at_safepoint(the_class);
- // DCEVM Deoptimization is always for whole java world, call only once after all classes are redefined
- // Deoptimize all compiled code that depends on this class
-// if (_max_redefinition_flags <= Klass::ModifyClass) {
-// flush_dependent_code(the_class, THREAD);
-// }
+ mark_dependent_code(the_class);
_old_methods = the_class->methods();
_new_methods = new_class->methods();
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index 0066088b3b0..bd5e7d153be 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -142,7 +142,9 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
// and in all direct and indirect subclasses.
void increment_class_counter(InstanceKlass *ik, TRAPS);
- void flush_dependent_code(InstanceKlass* k_h, TRAPS);
+ void mark_dependent_code(InstanceKlass* ik);
+
+ void flush_dependent_code(TRAPS);
u8 next_id();
--
2.23.0

View File

@@ -0,0 +1,211 @@
From 4f88dcec830d39452f69d1117729469fdb768a8f Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 22 Nov 2020 12:05:26 +0100
Subject: [PATCH 22/34] dcevm15 - fix ResolvedMethodTable
---
src/hotspot/share/classfile/javaClasses.cpp | 5 -
src/hotspot/share/classfile/javaClasses.hpp | 1 -
.../share/prims/resolvedMethodTable.cpp | 139 +++++++++++-------
3 files changed, 84 insertions(+), 61 deletions(-)
diff --git a/src/hotspot/share/classfile/javaClasses.cpp b/src/hotspot/share/classfile/javaClasses.cpp
index 9b086a241f7..9a627786d0f 100644
--- a/src/hotspot/share/classfile/javaClasses.cpp
+++ b/src/hotspot/share/classfile/javaClasses.cpp
@@ -3996,11 +3996,6 @@ void java_lang_invoke_ResolvedMethodName::set_vmholder(oop resolved_method, oop
resolved_method->obj_field_put(_vmholder_offset, holder);
}
-void java_lang_invoke_ResolvedMethodName::set_vmholder_offset(oop resolved_method, Method* m) {
- assert(is_instance(resolved_method), "wrong type");
- resolved_method->obj_field_put(_vmholder_offset, m->method_holder()->java_mirror());
-}
-
oop java_lang_invoke_ResolvedMethodName::find_resolved_method(const methodHandle& m, TRAPS) {
const Method* method = m();
diff --git a/src/hotspot/share/classfile/javaClasses.hpp b/src/hotspot/share/classfile/javaClasses.hpp
index 9abf2e1d105..8f5993b7225 100644
--- a/src/hotspot/share/classfile/javaClasses.hpp
+++ b/src/hotspot/share/classfile/javaClasses.hpp
@@ -1107,7 +1107,6 @@ class java_lang_invoke_ResolvedMethodName : AllStatic {
static Method* vmtarget(oop resolved_method);
static void set_vmtarget(oop resolved_method, Method* method);
- static void set_vmholder_offset(oop resolved_method, Method* method);
static void set_vmholder(oop resolved_method, oop holder);
diff --git a/src/hotspot/share/prims/resolvedMethodTable.cpp b/src/hotspot/share/prims/resolvedMethodTable.cpp
index eb9fcda44f3..d0f1667b967 100644
--- a/src/hotspot/share/prims/resolvedMethodTable.cpp
+++ b/src/hotspot/share/prims/resolvedMethodTable.cpp
@@ -375,6 +375,67 @@ public:
}
};
+class AdjustMethodEntriesDcevm : public StackObj {
+ bool* _trace_name_printed;
+ GrowableArray<oop>* _oops_to_add;
+public:
+ AdjustMethodEntriesDcevm(GrowableArray<oop>* oops_to_add, bool* trace_name_printed) : _trace_name_printed(trace_name_printed), _oops_to_add(oops_to_add) {};
+ bool operator()(WeakHandle<vm_resolved_method_table_data>* entry) {
+ oop mem_name = entry->peek();
+ if (mem_name == NULL) {
+ // Removed
+ return true;
+ }
+
+ Method* old_method = (Method*)java_lang_invoke_ResolvedMethodName::vmtarget(mem_name);
+
+ if (old_method->is_old()) {
+
+ InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
+ Method* newer_method;
+
+ // Method* new_method;
+ if (old_method->is_deleted()) {
+ newer_method = Universe::throw_no_such_method_error();
+ } else {
+ newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
+
+ log_debug(redefine, class, update)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
+
+ assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
+ assert(newer_method != NULL, "method_with_idnum() should not be NULL");
+ assert(old_method != newer_method, "sanity check");
+
+ Thread* thread = Thread::current();
+ ResolvedMethodTableLookup lookup(thread, method_hash(newer_method), newer_method);
+ ResolvedMethodGet rmg(thread, newer_method);
+
+ if (_local_table->get(thread, lookup, rmg)) {
+ // old method was already adjusted if new method exists in _the_table
+ return true;
+ }
+ }
+
+ java_lang_invoke_ResolvedMethodName::set_vmtarget(mem_name, newer_method);
+ java_lang_invoke_ResolvedMethodName::set_vmholder(mem_name, newer_method->method_holder()->java_mirror());
+
+ newer_klass->set_has_resolved_methods();
+ _oops_to_add->append(mem_name);
+
+ ResourceMark rm;
+ if (!(*_trace_name_printed)) {
+ log_debug(redefine, class, update)("adjust: name=%s", old_method->method_holder()->external_name());
+ *_trace_name_printed = true;
+ }
+ log_debug(redefine, class, update, constantpool)
+ ("ResolvedMethod method update: %s(%s)",
+ newer_method->name()->as_C_string(), newer_method->signature()->as_C_string());
+ }
+
+ return true;
+ }
+};
+
// It is called at safepoint only for RedefineClasses
void ResolvedMethodTable::adjust_method_entries(bool * trace_name_printed) {
assert(SafepointSynchronize::is_at_safepoint(), "only called at safepoint");
@@ -382,73 +443,41 @@ void ResolvedMethodTable::adjust_method_entries(bool * trace_name_printed) {
AdjustMethodEntries adjust(trace_name_printed);
_local_table->do_safepoint_scan(adjust);
}
-#endif // INCLUDE_JVMTI
-// (DCEVM) It is called at safepoint only for RedefineClasses
+// It is called at safepoint only for RedefineClasses
void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed) {
assert(SafepointSynchronize::is_at_safepoint(), "only called at safepoint");
// For each entry in RMT, change to new method
- GrowableArray<oop>* oops_to_add = new GrowableArray<oop>();
-
- for (int i = 0; i < _the_table->table_size(); ++i) {
- for (ResolvedMethodEntry* entry = _the_table->bucket(i);
- entry != NULL;
- entry = entry->next()) {
-
- oop mem_name = entry->object_no_keepalive();
- // except ones removed
- if (mem_name == NULL) {
- continue;
- }
- Method* old_method = (Method*)java_lang_invoke_ResolvedMethodName::vmtarget(mem_name);
-
- if (old_method->is_old()) {
-
- InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
- Method* newer_method;
-
- // Method* new_method;
- if (old_method->is_deleted()) {
- newer_method = Universe::throw_no_such_method_error();
- } else {
- newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
-
- log_debug(redefine, class, update)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
-
- assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
- assert(newer_method != NULL, "method_with_idnum() should not be NULL");
- assert(old_method != newer_method, "sanity check");
-
- if (_the_table->lookup(newer_method) != NULL) {
- // old method was already adjusted if new method exists in _the_table
- continue;
- }
- }
+ GrowableArray<oop> oops_to_add(0);
+ AdjustMethodEntriesDcevm adjust(&oops_to_add, trace_name_printed);
+ _local_table->do_safepoint_scan(adjust);
+ Thread* thread = Thread::current();
+ for (int i = 0; i < oops_to_add.length(); i++) {
+ oop mem_name = oops_to_add.at(i);
+ Method* method = (Method*)java_lang_invoke_ResolvedMethodName::vmtarget(mem_name);
- java_lang_invoke_ResolvedMethodName::set_vmtarget(mem_name, newer_method);
- java_lang_invoke_ResolvedMethodName::set_vmholder_offset(mem_name, newer_method);
+ // The hash table takes ownership of the WeakHandle, even if it's not inserted.
- newer_klass->set_has_resolved_methods();
- oops_to_add->append(mem_name);
+ ResolvedMethodTableLookup lookup(thread, method_hash(method), method);
+ ResolvedMethodGet rmg(thread, method);
- ResourceMark rm;
- if (!(*trace_name_printed)) {
- log_debug(redefine, class, update)("adjust: name=%s", old_method->method_holder()->external_name());
- *trace_name_printed = true;
- }
- log_debug(redefine, class, update, constantpool)
- ("ResolvedMethod method update: %s(%s)",
- newer_method->name()->as_C_string(), newer_method->signature()->as_C_string());
+ while (true) {
+ if (_local_table->get(thread, lookup, rmg)) {
+ break;
+ }
+ WeakHandle<vm_resolved_method_table_data> wh = WeakHandle<vm_resolved_method_table_data>::create(Handle(thread, mem_name));
+ // The hash table takes ownership of the WeakHandle, even if it's not inserted.
+ if (_local_table->insert(thread, lookup, wh)) {
+ log_insert(method);
+ wh.resolve();
+ break;
}
- }
- for (int i = 0; i < oops_to_add->length(); i++) {
- oop mem_name = oops_to_add->at(i);
- Method* method = (Method*)java_lang_invoke_ResolvedMethodName::vmtarget(mem_name);
- _the_table->basic_add(method, Handle(Thread::current(), mem_name));
}
}
}
+#endif // INCLUDE_JVMTI
+
// Verification
class VerifyResolvedMethod : StackObj {
public:
--
2.23.0

View File

@@ -0,0 +1,88 @@
From 5379e56465d3d3930ec7ea91b1c64db2cdf70170 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 22 Nov 2020 12:05:50 +0100
Subject: [PATCH 23/34] dcevm15 - fix Universe::root_oops_do
---
src/hotspot/share/memory/universe.cpp | 38 +++++++++------------------
1 file changed, 12 insertions(+), 26 deletions(-)
diff --git a/src/hotspot/share/memory/universe.cpp b/src/hotspot/share/memory/universe.cpp
index f6e4253b5a5..8dad437bd51 100644
--- a/src/hotspot/share/memory/universe.cpp
+++ b/src/hotspot/share/memory/universe.cpp
@@ -39,6 +39,7 @@
#include "gc/shared/gcConfig.hpp"
#include "gc/shared/gcLogPrecious.hpp"
#include "gc/shared/gcTraceTime.inline.hpp"
+#include "gc/shared/weakProcessor.hpp"
#include "interpreter/interpreter.hpp"
#include "logging/log.hpp"
#include "logging/logStream.hpp"
@@ -75,6 +76,7 @@
#include "runtime/thread.inline.hpp"
#include "runtime/timerTrace.hpp"
#include "runtime/vmOperations.hpp"
+#include "services/management.hpp"
#include "services/memoryService.hpp"
#include "utilities/align.hpp"
#include "utilities/copy.hpp"
@@ -180,45 +182,29 @@ void Universe::basic_type_classes_do(KlassClosure *closure) {
// FIXME: (DCEVM) This method should iterate all pointers that are not within heap objects.
void Universe::root_oops_do(OopClosure *oopClosure) {
-
- class AlwaysTrueClosure: public BoolObjectClosure {
- public:
- void do_object(oop p) { ShouldNotReachHere(); }
- bool do_object_b(oop p) { return true; }
- };
- AlwaysTrueClosure always_true;
-
Universe::oops_do(oopClosure);
// ReferenceProcessor::oops_do(oopClosure); (tw) check why no longer there
JNIHandles::oops_do(oopClosure); // Global (strong) JNI handles
Threads::oops_do(oopClosure, NULL);
ObjectSynchronizer::oops_do(oopClosure);
- // TODO: review, flat profiler was removed in j10
- // FlatProfiler::oops_do(oopClosure);
- JvmtiExport::oops_do(oopClosure);
+ // (DCEVM) TODO: Check if this is correct?
+ Management::oops_do(oopClosure);
+ OopStorageSet::vm_global()->oops_do(oopClosure);
+ CLDToOopClosure cld_closure(oopClosure, ClassLoaderData::_claim_none);
+ ClassLoaderDataGraph::cld_do(&cld_closure);
// Now adjust pointers in remaining weak roots. (All of which should
// have been cleared if they pointed to non-surviving objects.)
// Global (weak) JNI handles
- JNIHandles::weak_oops_do(&always_true, oopClosure);
+ WeakProcessor::oops_do(oopClosure);
CodeBlobToOopClosure blobClosure(oopClosure, CodeBlobToOopClosure::FixRelocations);
CodeCache::blobs_do(&blobClosure);
- StringTable::oops_do(oopClosure);
+ AOT_ONLY(AOTLoader::oops_do(oopClosure);)
+ // StringTable::oops_do was removed in j15
+ // StringTable::oops_do(oopClosure);
- // (DCEVM) TODO: Check if this is correct?
- //CodeCache::scavenge_root_nmethods_oops_do(oopClosure);
- //Management::oops_do(oopClosure);
- //ref_processor()->weak_oops_do(&oopClosure);
- //PSScavenge::reference_processor()->weak_oops_do(&oopClosure);
-
-#if INCLUDE_AOT
- if (UseAOT) {
- AOTLoader::oops_do(oopClosure);
- }
-#endif
- // SO_AllClasses
- SystemDictionary::oops_do(oopClosure);
+ // PSScavenge::reference_processor()->weak_oops_do(oopClosure);
}
void Universe::oops_do(OopClosure* f) {
--
2.23.0

View File

@@ -0,0 +1,67 @@
From c6ea68e66d37d70739f7b0ee74131322b4526a68 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 22 Nov 2020 12:03:32 +0100
Subject: [PATCH 24/34] Cleanup dcevm comments
---
src/hotspot/share/classfile/classLoaderDataGraph.hpp | 2 +-
src/hotspot/share/classfile/systemDictionary.hpp | 2 +-
src/hotspot/share/gc/shared/gcConfig.cpp | 2 +-
src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/hotspot/share/classfile/classLoaderDataGraph.hpp b/src/hotspot/share/classfile/classLoaderDataGraph.hpp
index f380aa3fa34..8ce94cccb47 100644
--- a/src/hotspot/share/classfile/classLoaderDataGraph.hpp
+++ b/src/hotspot/share/classfile/classLoaderDataGraph.hpp
@@ -104,7 +104,7 @@ class ClassLoaderDataGraph : public AllStatic {
static void dictionary_classes_do(KlassClosure* klass_closure);
- // Enhanced class redefinition
+ // (DCEVM) Enhanced class redefinition
static void rollback_redefinition();
// VM_CounterDecay iteration support
diff --git a/src/hotspot/share/classfile/systemDictionary.hpp b/src/hotspot/share/classfile/systemDictionary.hpp
index 931e655d631..1019dbd0d04 100644
--- a/src/hotspot/share/classfile/systemDictionary.hpp
+++ b/src/hotspot/share/classfile/systemDictionary.hpp
@@ -455,7 +455,7 @@ public:
static bool is_well_known_klass(Symbol* class_name);
#endif
- // Enhanced class redefinition
+ // (DCEVM) Enhanced class redefinition
static void remove_from_hierarchy(InstanceKlass* k);
static void update_constraints_after_redefinition();
diff --git a/src/hotspot/share/gc/shared/gcConfig.cpp b/src/hotspot/share/gc/shared/gcConfig.cpp
index 5c1a09390f1..23fbf715378 100644
--- a/src/hotspot/share/gc/shared/gcConfig.cpp
+++ b/src/hotspot/share/gc/shared/gcConfig.cpp
@@ -99,7 +99,7 @@ void GCConfig::fail_if_non_included_gc_is_selected() {
void GCConfig::select_gc_ergonomically() {
if (AllowEnhancedClassRedefinition && !UseG1GC) {
- // Enhanced class redefinition only supports serial GC at the moment
+ // (DCEVM) Enhanced class redefinition only supports serial GC at the moment
FLAG_SET_ERGO(UseSerialGC, true);
} else if (os::is_server_class_machine()) {
#if INCLUDE_G1GC
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index bd5e7d153be..5de375fb888 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -78,7 +78,7 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
// have any entries.
bool _any_class_has_resolved_methods;
- // Enhanced class redefinition, affected klasses contain all classes which should be redefined
+ // (DCEVM) Enhanced class redefinition, affected klasses contain all classes which should be redefined
// either because of redefine, class hierarchy or interface change
GrowableArray<Klass*>* _affected_klasses;
--
2.23.0

View File

@@ -0,0 +1,43 @@
From 507d97966c7145d0ae2533459cc504c7b0d6d5b6 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 22 Nov 2020 18:49:05 +0100
Subject: [PATCH 25/34] Fix cpCache in not AllowEnhancedClassRedefinition mode
---
src/hotspot/share/oops/cpCache.hpp | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/hotspot/share/oops/cpCache.hpp b/src/hotspot/share/oops/cpCache.hpp
index 121a13b1dda..64dcf6223f5 100644
--- a/src/hotspot/share/oops/cpCache.hpp
+++ b/src/hotspot/share/oops/cpCache.hpp
@@ -148,13 +148,13 @@ class ConstantPoolCacheEntry {
void set_bytecode_2(Bytecodes::Code code);
void set_f1(Metadata* f1) {
Metadata* existing_f1 = _f1; // read once
- //assert(existing_f1 == NULL || existing_f1 == f1, "illegal field change");
+ assert(AllowEnhancedClassRedefinition || existing_f1 == NULL || existing_f1 == f1, "illegal field change");
_f1 = f1;
}
void release_set_f1(Metadata* f1);
void set_f2(intx f2) {
intx existing_f2 = _f2; // read once
- //assert(existing_f2 == 0 || existing_f2 == f2, "illegal field change");
+ assert(AllowEnhancedClassRedefinition || existing_f2 == 0 || existing_f2 == f2, "illegal field change");
_f2 = f2;
}
void set_f2_as_vfinal_method(Method* f2) {
@@ -215,7 +215,9 @@ class ConstantPoolCacheEntry {
void initialize_resolved_reference_index(int ref_index) {
assert(_f2 == 0, "set once"); // note: ref_index might be zero also
_f2 = ref_index;
- _flags = 1 << is_resolved_ref_shift;
+ if (AllowEnhancedClassRedefinition) {
+ _flags = 1 << is_resolved_ref_shift;
+ }
}
void set_field( // sets entry to resolved field state
--
2.23.0

View File

@@ -0,0 +1,32 @@
From b516b615c20fafa2094dfb9f4cb08245b26418d0 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 22 Nov 2020 19:51:46 +0100
Subject: [PATCH 26/34] dcevm15 - add ClassLoaderDataGraph_lock on
ClassLoaderDataGraph::classes_do
ClassLoaderDataGraph::classes_do need safepoint or lock,
find_sorted_affected_classes is not in safepoint therefore it must be
locked
---
src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index efaf11e1666..197e1c0029f 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -2063,7 +2063,10 @@ jvmtiError VM_EnhancedRedefineClasses::find_sorted_affected_classes(TRAPS) {
AffectedKlassClosure closure(_affected_klasses);
// Updated in j10, from original SystemDictionary::classes_do
- ClassLoaderDataGraph::classes_do(&closure);
+ {
+ MutexLocker mcld(ClassLoaderDataGraph_lock);
+ ClassLoaderDataGraph::classes_do(&closure);
+ }
//ClassLoaderDataGraph::dictionary_classes_do(&closure);
log_trace(redefine, class, load)("%d classes affected", _affected_klasses->length());
--
2.23.0

View File

@@ -0,0 +1,29 @@
From c6498946006879314bdc6218ee72da5d9c88f237 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sat, 28 Nov 2020 19:29:42 +0100
Subject: [PATCH 27/34] dcevm15 - check if has_nestmate_access_to has newest
host class
---
src/hotspot/share/oops/instanceKlass.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp
index 5e40d78a87e..1d9623f2446 100644
--- a/src/hotspot/share/oops/instanceKlass.cpp
+++ b/src/hotspot/share/oops/instanceKlass.cpp
@@ -445,6 +445,11 @@ bool InstanceKlass::has_nestmate_access_to(InstanceKlass* k, TRAPS) {
return false;
}
+ if (AllowEnhancedClassRedefinition) {
+ // TODO: (DCEVM) check if it correct. It fix problems with lambdas (hidden)
+ cur_host = InstanceKlass::cast(cur_host->newest_version());
+ }
+
Klass* k_nest_host = k->nest_host(CHECK_false);
if (k_nest_host == NULL) {
return false;
--
2.23.0

View File

@@ -0,0 +1,24 @@
From 86c27155386c1c40642c99c63a242d1f5d8601a5 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sat, 28 Nov 2020 19:31:08 +0100
Subject: [PATCH 28/34] Remove unused fieldType
---
src/hotspot/share/classfile/vmSymbols.hpp | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/hotspot/share/classfile/vmSymbols.hpp b/src/hotspot/share/classfile/vmSymbols.hpp
index 6a3b234b222..eb06684a288 100644
--- a/src/hotspot/share/classfile/vmSymbols.hpp
+++ b/src/hotspot/share/classfile/vmSymbols.hpp
@@ -465,7 +465,6 @@
template(static_offset_name, "staticOffset") \
template(static_base_name, "staticBase") \
template(field_offset_name, "fieldOffset") \
- template(field_type_name, "fieldType") \
\
/* name symbols needed by intrinsics */ \
\
--
2.23.0

View File

@@ -0,0 +1,54 @@
From 025d0d2903963fb79f83cf0d90418783d3ef6813 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 17:18:16 +0100
Subject: [PATCH 29/34] mark_as_scavengable only alive methods
---
.../share/prims/jvmtiEnhancedRedefineClasses.cpp | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 197e1c0029f..e00fac1f693 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -223,19 +223,21 @@ class FieldCopier : public FieldClosure {
// TODO: review...
void VM_EnhancedRedefineClasses::mark_as_scavengable(nmethod* nm) {
- ScavengableNMethods::register_nmethod(nm);
+ if (nm->is_alive()) {
+ ScavengableNMethods::register_nmethod(nm);
+ }
}
void VM_EnhancedRedefineClasses::unregister_nmethod_g1(nmethod* nm) {
// It should work not only for G1 but also for another GCs, but this way is safer now
- if (!nm->is_zombie() && !nm->is_unloaded()) {
+ if (nm->is_alive()) {
Universe::heap()->unregister_nmethod(nm);
}
}
void VM_EnhancedRedefineClasses::register_nmethod_g1(nmethod* nm) {
// It should work not only for G1 but also for another GCs, but this way is safer now
- if (!nm->is_zombie() && !nm->is_unloaded()) {
+ if (nm->is_alive()) {
Universe::heap()->register_nmethod(nm);
}
}
@@ -511,9 +513,9 @@ void VM_EnhancedRedefineClasses::doit() {
flush_dependent_code(thread);
// }
- // Adjust constantpool caches for all classes that reference methods of the evolved class.
- ClearCpoolCacheAndUnpatch clear_cpool_cache(thread);
- ClassLoaderDataGraph::classes_do(&clear_cpool_cache);
+ // Adjust constantpool caches for all classes that reference methods of the evolved class.
+ ClearCpoolCacheAndUnpatch clear_cpool_cache(thread);
+ ClassLoaderDataGraph::classes_do(&clear_cpool_cache);
// JSR-292 support
if (_any_class_has_resolved_methods) {
--
2.23.0

View File

@@ -0,0 +1,28 @@
From 27aabfefe7d799545049bb81ba19d4ed2ff6379c Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 17:20:11 +0100
Subject: [PATCH 30/34] dcevm15 - lock on
ClassLoaderDataGraph::rollback_redefinition
rollback is not in safepoint, therefore must be locked
---
src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index e00fac1f693..db5fb1c472b 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -1382,7 +1382,9 @@ void VM_EnhancedRedefineClasses::calculate_instance_update_information(Klass* ne
// Rollback all changes - clear new classes from the system dictionary, return old classes to directory, free memory.
void VM_EnhancedRedefineClasses::rollback() {
log_info(redefine, class, load)("Rolling back redefinition, result=%d", _res);
+ ClassLoaderDataGraph_lock->lock();
ClassLoaderDataGraph::rollback_redefinition();
+ ClassLoaderDataGraph_lock->unlock();
for (int i = 0; i < _new_classes->length(); i++) {
SystemDictionary::remove_from_hierarchy(_new_classes->at(i));
--
2.23.0

View File

@@ -0,0 +1,28 @@
From 9b405cb642d5935c39c8dbd522ea2fdecfc29ef3 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 19:59:50 +0100
Subject: [PATCH 31/34] ResourceMark in G1IterateObjectClosureTask fixing
memory leaks
G1IterateObjectClosureTask is used only in redefinition full GC run
---
src/hotspot/share/gc/g1/g1CollectedHeap.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/hotspot/share/gc/g1/g1CollectedHeap.cpp b/src/hotspot/share/gc/g1/g1CollectedHeap.cpp
index a29d2dddc2d..2af6df6c1e4 100644
--- a/src/hotspot/share/gc/g1/g1CollectedHeap.cpp
+++ b/src/hotspot/share/gc/g1/g1CollectedHeap.cpp
@@ -2362,6 +2362,9 @@ class G1IterateObjectClosureTask : public AbstractGangTask {
_cl(cl), _g1h(g1h), _hrclaimer(g1h->workers()->active_workers()) { }
virtual void work(uint worker_id) {
+ Thread *thread = Thread::current();
+ HandleMark hm(thread); // make sure any handles created are deleted
+ ResourceMark rm(thread);
IterateObjectClosureRegionClosure blk(_cl);
_g1h->heap_region_par_iterate_from_worker_offset(&blk, &_hrclaimer, worker_id);
}
--
2.23.0

View File

@@ -0,0 +1,91 @@
From 40fe40884d4efc50864bb3f2dd88f0a2e7122d5a Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 20:05:03 +0100
Subject: [PATCH 32/34] dcevm15 - fix hidded classes
---
.../prims/jvmtiEnhancedRedefineClasses.cpp | 41 ++++++++++++++-----
1 file changed, 30 insertions(+), 11 deletions(-)
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index db5fb1c472b..590f7fdfafe 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -722,7 +722,8 @@ bool VM_EnhancedRedefineClasses::is_modifiable_class(oop klass_mirror) {
}
// Cannot redefine or retransform an anonymous class.
- if (InstanceKlass::cast(k)->is_unsafe_anonymous()) {
+ // TODO: check if is correct in j15
+ if (InstanceKlass::cast(k)->is_unsafe_anonymous() || InstanceKlass::cast(k)->is_hidden()) {
return false;
}
return true;
@@ -808,21 +809,27 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
InstanceKlass* k;
- if (InstanceKlass::cast(the_class)->is_unsafe_anonymous()) {
- const InstanceKlass* host_class = the_class->unsafe_anonymous_host();
+ if (the_class->is_unsafe_anonymous() || the_class->is_hidden()) {
+ InstanceKlass* dynamic_host_class = NULL;
+ InstanceKlass* unsafe_anonymous_host = NULL;
- // Make sure it's the real host class, not another anonymous class.
- while (host_class != NULL && host_class->is_unsafe_anonymous()) {
- host_class = host_class->unsafe_anonymous_host();
+ if (the_class->is_hidden()) {
+ log_debug(redefine, class, load)("loading hidden class %s", the_class->name()->as_C_string());
+ dynamic_host_class = the_class->nest_host(THREAD);
+ }
+
+ if (the_class->is_unsafe_anonymous()) {
+ log_debug(redefine, class, load)("loading usafe anonymous %s", the_class->name()->as_C_string());
+ unsafe_anonymous_host = the_class->unsafe_anonymous_host();
}
ClassLoadInfo cl_info(protection_domain,
- host_class,
- NULL, // dynamic_nest_host
+ unsafe_anonymous_host,
NULL, // cp_patches
+ dynamic_host_class, // dynamic_nest_host
Handle(), // classData
- false, // is_hidden
- false, // is_strong_hidden
+ the_class->is_hidden(), // is_hidden
+ !the_class->is_non_strong_hidden(), // is_strong_hidden
true); // FIXME: check if correct. can_access_vm_annotations
k = SystemDictionary::parse_stream(the_class_sym,
@@ -833,7 +840,17 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
THREAD);
k->class_loader_data()->exchange_holders(the_class->class_loader_data());
- the_class->class_loader_data()->inc_keep_alive();
+
+ if (the_class->is_hidden()) {
+ // from jvm_lookup_define_class() (jvm.cpp):
+ // The hidden class loader data has been artificially been kept alive to
+ // this point. The mirror and any instances of this class have to keep
+ // it alive afterwards.
+ the_class->class_loader_data()->dec_keep_alive();
+ } else {
+ the_class->class_loader_data()->inc_keep_alive();
+ }
+
} else {
k = SystemDictionary::resolve_from_stream(the_class_sym,
the_class_loader,
@@ -1475,6 +1492,8 @@ void VM_EnhancedRedefineClasses::ClearCpoolCacheAndUnpatch::do_klass(Klass* k) {
ik->set_unsafe_anonymous_host(InstanceKlass::cast(ik->unsafe_anonymous_host()->newest_version()));
}
+ // FIXME: check new nest_host for hidden
+
// Update implementor if there is only one, in this case implementor() can reference old class
if (ik->is_interface()) {
Klass* implKlass = ik->implementor();
--
2.23.0

View File

@@ -0,0 +1,27 @@
From 29920b076b4ad96d85adbce0a1d947e5022ba3ad Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 20:08:57 +0100
Subject: [PATCH 33/34] dcevm15 - DON'T clear F2 in CP cache after indy
unevolving
It's not clear why it was cleared in dcevm7-11
---
src/hotspot/share/oops/cpCache.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/oops/cpCache.cpp b/src/hotspot/share/oops/cpCache.cpp
index 79a38dbeff0..650e6fab42d 100644
--- a/src/hotspot/share/oops/cpCache.cpp
+++ b/src/hotspot/share/oops/cpCache.cpp
@@ -650,7 +650,7 @@ void ConstantPoolCacheEntry::clear_entry() {
if (clearData) {
if (!is_resolved_reference()) {
- _f2 = 0;
+ // _f2 = 0;
}
// FIXME: (DCEVM) we want to clear flags, but parameter size is actually used
// after we return from the method, before entry is re-initialized. So let's
--
2.23.0

View File

@@ -0,0 +1,49 @@
From 1f13b20ab5553182680045b7d7324ff92da7e7f0 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <vladimir.dvorak@jetbrains.com>
Date: Sun, 29 Nov 2020 21:28:06 +0100
Subject: [PATCH 34/34] dcevm15 - fix Universe::root_oops_do
Removed ClassLoaderDataGraph::cld_do was cause of crashes due multiple
oop patching. ClassLoaderDataGraph::cld_do replaced in dcevm15
previously used and removed SystemDictionary:oops_do
---
src/hotspot/share/memory/universe.cpp | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/src/hotspot/share/memory/universe.cpp b/src/hotspot/share/memory/universe.cpp
index 8dad437bd51..0199962a684 100644
--- a/src/hotspot/share/memory/universe.cpp
+++ b/src/hotspot/share/memory/universe.cpp
@@ -190,21 +190,26 @@ void Universe::root_oops_do(OopClosure *oopClosure) {
// (DCEVM) TODO: Check if this is correct?
Management::oops_do(oopClosure);
OopStorageSet::vm_global()->oops_do(oopClosure);
- CLDToOopClosure cld_closure(oopClosure, ClassLoaderData::_claim_none);
- ClassLoaderDataGraph::cld_do(&cld_closure);
+ // CLDToOopClosure cld_closure(oopClosure, ClassLoaderData::_claim_none);
+ // ClassLoaderDataGraph::cld_do(&cld_closure);
// Now adjust pointers in remaining weak roots. (All of which should
// have been cleared if they pointed to non-surviving objects.)
// Global (weak) JNI handles
WeakProcessor::oops_do(oopClosure);
+ JvmtiExport::oops_do(oopClosure);
+
CodeBlobToOopClosure blobClosure(oopClosure, CodeBlobToOopClosure::FixRelocations);
CodeCache::blobs_do(&blobClosure);
+
AOT_ONLY(AOTLoader::oops_do(oopClosure);)
+
// StringTable::oops_do was removed in j15
// StringTable::oops_do(oopClosure);
- // PSScavenge::reference_processor()->weak_oops_do(oopClosure);
+ // OopStorageSet::vm_global()->oops_do(oopClosure);
+
}
void Universe::oops_do(OopClosure* f) {
--
2.23.0

View File

@@ -0,0 +1,119 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
WORK_DIR=$(pwd)
JCEF_PATH=${JCEF_PATH:=$WORK_DIR/jcef_win_x64}
source jb/project/tools/common/scripts/common.sh
function create_image_bundle {
__bundle_name=$1
__modules_path=$2
__modules=$3
[ -d $__bundle_name ] && rm -rf $__bundle_name
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__bundle_name || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__bundle_name/release
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__bundle_name/release > release
mv release $__bundle_name/release
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-server-fastdebug
;;
esac
sh ./configure \
--disable-warnings-as-errors \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--disable-ccache \
--enable-cds=yes || do_exit $?
if [ -z "$bundle_type" ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
fi
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g)
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -0,0 +1,63 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WORK_DIR=$(pwd)
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
PATH="/usr/local/bin:/usr/bin:${PATH}"
./configure \
--disable-warnings-as-errors \
--with-target-bits=32 \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || exit 1
make clean CONF=windows-x86-server-release || exit 1
make LOG=info images CONF=windows-x86-server-release test-image || exit 1
JBSDK=${JBRSDK_BASE_NAME}-windows-x86-b${build_number}
BASE_DIR=build/windows-x86-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
sed 's/JBR/JBRSDK/g' ${JSDK}/release > release
mv release ${JBRSDK_BUNDLE}/release
JBR_BUNDLE=jbr
rm -rf ${JBR_BUNDLE}
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
echo Modifying release info ...
#grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release

View File

@@ -0,0 +1,77 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies udate release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the bundles without any additional modules (jcef)
# jcef - the bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
source jb/project/tools/common/scripts/common.sh
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
function pack_jbr {
if [ -z "${bundle_type}" ]; then
JBR_BUNDLE=jbr
else
JBR_BUNDLE=jbr_${bundle_type}
[ -d ${BASE_DIR}/jbr ] && rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
fi
JBR_BASE_NAME=${JBR_BUNDLE}-${JBSDK_VERSION}
JBR=$JBR_BASE_NAME-windows-x64-b$build_number
echo Creating $JBR.tar.gz ...
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR jbr || do_exit $?
}
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
JBR_BASE_NAME=jbr-$JBSDK_VERSION
RELEASE_NAME=windows-x86_64-server-release
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-b${build_number}
case "$bundle_type" in
"nomod" | "")
bundle_type=""
;;
"fd")
RELEASE_NAME=macosx-x86_64-server-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-fastdebug-b${build_number}
;;
esac
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JBSDK=$JBRSDK_BASE_NAME-windows-x64-b$build_number
BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
JBRSDK_BUNDLE=jbrsdk
echo Creating $JBSDK.tar.gz ...
[ -f "$JBSDK.tar.gz" ] && rm "$JBSDK.tar.gz"
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || do_exit $?
fi
pack_jbr $bundle_type
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -0,0 +1,42 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
JBR_BASE_NAME=jbr-$JBSDK_VERSION
IMAGES_DIR=build/windows-x86-server-release/images
JSDK=$IMAGES_DIR/jdk
JBSDK=$JBRSDK_BASE_NAME-windows-x86-b$build_number
BASE_DIR=.
JBRSDK_BUNDLE=jbrsdk
echo Creating $JBSDK.tar.gz ...
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || exit 1
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
JBR=$JBR_BASE_NAME-windows-x86-b$build_number
echo Creating $JBR.tar.gz ...
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR ${JBR_BUNDLE} || exit 1
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || exit 1

View File

@@ -410,17 +410,43 @@ endif
################################################################################
ifneq ($(filter docs-bundles, $(MAKECMDGOALS)), )
DOCS_BUNDLE_FILES := $(call FindFiles, $(DOCS_IMAGE_DIR))
ifneq ($(filter docs-jdk-bundles, $(MAKECMDGOALS)), )
DOCS_JDK_BUNDLE_FILES := $(call FindFiles, $(DOCS_JDK_IMAGE_DIR))
$(eval $(call SetupBundleFile, BUILD_DOCS_BUNDLE, \
BUNDLE_NAME := $(DOCS_BUNDLE_NAME), \
FILES := $(DOCS_BUNDLE_FILES), \
BASE_DIRS := $(DOCS_IMAGE_DIR), \
$(eval $(call SetupBundleFile, BUILD_DOCS_JDK_BUNDLE, \
BUNDLE_NAME := $(DOCS_JDK_BUNDLE_NAME), \
FILES := $(DOCS_JDK_BUNDLE_FILES), \
BASE_DIRS := $(DOCS_JDK_IMAGE_DIR), \
SUBDIR := docs, \
))
DOCS_TARGETS += $(BUILD_DOCS_BUNDLE)
DOCS_JDK_TARGETS += $(BUILD_DOCS_JDK_BUNDLE)
endif
ifneq ($(filter docs-javase-bundles, $(MAKECMDGOALS)), )
DOCS_JAVASE_BUNDLE_FILES := $(call FindFiles, $(DOCS_JAVASE_IMAGE_DIR))
$(eval $(call SetupBundleFile, BUILD_DOCS_JAVASE_BUNDLE, \
BUNDLE_NAME := $(DOCS_JAVASE_BUNDLE_NAME), \
FILES := $(DOCS_JAVASE_BUNDLE_FILES), \
BASE_DIRS := $(DOCS_JAVASE_IMAGE_DIR), \
SUBDIR := docs-javase, \
))
DOCS_JAVASE_TARGETS += $(BUILD_DOCS_JAVASE_BUNDLE)
endif
ifneq ($(filter docs-reference-bundles, $(MAKECMDGOALS)), )
DOCS_REFERENCE_BUNDLE_FILES := $(call FindFiles, $(DOCS_REFERENCE_IMAGE_DIR))
$(eval $(call SetupBundleFile, BUILD_DOCS_REFERENCE_BUNDLE, \
BUNDLE_NAME := $(DOCS_REFERENCE_BUNDLE_NAME), \
FILES := $(DOCS_REFERENCE_BUNDLE_FILES), \
BASE_DIRS := $(DOCS_REFERENCE_IMAGE_DIR), \
SUBDIR := docs-reference, \
))
DOCS_REFERENCE_TARGETS += $(BUILD_DOCS_REFERENCE_BUNDLE)
endif
################################################################################
@@ -469,9 +495,12 @@ $(eval $(call IncludeCustomExtension, Bundles.gmk))
product-bundles: $(PRODUCT_TARGETS)
legacy-bundles: $(LEGACY_TARGETS)
test-bundles: $(TEST_TARGETS)
docs-bundles: $(DOCS_TARGETS)
docs-jdk-bundles: $(DOCS_JDK_TARGETS)
docs-javase-bundles: $(DOCS_JAVASE_TARGETS)
docs-reference-bundles: $(DOCS_REFERENCE_TARGETS)
static-libs-bundles: $(STATIC_LIBS_TARGETS)
jcov-bundles: $(JCOV_TARGETS)
.PHONY: all default product-bundles test-bundles docs-bundles \
.PHONY: all default product-bundles test-bundles \
docs-jdk-bundles docs-javase-bundles docs-reference-bundles \
static-libs-bundles jcov-bundles

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2018, 2020, 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
@@ -45,11 +45,6 @@ $(OUTPUTDIR)/compile_commands.json: $(wildcard $(MAKESUPPORT_OUTPUTDIR)/compile-
$(RM) $@
$(FIND) $(MAKESUPPORT_OUTPUTDIR)/compile-commands/ -name \*.json | \
$(SORT) | $(XARGS) $(CAT) >> $@.tmp
$(if $(FIXPATH),$(FIXPATH) $(AWK) 'BEGIN { \
tmpfile = substr(ARGV[2],2); \
cmd = "$(CP) " "\047" tmpfile "\047" " $@.tmp"; \
system(cmd); \
}' -- @$@.tmp)
$(SED) -e '1s/^/[\$(NEWLINE)/' -e '$(DOLLAR)s/,\s\{0,\}$(DOLLAR)/\$(NEWLINE)]/' $@.tmp > $@
$(RM) $@.tmp

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2021, 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
@@ -49,8 +49,8 @@ TARGETS += $(patsubst %, $(BUILDTOOLS_OUTPUTDIR)/gensrc/%/module-info.java, \
$(INTERIM_LANGTOOLS_MODULES))
$(eval $(call SetupCopyFiles, COPY_PREVIEW_FEATURES, \
FILES := $(TOPDIR)/src/java.base/share/classes/jdk/internal/PreviewFeature.java, \
DEST := $(BUILDTOOLS_OUTPUTDIR)/gensrc/java.base.interim/jdk/internal/, \
FILES := $(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java, \
DEST := $(BUILDTOOLS_OUTPUTDIR)/gensrc/java.base.interim/jdk/internal/javac/, \
))
TARGETS += $(COPY_PREVIEW_FEATURES)
@@ -74,15 +74,15 @@ define SetupInterimModule
EXCLUDE_FILES := $(TOPDIR)/src/$1/share/classes/module-info.java \
Standard.java, \
EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim/module-info.java, \
COPY := .gif .png .xml .css .js javax.tools.JavaCompilerTool, \
COPY := .gif .png .xml .css .js .js.template .txt javax.tools.JavaCompilerTool, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/interim_langtools_modules/$1.interim, \
DISABLED_WARNINGS := module options, \
JAVAC_FLAGS := \
--module-path $(BUILDTOOLS_OUTPUTDIR)/interim_langtools_modules \
$$(INTERIM_LANGTOOLS_ADD_EXPORTS) \
--patch-module java.base=$(BUILDTOOLS_OUTPUTDIR)/gensrc/java.base.interim \
--add-exports java.base/jdk.internal=java.compiler.interim \
--add-exports java.base/jdk.internal=jdk.compiler.interim, \
--add-exports java.base/jdk.internal.javac=java.compiler.interim \
--add-exports java.base/jdk.internal.javac=jdk.compiler.interim, \
))
$1_DEPS_INTERIM := $$(addsuffix .interim, $$(filter \

View File

@@ -31,521 +31,6 @@ include MakeBase.gmk
include Modules.gmk
include JavaCompilation.gmk
# Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, CompileJavaModules.gmk))
################################################################################
# Module specific build settings
java.base_DOCLINT += -Xdoclint:all/protected,-reference,-accessibility \
'-Xdoclint/package:java.*,javax.*'
java.base_JAVAC_FLAGS += -XDstringConcat=inline
java.base_COPY += .icu .dat .spp .nrm content-types.properties \
hijrah-config-Hijrah-umalqura_islamic-umalqura.properties
java.base_CLEAN += intrinsic.properties
java.base_EXCLUDE_FILES += \
$(TOPDIR)/src/java.base/share/classes/jdk/internal/module/ModuleLoaderMap.java
java.base_EXCLUDES += java/lang/doc-files
# Exclude BreakIterator classes that are just used in compile process to generate
# data files and shouldn't go in the product
java.base_EXCLUDE_FILES += sun/text/resources/BreakIteratorRules.java
ifeq ($(call isTargetOs, macosx aix), false)
java.base_EXCLUDE_FILES += sun/nio/fs/PollingWatchService.java
endif
ifeq ($(call isTargetOs, windows), true)
java.base_EXCLUDE_FILES += \
sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \
#
endif
################################################################################
java.compiler_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.datatransfer_DOCLINT += -Xdoclint:all/protected,-reference \
'-Xdoclint/package:java.*,javax.*'
java.datatransfer_COPY += flavormap.properties
################################################################################
java.desktop_DISABLED_WARNINGS += missing-explicit-ctor
java.desktop_DOCLINT += -Xdoclint:all/protected,-reference \
'-Xdoclint/package:java.*,javax.*'
java.desktop_COPY += .gif .png .wav .txt .xml .css .pf
java.desktop_CLEAN += iio-plugin.properties cursors.properties
java.desktop_EXCLUDES += \
java/awt/doc-files \
javax/swing/doc-files \
javax/swing/text/doc-files \
javax/swing/plaf/synth/doc-files \
javax/swing/undo/doc-files \
sun/awt/X11/doc-files \
#
java.desktop_EXCLUDE_FILES += \
javax/swing/plaf/nimbus/InternalFrameTitlePanePainter.java \
javax/swing/plaf/nimbus/OptionPaneMessageAreaPainter.java \
javax/swing/plaf/nimbus/ScrollBarPainter.java \
javax/swing/plaf/nimbus/SliderPainter.java \
javax/swing/plaf/nimbus/SpinnerPainter.java \
javax/swing/plaf/nimbus/SplitPanePainter.java \
javax/swing/plaf/nimbus/TabbedPanePainter.java \
sun/awt/resources/security-icon-bw16.png \
sun/awt/resources/security-icon-bw24.png \
sun/awt/resources/security-icon-bw32.png \
sun/awt/resources/security-icon-bw48.png \
sun/awt/resources/security-icon-interim16.png \
sun/awt/resources/security-icon-interim24.png \
sun/awt/resources/security-icon-interim32.png \
sun/awt/resources/security-icon-interim48.png \
sun/awt/resources/security-icon-yellow16.png \
sun/awt/resources/security-icon-yellow24.png \
sun/awt/resources/security-icon-yellow32.png \
sun/awt/resources/security-icon-yellow48.png \
sun/awt/X11/java-icon16.png \
sun/awt/X11/java-icon24.png \
sun/awt/X11/java-icon32.png \
sun/awt/X11/java-icon48.png \
.template \
#
ifeq ($(call isTargetOs, macosx), true)
# exclude all X11 on Mac.
java.desktop_EXCLUDES += \
sun/awt/X11 \
sun/java2d/x11 \
sun/java2d/jules \
sun/java2d/xr \
com/sun/java/swing/plaf/gtk \
#
java.desktop_EXCLUDE_FILES += \
$(wildcard $(TOPDIR)/src/java.desktop/unix/classes/sun/java2d/*.java) \
$(wildcard $(TOPDIR)/src/java.desktop/unix/classes/sun/java2d/opengl/*.java) \
$(wildcard $(TOPDIR)/src/java.desktop/unix/classes/sun/awt/*.java) \
$(wildcard $(TOPDIR)/src/java.desktop/unix/classes/sun/font/*.java) \
#
else
# TBD: figure out how to eliminate this long list
java.desktop_EXCLUDE_FILES += \
sun/awt/X11/ScreenFormat.java \
sun/awt/X11/XArc.java \
sun/awt/X11/XChar2b.java \
sun/awt/X11/XCharStruct.java \
sun/awt/X11/XClassHint.java \
sun/awt/X11/XComposeStatus.java \
sun/awt/X11/XExtCodes.java \
sun/awt/X11/XFontProp.java \
sun/awt/X11/XFontSetExtents.java \
sun/awt/X11/XFontStruct.java \
sun/awt/X11/XGCValues.java \
sun/awt/X11/XHostAddress.java \
sun/awt/X11/XIMCallback.java \
sun/awt/X11/XIMHotKeyTrigger.java \
sun/awt/X11/XIMHotKeyTriggers.java \
sun/awt/X11/XIMPreeditCaretCallbackStruct.java \
sun/awt/X11/XIMPreeditDrawCallbackStruct.java \
sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java \
sun/awt/X11/XIMStatusDrawCallbackStruct.java \
sun/awt/X11/XIMStringConversionCallbackStruct.java \
sun/awt/X11/XIMStringConversionText.java \
sun/awt/X11/XIMStyles.java \
sun/awt/X11/XIMText.java \
sun/awt/X11/XIMValuesList.java \
sun/awt/X11/XImage.java \
sun/awt/X11/XKeyboardControl.java \
sun/awt/X11/XKeyboardState.java \
sun/awt/X11/XOMCharSetList.java \
sun/awt/X11/XOMFontInfo.java \
sun/awt/X11/XOMOrientation.java \
sun/awt/X11/XPoint.java \
sun/awt/X11/XRectangle.java \
sun/awt/X11/XSegment.java \
sun/awt/X11/XStandardColormap.java \
sun/awt/X11/XTextItem.java \
sun/awt/X11/XTextItem16.java \
sun/awt/X11/XTextProperty.java \
sun/awt/X11/XTimeCoord.java \
sun/awt/X11/XWindowChanges.java \
sun/awt/X11/XdbeSwapInfo.java \
sun/awt/X11/XmbTextItem.java \
sun/awt/X11/XwcTextItem.java
endif
ifeq ($(call isTargetOs, windows), true)
java.desktop_EXCLUDES += com/sun/java/swing/plaf/gtk
endif
ifdef BUILD_HEADLESS_ONLY
java.desktop_EXCLUDES += sun/applet
endif
ifeq ($(call isTargetOs, windows macosx), false)
java.desktop_EXCLUDE_FILES += sun/awt/AWTCharset.java
endif
# These files do not appear in the build result of the old build. This
# is because they are generated sources, but the AUTO_JAVA_FILES won't
# pick them up since they aren't generated when the source dirs are
# searched and they aren't referenced by any other classes so they won't
# be picked up by implicit compilation. On a rebuild, they are picked up
# and compiled. Exclude them here to produce the same rt.jar as the old
# build does when building just once.
java.desktop_EXCLUDE_FILES += \
javax/swing/plaf/nimbus/InternalFrameTitlePanePainter.java \
javax/swing/plaf/nimbus/OptionPaneMessageAreaPainter.java \
javax/swing/plaf/nimbus/ScrollBarPainter.java \
javax/swing/plaf/nimbus/SliderPainter.java \
javax/swing/plaf/nimbus/SpinnerPainter.java \
javax/swing/plaf/nimbus/SplitPanePainter.java \
javax/swing/plaf/nimbus/TabbedPanePainter.java \
#
################################################################################
java.scripting_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
java.scripting_COPY += .js
java.scripting_CLEAN += .properties
################################################################################
java.instrument_DOCLINT += -Xdoclint:all/protected,-accessibility \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.logging_DOCLINT += -Xdoclint:all/protected,-reference,-accessibility \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.management_DOCLINT += -Xdoclint:all/protected,-reference,-accessibility \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.management.rmi_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:javax.*'
################################################################################
java.prefs_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.transaction.xa_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:javax.*'
################################################################################
java.sql_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.sql.rowset_DOCLINT += -Xdoclint:all/protected,-accessibility \
'-Xdoclint/package:java.*,javax.*'
java.sql.rowset_CLEAN_FILES += $(wildcard \
$(TOPDIR)/src/java.sql.rowset/share/classes/com/sun/rowset/*.properties \
$(TOPDIR)/src/java.sql.rowset/share/classes/javax/sql/rowset/*.properties)
################################################################################
java.rmi_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
java.rmi_CLEAN_FILES += $(wildcard \
$(TOPDIR)/src/java.rmi/share/classes/sun/rmi/registry/resources/*.properties \
$(TOPDIR)/src/java.rmi/share/classes/sun/rmi/server/resources/*.properties)
################################################################################
java.xml_DOCLINT += -Xdoclint:all/protected,-accessibility \
'-Xdoclint/package:$(call CommaList, javax.xml.catalog javax.xml.datatype \
javax.xml.transform javax.xml.validation javax.xml.xpath)'
java.xml_CLEAN += .properties
################################################################################
java.naming_DOCLINT += -Xdoclint:all/protected,-accessibility \
'-Xdoclint/package:java.*,javax.*'
java.naming_CLEAN += jndiprovider.properties
################################################################################
java.security.jgss_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.smartcardio_DOCLINT += -Xdoclint:all/protected,-accessibility \
'-Xdoclint/package:java.*,javax.*'
################################################################################
java.xml.crypto_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
java.xml.crypto_COPY += .dtd .xml
java.xml.crypto_CLEAN += .properties
################################################################################
jdk.accessibility_DISABLED_WARNINGS += missing-explicit-ctor
################################################################################
jdk.charsets_COPY += .dat
################################################################################
################################################################################
jdk.compiler_DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:-com.sun.tools.*,-jdk.internal.*,sun.tools.serialver.resources.*'
jdk.compiler_JAVAC_FLAGS += -XDstringConcat=inline
jdk.compiler_CLEAN_FILES += $(wildcard \
$(patsubst %, $(TOPDIR)/src/jdk.compiler/share/classes/%/*.properties, \
sun/tools/serialver/resources))
################################################################################
jdk.hotspot.agent_DISABLED_WARNINGS += rawtypes serial cast static overrides \
fallthrough
jdk.hotspot.agent_COPY += .gif .png .properties
################################################################################
jdk.editpad_COPY += .properties
################################################################################
jdk.jshell_COPY += .jsh .properties
################################################################################
jdk.internal.le_COPY += .properties .caps .txt
################################################################################
jdk.internal.opt_COPY += .properties
################################################################################
jdk.jcmd_COPY += _options
################################################################################
jdk.dynalink_CLEAN += .properties
################################################################################
jdk.javadoc_COPY += .xml .css .js .png
################################################################################
jdk.jartool_DISABLED_WARNINGS += missing-explicit-ctor
jdk.jartool_JAVAC_FLAGS += -XDstringConcat=inline
################################################################################
jdk.httpserver_DISABLED_WARNINGS += missing-explicit-ctor
################################################################################
jdk.unsupported.desktop_DISABLED_WARNINGS += missing-explicit-ctor
################################################################################
# No SCTP implementation on Mac OS X or AIX. These classes should be excluded.
SCTP_IMPL_CLASSES = \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/AssociationChange.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/AssociationImpl.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/PeerAddrChange.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/ResultContainer.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SctpChannelImpl.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SctpNet.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SctpNotification.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SendFailed.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/Shutdown.java
ifeq ($(call isTargetOs, macosx), true)
jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES)
endif
ifeq ($(call isTargetOs, aix), true)
jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES)
endif
################################################################################
jdk.incubator.jpackage_COPY += .gif .png .txt .spec .script .prerm .preinst \
.postrm .postinst .list .sh .desktop .copyright .control .plist .template \
.icns .scpt .wxs .wxl .wxi .ico .bmp .tiff
jdk.incubator.jpackage_CLEAN += .properties
################################################################################
jdk.jconsole_COPY += .gif .png
jdk.jconsole_CLEAN_FILES += $(wildcard \
$(TOPDIR)/src/jdk.jconsole/share/classes/sun/tools/jconsole/resources/*.properties)
################################################################################
jdk.jdeps_COPY += .txt
jdk.jdeps_CLEAN_FILES += $(wildcard \
$(TOPDIR)/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/resources/*.properties \
$(TOPDIR)/src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/*.properties)
################################################################################
jdk.jdi_EXCLUDES += \
com/sun/tools/example/debug/bdi \
com/sun/tools/example/debug/event \
com/sun/tools/example/debug/gui \
com/sun/jdi/doc-files \
#
jdk.jdi_EXCLUDE_FILES += jdi-overview.html
################################################################################
jdk.dev_CLEAN_FILES += $(wildcard \
$(patsubst %, $(TOPDIR)/src/jdk.dev/share/classes/%/*.properties, \
com/sun/tools/script/shell))
jdk.dev_COPY += .js oqlhelp.html .txt
################################################################################
jdk.internal.jvmstat_COPY += aliasmap
################################################################################
# -parameters provides method's parameters information in class file,
# JVMCI compilers make use of that information for various sanity checks.
# Don't use Indy strings concatenation to have good JVMCI startup performance.
# The exports are needed since JVMCI is dynamically exported (see
# jdk.vm.ci.services.internal.ReflectionAccessJDK::openJVMCITo).
jdk.internal.vm.ci_JAVAC_FLAGS += -parameters -XDstringConcat=inline
################################################################################
jdk.internal.vm.compiler_JAVAC_FLAGS += -parameters -XDstringConcat=inline \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.aarch64=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.amd64=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code.site=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code.stack=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.common=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.internal.vm.compiler \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.runtime=jdk.internal.vm.compiler \
#
jdk.internal.vm.compiler_EXCLUDES += \
jdk.internal.vm.compiler.collections.test \
jdk.tools.jaotc.test \
org.graalvm.compiler.api.directives.test \
org.graalvm.compiler.api.test \
org.graalvm.compiler.asm.aarch64.test \
org.graalvm.compiler.asm.amd64.test \
org.graalvm.compiler.asm.test \
org.graalvm.compiler.core.aarch64.test \
org.graalvm.compiler.core.amd64.test \
org.graalvm.compiler.core.jdk9.test \
org.graalvm.compiler.core.match.processor \
org.graalvm.compiler.core.test \
org.graalvm.compiler.debug.test \
org.graalvm.compiler.graph.test \
org.graalvm.compiler.hotspot.aarch64.test \
org.graalvm.compiler.hotspot.amd64.test \
org.graalvm.compiler.hotspot.jdk15.test \
org.graalvm.compiler.hotspot.jdk9.test \
org.graalvm.compiler.hotspot.lir.test \
org.graalvm.compiler.hotspot.test \
org.graalvm.compiler.jtt \
org.graalvm.compiler.lir.jtt \
org.graalvm.compiler.lir.test \
org.graalvm.compiler.loop.test \
org.graalvm.compiler.microbenchmarks \
org.graalvm.compiler.nodeinfo.processor \
org.graalvm.compiler.nodes.test \
org.graalvm.compiler.options.processor \
org.graalvm.compiler.options.test \
org.graalvm.compiler.phases.common.test \
org.graalvm.compiler.processor \
org.graalvm.compiler.replacements.jdk10.test \
org.graalvm.compiler.replacements.jdk12.test \
org.graalvm.compiler.replacements.jdk9.test \
org.graalvm.compiler.replacements.processor \
org.graalvm.compiler.replacements.test \
org.graalvm.compiler.serviceprovider.processor \
org.graalvm.compiler.test \
org.graalvm.compiler.virtual.bench \
org.graalvm.micro.benchmarks \
org.graalvm.util.test \
#
################################################################################
# -parameters provides method's parameters information in class file,
# JVMCI compilers make use of that information for various sanity checks.
# Don't use Indy strings concatenation to have good JAOTC startup performance.
# The exports are needed since JVMCI is dynamically exported (see
# jdk.vm.ci.services.internal.ReflectionAccessJDK::openJVMCITo).
jdk.aot_JAVAC_FLAGS += -parameters -XDstringConcat=inline \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.aarch64=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.amd64=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code.site=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.code.stack=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.common=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.internal.vm.compiler,jdk.aot \
--add-exports jdk.internal.vm.ci/jdk.vm.ci.runtime=jdk.internal.vm.compiler,jdk.aot \
#
jdk.aot_EXCLUDES += \
jdk.tools.jaotc.test
#
################################################################################
sun.charsets_COPY += .dat
################################################################################
jdk.localedata_COPY += _dict _th
# Exclude BreakIterator classes that are just used in compile process to generate
# data files and shouldn't go in the product
jdk.localedata_EXCLUDE_FILES += sun/text/resources/ext/BreakIteratorRules_th.java
jdk.localedata_KEEP_ALL_TRANSLATIONS := true
################################################################################
jdk.jfr_DISABLED_WARNINGS += exports
jdk.jfr_COPY := .xsd .xml .dtd
jdk.jfr_JAVAC_FLAGS := -XDstringConcat=inline
################################################################################
# If this is an imported module that has prebuilt classes, only compile
# module-info.java.
@@ -582,60 +67,8 @@ MODULESOURCEPATH := $(call GetModuleSrcPath)
# Add imported modules to the modulepath
MODULEPATH := $(call PathList, $(IMPORT_MODULES_CLASSES))
ifeq ($(MODULE), jdk.internal.vm.ci)
## WORKAROUND jdk.internal.vm.ci source structure issue
JVMCI_MODULESOURCEPATH := $(MODULESOURCEPATH) \
$(subst /$(MODULE)/,/*/, $(filter-out %processor/src, \
$(wildcard $(TOPDIR)/src/$(MODULE)/share/classes/*/src)))
MODULESOURCEPATH := $(call PathList, $(JVMCI_MODULESOURCEPATH))
endif
ifeq ($(MODULE), jdk.internal.vm.compiler)
## WORKAROUND jdk.internal.vm.compiler source structure issue
VM_COMPILER_MODULESOURCEPATH := $(MODULESOURCEPATH) \
$(subst /$(MODULE)/,/*/, $(filter-out %processor/src %test/src %jtt/src %bench/src %microbenchmarks/src, \
$(wildcard $(TOPDIR)/src/$(MODULE)/share/classes/*/src)))
MODULESOURCEPATH := $(call PathList, $(VM_COMPILER_MODULESOURCEPATH))
endif
ifeq ($(MODULE), jdk.aot)
## WORKAROUND jdk.aot source structure issue
AOT_MODULESOURCEPATH := $(MODULESOURCEPATH) \
$(subst /$(MODULE)/,/*/, $(filter-out %processor/src, \
$(wildcard $(TOPDIR)/src/$(MODULE)/share/classes/*/src)))
MODULESOURCEPATH := $(call PathList, $(AOT_MODULESOURCEPATH))
endif
$(eval $(call SetupJavaCompilation, $(MODULE), \
SMALL_JAVA := false, \
MODULE := $(MODULE), \
SRC := $(wildcard $(MODULE_SRC_DIRS)), \
INCLUDES := $(JDK_USER_DEFINED_FILTER), \
FAIL_NO_SRC := $(FAIL_NO_SRC), \
BIN := $(if $($(MODULE)_BIN), $($(MODULE)_BIN), $(JDK_OUTPUTDIR)/modules), \
HEADERS := $(SUPPORT_OUTPUTDIR)/headers, \
CREATE_API_DIGEST := true, \
JAVAC_FLAGS := \
$($(MODULE)_DOCLINT) \
$($(MODULE)_JAVAC_FLAGS) \
--module-source-path $(MODULESOURCEPATH) \
--module-path $(MODULEPATH) \
--system none, \
))
TARGETS += $($(MODULE)) $($(MODULE)_COPY_EXTRA)
# Declare dependencies between java compilations of different modules.
# Since the other modules are declared in different invocations of this file,
# use the macro to find the correct target file to depend on.
# Only the javac compilation actually depends on other modules so limit
# dependency declaration to that by using the *_COMPILE_TARGET variable.
$($(MODULE)_COMPILE_TARGET): $(foreach d, $(call FindDepsForModule, $(MODULE)), \
$(call SetupJavaCompilationApiTarget, $d, \
$(if $($d_BIN), $($d_BIN), $(JDK_OUTPUTDIR)/modules/$d)))
################################################################################
# Copy zh_HK properties files from zh_TW
# Copy zh_HK properties files from zh_TW (needed by some modules)
$(JDK_OUTPUTDIR)/modules/%_zh_HK.properties: $(JDK_OUTPUTDIR)/modules/%_zh_TW.properties
$(install-file)
@@ -650,13 +83,48 @@ CreateHkTargets = \
.properties \
)
ifeq ($(MODULE), java.sql.rowset)
TARGETS += $(call CreateHkTargets, $(java.sql.rowset_CLEAN_FILES))
endif
################################################################################
# Include module specific build settings
ifeq ($(MODULE), java.rmi)
TARGETS += $(call CreateHkTargets, $(java.rmi_CLEAN_FILES))
endif
-include Java.gmk
################################################################################
# Setup the main compilation
$(eval $(call SetupJavaCompilation, $(MODULE), \
SMALL_JAVA := false, \
MODULE := $(MODULE), \
SRC := $(wildcard $(MODULE_SRC_DIRS)), \
INCLUDES := $(JDK_USER_DEFINED_FILTER), \
FAIL_NO_SRC := $(FAIL_NO_SRC), \
BIN := $(if $($(MODULE)_BIN), $($(MODULE)_BIN), $(JDK_OUTPUTDIR)/modules), \
HEADERS := $(SUPPORT_OUTPUTDIR)/headers, \
CREATE_API_DIGEST := true, \
CLEAN := $(CLEAN), \
CLEAN_FILES := $(CLEAN_FILES), \
COPY := $(COPY), \
DISABLED_WARNINGS := $(DISABLED_WARNINGS_java), \
EXCLUDES := $(EXCLUDES), \
EXCLUDE_FILES := $(EXCLUDE_FILES), \
KEEP_ALL_TRANSLATIONS := $(KEEP_ALL_TRANSLATIONS), \
JAVAC_FLAGS := \
$(DOCLINT) \
$(JAVAC_FLAGS) \
--module-source-path $(MODULESOURCEPATH) \
--module-path $(MODULEPATH) \
--system none, \
))
TARGETS += $($(MODULE))
# Declare dependencies between java compilations of different modules.
# Since the other modules are declared in different invocations of this file,
# use the macro to find the correct target file to depend on.
# Only the javac compilation actually depends on other modules so limit
# dependency declaration to that by using the *_COMPILE_TARGET variable.
$($(MODULE)_COMPILE_TARGET): $(foreach d, $(call FindDepsForModule, $(MODULE)), \
$(call SetupJavaCompilationApiTarget, $d, \
$(if $($d_BIN), $($d_BIN), $(JDK_OUTPUTDIR)/modules/$d)))
################################################################################
# If this is an imported module, copy the pre built classes and resources into
@@ -680,10 +148,6 @@ endif
################################################################################
$(eval $(call IncludeCustomExtension, CompileJavaModules-post.gmk))
################################################################################
all: $(TARGETS)
.PHONY: all

View File

@@ -33,8 +33,20 @@ include JavaCompilation.gmk
TOOLS_CLASSES_DIR := $(BUILDTOOLS_OUTPUTDIR)/tools_jigsaw_classes
# When using an external BUILDJDK, make it possible to shortcut building of
# these tools using the BUILD_JAVAC instead of having to build the complete
# exploded image first.
ifeq ($(EXTERNAL_BUILDJDK), true)
COMPILER := buildjdk
TARGET_RELEASE := $(TARGET_RELEASE_NEWJDK)
else
COMPILER := interim
TARGET_RELEASE := $(TARGET_RELEASE_NEWJDK_UPGRADED)
endif
$(eval $(call SetupJavaCompilation, BUILD_JIGSAW_TOOLS, \
TARGET_RELEASE := $(TARGET_RELEASE_NEWJDK_UPGRADED), \
TARGET_RELEASE := $(TARGET_RELEASE), \
COMPILER := $(COMPILER), \
SRC := $(TOPDIR)/make/jdk/src/classes, \
INCLUDES := build/tools/deps \
build/tools/docs \

View File

@@ -56,7 +56,8 @@ $(eval $(call SetupJavaCompilation, BUILD_TOOLS_JDK, \
DISABLED_WARNINGS := options, \
JAVAC_FLAGS := \
--add-exports java.desktop/sun.awt=ALL-UNNAMED \
--add-exports java.base/sun.text=ALL-UNNAMED, \
--add-exports java.base/sun.text=ALL-UNNAMED \
--add-exports java.base/sun.security.util=ALL-UNNAMED, \
))
TARGETS += $(BUILD_TOOLS_JDK)

View File

@@ -1,4 +1,4 @@
# Copyright (c) 1997, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 1997, 2021, 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
@@ -57,14 +57,11 @@ $(eval $(call IncludeCustomExtension, Docs.gmk))
################################################################################
# Javadoc settings
# Include configuration for URLs in generated javadoc
include $(TOPDIR)/make/conf/javadoc.conf
MODULES_SOURCE_PATH := $(call PathList, $(call GetModuleSrcPath) )
# URLs
JAVADOC_BASE_URL := https://docs.oracle.com/pls/topic/lookup?ctx=javase$(VERSION_NUMBER)&amp;id=homepage
BUG_SUBMIT_URL := https://bugreport.java.com/bugreport/
COPYRIGHT_URL := legal/copyright.html
LICENSE_URL := https://www.oracle.com/java/javase/terms/license/java$(VERSION_NUMBER)speclicense.html
REDISTRIBUTION_URL := https://www.oracle.com/technetwork/java/redist-137594.html
# In order to get a specific ordering it's necessary to specify the total
# ordering of tags as the tags are otherwise ordered in order of definition.
@@ -92,7 +89,6 @@ JAVADOC_TAGS := \
-tag see \
-taglet build.tools.taglet.ExtLink \
-taglet build.tools.taglet.Incubating \
-taglet build.tools.taglet.Preview \
-tagletpath $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
$(CUSTOM_JAVADOC_TAGS) \
#
@@ -458,7 +454,7 @@ $(eval $(call SetupApiDocsGeneration, JAVASE_API, \
MODULES := $(JAVASE_MODULES), \
SHORT_NAME := $(JAVASE_SHORT_NAME), \
LONG_NAME := $(JAVASE_LONG_NAME), \
TARGET_DIR := $(IMAGES_OUTPUTDIR)/javase-docs/api, \
TARGET_DIR := $(DOCS_JAVASE_IMAGE_DIR)/api, \
))
# Targets generated are returned in JAVASE_API_JAVADOC_TARGETS and
@@ -476,8 +472,8 @@ $(eval $(call SetupApiDocsGeneration, REFERENCE_API, \
MODULES := $(JAVASE_MODULES), \
SHORT_NAME := $(JAVASE_SHORT_NAME), \
LONG_NAME := $(JAVASE_LONG_NAME), \
TARGET_DIR := $(IMAGES_OUTPUTDIR)/reference-docs/api, \
JAVADOC_CMD := $(JAVADOC), \
TARGET_DIR := $(DOCS_REFERENCE_IMAGE_DIR)/api, \
JAVADOC_CMD := $(DOCS_REFERENCE_JAVADOC), \
OPTIONS := $(REFERENCE_OPTIONS), \
TAGS := $(REFERENCE_TAGS), \
))

View File

@@ -61,7 +61,7 @@ endif
# Save the stderr output of the command and print it along with stdout in case
# something goes wrong.
$(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXE_SUFFIX) $(CLASSLIST_JAR)
$(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST_JAR)
$(call MakeDir, $(LINK_OPT_DIR))
$(call LogInfo, Generating $(patsubst $(OUTPUTDIR)/%, %, $@))
$(call LogInfo, Generating $(patsubst $(OUTPUTDIR)/%, %, $(JLI_TRACE_FILE)))
@@ -94,7 +94,7 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXE_SUFFIX) $(CLASSLIST_JAR)
# dependencies, make will correctly rebuild both jli trace and classlist
# incrementally using the single recipe above.
$(CLASSLIST_FILE): $(JLI_TRACE_FILE)
$(JLI_TRACE_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXE_SUFFIX) $(CLASSLIST_JAR)
$(JLI_TRACE_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST_JAR)
TARGETS += $(CLASSLIST_FILE) $(JLI_TRACE_FILE)

View File

@@ -44,7 +44,7 @@ ALL_MODULES := $(call FindAllModules)
$(eval $(call ReadImportMetaData))
JRE_MODULES += $(filter $(ALL_MODULES), $(BOOT_MODULES) \
$(PLATFORM_MODULES) $(JRE_TOOL_MODULES))
$(PLATFORM_MODULES) jdk.jdwp.agent)
JDK_MODULES += $(ALL_MODULES)
JRE_MODULES_LIST := $(call CommaList, $(JRE_MODULES))

View File

@@ -200,7 +200,7 @@ ifeq ($(HAS_SPEC),)
COMPARE_BUILD="$(COMPARE_BUILD):NODRYRUN=true" main && \
$(MAKE) $(MFLAGS) $(MAKE_LOG_FLAGS) -r -R -f $(topdir)/make/Init.gmk \
SPEC=$(spec) HAS_SPEC=true ACTUAL_TOPDIR=$(topdir) \
COMPARE_BUILD="$(COMPARE_BUILD)" post-compare-build && \
COMPARE_BUILD="$(COMPARE_BUILD):NODRYRUN=true" post-compare-build && \
) \
) true ) \
$(eval TARGET_DONE=true) \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2020, 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
@@ -32,7 +32,7 @@ include Modules.gmk
################################################################################
# Use this file inside the image as target for make rule
JIMAGE_TARGET_FILE := bin/java$(EXE_SUFFIX)
JIMAGE_TARGET_FILE := bin/java$(EXECUTABLE_SUFFIX)
INTERIM_MODULES_LIST := $(call CommaList, $(INTERIM_IMAGE_MODULES))

View File

@@ -90,7 +90,6 @@ $(eval $(call SetupTarget, buildtools-jdk, \
$(eval $(call SetupTarget, buildtools-modules, \
MAKEFILE := CompileModuleTools, \
DEPS := exploded-image-base, \
))
$(eval $(call SetupTarget, buildtools-hotspot, \
@@ -112,7 +111,6 @@ $(eval $(call SetupTarget, generate-exported-symbols, \
$(eval $(call DeclareRecipesForPhase, GENSRC, \
TARGET_SUFFIX := gensrc-src, \
FILE_PREFIX := Gensrc, \
MAKE_SUBDIR := gensrc, \
CHECK_MODULES := $(ALL_MODULES), \
))
@@ -150,7 +148,6 @@ ALL_TARGETS += $(GENSRC_TARGETS)
$(eval $(call DeclareRecipesForPhase, GENDATA, \
TARGET_SUFFIX := gendata, \
FILE_PREFIX := Gendata, \
MAKE_SUBDIR := gendata, \
CHECK_MODULES := $(ALL_MODULES), \
))
@@ -161,7 +158,6 @@ ALL_TARGETS += $(GENDATA_TARGETS)
$(eval $(call DeclareRecipesForPhase, COPY, \
TARGET_SUFFIX := copy, \
FILE_PREFIX := Copy, \
MAKE_SUBDIR := copy, \
CHECK_MODULES := $(ALL_MODULES), \
))
@@ -191,6 +187,7 @@ JAVA_TARGETS := $(addsuffix -java, $(JAVA_MODULES))
define DeclareCompileJavaRecipe
$1-java:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) \
$(patsubst %,-I%/modules/$1,$(PHASE_MAKEDIRS)) \
-f CompileJavaModules.gmk MODULE=$1)
endef
@@ -203,7 +200,6 @@ ALL_TARGETS += $(JAVA_TARGETS)
$(eval $(call DeclareRecipesForPhase, LIBS, \
TARGET_SUFFIX := libs, \
FILE_PREFIX := Lib, \
MAKE_SUBDIR := lib, \
CHECK_MODULES := $(ALL_MODULES), \
))
@@ -216,7 +212,6 @@ ALL_TARGETS += $(LIBS_TARGETS)
$(eval $(call DeclareRecipesForPhase, STATIC_LIBS, \
TARGET_SUFFIX := static-libs, \
FILE_PREFIX := Lib, \
MAKE_SUBDIR := lib, \
CHECK_MODULES := $(ALL_MODULES), \
EXTRA_ARGS := STATIC_LIBS=true, \
))
@@ -228,7 +223,6 @@ ALL_TARGETS += $(STATIC_LIBS_TARGETS)
$(eval $(call DeclareRecipesForPhase, LAUNCHER, \
TARGET_SUFFIX := launchers, \
FILE_PREFIX := Launcher, \
MAKE_SUBDIR := launcher, \
CHECK_MODULES := $(ALL_MODULES), \
))
@@ -345,7 +339,7 @@ $(eval $(call SetupTarget, test-image-demos-jdk, \
$(eval $(call SetupTarget, generate-summary, \
MAKEFILE := GenerateModuleSummary, \
DEPS := jmods buildtools-modules, \
DEPS := jmods buildtools-modules runnable-buildjdk, \
))
################################################################################
@@ -475,7 +469,7 @@ $(eval $(call SetupTarget, docs-jdk-api-javadoc, \
$(eval $(call SetupTarget, docs-jdk-api-modulegraph, \
MAKEFILE := Docs, \
TARGET := docs-jdk-api-modulegraph, \
DEPS := exploded-image buildtools-modules, \
DEPS := buildtools-modules runnable-buildjdk, \
))
$(eval $(call SetupTarget, docs-javase-api-javadoc, \
@@ -486,7 +480,7 @@ $(eval $(call SetupTarget, docs-javase-api-javadoc, \
$(eval $(call SetupTarget, docs-javase-api-modulegraph, \
MAKEFILE := Docs, \
TARGET := docs-javase-api-modulegraph, \
DEPS := exploded-image buildtools-modules, \
DEPS := buildtools-modules runnable-buildjdk, \
))
$(eval $(call SetupTarget, docs-reference-api-javadoc, \
@@ -497,7 +491,7 @@ $(eval $(call SetupTarget, docs-reference-api-javadoc, \
$(eval $(call SetupTarget, docs-reference-api-modulegraph, \
MAKEFILE := Docs, \
TARGET := docs-reference-api-modulegraph, \
DEPS := exploded-image buildtools-modules, \
DEPS := buildtools-modules runnable-buildjdk, \
))
# The gensrc steps for jdk.jdi create html spec files.
@@ -755,12 +749,24 @@ $(eval $(call SetupTarget, test-bundles, \
DEPS := test-image, \
))
$(eval $(call SetupTarget, docs-bundles, \
$(eval $(call SetupTarget, docs-jdk-bundles, \
MAKEFILE := Bundles, \
TARGET := docs-bundles, \
TARGET := docs-jdk-bundles, \
DEPS := docs-image, \
))
$(eval $(call SetupTarget, docs-javase-bundles, \
MAKEFILE := Bundles, \
TARGET := docs-javase-bundles, \
DEPS := docs-javase-image, \
))
$(eval $(call SetupTarget, docs-reference-bundles, \
MAKEFILE := Bundles, \
TARGET := docs-reference-bundles, \
DEPS := docs-reference-image, \
))
$(eval $(call SetupTarget, static-libs-bundles, \
MAKEFILE := Bundles, \
TARGET := static-libs-bundles, \
@@ -951,10 +957,13 @@ else
$(JMOD_TARGETS) $(INTERIM_JMOD_TARGETS): java.base-libs java.base-copy \
java.base-gendata jdk.jlink-launchers java
endif
else
# The normal non cross compilation case uses needs to wait for the full
else ifeq ($(EXTERNAL_BUILDJDK), false)
# The normal non cross compilation usecase needs to wait for the full
# exploded-image to avoid a race with the optimize target.
$(JMOD_TARGETS) $(INTERIM_JMOD_TARGETS): exploded-image
# The buildtools-modules are used for the exploded-image-optimize target,
# but can be built either using the exploded-image or an external BUILDJDK.
buildtools-modules: exploded-image-base
endif
# All modules include the main license files from java.base.
@@ -1075,6 +1084,18 @@ ifneq ($(COMPILE_TYPE), cross)
exploded-image: exploded-image-optimize
endif
# The runnable-buildjdk target guarantees that the buildjdk is done
# building and ready to be used. The exact set of dependencies it needs
# depends on what kind of buildjdk is used for the current configuration.
runnable-buildjdk:
ifeq ($(CREATE_BUILDJDK), true)
ifneq ($(CREATING_BUILDJDK), true)
runnable-buildjdk: create-buildjdk
endif
else ifeq ($(EXTERNAL_BUILDJDK), false)
runnable-buildjdk: exploded-image
endif
create-buildjdk: create-buildjdk-interim-image
docs-jdk-api: docs-jdk-api-javadoc
@@ -1128,8 +1149,16 @@ ifeq ($(call isTargetOs, macosx), true)
legacy-images: mac-legacy-jre-bundle
endif
# This target builds the documentation image
docs-image: docs-jdk
# These targets build the various documentation images
docs-jdk-image: docs-jdk
docs-javase-image: docs-javase
docs-reference-image: docs-reference
# The docs-jdk-image is what most users expect to be built
docs-image: docs-jdk-image
all-docs-images: docs-jdk-image docs-javase-image docs-reference-image
docs-bundles: docs-jdk-bundles
all-docs-bundles: docs-jdk-bundles docs-javase-bundles docs-reference-bundles
# This target builds the test image
test-image: prepare-test-image test-image-jdk-jtreg-native \
@@ -1162,7 +1191,7 @@ endif
################################################################################
# all-images builds all our deliverables as images.
all-images: product-images test-image docs-image
all-images: product-images test-image all-docs-images
# all-bundles packages all our deliverables as tar.gz bundles.
all-bundles: product-bundles test-bundles docs-bundles static-libs-bundles
@@ -1170,10 +1199,11 @@ all-bundles: product-bundles test-bundles docs-bundles static-libs-bundles
ALL_TARGETS += buildtools hotspot hotspot-libs hotspot-gensrc gensrc gendata \
copy java libs static-libs launchers jmods \
jdk.jdwp.agent-gensrc $(ALL_MODULES) demos \
exploded-image-base exploded-image \
exploded-image-base exploded-image runnable-buildjdk \
create-buildjdk docs-jdk-api docs-javase-api docs-reference-api docs-jdk \
docs-javase docs-reference docs-javadoc mac-bundles product-images legacy-images \
docs-image test-image all-images \
docs-image docs-javase-image docs-reference-image all-docs-images \
docs-bundles all-docs-bundles test-image all-images \
all-bundles
################################################################################

View File

@@ -150,9 +150,7 @@ define DeclareRecipeForModuleMakefile
$2-$$($1_TARGET_SUFFIX):
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) \
-f ModuleWrapper.gmk -I $$(TOPDIR)/make/common/modules \
$$(addprefix -I, $$(PHASE_MAKEDIRS) \
$$(addsuffix /modules/$2, $$(PHASE_MAKEDIRS)) \
) \
$$(patsubst %,-I%/modules/$2,$$(PHASE_MAKEDIRS)) \
MODULE=$2 MAKEFILE_PREFIX=$$($1_FILE_PREFIX) $$($1_EXTRA_ARGS))
endef
@@ -185,7 +183,6 @@ endef
# Param 1: Name of list to add targets to
# Named params:
# TARGET_SUFFIX : Suffix of target to create for recipe
# MAKE_SUBDIR : Subdir for this build phase
# FILE_PREFIX : File prefix for this build phase
# CHECK_MODULES : List of modules to try
# MULTIPLE_MAKEFILES : Set to true to handle makefiles for the same module and

View File

@@ -39,7 +39,7 @@ include MakeBase.gmk
TARGETS :=
# Include the file being wrapped.
include modules/$(MODULE)/$(MAKEFILE_PREFIX).gmk
include $(MAKEFILE_PREFIX).gmk
# Setup copy rules from the modules directories to the jdk image directory.
ifeq ($(call isTargetOs, windows), true)

View File

@@ -53,6 +53,7 @@ define create-info-file
$(call info-file-item, "JAVA_VERSION_DATE", "$(VERSION_DATE)")
$(call info-file-item, "OS_NAME", "$(RELEASE_FILE_OS_NAME)")
$(call info-file-item, "OS_ARCH", "$(RELEASE_FILE_OS_ARCH)")
$(call info-file-item, "LIBC", "$(RELEASE_FILE_LIBC)")
endef
# Param 1 - The file containing the MODULES list

View File

@@ -60,19 +60,14 @@ define SetTestOpt
endif
endef
# Setup _NT_SYMBOL_PATH on Windows
# Setup _NT_SYMBOL_PATH on Windows, which points to our pdb files.
ifeq ($(call isTargetOs, windows), true)
ifndef _NT_SYMBOL_PATH
# Can't use PathList here as it adds quotes around the value.
_NT_SYMBOL_PATH := \
$(subst $(SPACE),;,$(strip \
$(foreach p, $(sort $(dir $(wildcard \
$(addprefix $(SYMBOLS_IMAGE_DIR)/bin/, *.pdb */*.pdb)))), \
$(call FixPath, $p) \
) \
))
export _NT_SYMBOL_PATH
$(call LogDebug, Rewriting _NT_SYMBOL_PATH to $(_NT_SYMBOL_PATH))
SYMBOL_PATH := $(call PathList, $(sort $(patsubst %/, %, $(dir $(wildcard \
$(addprefix $(SYMBOLS_IMAGE_DIR)/bin/, *.pdb */*.pdb))))))
export _NT_SYMBOL_PATH := $(subst \\,\, $(call FixPath, \
$(subst $(DQUOTE),, $(SYMBOL_PATH))))
$(call LogDebug, Setting _NT_SYMBOL_PATH to $(_NT_SYMBOL_PATH))
endif
endif
@@ -609,9 +604,11 @@ define SetupRunGtestTestBody
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/gtest, ( \
$$(CD) $$($1_TEST_SUPPORT_DIR) && \
$$(FIXPATH) $$(TEST_IMAGE_DIR)/hotspot/gtest/$$($1_VARIANT)/gtestLauncher \
-jdk $(JDK_UNDER_TEST) $$($1_GTEST_FILTER) \
--gtest_output=xml:$$($1_TEST_RESULTS_DIR)/gtest.xml \
--gtest_catch_exceptions=0 \
$$($1_GTEST_REPEAT) $$(GTEST_OPTIONS) $$(GTEST_VM_OPTIONS) \
$$(GTEST_JAVA_OPTIONS) $$($1_AOT_OPTIONS) \
> >($(TEE) $$($1_TEST_RESULTS_DIR)/gtest.txt) \

View File

@@ -189,15 +189,11 @@ ifeq ($(OPENJDK_TARGET_CPU), x86_64)
endif
ifeq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(wildcard $(TEST_IMAGE_DIR)/bin/fixpath.exe), )
$(info Error: fixpath is missing from test image '$(TEST_IMAGE_DIR)')
$(error Cannot continue.)
endif
FIXPATH := $(TEST_IMAGE_DIR)/bin/fixpath.exe -c
PATH_SEP:=;
FIXPATH_BASE := $(BASH) $(TOPDIR)/make/scripts/fixpath.sh
FIXPATH := $(FIXPATH_BASE) exec
else
FIXPATH_BASE :=
FIXPATH :=
PATH_SEP:=:
endif
# Check number of cores and memory in MB
@@ -279,8 +275,8 @@ $(call CreateNewSpec, $(NEW_SPEC), \
MAKE := $(MAKE), \
BASH := $(BASH), \
JIB_JAR := $(JIB_JAR), \
FIXPATH_BASE := $(FIXPATH_BASE), \
FIXPATH := $(FIXPATH), \
PATH_SEP := $(PATH_SEP), \
OPENJDK_TARGET_OS := $(OPENJDK_TARGET_OS), \
OPENJDK_TARGET_OS_TYPE := $(OPENJDK_TARGET_OS_TYPE), \
OPENJDK_TARGET_OS_ENV := $(OPENJDK_TARGET_OS_ENV), \

View File

@@ -116,16 +116,13 @@ JAVAC_CMD := $(BOOT_JDK)/bin/javac
JAR_CMD := $(BOOT_JDK)/bin/jar
JLINK_CMD := $(JDK_OUTPUTDIR)/bin/jlink
JMOD_CMD := $(JDK_OUTPUTDIR)/bin/jmod
JARSIGNER_CMD := $(BOOT_JDK)/bin/jarsigner
JAVA := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
JAVA_SMALL := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS)
JAVA_DETACH := $(FIXPATH) $(FIXPATH_DETACH_FLAG) $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
JAVAC := $(FIXPATH) $(JAVAC_CMD)
JAR := $(FIXPATH) $(JAR_CMD)
JLINK := $(FIXPATH) $(JLINK_CMD)
JMOD := $(FIXPATH) $(JMOD_CMD)
JARSIGNER := $(FIXPATH) $(JARSIGNER_CMD)
BUILD_JAVA := $(JDK_IMAGE_DIR)/bin/JAVA
################################################################################
@@ -153,7 +150,6 @@ LN := ln
MIG := mig
MKDIR := mkdir
MV := mv
NAWK := nawk
NICE := nice
PATCH := patch
PRINTF := printf
@@ -167,7 +163,6 @@ TAIL := tail
TEE := tee
TR := tr
TOUCH := touch
UNIQ := uniq
WC := wc
XARGS := xargs
ZIPEXE := zip
@@ -178,7 +173,7 @@ HG := hg
ULIMIT := ulimit
ifeq ($(OPENJDK_BUILD_OS), windows)
CYGPATH := cygpath
PATHTOOL := cygpath
endif
################################################################################

View File

@@ -30,34 +30,25 @@ include MakeBase.gmk
############################################################################
ifeq ($(call isTargetOs, windows), true)
FIXPATH_COPY := $(TEST_IMAGE_DIR)/bin/fixpath.exe
$(FIXPATH_COPY): $(firstword $(FIXPATH))
$(call install-file)
FIXPATH_WORKSPACE_ROOT := $(call FixPath, $(WORKSPACE_ROOT))
FIXPATH_OUTPUTDIR := $(call FixPath, $(OUTPUTDIR))
else
FIXPATH_WORKSPACE_ROOT := $(WORKSPACE_ROOT)
FIXPATH_OUTPUTDIR := $(OUTPUTDIR)
endif
BUILD_INFO_PROPERTIES := $(TEST_IMAGE_DIR)/build-info.properties
$(BUILD_INFO_PROPERTIES):
$(call MakeTargetDir)
$(ECHO) "# Build info properties for JDK tests" > $@
$(ECHO) "build.workspace.root=$(FIXPATH_WORKSPACE_ROOT)" >> $@
$(ECHO) "build.output.root=$(FIXPATH_OUTPUTDIR)" >> $@
$(ECHO) "build.workspace.root=$(call FixPath, $(WORKSPACE_ROOT))" >> $@
$(ECHO) "build.output.root=$(call FixPath, $(OUTPUTDIR))" >> $@
prepare-test-image: $(FIXPATH_COPY) $(BUILD_INFO_PROPERTIES)
$(call MakeDir, $(TEST_IMAGE_DIR))
$(ECHO) > $(TEST_IMAGE_DIR)/Readme.txt 'JDK test image'
README := $(TEST_IMAGE_DIR)/Readme.txt
$(README):
$(call MakeTargetDir)
$(ECHO) > $@ 'JDK test image'
TARGETS += $(BUILD_INFO_PROPERTIES) $(README)
################################################################################
prepare-test-image: $(TARGETS)
all: prepare-test-image
.PHONY: default all prepare-test-image

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -67,8 +67,9 @@ TOOL_GENERATECURRENCYDATA = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_
TOOL_TZDB = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.tzdb.TzdbZoneRulesCompiler
TOOL_BLACKLISTED_CERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.blacklistedcertsconverter.BlacklistedCertsConverter
TOOL_BLOCKED_CERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
--add-exports java.base/sun.security.util=ALL-UNNAMED \
build.tools.blockedcertsconverter.BlockedCertsConverter
TOOL_MAKEJAVASECURITY = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.makejavasecurity.MakeJavaSecurity

View File

@@ -70,27 +70,18 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
fi
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
PATH_SEP=";"
EXE_SUFFIX=".exe"
BASIC_CHECK_PATHS_WINDOWS
else
PATH_SEP=":"
EXE_SUFFIX=""
BASIC_SETUP_PATHS_WINDOWS
fi
AC_SUBST(PATH_SEP)
AC_SUBST(EXE_SUFFIX)
# We get the top-level directory from the supporting wrappers.
BASIC_WINDOWS_VERIFY_DIR($TOPDIR, source)
UTIL_FIXUP_PATH(TOPDIR)
AC_MSG_CHECKING([for top-level directory])
AC_MSG_RESULT([$TOPDIR])
AC_SUBST(TOPDIR)
AC_SUBST(CONFIGURE_START_DIR)
# We can only call UTIL_FIXUP_PATH after BASIC_CHECK_PATHS_WINDOWS.
UTIL_FIXUP_PATH(TOPDIR)
UTIL_FIXUP_PATH(CONFIGURE_START_DIR)
if test "x$CUSTOM_ROOT" != x; then
BASIC_WINDOWS_VERIFY_DIR($CUSTOM_ROOT, custom root)
UTIL_FIXUP_PATH(CUSTOM_ROOT)
WORKSPACE_ROOT="${CUSTOM_ROOT}"
else
@@ -98,6 +89,9 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
fi
AC_SUBST(WORKSPACE_ROOT)
UTIL_FIXUP_PATH(CONFIGURE_START_DIR)
AC_SUBST(CONFIGURE_START_DIR)
# Locate the directory of this script.
AUTOCONF_DIR=$TOPDIR/make/autoconf
@@ -117,6 +111,16 @@ AC_DEFUN([BASIC_EVAL_DEVKIT_VARIABLE],
fi
])
###############################################################################
# Evaluates platform specific overrides for build devkit variables.
# $1: Name of variable
AC_DEFUN([BASIC_EVAL_BUILD_DEVKIT_VARIABLE],
[
if test "x[$]$1" = x; then
eval $1="\${$1_${OPENJDK_BUILD_CPU}}"
fi
])
###############################################################################
AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
[
@@ -224,9 +228,12 @@ AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
# if no Xcode installed, xcodebuild exits with 1
# if Xcode is installed, even if xcode-select is misconfigured, then it exits with 0
if test "x$DEVKIT_ROOT" != x || /usr/bin/xcodebuild -version >/dev/null 2>&1; then
# We need to use xcodebuild in the toolchain dir provided by the user, this will
# fall back on the stub binary in /usr/bin/xcodebuild
AC_PATH_PROG([XCODEBUILD], [xcodebuild], [/usr/bin/xcodebuild], [$TOOLCHAIN_PATH])
# We need to use xcodebuild in the toolchain dir provided by the user
UTIL_LOOKUP_PROGS(XCODEBUILD, xcodebuild, $TOOLCHAIN_PATH)
if test x$XCODEBUILD = x; then
# fall back on the stub binary in /usr/bin/xcodebuild
XCODEBUILD=/usr/bin/xcodebuild
fi
else
# this should result in SYSROOT being empty, unless --with-sysroot is provided
# when only the command line tools are installed there are no SDKs, so headers
@@ -296,6 +303,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
AC_MSG_RESULT([$SYSROOT])
AC_MSG_CHECKING([for toolchain path])
AC_MSG_RESULT([$TOOLCHAIN_PATH])
AC_SUBST(TOOLCHAIN_PATH)
AC_MSG_CHECKING([for extra path])
AC_MSG_RESULT([$EXTRA_PATH])
])
@@ -370,6 +378,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
AC_MSG_CHECKING([what configuration name to use])
AC_MSG_RESULT([$CONF_NAME])
BASIC_WINDOWS_VERIFY_DIR($OUTPUTDIR, output)
UTIL_FIXUP_PATH(OUTPUTDIR)
CONFIGURESUPPORT_OUTPUTDIR="$OUTPUTDIR/configure-support"
@@ -406,26 +415,16 @@ AC_DEFUN([BASIC_CHECK_DIR_ON_LOCAL_DISK],
# df -l lists only local disks; if the given directory is not found then
# a non-zero exit code is given
if test "x$DF" = x; then
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
# msys does not have df; use Windows "net use" instead.
IS_NETWORK_DISK=`net use | grep \`pwd -W | cut -d ":" -f 1 | tr a-z A-Z\`:`
if test "x$IS_NETWORK_DISK" = x; then
$2
else
$3
fi
else
# No df here, say it's local
$2
fi
# No df here, say it's local
$2
else
# JDK-8189619
# df on AIX does not understand -l. On modern AIXes it understands "-T local" which
# is the same. On older AIXes we just continue to live with a "not local build" warning.
if test "x$OPENJDK_TARGET_OS" = xaix; then
DF_LOCAL_ONLY_OPTION='-T local'
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl"; then
# In WSL, we can only build on a drvfs file system (that is, a mounted real Windows drive)
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1"; then
# In WSL1, we can only build on a drvfs file system (that is, a mounted real Windows drive)
DF_LOCAL_ONLY_OPTION='-t drvfs'
else
DF_LOCAL_ONLY_OPTION='-l'

View File

@@ -28,38 +28,37 @@
# but is used by much of the early bootstrap code.
AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
[
# Start with tools that do not need have cross compilation support
# and can be expected to be found in the default PATH. These tools are
# used by configure.
# Bootstrapping: These tools are needed by UTIL_LOOKUP_PROGS
AC_PATH_PROGS(BASENAME, basename)
UTIL_CHECK_NONEMPTY(BASENAME)
AC_PATH_PROGS(DIRNAME, dirname)
UTIL_CHECK_NONEMPTY(DIRNAME)
AC_PATH_PROGS(FILE, file)
UTIL_CHECK_NONEMPTY(FILE)
AC_PATH_PROGS(LDD, ldd)
# First are all the simple required tools.
UTIL_REQUIRE_PROGS(BASENAME, basename)
# First are all the fundamental required tools.
UTIL_REQUIRE_PROGS(BASH, bash)
UTIL_REQUIRE_PROGS(CAT, cat)
UTIL_REQUIRE_PROGS(CHMOD, chmod)
UTIL_REQUIRE_PROGS(CMP, cmp)
UTIL_REQUIRE_PROGS(COMM, comm)
UTIL_REQUIRE_PROGS(CP, cp)
UTIL_REQUIRE_PROGS(CUT, cut)
UTIL_REQUIRE_PROGS(DATE, date)
UTIL_REQUIRE_PROGS(DIFF, [gdiff diff])
UTIL_REQUIRE_PROGS(DIRNAME, dirname)
UTIL_REQUIRE_PROGS(DIFF, gdiff diff)
UTIL_REQUIRE_PROGS(ECHO, echo)
UTIL_REQUIRE_PROGS(EXPR, expr)
UTIL_REQUIRE_PROGS(FILE, file)
UTIL_REQUIRE_PROGS(FIND, find)
UTIL_REQUIRE_PROGS(HEAD, head)
UTIL_REQUIRE_PROGS(GUNZIP, gunzip)
UTIL_REQUIRE_PROGS(GZIP, pigz gzip)
UTIL_REQUIRE_PROGS(HEAD, head)
UTIL_REQUIRE_PROGS(LN, ln)
UTIL_REQUIRE_PROGS(LS, ls)
# gmkdir is known to be safe for concurrent invocations with -p flag.
UTIL_REQUIRE_PROGS(MKDIR, [gmkdir mkdir])
UTIL_REQUIRE_PROGS(MKDIR, gmkdir mkdir)
UTIL_REQUIRE_PROGS(MKTEMP, mktemp)
UTIL_REQUIRE_PROGS(MV, mv)
UTIL_REQUIRE_PROGS(NAWK, [nawk gawk awk])
UTIL_REQUIRE_PROGS(AWK, gawk nawk awk)
UTIL_REQUIRE_PROGS(PRINTF, printf)
UTIL_REQUIRE_PROGS(READLINK, [greadlink readlink])
UTIL_REQUIRE_PROGS(RM, rm)
UTIL_REQUIRE_PROGS(RMDIR, rmdir)
UTIL_REQUIRE_PROGS(SH, sh)
@@ -70,33 +69,31 @@ AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
UTIL_REQUIRE_PROGS(TOUCH, touch)
UTIL_REQUIRE_PROGS(TR, tr)
UTIL_REQUIRE_PROGS(UNAME, uname)
UTIL_REQUIRE_PROGS(UNIQ, uniq)
UTIL_REQUIRE_PROGS(WC, wc)
UTIL_REQUIRE_PROGS(XARGS, xargs)
# Then required tools that require some special treatment.
UTIL_REQUIRE_SPECIAL(AWK, [AC_PROG_AWK])
UTIL_REQUIRE_SPECIAL(GREP, [AC_PROG_GREP])
UTIL_REQUIRE_SPECIAL(EGREP, [AC_PROG_EGREP])
UTIL_REQUIRE_SPECIAL(FGREP, [AC_PROG_FGREP])
UTIL_REQUIRE_SPECIAL(SED, [AC_PROG_SED])
# Optional tools, we can do without them
UTIL_LOOKUP_PROGS(DF, df)
UTIL_LOOKUP_PROGS(NICE, nice)
UTIL_LOOKUP_PROGS(READLINK, greadlink readlink)
# These are only needed on some platforms
UTIL_LOOKUP_PROGS(PATHTOOL, cygpath wslpath)
UTIL_LOOKUP_PROGS(LSB_RELEASE, lsb_release)
UTIL_LOOKUP_PROGS(CMD, cmd.exe, $PATH:/cygdrive/c/windows/system32:/mnt/c/windows/system32:/c/windows/system32)
# For compare.sh only
UTIL_LOOKUP_PROGS(CMP, cmp)
UTIL_LOOKUP_PROGS(UNIQ, uniq)
# Always force rm.
RM="$RM -f"
# pwd behaves differently on various platforms and some don't support the -L flag.
# Always use the bash builtin pwd to get uniform behavior.
THEPWDCMD=pwd
# These are not required on all platforms
UTIL_PATH_PROGS(CYGPATH, cygpath)
UTIL_PATH_PROGS(WSLPATH, wslpath)
UTIL_PATH_PROGS(DF, df)
UTIL_PATH_PROGS(CPIO, [cpio bsdcpio])
UTIL_PATH_PROGS(NICE, nice)
UTIL_PATH_PROGS(LSB_RELEASE, lsb_release)
UTIL_PATH_PROGS(CMD, cmd.exe, $PATH /cygdrive/c/Windows/System32 /mnt/c/Windows/System32)
])
###############################################################################
@@ -131,10 +128,14 @@ AC_DEFUN([BASIC_CHECK_MAKE_VERSION],
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
MAKE_EXPECTED_ENV='cygwin'
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys2"; then
MAKE_EXPECTED_ENV='msys'
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl"; then
MAKE_EXPECTED_ENV='x86_64-.*-linux-gnu'
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1" || test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
if test "x$OPENJDK_BUILD_CPU" = "xaarch64"; then
MAKE_EXPECTED_ENV='aarch64-.*-linux-gnu'
else
MAKE_EXPECTED_ENV='x86_64-.*-linux-gnu'
fi
else
AC_MSG_ERROR([Unknown Windows environment])
fi
@@ -186,14 +187,14 @@ AC_DEFUN([BASIC_CHECK_MAKE_OUTPUT_SYNC],
# Goes looking for a usable version of GNU make.
AC_DEFUN([BASIC_CHECK_GNU_MAKE],
[
UTIL_SETUP_TOOL([MAKE],
UTIL_SETUP_TOOL(MAKE,
[
# Try our hardest to locate a correct version of GNU make
AC_PATH_PROGS(CHECK_GMAKE, gmake)
UTIL_LOOKUP_PROGS(CHECK_GMAKE, gmake)
BASIC_CHECK_MAKE_VERSION("$CHECK_GMAKE", [gmake in PATH])
if test "x$FOUND_MAKE" = x; then
AC_PATH_PROGS(CHECK_MAKE, make)
UTIL_LOOKUP_PROGS(CHECK_MAKE, make)
BASIC_CHECK_MAKE_VERSION("$CHECK_MAKE", [make in PATH])
fi
@@ -202,10 +203,10 @@ AC_DEFUN([BASIC_CHECK_GNU_MAKE],
# We have a toolchain path, check that as well before giving up.
OLD_PATH=$PATH
PATH=$TOOLCHAIN_PATH:$PATH
AC_PATH_PROGS(CHECK_TOOLSDIR_GMAKE, gmake)
UTIL_LOOKUP_PROGS(CHECK_TOOLSDIR_GMAKE, gmake)
BASIC_CHECK_MAKE_VERSION("$CHECK_TOOLSDIR_GMAKE", [gmake in tools-dir])
if test "x$FOUND_MAKE" = x; then
AC_PATH_PROGS(CHECK_TOOLSDIR_MAKE, make)
UTIL_LOOKUP_PROGS(CHECK_TOOLSDIR_MAKE, make)
BASIC_CHECK_MAKE_VERSION("$CHECK_TOOLSDIR_MAKE", [make in tools-dir])
fi
PATH=$OLD_PATH
@@ -335,24 +336,17 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
# Non-required basic tools
UTIL_PATH_PROGS(LDD, ldd)
if test "x$LDD" = "x"; then
# List shared lib dependencies is used for
# debug output and checking for forbidden dependencies.
# We can build without it.
LDD="true"
fi
UTIL_PATH_PROGS(READELF, [greadelf readelf])
UTIL_PATH_PROGS(DOT, dot)
UTIL_PATH_PROGS(HG, hg)
UTIL_PATH_PROGS(GIT, git)
UTIL_PATH_PROGS(STAT, stat)
UTIL_PATH_PROGS(TIME, time)
UTIL_PATH_PROGS(FLOCK, flock)
UTIL_LOOKUP_PROGS(READELF, greadelf readelf)
UTIL_LOOKUP_PROGS(DOT, dot)
UTIL_LOOKUP_PROGS(HG, hg)
UTIL_LOOKUP_PROGS(GIT, git)
UTIL_LOOKUP_PROGS(STAT, stat)
UTIL_LOOKUP_PROGS(TIME, time)
UTIL_LOOKUP_PROGS(FLOCK, flock)
# Dtrace is usually found in /usr/sbin, but that directory may not
# be in the user path.
UTIL_PATH_PROGS(DTRACE, dtrace, $PATH:/usr/sbin)
UTIL_PATH_PROGS(PATCH, [gpatch patch])
UTIL_LOOKUP_PROGS(DTRACE, dtrace, $PATH:/usr/sbin)
UTIL_LOOKUP_PROGS(PATCH, gpatch patch)
# Check if it's GNU time
IS_GNU_TIME=`$TIME --version 2>&1 | $GREP 'GNU time'`
if test "x$IS_GNU_TIME" != x; then
@@ -366,7 +360,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
UTIL_REQUIRE_PROGS(DSYMUTIL, dsymutil)
UTIL_REQUIRE_PROGS(MIG, mig)
UTIL_REQUIRE_PROGS(XATTR, xattr)
UTIL_PATH_PROGS(CODESIGN, codesign)
UTIL_LOOKUP_PROGS(CODESIGN, codesign)
if test "x$CODESIGN" != "x"; then
# Check for user provided code signing identity.
@@ -407,7 +401,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
UTIL_REQUIRE_PROGS(SETFILE, SetFile)
fi
if ! test "x$OPENJDK_TARGET_OS" = "xwindows"; then
UTIL_REQUIRE_BUILTIN_PROGS(ULIMIT, ulimit)
UTIL_REQUIRE_PROGS(ULIMIT, ulimit)
fi
])
@@ -453,7 +447,7 @@ AC_DEFUN_ONCE([BASIC_CHECK_BASH_OPTIONS],
#
AC_DEFUN_ONCE([BASIC_SETUP_PANDOC],
[
UTIL_PATH_PROGS(PANDOC, pandoc)
UTIL_LOOKUP_PROGS(PANDOC, pandoc)
PANDOC_MARKDOWN_FLAG="markdown"
if test -n "$PANDOC"; then

View File

@@ -24,97 +24,160 @@
#
# Setup basic configuration paths, and platform-specific stuff related to PATHs.
AC_DEFUN([BASIC_CHECK_PATHS_WINDOWS],
AC_DEFUN([BASIC_SETUP_PATHS_WINDOWS],
[
SRC_ROOT_LENGTH=`$THEPWDCMD -L|$WC -m`
if test $SRC_ROOT_LENGTH -gt 100; then
AC_MSG_ERROR([Your base path is too long. It is $SRC_ROOT_LENGTH characters long, but only 100 is supported])
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl"; then
# Clarify if it is wsl1 or wsl2, and use that as OS_ENV from this point forward
$PATHTOOL -w / > /dev/null 2>&1
if test $? -ne 0; then
# Without Windows access to our root, it's definitely WSL1
OPENJDK_BUILD_OS_ENV=windows.wsl1
else
# This test is not guaranteed, but there is no documented way of
# distinguishing between WSL1 and WSL2. Assume only WSL2 has WSL_INTEROP
# in /run/WSL
if test -d "/run/WSL" ; then
OPENJDK_BUILD_OS_ENV=windows.wsl2
else
OPENJDK_BUILD_OS_ENV=windows.wsl1
fi
fi
# This is a bit silly since we really don't have a target env as such,
# but do it to keep consistency.
OPENJDK_TARGET_OS_ENV=$OPENJDK_BUILD_OS_ENV
fi
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys2"; then
# Must be done prior to calling any commands to avoid mangling of command line
export MSYS2_ARG_CONV_EXCL="*"
fi
AC_MSG_CHECKING([Windows environment type])
WINENV_VENDOR=${OPENJDK_BUILD_OS_ENV#windows.}
AC_MSG_RESULT([$WINENV_VENDOR])
if test "x$WINENV_VENDOR" = x; then
AC_MSG_ERROR([Unknown Windows environment. Neither cygwin, msys2, wsl1 nor wsl2 was detected.])
fi
if test "x$PATHTOOL" = x; then
AC_MSG_ERROR([Incorrect $WINENV_VENDOR installation. Neither cygpath nor wslpath was found])
fi
if test "x$CMD" = x; then
AC_MSG_ERROR([Incorrect Windows/$WINENV_VENDOR setup. Could not locate cmd.exe])
fi
AC_MSG_CHECKING([$WINENV_VENDOR drive prefix])
WINENV_PREFIX=`$PATHTOOL -u c:/ | $SED -e 's!/c/!!'`
AC_MSG_RESULT(['$WINENV_PREFIX'])
AC_SUBST(WINENV_PREFIX)
AC_MSG_CHECKING([$WINENV_VENDOR root directory as Windows path])
if test "x$OPENJDK_BUILD_OS_ENV" != "xwindows.wsl1"; then
WINENV_ROOT=`$PATHTOOL -w / 2> /dev/null`
# msys2 has a trailing backslash; strip it
WINENV_ROOT=${WINENV_ROOT%\\}
else
WINENV_ROOT='[[unavailable]]'
fi
AC_MSG_RESULT(['$WINENV_ROOT'])
AC_SUBST(WINENV_ROOT)
AC_MSG_CHECKING([$WINENV_VENDOR temp directory])
WINENV_TEMP_DIR=$($PATHTOOL -u $($CMD /q /c echo %TEMP% 2> /dev/null) | $TR -d '\r\n')
AC_MSG_RESULT([$WINENV_TEMP_DIR])
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
# Don't trust the current directory for WSL2, but change to an OK temp dir
cd "$WINENV_TEMP_DIR"
# Bring along confdefs.h or autoconf gets all confused
cp "$CONFIGURE_START_DIR/confdefs.h" "$WINENV_TEMP_DIR"
fi
AC_MSG_CHECKING([$WINENV_VENDOR release])
WINENV_UNAME_RELEASE=`$UNAME -r`
AC_MSG_RESULT([$WINENV_UNAME_RELEASE])
AC_MSG_CHECKING([$WINENV_VENDOR version])
WINENV_UNAME_VERSION=`$UNAME -v`
AC_MSG_RESULT([$WINENV_UNAME_VERSION])
WINENV_VERSION="$WINENV_UNAME_RELEASE, $WINENV_UNAME_VERSION"
AC_MSG_CHECKING([Windows version])
# We must change directory to one guaranteed to work, otherwise WSL1
# can complain (since it does not have a WINENV_ROOT so it can't access
# unix-style paths from Windows.
# Additional [] needed to keep m4 from mangling shell constructs.
[ WINDOWS_VERSION=`$CMD /c ver.exe | $EGREP -o '([0-9]+\.)+[0-9]+'` ]
[ WINDOWS_VERSION=`cd $WINENV_TEMP_DIR && $CMD /c ver | $EGREP -o '([0-9]+\.)+[0-9]+'` ]
AC_MSG_RESULT([$WINDOWS_VERSION])
# Additional handling per specific env
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
AC_MSG_CHECKING([cygwin release])
CYGWIN_RELEASE=`$UNAME -r`
AC_MSG_RESULT([$CYGWIN_RELEASE])
AC_MSG_CHECKING([cygwin version])
CYGWIN_VERSION=`$UNAME -v`
AC_MSG_RESULT([$CYGWIN_VERSION])
# Additional [] needed to keep m4 from mangling shell constructs.
[ CYGWIN_VERSION_OLD=`$ECHO $CYGWIN_RELEASE | $GREP -e '^1\.[0-6]'` ]
[ CYGWIN_VERSION_OLD=`$ECHO $WINENV_UNAME_RELEASE | $GREP -e '^1\.[0-6]'` ]
if test "x$CYGWIN_VERSION_OLD" != x; then
AC_MSG_NOTICE([Your cygwin is too old. You are running $CYGWIN_RELEASE, but at least cygwin 1.7 is required. Please upgrade.])
AC_MSG_ERROR([Cannot continue])
fi
WINDOWS_ENV_VENDOR='cygwin'
WINDOWS_ENV_VERSION="$CYGWIN_RELEASE, $CYGWIN_VERSION"
if test "x$CYGPATH" = x; then
AC_MSG_ERROR([Something is wrong with your cygwin installation since I cannot find cygpath.exe in your path])
if test "x$LDD" = x; then
AC_MSG_ERROR([ldd is missing, which is needed on cygwin])
fi
AC_MSG_CHECKING([cygwin root directory as unix-style path])
# The cmd output ends with Windows line endings (CR/LF)
cygwin_winpath_root=`cd / ; cmd /c cd | $TR -d '\r\n'`
# Force cygpath to report the proper root by including a trailing space, and then stripping it off again.
CYGWIN_ROOT_PATH=`$CYGPATH -u "$cygwin_winpath_root " | $CUT -f 1 -d " "`
AC_MSG_RESULT([$CYGWIN_ROOT_PATH])
WINDOWS_ENV_ROOT_PATH="$CYGWIN_ROOT_PATH"
test_cygdrive_prefix=`$ECHO $CYGWIN_ROOT_PATH | $GREP ^/cygdrive/`
if test "x$test_cygdrive_prefix" = x; then
AC_MSG_ERROR([Your cygdrive prefix is not /cygdrive. This is currently not supported. Change with mount -c.])
WINENV_MARKER_DLL=cygwin1.dll
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys2"; then
if test "x$LDD" = x; then
AC_MSG_ERROR([ldd is missing, which is needed on msys2])
fi
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
AC_MSG_CHECKING([msys release])
MSYS_RELEASE=`$UNAME -r`
AC_MSG_RESULT([$MSYS_RELEASE])
AC_MSG_CHECKING([msys version])
MSYS_VERSION=`$UNAME -v`
AC_MSG_RESULT([$MSYS_VERSION])
WINDOWS_ENV_VENDOR='msys'
WINDOWS_ENV_VERSION="$MSYS_RELEASE, $MSYS_VERSION"
AC_MSG_CHECKING([msys root directory as unix-style path])
# The cmd output ends with Windows line endings (CR/LF), the grep command will strip that away
MSYS_ROOT_PATH=`cd / ; cmd /c cd | $GREP ".*"`
UTIL_REWRITE_AS_UNIX_PATH(MSYS_ROOT_PATH)
AC_MSG_RESULT([$MSYS_ROOT_PATH])
WINDOWS_ENV_ROOT_PATH="$MSYS_ROOT_PATH"
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl"; then
AC_MSG_CHECKING([WSL kernel version])
WSL_KERNEL_VERSION=`$UNAME -v`
AC_MSG_RESULT([$WSL_KERNEL_VERSION])
AC_MSG_CHECKING([WSL kernel release])
WSL_KERNEL_RELEASE=`$UNAME -r`
AC_MSG_RESULT([$WSL_KERNEL_RELEASE])
AC_MSG_CHECKING([WSL distribution])
WINENV_MARKER_DLL=msys-2.0.dll
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1" || test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
AC_MSG_CHECKING([wsl distribution])
WSL_DISTRIBUTION=`$LSB_RELEASE -d | sed 's/Description:\t//'`
AC_MSG_RESULT([$WSL_DISTRIBUTION])
WINDOWS_ENV_VENDOR='wsl'
WINDOWS_ENV_VERSION="$WSL_KERNEL_RELEASE, $WSL_KERNEL_VERSION ($WSL_DISTRIBUTION)"
else
AC_MSG_ERROR([Unknown Windows environment. Neither cygwin, msys, nor wsl was detected.])
WINENV_VERSION="$WINENV_VERSION ($WSL_DISTRIBUTION)"
# Tell WSL to automatically translate the PATH variable
export WSLENV=PATH/l
fi
# Test if windows or unix (cygwin/msys) find is first in path.
# Chicken and egg: FIXPATH is needed for UTIL_FIXUP_PATH to work. So for the
# first run we use the auto-detect abilities of fixpath.sh.
FIXPATH_DIR="$TOPDIR/make/scripts"
FIXPATH="$BASH $FIXPATH_DIR/fixpath.sh exec"
FIXPATH_BASE="$BASH $FIXPATH_DIR/fixpath.sh"
FIXPATH_SAVED_PATH="$PATH"
UTIL_FIXUP_PATH(FIXPATH_DIR)
# Now we can use FIXPATH_DIR to rewrite path to fixpath.sh properly.
if test "x$WINENV_PREFIX" = x; then
# On msys the prefix is empty, but we need to pass something to have the
# fixpath.sh options parser happy.
WINENV_PREFIX_ARG="NONE"
else
WINENV_PREFIX_ARG="$WINENV_PREFIX"
fi
FIXPATH_ARGS="-e $PATHTOOL -p $WINENV_PREFIX_ARG -r ${WINENV_ROOT//\\/\\\\} -t $WINENV_TEMP_DIR -c $CMD -q"
FIXPATH_BASE="$BASH $FIXPATH_DIR/fixpath.sh $FIXPATH_ARGS"
FIXPATH="$FIXPATH_BASE exec"
AC_SUBST(FIXPATH_BASE)
AC_SUBST(FIXPATH)
SRC_ROOT_LENGTH=`$ECHO "$TOPDIR" | $WC -m`
if test $SRC_ROOT_LENGTH -gt 100; then
AC_MSG_ERROR([Your base path is too long. It is $SRC_ROOT_LENGTH characters long, but only 100 is supported])
fi
# Test if windows or unix "find" is first in path.
AC_MSG_CHECKING([what kind of 'find' is first on the PATH])
FIND_BINARY_OUTPUT=`find --version 2>&1`
if test "x`echo $FIND_BINARY_OUTPUT | $GREP GNU`" != x; then
AC_MSG_RESULT([unix style])
elif test "x`echo $FIND_BINARY_OUTPUT | $GREP FIND`" != x; then
AC_MSG_RESULT([Windows])
AC_MSG_NOTICE([Your path contains Windows tools (C:\Windows\system32) before your unix (cygwin or msys) tools.])
AC_MSG_NOTICE([Your path contains Windows tools (C:\Windows\system32) before your unix tools.])
AC_MSG_NOTICE([This will not work. Please correct and make sure /usr/bin (or similar) is first in path.])
AC_MSG_ERROR([Cannot continue])
else
@@ -123,73 +186,39 @@ AC_DEFUN([BASIC_CHECK_PATHS_WINDOWS],
fi
])
AC_DEFUN_ONCE([BASIC_COMPILE_FIXPATH],
# Verify that the directory is usable on Windows
AC_DEFUN([BASIC_WINDOWS_VERIFY_DIR],
[
# When using cygwin or msys, we need a wrapper binary that renames
# /cygdrive/c/ arguments into c:/ arguments and peeks into
# @files and rewrites these too! This wrapper binary is
# called fixpath.
FIXPATH=
if test "x$OPENJDK_BUILD_OS" = xwindows; then
AC_MSG_CHECKING([if fixpath can be created])
FIXPATH_SRC="$TOPDIR/make/src/native/fixpath.c"
FIXPATH_BIN="$CONFIGURESUPPORT_OUTPUTDIR/bin/fixpath.exe"
FIXPATH_DIR="$CONFIGURESUPPORT_OUTPUTDIR/fixpath"
if test "x$OPENJDK_BUILD_OS_ENV" = xwindows.cygwin; then
# Important to keep the .exe suffix on Cygwin for Hotspot makefiles
FIXPATH="$FIXPATH_BIN -c"
elif test "x$OPENJDK_BUILD_OS_ENV" = xwindows.msys; then
# Take all collected prefixes and turn them into a -m/c/foo@/c/bar@... command line
# @ was chosen as separator to minimize risk of other tools messing around with it
all_unique_prefixes=`echo "${all_fixpath_prefixes@<:@@@:>@}" \
| tr ' ' '\n' | $GREP '^/./' | $SORT | $UNIQ`
fixpath_argument_list=`echo $all_unique_prefixes | tr ' ' '@'`
FIXPATH="$FIXPATH_BIN -m$fixpath_argument_list"
elif test "x$OPENJDK_BUILD_OS_ENV" = xwindows.wsl; then
FIXPATH="$FIXPATH_BIN -w"
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl1"; then
OUTPUTDIR_WIN=`$FIXPATH_BASE print $1`
if test "x$OUTPUTDIR_WIN" = x; then
AC_MSG_NOTICE([For wsl1, the $2 dir must be located on a Windows drive. Please see doc/building.md for details.])
AC_MSG_ERROR([Cannot continue])
fi
FIXPATH_SRC_W="$FIXPATH_SRC"
FIXPATH_BIN_W="$FIXPATH_BIN"
$RM -rf $FIXPATH_BIN $FIXPATH_DIR
$MKDIR -p $FIXPATH_DIR $CONFIGURESUPPORT_OUTPUTDIR/bin
UTIL_REWRITE_AS_WINDOWS_MIXED_PATH([FIXPATH_SRC_W])
UTIL_REWRITE_AS_WINDOWS_MIXED_PATH([FIXPATH_BIN_W])
cd $FIXPATH_DIR
$CC $FIXPATH_SRC_W -Fe$FIXPATH_BIN_W > $FIXPATH_DIR/fixpath1.log 2>&1
cd $CONFIGURE_START_DIR
if test ! -x $FIXPATH_BIN; then
AC_MSG_RESULT([no])
cat $FIXPATH_DIR/fixpath1.log
AC_MSG_ERROR([Could not create $FIXPATH_BIN])
fi
AC_MSG_RESULT([yes])
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl"; then
OLD_WSLENV="$WSLENV"
WSLENV=`$ECHO $WSLENV | $SED 's/PATH\/l://'`
UTIL_APPEND_TO_PATH(WSLENV, "FIXPATH_PATH")
export WSLENV
export FIXPATH_PATH=$VS_PATH_WINDOWS
AC_MSG_NOTICE([FIXPATH_PATH is $FIXPATH_PATH])
AC_MSG_NOTICE([Rewriting WSLENV from $OLD_WSLENV to $WSLENV])
fi
AC_MSG_CHECKING([if fixpath.exe works])
cd $FIXPATH_DIR
$FIXPATH $CC $FIXPATH_SRC -Fe$FIXPATH_DIR/fixpath2.exe \
> $FIXPATH_DIR/fixpath2.log 2>&1
cd $CONFIGURE_START_DIR
if test ! -x $FIXPATH_DIR/fixpath2.exe; then
AC_MSG_RESULT([no])
cat $FIXPATH_DIR/fixpath2.log
AC_MSG_ERROR([fixpath did not work!])
fi
AC_MSG_RESULT([yes])
FIXPATH_DETACH_FLAG="--detach"
fi
AC_SUBST(FIXPATH)
AC_SUBST(FIXPATH_DETACH_FLAG)
])
# Create fixpath wrapper
AC_DEFUN([BASIC_WINDOWS_FINALIZE_FIXPATH],
[
if test "x$OPENJDK_BUILD_OS" = xwindows; then
FIXPATH_CMDLINE=". $TOPDIR/make/scripts/fixpath.sh -e $PATHTOOL \
-p $WINENV_PREFIX_ARG -r ${WINENV_ROOT//\\/\\\\} -t $WINENV_TEMP_DIR \
-c $CMD -q"
$ECHO > $OUTPUTDIR/fixpath '#!/bin/bash'
$ECHO >> $OUTPUTDIR/fixpath export PATH='"[$]PATH:'$PATH'"'
$ECHO >> $OUTPUTDIR/fixpath $FIXPATH_CMDLINE '"[$]@"'
$CHMOD +x $OUTPUTDIR/fixpath
FIXPATH_BASE="$OUTPUTDIR/fixpath"
FIXPATH="$FIXPATH_BASE exec"
fi
])
# Platform-specific finalization
AC_DEFUN([BASIC_WINDOWS_FINALIZE],
[
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.wsl2"; then
# Change back from temp dir
cd $CONFIGURE_START_DIR
fi
])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -63,19 +63,23 @@ AC_DEFUN([BOOTJDK_DO_CHECK],
# If previous step claimed to have found a JDK, check it to see if it seems to be valid.
if test "x$BOOT_JDK_FOUND" = xmaybe; then
# Do we have a bin/java?
if test ! -x "$BOOT_JDK/bin/java$EXE_SUFFIX"; then
if test ! -x "$BOOT_JDK/bin/java" && test ! -x "$BOOT_JDK/bin/java.exe"; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK did not contain bin/java; ignoring])
BOOT_JDK_FOUND=no
else
# Do we have a bin/javac?
if test ! -x "$BOOT_JDK/bin/javac$EXE_SUFFIX"; then
if test ! -x "$BOOT_JDK/bin/javac" && test ! -x "$BOOT_JDK/bin/javac.exe"; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK did not contain bin/javac; ignoring])
AC_MSG_NOTICE([(This might be an JRE instead of an JDK)])
BOOT_JDK_FOUND=no
else
# Oh, this is looking good! We probably have found a proper JDK. Is it the correct version?
java_to_test="$BOOT_JDK/bin/java"
UTIL_FIXUP_EXECUTABLE(java_to_test)
BOOT_JDK_VERSION_OUTPUT=`$java_to_test $USER_BOOT_JDK_OPTIONS -version 2>&1`
# Additional [] needed to keep m4 from mangling shell constructs.
[ BOOT_JDK_VERSION=`"$BOOT_JDK/bin/java$EXE_SUFFIX" $USER_BOOT_JDK_OPTIONS -version 2>&1 | $AWK '/version \"[0-9a-zA-Z\._\-]+\"/{print $ 0; exit;}'` ]
[ BOOT_JDK_VERSION=`echo $BOOT_JDK_VERSION_OUTPUT | $AWK '/version "[0-9a-zA-Z\._\-]+"/ {print $ 0; exit;}'` ]
if [ [[ "$BOOT_JDK_VERSION" =~ "Picked up" ]] ]; then
AC_MSG_NOTICE([You have _JAVA_OPTIONS or JAVA_TOOL_OPTIONS set. This can mess up the build. Please use --with-boot-jdk-jvmargs instead.])
AC_MSG_NOTICE([Java reports: "$BOOT_JDK_VERSION".])
@@ -91,7 +95,12 @@ AC_DEFUN([BOOTJDK_DO_CHECK],
# Extra M4 quote needed to protect [] in grep expression.
[FOUND_CORRECT_VERSION=`$ECHO $BOOT_JDK_VERSION \
| $EGREP "\"(${DEFAULT_ACCEPTABLE_BOOT_VERSIONS// /|})([\.+-].*)?\""`]
if test "x$FOUND_CORRECT_VERSION" = x; then
if test "x$BOOT_JDK_VERSION" = x; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK is not a working JDK; ignoring])
AC_MSG_NOTICE([Output from java -version was: $BOOT_JDK_VERSION_OUTPUT])
BOOT_JDK_FOUND=no
elif test "x$FOUND_CORRECT_VERSION" = x; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK is incorrect JDK version ($BOOT_JDK_VERSION); ignoring])
AC_MSG_NOTICE([(Your Boot JDK version must be one of: $DEFAULT_ACCEPTABLE_BOOT_VERSIONS)])
BOOT_JDK_FOUND=no
@@ -102,7 +111,9 @@ AC_DEFUN([BOOTJDK_DO_CHECK],
AC_MSG_CHECKING([for Boot JDK])
AC_MSG_RESULT([$BOOT_JDK])
AC_MSG_CHECKING([Boot JDK version])
BOOT_JDK_VERSION=`"$BOOT_JDK/bin/java$EXE_SUFFIX" $USER_BOOT_JDK_OPTIONS -version 2>&1 | $TR '\n\r' ' '`
BOOT_JDK_VERSION=`$java_to_test $USER_BOOT_JDK_OPTIONS -version 2>&1 | $TR -d '\r'`
# This is not a no-op; it will portably convert newline to space
BOOT_JDK_VERSION=`$ECHO $BOOT_JDK_VERSION`
AC_MSG_RESULT([$BOOT_JDK_VERSION])
fi # end check jdk version
fi # end check javac
@@ -151,8 +162,8 @@ AC_DEFUN([BOOTJDK_CHECK_JAVA_HOME],
[
if test "x$JAVA_HOME" != x; then
JAVA_HOME_PROCESSED="$JAVA_HOME"
UTIL_FIXUP_PATH(JAVA_HOME_PROCESSED)
if test ! -d "$JAVA_HOME_PROCESSED"; then
UTIL_FIXUP_PATH(JAVA_HOME_PROCESSED, NOFAIL)
if test "x$JAVA_HOME_PROCESSED" = x || test ! -d "$JAVA_HOME_PROCESSED"; then
AC_MSG_NOTICE([Your JAVA_HOME points to a non-existing directory!])
else
# Aha, the user has set a JAVA_HOME
@@ -167,8 +178,8 @@ AC_DEFUN([BOOTJDK_CHECK_JAVA_HOME],
# Test: Is there a java or javac in the PATH, which is a symlink to the JDK?
AC_DEFUN([BOOTJDK_CHECK_JAVA_IN_PATH_IS_SYMLINK],
[
AC_PATH_PROG(JAVAC_CHECK, javac)
AC_PATH_PROG(JAVA_CHECK, java)
UTIL_LOOKUP_PROGS(JAVAC_CHECK, javac, , NOFIXPATH)
UTIL_LOOKUP_PROGS(JAVA_CHECK, java, , NOFIXPATH)
BINARY="$JAVAC_CHECK"
if test "x$JAVAC_CHECK" = x; then
BINARY="$JAVA_CHECK"
@@ -207,9 +218,9 @@ AC_DEFUN([BOOTJDK_CHECK_MACOSX_JAVA_LOCATOR],
# First check at user selected default
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME()])
# If that did not work out (e.g. too old), try explicit versions instead
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME([-v 1.9])])
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME([-v 1.8])])
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME([-v 1.7])])
for ver in $DEFAULT_ACCEPTABLE_BOOT_VERSIONS ; do
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME([-v $ver])])
done
fi
])
@@ -242,8 +253,10 @@ AC_DEFUN([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY],
[
if test "x[$]$1" != x; then
VIRTUAL_DIR="[$]$1/Java"
UTIL_REWRITE_AS_UNIX_PATH(VIRTUAL_DIR)
BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY($VIRTUAL_DIR)
UTIL_FIXUP_PATH(VIRTUAL_DIR, NOFAIL)
if test "x$VIRTUAL_DIR" != x; then
BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY($VIRTUAL_DIR)
fi
fi
])
@@ -270,16 +283,17 @@ AC_DEFUN([BOOTJDK_CHECK_WELL_KNOWN_LOCATIONS],
AC_DEFUN([BOOTJDK_CHECK_TOOL_IN_BOOTJDK],
[
# Use user overridden value if available, otherwise locate tool in the Boot JDK.
UTIL_SETUP_TOOL($1,
UTIL_REQUIRE_SPECIAL($1,
[
AC_MSG_CHECKING([for $2 in Boot JDK])
AC_MSG_CHECKING([for $2 [[Boot JDK]]])
$1=$BOOT_JDK/bin/$2
if test ! -x [$]$1; then
if test ! -x [$]$1 && test ! -x [$]$1.exe; then
AC_MSG_RESULT(not found)
AC_MSG_NOTICE([Your Boot JDK seems broken. This might be fixed by explicitly setting --with-boot-jdk])
AC_MSG_ERROR([Could not find $2 in the Boot JDK])
fi
AC_MSG_RESULT(ok)
AC_MSG_RESULT(\[$]BOOT_JDK/bin/$2)
UTIL_FIXUP_EXECUTABLE($1)
AC_SUBST($1)
])
])
@@ -313,12 +327,12 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
AC_MSG_ERROR([The path given by --with-boot-jdk does not contain a valid Boot JDK])
fi
# Test: On MacOS X, can we find a boot jdk using /usr/libexec/java_home?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_MACOSX_JAVA_LOCATOR])
# Test: Is $JAVA_HOME set?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_JAVA_HOME])
# Test: On MacOS X, can we find a boot jdk using /usr/libexec/java_home?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_MACOSX_JAVA_LOCATOR])
# Test: Is there a java or javac in the PATH, which is a symlink to the JDK?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_JAVA_IN_PATH_IS_SYMLINK])
@@ -336,11 +350,10 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
AC_SUBST(BOOT_JDK)
# Setup tools from the Boot JDK.
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVA, java$EXE_SUFFIX)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAC, javac$EXE_SUFFIX)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVADOC, javadoc$EXE_SUFFIX)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAR, jar$EXE_SUFFIX)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JARSIGNER, jarsigner$EXE_SUFFIX)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVA, java)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAC, javac)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVADOC, javadoc)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAR, jar)
# Finally, set some other options...
@@ -353,7 +366,7 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
AC_SUBST(BOOT_JDK_SOURCETARGET)
# Check if the boot jdk is 32 or 64 bit
if "$JAVA" -version 2>&1 | $GREP -q "64-Bit"; then
if $JAVA -version 2>&1 | $GREP -q "64-Bit"; then
BOOT_JDK_BITS="64"
else
BOOT_JDK_BITS="32"
@@ -368,7 +381,7 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
if test "x$boot_jdk_cds_args" != x; then
# Try creating a CDS archive
"$JAVA" $boot_jdk_cds_args -Xshare:dump > /dev/null 2>&1
$JAVA $boot_jdk_cds_args -Xshare:dump > /dev/null 2>&1
if test $? -eq 0; then
BOOTJDK_USE_LOCAL_CDS=true
AC_MSG_RESULT([yes, created])
@@ -516,7 +529,7 @@ AC_DEFUN([BOOTJDK_CHECK_BUILD_JDK],
else
# Oh, this is looking good! We probably have found a proper JDK. Is it the correct version?
# Additional [] needed to keep m4 from mangling shell constructs.
[ BUILD_JDK_VERSION=`"$BUILD_JDK/bin/java" -version 2>&1 | $AWK '/version \"[0-9a-zA-Z\._\-]+\"/{print $ 0; exit;}'` ]
[ BUILD_JDK_VERSION=`"$BUILD_JDK/bin/java" -version 2>&1 | $AWK '/version "[0-9a-zA-Z\._\-]+"/ {print $ 0; exit;}'` ]
# Extra M4 quote needed to protect [] in grep expression.
[FOUND_CORRECT_VERSION=`echo $BUILD_JDK_VERSION | $EGREP "\"$VERSION_FEATURE([\.+-].*)?\""`]
@@ -574,8 +587,12 @@ AC_DEFUN([BOOTJDK_SETUP_BUILD_JDK],
fi
fi
# Since these tools do not yet exist, we cannot use UTIL_FIXUP_EXECUTABLE to
# detect the need of fixpath
JMOD="$BUILD_JDK/bin/jmod"
UTIL_ADD_FIXPATH(JMOD)
JLINK="$BUILD_JDK/bin/jlink"
UTIL_ADD_FIXPATH(JLINK)
AC_SUBST(JMOD)
AC_SUBST(JLINK)
@@ -589,3 +606,28 @@ AC_DEFUN([BOOTJDK_SETUP_BUILD_JDK],
AC_SUBST(BUILD_JDK)
AC_SUBST(EXTERNAL_BUILDJDK)
])
# The docs-reference JDK is used to run javadoc for the docs-reference targets.
# If not set, the reference docs will be built using the interim javadoc.
AC_DEFUN([BOOTJDK_SETUP_DOCS_REFERENCE_JDK],
[
AC_ARG_WITH(docs-reference-jdk, [AS_HELP_STRING([--with-docs-reference-jdk],
[path to JDK to use for building the reference documentation])])
AC_MSG_CHECKING([for docs-reference JDK])
if test "x$with_docs_reference_jdk" != "x"; then
DOCS_REFERENCE_JDK="$with_docs_reference_jdk"
AC_MSG_RESULT([$DOCS_REFERENCE_JDK])
DOCS_REFERENCE_JAVADOC="$DOCS_REFERENCE_JDK/bin/javadoc"
if test ! -x "$DOCS_REFERENCE_JAVADOC"; then
AC_MSG_ERROR([docs-reference JDK found at $DOCS_REFERENCE_JDK did not contain bin/javadoc])
fi
UTIL_FIXUP_EXECUTABLE(DOCS_REFERENCE_JAVADOC)
else
AC_MSG_RESULT([no, using interim javadoc for the docs-reference targets])
# By leaving this empty, Docs.gmk will revert to the default interim javadoc
DOCS_REFERENCE_JAVADOC=
fi
AC_SUBST(DOCS_REFERENCE_JAVADOC)
])

View File

@@ -28,14 +28,6 @@
# First include the real base spec.gmk file
include @SPEC@
# Check that the user did not try to specify a different java to use for compiling.
# On windows we need to account for fixpath being first word.
ifeq ($(firstword $(JAVA)),$(FIXPATH))
JAVA_EXEC_POS=2
else
JAVA_EXEC_POS=1
endif
# Override specific values to do a boot cycle build
# Use a different Boot JDK
@@ -47,10 +39,9 @@ OUTPUTDIR:=$(OLD_OUTPUTDIR)/bootcycle-build
# No spaces in patsubst to avoid leading space in variable
JAVAC_SERVER_DIR:=$(patsubst $(OLD_OUTPUTDIR)%,$(OUTPUTDIR)%,$(JAVAC_SERVER_DIR))
JAVA_CMD:=$(BOOT_JDK)/bin/java
JAVAC_CMD:=$(BOOT_JDK)/bin/javac
JAR_CMD:=$(BOOT_JDK)/bin/jar
JARSIGNER_CMD:=$(BOOT_JDK)/bin/jarsigner
JAVA_CMD := $(FIXPATH) $(BOOT_JDK)/bin/java
JAVAC_CMD := $(FIXPATH) $(BOOT_JDK)/bin/javac
JAR_CMD := $(FIXPATH) $(BOOT_JDK)/bin/jar
# The bootcycle JVM arguments may differ from the original boot jdk.
JAVA_FLAGS_BIG := @BOOTCYCLE_JVM_ARGS_BIG@
# Any CDS settings generated for the bootjdk are invalid in the bootcycle build.
@@ -58,5 +49,3 @@ JAVA_FLAGS_BIG := @BOOTCYCLE_JVM_ARGS_BIG@
# settings for CDS.
JAVA_FLAGS := $(filter-out -XX:SharedArchiveFile% -Xshare%, $(JAVA_FLAGS))
# Pandoc cannot be used without the jjs plugin, which was removed with Nashorn.
ENABLE_PANDOC := false

View File

@@ -30,6 +30,17 @@
DIR=`dirname $0`
OUT=`. $DIR/autoconf-config.guess`
# Detect C library.
# Use '-gnu' suffix on systems that use glibc.
# Use '-musl' suffix on systems that use the musl libc.
echo $OUT | grep -- -linux- > /dev/null 2> /dev/null
if test $? = 0; then
libc_vendor=`ldd --version 2>&1 | sed -n '1s/.*\(musl\).*/\1/p'`
if [ x"${libc_vendor}" = x"musl" ]; then
OUT=`echo $OUT | sed 's/-gnu/-musl/'`
fi
fi
# Test and fix cygwin on x86_64
echo $OUT | grep 86-pc-cygwin > /dev/null 2> /dev/null
if test $? != 0; then
@@ -45,11 +56,11 @@ if test $? = 0; then
fi
# Test and fix wsl
echo $OUT | grep x86_64-unknown-linux-gnu > /dev/null 2> /dev/null
echo $OUT | grep unknown-linux-gnu > /dev/null 2> /dev/null
if test $? = 0; then
uname -r | grep -i microsoft > /dev/null 2> /dev/null
if test $? = 0; then
OUT="x86_64-pc-wsl"
OUT=`echo $OUT | sed -e 's/unknown-linux-gnu/pc-wsl/'`
fi
fi

View File

@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2020, 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
@@ -29,8 +29,19 @@
DIR=`dirname $0`
if echo $* | grep linux-musl >/dev/null ; then
echo $*
exit
fi
# Allow wsl
if echo $* | grep x86_64-pc-wsl >/dev/null ; then
if echo $* | grep pc-wsl >/dev/null ; then
echo $*
exit
fi
# Allow msys2
if echo $* | grep pc-msys >/dev/null ; then
echo $*
exit
fi
@@ -44,7 +55,7 @@ if ! echo $* | grep '^aarch64-' >/dev/null ; then
fi
while test $# -gt 0 ; do
case $1 in
case $1 in
-- ) # Stop option processing
shift; break ;;
aarch64-* )

View File

@@ -175,7 +175,7 @@ AC_DEFUN([BPERF_SETUP_CCACHE],
if test "x$TOOLCHAIN_PATH" != x; then
PATH=$TOOLCHAIN_PATH:$PATH
fi
UTIL_PATH_PROGS(CCACHE, ccache)
UTIL_LOOKUP_PROGS(CCACHE, ccache)
PATH="$OLD_PATH"
AC_MSG_CHECKING([if ccache is available])

View File

@@ -54,11 +54,13 @@ IMAGES_OUTPUTDIR := $(patsubst $(OUTPUTDIR)%,$(BUILDJDK_OUTPUTDIR)%,$(IMAGES_OUT
OPENJDK_BUILD_CPU_LEGACY := @OPENJDK_BUILD_CPU_LEGACY@
OPENJDK_BUILD_CPU_LEGACY_LIB := @OPENJDK_BUILD_CPU_LEGACY_LIB@
OPENJDK_BUILD_LIBC := @OPENJDK_BUILD_LIBC@
OPENJDK_TARGET_CPU := @OPENJDK_BUILD_CPU@
OPENJDK_TARGET_CPU_ARCH := @OPENJDK_BUILD_CPU_ARCH@
OPENJDK_TARGET_CPU_BITS := @OPENJDK_BUILD_CPU_BITS@
OPENJDK_TARGET_CPU_ENDIAN := @OPENJDK_BUILD_CPU_ENDIAN@
OPENJDK_TARGET_CPU_LEGACY := @OPENJDK_BUILD_CPU_LEGACY@
OPENJDK_TARGET_LIBC := @OPENJDK_BUILD_LIBC@
OPENJDK_TARGET_OS_INCLUDE_SUBDIR := @OPENJDK_BUILD_OS_INCLUDE_SUBDIR@
HOTSPOT_TARGET_OS := @HOTSPOT_BUILD_OS@
@@ -66,6 +68,7 @@ HOTSPOT_TARGET_OS_TYPE := @HOTSPOT_BUILD_OS_TYPE@
HOTSPOT_TARGET_CPU := @HOTSPOT_BUILD_CPU@
HOTSPOT_TARGET_CPU_ARCH := @HOTSPOT_BUILD_CPU_ARCH@
HOTSPOT_TARGET_CPU_DEFINE := @HOTSPOT_BUILD_CPU_DEFINE@
HOTSPOT_TARGET_LIBC := @HOTSPOT_BUILD_LIBC@
CFLAGS_JDKLIB := @OPENJDK_BUILD_CFLAGS_JDKLIB@
CXXFLAGS_JDKLIB := @OPENJDK_BUILD_CXXFLAGS_JDKLIB@

View File

@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2020, 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
@@ -43,7 +43,7 @@ export CMP="@CMP@"
export CP="@CP@"
export CUT="@CUT@"
export DIFF="@DIFF@"
export DUMPBIN="@FIXPATH@ @DUMPBIN@"
export DUMPBIN="@DUMPBIN@"
export EXPR="@EXPR@"
export FILE="@FILE@"
export FIND="@FIND@"
@@ -53,7 +53,6 @@ export LDD="@LDD@"
export LN="@LN@"
export MKDIR="@MKDIR@"
export MV="@MV@"
export NAWK="@NAWK@"
export NM="@GNM@"
export OBJDUMP="@OBJDUMP@"
export OTOOL="@OTOOL@"
@@ -87,12 +86,10 @@ else
fi
if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
if [ "$OPENJDK_BUILD_OS_ENV" = "windows.wsl" ]; then
export FIXPATH_PATH="@VS_PATH_WINDOWS@"
export WSLENV="$WSLENV:FIXPATH_PATH:DEBUG_FIXPATH"
else
export PATH="@VS_PATH@"
if [[ $OPENJDK_BUILD_OS_ENV =~ ^windows.wsl ]]; then
export WSLENV=PATH/l
fi
export PATH="$PATH:@TOOLCHAIN_PATH@"
fi
export HOTSPOT_BUILD_TIME="@HOTSPOT_BUILD_TIME@"

View File

@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2012, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2020, 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
@@ -49,7 +49,7 @@ export LC_ALL=C
if test "x$CUSTOM_CONFIG_DIR" != x; then
custom_hook=$CUSTOM_CONFIG_DIR/custom-hook.m4
if test ! -e $custom_hook; then
echo "CUSTOM_CONFIG_DIR not pointing to a proper custom config dir."
echo "CUSTOM_CONFIG_DIR ($CUSTOM_CONFIG_DIR) not pointing to a proper custom config dir."
echo "Error: Cannot continue" 1>&2
exit 1
fi
@@ -83,6 +83,7 @@ autoconf_missing_help() {
BREW="`type -p brew 2> /dev/null`"
ZYPPER="`type -p zypper 2> /dev/null`"
CYGWIN="`type -p cygpath 2> /dev/null`"
UNAMEOUT="`uname 2> /dev/null`"
if test "x$ZYPPER" != x; then
PKGHANDLER_COMMAND="sudo zypper install autoconf"
@@ -92,6 +93,8 @@ autoconf_missing_help() {
PKGHANDLER_COMMAND="sudo yum install autoconf"
elif test "x$BREW" != x; then
PKGHANDLER_COMMAND="brew install autoconf"
elif test "x$UNAMEOUT" == xAIX; then
echo "You might be able to fix this by installing autoconf from the 'AIX Toolbox for Linux Applications' (or compile it from the sources)."
elif test "x$CYGWIN" != x; then
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P autoconf )"
fi
@@ -114,7 +117,7 @@ generate_configure_script() {
AUTOCONF="`type -p autoconf 2> /dev/null`"
if test "x$AUTOCONF" = x; then
echo
echo "Autoconf is not found on the PATH, and AUTOCONF is not set."
echo "Autoconf is not found on the PATH ($PATH), and AUTOCONF is not set."
echo "You need autoconf to be able to generate a runnable configure script."
autoconf_missing_help
echo "Error: Cannot find autoconf" 1>&2

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -106,6 +106,8 @@ BASIC_SETUP_DEVKIT
# To properly create a configuration name, we need to have the OpenJDK target
# and options (variants and debug level) parsed.
BASIC_SETUP_OUTPUT_DIR
# After we have the output dir we can finalize the fixpath wrapper
BASIC_WINDOWS_FINALIZE_FIXPATH
# Must be done before we can call HELP_MSG_MISSING_DEPENDENCY.
HELP_SETUP_DEPENDENCY_HELP
@@ -142,6 +144,7 @@ JDKVER_SETUP_JDK_VERSION_NUMBERS
BOOTJDK_SETUP_BOOT_JDK
BOOTJDK_SETUP_BUILD_JDK
BOOTJDK_SETUP_DOCS_REFERENCE_JDK
###############################################################################
#
@@ -203,7 +206,8 @@ FLAGS_POST_TOOLCHAIN
PLATFORM_SETUP_OPENJDK_TARGET_BITS
PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS
# Configure flags for the tools
# Configure flags for the tools. Need to know if we should build reproducible.
JDKOPT_SETUP_REPRODUCIBLE_BUILD
FLAGS_SETUP_FLAGS
# Setup debug symbols (need objcopy from the toolchain for that)
@@ -219,9 +223,6 @@ JDKOPT_SETUP_ADDRESS_SANITIZER
#
###############################################################################
# After we have toolchain, we can compile fixpath. It's needed by the lib checks.
BASIC_COMPILE_FIXPATH
LIB_DETERMINE_DEPENDENCIES
LIB_SETUP_LIBRARIES
@@ -242,13 +243,11 @@ HOTSPOT_SETUP_MISC
#
###############################################################################
JDKOPT_DETECT_INTREE_EC
JDKOPT_ENABLE_DISABLE_FAILURE_HANDLER
JDKOPT_ENABLE_DISABLE_GENERATE_CLASSLIST
JDKOPT_EXCLUDE_TRANSLATIONS
JDKOPT_ENABLE_DISABLE_MANPAGES
JDKOPT_ENABLE_DISABLE_CDS_ARCHIVE
JDKOPT_SETUP_REPRODUCIBLE_BUILD
###############################################################################
#
@@ -295,6 +294,7 @@ BASIC_CHECK_LEFTOVER_OVERRIDDEN
CONFIG_STATUS="$CONFIGURESUPPORT_OUTPUTDIR/config.status"
# Create the actual output files. Now the main work of configure is done.
BASIC_WINDOWS_FINALIZE
AC_OUTPUT
# After AC_OUTPUT, we need to do final work

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -130,14 +130,20 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
case "${TOOLCHAIN_TYPE}" in
microsoft)
DISABLE_WARNING_PREFIX="-wd"
BUILD_CC_DISABLE_WARNING_PREFIX="-wd"
CFLAGS_WARNINGS_ARE_ERRORS="-WX"
WARNINGS_ENABLE_ALL="-W3"
DISABLED_WARNINGS="4800"
if test "x$TOOLCHAIN_VERSION" = x2017; then
# VS2017 incorrectly triggers this warning for constexpr
DISABLED_WARNINGS+=" 4307"
fi
;;
gcc)
DISABLE_WARNING_PREFIX="-Wno-"
BUILD_CC_DISABLE_WARNING_PREFIX="-Wno-"
CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
# Additional warnings that are not activated by -Wall and -Wextra
@@ -149,7 +155,6 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
WARNINGS_ENABLE_ALL_CXXFLAGS="$WARNINGS_ENABLE_ALL_CFLAGS $WARNINGS_ENABLE_ADDITIONAL_CXX"
DISABLED_WARNINGS="unused-parameter unused"
BUILD_CC_DISABLE_WARNING_PREFIX="-Wno-"
;;
clang)
@@ -163,11 +168,6 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
DISABLED_WARNINGS="unknown-warning-option unused-parameter unused"
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
# missing-method-return-type triggers in JavaNativeFoundation framework
DISABLED_WARNINGS="$DISABLED_WARNINGS missing-method-return-type"
fi
;;
xlc)
@@ -227,8 +227,14 @@ AC_DEFUN([FLAGS_SETUP_OPTIMIZATION],
# -D_FORTIFY_SOURCE=2 hardening option needs optimization (at least -O1) enabled
# set for lower O-levels -U_FORTIFY_SOURCE to overwrite previous settings
if test "x$OPENJDK_TARGET_OS" = xlinux -a "x$DEBUG_LEVEL" = "xfastdebug"; then
ENABLE_FORTIFY_CFLAGS="-D_FORTIFY_SOURCE=2"
DISABLE_FORTIFY_CFLAGS="-U_FORTIFY_SOURCE"
# ASan doesn't work well with _FORTIFY_SOURCE
# See https://github.com/google/sanitizers/wiki/AddressSanitizer#faq
if test "x$ASAN_ENABLED" = xyes; then
ENABLE_FORTIFY_CFLAGS="${DISABLE_FORTIFY_CFLAGS}"
else
ENABLE_FORTIFY_CFLAGS="-D_FORTIFY_SOURCE=2"
fi
C_O_FLAG_HIGHEST_JVM="${C_O_FLAG_HIGHEST_JVM} ${ENABLE_FORTIFY_CFLAGS}"
C_O_FLAG_HIGHEST="${C_O_FLAG_HIGHEST} ${ENABLE_FORTIFY_CFLAGS}"
C_O_FLAG_HI="${C_O_FLAG_HI} ${ENABLE_FORTIFY_CFLAGS}"
@@ -554,6 +560,11 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
fi
fi
OS_CFLAGS="$OS_CFLAGS -DLIBC=$OPENJDK_TARGET_LIBC"
if test "x$OPENJDK_TARGET_LIBC" = xmusl; then
OS_CFLAGS="$OS_CFLAGS -DMUSL_LIBC"
fi
# Where does this really belong??
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
PICFLAG="-fPIC"
@@ -589,25 +600,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
fi
fi
# Optional POSIX functionality needed by the JVM
#
# Check if clock_gettime is available and in which library. This indicates
# availability of CLOCK_MONOTONIC for hotspot. But we don't need to link, so
# don't let it update LIBS.
save_LIBS="$LIBS"
AC_SEARCH_LIBS(clock_gettime, rt, [HAS_CLOCK_GETTIME=true], [])
if test "x$LIBS" = "x-lrt "; then
CLOCK_GETTIME_IN_LIBRT=true
fi
LIBS="$save_LIBS"
if test "x$HAS_CLOCK_GETTIME" = "xtrue"; then
OS_CFLAGS_JVM="$OS_CFLAGS_JVM -DSUPPORTS_CLOCK_MONOTONIC"
if test "x$CLOCK_GETTIME_IN_LIBRT" = "xtrue"; then
OS_CFLAGS_JVM="$OS_CFLAGS_JVM -DNEEDS_LIBRT"
fi
fi
# Extra flags needed when building optional static versions of certain
# JDK libraries.
STATIC_LIBS_CFLAGS="-DSTATIC_BUILD=1"
@@ -648,21 +640,17 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -DARCH='\"$FLAGS_CPU_LEGACY\"' \
-D$FLAGS_CPU_LEGACY"
if test "x$FLAGS_CPU_BITS" = x64; then
# -D_LP64=1 is only set on linux and mac. Setting on windows causes diff in
# unpack200.exe.
if test "x$FLAGS_OS" = xlinux || test "x$FLAGS_OS" = xmacosx; then
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -D_LP64=1"
fi
if test "x$FLAGS_OS" != xaix; then
# xlc on AIX defines _LP64=1 by default and issues a warning if we redefine it.
$1_DEFINES_CPU_JVM="${$1_DEFINES_CPU_JVM} -D_LP64=1"
fi
if test "x$FLAGS_CPU_BITS" = x64 && test "x$FLAGS_OS" != xaix; then
# xlc on AIX defines _LP64=1 by default and issues a warning if we redefine it.
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -D_LP64=1"
$1_DEFINES_CPU_JVM="${$1_DEFINES_CPU_JVM} -D_LP64=1"
fi
# toolchain dependend, per-cpu
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
if test "x$FLAGS_CPU" = xx86_64; then
if test "x$FLAGS_CPU" = xaarch64; then
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -D_ARM64_ -Darm64"
elif test "x$FLAGS_CPU" = xx86_64; then
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -D_AMD64_ -Damd64"
else
$1_DEFINES_CPU_JDK="${$1_DEFINES_CPU_JDK} -D_X86_ -Dx86"
@@ -672,9 +660,21 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
# CFLAGS PER CPU
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
# COMMON to gcc and clang
AC_MSG_CHECKING([if $1 is x86])
if test "x$FLAGS_CPU" = xx86; then
# Force compatibility with i586 on 32 bit intel platforms.
$1_CFLAGS_CPU="-march=i586"
AC_MSG_RESULT([yes])
AC_MSG_CHECKING([if control flow protection is enabled by additional compiler flags])
if echo "${EXTRA_CFLAGS}${EXTRA_CXXFLAGS}${EXTRA_ASFLAGS}" | ${GREP} -q 'fcf-protection' ; then
# cf-protection requires CMOV and thus i686
$1_CFLAGS_CPU="-march=i686"
AC_MSG_RESULT([yes, forcing ${$1_CFLAGS_CPU}])
else
# Force compatibility with i586 on 32 bit intel platforms.
$1_CFLAGS_CPU="-march=i586"
AC_MSG_RESULT([no, forcing ${$1_CFLAGS_CPU}])
fi
else
AC_MSG_RESULT([no])
fi
fi
@@ -739,6 +739,18 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_WARNING_CFLAGS_JVM="-Wno-format-zero-length -Wtype-limits -Wuninitialized"
fi
if test "x$TOOLCHAIN_TYPE" = xmicrosoft && test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then
# Enabling deterministic creates warnings if __DATE__ or __TIME__ are
# used, and since we are, silence that warning.
REPRODUCIBLE_CFLAGS="-experimental:deterministic -wd5048"
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${REPRODUCIBLE_CFLAGS}],
PREFIX: $3,
IF_FALSE: [
REPRODUCIBLE_CFLAGS=
]
)
fi
# Prevent the __FILE__ macro from generating absolute paths into the built
# binaries. Depending on toolchain, different mitigations are possible.
# * GCC and Clang of new enough versions have -fmacro-prefix-map.
@@ -757,6 +769,29 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
FILE_MACRO_CFLAGS=
]
)
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft &&
test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then
# There is a known issue with the pathmap if the mapping is made to the
# empty string. Add a minimal string "s" as prefix to work around this.
workspace_root_win=`$FIXPATH_BASE print "${WORKSPACE_ROOT%/}"`
# PATHMAP_FLAGS is also added to LDFLAGS in flags-ldflags.m4.
PATHMAP_FLAGS="-pathmap:${workspace_root_win//\//\\\\}=s \
-pathmap:${workspace_root_win}=s"
FILE_MACRO_CFLAGS="$PATHMAP_FLAGS"
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${FILE_MACRO_CFLAGS}],
PREFIX: $3,
IF_FALSE: [
PATHMAP_FLAGS=
FILE_MACRO_CFLAGS=
]
)
fi
AC_MSG_CHECKING([how to prevent absolute paths in output])
if test "x$FILE_MACRO_CFLAGS" != x; then
AC_MSG_RESULT([using compiler options])
else
AC_MSG_RESULT([using relative paths])
fi
fi
AC_SUBST(FILE_MACRO_CFLAGS)
@@ -765,12 +800,13 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
CFLAGS_JVM_COMMON="$ALWAYS_CFLAGS_JVM $ALWAYS_DEFINES_JVM \
$TOOLCHAIN_CFLAGS_JVM ${$1_TOOLCHAIN_CFLAGS_JVM} \
$OS_CFLAGS $OS_CFLAGS_JVM $CFLAGS_OS_DEF_JVM $DEBUG_CFLAGS_JVM \
$WARNING_CFLAGS $WARNING_CFLAGS_JVM $JVM_PICFLAG $FILE_MACRO_CFLAGS"
$WARNING_CFLAGS $WARNING_CFLAGS_JVM $JVM_PICFLAG $FILE_MACRO_CFLAGS \
$REPRODUCIBLE_CFLAGS"
CFLAGS_JDK_COMMON="$ALWAYS_CFLAGS_JDK $ALWAYS_DEFINES_JDK $TOOLCHAIN_CFLAGS_JDK \
$OS_CFLAGS $CFLAGS_OS_DEF_JDK $DEBUG_CFLAGS_JDK $DEBUG_OPTIONS_FLAGS_JDK \
$WARNING_CFLAGS $WARNING_CFLAGS_JDK $DEBUG_SYMBOLS_CFLAGS_JDK \
$FILE_MACRO_CFLAGS"
$FILE_MACRO_CFLAGS $REPRODUCIBLE_CFLAGS"
# Use ${$2EXTRA_CFLAGS} to block EXTRA_CFLAGS to be added to build flags.
# (Currently we don't have any OPENJDK_BUILD_EXTRA_CFLAGS, but that might

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -66,11 +66,11 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
# Add -z,defs, to forbid undefined symbols in object files.
# add -z,relro (mark relocations read only) for all libs
# add -z,now ("full relro" - more of the Global Offset Table GOT is marked read only)
BASIC_LDFLAGS="-Wl,--hash-style=gnu -Wl,-z,defs -Wl,-z,relro -Wl,-z,now"
BASIC_LDFLAGS="-Wl,-z,defs -Wl,-z,relro -Wl,-z,now"
# Linux : remove unused code+data in link step
if test "x$ENABLE_LINKTIME_GC" = xtrue; then
if test "x$OPENJDK_TARGET_CPU" = xs390x; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,--gc-sections -Wl,--print-gc-sections"
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,--gc-sections"
else
BASIC_LDFLAGS_JDK_ONLY="$BASIC_LDFLAGS_JDK_ONLY -Wl,--gc-sections"
fi
@@ -106,7 +106,14 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
# Assume clang or gcc.
# FIXME: We should really generalize SET_SHARED_LIBRARY_ORIGIN instead.
OS_LDFLAGS_JVM_ONLY="-Wl,-rpath,@loader_path/. -Wl,-rpath,@loader_path/.."
OS_LDFLAGS_JDK_ONLY="-mmacosx-version-min=$MACOSX_VERSION_MIN"
OS_LDFLAGS="-mmacosx-version-min=$MACOSX_VERSION_MIN"
fi
if test "x$OPENJDK_TARGET_OS" = xlinux; then
# Hotspot needs to link librt to get the clock_* functions.
# But once our supported minimum build and runtime platform
# has glibc 2.17, this can be removed as the functions are
# in libc.
OS_LDFLAGS_JVM_ONLY="-lrt"
fi
fi
@@ -137,9 +144,17 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
fi
fi
if test "x$ENABLE_REPRODUCIBLE_BUILD" = "xtrue"; then
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
REPRODUCIBLE_LDFLAGS="-experimental:deterministic"
fi
fi
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -pdbaltpath:%_PDB%"
# PATHMAP_FLAGS is setup in flags-cflags.m4.
FILE_MACRO_LDFLAGS="${PATHMAP_FLAGS}"
fi
fi
@@ -164,21 +179,30 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_CPU_DEP],
$1_CPU_LDFLAGS="$ARM_ARCH_TYPE_FLAGS $ARM_FLOAT_TYPE_FLAGS"
fi
# MIPS ABI does not support GNU hash style
if test "x${OPENJDK_$1_CPU}" = xmips ||
test "x${OPENJDK_$1_CPU}" = xmipsel ||
test "x${OPENJDK_$1_CPU}" = xmips64 ||
test "x${OPENJDK_$1_CPU}" = xmips64el; then
$1_CPU_LDFLAGS="${$1_CPU_LDFLAGS} -Wl,--hash-style=sysv"
else
$1_CPU_LDFLAGS="${$1_CPU_LDFLAGS} -Wl,--hash-style=gnu"
fi
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
if test "x${OPENJDK_$1_CPU_BITS}" = "x32"; then
$1_CPU_EXECUTABLE_LDFLAGS="-stack:327680"
elif test "x${OPENJDK_$1_CPU_BITS}" = "x64"; then
$1_CPU_EXECUTABLE_LDFLAGS="-stack:1048576"
fi
if test "x${OPENJDK_$1_CPU}" = "xx86"; then
$1_CPU_LDFLAGS="-safeseh"
# NOTE: Old build added -machine. Probably not needed.
$1_CPU_LDFLAGS_JVM_ONLY="-machine:I386"
$1_CPU_EXECUTABLE_LDFLAGS="-stack:327680"
else
$1_CPU_LDFLAGS_JVM_ONLY="-machine:AMD64"
$1_CPU_EXECUTABLE_LDFLAGS="-stack:1048576"
fi
fi
# JVM_VARIANT_PATH depends on if this is build or target...
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
$1_LDFLAGS_JDK_LIBPATH="-libpath:${OUTPUTDIR}/support/modules_libs/java.base"
$1_LDFLAGS_JDK_LIBPATH="-libpath:\$(SUPPORT_OUTPUTDIR)/modules_libs/java.base"
else
$1_LDFLAGS_JDK_LIBPATH="-L\$(SUPPORT_OUTPUTDIR)/modules_libs/java.base \
-L\$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/${$1_JVM_VARIANT_PATH}"
@@ -186,15 +210,17 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_CPU_DEP],
# Export variables according to old definitions, prefix with $2 if present.
LDFLAGS_JDK_COMMON="$BASIC_LDFLAGS $BASIC_LDFLAGS_JDK_ONLY \
$OS_LDFLAGS_JDK_ONLY $DEBUGLEVEL_LDFLAGS_JDK_ONLY ${$2EXTRA_LDFLAGS}"
$OS_LDFLAGS $DEBUGLEVEL_LDFLAGS_JDK_ONLY ${$2EXTRA_LDFLAGS}"
$2LDFLAGS_JDKLIB="$LDFLAGS_JDK_COMMON $BASIC_LDFLAGS_JDK_LIB_ONLY \
${$1_LDFLAGS_JDK_LIBPATH} $SHARED_LIBRARY_FLAGS"
${$1_LDFLAGS_JDK_LIBPATH} $SHARED_LIBRARY_FLAGS \
$REPRODUCIBLE_LDFLAGS $FILE_MACRO_LDFLAGS"
$2LDFLAGS_JDKEXE="$LDFLAGS_JDK_COMMON $EXECUTABLE_LDFLAGS \
${$1_CPU_EXECUTABLE_LDFLAGS}"
${$1_CPU_EXECUTABLE_LDFLAGS} $REPRODUCIBLE_LDFLAGS $FILE_MACRO_LDFLAGS"
$2JVM_LDFLAGS="$BASIC_LDFLAGS $BASIC_LDFLAGS_JVM_ONLY $OS_LDFLAGS_JVM_ONLY \
$2JVM_LDFLAGS="$BASIC_LDFLAGS $BASIC_LDFLAGS_JVM_ONLY $OS_LDFLAGS $OS_LDFLAGS_JVM_ONLY \
$DEBUGLEVEL_LDFLAGS $DEBUGLEVEL_LDFLAGS_JVM_ONLY $BASIC_LDFLAGS_ONLYCXX \
${$1_CPU_LDFLAGS} ${$1_CPU_LDFLAGS_JVM_ONLY} ${$2EXTRA_LDFLAGS}"
${$1_CPU_LDFLAGS} ${$1_CPU_LDFLAGS_JVM_ONLY} ${$2EXTRA_LDFLAGS} \
$REPRODUCIBLE_LDFLAGS $FILE_MACRO_LDFLAGS"
AC_SUBST($2LDFLAGS_JDKLIB)
AC_SUBST($2LDFLAGS_JDKEXE)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, 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
@@ -130,7 +130,7 @@ AC_DEFUN([FLAGS_SETUP_MACOSX_VERSION],
# of the OS. It currently has a hard coded value. Setting this also limits
# exposure to API changes in header files. Bumping this is likely to
# require code changes to build.
MACOSX_VERSION_MIN=10.9.0
MACOSX_VERSION_MIN=10.12.0
MACOSX_VERSION_MIN_NODOTS=${MACOSX_VERSION_MIN//\./}
AC_SUBST(MACOSX_VERSION_MIN)
@@ -226,6 +226,14 @@ AC_DEFUN([FLAGS_SETUP_SYSROOT_FLAGS],
fi
fi
# For the microsoft toolchain, we need to get the SYSROOT flags from the
# Visual Studio environment. Currently we cannot handle this as a separate
# build toolchain.
if test "x$1" = x && test "x$OPENJDK_BUILD_OS" = "xwindows" \
&& test "x$TOOLCHAIN_TYPE" = "xmicrosoft"; then
TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV
fi
AC_SUBST($1SYSROOT_CFLAGS)
AC_SUBST($1SYSROOT_LDFLAGS)
])
@@ -234,6 +242,7 @@ AC_DEFUN_ONCE([FLAGS_PRE_TOOLCHAIN],
[
# We should always include user supplied flags
FLAGS_SETUP_USER_SUPPLIED_FLAGS
# The sysroot flags are needed for configure to be able to run the compilers
FLAGS_SETUP_SYSROOT_FLAGS
@@ -258,10 +267,6 @@ AC_DEFUN_ONCE([FLAGS_PRE_TOOLCHAIN],
GLOBAL_LDFLAGS="$MACHINE_FLAG $SYSROOT_LDFLAGS $USER_LDFLAGS"
# FIXME: Don't really know how to do with this, but this was the old behavior
GLOBAL_CPPFLAGS="$SYSROOT_CFLAGS"
AC_SUBST(GLOBAL_CFLAGS)
AC_SUBST(GLOBAL_CXXFLAGS)
AC_SUBST(GLOBAL_LDFLAGS)
AC_SUBST(GLOBAL_CPPFLAGS)
# FIXME: For compatilibity, export this as EXTRA_CFLAGS for now.
EXTRA_CFLAGS="$MACHINE_FLAG $USER_CFLAGS"
@@ -280,6 +285,14 @@ AC_DEFUN_ONCE([FLAGS_PRE_TOOLCHAIN],
CXXFLAGS="$GLOBAL_CXXFLAGS"
LDFLAGS="$GLOBAL_LDFLAGS"
CPPFLAGS="$GLOBAL_CPPFLAGS"
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
# When autoconf sends both compiler and linker flags to cl.exe at the same
# time, linker flags must be last at the command line. Achieve this by
# moving them to LIBS.
LIBS="$LIBS -link $LDFLAGS"
LDFLAGS=""
fi
])
AC_DEFUN([FLAGS_SETUP_TOOLCHAIN_CONTROL],
@@ -370,9 +383,6 @@ AC_DEFUN_ONCE([FLAGS_POST_TOOLCHAIN],
BUILD_SYSROOT_LDFLAGS="$SYSROOT_LDFLAGS"
fi
fi
AC_SUBST(BUILD_SYSROOT_CFLAGS)
AC_SUBST(BUILD_SYSROOT_LDFLAGS)
])
AC_DEFUN([FLAGS_SETUP_FLAGS],

View File

@@ -25,7 +25,7 @@
AC_DEFUN_ONCE([HELP_SETUP_DEPENDENCY_HELP],
[
AC_CHECK_PROGS(PKGHANDLER, zypper apt-get yum brew port pkgutil pkgadd)
UTIL_LOOKUP_PROGS(PKGHANDLER, zypper apt-get yum brew port pkgutil pkgadd pacman)
])
AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
@@ -38,8 +38,6 @@ AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
HELP_MSG="OpenJDK distributions are available at http://jdk.java.net/."
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
cygwin_help $MISSING_DEPENDENCY
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
msys_help $MISSING_DEPENDENCY
else
PKGHANDLER_COMMAND=
@@ -58,6 +56,8 @@ AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
pkgadd_help $MISSING_DEPENDENCY ;;
zypper)
zypper_help $MISSING_DEPENDENCY ;;
pacman)
pacman_help $MISSING_DEPENDENCY ;;
esac
if test "x$PKGHANDLER_COMMAND" != x; then
@@ -83,10 +83,6 @@ cygwin_help() {
esac
}
msys_help() {
PKGHANDLER_COMMAND=""
}
apt_help() {
case $1 in
reduced)
@@ -165,6 +161,17 @@ brew_help() {
esac
}
pacman_help() {
case $1 in
unzip)
PKGHANDLER_COMMAND="sudo pacman -S unzip" ;;
zip)
PKGHANDLER_COMMAND="sudo pacman -S zip" ;;
make)
PKGHANDLER_COMMAND="sudo pacman -S make" ;;
esac
}
port_help() {
PKGHANDLER_COMMAND=""
}
@@ -238,6 +245,7 @@ AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS],
printf "\n"
printf "Configuration summary:\n"
printf "* Name: $CONF_NAME\n"
printf "* Debug level: $DEBUG_LEVEL\n"
printf "* HS debug level: $HOTSPOT_DEBUG_LEVEL\n"
printf "* JVM variants: $JVM_VARIANTS\n"
@@ -256,16 +264,13 @@ AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS],
printf "\n"
printf "Tools summary:\n"
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
printf "* Environment: $WINDOWS_ENV_VENDOR version $WINDOWS_ENV_VERSION. Windows version $WINDOWS_VERSION"
if test "x$WINDOWS_ENV_ROOT_PATH" != "x"; then
printf ". Root at $WINDOWS_ENV_ROOT_PATH"
fi
printf "\n"
printf "* Environment: %s version %s; windows version %s; prefix \"%s\"; root \"%s\"\n" \
"$WINENV_VENDOR" "$WINENV_VERSION" "$WINDOWS_VERSION" "$WINENV_PREFIX" "$WINENV_ROOT"
fi
printf "* Boot JDK: $BOOT_JDK_VERSION (at $BOOT_JDK)\n"
printf "* Toolchain: $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION)\n"
printf "* C Compiler: Version $CC_VERSION_NUMBER (at $CC)\n"
printf "* C++ Compiler: Version $CXX_VERSION_NUMBER (at $CXX)\n"
printf "* C Compiler: Version $CC_VERSION_NUMBER (at ${CC#"$FIXPATH "})\n"
printf "* C++ Compiler: Version $CXX_VERSION_NUMBER (at ${CXX#"$FIXPATH "})\n"
printf "\n"
printf "Build performance summary:\n"

View File

@@ -228,23 +228,6 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
])
###############################################################################
#
# Enable or disable the elliptic curve crypto implementation
#
AC_DEFUN_ONCE([JDKOPT_DETECT_INTREE_EC],
[
AC_MSG_CHECKING([if elliptic curve crypto implementation is present])
if test -d "${TOPDIR}/src/jdk.crypto.ec/share/native/libsunec/impl"; then
ENABLE_INTREE_EC=true
AC_MSG_RESULT([yes])
else
ENABLE_INTREE_EC=false
AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_INTREE_EC)
])
AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
[
@@ -405,9 +388,9 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_CODE_COVERAGE],
UTIL_FIXUP_PATH(JCOV_HOME)
if test "x$with_jcov_input_jdk" != "x" ; then
JCOV_INPUT_JDK="$with_jcov_input_jdk"
if test ! -f "$JCOV_INPUT_JDK/bin/java$EXE_SUFFIX"; then
if test ! -f "$JCOV_INPUT_JDK/bin/java" && test ! -f "$JCOV_INPUT_JDK/bin/java.exe"; then
AC_MSG_RESULT([fail])
AC_MSG_ERROR([Invalid JDK bundle: "$JCOV_INPUT_JDK/bin/java$EXE_SUFFIX" does not exist])
AC_MSG_ERROR([Invalid JDK bundle: "$JCOV_INPUT_JDK/bin/java" does not exist])
fi
UTIL_FIXUP_PATH(JCOV_INPUT_JDK)
fi
@@ -440,7 +423,10 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_ADDRESS_SANITIZER],
fi
],
IF_ENABLED: [
ASAN_CFLAGS="-fsanitize=address -fno-omit-frame-pointer"
# ASan is simply incompatible with gcc -Wstringop-truncation. See
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85650
# It's harmless to be suppressed in clang as well.
ASAN_CFLAGS="-fsanitize=address -Wno-stringop-truncation -fno-omit-frame-pointer"
ASAN_LDFLAGS="-fsanitize=address"
JVM_CFLAGS="$JVM_CFLAGS $ASAN_CFLAGS"
JVM_LDFLAGS="$JVM_LDFLAGS $ASAN_LDFLAGS"
@@ -654,7 +640,7 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
SOURCE_DATE=$($DATE +"%s")
AC_MSG_RESULT([$SOURCE_DATE, from 'current'])
elif test "x$with_source_date" = xversion; then
# Use the date from version-numbers
# Use the date from version-numbers.conf
UTIL_GET_EPOCH_TIMESTAMP(SOURCE_DATE, $DEFAULT_VERSION_DATE)
if test "x$SOURCE_DATE" = x; then
AC_MSG_RESULT([unavailable])
@@ -678,10 +664,27 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
fi
fi
UTIL_ARG_ENABLE(NAME: reproducible-build, DEFAULT: $with_source_date_present,
REPRODUCIBLE_BUILD_DEFAULT=$with_source_date_present
if test "x$OPENJDK_BUILD_OS" = xwindows && \
test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = xfalse; then
# To support banning absolute paths on Windows, we must use the -pathmap
# method, which requires reproducible builds.
REPRODUCIBLE_BUILD_DEFAULT=true
fi
UTIL_ARG_ENABLE(NAME: reproducible-build, DEFAULT: $REPRODUCIBLE_BUILD_DEFAULT,
RESULT: ENABLE_REPRODUCIBLE_BUILD,
DESC: [enable reproducible builds (not yet fully functional)],
DEFAULT_DESC: [enabled if --with-source-date is given])
DEFAULT_DESC: [enabled if --with-source-date is given or on Windows without absolute paths])
if test "x$OPENJDK_BUILD_OS" = xwindows && \
test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = xfalse && \
test "x$ENABLE_REPRODUCIBLE_BUILD" = xfalse; then
AC_MSG_NOTICE([On Windows it is not possible to combine --disable-reproducible-builds])
AC_MSG_NOTICE([with --disable-absolute-paths-in-output.])
AC_MSG_ERROR([Cannot continue])
fi
AC_SUBST(SOURCE_DATE)
AC_SUBST(ENABLE_REPRODUCIBLE_BUILD)

View File

@@ -58,7 +58,9 @@ AC_DEFUN([JDKVER_CHECK_AND_SET_NUMBER],
AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
[
# Source the version numbers file
. $AUTOCONF_DIR/version-numbers
. $TOPDIR/make/conf/version-numbers.conf
# Source the branding file
. $TOPDIR/make/conf/branding.conf
# Some non-version number information is set in that file
AC_SUBST(LAUNCHER_NAME)
@@ -79,7 +81,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
# Set JDK_RC_NAME to a custom value if '--with-jdk-rc-name' was used and is not empty.
JDK_RC_NAME="$with_jdk_rc_name"
else
# Otherwise calculate from "version-numbers" included above.
# Otherwise calculate from "branding.conf" included above.
JDK_RC_NAME="$PRODUCT_NAME $JDK_RC_PLATFORM_NAME"
fi
AC_SUBST(JDK_RC_NAME)
@@ -94,7 +96,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-name contains non-printing characters: $with_vendor_name])
elif test "x$with_vendor_name" != x; then
# Only set COMPANY_NAME if '--with-vendor-name' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
# Otherwise we will use the value from "branding.conf" included above.
COMPANY_NAME="$with_vendor_name"
fi
AC_SUBST(COMPANY_NAME)
@@ -108,7 +110,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-url contains non-printing characters: $with_vendor_url])
elif test "x$with_vendor_url" != x; then
# Only set VENDOR_URL if '--with-vendor-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
# Otherwise we will use the value from "branding.conf" included above.
VENDOR_URL="$with_vendor_url"
fi
AC_SUBST(VENDOR_URL)
@@ -122,7 +124,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-bug-url contains non-printing characters: $with_vendor_bug_url])
elif test "x$with_vendor_bug_url" != x; then
# Only set VENDOR_URL_BUG if '--with-vendor-bug-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
# Otherwise we will use the value from "branding.conf" included above.
VENDOR_URL_BUG="$with_vendor_bug_url"
fi
AC_SUBST(VENDOR_URL_BUG)
@@ -136,7 +138,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-vm-bug-url contains non-printing characters: $with_vendor_vm_bug_url])
elif test "x$with_vendor_vm_bug_url" != x; then
# Only set VENDOR_URL_VM_BUG if '--with-vendor-vm-bug-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
# Otherwise we will use the value from "branding.conf" included above.
VENDOR_URL_VM_BUG="$with_vendor_vm_bug_url"
fi
AC_SUBST(VENDOR_URL_VM_BUG)
@@ -280,7 +282,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
fi
else
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then
# Default is to get value from version-numbers
# Default is to get value from version-numbers.conf
VERSION_FEATURE="$DEFAULT_VERSION_FEATURE"
fi
fi

View File

@@ -159,7 +159,7 @@ AC_DEFUN_ONCE([JVM_FEATURES_PARSE_OPTIONS],
# Likewise, check for deprecated arguments.
m4_foreach(FEATURE, m4_split(jvm_features_deprecated), [
AC_ARG_ENABLE(jvm-feature-FEATURE, AS_HELP_STRING(
[--enable-jvm-feature-FEATURE],
[--enable-jvm-feature-FEATURE],
[Deprecated. Option is kept for backwards compatibility and is ignored]))
m4_define(FEATURE_SHELL, [enable_jvm_feature_]m4_translit(FEATURE, -, _))
@@ -237,8 +237,9 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_AOT],
JVM_FEATURES_CHECK_AVAILABILITY(aot, [
AC_MSG_CHECKING([if platform is supported by AOT])
# AOT is only available where JVMCI is available since it requires JVMCI.
if test "x$OPENJDK_TARGET_CPU" = "xx86_64" || \
test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" = "xlinux-aarch64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
@@ -303,8 +304,9 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_GRAAL],
JVM_FEATURES_CHECK_AVAILABILITY(graal, [
AC_MSG_CHECKING([if platform is supported by Graal])
# Graal is only available where JVMCI is available since it requires JVMCI.
if test "x$OPENJDK_TARGET_CPU" = "xx86_64" || \
test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
@@ -336,8 +338,9 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_JVMCI],
[
JVM_FEATURES_CHECK_AVAILABILITY(jvmci, [
AC_MSG_CHECKING([if platform is supported by JVMCI])
if test "x$OPENJDK_TARGET_CPU" = "xx86_64" || \
test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
@@ -395,8 +398,14 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
elif test "x$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" = "xlinux-aarch64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
if test "x$OPENJDK_TARGET_OS" = "xlinux" || \
test "x$OPENJDK_TARGET_OS" = "xwindows"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
@@ -467,7 +476,7 @@ AC_DEFUN([JVM_FEATURES_PREPARE_VARIANT],
JVM_FEATURES_VARIANT_UNAVAILABLE="cds minimal zero"
elif test "x$variant" = "xzero"; then
JVM_FEATURES_VARIANT_UNAVAILABLE="aot cds compiler1 compiler2 \
epsilongc g1gc graal jvmci minimal shenandoahgc zgc"
graal jvmci minimal zgc"
else
JVM_FEATURES_VARIANT_UNAVAILABLE="minimal zero"
fi

View File

@@ -43,9 +43,11 @@ AC_DEFUN_ONCE([LIB_DETERMINE_DEPENDENCIES],
if test "x$OPENJDK_TARGET_OS" = xwindows || test "x$OPENJDK_TARGET_OS" = xmacosx; then
# No X11 support on windows or macosx
NEEDS_LIB_X11=false
elif test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
# No X11 support needed when building headless only
NEEDS_LIB_X11=false
else
# All other instances need X11, even if building headless only, libawt still
# needs X11 headers.
# All other instances need X11
NEEDS_LIB_X11=true
fi
@@ -122,6 +124,20 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lpthread"
fi
# Atomic library
# 32-bit platforms needs fallback library for 8-byte atomic ops on Zero
if HOTSPOT_CHECK_JVM_VARIANT(zero); then
if test "x$OPENJDK_TARGET_OS" = xlinux &&
(test "x$OPENJDK_TARGET_CPU" = xarm ||
test "x$OPENJDK_TARGET_CPU" = xm68k ||
test "x$OPENJDK_TARGET_CPU" = xmips ||
test "x$OPENJDK_TARGET_CPU" = xmipsel ||
test "x$OPENJDK_TARGET_CPU" = xppc ||
test "x$OPENJDK_TARGET_CPU" = xsh); then
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -latomic"
fi
fi
# perfstat lib
if test "x$OPENJDK_TARGET_OS" = xaix; then
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lperfstat"

View File

@@ -206,9 +206,9 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS],
VAR_OS=windows
VAR_OS_ENV=windows.wsl
;;
*mingw*)
*msys*)
VAR_OS=windows
VAR_OS_ENV=windows.msys
VAR_OS_ENV=windows.msys2
;;
*aix*)
VAR_OS=aix
@@ -220,6 +220,24 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS],
esac
])
# Support macro for PLATFORM_EXTRACT_TARGET_AND_BUILD.
# Converts autoconf style OS name to OpenJDK style, into
# VAR_LIBC.
AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_LIBC],
[
case "$1" in
*linux*-musl)
VAR_LIBC=musl
;;
*linux*-gnu)
VAR_LIBC=gnu
;;
*)
VAR_LIBC=default
;;
esac
])
# Expects $host_os $host_cpu $build_os and $build_cpu
# and $with_target_bits to have been setup!
#
@@ -237,9 +255,10 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
AC_SUBST(OPENJDK_TARGET_AUTOCONF_NAME)
AC_SUBST(OPENJDK_BUILD_AUTOCONF_NAME)
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU/LIBC variables.
PLATFORM_EXTRACT_VARS_FROM_OS($build_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($build_cpu)
PLATFORM_EXTRACT_VARS_FROM_LIBC($build_os)
# ..and setup our own variables. (Do this explicitly to facilitate searching)
OPENJDK_BUILD_OS="$VAR_OS"
if test "x$VAR_OS_TYPE" != x; then
@@ -256,6 +275,7 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
OPENJDK_BUILD_CPU_ARCH="$VAR_CPU_ARCH"
OPENJDK_BUILD_CPU_BITS="$VAR_CPU_BITS"
OPENJDK_BUILD_CPU_ENDIAN="$VAR_CPU_ENDIAN"
OPENJDK_BUILD_LIBC="$VAR_LIBC"
AC_SUBST(OPENJDK_BUILD_OS)
AC_SUBST(OPENJDK_BUILD_OS_TYPE)
AC_SUBST(OPENJDK_BUILD_OS_ENV)
@@ -263,13 +283,20 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
AC_SUBST(OPENJDK_BUILD_CPU_ARCH)
AC_SUBST(OPENJDK_BUILD_CPU_BITS)
AC_SUBST(OPENJDK_BUILD_CPU_ENDIAN)
AC_SUBST(OPENJDK_BUILD_LIBC)
AC_MSG_CHECKING([openjdk-build os-cpu])
AC_MSG_RESULT([$OPENJDK_BUILD_OS-$OPENJDK_BUILD_CPU])
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
if test "x$OPENJDK_BUILD_OS" = "xlinux"; then
AC_MSG_CHECKING([openjdk-build C library])
AC_MSG_RESULT([$OPENJDK_BUILD_LIBC])
fi
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU/LIBC variables.
PLATFORM_EXTRACT_VARS_FROM_OS($host_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($host_cpu)
PLATFORM_EXTRACT_VARS_FROM_LIBC($host_os)
# ... and setup our own variables. (Do this explicitly to facilitate searching)
OPENJDK_TARGET_OS="$VAR_OS"
if test "x$VAR_OS_TYPE" != x; then
@@ -287,6 +314,7 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
OPENJDK_TARGET_CPU_BITS="$VAR_CPU_BITS"
OPENJDK_TARGET_CPU_ENDIAN="$VAR_CPU_ENDIAN"
OPENJDK_TARGET_OS_UPPERCASE=`$ECHO $OPENJDK_TARGET_OS | $TR 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
OPENJDK_TARGET_LIBC="$VAR_LIBC"
AC_SUBST(OPENJDK_TARGET_OS)
AC_SUBST(OPENJDK_TARGET_OS_TYPE)
@@ -296,9 +324,15 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
AC_SUBST(OPENJDK_TARGET_CPU_ARCH)
AC_SUBST(OPENJDK_TARGET_CPU_BITS)
AC_SUBST(OPENJDK_TARGET_CPU_ENDIAN)
AC_SUBST(OPENJDK_TARGET_LIBC)
AC_MSG_CHECKING([openjdk-target os-cpu])
AC_MSG_RESULT([$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
if test "x$OPENJDK_TARGET_OS" = "xlinux"; then
AC_MSG_CHECKING([openjdk-target C library])
AC_MSG_RESULT([$OPENJDK_TARGET_LIBC])
fi
])
# Check if a reduced build (32-bit on 64-bit platforms) is requested, and modify behaviour
@@ -420,7 +454,13 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
else
OPENJDK_$1_CPU_BUNDLE="$OPENJDK_$1_CPU"
fi
OPENJDK_$1_BUNDLE_PLATFORM="${OPENJDK_$1_OS_BUNDLE}-${OPENJDK_$1_CPU_BUNDLE}"
OPENJDK_$1_LIBC_BUNDLE=""
if test "x$OPENJDK_$1_LIBC" = "xmusl"; then
OPENJDK_$1_LIBC_BUNDLE="-$OPENJDK_$1_LIBC"
fi
OPENJDK_$1_BUNDLE_PLATFORM="${OPENJDK_$1_OS_BUNDLE}-${OPENJDK_$1_CPU_BUNDLE}${OPENJDK_$1_LIBC_BUNDLE}"
AC_SUBST(OPENJDK_$1_BUNDLE_PLATFORM)
if test "x$COMPILE_TYPE" = "xcross"; then
@@ -493,6 +533,9 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
fi
AC_SUBST(HOTSPOT_$1_CPU_DEFINE)
HOTSPOT_$1_LIBC=$OPENJDK_$1_LIBC
AC_SUBST(HOTSPOT_$1_LIBC)
# For historical reasons, the OS include directories have odd names.
OPENJDK_$1_OS_INCLUDE_SUBDIR="$OPENJDK_TARGET_OS"
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
@@ -518,9 +561,11 @@ AC_DEFUN([PLATFORM_SET_RELEASE_FILE_OS_VALUES],
RELEASE_FILE_OS_NAME="AIX"
fi
RELEASE_FILE_OS_ARCH=${OPENJDK_TARGET_CPU}
RELEASE_FILE_LIBC=${OPENJDK_TARGET_LIBC}
AC_SUBST(RELEASE_FILE_OS_NAME)
AC_SUBST(RELEASE_FILE_OS_ARCH)
AC_SUBST(RELEASE_FILE_LIBC)
])
AC_DEFUN([PLATFORM_SET_MODULE_TARGET_OS_VALUES],

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, 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
@@ -28,9 +28,6 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_DIRS],
OUTPUTDIR="$OUTPUTDIR"
AC_SUBST(OUTPUTDIR)
JDK_OUTPUTDIR="$OUTPUTDIR/jdk"
# Where are the sources.
AC_SUBST(TOPDIR)
])
################################################################################

Some files were not shown because too many files have changed in this diff Show More