Compare commits

...

1389 Commits

Author SHA1 Message Date
Nikita Gubarkov
fd009fe88e Enumerate and filter physical devices, create a logical device. Corrections. 2023-04-05 20:32:21 +03:00
Nikita Gubarkov
738f762d3e Enumerate and filter physical devices, create a logical device. 2023-03-31 19:55:13 +03:00
Nikita Gubarkov
ef9172f50e Remove bundled Vulkan headers, use stubs when Vulkan is disabled. Corrections. 2023-03-31 12:17:36 +03:00
Nikita Gubarkov
ed8a7ad702 Remove bundled Vulkan headers, use stubs when Vulkan is disabled. 2023-03-30 21:53:47 +03:00
Alexey Ushakov
6238545ead Vulkan sdk support in configure. Corrections 2023-03-17 21:30:47 +01:00
Alexey Ushakov
9bda49c60c Vulkan sdk support in configure 2023-03-16 21:13:22 +01:00
Nikita Gubarkov
a8cdbbfb8d Added debug messenger. 2023-03-16 22:10:10 +02:00
Nikita Gubarkov
2d7c8037fa Decoupled Vulkan from Wayland.
Extracted protocol-independent logic into "share".
2023-03-16 20:57:18 +02:00
Nikita Gubarkov
b51d9559b0 Forgot to stage vk_video headers. 2023-03-16 18:10:04 +02:00
Nikita Gubarkov
f410ae50af Imported Vulkan headers, started using Vulkan-Hpp. 2023-03-16 18:05:38 +02:00
Alexey Ushakov
7ebdeb734b Added detection of Vulkan support. Corrections. 2023-03-16 11:21:15 +01:00
Alexey Ushakov
f7821f8d45 Added detection of Vulkan support 2023-03-15 19:29:22 +01:00
Maxim Kartashev
28a609691a Implemented GraphicsEnvironment and Device, HiDPI (scaling) support 2022-12-13 10:06:03 +03:00
Maxim Kartashev
2f47290c19 Dialog and window menu support 2022-11-28 10:57:38 +03:00
Maxim Kartashev
ba1c4a464d dlopen version 0 of xkbcommon if non-versioned file is missing 2022-11-23 13:19:15 +03:00
Dmitry Batrak
466f1dd0fd generate correct mouse events after click in window resize area 2022-11-23 11:17:30 +03:00
Dmitry Batrak
fd37168007 set cursor on pointer enter event, as per Wayland API requirement
in the initial implementation cursor was only updated on pointer move events
2022-11-18 19:51:17 +03:00
Dmitry Batrak
607dcb78a8 support setting mouse cursors 2022-11-18 14:22:21 +03:00
Maxim Kartashev
f9f5359629 Prevent deadlock when scrolling
SurfaceData need to be able to be locked twice during scrolling,
but the associated mutex wasn't recursive, which led to a deadlock.
2022-11-16 17:22:24 +03:00
Maxim Kartashev
6b19a747f7 Basic support for VolatileImage
The image is actually a non-volatile software implementation.
2022-11-15 11:52:49 +03:00
Maxim Kartashev
7d7d9f9bf5 Prevent race condition when destroying buffer manager
Also implemented AWT_LOCK() family of macros
2022-11-15 11:52:23 +03:00
Dmitry Batrak
66c28a3606 prevent crashes on concurrent access to AWT API 2022-11-14 19:12:31 +03:00
Maxim Kartashev
e2321b5594 Implemented getColorModel() and createAcceleratedImage()
This is enough to make J2Ddemo and StylePad work
2022-11-11 12:04:24 +03:00
Dmitry Batrak
5813b10e65 maximize/un-maximize improvements
* remove 'roundtrip' calls - they don't seem to be needed after recent changes to paint logic
* remove unneeded lock in WLFramePeer.setState - corresponding code doesn't query or modify any state
* always repaint client decorations on frame state change - it might not be accompanied by size change
* remember the size of frame before maximization, use it on de-maximization, if compositor doesn't propose a size itself
2022-11-09 16:18:28 +03:00
Maxim Kartashev
d121a93cb1 JBR-4918 More bugfixes in Wayland buffers management
Event-driven painting of client decorations.
Smooth window resize.
Transactional commits at AWT and Swing level
based on frame numbers.
2022-11-08 08:40:18 +03:00
Dmitry Batrak
f7638abee2 initialize memory allocated for WLFrame
just in case, to prevent potential usage of uninitialized fields in future
2022-11-02 12:41:08 +03:00
Dmitry Batrak
55b1310c24 support setting state to a window before making it visible, and right afterwards 2022-10-31 12:23:16 +03:00
Maxim Kartashev
bfe03f4bd1 Revert "JBR-4918 More bugfixes in Wayland buffers management"
This reverts commit 15a09a1564.
2022-10-28 13:20:27 +03:00
Maxim Kartashev
15a09a1564 JBR-4918 More bugfixes in Wayland buffers management
Event-driven painting of client decorations.
Smooth window resize.
Transactional commits at AWT and Swing level
based on frame numbers.
2022-10-28 11:28:57 +03:00
Dmitry Batrak
858380c36d fix assertion in WLKeyboardFocusManagerPeer 2022-10-21 18:34:02 +03:00
Dmitry Batrak
a81b44d79d client-side decorations, and some fixes for minimize/maximize window functionality 2022-10-21 16:46:36 +03:00
Dmitry Batrak
7f9aee3c7f make default component focused on frame activation 2022-10-21 12:05:01 +03:00
Maxim Kartashev
0478a24483 JBR-4918 Additional bugfixes in Wayland buffers management 2022-10-21 09:48:51 +03:00
Maxim Kartashev
c113772448 JBR-4865 Support xdg-shell functions
Implemented maximize/fullscreen together with the reverse functions.
2022-10-19 11:24:08 +03:00
Maxim Kartashev
757194800f JBR-4918 Implement support for window size change 2022-10-18 11:07:01 +03:00
Maxim Kartashev
b9c4ac35ec JBR-4865 Support xdg-shell functions 2022-10-18 11:06:57 +03:00
Dmitry Batrak
adf8d95f7b simplify Wayland events dispatching, fix known issues 2022-10-13 10:23:03 +03:00
Maxim Kartashev
b2986aef46 JBR-4621 Implemented key repeat 2022-10-12 14:23:09 +03:00
Maxim Kartashev
cea81933d9 JBR-4621 Input events support for Wayland
This includes basic mouse and keyboard support.
2022-10-12 14:23:09 +03:00
Maxim Kartashev
6779e2c59b Let WLToolkit work with DISPLAY unset 2022-10-12 14:23:06 +03:00
Alexey Ushakov
4b7c5f62a9 Improved sun.awt.wl.WLGraphicsEnvironment to support createCraphics() 2022-10-12 14:22:34 +03:00
Maxim Kartashev
df204bb882 Added libwakefield source code to the tree
It is not integrated into the build infrastructure both for simplicity
and to avoid otherwise unnecessary dependencies on weston, pixman, etc.

Also fixed copyrights in the recently added files, including the
auto-generated ones.
2022-10-12 14:22:34 +03:00
Maxim Kartashev
0d7fdcf415 Made it possible for Wayland tests to run in parallel
Also fixed a potential crash in getLocationOnScreen().
2022-10-12 14:22:34 +03:00
Maxim Kartashev
73c8c50262 Wayland test harness and sample test 2022-10-12 14:22:34 +03:00
Maxim Kartashev
16cacd0b55 AWT Robot to support Wayland natively
Requires the presence of the 'wakefield' protocol extension on the
server side; will throw UOE on use otherwise. Can be completely
disabled by undefining WAKEFIELD_ROBOT during compilation.

Provides the ability to re-position the surface to the given absolute
coordinates, query the surface's position, obtain RGB of a pixel at the
given absolute coordinates and take a screenshot of an area.
2022-10-12 14:22:34 +03:00
Nikita Gubarkov
19496fcef9 Suppress unused-result warning for libfontmanager 2022-10-12 14:22:34 +03:00
nikita.gubarkov
9cb4769361 Text rendering support
Extracted X11-related code from libfontmanager into libfontmanager_xawt
2022-10-12 14:22:33 +03:00
Maxim Kartashev
dc36d0afaf Reduced xdg_wm_base protocol version to 1 in order to run under Weston
This was done purely for convenience. The version can be bumped back up
at any time, but the change will require a more recent version
of Weston for testing.
2022-10-12 14:22:33 +03:00
Alexey Ushakov
20ca5a41f4 Added JFrame support 2022-10-12 14:22:33 +03:00
Alexey Ushakov
e864ea8469 Fixed child hw component position 2022-10-12 14:22:33 +03:00
Alexey Ushakov
b3e31866ec Implemented heavyweight button rendering 2022-10-12 14:22:33 +03:00
Alexey Ushakov
4cdce4b44a Moved native window management to WLComponentPeer 2022-10-12 14:22:33 +03:00
Alexey Ushakov
2187957e7e Added WLRepaintArea 2022-10-12 14:22:33 +03:00
Alexey Ushakov
14aa544c86 Refactored peers 2022-10-12 14:22:32 +03:00
Alexey Ushakov
de5214531a Added stubs for WLTK button peer 2022-10-12 14:22:32 +03:00
Alexey Ushakov
ea6f74d64f Added 2d surface support 2022-10-12 14:22:32 +03:00
Alexey Ushakov
56e174709b Added support for background color. Refactoring 2022-10-12 14:22:32 +03:00
Alexey Ushakov
c5103ff4a8 Make simple awt window visible 2022-10-12 14:22:32 +03:00
Dmitry Batrak
49c103709e window showing and event loop prototype 2022-10-12 14:22:32 +03:00
Dmitry Batrak
4b21d041d8 more stubbing for WLToolkit, add WLFramePeer 2022-10-12 14:22:31 +03:00
Dmitry Batrak
c1ee18adfb more stubbing for WLToolkit 2022-10-12 14:22:31 +03:00
Alexey Ushakov
693e16b0a1 Created stub version of WLToolkit
A wayland base toolkit with native part linked to wayland-client library
2022-10-12 14:22:28 +03:00
Kim Barrett
5ad126f446 8295012: Arena should not derive from CHeapObj<mtNone>
Reviewed-by: stefank, dholmes
2022-10-12 01:55:58 +00:00
Xiaohong Gong
ab8c1361bc 8292898: [vectorapi] Unify vector mask cast operation
Co-authored-by: Quan Anh Mai <qamai@openjdk.org>
Reviewed-by: jbhateja, eliu
2022-10-12 01:39:57 +00:00
Jatin Bhateja
2ceb80c60f 8288043: Optimize FP to word/sub-word integral type conversion on X86 AVX2 platforms
Reviewed-by: kvn, sviswanathan
2022-10-12 01:05:44 +00:00
Quan Anh Mai
703a6ef591 8283699: Improve the peephole mechanism of hotspot
Reviewed-by: kvn, dlong
2022-10-12 00:31:04 +00:00
Kim Barrett
94a9b048af 8295013: OopStorage should derive from CHeapObjBase
Reviewed-by: stefank, tschatzl
2022-10-11 23:17:31 +00:00
Pavel Rappo
3a980b972f 8295168: Remove superfluous period in @throws tag description
Reviewed-by: bpb, naoto, lancea, iris
2022-10-11 19:44:54 +00:00
Pavel Rappo
9bb932ce30 8295154: Documentation for RemoteExecutionControl.invoke(Method) inherits non-existent documentation
Reviewed-by: jjg
2022-10-11 19:35:18 +00:00
Martin Doerr
945950d863 8295069: [PPC64] Performance regression after JDK-8290025
Reviewed-by: rrich, lucy
2022-10-11 19:19:41 +00:00
Chris Plummer
d362e16924 8294689: The SA transported_core.html file needs quite a bit of work
Reviewed-by: kevinw, poonam, sspitsyn
2022-10-11 18:01:18 +00:00
Smita Kamath
07946aa49c 8289552: Make intrinsic conversions between bit representations of half precision values and floats
Reviewed-by: kvn, sviswanathan, jbhateja
2022-10-11 17:06:19 +00:00
Raffaello Giulietti
2586b1a3c1 8295155: Incorrect javadoc of java.base module
Reviewed-by: alanb, rriggs, bpb, iris, jvernee
2022-10-11 16:58:36 +00:00
Magnus Ihse Bursie
e1a77cfd5f 8295163: Remove old hsdis Makefile
Reviewed-by: shade, iris
2022-10-11 16:35:55 +00:00
Xue-Lei Andrew Fan
3c7ae1225f 8294821: Class load improvement for AES crypto engine
Reviewed-by: valeriep
2022-10-11 16:23:02 +00:00
Markus Karg
619cd825b5 8294702: BufferedInputStream uses undefined value range for markpos
Reviewed-by: alanb, bpb
2022-10-11 16:07:31 +00:00
Abhishek Kumar
9d0009e92b 6777156: GTK L&F: JFileChooser can jump beyond root directory in combobox and selection textarea.
Reviewed-by: jdv, tr, psadhukhan
2022-10-11 12:55:59 +00:00
Aleksey Shipilev
3ebe5ad2d7 8294751: Zero: Allow larger default heaps
Reviewed-by: iklam, rkennke
2022-10-11 12:30:58 +00:00
Tejesh R
33d0618813 6616245: NullPointerException when using JFileChooser with a custom FileView
Reviewed-by: aivanov
2022-10-11 11:11:49 +00:00
Erik Gahlin
fba763f825 8291519: jdk/jfr/api/event/TestShouldCommit.java failed with Unexpected value of shouldCommit()
Reviewed-by: mgronlun
2022-10-11 10:06:17 +00:00
Tongbao Zhang
6053bf0f6a 8293782: Shenandoah: some tests failed on lock rank check
Reviewed-by: mdoerr, shade
2022-10-11 10:04:30 +00:00
KIRIYAMA Takuya
4435d56d3f 8282395: URL.openConnection can throw IOOBE
Reviewed-by: dfuchs
2022-10-11 09:22:33 +00:00
Daniel Jeliński
fe70487d0b 8294958: java/net/httpclient/ConnectTimeout tests are slow
Reviewed-by: dfuchs, aefimov
2022-10-11 08:50:01 +00:00
Roberto Castañeda Lozano
97f1321cb4 8294356: IGV: scheduled graphs contain duplicated elements
Reviewed-by: chagedorn, thartmann
2022-10-11 07:13:00 +00:00
Matthias Baesken
5e05e421ed 8294901: remove pre-VS2017 checks in Windows related coding
Reviewed-by: dholmes, mdoerr, kbarrett
2022-10-11 07:11:59 +00:00
Andrey Turbanov
e775acf889 8293986: Incorrect double-checked locking in com.sun.beans.introspect.ClassInfo
Reviewed-by: serb
2022-10-11 05:59:16 +00:00
Eric Liu
9d116ec147 8294262: AArch64: compiler/vectorapi/TestReverseByteTransforms.java test failed on SVE machine
Reviewed-by: aph, njian
2022-10-11 01:37:20 +00:00
Ningsheng Jian
4b17d28a6d 8294261: AArch64: Use pReg instead of pRegGov when possible
Reviewed-by: ngasson, xgong
2022-10-11 01:06:28 +00:00
Sergey Bylokhov
891156a744 8295003: Do not mention applets in the "java.awt.color" package
Reviewed-by: aivanov, prr
2022-10-11 00:40:34 +00:00
Kim Barrett
e6c33e62b5 8295014: Remove unnecessary explicit casts to void* in CHeapObjBase
Reviewed-by: jsjolen, dholmes, stefank
2022-10-11 00:17:36 +00:00
Erik Gahlin
1bfcc2790a 8294931: JFR: Simplify SettingInfo
Reviewed-by: mgronlun
2022-10-10 17:56:34 +00:00
Pavel Rappo
eb90c4fc04 8294377: Prepare to stop auto-inheriting documentation for subclasses of exceptions whose documentation is inherited
Reviewed-by: jjg
2022-10-10 16:54:57 +00:00
Markus Grönlund
4df4a1f8e2 8287832: jdk/jfr/event/runtime/TestActiveSettingEvent.java failed with "Expected two batches of Active Setting events"
Reviewed-by: egahlin
2022-10-10 12:40:58 +00:00
Markus Grönlund
35d17a00ab 8293864: Kitchensink24HStress.java fails with SIGSEGV in JfrCheckpointManager::lease
Reviewed-by: egahlin
2022-10-10 12:39:10 +00:00
Aleksey Shipilev
c5f462e83b 8294956: GHA: qemu-debootstrap is deprecated, use the regular one
Reviewed-by: erikj
2022-10-10 12:19:46 +00:00
Prasanta Sadhukhan
269252aa3d 8295007: javax/swing/JRadioButton/4314194/bug4314194.java fails in mach5 for WIndowLookAndFeel
Reviewed-by: aivanov, tr
2022-10-10 11:51:21 +00:00
Jie Fu
6ed74ef654 8295005: compiler/loopopts/TestRemoveEmptyLoop.java fails with release VMs after JDK-8294839
Reviewed-by: chagedorn, epeter
2022-10-10 07:06:51 +00:00
Daniel Jeliński
8a148bc960 8294848: Unnecessary SSLCipher dispose implementations
Reviewed-by: xuelei, valeriep, wetmore
2022-10-10 07:02:27 +00:00
Markus Karg
8713dfa64e 8294541: java/io/BufferedInputStream/TransferTo.java fails with OOME
Reviewed-by: alanb
2022-10-09 13:55:27 +00:00
Xiaolin Zheng
542cc602a7 8294366: RISC-V: Partially mark out incompressible regions
Reviewed-by: fyang, yadongwang
2022-10-08 06:41:45 +00:00
Alex Menkov
495c043533 7124710: interleaved RedefineClasses() and RetransformClasses() calls may have a problem
Reviewed-by: sspitsyn, dcubed
2022-10-07 23:02:19 +00:00
Justin Lu
d39d8c856a 8170389: java.text.DigitList.getDouble() : Controversy between javadoc and code
Reviewed-by: naoto, lancea
2022-10-07 22:58:26 +00:00
Matias Saavedra Silva
3466e99934 8294691: dynamicArchive/RelativePath.java is running other test case
Reviewed-by: iklam, ccheung
2022-10-07 20:44:35 +00:00
Weijun Wang
823b53d895 8294987: Streamline DerOutputStream write
Reviewed-by: jnimeh, ascarpino
2022-10-07 20:34:08 +00:00
Chris Plummer
6a266c4de1 8292879: com/sun/jdi/ClassUnloadEventTest.java failed due to classes not unloading
Reviewed-by: dholmes, coleenp, sspitsyn
2022-10-07 19:11:19 +00:00
Aleksey Shipilev
fe7a4617fe 8294920: Missing SP value in Linux x86_32 thread context
Reviewed-by: cjplummer, sspitsyn
2022-10-07 18:23:16 +00:00
Brian Burkhalter
4cbac40de9 8294717: (bf) DirectByteBuffer constructor will leak if allocating Deallocator or Cleaner fails with OOME
Reviewed-by: alanb
2022-10-07 17:43:00 +00:00
Alex Menkov
c1166a304d 8289561: java/lang/instrument/NativeMethodPrefixAgent.java fails with "ERROR: Injection failure: java.lang.UnsupportedOperationException: Records requires ASM8"
Reviewed-by: lmesnik, cjplummer, sspitsyn
2022-10-07 17:13:30 +00:00
Aleksey Shipilev
a1747ef81a 8294941: GHA: Cut down cross-compilation sysroots
Reviewed-by: clanger, erikj
2022-10-07 17:11:07 +00:00
Darragh Clarke
67210abd04 8286394: Address possibly lossy conversions in jdk.naming.dns
Reviewed-by: rriggs, aefimov
2022-10-07 16:04:50 +00:00
Sacha Coppey
7a194d31a3 8290154: [JVMCI] partially implement JVMCI for RISC-V
Reviewed-by: ihse, dnsimon, yadongwang
2022-10-07 13:09:09 +00:00
Johan Sjölen
b38bed6d0e 8294308: Allow dynamically choosing the MEMFLAGS of a type without ResourceObj
Reviewed-by: coleenp, stefank, kbarrett
2022-10-07 11:06:57 +00:00
Albert Mingkun Yang
118d93b3dc 8294907: Remove unused NativeLookup::dll_load
Reviewed-by: dholmes
2022-10-07 08:55:12 +00:00
Alan Bateman
1fda8421b9 8291429: java/lang/Thread/virtual/ThreadAPI.java timed out on single core system
Reviewed-by: sspitsyn, cjplummer
2022-10-07 08:14:43 +00:00
Andrey Turbanov
2d25c0a31c 8292280: Unused field 'keyListener' in BasicRadioButtonUI
Reviewed-by: jdv, serb
2022-10-07 06:19:01 +00:00
Alan Bateman
0ad6803ac2 8293810: Remove granting of RuntimePermission("stopThread") from tests
Reviewed-by: dfuchs, mullan, mchung, chegar
2022-10-07 06:15:38 +00:00
Srikanth Adayapalam
cf84c8eaf2 8292975: javac produces code that crashes with LambdaConversionException
8269983: BootstrapMethodError with method reference and intersection type

Reviewed-by: dlsmith, vromero
2022-10-07 04:20:40 +00:00
Prasanta Sadhukhan
f3a44a4835 8075916: The regression-swing case failed as colored text is not shown on disabled checkbox and radio button with Nimbus LAF
Reviewed-by: tr, aivanov
2022-10-07 03:09:19 +00:00
Prasanta Sadhukhan
37bd4fbe30 6852577: Only for Nimbus LAF UIManager.get("PasswordField.echoChar") is null
Reviewed-by: tr, aivanov
2022-10-07 03:02:53 +00:00
Justin Lu
d4c9a88073 6560981: (cal) unused local variables in GregorianCalendar, etc.
Reviewed-by: naoto, bchristi, iris
2022-10-06 23:16:06 +00:00
Zhiqiang Zang
5dd851d872 8281453: New optimization: convert ~x into -1-x when ~x is used in an arithmetic expression
Reviewed-by: kvn
2022-10-06 22:15:20 +00:00
Mikael Vidstedt
85569e966c 8286037: Bump minimum boot jdk to JDK 19
Reviewed-by: ctornqvi, darcy, shade, erikj
2022-10-06 17:34:14 +00:00
Damon Nguyen
fef345b19f 8293672: Update freetype md file
Reviewed-by: prr
2022-10-06 16:07:47 +00:00
Martin Desruisseaux
5c030cccae 8290973: In AffineTransform, equals(Object) is inconsistent with hashCode()
Reviewed-by: prr
2022-10-06 16:03:36 +00:00
Matias Saavedra Silva
f888aa953c 8293061: Combine CDSOptions and AppCDSOptions test utility classes
Reviewed-by: dholmes, iklam, ccheung
2022-10-06 15:03:24 +00:00
Emanuel Peter
73f06468ae 8294839: Disable StressLongCountedLoop in compiler/loopopts/TestRemoveEmptyLoop.java
Reviewed-by: thartmann, chagedorn
2022-10-06 10:40:11 +00:00
Raffaello Giulietti
2ceebf681f 8294456: Fix misleading-indentation warnings in core JDK libraries
Reviewed-by: shade, rriggs, iris, darcy
2022-10-06 09:31:26 +00:00
Alan Bateman
ad7b7d40ce 8294697: java/lang/Thread/virtual/ThreadAPI.testGetStackTrace2 failed with non-empty stack trace
Reviewed-by: dfuchs, jpai
2022-10-06 07:59:43 +00:00
Aleksey Shipilev
e38ae8a651 8294759: Print actual lock/monitor ranking
Reviewed-by: coleenp, dholmes
2022-10-06 07:57:54 +00:00
Matthias Baesken
7012d4ba55 8294837: unify Windows 2019 version check in os_windows and java_props_md
Reviewed-by: alanb, rriggs
2022-10-06 07:12:07 +00:00
Jayathirth D V
8c15f77aba 8270915: GIFImageReader disregards ignoreMetadata flag which causes memory exhaustion
Reviewed-by: prr
2022-10-06 05:43:43 +00:00
Jayathirth D V
6029120a5f 8278086: [REDO] ImageIO.write() method will throw IndexOutOfBoundsException
Co-authored-by: Masanori Yano <myano@openjdk.org>
Reviewed-by: tr, prr
2022-10-06 05:23:38 +00:00
Fei Yang
8f5611593a 8294679: RISC-V: Misc crash dump improvements
Reviewed-by: fjiang, shade
2022-10-06 01:21:18 +00:00
Alexandre Iline
e986a97a96 8292330: Update JCov version to 3.0.13
Reviewed-by: erikj
2022-10-06 00:21:00 +00:00
Stuart Marks
d4142d8441 8290036: Define and specify Runtime shutdown sequence
Reviewed-by: dholmes, alanb
2022-10-05 23:43:02 +00:00
Joe Darcy
0ec18382b7 8294869: Correct failure of RemovedJDKInternals.java after JDK-8294618
Reviewed-by: alanb, azvegint
2022-10-05 19:27:20 +00:00
Justin Lu
87acfee3c3 8294397: Replace StringBuffer with StringBuilder within java.text
Reviewed-by: lancea, naoto, bchristi
2022-10-05 18:42:00 +00:00
Xue-Lei Andrew Fan
f2c57186a4 8294734: Redundant override in AES implementation
Reviewed-by: valeriep, wetmore
2022-10-05 17:25:58 +00:00
Joe Darcy
536c9a512e 8294618: Update openjdk.java.net => openjdk.org
Reviewed-by: mikael, iris, joehw, prr, ihse
2022-10-05 16:48:09 +00:00
Matthias Baesken
f531dae4a0 8294840: langtools OptionalDependencyTest.java use File.pathSeparator
Reviewed-by: alanb
2022-10-05 14:41:29 +00:00
Richard Reingruber
ee6c39175b 8289925: Shared code shouldn't reference the platform specific method frame::interpreter_frame_last_sp()
Reviewed-by: eosterlund, dlong
2022-10-05 14:10:02 +00:00
Robbin Ehn
bd90c4cfa6 8282900: runtime/stringtable/StringTableCleaningTest.java verify unavailable at this moment
Reviewed-by: coleenp, dholmes
2022-10-05 12:45:18 +00:00
Robbin Ehn
979efd4174 8289004: investigate if SharedRuntime::get_java_tid parameter should be a JavaThread*
Reviewed-by: dholmes, jsjolen
2022-10-05 12:44:20 +00:00
Erik Joelsson
b9eeec2b6b 8294310: compare.sh fails on macos after JDK-8293550
Reviewed-by: ihse
2022-10-05 12:42:05 +00:00
Erik Gahlin
13a5000d48 8294151: JFR: Unclear exception message when dumping stopped in memory recording
Reviewed-by: mgronlun
2022-10-05 11:49:53 +00:00
Jorn Vernee
8ebebbce32 8294368: Java incremental builds broken on Windows after JDK-8293116
Reviewed-by: erikj, djelinski, jlahoda
2022-10-05 10:26:53 +00:00
Roberto Castañeda Lozano
4bdd1c9148 8290964: C2 compilation fails with assert "non-reduction loop contains reduction nodes"
Reviewed-by: thartmann, chagedorn
2022-10-05 09:43:31 +00:00
Richard Reingruber
b4e74aeabf 8294514: Wrong initialization of nmethod::_consts_offset for native nmethods
Reviewed-by: kvn, dlong
2022-10-05 09:33:45 +00:00
Matthias Baesken
953ce8da2c 8293701: jdeps InverseDepsAnalyzer runs into NoSuchElementException: No value present
Reviewed-by: mchung
2022-10-05 07:34:42 +00:00
Matthias Baesken
be82cff625 8294748: Cleanup unneeded references to hg
Reviewed-by: erikj, clanger
2022-10-05 07:25:49 +00:00
Daniel Jeliński
43dbf5899b 8186765: Speed up test sun/net/www/protocol/https/HttpsClient/ProxyAuthTest.java
Reviewed-by: dfuchs, jpai
2022-10-05 06:47:19 +00:00
Magnus Ihse Bursie
755958e5ee 8294376: Minimize disabled warnings in java.base
Reviewed-by: erikj
2022-10-05 05:56:44 +00:00
Joe Darcy
1dafbe3f94 8294539: Augment discussion of equivalence relations on floating-point values
Reviewed-by: psandoz, smarks
2022-10-05 00:18:55 +00:00
SWinxy
b2e86a6209 8294255: Add link to DEFAULT_WAIT_TIME in javadoc for SunToolKit.realsSync
Reviewed-by: aivanov, prr
2022-10-04 19:16:14 +00:00
lawrence.andrews
b22a38dedb 8292309: Fix java/awt/PrintJob/ConstrainedPrintingTest/ConstrainedPrintingTest.java test
Reviewed-by: jdv
2022-10-04 18:02:43 +00:00
KIRIYAMA Takuya
121d4a5119 8293579: tools/jpackage/share/jdk/jpackage/tests/UnicodeArgsTest.java fails on Japanese Windows platform
Reviewed-by: asemenyuk, naoto, almatvee
2022-10-04 17:29:15 +00:00
Alisen Chung
1166a8abd2 8292214: Memory leak in getAllConfigs of awt_GraphicsEnv.c:386
Reviewed-by: azvegint, dnguyen
2022-10-04 15:22:18 +00:00
Erik Gahlin
3644e26cef 8294673: JFR: Add SecurityProviderService#threshold to TestActiveSettingEvent.java
Reviewed-by: mgronlun
2022-10-04 14:24:55 +00:00
Albert Mingkun Yang
085949a117 8294712: G1: Use index-base iteration for G1FlushHumongousCandidateRemSets
Reviewed-by: kbarrett, iwalulya
2022-10-04 13:58:51 +00:00
Erik Gahlin
b850f052d8 8294758: JFR: Docs build fails after changes to RecordedObject and Timespan
Reviewed-by: mgronlun, alanb
2022-10-04 13:14:27 +00:00
Leonid Mesnik
2dbedf0e93 8294406: Test runtime/handshake/HandshakeDirectTest.java failed: JVMTI_ERROR_WRONG_PHASE
Reviewed-by: dholmes, sspitsyn
2022-10-04 12:57:55 +00:00
Erik Gahlin
4d6668e7ee 8294242: JFR: jfr print doesn't handle infinite duration well
Reviewed-by: mgronlun
2022-10-04 11:45:53 +00:00
Raffaello Giulietti
5a9cd33632 8294509: The sign extension bug applies to 'public static int[] convertSeedBytesToInts(byte[] seed, int n, int z)' in RandomSupport
Reviewed-by: shade
2022-10-04 10:25:11 +00:00
Martin Doerr
f03934e270 8294578: [PPC64] C2: Missing is_oop information when using disjoint compressed oops mode
Reviewed-by: shade, lucy
2022-10-04 10:13:57 +00:00
Aleksey Shipilev
3b476a1758 8292847: Zero: Allow ergonomics to select the GC
Reviewed-by: tschatzl, stuefe
2022-10-04 09:11:17 +00:00
Roland Westrelin
16047e8308 8292780: misc tests failed "assert(false) failed: graph should be schedulable"
Reviewed-by: dlong, chagedorn, thartmann
2022-10-04 08:34:29 +00:00
Roland Westrelin
bf39b184ca 8288302: Shenandoah: SIGSEGV in vm maybe related to jit compiling xerces
Reviewed-by: shade, thartmann
2022-10-04 08:08:38 +00:00
Tobias Holenstein
f957ce9959 8294564: IGV: IllegalArgumentException for "Difference to current graph"
Reviewed-by: rcastanedalo, chagedorn
2022-10-04 07:29:29 +00:00
Ioi Lam
ae79af2ad6 8294740: Add cgroups keyword to TestDockerBasic.java
Reviewed-by: mseledtsov, dholmes
2022-10-04 03:21:10 +00:00
Serguei Spitsyn
07ed68efb2 8288907: serviceability/jvmti/vthread/SuspendResume1/SuspendResume1.java fails with -XX:TieredStopAtLevel=2,3
Reviewed-by: dholmes
2022-10-03 23:16:51 +00:00
Jonathan Gibbons
090cdfc7a2 8294726: Update URLs in minefield tests
Reviewed-by: darcy, iris
2022-10-03 20:20:53 +00:00
Emmanuel Bourg
ed40d88f29 8276849: Refresh the window icon on graphics configuration changes
Reviewed-by: prr, jdv
2022-10-03 18:42:01 +00:00
Raffaello Giulietti
081691adf4 8294593: Check the size of the target on invocations of BigInteger::isProbablePrime
Reviewed-by: darcy
2022-10-03 18:02:21 +00:00
Daniel Jeliński
a4f2078bd6 8294437: java/nio/channels/FileChannel tests slow on Windows
Reviewed-by: alanb, bpb
2022-10-03 17:42:56 +00:00
Igor Veresov
c6e3daa5fa 8242115: C2 SATB barriers are not safepoint-safe
Reviewed-by: kvn, vlivanov
2022-10-03 17:40:10 +00:00
Jonathan Gibbons
e137f9f2f0 8293877: Rewrite MineField test
Reviewed-by: vromero, martin, darcy, jlahoda
2022-10-03 17:08:37 +00:00
Doug Simon
4f44fd6308 8237467: jlink plugin to save the argument files as input to jlink in the output image
Reviewed-by: mchung
2022-10-03 16:24:43 +00:00
Andrey Turbanov
edfb18a724 8294695: Remove redundant deprecation suppression in ThreadGroup
Reviewed-by: alanb, jpai
2022-10-03 16:03:31 +00:00
stsypanov
46633e644a 8294698: Remove unused 'checkedExceptions' param from MethodAccessorGenerator.generateMethod()
Reviewed-by: redestad
2022-10-03 12:56:51 +00:00
Johan Sjölen
f2a32d996a 8293691: converting a defined BasicType value to a string should not crash the VM
Reviewed-by: shade, coleenp, dlong
2022-10-03 12:18:04 +00:00
Tobias Holenstein
ccc1d31696 8294529: IGV: Highlight the current graphs in the Outline
Reviewed-by: chagedorn
2022-10-03 11:36:05 +00:00
Albert Mingkun Yang
08a7ecf47e 8294671: Remove unused CardValues::last_card
Reviewed-by: tschatzl
2022-10-03 11:11:22 +00:00
Roberto Castañeda Lozano
5fe837a35e 8294236: [IR Framework] CPU preconditions are overriden by regular preconditions
Reviewed-by: chagedorn, pli, kvn
2022-10-03 07:40:53 +00:00
Jan Lahoda
8e9cfeb17c 8294431: jshell reports error on initialisation of static final field of anonymous class
Reviewed-by: sundar
2022-10-03 07:23:42 +00:00
Tobias Holenstein
6e8f0387d6 8294567: IGV: IllegalStateException in search
Reviewed-by: rcastanedalo, chagedorn, kvn
2022-10-03 07:14:16 +00:00
Erik Gahlin
bc668b994d 8293099: JFR: Typo in TestRemoteDump.java
Reviewed-by: mgronlun
2022-10-03 07:04:30 +00:00
Daniel Jeliński
03f25a9c69 8293562: blocked threads with KeepAliveCache.get
Reviewed-by: dfuchs, michaelm
2022-10-03 06:32:31 +00:00
Erik Gahlin
a69ee85308 8292336: JFR: Warn users if -XX:StartFlightRecording:disk=false is specified with maxage or maxsize
Reviewed-by: mgronlun
2022-10-03 06:13:39 +00:00
Doug Simon
b8b9b97a1a 8294676: [JVMCI] InstalledCode.deoptimize(false) should not touch address field
Reviewed-by: never
2022-10-01 11:20:46 +00:00
Jaikiran Pai
fd594302f7 8294610: java/net/vthread/HttpALot.java is slow on Linux
Reviewed-by: dfuchs, alanb
2022-10-01 09:17:53 +00:00
Vladimir Ivanov
c7ab1caafb 8294609: C2: Improve inlining of methods with unloaded signature classes
Reviewed-by: kvn, dlong
2022-09-30 23:30:45 +00:00
Andrey Turbanov
375f02fb21 8294608: Remove redundant unchecked suppression in FileDescriptor
Reviewed-by: alanb, bpb
2022-09-30 20:19:45 +00:00
Roger Riggs
d207da8a8c 8294533: Documentation mistake in Process::getErrorStream and getInputStream
Reviewed-by: iris
2022-09-30 19:10:55 +00:00
Dhamoder Nalla
da4e96d596 8276545: Fix handling of trap count overflow in Parse::Parse()
Reviewed-by: thartmann, kvn
2022-09-30 18:38:48 +00:00
Erik Gahlin
48674d4f36 8291428: JFR: 'jfr print' displays incorrect timestamps during DST
Reviewed-by: mgronlun
2022-09-30 17:34:52 +00:00
Justin Lu
3b1bc21727 8294307: ISO 4217 Amendment 173 Update
Reviewed-by: lancea, bpb, naoto
2022-09-30 17:10:49 +00:00
Alan Bateman
b8f9a915a2 8293940: Some tests for virtual threads take too long
Reviewed-by: dfuchs
2022-09-30 16:41:33 +00:00
Erik Gahlin
1d26c4b149 8291022: JFR: Reduce logging in ChunkHeader constructor
Reviewed-by: mgronlun
2022-09-30 16:30:45 +00:00
Claes Redestad
3efbd5f0fa 8294626: Improve URL protocol lower casing
Reviewed-by: dfuchs
2022-09-30 16:03:53 +00:00
Johan Sjölen
052a924985 8294293: Remove unused _width and _newlines field in outputStream
Reviewed-by: rehn, dholmes
2022-09-30 14:45:40 +00:00
Erik Gahlin
c2ce43cbb0 8291021: JFR: Only one finished state in ChunkHeader class
Reviewed-by: mgronlun
2022-09-30 13:10:56 +00:00
Yoshiki Sato
f01573368f 8294357: (tz) Update Timezone Data to 2022d
Reviewed-by: naoto, coffeys
2022-09-30 12:45:35 +00:00
Hannes Wallnöfer
64da8620e1 8287597: List all preview features on the javadoc PREVIEW page
Reviewed-by: jjg
2022-09-30 11:11:28 +00:00
Adam Sotona
b4e1e416da 8293000: Review running times of jshell regression tests
Reviewed-by: darcy
2022-09-30 08:57:50 +00:00
Severin Gehwolf
6d83482a6b 8293540: [Metrics] Incorrectly detected resource limits with additional cgroup fs mounts
Reviewed-by: iklam
2022-09-30 08:44:10 +00:00
Albert Mingkun Yang
6974978869 8294521: Parallel: Remove unused field in UpdateDensePrefixAndCompactionTask
Reviewed-by: kbarrett, tschatzl
2022-09-30 07:43:21 +00:00
Albert Mingkun Yang
81fda1b756 8294569: Remove CardTable::_last_valid_index
Reviewed-by: tschatzl, kbarrett
2022-09-30 07:42:27 +00:00
Dingli Zhang
7c60e6d2d6 8293770: RISC-V: Reuse runtime call trampolines
Co-authored-by: zifeihan <caogui@iscas.ac.cn>
Reviewed-by: fyang, shade
2022-09-30 07:31:57 +00:00
Daniel Jeliński
9dce8652f2 8294115: JNI local refs exceeds capacity warning in NetworkInterface::getAll
Reviewed-by: dfuchs
2022-09-30 06:00:37 +00:00
Viktor Klang
b030c7de32 8225235: Unused field defaultIndex in NetworkInterface
Reviewed-by: chegar, vtewari, dfuchs, jpai
2022-09-30 03:06:36 +00:00
Brian Burkhalter
a07975bf3e 8294519: (fs) java/nio/file/Files/CopyProcFile.java fails intermittenly due to unstable /proc/cpuinfo output
Reviewed-by: alanb, shade, lancea
2022-09-29 21:06:49 +00:00
Matias Saavedra Silva
88062eea67 8293969: breakup the long signature in SystemDictionaryShared::is_supported_invokedynamic
Reviewed-by: eastigeevich, coleenp
2022-09-29 20:16:30 +00:00
Aleksei Voitylov
aeef3ecdc4 8294198: Implement isFinite intrinsic for RISC-V
Reviewed-by: fyang, kvn
2022-09-29 18:51:38 +00:00
Chris Plummer
5f6ad926d7 8294547: HotSpotAgent.setupVM() should include "cause" exception when throwing DebuggerException
Reviewed-by: sspitsyn, coleenp
2022-09-29 18:31:10 +00:00
Chris Plummer
545ded1a82 8294548: Problem list SA core file tests on macosx-x64 due to JDK-8294316
Reviewed-by: sspitsyn
2022-09-29 18:30:20 +00:00
Alexander Zvegintsev
29c70f1ab7 8294595: Add javax/swing/plaf/aqua/CustomComboBoxFocusTest.java to problem list
Reviewed-by: rriggs
2022-09-29 16:32:47 +00:00
Patricio Chilano Mateo
5d48da4574 8294370: Fix allocation bug in java_lang_Thread::async_get_stack_trace()
Reviewed-by: dholmes, sspitsyn
2022-09-29 15:35:41 +00:00
Raffaello Giulietti
ce85cac947 8065554: MatchResult should provide values of named-capturing groups
Reviewed-by: smarks
2022-09-29 09:16:21 +00:00
Xiaolin Zheng
1decdcee71 8294492: RISC-V: Use li instead of patchable movptr at non-patchable callsites
Reviewed-by: fyang
2022-09-29 07:21:07 +00:00
Brian Burkhalter
8491fd5c12 8294551: Put java/io/BufferedInputStream/TransferTo.java on problem list
Reviewed-by: jpai
2022-09-29 00:35:14 +00:00
Dean Long
6f8f28e756 8294160: misc crash dump improvements
Reviewed-by: dholmes, vlivanov
2022-09-28 23:15:04 +00:00
Matias Saavedra Silva
8873192433 8293515: heapShared.cpp: rename JavaThread parameter to current
Reviewed-by: coleenp, ccheung
2022-09-28 21:27:05 +00:00
Chris Plummer
76f1865124 8293563: [macos-aarch64] SA core file tests failing with sun.jvm.hotspot.oops.UnknownOopException
Reviewed-by: sspitsyn, kevinw
2022-09-28 20:35:33 +00:00
Lance Andersen
9db95edd01 8215788: Clarify JarInputStream Manifest access
Reviewed-by: weijun, mullan, alanb
2022-09-28 19:22:19 +00:00
Andrey Turbanov
9309786dbf 8294472: Remove redundant rawtypes suppression in AbstractChronology
Reviewed-by: lancea, naoto
2022-09-28 18:44:01 +00:00
Chris Plummer
3b7fc80b18 8294411: SA should provide more useful info when it fails to start up due to "failed to workaround classshareing"
Reviewed-by: kevinw, sspitsyn
2022-09-28 17:17:12 +00:00
Matias Saavedra Silva
4fb424ba5f 8293961: Unused ClassPathZipEntry::contents_do
Reviewed-by: ccheung, dholmes
2022-09-28 15:59:49 +00:00
Markus Karg
7515b304ca 8279283: BufferedInputStream should override transferTo
Reviewed-by: bpb
2022-09-28 15:58:25 +00:00
Albert Mingkun Yang
7401fe040d 8292912: Make guard card in CardTable inaccessible
Reviewed-by: tschatzl, sjohanss
2022-09-28 15:57:08 +00:00
Aleksey Shipilev
70d8428ebb 8294520: Problemlist java/nio/file/Files/CopyProcFile.java
Reviewed-by: alanb
2022-09-28 14:33:12 +00:00
Tobias Holenstein
30e3bf9da0 8291805: IGV: Improve Zooming
Reviewed-by: rcastanedalo, lujaniuk, chagedorn
2022-09-28 14:31:22 +00:00
Alan Bateman
37f83b9b8e 8294375: test/jdk/java/nio/channels/vthread/BlockingChannelOps.java is slow
Reviewed-by: jpai
2022-09-28 13:10:43 +00:00
Albert Mingkun Yang
60616f243f 8294059: Serial: Refactor GenCollectedHeap::collect
Reviewed-by: sjohanss, tschatzl
2022-09-28 10:36:00 +00:00
Hao Sun
ea6167104e 8294359: Interpreter(AArch64) intrinsify Thread.currentThread()
Reviewed-by: aph, shade
2022-09-28 10:03:37 +00:00
Prasanta Sadhukhan
c42ef70a45 7148092: [macosx] When Alt+down arrow key is pressed, the combobox popup does not appear.
Reviewed-by: prr, serb
2022-09-28 08:50:58 +00:00
Albert Mingkun Yang
94e14da0ef 8294057: Parallel: Tighten ParallelCompactData::initialize_region_data
Reviewed-by: tschatzl, sjohanss
2022-09-28 08:27:35 +00:00
Roland Westrelin
1ea0d6b424 8292301: [REDO v2] C2 crash when allocating array of size too large
Reviewed-by: xliu, thartmann, kvn
2022-09-28 07:16:59 +00:00
KIRIYAMA Takuya
c13e0ef3f8 8292848: AWT_Mixing and TrayIcon tests fail on el8 with hard-coded isOel7
Reviewed-by: prr, serb
2022-09-28 07:00:38 +00:00
Serguei Spitsyn
79ccc791f2 8293613: need to properly handle and hide tmp VTMS transitions
Reviewed-by: cjplummer, lmesnik
2022-09-28 04:44:43 +00:00
Weijun Wang
5e1e449c11 8290920: sspi_bridge.dll not built if BUILD_CRYPTO is false
Reviewed-by: valeriep, erikj, ihse, wetmore
2022-09-28 01:27:57 +00:00
Fei Yang
d827fd830a 8294430: RISC-V: Small refactoring for movptr_with_offset
Reviewed-by: fjiang, yadongwang, shade
2022-09-28 00:22:16 +00:00
AJ Ferguson
9d76ac8a44 8292158: AES-CTR cipher state corruption with AVX-512
Reviewed-by: kvn, svkamath, sviswanathan
2022-09-28 00:12:23 +00:00
David Holmes
e5b65c40ea 8290482: Update JNI Specification of DestroyJavaVM for better alignment with JLS, JVMS, and Java SE API Specifications
Reviewed-by: rehn, coleenp
2022-09-27 23:57:32 +00:00
Leonid Mesnik
f8d9fa8873 8294483: Remove vmTestbase/nsk/jvmti/GetThreadState tests.
Reviewed-by: kvn, dholmes
2022-09-27 22:47:01 +00:00
Chris Plummer
6ad151d096 8293143: Workaround for JDK-8292217 when doing "step over" of bytecode with unresolved cp reference
Reviewed-by: sspitsyn, amenkov
2022-09-27 21:20:41 +00:00
Jonathan Gibbons
22b59b66d9 8294471: SpecTaglet is inconsistent with SpecTree for inline property
Reviewed-by: prappo
2022-09-27 21:18:12 +00:00
David Holmes
763d4bf074 8293592: Remove JVM_StopThread, stillborn, and related cleanup
Reviewed-by: alanb, sspitsyn, rehn, coleenp
2022-09-27 21:03:50 +00:00
Gerard Ziemski
739fdec7ea 8289162: runtime/NMT/ThreadedMallocTestType.java should print out memory allocations to help debug
Reviewed-by: hseigel, coleenp
2022-09-27 16:27:32 +00:00
KIRIYAMA Takuya
a11477ce25 8289797: tools/launcher/I18NArgTest.java fails on Japanese Windows environment
Reviewed-by: naoto
2022-09-27 16:03:33 +00:00
Naoto Sato
71511283ce 8294317: Insufficient build rules for tzdb.dat
Reviewed-by: joehw, erikj
2022-09-27 16:01:47 +00:00
Joshua Cao
fb4979c05b 8290401: Support dump all phases and print nodes in ascending order of index
Reviewed-by: chagedorn, xliu
2022-09-27 15:52:22 +00:00
Matias Saavedra Silva
112ca2b863 8293964: Unused check_for_duplicates parameter in ClassLoaderExt::process_jar_manifest
Reviewed-by: ccheung, dholmes
2022-09-27 15:39:31 +00:00
Darragh Clarke
99017b06bf 8293064: Remove unused NET_xxx functions
Reviewed-by: chegar, djelinski, aefimov, vtewari
2022-09-27 15:01:03 +00:00
Andrey Turbanov
3419363e89 8294361: Cleanup usages of StringBuffer in SQLOutputImpl
Reviewed-by: rriggs, lancea
2022-09-27 13:16:59 +00:00
Alan Bateman
1abf971b93 8249627: Degrade Thread.suspend and Thread.resume
Reviewed-by: cjplummer, sspitsyn, dholmes, jpai
2022-09-27 11:43:59 +00:00
Doug Lea
bc12e9553d 8292969: Bad Thread Utilization in ForkJoinPool
Reviewed-by: shade, alanb
2022-09-27 10:50:18 +00:00
Emanuel Peter
dd51f7e0b7 8293996: C2: fix and simplify IdealLoopTree::do_remove_empty_loop
Reviewed-by: roland, thartmann, chagedorn
2022-09-27 08:52:19 +00:00
Martin Doerr
14c6ac457d 8293998: [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC
Reviewed-by: shade, lucy
2022-09-27 07:54:13 +00:00
Hao Sun
02ea338177 8293887: AArch64 build failure with GCC 12 due to maybe-uninitialized warning in libfdlibm k_rem_pio2.c
Reviewed-by: erikj, shade, ihse
2022-09-27 03:09:18 +00:00
Leonid Mesnik
49a7347ba5 8294408: Problemlist runtime/handshake/HandshakeSuspendExitTest.java
Reviewed-by: dholmes
2022-09-27 01:45:36 +00:00
Fei Gao
aa48705ddd 8289422: Fix and re-enable vector conditional move
Reviewed-by: thartmann, kvn
2022-09-27 01:24:17 +00:00
David Holmes
1ddc92fef5 8294404: [BACKOUT] JDK-8294142: make test should report only executed tests
Reviewed-by: jjg
2022-09-27 00:58:44 +00:00
Alexander Matveev
1e222bccd3 8293462: [macos] app image signature invalid when creating DMG or PKG from post processed signed image
Reviewed-by: asemenyuk
2022-09-26 22:48:25 +00:00
Justin Lu
43eff2b309 8272687: Replace StringBuffer with StringBuilder in RuleBasedCollator
Reviewed-by: lancea, naoto, bchristi, bpb
2022-09-26 22:31:51 +00:00
Jonathan Gibbons
b88ee1ee22 6251738: Want a top-level summary page that itemizes all spec documents referenced from javadocs (OEM spec)
Reviewed-by: hannesw
2022-09-26 21:28:39 +00:00
Alexandre Iline
aca4276e89 8294379: Missing comma after copyright year
Reviewed-by: kcr, azvegint, prr
2022-09-26 19:27:46 +00:00
Alexandre Iline
1f521a1204 8225012: sanity/client/SwingSet/src/ToolTipDemoTest.java fails on Windows
Reviewed-by: serb
2022-09-26 18:03:00 +00:00
Roger Riggs
5ae6bc23e8 8234262: Unmask SIGQUIT in a child process
Reviewed-by: bpb, dholmes, vtewari, stuefe, alanb
2022-09-26 15:55:22 +00:00
Raffaello Giulietti
968af74de4 8293567: AbstractSplittableWithBrineGenerator: salt has digits that duplicate the marker
Reviewed-by: jlaskey
2022-09-26 15:47:18 +00:00
Aleksey Shipilev
36b61c5d7e 8293872: Make runtime/Thread/ThreadCountLimit.java more robust
Reviewed-by: dholmes, adinn
2022-09-26 12:44:04 +00:00
Prasanta Sadhukhan
2be315877b 4797982: Setting negative size of JSplitPane divider leads to unexpected results.
Reviewed-by: azvegint, prr
2022-09-26 11:00:38 +00:00
Johan Sjölen
050eebf2e8 8294245: Make Compile::print_inlining_stream stack allocated
Reviewed-by: kvn, rehn
2022-09-26 10:50:43 +00:00
Aleksey Shipilev
91a23d775f 8294142: make test should report only on executed tests
Reviewed-by: ihse, djelinski, erikj
2022-09-26 08:30:45 +00:00
Jaikiran Pai
169a5d48af 8294193: Files.createDirectories throws FileAlreadyExistsException for a symbolic link whose target is an existing directory
Reviewed-by: alanb
2022-09-26 05:16:31 +00:00
Ashutosh Mehra
3675f4c2af 8293252: Shenandoah: ThreadMXBean synchronizer tests crash with aggressive heuristics
Reviewed-by: wkemper, rkennke, heidinga, phh
2022-09-23 18:52:49 +00:00
Leonid Mesnik
543851db92 8289607: Change hotspot/jtreg tests to not use Thread.suspend/resume
Reviewed-by: sspitsyn, cjplummer
2022-09-23 17:44:57 +00:00
Quan Anh Mai
e2f8251490 8293618: x86: Wrong code generation in class Assembler
Reviewed-by: kvn, thartmann
2022-09-23 17:12:48 +00:00
Aleksey Shipilev
6ecd08172b 8294270: make test passes awkward -status:-status:error,fail to jtreg
Reviewed-by: djelinski, erikj, ihse
2022-09-23 16:27:07 +00:00
Harshitha Onkar
eca9749da0 8288325: [windows] Actual and Preferred Size of AWT Non-resizable frame are different
Reviewed-by: kizune, aivanov, tr
2022-09-23 16:24:52 +00:00
Jie Fu
2e20e7ec0f 8294271: Remove use of ThreadDeath from make utilities
Reviewed-by: ihse, shade, alanb
2022-09-23 13:54:23 +00:00
Magnus Ihse Bursie
e45f3d5176 8294281: Allow warnings to be disabled on a per-file basis
Reviewed-by: erikj
2022-09-23 13:39:56 +00:00
Xiaolin Zheng
664e5b1d2e 8294187: RISC-V: Unify all relocations for the backend into AbstractAssembler::relocate()
Reviewed-by: fjiang, yadongwang, fyang
2022-09-23 13:15:44 +00:00
Fredrik Bredberg
acd75e0f1c 8294053: Unneeded local variable in handle_safefetch()
Reviewed-by: rehn, stuefe, shade
2022-09-23 12:34:06 +00:00
Aleksey Shipilev
0b56b82243 8293991: java/lang/Float/Binary16ConversionNaN.java fails on silent NaN conversions
Reviewed-by: darcy
2022-09-23 09:03:18 +00:00
Alan Bateman
acd5bcfc88 8289610: Degrade Thread.stop
Reviewed-by: rriggs, cjplummer, jpai, mchung, prr, mullan
2022-09-23 07:55:29 +00:00
Aleksey Shipilev
05c8cabdad 8293532: Use lighter jmod compression levels in build config
Reviewed-by: ihse
2022-09-23 07:38:13 +00:00
Roberto Castañeda Lozano
eec992c6b0 8292602: ZGC: C2 late barrier analysis uses invalid dominator information
Co-authored-by: Nils Eliasson <neliasso@openjdk.org>
Reviewed-by: kvn, thartmann
2022-09-23 07:25:07 +00:00
Jaikiran Pai
f6d78cda85 8293657: sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1 failed with "SSLHandshakeException: Remote host terminated the handshake"
Reviewed-by: kevinw, dfuchs
2022-09-23 04:54:39 +00:00
Fei Gao
a4dc035a97 8290910: Wrong memory state is picked in SuperWord::co_locate_pack()
Reviewed-by: chagedorn, kvn
2022-09-23 01:26:21 +00:00
Fei Yang
f3ba332fdc 8294183: AArch64: Wrong macro check in SharedRuntime::generate_deopt_blob
Reviewed-by: dlong, shade
2022-09-23 01:09:51 +00:00
lawrence.andrews
df53fa752a 8292328: AccessibleActionsTest.java test instruction for show popup on JLabel did not specify shift key
Reviewed-by: serb, aivanov
2022-09-22 20:15:28 +00:00
Xin Liu
5285035ed9 8294075: gtest/AsyncLogGtest crashes with SEGV
Reviewed-by: dholmes, shade
2022-09-22 16:37:42 +00:00
Xin Liu
696287d6e8 8294037: Using alias template to unify hashtables in AsyncLogWriter
Reviewed-by: coleenp, simonis
2022-09-22 16:36:01 +00:00
Brian Burkhalter
48cc15602b 8293331: Refactor FileDispatcherImpl into operating system-specific components
Reviewed-by: alanb
2022-09-22 15:59:05 +00:00
Aleksey Shipilev
f751e6087d 8294197: Zero: JVM_handle_linux_signal should not assume deopt NOPs
Reviewed-by: coleenp
2022-09-22 14:51:12 +00:00
Aleksey Shipilev
4a6060ba2c 8294190: Incorrect check messages in SharedRuntime::generate_uncommon_trap_blob
Reviewed-by: thartmann, dlong
2022-09-22 14:49:55 +00:00
Jan Lahoda
0be2b2c2f1 8292756: java.lang.AssertionError at at jdk.compiler/com.sun.tools.javac.code.Scope$ScopeImpl.leave(Scope.java:386)
Reviewed-by: vromero
2022-09-22 14:33:07 +00:00
Sean Coffey
bc2af47e1e 8254711: Add java.security.Provider.getService JFR Event
Reviewed-by: mullan, valeriep, jpai
2022-09-22 13:53:15 +00:00
Stefan Karlsson
d781ab09f7 8294003: Don't handle si_addr == 0 && si_code == SI_KERNEL SIGSEGVs
Reviewed-by: dholmes, shade, dlong
2022-09-22 12:35:15 +00:00
Xiaolin Zheng
a216960d71 8294087: RISC-V: RVC: Fix a potential alignment issue and add more alignment assertions for the patchable calls/nops
Reviewed-by: shade, fjiang, fyang
2022-09-22 11:43:47 +00:00
Nick Gasson
3fa6778ab2 8292296: Use multiple threads to process ParallelGC deferred updates
Reviewed-by: tschatzl, ayang
2022-09-22 10:16:28 +00:00
Jaikiran Pai
800e68d690 8292044: HttpClient doesn't handle 102 or 103 properly
Reviewed-by: dfuchs, chegar, michaelm
2022-09-22 09:18:22 +00:00
Emanuel Peter
83abfa5d82 8255670: Improve C2's detection of modified nodes
Reviewed-by: kvn, thartmann, roland
2022-09-22 07:44:50 +00:00
Abhishek Kumar
5652030f16 8292376: A few Swing methods use inheritDoc on exceptions which are not inherited
Reviewed-by: prr, tr
2022-09-22 07:38:14 +00:00
Matthias Baesken
03f287d4ad 8293995: Problem list sun/tools/jstatd/TestJstatdRmiPort.java on all platforms because of 8293577
Reviewed-by: clanger
2022-09-22 07:20:51 +00:00
Xiaolin Zheng
d5bee4a0df 8294086: RISC-V: Cleanup InstructionMark usages in the backend
Reviewed-by: fjiang, fyang
2022-09-22 03:48:06 +00:00
Calvin Cheung
47f233acec 8292202: modules_do is called without Module_lock
Reviewed-by: iklam, coleenp
2022-09-22 03:37:23 +00:00
Feilong Jiang
742bc041ea 8294100: RISC-V: Move rt_call and xxx_move from SharedRuntime to MacroAssembler
Reviewed-by: shade, fyang
2022-09-22 00:58:31 +00:00
Claes Redestad
2283c3244f 8294149: JMH 1.34 and later requires jopt-simple 5.0.4
Reviewed-by: erikj
2022-09-21 22:17:50 +00:00
Adam Sotona
9f90eb0524 8294062: Improve parsing performance of j.l.c.MethodTypeDesc
Reviewed-by: psandoz
2022-09-21 18:02:37 +00:00
Thomas Stuefe
c6be2cd347 8293156: Dcmd VM.classloaders fails to print the full hierarchy
Reviewed-by: dholmes, cjplummer
2022-09-21 17:07:41 +00:00
Alexey Ivanov
711e2520ad 8294039: Remove "Classpath" exception from java/awt tests
Reviewed-by: dmarkov, iris
2022-09-21 17:01:39 +00:00
Alexey Ivanov
27b8e2f49e 8294038: Remove "Classpath" exception from javax/swing tests
Reviewed-by: dmarkov, iris
2022-09-21 17:00:40 +00:00
Brian Burkhalter
e1958971c9 8294068: Unconditional and eager load of nio library since JDK-8264744
Reviewed-by: alanb, redestad
2022-09-21 14:51:21 +00:00
Ashutosh Mehra
84d7ff64d8 8288129: Shenandoah: Skynet test crashed with iu + aggressive
Reviewed-by: eosterlund, rkennke
2022-09-21 14:28:02 +00:00
Jie Fu
07afa3f41e 8294110: compiler/uncommontrap/Decompile.java fails after JDK-8293798
Reviewed-by: shade, thartmann
2022-09-21 13:10:10 +00:00
Fei Yang
0746bcb68f 8294083: RISC-V: Minimal build failed with --disable-precompiled-headers
Reviewed-by: fjiang, yadongwang, shade
2022-09-21 12:57:09 +00:00
Jan Lahoda
95ec2eaca3 8293897: Synthetic final modifier is part of the AST for a try-with-resource resource
Reviewed-by: sundar
2022-09-21 12:29:40 +00:00
Thomas Stuefe
d14e96d970 8293493: Signal Handlers printout should show signal block state
Reviewed-by: dholmes, jsjolen
2022-09-21 12:06:57 +00:00
Matthias Baesken
da4fdfbbf4 8293659: Improve UnsatisfiedLinkError error message to include dlopen error details
Reviewed-by: mchung, lucy
2022-09-21 11:32:24 +00:00
Jan Lahoda
cd1cdcdb0d 8293116: Incremental JDK build could be sped up
Reviewed-by: erikj, vromero, ihse
2022-09-21 10:27:58 +00:00
Tobias Holenstein
e9401e67b3 8293364: IGV: Refactor Action in EditorTopComponent and fix minor bugs
Reviewed-by: rcastanedalo, chagedorn
2022-09-21 09:37:26 +00:00
John Neffenger
844a95b907 8292892: Javadoc index descriptions are not deterministic
Reviewed-by: jjg
2022-09-21 08:45:38 +00:00
Magnus Ihse Bursie
8d1dd6a6cf 8294076: Improve ant detection in idea.sh
Reviewed-by: erikj
2022-09-21 08:22:47 +00:00
Tobias Holenstein
4e7cb156c8 8293480: IGV: Update Bytecode and ControlFlow Component immediately when opening a new graph
Reviewed-by: rcastanedalo, chagedorn
2022-09-21 08:08:13 +00:00
Thomas Schatzl
8ecdaa6811 8294000: Filler array klass should be in jdk/vm/internal, not in java/vm/internal
Reviewed-by: shade, dholmes
2022-09-21 07:58:07 +00:00
Emanuel Peter
379f3094db 8287217: C2: PhaseCCP: remove not visited nodes, prevent type inconsistency
Reviewed-by: roland, chagedorn, thartmann
2022-09-21 07:22:28 +00:00
Emanuel Peter
12e3510f63 8293798: Fix test bugs due to incompatibility with -XX:+AlwaysIncrementalInline
Reviewed-by: kvn, thartmann, chagedorn
2022-09-21 07:21:27 +00:00
casparcwang
cb72f80925 8293978: Duplicate simple loop back-edge will crash the vm
Reviewed-by: roland, chagedorn
2022-09-21 06:24:19 +00:00
Aleksey Shipilev
cddd6def9f 8279941: sun/security/pkcs11/Signature/TestDSAKeyLength.java fails when NSS version detection fails
Reviewed-by: valeriep
2022-09-20 20:11:45 +00:00
Alex Menkov
21008cad46 8285383: vmTestbase/nsk/jvmti/scenarios/hotswap/HS204/hs204t001/hs204t001.java failed with "exit code: 96"
Reviewed-by: dcubed, lmesnik, sspitsyn
2022-09-20 18:18:39 +00:00
Damon Nguyen
3b438a68ea 8294067: [macOS] javax/swing/JComboBox/6559152/bug6559152.java Cannot select an item from popup with the ENTER key.
Reviewed-by: azvegint, psadhukhan
2022-09-20 18:15:13 +00:00
Ruprabhu25
caae53f4da 8289508: Improve test coverage for XPath Axes: ancestor, ancestor-or-self, preceding, and preceding-sibling
Reviewed-by: joehw
2022-09-20 17:35:26 +00:00
Julian Waters
cb5771dc2a 8294006: Avoid hardcoding object file suffixes in make
Reviewed-by: erikj, ihse
2022-09-20 17:23:49 +00:00
Paul Hohensee
5002eaa5cc 8293828: JFR: jfr/event/oldobject/TestClassLoaderLeak.java still fails when GC cycles are not happening
Reviewed-by: tschatzl
2022-09-20 17:12:51 +00:00
Naoto Sato
e3358e77f5 8294008: Grapheme implementation of setText() throws IndexOutOfBoundsException
Reviewed-by: joehw, smarks
2022-09-20 16:46:18 +00:00
Prasanta Sadhukhan
df8ec09f8d 8294046: Newly added test test/jdk/javax/swing/JTabbedPane/TestNPEStateChgListener.java fails in macos
Reviewed-by: azvegint, prr
2022-09-20 15:21:34 +00:00
Vladimir Kempik
09af637a9b 8294012: RISC-V: get/put_native_u8 missing the case when address&7 is 6
Reviewed-by: shade, fyang
2022-09-20 14:58:28 +00:00
Claes Redestad
584de68d78 8294058: Early use of lambda introduced in JDK-8285263 cause startup regressions in 20-b02
Reviewed-by: mullan
2022-09-20 14:50:33 +00:00
Julian Waters
bb422f5c14 8293595: tstrings::any() is missing an overload
Reviewed-by: asemenyuk, almatvee
2022-09-20 13:04:35 +00:00
Julian Waters
0f28cb06ab 8294014: Remove redundant UseCompiler conditions
Reviewed-by: kvn, thartmann
2022-09-20 12:22:18 +00:00
Yanhong Zhu
84ee1a291c 8293781: RISC-V: Clarify types of calls
Reviewed-by: fjiang, fyang, yadongwang
2022-09-20 12:12:35 +00:00
Robbin Ehn
1b496064bf 8293922: Extend barrier-less Java thread transitions to native transitions
Reviewed-by: mdoerr, pchilanomate, dcubed
2022-09-20 08:41:39 +00:00
Quan Anh Mai
a07902bcbe 8293976: Use unsigned integers in Assembler/CodeBuffer::emit_int*
Reviewed-by: kvn, jbhateja
2022-09-20 08:39:01 +00:00
Doug Simon
fe541f05cc 8293989: [JVMCI] re-use cleared oop handles
Reviewed-by: never
2022-09-20 07:55:22 +00:00
Adam Sotona
0fa7d9e8cd 8278863: Add method ClassDesc::ofInternalName
Reviewed-by: jvernee
2022-09-20 07:50:03 +00:00
Albert Mingkun Yang
4020ed53dd 8293210: G1: Remove redundant check in G1FreeHumongousRegionClosure
Reviewed-by: tschatzl, kbarrett
2022-09-19 18:05:28 +00:00
Doug Simon
8ff2c2639e 8293942: [JVMCI] data section entries must be 4-byte aligned on AArch64
Reviewed-by: never
2022-09-19 16:30:48 +00:00
Brian Burkhalter
6e23b43220 8293502: (fc) FileChannel::transfer methods fail to copy /proc files on Linux
Reviewed-by: alanb
2022-09-19 15:57:06 +00:00
Sean Coffey
1f9ff41312 8292297: Fix up loading of override java.security properties file
Reviewed-by: xuelei
2022-09-19 15:21:46 +00:00
Alexey Ivanov
64b96e5cf5 8293811: Provide a reason for PassFailJFrame.forceFail
Reviewed-by: honkar, jdv
2022-09-19 14:22:36 +00:00
Erik Joelsson
f91762f56e 8293965: Code signing warnings after JDK-8293550
Reviewed-by: mikael, ihse
2022-09-19 12:36:14 +00:00
Damon Nguyen
8082c24a0d 8054572: [macosx] JComboBox paints the border incorrectly
Reviewed-by: honkar, psadhukhan
2022-09-19 11:33:25 +00:00
Abhishek Kumar
b920d2999f 8271328: User is able to choose the color after disabling the color chooser.
Reviewed-by: psadhukhan, tr
2022-09-19 11:30:47 +00:00
Andrey Turbanov
5725a93c07 8293879: Remove unnecessary castings in jdk.hotspot.agent
Reviewed-by: lmesnik, cjplummer
2022-09-19 10:58:46 +00:00
Prasanta Sadhukhan
ab7f58a377 6286501: JTabbedPane throws NPE from its stateChanged listener in particular case
Reviewed-by: jdv
2022-09-19 10:25:21 +00:00
Christian Hagedorn
d41f69f9c0 8293849: PrintIdealPhase in compiler directives file is ignored when used with other compile commands
Reviewed-by: rcastanedalo, kvn
2022-09-19 10:16:21 +00:00
Christian Hagedorn
471e2f12b4 8292088: C2: assert(is_OuterStripMinedLoop()) failed: invalid node class: IfTrue
Reviewed-by: roland, kvn
2022-09-19 10:15:18 +00:00
Albert Mingkun Yang
a93cf92635 8293920: G1: Add index based heap region iteration
Reviewed-by: tschatzl, kbarrett
2022-09-19 09:52:10 +00:00
Matthias Baesken
36c9034ff1 8293808: mscapi destroyKeyContainer enhance KeyStoreException: Access is denied exception
Reviewed-by: weijun
2022-09-19 07:39:02 +00:00
Aleksey Shipilev
cbd0688b32 8293851: hs_err should print more stack in hex dump
Reviewed-by: adinn, stefank
2022-09-19 07:38:06 +00:00
Thomas Schatzl
04d7b7d574 8293503: gc/metaspace/TestMetaspacePerfCounters.java#Epsilon-64 failed assertGreaterThanOrEqual: expected MMM >= NNN
Reviewed-by: lkorinth, kbarrett
2022-09-19 07:34:14 +00:00
Thomas Schatzl
d77c464c38 8293891: gc/g1/mixedgc/TestOldGenCollectionUsage.java (still) assumes that GCs take 1ms minimum
Reviewed-by: ayang, kbarrett
2022-09-19 07:33:14 +00:00
Thomas Schatzl
d7c1a7635d 8293861: G1: Disable preventive GCs by default
Reviewed-by: ayang, kbarrett, mbeckwit
2022-09-19 07:29:01 +00:00
Aleksey Shipilev
43f7f47ae0 8293499: Provide jmod --compress option
Reviewed-by: alanb, mchung, jpai, redestad
2022-09-19 06:19:53 +00:00
Aleksey Shipilev
26e08cf3d0 8293844: C2: Verify Location::{oop,normal} types in PhaseOutput::FillLocArray
Reviewed-by: kvn, dlong
2022-09-19 06:18:55 +00:00
Aleksey Shipilev
357a2cc22a 8293937: x86: Drop LP64 conditions from clearly x86_32 code
Reviewed-by: kvn, stuefe
2022-09-19 06:17:24 +00:00
Thomas Stuefe
b1ed40a87a 8293466: libjsig should ignore non-modifying sigaction calls
Reviewed-by: manc, dholmes
2022-09-19 05:38:09 +00:00
Thomas Stuefe
b6ff8fa307 8292073: NMT: remove unused constructor parameter from MallocHeader
Reviewed-by: zgu
2022-09-18 12:44:53 +00:00
Kevin Walls
cfd44bb2cd 8293218: serviceability/tmtools/jstat/GcNewTest.java fails with "Error in the percent calculation"
8293564: serviceability/tmtools/jstat/GcTest01.java fails with "Error in the percent calculation"

Reviewed-by: sspitsyn, lmesnik, dcubed
2022-09-17 09:55:51 +00:00
Quan Anh Mai
01e7b88199 8290917: x86: Memory-operand arithmetic instructions have too low costs
Reviewed-by: kvn, sviswanathan, jbhateja
2022-09-16 20:07:59 +00:00
Johan Sjölen
4b8399b5f0 8293251: Use stringStream::base() instead of as_string() when applicable
Reviewed-by: rehn
2022-09-16 19:54:35 +00:00
Lance Andersen
a8f0f575ab 8278165: Clarify that ZipInputStream does not access the CEN fields for a ZipEntry
Reviewed-by: bpb, alanb
2022-09-16 18:52:25 +00:00
Vladimir Ivanov
746f5f589d 8293816: CI: ciBytecodeStream::get_klass() is not consistent
Reviewed-by: dlong, kvn
2022-09-16 17:57:03 +00:00
Joe Darcy
4b297c1c16 8293892: Add links to JVMS 19 and 20 from ClassFileFormatVersion enum constants
Reviewed-by: sundar, mchung
2022-09-16 16:53:20 +00:00
Leslie Zhai
dfb9c06633 8293535: jdk/javadoc/doclet/testJavaFX/TestJavaFxMode.java fail with jfx
Reviewed-by: jjg
2022-09-16 14:53:30 +00:00
Erik Joelsson
f42caefe2e 8293550: Optionally add get-task-allow entitlement to macos binaries
Reviewed-by: mikael, cjplummer, ihse
2022-09-16 12:33:32 +00:00
Feilong Jiang
5feca688df 8293840: RISC-V: Remove cbuf parameter from far_call/far_jump/trampoline_call
Reviewed-by: fyang
2022-09-16 11:40:31 +00:00
Jan Lahoda
39cd1635bf 8293578: Duplicate ldc generated by javac
Reviewed-by: mcimadamore
2022-09-16 11:37:45 +00:00
Aleksei Efimov
7765942aee 8290367: Update default value and extend the scope of com.sun.jndi.ldap.object.trustSerialData system property
Reviewed-by: dfuchs, jpai
2022-09-16 10:04:51 +00:00
Daniel Fuchs
11e7d53b23 8293819: sun/util/logging/PlatformLoggerTest.java failed with "RuntimeException: Retrieved backing PlatformLogger level null is not the expected CONFIG"
Reviewed-by: jpai
2022-09-16 09:12:28 +00:00
Prasanta Sadhukhan
141d5f5dee 8293767: AWT test TestSinhalaChar.java has old SCCS markings
Reviewed-by: iris
2022-09-16 07:58:00 +00:00
Xiaohong Gong
3beca2db07 8291600: [vectorapi] vector cast op check is not always needed for vector mask cast
Co-authored-by: Quan Anh Mai <qamai@openjdk.org>
Reviewed-by: jiefu, eliu, jbhateja
2022-09-16 01:26:11 +00:00
Man Cao
9a40b76ac5 8293842: IPv6-only systems throws UnsupportedOperationException for several socket/TCP options
Co-authored-by: Martin Buchholz <martin@openjdk.org>
Reviewed-by: djelinski, dfuchs
2022-09-15 22:06:18 +00:00
Kevin Walls
bb9aa4eae6 8293813: ProblemList com/sun/jdi/JdbLastErrorTest.java on windows-x64 in Xcomp mode
Reviewed-by: dcubed
2022-09-15 21:04:52 +00:00
Mark Powers
4cec141a90 8291509: Minor cleanup could be done in sun.security
Reviewed-by: weijun
2022-09-15 19:59:53 +00:00
Daniel D. Daugherty
6beeb8471c 8293875: ProblemList sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1 on linux-x64
Reviewed-by: bpb
2022-09-15 19:38:52 +00:00
Xin Liu
bf79f99c0c 8292989: Avoid dynamic memory in AsyncLogWriter
Reviewed-by: jsjolen, stuefe
2022-09-15 18:32:21 +00:00
Leonid Mesnik
2028ec7412 8289608: Change com/sun/jdi tests to not use Thread.suspend/resume
Reviewed-by: cjplummer, sspitsyn, alanb, dcubed
2022-09-15 17:25:48 +00:00
Xue-Lei Andrew Fan
ecb456ae29 8293779: redundant checking in AESCrypt.makeSessionKey() method
Reviewed-by: djelinski, hchao, mullan
2022-09-15 15:06:27 +00:00
Coleen Phillimore
6fca9ae047 8288474: Move EventContinuationFreezeOld from try_freeze_fast to freeze_slow
Reviewed-by: rpressler, pchilanomate
2022-09-15 12:11:08 +00:00
Jan Lahoda
fbd8b42d70 8293591: Remove use of Thread.stop from jshell tests
Reviewed-by: alanb
2022-09-15 11:27:15 +00:00
Adam Sotona
aff5ff14b2 8244681: Add a warning for possibly lossy conversion in compound assignments
8293797: Release Note: Javac warns about type casts in compound assignments with possible lossy conversions

Reviewed-by: erikj, prr
2022-09-15 10:10:23 +00:00
Thomas Schatzl
15cb1fb788 8256265: G1: Improve parallelism in regions that failed evacuation
Co-authored-by: Hamlin Li <mli@openjdk.org>
Co-authored-by: Albert Mingkun Yang <ayang@openjdk.org>
Reviewed-by: sjohanss, ayang
2022-09-15 09:57:16 +00:00
Aleksei Voitylov
b31a03c60a 8293695: Implement isInfinite intrinsic for RISC-V
Reviewed-by: yadongwang, fyang, dsamersoff
2022-09-15 09:45:03 +00:00
casparcwang
8f3bbe950f 8293472: Incorrect container resource limit detection if manual cgroup fs mounts present
Reviewed-by: sgehwolf, iklam
2022-09-15 08:47:05 +00:00
Stanimir Stamenkov
1caba0f13c 8292948: JEditorPane ignores font-size styles in external linked css-file
Reviewed-by: psadhukhan
2022-09-15 08:16:28 +00:00
Hao Sun
eeb625e709 8290169: adlc: Improve child constraints for vector unary operations
Reviewed-by: eliu, xgong, sviswanathan
2022-09-15 01:38:10 +00:00
Zdenek Zambersky
2057070eb0 8293815: P11PSSSignature.engineUpdate should not print debug messages during normal operation
Reviewed-by: valeriep
2022-09-15 01:06:08 +00:00
Fei Yang
7376c55219 8293769: RISC-V: Add a second temporary register for BarrierSetAssembler::load_at
Reviewed-by: fjiang, shade
2022-09-14 23:50:35 +00:00
Joe Darcy
d191e47516 8293768: Add links to JLS 19 and 20 from SourceVersion enum constants
Reviewed-by: iris, jjg
2022-09-14 21:04:20 +00:00
Brian Burkhalter
a75ddb836b 8293122: (fs) Use file cloning in macOS version of Files::copy method
Reviewed-by: alanb
2022-09-14 20:13:19 +00:00
Thomas Stuefe
95c7c556a3 8293402: hs-err file printer should reattempt stack trace printing if it fails
Reviewed-by: chagedorn, dsamersoff
2022-09-14 16:49:06 +00:00
Pengfei Li
211fab8d36 8291669: [REDO] Fix array range check hoisting for some scaled loop iv
Reviewed-by: roland, thartmann
2022-09-14 14:20:39 +00:00
Matthias Baesken
7f3250d71c 8293787: Linux aarch64 build fails after 8292591
Reviewed-by: aph, shade
2022-09-14 10:29:12 +00:00
Jan Lahoda
2a3879180e 8292755: Non-default method in interface leads to a stack overflow in JShell
Reviewed-by: vromero
2022-09-14 08:51:03 +00:00
Jie Fu
8351b30e00 8293771: runtime/handshake/SystemMembarHandshakeTransitionTest.java fails if MEMBARRIER_CMD_QUERY is unsupported
Reviewed-by: rehn
2022-09-14 07:54:32 +00:00
Jie Fu
91f9c0d0cf 8293774: Improve TraceOptoParse to dump the bytecode name
Reviewed-by: chagedorn
2022-09-14 07:18:00 +00:00
Aggelos Biboudis
1169a15936 8291657: Javac assertion when compiling a method call with switch expression as argument
Reviewed-by: jlahoda
2022-09-14 06:48:01 +00:00
Aleksey Shipilev
2baf2516e1 8293654: Improve SharedRuntime handling of continuation helper out-arguments
Reviewed-by: dlong, kvn
2022-09-14 05:45:37 +00:00
Aleksey Shipilev
60f59a4a88 8293660: Fix frame::sender_for_compiled_frame frame size assert
Reviewed-by: dlong, kvn
2022-09-14 05:44:47 +00:00
Aleksey Shipilev
b3461c188a 8293680: PPC64BE build failure after JDK-8293344
Reviewed-by: mdoerr, stuefe
2022-09-14 05:37:34 +00:00
Andrey Turbanov
7e02039805 8293647: Avoid unnecessary boxing in jdk.hotspot.agent
Reviewed-by: cjplummer, sspitsyn
2022-09-13 17:53:33 +00:00
Evgeny Astigeevich
90390222bd 8287394: AArch64: Remove cbuf parameter from far_call/far_jump/trampoline_call
Reviewed-by: aph
2022-09-13 17:19:16 +00:00
Joe Darcy
1dc5039fed 8293626: AccessFlag::locations(ClassFileFormatVersion cffv) does not throw NPEx when parameter is null
8293627: AccessFlag::locations(ClassFileFormatVersion cffv) and locations() results are inconsistent

Reviewed-by: mchung
2022-09-13 16:51:01 +00:00
Emanuel Peter
6f2223faa1 8288180: C2: VectorPhase must ensure that SafePointNode memory input is a MergeMemNode
Reviewed-by: roland, thartmann
2022-09-13 13:14:05 +00:00
Axel Boldt-Christmas
725f41ffd4 8293351: Add second tmp register to aarch64 BarrierSetAssembler::load_at
Reviewed-by: aph, tschatzl, fyang
2022-09-13 11:21:47 +00:00
Thomas Schatzl
37234c856d 8291912: Introduce per-allocation target struct for members in G1PLABAllocator
Reviewed-by: iwalulya, sjohanss
2022-09-13 08:47:51 +00:00
Robbin Ehn
1e1db5debd 8292591: Experimentally add back barrier-less Java thread transitions
Reviewed-by: mdoerr, eosterlund, pchilanomate, dcubed
2022-09-13 08:31:45 +00:00
Kevin Walls
dfc16e047f 8292302: Windows GetLastError value overwritten by ThreadLocalStorage::thread
Reviewed-by: cjplummer, dholmes, dcubed
2022-09-13 07:34:55 +00:00
Jaikiran Pai
8bd79d3efd 8170305: URLConnection doesn't handle HTTP/1.1 1xx (informational) messages
Reviewed-by: dfuchs, michaelm
2022-09-13 05:08:05 +00:00
Tejesh R
9cd3e355d1 4834298: JFileChooser.getSelectedFiles() failed with multi-selection and double-click
Reviewed-by: jdv
2022-09-13 04:54:15 +00:00
Fei Gao
ec2629c052 8275275: AArch64: Fix performance regression after auto-vectorization on NEON
Reviewed-by: aph, xgong
2022-09-13 03:13:38 +00:00
Hao Sun
cbee0bc9ef 8292587: AArch64: Support SVE fabd instruction
Reviewed-by: njian, fgao, ngasson
2022-09-13 02:19:02 +00:00
Feilong Jiang
68645ebffb 8293566: RISC-V: Clean up push and pop registers
Reviewed-by: fyang, shade
2022-09-13 01:07:04 +00:00
Chris Plummer
526eb54fc3 8293669: SA: Remove unnecssary "InstanceStackChunkKlass: InstanceStackChunkKlass" output when scanning heap
Reviewed-by: sspitsyn
2022-09-12 23:56:45 +00:00
Ioi Lam
41ce658267 8292225: Rename ArchiveBuilder APIs related to source and buffered addresses
Reviewed-by: ccheung
2022-09-12 22:52:16 +00:00
Vladimir Ivanov
155b10ae86 8293329: x86: Improve handling of constants in AES/GHASH stubs
Reviewed-by: kvn
2022-09-12 22:51:27 +00:00
Serguei Spitsyn
d3f7e3b417 8293339: vm/jvmti/StopThread/stop001/stop00103 crashes with SIGSEGV in Continuation::is_continuation_mounted
Reviewed-by: cjplummer, lmesnik
2022-09-12 21:56:05 +00:00
Daniel Skantz
524af94937 8283627: Outdated comment in MachineDescriptionTwosComplement.isLP64
Reviewed-by: cjplummer, sspitsyn, lmesnik
2022-09-12 16:31:52 +00:00
lawrence.andrews
cea409cc28 8292738: JInternalFrame backgroundShadowBorder & foregroundShadowBorder line is longer in Mac Look and Feel
Reviewed-by: serb, aivanov
2022-09-12 15:50:25 +00:00
Sergey Tsypanov
9ef6c0925a 8287908: Use non-cloning reflection methods where acceptable
Reviewed-by: rriggs
2022-09-12 13:31:53 +00:00
Roger Riggs
0c61bf109f 8293282: LoadLibraryUnloadTest.java fails with "Too few cleared WeakReferences"
Reviewed-by: mchung, jpai
2022-09-12 13:26:15 +00:00
Bill Huang
91c9091d7e 8293343: sun/management/jmxremote/bootstrap/RmiSslNoKeyStoreTest.java failed with "Agent communication error: java.io.EOFException"
8293335: sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1failed with "Agent communication error: java.io.EOFException"

Reviewed-by: kevinw, cjplummer
2022-09-12 13:07:34 +00:00
Prasanta Sadhukhan
4c77bd32a0 6529151: NullPointerException in swing.plaf.synth.SynthLookAndFeel$Handler
Reviewed-by: serb, dnguyen
2022-09-12 11:55:48 +00:00
Albert Mingkun Yang
d5aae0103a 8293544: G1: Add comment in G1BarrierSetC1::pre_barrier
Reviewed-by: kbarrett, sjohanss
2022-09-12 10:05:09 +00:00
Roland Westrelin
37df5f5625 8291599: Assertion in PhaseIdealLoop::skeleton_predicate_has_opaque after JDK-8289127
Reviewed-by: chagedorn, thartmann
2022-09-12 07:30:47 +00:00
Matthias Baesken
699c42962e 8292866: Java_sun_awt_shell_Win32ShellFolder2_getLinkLocation check MultiByteToWideChar return value for failures
Reviewed-by: mdoerr, stuefe
2022-09-12 06:41:48 +00:00
Alan Bateman
68da02c7b5 8292240: CarrierThread.blocking not reset when spare not activated
Reviewed-by: dfuchs
2022-09-10 06:15:48 +00:00
Vladimir Ivanov
005b49bb78 8293044: C1: Missing access check on non-accessible class
Reviewed-by: thartmann, dlong
2022-09-09 20:47:31 +00:00
Coleen Phillimore
91d00b3022 8288473: Remove unused frame::set_pc_preserve_deopt methods
Reviewed-by: rpressler, dcubed
2022-09-09 20:19:56 +00:00
Man Cao
45ff10cc68 8292695: SIGQUIT and jcmd attaching mechanism does not work with signal chaining library
Reviewed-by: xliu, stuefe
2022-09-09 19:12:08 +00:00
Dean Long
dbec22b84b 8293287: add ReplayReduce flag
Reviewed-by: kvn, thartmann
2022-09-09 18:45:43 +00:00
Naoto Sato
b8598b0297 8291660: Grapheme support in BreakIterator
Reviewed-by: smarks
2022-09-09 17:13:51 +00:00
Quan Anh Mai
a14c3a493a 8288933: Improve the implementation of Double/Float.isInfinite
Reviewed-by: redestad, darcy
2022-09-09 17:01:57 +00:00
Bhavana Kilambi
00befddd7c 8292675: Add identity transformation for removing redundant AndV/OrV nodes
Reviewed-by: thartmann, ngasson
2022-09-09 14:24:23 +00:00
Tobias Holenstein
7169ee5c73 8293477: IGV: Upgrade to Netbeans Platform 15
Reviewed-by: chagedorn, rcastanedalo
2022-09-09 13:09:15 +00:00
Roland Westrelin
3dd94f33b2 8292671: Hotspot Style Guide should allow covariant returns
Reviewed-by: jrose, kbarrett, stuefe, kvn, dholmes
2022-09-09 11:43:09 +00:00
Abhishek Kumar
9d6b0285f5 8234315: GTK LAF does not gray out disabled JMenu
Reviewed-by: serb, psadhukhan
2022-09-09 07:08:15 +00:00
Valerie Peng
812d805a48 6447816: Provider filtering (getProviders) is not working with OR'd conditions
Reviewed-by: weijun
2022-09-09 00:30:54 +00:00
Fei Yang
43e191d64b 8293524: RISC-V: Use macro-assembler functions as appropriate
Reviewed-by: shade, fjiang
2022-09-09 00:18:48 +00:00
Sangheon Kim
14eb5ad0dc 8291753: Add JFR event for GC CPU Time
Reviewed-by: tschatzl, ayang
2022-09-08 18:20:03 +00:00
Vladimir Ivanov
30d4145e2e 8293230: x86_64: Move AES and GHASH stub definitions into separate source files
Reviewed-by: thartmann
2022-09-08 16:50:47 +00:00
Daniel D. Daugherty
4c5501c31c 8293548: ProblemList sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1 on linux-x64
Reviewed-by: ccheung, azvegint
2022-09-08 16:30:59 +00:00
Vicente Romero
46e6e41b9a 8293051: Further refactor javac after removal of -source/-target/--release 7
Reviewed-by: darcy, mcimadamore
2022-09-08 14:36:19 +00:00
Jan Lahoda
c0ee30a25a 8293348: A false cyclic inheritance error reported
Reviewed-by: vromero
2022-09-08 14:10:06 +00:00
Ashutosh Mehra
85ec1f8d02 8293492: ShenandoahControlThread missing from hs-err log and thread dump
Reviewed-by: zgu, shade
2022-09-08 14:02:41 +00:00
Stefan Karlsson
6bd2794175 8293304: Replace some usages of INTPTR_FORMAT with PTR_FORMAT
Reviewed-by: kbarrett, coleenp
2022-09-08 13:37:06 +00:00
Andrey Turbanov
98da03af50 8293432: Use diamond operator in java.management
Reviewed-by: rriggs, sspitsyn
2022-09-08 11:05:54 +00:00
Adam Sotona
ffc249ae21 8289613: Drop use of Thread.stop in jshell
Reviewed-by: jlahoda
2022-09-08 10:01:24 +00:00
John R Rose
8d3399bf5f 8292758: put support for UNSIGNED5 format into its own header file
Reviewed-by: dlong, coleenp
2022-09-08 07:36:53 +00:00
Jie Fu
6677227301 8293497: Build failure due to MaxVectorSize was not declared when C2 is disabled after JDK-8293254
Reviewed-by: dlong
2022-09-08 02:29:01 +00:00
Weijun Wang
986b834148 8293489: Accept CAs with BasicConstraints without pathLenConstraint
Reviewed-by: mullan
2022-09-08 01:35:22 +00:00
Fei Yang
fc5f97fe37 8293474: RISC-V: Unify the way of moving function pointer
Reviewed-by: yadongwang, fjiang, shade
2022-09-08 01:14:08 +00:00
Daniel D. Daugherty
2d13f53017 8293512: ProblemList serviceability/tmtools/jstat/GcNewTest.java in -Xcomp mode
8293516: ProblemList gc/cslocker/TestCSLocker.java in -Xcomp mode
8293517: ProblemList sun/management/jmxremote/bootstrap/RmiBootstrapTest.java#id1 on linux-x64
8293518: ProblemList sun/management/jmxremote/bootstrap/RmiSslNoKeyStoreTest.java

Reviewed-by: bpb
2022-09-07 23:08:54 +00:00
Ioi Lam
f84386cf6e 8293182: Improve testing of CDS archive heap
Reviewed-by: ccheung, coleenp
2022-09-07 23:02:35 +00:00
Chris Plummer
51de765867 8283010: serviceability/sa/ClhsdbThread.java failed with "'Base of Stack:' missing from stdout/stderr "
Reviewed-by: amenkov
2022-09-07 21:51:46 +00:00
Daniel D. Daugherty
8a489658ab 8293514: ProblemList gc/metaspace/TestMetaspacePerfCounters.java#Epsilon-64 on all platforms
Reviewed-by: kbarrett
2022-09-07 21:33:46 +00:00
Zdenek Zambersky
1e031e6a58 8293232: Fix race condition in pkcs11 SessionManager
Reviewed-by: valeriep
2022-09-07 20:50:41 +00:00
Daniel D. Daugherty
1080c4e4ae 8293508: ProblemList gc/metaspace/TestMetaspacePerfCounters.java#Epsilon-64
Reviewed-by: bpb
2022-09-07 20:49:06 +00:00
Chris Plummer
aff9a696cb 8283224: Remove THREAD_NOT_ALIVE from possible JDWP error codes
Reviewed-by: alanb, sspitsyn
2022-09-07 19:46:19 +00:00
Brian Burkhalter
76df73b390 8293456: runtime/os/TestTracePageSizes.java sub-tests fail with "AssertionError: No memory range found for address: NNNN"
Reviewed-by: alanb, lancea
2022-09-07 18:53:25 +00:00
Naoto Sato
32c7b6283d 8293146: Strict DateTimeFormatter fails to report an invalid week 53
Reviewed-by: rriggs
2022-09-07 18:33:37 +00:00
Daniel D. Daugherty
02dce24b59 8207166: jdk/jshell/JdiHangingLaunchExecutionControlTest.java - launch timeout
Reviewed-by: vromero
2022-09-07 18:30:16 +00:00
Daniel D. Daugherty
d36abbe8da 8293496: ProblemList runtime/os/TestTracePageSizes.java on linux-x64
Reviewed-by: alanb, azvegint
2022-09-07 15:26:02 +00:00
Christian Stein
1ee59adcfe 8289798: Update to use jtreg 7
Reviewed-by: ihse, jpai
2022-09-07 15:13:35 +00:00
Coleen Phillimore
5934669ca8 8292383: Create a SymbolHandle type to use for ResourceHashtable
Reviewed-by: iklam, hseigel
2022-09-07 14:50:58 +00:00
Evgeny Astigeevich
6ff4775b71 8285487: AArch64: Do not generate unneeded trampolines for runtime calls
Reviewed-by: xliu, aph
2022-09-07 14:39:48 +00:00
Prasanta Sadhukhan
d696104535 4850101: Setting mnemonic to VK_F4 underlines the letter S in a button.
Reviewed-by: prr
2022-09-07 12:34:38 +00:00
Stefan Karlsson
14fd1b6cdf 8292921: Rewrite object field printer
Reviewed-by: stuefe, coleenp
2022-09-07 12:08:20 +00:00
Serguei Spitsyn
4f9065d3d5 8293333: Broken links in JDI specification
Reviewed-by: alanb, cjplummer
2022-09-07 09:04:09 +00:00
Andrey Turbanov
2259e427a5 8293197: Avoid double racy reads from non-volatile fields in SharedSecrets
Reviewed-by: alanb
2022-09-07 06:11:56 +00:00
Daniel Jeliński
205f992e9e 8293326: jdk/sun/security/tools/jarsigner/compatibility/SignTwice.java slow on Windows
Reviewed-by: weijun, wetmore
2022-09-07 05:25:53 +00:00
Chris Plummer
710a143473 8293445: clhsdb "thread" command gives incorrect error message for bad threadID
Reviewed-by: dcubed
2022-09-06 22:26:29 +00:00
Vladimir Ivanov
57930f8e53 8293285: x86_64: Move libm stub implementations to StubGenerator
Reviewed-by: kvn
2022-09-06 22:18:03 +00:00
Vladimir Ivanov
5b4c415510 8293254: x86_64: Extract arraycopy stub implementations into a separate file
Reviewed-by: dlong, kvn
2022-09-06 22:16:37 +00:00
Vladimir Ivanov
fb6eb6f267 8293245: x86_64: Extract Adler32 stub implementation into stubGenerator_x86_64_adler.cpp
Reviewed-by: kvn, dlong
2022-09-06 22:15:39 +00:00
Brian Burkhalter
da596182a4 8264744: (fs) Use file cloning in Linux version of Files::copy method
Reviewed-by: alanb
2022-09-06 18:10:58 +00:00
Ludovic Henry
85d4b49151 8283929: GHA: Add RISC-V build config
Reviewed-by: ihse, shade
2022-09-06 16:24:04 +00:00
Yoshiki Sato
98d85e6f59 8292579: (tz) Update Timezone Data to 2022c
Reviewed-by: naoto, alanb
2022-09-06 16:05:51 +00:00
Doug Simon
7c96608d9a 8293403: JfrResolution::on_jvmci_resolution crashes when caller is null
Reviewed-by: never
2022-09-06 15:18:02 +00:00
Coleen Phillimore
c05015bc93 8291736: find_method_handle_intrinsic leaks Method*
Reviewed-by: hseigel, iklam, dholmes
2022-09-06 14:01:17 +00:00
Thomas Schatzl
b2067e63da 8291725: Leftover marks when VM shutdown aborts bitmap clearing make mixed gc fail
Reviewed-by: iwalulya, ayang
2022-09-06 13:41:37 +00:00
Albert Mingkun Yang
6a1e98cbf7 8293213: G1: Remove redundant assertion in G1RemSet::clean_card_before_refine
Reviewed-by: tschatzl, kbarrett
2022-09-06 11:21:00 +00:00
Abhishek Kumar
a92c1ff700 8287912: GTK L&F : Background of tree icons are red
Reviewed-by: psadhukhan, jdv
2022-09-06 10:55:06 +00:00
bobpengxie
272745b374 8293340: Remove unused _code in {Zero,Template}InterpreterGenerator
Reviewed-by: jiefu, shade
2022-09-06 09:39:17 +00:00
Jan Lahoda
26f2a978f6 8290561: Coalesce incubator-module warnings for single-file source-code programs
Reviewed-by: mcimadamore
2022-09-06 09:27:48 +00:00
Magnus Ihse Bursie
8e22f2bb40 8293361: GHA: dump config.log in case of configure failure
Reviewed-by: shade
2022-09-06 08:51:02 +00:00
Magnus Ihse Bursie
b17758a932 8247283: Enable the new conformant preprocessor option in Visual Studio
Reviewed-by: erikj, djelinski
2022-09-06 08:50:13 +00:00
Albert Mingkun Yang
1bed23a1af 8293353: [BACKOUT] G1: Remove redundant is-marking-active checks in C1 barrier
Reviewed-by: kbarrett, mdoerr, tschatzl
2022-09-06 08:43:34 +00:00
Jan Lahoda
4955835249 8282434: Leading combining diacritic character in string renders incorrectly
Reviewed-by: vromero
2022-09-06 08:42:45 +00:00
Andrey Turbanov
ef20ffe4d2 8293159: Use try-with-resources in X11FontManager.registerFontDir
Reviewed-by: prr
2022-09-05 19:58:18 +00:00
Hannes Wallnöfer
056ed48dda 8293180: JQuery UI license file not updated
Reviewed-by: jjg
2022-09-05 18:51:01 +00:00
Emanuel Peter
dbb2c4b6ac 8288897: Clean up node dump code
Reviewed-by: chagedorn, xliu
2022-09-05 14:27:00 +00:00
Albert Mingkun Yang
9833c025fd 8292946: GC lock/jni/jnilock001 test failed "assert(gch->gc_cause() == GCCause::_scavenge_alot || !gch->incremental_collection_failed()) failed: Twice in a row"
Reviewed-by: kbarrett, tschatzl
2022-09-05 13:35:36 +00:00
Aleksey Shipilev
d7536588b3 8293107: GHA: Bump to Ubuntu 22.04
Reviewed-by: ihse
2022-09-05 13:28:51 +00:00
Thomas Stuefe
d4e3e69505 8293344: JDK-8242181 broke stack printing for non-attached threads
Reviewed-by: chagedorn, mdoerr
2022-09-05 13:08:14 +00:00
Volker Simonis
2c61efe3de 8282648: Weaken the InflaterInputStream specification in order to allow faster Zip implementations
Reviewed-by: lancea, alanb, jpai, mr, darcy
2022-09-05 12:50:52 +00:00
Ludvig Janiuk
e31c537f05 8293224: Add link to openjdk.org/jtreg/ from doc/testing
Reviewed-by: erikj, iris, ihse
2022-09-05 12:17:19 +00:00
Prasanta Sadhukhan
955baa3c44 8267374: macOS: Option+Up/Down Arrow don't traverse to beginning/end of line in JTextArea
Reviewed-by: prr
2022-09-05 10:47:48 +00:00
Magnus Ihse Bursie
8df671c908 8293355: JDK-8293167 included bad copyright header
Reviewed-by: kbarrett
2022-09-05 10:17:58 +00:00
Fei Yang
5bed9f7675 8293290: RISC-V: Explicitly pass a third temp register to MacroAssembler::store_heap_oop
Reviewed-by: shade
2022-09-05 10:02:08 +00:00
Markus Grönlund
48b3ab02f9 8293167: Memory leak in JfrThreadSampler if stackdepth is larger than default (64)
Reviewed-by: jbachorik
2022-09-05 09:13:07 +00:00
Serguei Spitsyn
4067321ef4 8291586: Broken links in JVMTI specification
Reviewed-by: alanb
2022-09-05 08:51:25 +00:00
Axel Boldt-Christmas
32f4dc8403 8293295: Add type check asserts to java_lang_ref_Reference accessors
Reviewed-by: stefank, kbarrett, coleenp
2022-09-05 08:34:13 +00:00
Daniel Jeliński
e945619ddd 8293088: Fix compilation with the new Visual Studio preprocessor
Reviewed-by: ihse
2022-09-05 07:22:58 +00:00
Roberto Castañeda Lozano
730ced9a10 8292660: C2: blocks made unreachable by NeverBranch-to-Goto conversion are removed incorrectly
Reviewed-by: kvn, roland
2022-09-05 07:16:51 +00:00
Ichiroh Takiguchi
3464019d7e 8292899: CustomTzIDCheckDST.java testcase failed on AIX platform
Reviewed-by: naoto
2022-09-04 07:22:09 +00:00
Chris Plummer
e92b9e4030 8293325: Minor improvements to macos catch_mach_exception_raise() error handling
Reviewed-by: amenkov, dcubed, sspitsyn
2022-09-03 23:15:35 +00:00
Chris Plummer
767262e67c 8292201: serviceability/sa/ClhsdbThreadContext.java fails with "'Thread "Common-Cleaner"' missing from stdout/stderr"
Reviewed-by: amenkov, sspitsyn
2022-09-03 16:06:25 +00:00
Jaikiran Pai
a366e82aa1 7113208: Incorrect javadoc on java.net.DatagramPacket.setLength()
Reviewed-by: dfuchs
2022-09-03 05:48:20 +00:00
Ioi Lam
ac05bc8605 8293293: Move archive heap loading code out of heapShared.cpp
Reviewed-by: erikj, coleenp
2022-09-02 23:47:48 +00:00
Jie Fu
e1e67324c0 8293319: [C2 cleanup] Remove unused other_path arg in Parse::adjust_map_after_if
Reviewed-by: kvn
2022-09-02 22:40:53 +00:00
Dean Long
5757e2129e 8292385: assert(ctrl == kit.control()) failed: Control flow was added although the intrinsic bailed out
Reviewed-by: thartmann, jiefu, kvn
2022-09-02 19:25:08 +00:00
Bill Huang
3993a1f9ea 8292067: Convert test/sun/management/jmxremote/bootstrap shell tests to java version
Reviewed-by: lmesnik
2022-09-02 18:10:56 +00:00
Coleen Phillimore
83a34086bc 8293315: Add back logging for Placeholders
Reviewed-by: iklam
2022-09-02 17:51:49 +00:00
Joe Darcy
b6477fdb30 8293288: bootcycle build failure after JDK-8173605
Reviewed-by: erikj
2022-09-02 17:44:59 +00:00
Vladimir Ivanov
0c6094e796 8293188: x86_64: Introduce stubGenerator_x86_64.hpp
Reviewed-by: dholmes, kvn
2022-09-02 17:05:51 +00:00
Chris Plummer
2baeebbc02 8293006: sun/tools/jhsdb/JStackStressTest.java fails with "UnalignedAddressException: 8baadbabe"
Reviewed-by: dcubed, sspitsyn
2022-09-02 16:11:01 +00:00
Chris Plummer
da99e3e829 8289400: Improve com/sun/jdi/TestScaffold error reporting
Reviewed-by: amenkov, lmesnik
2022-09-02 16:08:17 +00:00
Roland Westrelin
77e21c57ce 8290529: C2: assert(BoolTest(btest).is_canonical()) failure
Reviewed-by: kvn, thartmann
2022-09-02 13:35:11 +00:00
Coleen Phillimore
fcc0cf9677 8292375: Convert ProtectionDomainCacheTable to ResourceHashtable
Reviewed-by: dholmes, iklam
2022-09-02 13:07:45 +00:00
Axel Boldt-Christmas
6fc58b8324 8293207: Add assert to JVM_ReferenceRefersTo to clarify its API
Reviewed-by: stefank, kbarrett
2022-09-02 12:59:50 +00:00
Albert Mingkun Yang
ce06a3b689 8293023: Change CardTable::is_in_young signature
Reviewed-by: kbarrett, iwalulya
2022-09-02 11:02:22 +00:00
Albert Mingkun Yang
26cac088b4 8293209: Parallel: Remove unused variables in PSParallelCompact::invoke
Reviewed-by: kbarrett
2022-09-02 11:00:49 +00:00
Magnus Ihse Bursie
46523b817c 8293219: Microsoft toolchain selection picks 32-bit tools over 64-bit
Reviewed-by: erikj, shade
2022-09-02 09:35:02 +00:00
Xiaolin Zheng
bc5ffc8e47 8293100: RISC-V: Need to save and restore callee-saved FloatRegisters in StubGenerator::generate_call_stub
Reviewed-by: yadongwang, fjiang, shade, vkempik
2022-09-02 07:01:02 +00:00
Stefan Karlsson
98ce45ff74 8292981: Unify and restructure integer printing format specifiers
Reviewed-by: kbarrett, dholmes
2022-09-02 06:52:35 +00:00
Joe Darcy
3ac91b08cb 8293003: Review running time of Warn5 regression test
Reviewed-by: vromero
2022-09-02 02:53:59 +00:00
Hao Sun
e0168a0eb0 8288012: AArch64: unnecessary macro expansion in stubGenerator_aarch64
Reviewed-by: aph, njian
2022-09-02 02:43:07 +00:00
Serguei Spitsyn
99c3ab0177 8293010: JDI ObjectReference/referringObjects/referringObjects001 fails: assert(env->is_enabled(JVMTI_EVENT_OBJECT_FREE)) failed: checking
Reviewed-by: cjplummer, zgu, lmesnik
2022-09-02 01:59:32 +00:00
Jonathan Gibbons
0fb9469d93 8290126: Add a check in JavadocTester for "javadoc should not crash"
Reviewed-by: prappo
2022-09-01 22:41:27 +00:00
Brian Burkhalter
0a4d0cee9f 8293121: (fs) Refactor UnixFileSystem copying into generic Unix, Linux, and BSD implementations
Reviewed-by: alanb
2022-09-01 22:21:21 +00:00
Bill Huang
032be168b5 8292066: Convert TestInputArgument.sh and TestSystemLoadAvg.sh to java version
Reviewed-by: lmesnik, amenkov
2022-09-01 21:29:24 +00:00
Bill Huang
e393973761 8292990: Improve test coverage for XPath Axes: parent
Reviewed-by: joehw
2022-09-01 21:25:40 +00:00
Dean Long
fa68371bb8 8292584: assert(cb != __null) failed: must be with -XX:-Inline
Reviewed-by: kvn, rpressler
2022-09-01 20:19:37 +00:00
Ruprabhu25
04d8069bac 8230374: maxOutputSize, instead of javatest.maxOutputSize, should be used in TEST.properties
Reviewed-by: dholmes
2022-09-01 19:53:14 +00:00
Mahendra Chhipa
3d254d3c8e 8289510: Improve test coverage for XPath Axes: namespace
Reviewed-by: joehw
2022-09-01 17:42:32 +00:00
Joe Darcy
2d18dda3f2 8173605: Remove support for source and target 1.7 option in javac
Reviewed-by: vromero
2022-09-01 16:43:50 +00:00
Ludvig Janiuk
7c2f2994da 8293202: Document how to edit doc/testing, doc/building
Reviewed-by: erikj
2022-09-01 16:39:22 +00:00
Chris Plummer
07616de00c 8175382: clhsdb pmap should print the end addresses of the load modules
Reviewed-by: sspitsyn, ysuenaga
2022-09-01 16:35:41 +00:00
Aggelos Biboudis
9444a081cc 8290709: Incorrect dominance error for unconditional pattern vs. null
Reviewed-by: jlahoda
2022-09-01 16:09:03 +00:00
Naoto Sato
6a1b0b5649 8293154: TemporalQueries java doc error
Reviewed-by: rriggs, lancea
2022-09-01 15:46:45 +00:00
Aleksey Shipilev
5204528296 8293201: Library detection in runtime/ErrorHandling/TestDwarf.java fails on some systems
Reviewed-by: chagedorn
2022-09-01 14:13:51 +00:00
Roger Riggs
2d10d4f54e 8291651: CleanerTest.java fails with "Cleanable was cleaned"
Reviewed-by: jpai, dfuchs
2022-09-01 14:02:06 +00:00
Albert Mingkun Yang
bd674dc55e 8293163: G1: Rename G1HeapRegionAttr::is_humongous
Reviewed-by: kbarrett, sangheki
2022-09-01 10:50:45 +00:00
Albert Mingkun Yang
479795b4d1 8293164: Remove unimplemented Generation::print_heap_change
Reviewed-by: iwalulya
2022-09-01 10:49:52 +00:00
Aleksey Shipilev
6e6202c14d 8292407: Improve Weak CAS VarHandle/Unsafe tests resilience under spurious failures
Reviewed-by: yadongwang, fyang, vkempik, psandoz
2022-09-01 09:22:56 +00:00
Dingli Zhang
17283cfe4c 8293011: riscv: Duplicated stubs to interpreter for static calls
Reviewed-by: fyang
2022-09-01 01:06:45 +00:00
Magnus Ihse Bursie
6076128996 8292008: Transition the JDK to the common standard of C11
Reviewed-by: erikj
2022-08-31 22:17:26 +00:00
Jonathan Gibbons
6f297346dc 8293178: Remove obsolete properties from javadoc resource file
Reviewed-by: prappo
2022-08-31 22:11:20 +00:00
Magnus Ihse Bursie
dd5415309a 8293162: Drop support for VS2017
Reviewed-by: erikj, kbarrett
2022-08-31 22:07:30 +00:00
Ioi Lam
12317ef7d0 8293046: Move CDS command-line flags to cds_globals.hpp
Reviewed-by: dholmes, ccheung, coleenp
2022-08-31 19:58:36 +00:00
Aleksey Shipilev
372fc58e89 8293165: GHA: Provide necessary x86_32 packages for runtime/ErrorHandling/TestDwarf.java
Reviewed-by: ihse
2022-08-31 17:51:48 +00:00
Doug Simon
3c1bda4bc3 8293019: [JVMCI] change ratio of libgraal to C1 threads and use one isolate per libgraal thread
Reviewed-by: never, iveresov
2022-08-31 16:13:25 +00:00
Andrey Turbanov
0d51f63a2e 8293008: Replace uses of StringBuffer with StringBuilder in MergeCollation
Reviewed-by: rriggs, naoto, bpb
2022-08-31 13:56:50 +00:00
Eric Caspole
5d6779f709 8292681: Add JMH for ProtectionDomain
Reviewed-by: mullan
2022-08-31 13:24:34 +00:00
Fei Yang
38e6706315 8293050: RISC-V: Remove redundant non-null assertions about macro-assembler
Reviewed-by: fjiang, yadongwang, shade
2022-08-31 12:24:28 +00:00
Roland Westrelin
4c90e87a6f 8290781: Segfault at PhaseIdealLoop::clone_loop_handle_data_uses
Reviewed-by: chagedorn, thartmann
2022-08-31 09:23:41 +00:00
Axel Boldt-Christmas
9e3176bd09 8293035: Cleanup MacroAssembler::movoop code patching logic aarch64 riscv
Reviewed-by: eosterlund, fyang
2022-08-31 07:42:22 +00:00
Johan Sjölén
c42478b723 8293109: Remove unused methods in Compiler
Reviewed-by: roland, thartmann, kvn
2022-08-31 06:57:54 +00:00
Aleksey Shipilev
d2eed079c3 8293020: jmod should not be treated as "small" tool for large modules
Reviewed-by: erikj, ihse, alanb
2022-08-31 05:30:16 +00:00
Aleksey Shipilev
923c952bec 8293098: GHA: Harmonize GCC version handling for host and cross builds
Reviewed-by: ihse, clanger
2022-08-31 05:29:19 +00:00
Jatin Bhateja
38377d5eb7 8291649: multiple tests failing with -Xcomp after JDK-8290034
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Co-authored-by: John R Rose <jrose@openjdk.org>
Reviewed-by: kbarrett, jrose
2022-08-31 05:02:56 +00:00
Feilong Jiang
2d7792c783 8293065: Zero build failure on AArch64 and RISCV64 after JDK-8293007
Reviewed-by: eosterlund, fyang, yadongwang, kvn
2022-08-31 00:56:27 +00:00
Chris Plummer
c3380c03b1 8292995: improve the SA page cache
Reviewed-by: kevinw, sspitsyn
2022-08-30 23:13:49 +00:00
Ioi Lam
1cf245d77c 8292590: Product JVM crashes with FLAG_SET_XXX on non-product Flag
Reviewed-by: dholmes, coleenp
2022-08-30 22:00:43 +00:00
Kevin Driver
6335150cea 6205692: (spec) javax.crypto.MacSpi.engineUpdate(ByteBuffer input): NPE should be specified
Reviewed-by: valeriep
2022-08-30 20:51:34 +00:00
Albert Mingkun Yang
622be797b9 8293090: Remove unused par_oop_since_save_marks_iterate_done
Reviewed-by: kbarrett
2022-08-30 19:37:36 +00:00
Albert Mingkun Yang
3d0ab2b1aa 8292858: G1: Remove redundant check in G1FlushHumongousCandidateRemSets
Reviewed-by: tschatzl, kbarrett
2022-08-30 19:36:41 +00:00
Vladimir Ivanov
6e248279cf 8292878: x86: Make scratch register usage explicit in assembler code
Reviewed-by: kvn, shade
2022-08-30 18:45:24 +00:00
Serguei Spitsyn
f5ebbf3225 8292657: Calling GetLocalXXX from virtual thread with thread parameter set to NULL returns carrier locals
Reviewed-by: cjplummer, alanb
2022-08-30 18:28:05 +00:00
Kevin Driver
550e5d7822 4958071: (spec) confusing exception list for javax.crypto.Cipher.init(...) for
Reviewed-by: valeriep, wetmore
2022-08-30 18:23:46 +00:00
Andrey Turbanov
d3d2e669b7 8293009: Remove unused field 'millisPerHour' in DateFormatSymbols
Reviewed-by: naoto, jpai
2022-08-30 17:31:21 +00:00
Vladimir Ivanov
f3ebb420b7 8293036: x86_64: Move Continuation-related stub methods to MacroAssembler
Reviewed-by: dlong, kvn
2022-08-30 17:08:18 +00:00
Aleksey Shipilev
1576f991fe 8288759: GCC 12 fails to compile signature.cpp due to -Wstringop-overread
Reviewed-by: dholmes, coleenp
2022-08-30 16:55:47 +00:00
Chris Plummer
f285cea9a6 8293037: Remove DebuggerBase.writeBytes() and related code from SA
Reviewed-by: amenkov, kevinw
2022-08-30 16:24:51 +00:00
Florian Weimer
343333abcf 8293004: (fs) FileChannel.transferXXX use of copy_file_range needs fallback handling for ENOSYS
Reviewed-by: stuefe, alanb, bpb
2022-08-30 15:23:35 +00:00
Andrey Turbanov
b3450e930e 8292850: Unused field 'expiredTimersKey' in javax.swing.TimerQueue
Reviewed-by: prr
2022-08-30 10:22:12 +00:00
Albert Mingkun Yang
6b7d4b1f74 8293028: Remove GenCollectedHeap::handle_failed_promotion
Reviewed-by: kbarrett
2022-08-30 09:51:06 +00:00
Feilong Jiang
21a736954f 8292575: riscv: Represent Registers as values
Reviewed-by: yzhu, yadongwang, fyang
2022-08-30 09:24:37 +00:00
Tejesh R
4a28f3798d 8291792: DefaultStyledDocument.setCharacterAttributes accepts negative length
Reviewed-by: psadhukhan, prr
2022-08-30 08:36:58 +00:00
Alexey Ushakov
f766d92755 8290344: Start/stop displaysync affects performance in metal rendering pipeline
Reviewed-by: aghaisas, jdv
2022-08-30 08:23:58 +00:00
Roland Westrelin
afa5d4ced3 8290451: Incorrect result when switching to C2 OSR compilation from C1
Reviewed-by: thartmann, kvn
2022-08-30 07:27:51 +00:00
Jaikiran Pai
bc6ac6f7af 8292968: java.net.ContentHandler's javadoc has a broken reference
Reviewed-by: dfuchs
2022-08-30 05:24:14 +00:00
Yadong Wang
e016363b54 8293007: riscv: failed to build after JDK-8290025
Reviewed-by: fyang, fjiang, shade
2022-08-30 01:17:41 +00:00
David Holmes
9424d6d487 8293012: ConstantPool::print_on can crash if _cache is NULL
Reviewed-by: shade, rehn
2022-08-30 00:58:26 +00:00
Ioi Lam
40b0ed5657 8292891: ifdef-out some CDS-only functions
Reviewed-by: coleenp, ccheung, dholmes
2022-08-29 23:20:21 +00:00
Dean Long
adb3d4f14a 8292694: x86_64 c2i/i2c adapters may use more stack space than necessary
Reviewed-by: kvn, thartmann
2022-08-29 19:38:48 +00:00
Tomas Zezula
30def49c72 8292769: [JVMCI] OutOfMemoryError thrown when attaching the libgraal isolate causes HotSpot to crash.
Reviewed-by: dnsimon, never
2022-08-29 15:46:50 +00:00
Pengfei Li
a88a9e344f 8291466: C2: assert(false) failed: infinite loop in PhaseIterGVN::transform_old with -XX:+StressIGVN
Reviewed-by: roland, chagedorn
2022-08-29 13:06:20 +00:00
Prasanta Sadhukhan
d5167a91a9 7189422: [macosx] Submenu's arrow have a wrong position
Reviewed-by: prr, dnguyen
2022-08-29 10:59:31 +00:00
Aleksey Shipilev
512fee1d1e 8292972: Initialize fields if CodeBlobIterator shortcuts without heaps
Reviewed-by: kvn, chagedorn
2022-08-29 07:47:50 +00:00
Aleksey Shipilev
a476ec5c81 8292983: ModuleReferenceImpl.computeHash should record algorithm for cache checks
Reviewed-by: alanb, mchung, jpai
2022-08-29 05:58:41 +00:00
Jaikiran Pai
99cab6a68e 8292911: Add a note about jtreg failure handlers in the testing doc
Reviewed-by: lancea, erikj, jjg
2022-08-29 02:25:37 +00:00
Bill Huang
f6b6360155 8289949: Improve test coverage for XPath: operators
Reviewed-by: joehw
2022-08-28 16:58:53 +00:00
Doug Simon
b0e0b87891 8292917: [JVMCI] Extend InstalledCode API to make an nmethod non entrant.
Reviewed-by: never
2022-08-27 08:21:58 +00:00
Daniel D. Daugherty
1500d3dfb2 8292994: ProblemList vmTestbase/gc/lock/jni/jnilock001/TestDescription.java
Reviewed-by: prr
2022-08-26 20:52:35 +00:00
Roger Riggs
4e457acda0 8291760: PipelineLeaksFD.java still fails: More or fewer pipes than expected
Reviewed-by: jpai, alanb
2022-08-26 19:06:29 +00:00
Mikhailo Seledtsov
774edeb521 8271615: vmTestbase/vm/jit/LongTransitions/ test fail due to locale mismatch
Reviewed-by: shade, lmesnik
2022-08-26 18:16:16 +00:00
Jonathan Dowland
9a0d1e7ce8 8292541: [Metrics] Reported memory limit may exceed physical machine memory
Reviewed-by: stuefe, sgehwolf
2022-08-26 16:22:14 +00:00
Brian Burkhalter
c74b6d4552 8292562: (fc) Use copy_file_range in FileChannel::transferTo on Linux
Reviewed-by: alanb
2022-08-26 16:12:58 +00:00
Stefan Karlsson
3844685be0 8292697: ZGC: Hangs when almost out of metaspace memory
Reviewed-by: eosterlund, coleenp
2022-08-26 13:44:28 +00:00
Tobias Holenstein
2b803493ba 8292669: IGV: Search not useable when in Overflow Toolbar
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Co-authored-by: Tobias Holenstein <tholenstein@openjdk.org>
Reviewed-by: chagedorn, rcastanedalo
2022-08-26 13:37:14 +00:00
Stefan Karlsson
4732abf7f4 8292910: Remove root to oop cast in HeapDumper
Reviewed-by: eosterlund, coleenp
2022-08-26 12:34:10 +00:00
Jonathan Dowland
f694f8a767 8292083: Detected container memory limit may exceed physical machine memory
Reviewed-by: sgehwolf, stuefe
2022-08-26 12:25:16 +00:00
Axel Boldt-Christmas
f91943c19f 8292868: Explicitly pass a third temp register to MacroAssembler::store_heap_oop for aarch64
Reviewed-by: shade, eosterlund, tschatzl
2022-08-26 09:37:46 +00:00
Roland Westrelin
6354a57b5c 8290711: assert(false) failed: infinite loop in PhaseIterGVN::optimize
Reviewed-by: chagedorn, kvn
2022-08-26 07:57:40 +00:00
Chris Plummer
3e18773016 8292880: Improve debuggee logging for com/sun/jdi/ClassUnloadEventTest.java
Reviewed-by: amenkov, kevinw
2022-08-25 22:54:29 +00:00
Jie Fu
909e1edb18 8292919: Build failure due to UseJVMCICompiler was not declared when C2 is disabled after JDK-8292691
Reviewed-by: shade, kvn
2022-08-25 22:44:45 +00:00
Chris Plummer
55f5a83b88 8282410: Remove SA ProcDebugger support
Reviewed-by: kevinw, amenkov
2022-08-25 22:25:49 +00:00
Chris Plummer
d83faeaf9a 8292250: Create test for co-located JDI MethodEntry, Step, and Breakpoint events
Reviewed-by: amenkov, kevinw
2022-08-25 22:03:43 +00:00
Coleen Phillimore
e353b572a5 8292890: Remove PrintTouchedMethodsAtExit and LogTouchedMethods
Reviewed-by: iklam, hseigel
2022-08-25 21:12:35 +00:00
Julian Waters
95a33fe150 8292314: Cleanup legacy address handling
Reviewed-by: prr
2022-08-25 19:44:43 +00:00
Maxim Kartashev
5d799d80e6 8292304: [REDO] JDK-8289208 Test DrawRotatedStringUsingRotatedFont.java occasionally crashes on MacOS
Reviewed-by: prr
2022-08-25 19:43:44 +00:00
Coleen Phillimore
4f50316a1a 8292680: Convert Dictionary to ConcurrentHashTable
Reviewed-by: rehn, hseigel
2022-08-25 19:02:52 +00:00
Vladimir Ivanov
2fe0ce0148 8292203: AArch64: Represent Registers as values
Reviewed-by: kvn, aph
2022-08-25 16:50:18 +00:00
Aleksey Shipilev
251bff6bee 8292877: java/util/concurrent/atomic/Serial.java uses {Double,Long}Accumulator incorrectly
Reviewed-by: psandoz, martin, alanb
2022-08-25 16:47:58 +00:00
Aleksey Shipilev
f57d34242c 8292867: RISC-V: Simplify weak CAS return value handling
Reviewed-by: yadongwang, fyang
2022-08-25 16:24:53 +00:00
Calvin Cheung
88af204027 8292494: Ensure SystemDictionary::set_platform_loader and set_system_loader are called only once
Reviewed-by: iklam, dholmes
2022-08-25 16:10:37 +00:00
Matthias Baesken
8d3d4397cc 8292903: enhance round_up_power_of_2 assertion output
Reviewed-by: stefank, stuefe
2022-08-25 14:52:40 +00:00
Erik Österlund
054c23f484 8290025: Remove the Sweeper
Reviewed-by: stefank, kvn, iveresov, coleenp, vlivanov, mdoerr
2022-08-25 09:48:55 +00:00
Albert Mingkun Yang
dc7e2562f4 8290376: G1: Refactor G1MMUTracker::when_sec
Reviewed-by: tschatzl, iwalulya
2022-08-25 09:15:09 +00:00
Prasanta Sadhukhan
5a20bc44b1 8292715: Cleanup Problemlist
Reviewed-by: prr
2022-08-25 07:34:38 +00:00
Ramkumar Sunderbabu
7b81a9c75d 8289764: gc/lock tests failed with "OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects"
Reviewed-by: lmesnik
2022-08-25 01:37:54 +00:00
Ioi Lam
76ee5495cd 8292329: Enable CDS shared heap for zero builds
Reviewed-by: shade, erikj, ihse
2022-08-24 22:39:52 +00:00
Valerie Peng
14623c6087 8292739: Invalid legacy entries may be returned by Provider.getServices() call
Reviewed-by: weijun
2022-08-24 18:23:19 +00:00
Harshitha Onkar
568be58e85 8290469: Add new positioning options to PassFailJFrame test framework
Reviewed-by: prr, aivanov
2022-08-24 16:23:23 +00:00
Johan Sjölén
69448f9c1a 8292679: Simplify thread creation in gtest and port 2 tests to new way
Reviewed-by: rehn, coleenp, stuefe
2022-08-24 15:50:21 +00:00
Jayashree Huttanagoudar
3c2289d651 8215916: The failure reason of an optional JAAS LoginModule is not logged
Reviewed-by: weijun
2022-08-24 15:47:12 +00:00
Tyler Steele
71ab5c95af 8292816: GPL Classpath exception missing from assemblyprefix.h
Reviewed-by: stuefe, ihse
2022-08-24 13:43:55 +00:00
Aleksey Shipilev
c0623972cf 8292713: Unsafe.allocateInstance should be intrinsified without UseUnalignedAccesses
Reviewed-by: psandoz, kvn, fyang
2022-08-24 13:19:43 +00:00
Erik Österlund
a45a4b9465 8292194: G1 nmethod entry barrier disarm value wraps around too early
Reviewed-by: ayang, tschatzl
2022-08-24 13:11:23 +00:00
Coleen Phillimore
d3fed12867 8292864: Remove resourceHash.hpp from header files
Reviewed-by: stefank
2022-08-24 12:40:10 +00:00
Coleen Phillimore
b653b9cc27 8291969: Convert LoaderConstraintsTable to ResourceHashtable
Reviewed-by: dholmes, iklam
2022-08-24 11:39:25 +00:00
Axel Boldt-Christmas
0813a47051 8282729: Serial: Move BOT implementation to collector specific directory
Reviewed-by: tschatzl, ayang
2022-08-24 09:50:17 +00:00
Thomas Stuefe
fa5cc4cc8e 8291878: NMT: Malloc limits
Reviewed-by: kvn, shade
2022-08-24 07:58:54 +00:00
Matthias Baesken
ad2e0c4df0 8292778: EncodingSupport_md.c convertUtf8ToPlatformString wrong placing of free
Reviewed-by: rriggs, kevinw, amenkov
2022-08-24 07:05:28 +00:00
Christian Hagedorn
13c0369646 8242181: [Linux] Show source information when printing native stack traces in hs_err files
Reviewed-by: erikj, tschatzl, stuefe, ihse
2022-08-24 06:44:06 +00:00
Coleen Phillimore
fe0544f8a7 8292790: Remove hashtable.hpp from other files
Reviewed-by: shade, hseigel
2022-08-23 20:39:25 +00:00
Vladimir Ivanov
926380d3b7 8292640: C2: Remove unused scratch register usages on x86
Reviewed-by: kvn
2022-08-23 20:25:56 +00:00
Vladimir Ivanov
f3be6731d3 8292638: x86: Improve scratch register handling in VM stubs
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Reviewed-by: kvn, shade
2022-08-23 19:32:51 +00:00
Roger Riggs
d24b7b7026 8276651: java/lang/ProcessHandle tests fail with "RuntimeException: Input/output error" in java.lang.ProcessHandleImpl$Info.info0
Reviewed-by: jpai, alanb
2022-08-23 14:36:46 +00:00
Thomas Schatzl
8a45abd5f3 8292654: G1 remembered set memory footprint regression after JDK-8286115
Reviewed-by: ayang, iwalulya
2022-08-23 13:54:10 +00:00
Coleen Phillimore
cc287832c2 8292777: Remove hashtable.hpp from dependencies.hpp
Reviewed-by: chagedorn
2022-08-23 13:42:37 +00:00
Martin Doerr
cf00677412 8292368: [ppc64] internal error g1BarrierSet.inline.hpp assert(oopDesc::is_oop(pre_val, true)) failed: Error
Reviewed-by: eosterlund, shade
2022-08-23 08:58:53 +00:00
Magnus Ihse Bursie
d92e00a519 8292763: JDK-8292716 breaks configure without jtreg
Reviewed-by: alanb
2022-08-23 08:32:02 +00:00
Magnus Ihse Bursie
486f90c134 8292716: Configure should check that jtreg is of the required version
Reviewed-by: erikj
2022-08-23 07:45:03 +00:00
Andrey Turbanov
b4e1aa87e3 8289658: Avoid redundant LinkedHashMap.get call in TagletManager.addNewSimpleCustomTag
Reviewed-by: attila, prappo
2022-08-23 07:44:01 +00:00
Matthias Baesken
84936e9278 8292586: simplify cleanups in NTLMAuthSequence getCredentialsHandle
Reviewed-by: michaelm
2022-08-23 07:31:43 +00:00
Doug Simon
259ba86c60 8290075: [JVMCI] only blessed methods can link against EventWriterFactory.getEventWriter
Reviewed-by: mgronlun
2022-08-23 07:24:53 +00:00
Thomas Stuefe
a85a72341b 8292351: tty should always live
Reviewed-by: clanger, coleenp, dholmes
2022-08-23 05:05:15 +00:00
Xiaohong Gong
4da1745836 8291118: [vectorapi] Optimize the implementation of lanewise FIRST_NONZERO
Reviewed-by: eliu, psandoz
2022-08-23 01:30:05 +00:00
Jatin Bhateja
38a81913d3 8290322: Optimize Vector.rearrange over byte vectors for AVX512BW targets.
Reviewed-by: kvn, sviswanathan
2022-08-22 23:59:58 +00:00
Coleen Phillimore
27af0144ea 8292743: Missing include resourceHash.hpp
Reviewed-by: dcubed, stefank
2022-08-22 20:31:31 +00:00
Daniel D. Daugherty
f58aaab4a4 8292262: adjust timeouts in several M&M tests
Reviewed-by: cjplummer
2022-08-22 19:32:40 +00:00
Daniel D. Daugherty
ab6988599c 8292215: java/util/stream/boottest/java.base/java/util/stream/SpinedBufferTest.java times out with slowdebug
Reviewed-by: rriggs, shade
2022-08-22 19:31:50 +00:00
Daniel D. Daugherty
54843b700a 8290211: jdk/internal/vm/Continuation/Fuzz.java failed with "AssertionError: Failed to compile int Fuzz.com_int(int,int) in 5000ms"
Reviewed-by: lmesnik, alanb, jiefu
2022-08-22 19:30:50 +00:00
Daniel D. Daugherty
8a0c3e53d5 8292261: adjust timeouts in JLI GetObjectSizeIntrinsicsTest.java
Reviewed-by: cjplummer
2022-08-22 19:29:58 +00:00
Coleen Phillimore
8e8ee4b6f2 8292596: Make SymbolHashMap a ResourceHashtable
Reviewed-by: hseigel, dholmes
2022-08-22 18:43:51 +00:00
Naoto Sato
aa9b8f04bf 8292043: Incorrect decoding near EOF for stateful decoders like UTF-16
Reviewed-by: joehw, alanb, lancea
2022-08-22 16:26:37 +00:00
Brian Burkhalter
f95ee79603 8292566: Add reference to the java.nio.file package in java.nio package documentation
Reviewed-by: iris, jpai, alanb
2022-08-22 15:53:12 +00:00
Alexey Semenyuk
45c3e898ed 8292316: Tests should not rely on specific JAR file names (jpackage)
Reviewed-by: almatvee
2022-08-22 15:42:27 +00:00
Harold Seigel
db77227684 8282684: Obsolete UseContainerCpuShares and PreferContainerQuotaForCPUCount flags
Reviewed-by: dholmes, iklam, sgehwolf
2022-08-22 14:35:44 +00:00
Daniel Fuchs
256b52387b 8292381: java/net/httpclient/SpecialHeadersTest.java fails with "ERROR: Shutting down connection: HTTP/2 client stopped"
Reviewed-by: jpai
2022-08-22 14:14:41 +00:00
Eric Caspole
e561933907 8292623: Reduce runtime of java.io microbenchmarks
Reviewed-by: rriggs
2022-08-22 13:40:15 +00:00
Thomas Schatzl
dcd78020e4 8292708: Rename G1ParScanThreadState::flush to flush_stats
Reviewed-by: iwalulya, shade
2022-08-22 13:16:38 +00:00
Magnus Ihse Bursie
16593cf51c 8292717: Clean up checking of testing requirements in configure
Reviewed-by: erikj
2022-08-22 13:07:23 +00:00
Leo Korinth
c59f9b374b 8287828: Fix so that one can select jtreg test case by ID from make
Reviewed-by: erikj, iklam, ihse
2022-08-22 12:52:31 +00:00
Albert Mingkun Yang
476c484e37 8292656: G1: Remove G1HotCardCache::_use_cache
Reviewed-by: tschatzl, iwalulya
2022-08-22 12:38:00 +00:00
Prasanta Sadhukhan
a17fce7507 6445283: ProgressMonitorInputStream not large file aware (>2GB)
Reviewed-by: azvegint, prr
2022-08-22 11:13:33 +00:00
Julian Waters
1ed03d82b2 8292226: Prepare make for better Link Time Optimization support
Reviewed-by: ihse
2022-08-22 11:00:17 +00:00
KIRIYAMA Takuya
79597f1ea6 8272702: Resolving URI relative path with no / may lead to incorrect toString
Reviewed-by: dfuchs, michaelm
2022-08-22 09:22:59 +00:00
Thomas Schatzl
7b5f9edb59 8288966: Better handle very spiky promotion in G1
Reviewed-by: iwalulya, kbarrett
2022-08-22 09:07:34 +00:00
Bhavana Kilambi
07c797720d 8290249: Vectorize signum on AArch64
Reviewed-by: aph, ngasson
2022-08-22 09:01:08 +00:00
Thomas Schatzl
a3ec0bb03a 8253413: [REDO] [REDO] G1 incorrectly limiting young gen size when using the reserve can result in repeated full gcs
Reviewed-by: iwalulya, kbarrett
2022-08-22 08:48:52 +00:00
Ioi Lam
27b0f7726b 8292318: Memory corruption in remove_dumptime_info
Reviewed-by: coleenp, ccheung
2022-08-22 03:43:27 +00:00
Sergey Tsypanov
9a65524e2f 8290300: Use standard String-joining tools where applicable
Reviewed-by: naoto, rriggs, dfuchs
2022-08-21 17:22:10 +00:00
Thomas Stuefe
f9004fe443 8292561: Make "ReplayCompiles" a diagnostic product switch
Reviewed-by: kvn, xliu
2022-08-21 06:59:20 +00:00
Ioi Lam
2fbb936203 8292691: Move CompilerConfig::is_xxx() inline functions out of compilerDefinitions.hpp
Reviewed-by: kvn, iveresov
2022-08-20 23:17:57 +00:00
Kevin Walls
3601e30df7 8290909: MemoryPoolMBean/isUsageThresholdExceeded tests failed with "isUsageThresholdExceeded() returned false, and is still false, while threshold = MMMMMMM and used peak = NNNNNNN"
Reviewed-by: cjplummer, amenkov
2022-08-20 14:20:29 +00:00
Andrey Turbanov
37c0a13647 8292350: Use static methods for hashCode/toString primitives
Reviewed-by: prr, rriggs, amenkov, jpai
2022-08-20 10:05:48 +00:00
Vladimir Ivanov
44532009ff 8292628: x86: Improve handling of constants in trigonometric stubs
Reviewed-by: shade, kvn
2022-08-20 00:38:38 +00:00
Coleen Phillimore
07c9ba74fa 8292686: runtime/cds/appcds/TestWithProfiler.java SIGSEGV in TableStatistics ctr
Reviewed-by: dcubed, hseigel
2022-08-19 20:47:24 +00:00
Weijun Wang
235151ead8 8292676: Remove two kerberos tests from problem list
Reviewed-by: xuelei, hchao
2022-08-19 19:59:39 +00:00
Weijun Wang
df5209e70f 8292683: Remove BadKeyUsageTest.java from Problem List
Reviewed-by: xuelei, hchao
2022-08-19 19:58:44 +00:00
Weijun Wang
74d3330e10 8292682: Code change of JDK-8282730 not updated to reflect CSR update
Reviewed-by: xuelei, hchao
2022-08-19 19:57:42 +00:00
Ioi Lam
57aac2ab65 8290981: Enable CDS for zero builds
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Reviewed-by: erikj, shade, ihse
2022-08-19 19:16:33 +00:00
Vladimir Ivanov
6a8a531359 8292564: x86: Remove redundant casts in Assembler usages
Reviewed-by: iveresov, kvn, shade
2022-08-19 19:13:26 +00:00
Ioi Lam
7244dd6fab 8292267: Clean up synchronizer.hpp
Reviewed-by: coleenp, dcubed, dholmes
2022-08-19 17:25:12 +00:00
Johan Sjölén
1f3578b79c 8292446: Make TableRateStatistics optional in CHT
Reviewed-by: coleenp, rehn
2022-08-19 16:39:32 +00:00
Robbin Ehn
45dec480ef 8292592: JFR test TestNative is not reliable due to low rate of sampling.
Reviewed-by: egahlin, shade
2022-08-19 16:05:08 +00:00
Joe Darcy
58aae340a9 8292576: Improve wording of AccessFlag-related specs
Reviewed-by: alanb
2022-08-19 15:56:12 +00:00
Brian Burkhalter
5ca268ca65 8292636: (dc) Problem listing of java/nio/channels/DatagramChannel/Unref.java has incorrect issue ID
Reviewed-by: jpai
2022-08-19 15:03:11 +00:00
Harold Seigel
37aa7c165d 8292559: Add test for -XX:+CheckJNICalls showing changed signal handlers
Reviewed-by: stuefe, coleenp
2022-08-19 12:19:35 +00:00
Pengfei Li
f2f0cd86bf 8292511: AArch64: Align CPU feature name for NEON with hwcap
Reviewed-by: aph, njian
2022-08-19 09:09:18 +00:00
Joe
1f484dae4e 8289562: Change bugs.java.com and bugreport.java.com URL's to https
Co-authored-by: Joe Cherian <joe.cherian@oracle.com>
Reviewed-by: prr, jjg, naoto, iris
2022-08-19 08:55:58 +00:00
Albert Mingkun Yang
63a126aa2d 8292607: Remove unused dirty and dirty_card_range_after_reset in CardTable
Reviewed-by: tschatzl
2022-08-19 08:43:20 +00:00
Axel Boldt-Christmas
7d18ebd870 8292606: G1 and Epsilon header cleanup for JDK-8282729
Reviewed-by: ayang, shade, tschatzl
2022-08-19 08:29:36 +00:00
Ioi Lam
2edd550105 8292312: Work around memset() called operator new
Reviewed-by: dcubed
2022-08-19 03:05:13 +00:00
Ioi Lam
964aac28fe 8292499: CDS ArchivedEnumTest.java fails: object points to a static field that may be reinitialized
Reviewed-by: dholmes, ccheung
2022-08-19 03:04:08 +00:00
Kim Barrett
f85411f24a 8292458: Atomic operations on scoped enums don't build with clang
Reviewed-by: eosterlund, stefank
2022-08-19 01:49:52 +00:00
Christian Stein
82dbe29fc8 8292633: runtime/cds/appcds/dynamicArchive/CDSStreamTestDriver.java fails to compile
Reviewed-by: dcubed, dholmes
2022-08-18 23:29:39 +00:00
Weijun Wang
54ce11431d 6587699: Document DigestInputStream behavior when skip() or mark() / reset() is used
Reviewed-by: wetmore
2022-08-18 22:35:13 +00:00
Daniel D. Daugherty
a1df2da668 8292632: compiler/sharedstubs/SharedTrampolineTest.java fails with "Error: VM option 'PrintRelocations' is develop and is available only in debug version of VM."
Reviewed-by: dholmes
2022-08-18 22:17:49 +00:00
Jonathan Gibbons
1b756bfa3a 8236048: Cleanup use of Utils.normalizeNewlines
Reviewed-by: hannesw
2022-08-18 21:57:05 +00:00
Tomas Zezula
97e2689470 8288121: [JVMCI] Re-export the TerminatingThreadLocal functionality to the graal compiler.
Reviewed-by: dnsimon, never
2022-08-18 21:53:04 +00:00
Tyler Steele
833bf06905 8292608: [AIX] Broken build after 8291945
Reviewed-by: shade
2022-08-18 18:02:46 +00:00
Christian Stein
62a7fc60d3 8292315: Tests should not rely on specific JAR file names (hotspot)
Reviewed-by: vromero
2022-08-18 17:26:14 +00:00
chigiriki
20a3cb7ce3 8292488: JFR: Incorrect comment in ActiveRecordingEvent
Reviewed-by: egahlin
2022-08-18 16:46:16 +00:00
Joe Darcy
f567fa0fd5 8292498: java/lang/invoke/lambda/LogGeneratedClassesTest.java failed with "AssertionError: only show error once expected [1] but found [0]"
Reviewed-by: psandoz, mchung, jpai, rriggs
2022-08-18 16:09:26 +00:00
Albert Mingkun Yang
d00e7b92b4 8292544: G1: Remove virtual specifier for methods in G1EdenRegions and G1SurvivorRegions
Reviewed-by: lkorinth, tschatzl
2022-08-18 14:00:36 +00:00
Coleen Phillimore
f2773f6404 8292556: Clean up unused Hashtable instantiations
Reviewed-by: hseigel, dholmes
2022-08-18 11:26:08 +00:00
Hannes Wallnöfer
d5435642f9 8289334: Use CSS variables to define fonts and colors
Reviewed-by: jjg
2022-08-18 09:02:16 +00:00
Christian Hagedorn
2ee9491a60 8289051: C2: Cleanup PhaseCCP::analyze()
Reviewed-by: thartmann, kvn
2022-08-18 07:36:15 +00:00
Christian Hagedorn
32d675ca60 8291775: C2: assert(r != __null && r->is_Region()) failed: this phi must have a region
Reviewed-by: thartmann, kvn
2022-08-18 07:35:14 +00:00
Harold Seigel
0d96546ab9 8292054: Test runtime/posixSig/TestPosixSig.java fails with 'Test failed, bad output.'
Reviewed-by: coleenp, stuefe
2022-08-17 19:56:14 +00:00
Aleksey Shipilev
e8bc87956a 8292443: Weak CAS VarHandle/Unsafe tests should test always-failing cases
Reviewed-by: psandoz
2022-08-17 18:13:49 +00:00
Yi-Fan Tsai
494d3873b1 8280152: AArch64: Reuse runtime call trampolines
Reviewed-by: aph, phh
2022-08-17 17:35:02 +00:00
Hannes Wallnöfer
8b4e6ba01f 8289332: Auto-generate ids for user-defined headings
Reviewed-by: jjg
2022-08-17 17:14:34 +00:00
Eric Caspole
0fc92637d2 8291828: Reduce runtime of java.util.stream microbenchmarks
Reviewed-by: rriggs
2022-08-17 15:00:02 +00:00
Aleksey Shipilev
e81210f5fe 8292352: 32-bit Windows build failures after JDK-8290059
Reviewed-by: stuefe
2022-08-17 13:25:02 +00:00
Coleen Phillimore
f45b8408a0 8292384: Convert AdapterHandlerTable to ResourceHashtable
Reviewed-by: hseigel, rehn
2022-08-17 12:53:05 +00:00
Aleksey Shipilev
0c67fba11f 8289049: x86_32 build fails with GCC 11 due to newString646_US warning
Reviewed-by: alanb, stuefe
2022-08-17 12:52:17 +00:00
Prasanta Sadhukhan
bf7d6d3a0f 7132413: [macosx] closed/javax/swing/AbstractButton/5049549/bug5049549.java fails on MacOS
Reviewed-by: azvegint, dnguyen
2022-08-17 12:46:27 +00:00
Coleen Phillimore
e230719ad3 8292448: Convert BitMapFragmentTable to ResourceHashtable
Reviewed-by: iklam, rehn
2022-08-17 12:18:05 +00:00
Hao Sun
f75da2235a 8292395: [testbug] VectorGatherScatterTest.java fails on SVE with -XX:MaxVectorSize=8 after JDK-8288397
Reviewed-by: chagedorn, thartmann
2022-08-17 10:30:18 +00:00
Volker Simonis
802ef38060 8292327: java.io.EOFException in InflaterInputStream after JDK-8281962
Reviewed-by: alanb, lancea
2022-08-17 09:34:41 +00:00
Ao Qi
e61f6fc394 8292362: java/lang/Thread/jni/AttachCurrentThread/AttachTest.java#id1 failed on some platforms
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Reviewed-by: alanb
2022-08-17 08:32:19 +00:00
Alan Bateman
0bfb12162f 8292051: jdk/internal/misc/TerminatingThreadLocal/TestTerminatingThreadLocal.java failed "AssertionError: Expected terminated values: [666] but got: []"
Co-authored-by: Peter Levart <plevart@openjdk.org>
Reviewed-by: plevart
2022-08-17 07:28:41 +00:00
Andrey Turbanov
1d9c2f7a6e 8292279: (fs) Use try-with-resources to release NativeBuffer
Reviewed-by: alanb
2022-08-17 07:18:29 +00:00
Roberto Castañeda Lozano
a25e1dc53c 8292285: C2: remove unreachable block after NeverBranch-to-Goto conversion
Reviewed-by: thartmann, chagedorn, kvn
2022-08-17 06:25:25 +00:00
Hannes Wallnöfer
1ef4e48488 8273860: Javadoc Deprecated API list should not use italic font for description column
Reviewed-by: jjg
2022-08-17 05:34:44 +00:00
Hao Sun
0cc66aeae8 8285790: AArch64: Merge C2 NEON and SVE matching rules
Co-authored-by: Ningsheng Jian <njian@openjdk.org>
Co-authored-by: Eric Liu <eliu@openjdk.org>
Reviewed-by: adinn, aph, xgong
2022-08-17 03:51:46 +00:00
Daniel D. Daugherty
da477b1366 8292509: ProblemList java/lang/invoke/lambda/LogGeneratedClassesTest.java on windows
8292510: ProblemList runtime/cds/appcds/cacheObject/ArchivedEnumTest.java

Reviewed-by: darcy
2022-08-16 23:02:23 +00:00
Phil Race
01b87ba8e2 8289616: Drop use of Thread.stop in AppContext
Reviewed-by: alanb, iris, azvegint
2022-08-16 22:53:36 +00:00
Joe Darcy
e44e3f0c19 8289106: Add model of class file versions to core reflection
Reviewed-by: rriggs
2022-08-16 18:43:58 +00:00
Calvin Cheung
c3d3662e52 8292313: 2 runtime/cds/appcds tests fail after JDK-8284313
Reviewed-by: hseigel, iklam
2022-08-16 16:26:59 +00:00
jquanC
3e122419b2 8290775: Some doc errors in DerOutputStream.java
Reviewed-by: xuelei
2022-08-16 14:46:14 +00:00
Aleksey Shipilev
ec53fba039 8292361: Build failure on PPC64 BE after JDK-8290840
Reviewed-by: stefank, stuefe
2022-08-16 10:57:41 +00:00
Jaikiran Pai
4cc6cb9d9d 8290041: ModuleDescriptor.hashCode is inconsistent
Reviewed-by: alanb
2022-08-16 08:31:36 +00:00
Fei Yang
d1edda8ff5 8292338: aarch64: Use cbnz instruction in gen_continuation_enter when possible
Reviewed-by: haosun, shade, aph
2022-08-16 07:18:30 +00:00
Tejesh R
21f4eb2233 6521141: DebugGraphics NPE @ setFont();
Reviewed-by: prr
2022-08-16 05:52:50 +00:00
Coleen Phillimore
6e6ae596d6 8292286: Convert PlaceholderTable to ResourceHashtable
Reviewed-by: hseigel, iklam
2022-08-15 21:53:02 +00:00
Xue-Lei Andrew Fan
ea2c82e74f 8291949: Unexpected extending of SupportedGroups
Reviewed-by: djelinski, wetmore
2022-08-15 17:00:15 +00:00
Eric Caspole
b5707b0376 8292196: Reduce runtime of java.util.regex microbenchmarks
Reviewed-by: rriggs
2022-08-15 16:54:39 +00:00
Julian Waters
b00eedeb02 8291511: Redefinition of EXIT_FAILURE in libw2k_lsa_auth
Reviewed-by: weijun
2022-08-15 16:27:45 +00:00
Eric Caspole
3a090777ba 8291337: Reduce runtime of vm.lamdba microbenchmarks
Reviewed-by: rriggs
2022-08-15 16:08:39 +00:00
Patricio Chilano Mateo
dd2034b007 8291972: Fix double copy of arguments when thawing two interpreted frames
Co-authored-by: Richard Reingruber <rrich@openjdk.org>
Co-authored-by: Patricio Chilano Mateo <pchilanomate@openjdk.org>
Reviewed-by: rpressler, rehn, rrich
2022-08-15 14:34:54 +00:00
Christian Stein
aa5b718933 8292182: [TESTLIB] Enhance JAXPPolicyManager to setup required permissions for jtreg version 7 jar
Reviewed-by: joehw, lancea, iris, naoto
2022-08-15 13:34:19 +00:00
Tobias Hartmann
695bb39391 8292347: Remove unused Type::is_ptr_to_boxing_obj
Reviewed-by: chagedorn, rcastanedalo
2022-08-15 10:55:45 +00:00
Albert Mingkun Yang
ec96b1f187 8290291: G1: Merge multiple calls of block_size in HeapRegion::block_start
Reviewed-by: tschatzl, iwalulya
2022-08-15 10:18:28 +00:00
Axel Boldt-Christmas
fd4b2f2868 8291718: Remove mark_for_deoptimization from klass unloading
Reviewed-by: eosterlund, dlong
2022-08-15 09:53:39 +00:00
Sean Coffey
9d7c13eb14 8155246: Throw error if default java.security file is missing
Reviewed-by: mullan
2022-08-15 09:07:17 +00:00
Christian Hagedorn
e89abb7d2d 8292190: [IR Framework] Remove redundant regex matching for failing counts constraints
Reviewed-by: kvn, rcastanedalo, thartmann
2022-08-15 06:08:08 +00:00
David Holmes
77cd917a97 Merge 2022-08-14 20:05:10 +00:00
Thomas Stuefe
1c1c4410b2 8292072: NMT: repurpose Tracking overhead counter as global malloc counter
Reviewed-by: iklam, clanger
2022-08-13 18:40:29 +00:00
Daniel D. Daugherty
d546d13861 8292319: ProblemList 2 runtime/cds/appcds tests due to JDK-8292313
Reviewed-by: kvn
2022-08-13 15:06:31 +00:00
Artem Semenov
8353a33350 8286313: [macos] Voice over reads the boolean value as null in the JTable
Reviewed-by: prr, kizune
2022-08-13 05:56:37 +00:00
Daniel D. Daugherty
e70747b4e9 8292305: [BACKOUT] JDK-8289208 Test DrawRotatedStringUsingRotatedFont.java occasionally crashes on MacOS
Reviewed-by: prr, dholmes
2022-08-12 21:31:04 +00:00
Calvin Cheung
22d6d315f2 8284313: Improve warning messages when CDS archive fails to load
Reviewed-by: iklam, dholmes
2022-08-12 16:39:55 +00:00
Maxim Kartashev
00decca46a 8289208: Test DrawRotatedStringUsingRotatedFont.java occasionally crashes on MacOS
Reviewed-by: prr, avu
2022-08-12 15:37:18 +00:00
Coleen Phillimore
9f8cc42135 8292218: Convert PackageEntryTable to ResourceHashtable
Reviewed-by: lfoltan, iklam, dholmes
2022-08-12 12:37:27 +00:00
Alexey Ushakov
871b7dab14 8291266: RenderPerfTest: missing content while rendering some primitives
Reviewed-by: aghaisas, prr
2022-08-12 09:48:57 +00:00
Jan Lahoda
0c40128fec 7194212: NPE in Flow.visitIdent
Reviewed-by: vromero
2022-08-12 08:12:28 +00:00
David Holmes
6eb7c3ad0e 8290732: JNI DestroyJavaVM can start shutdown when one non-daemon thread remains
Reviewed-by: stuefe, rehn
2022-08-12 06:41:22 +00:00
Daniel Jeliński
083e014d0c 8292233: Increase symtab hash table size
Reviewed-by: kevinw, cjplummer
2022-08-12 05:25:46 +00:00
Daniel Jeliński
45e5b31a18 8292244: Remove unnecessary include directories
Reviewed-by: erikj, prr
2022-08-12 05:23:54 +00:00
Ioi Lam
9bfffa082e 8291945: Add OSInfo API for static OS information
Reviewed-by: dholmes, stuefe
2022-08-11 23:14:14 +00:00
Ioi Lam
bd5855337c 8290833: Remove ConstantPoolCache::walk_entries_for_initialization()
Reviewed-by: coleenp, ccheung
2022-08-11 21:48:34 +00:00
Vladimir Ivanov
755ecf6b73 8292153: x86: Represent Registers as values
Reviewed-by: kvn, aph
2022-08-11 21:16:02 +00:00
Ao Qi
dedc05cb40 8291640: java/beans/XMLDecoder/8028054/Task.java should use the 3-arg Class.forName
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Reviewed-by: alanb, prr
2022-08-11 19:30:20 +00:00
Julian Waters
3d20a8b20a 8291959: FileFontStrike#initNative does not properly initialize IG Table on Windows
Reviewed-by: prr
2022-08-11 19:27:24 +00:00
Claes Redestad
a28ab7b62a 8288568: Reduce runtime of java.security microbenchmarks
Reviewed-by: ecaspole, hchao, rriggs
2022-08-11 15:28:45 +00:00
Bill Huang
7ea9ba1f6c 8292064: Convert java/lang/management/MemoryMXBean shell tests to java version
Reviewed-by: lmesnik, sspitsyn
2022-08-11 14:34:01 +00:00
Ichiroh Takiguchi
fc1d94ef1a 8292232: AIX build failure by JDK-8290840
Reviewed-by: jiefu, stuefe
2022-08-11 14:01:18 +00:00
Coleen Phillimore
a9bc149992 8292216: Remove modules/packages_unloading_do
Reviewed-by: dholmes
2022-08-11 12:17:02 +00:00
Erik Österlund
1c0f0f4211 8292077: G1 nmethod entry barriers don't keep oops alive
Reviewed-by: tschatzl, stefank, vlivanov
2022-08-11 11:45:11 +00:00
Andrey Turbanov
ad5f628c58 8292140: (fs) Needless instanceof check in RegistryFileTypeDetector
Reviewed-by: alanb
2022-08-11 06:24:04 +00:00
Andrey Turbanov
2ddf72874f 8292026: Remove redundant allocations from DoubleByteEncoder
Reviewed-by: prr
2022-08-11 06:23:01 +00:00
Thomas Stuefe
3aaffd6309 8292071: NMT: move MallocHeader to its own header and inline header checks
Reviewed-by: mbaesken, lucy, iklam
2022-08-11 05:26:56 +00:00
David Holmes
85a602355f Merge 2022-08-11 05:14:13 +00:00
Jaikiran Pai
4b03e135e1 8285405: add test and check for negative argument to HashMap::newHashMap et al
Reviewed-by: chegar, naoto, lancea, smarks
2022-08-11 02:17:01 +00:00
Feilong Jiang
2e0a17c560 8292187: aarch64: Remove duplicate header files
Reviewed-by: aph, ngasson
2022-08-11 00:55:08 +00:00
Leonid Mesnik
36ef4c1a92 8291081: Some sun/tools/jstatd/TestJstatd* tests fail with "Not a percentage\: 68.31\: expected true, was false"
Reviewed-by: kevinw, cjplummer
2022-08-11 00:30:19 +00:00
Coleen Phillimore
b47438cabc 8292068: Convert ModuleEntryTable into ResourceHashtable
Reviewed-by: iklam, lfoltan
2022-08-10 22:04:33 +00:00
Alex Kasko
543163a03b 8291978: jpackage: allow to override primary l10n files on Windows
Reviewed-by: asemenyuk, almatvee, naoto
2022-08-10 20:34:51 +00:00
Joe Darcy
68af7c1365 8291734: Return accurate ACC_SUPER access flag for classes
Reviewed-by: mchung
2022-08-10 19:55:57 +00:00
Alex Kasko
e4925a3959 8291924: jpackage: l10n for Windows context menu label
Reviewed-by: naoto, asemenyuk, almatvee
2022-08-10 19:17:42 +00:00
Daniel Jeliński
7b029ea6ba 8227651: Tests fail with SSLProtocolException: Input record too big
8212096: javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java failed intermittently due to SSLException: Tag mismatch

Reviewed-by: coffeys, xuelei
2022-08-10 18:16:10 +00:00
Brian Burkhalter
35fd5d88eb 8292200: Add java/io/File/GetXSpace.java to Windows problem list
Reviewed-by: alanb
2022-08-10 18:09:54 +00:00
David Schlosnagle
9825c33560 8291641: Optimize StackTraceElement.toString()
Reviewed-by: rriggs, mchung
2022-08-10 16:22:19 +00:00
Evgeny Astigeevich
cb37282a12 8291752: AArch64: Remove check_emit_size parameter from trampoline_call
Reviewed-by: kvn, aph
2022-08-10 14:56:17 +00:00
Aleksey Shipilev
37d3146cca 8289002: Minimal x86_64 VM build fails with GCC 11: 'this' pointer is null
Reviewed-by: dholmes, aph
2022-08-10 13:26:56 +00:00
Tejesh R
ecfa38ffa8 8281966: Absolute path of symlink is null in JFileChooser
Reviewed-by: aivanov, psadhukhan
2022-08-10 11:43:02 +00:00
Prasanta Sadhukhan
83dc2e3e45 8292062: misc javax/swing tests failing
Reviewed-by: prr
2022-08-10 03:42:12 +00:00
Ioi Lam
49133809c2 8292007: Do not include vmSymbol.hpp in method.hpp
Reviewed-by: coleenp
2022-08-10 02:59:53 +00:00
Brian Burkhalter
6397d564a5 8151430: (fs) BasicFileAttributeView.setTimes should support setting file create time on OS X
Reviewed-by: alanb
2022-08-09 22:29:04 +00:00
Daniel D. Daugherty
57e0da1578 8292132: ProblemList jdk/internal/misc/TerminatingThreadLocal/TestTerminatingThreadLocal.java
Reviewed-by: bpb
2022-08-09 19:26:28 +00:00
Daniel D. Daugherty
17c77b5d7a 8292119: ProblemList java/awt/image/multiresolution/MultiresolutionIconTest.java on linux-x64 and windows-all
Reviewed-by: naoto, prr
2022-08-09 18:50:56 +00:00
Bill Huang
d889264c61 8290836: Improve test coverage for XPath functions: String Functions
8290837: Improve test coverage for XPath functions: Boolean Functions
8290838: Improve test coverage for XPath functions: Number Functions

Reviewed-by: joehw
2022-08-09 18:26:54 +00:00
Joe Darcy
ae1a9a0b25 8292060: Make ClassFileVersionTest.java version adapting
Reviewed-by: hseigel
2022-08-09 17:55:18 +00:00
Brian Burkhalter
4040927d17 8290047: (fs) FileSystem.getPathMatcher does not check for ":" at last index
Reviewed-by: naoto, rriggs, alanb, lancea
2022-08-09 17:07:14 +00:00
Calvin Cheung
8d0d9eaa9c 8291238: JDK can't be built without G1
Reviewed-by: stuefe, jiefu
2022-08-09 16:30:44 +00:00
Richard Reingruber
aff7689a00 8292075: Remove deleted test compiler/rangechecks/TestRangeCheckHoistingScaledIV.java from ProblemList
Reviewed-by: chagedorn, pli
2022-08-09 15:21:28 +00:00
Abhishek Kumar
3677b55b45 6391806: JLabel and AbstractButton's imageUpdate method should be better specified
Reviewed-by: psadhukhan, prr
2022-08-09 12:27:05 +00:00
Thomas Schatzl
0ade2641f7 8290814: Hide G1RootRegions behind G1ConcurrentMark
Reviewed-by: sangheki, iwalulya
2022-08-09 12:01:58 +00:00
Coleen Phillimore
f5b3618c42 8291970: Add TableStatistics get function to ResourceHashtable
Reviewed-by: iklam, ccheung
2022-08-09 11:59:02 +00:00
Tejesh R
cbc9040f3a 8290278: JavaDoc of index parameter of method JTabbedPane.insertTab
Reviewed-by: psadhukhan, prr, honkar
2022-08-09 11:53:41 +00:00
ScientificWare
2712bc3f79 8289741: Remove unused imports from DTDBuilder.java
Reviewed-by: jpai
2022-08-09 08:40:24 +00:00
Koichi Sakata
af243ca334 8265433: IGV: add graph tooltips with properties
Reviewed-by: rcastanedalo, tholenstein
2022-08-09 08:18:44 +00:00
Sergey Bylokhov
77398430b5 8288633: The ICC_ColorSpace.fromCIEXYZ method uses the wrong rendering intent
Reviewed-by: prr
2022-08-08 21:50:16 +00:00
Daniel D. Daugherty
eb8b789015 8292061: ProblemList serviceability/attach/ConcAttachTest.java on linux-all
Reviewed-by: darcy
2022-08-08 19:39:02 +00:00
Mark Powers
08274e6fea 8290975: Minor cleanup could be done in javax.security
Reviewed-by: wetmore, mullan
2022-08-08 17:30:22 +00:00
Ramkumar Sunderbabu
7db5abddd1 8282642: vmTestbase/gc/gctests/LoadUnloadGC2/LoadUnloadGC2.java fails intermittently with exit code 1
Reviewed-by: lmesnik
2022-08-08 15:07:48 +00:00
Bill Huang
124fc4a83d 8290180: Convert com/sun/management/UnixOperatingSystemMXBean/GetOpenFileDescriptorCount.sh to jtreg java version
8290181: convert com/sun/management/UnixOperatingSystemMXBean/GetMaxFileDescriptorCount.sh to java version

Reviewed-by: lmesnik, amenkov
2022-08-08 15:06:49 +00:00
Thomas Schatzl
459193710f 8290357: Drop HeapRegion::marked_bytes()
Reviewed-by: sangheki, iwalulya
2022-08-08 13:28:39 +00:00
Thomas Schatzl
7676be8a99 8291037: Move PLAB resizing mechanism to G1EvacStats
Reviewed-by: sangheki, iwalulya
2022-08-08 12:50:52 +00:00
Peter Levart
861cc671e2 8291897: TerminatingThreadLocal(s) not registered from virtual thread(s)
Reviewed-by: alanb
2022-08-08 12:38:21 +00:00
Harold Seigel
8d88be233b 8291459: JVM crash with GenerateOopMap::error_work(char const*, __va_list_tag*)
Reviewed-by: dholmes, coleenp
2022-08-08 12:19:15 +00:00
Julian Waters
8a804f653d 8291454: Missing check for JLI C runtime library in CoreLibraries.gmk
Reviewed-by: erikj, ihse
2022-08-08 12:17:48 +00:00
Yadong Wang
5a539e8da7 8291893: riscv: remove fence.i used in user space
Reviewed-by: fyang, vkempik
2022-08-08 11:47:36 +00:00
Prasanta Sadhukhan
b2f0cbdca1 8064787: [macosx] In Nimbus LaF, Ctrl+Alt mnemonic doesn't work
Reviewed-by: prr, dnguyen
2022-08-08 11:40:21 +00:00
Harshitha Onkar
891df2128a 8259687: JTabbedPane.setComponentAt doesn't hide previously visible tab component
Reviewed-by: psadhukhan, dnguyen
2022-08-08 11:39:17 +00:00
thyecust
d4fb91ba04 8291956: Simplify the loop condition in sun.net.httpserver.Request constructor
Co-authored-by: Tian Haoyu <tienhoayu@gmail.com>
Reviewed-by: dfuchs, chegar
2022-08-08 11:25:45 +00:00
Tobias Holenstein
20123ea4de 8291901: IGV: Preference menu disappears after JDK-8288750
Reviewed-by: rcastanedalo, thartmann
2022-08-08 08:03:21 +00:00
raspberry-hu
8e2c006cd1 8291957: Redundant import statements in sun.security.ec
Reviewed-by: xuelei
2022-08-08 02:49:44 +00:00
Andrey Turbanov
ae52053757 8291954: Use Optional.isEmpty instead of !Optional.isPresent in java.base
Reviewed-by: jpai, alanb, lancea, rriggs, bpb
2022-08-06 09:53:35 +00:00
David Holmes
87cda21c5d Merge 2022-08-05 22:35:24 +00:00
Joe Darcy
0657acf534 8289249: Add methods to Elements for record constructors
Reviewed-by: vromero
2022-08-05 22:18:59 +00:00
Daniel D. Daugherty
b66a0d1613 8291992: [REDO2] ProblemList multiple tests in -Xcomp mode due to JDK-8291649
Reviewed-by: bpb
2022-08-05 21:56:54 +00:00
Daniel D. Daugherty
9bff3b76f2 8291990: [REDO] ProblemList multiple tests in -Xcomp mode due to JDK-8291649
Reviewed-by: bpb
2022-08-05 21:36:11 +00:00
Thomas Schatzl
f9bb3676e3 8291653: G1 refinement incorrectly expects always-valid HeapRegion out of the Hot Card Cache
Reviewed-by: kbarrett, ayang
2022-08-05 16:20:27 +00:00
Michael McMahon
b17a745d7f 8291637: HttpClient default keep alive timeout not followed if server sends invalid value
Reviewed-by: jpai, dfuchs
2022-08-05 14:51:58 +00:00
Claes Redestad
0da4314e95 8288732: Reduce runtime of java.util.concurrent microbenchmarks
Reviewed-by: ecaspole, rriggs
2022-08-05 14:35:45 +00:00
Yadong Wang
88c96dd3eb 8291947: riscv: fail to build after JDK-8290840
Reviewed-by: fyang, fjiang
2022-08-05 09:12:29 +00:00
Axel Boldt-Christmas
dd7f2d912b 8290090: Change CodeBlobType from unscoped enum to enum class
Reviewed-by: eosterlund, kvn
2022-08-05 08:24:25 +00:00
Fei Yang
4c652d9eca 8291952: riscv: Remove PRAGMA_NONNULL_IGNORED
Reviewed-by: yadongwang, shade
2022-08-05 07:51:05 +00:00
Tobias Holenstein
b0d6952811 8291823: IGV: Fix "Save selected groups"
Reviewed-by: rcastanedalo, kvn, thartmann
2022-08-05 07:04:37 +00:00
Tobias Holenstein
504a626597 8291799: IGV: make "Selection mode" a toggle button
Reviewed-by: kvn, thartmann, rcastanedalo
2022-08-05 07:00:15 +00:00
Andrey Turbanov
6e7cd7627d 8291061: Improve thread safety of FileTime.toString and toInstant
Reviewed-by: alanb
2022-08-05 06:56:20 +00:00
David Holmes
477f471159 Merge 2022-08-05 03:52:15 +00:00
Bhavana Kilambi
6b2184e8d1 8290248: Implement MaxINode::Ideal transformation
Reviewed-by: kvn, thartmann
2022-08-05 01:51:34 +00:00
Calvin Cheung
27c8826090 8291840: Avoid JavaCalls for setting up _java_system_loader and _java_platform_loader
Reviewed-by: coleenp, iklam
2022-08-04 23:56:11 +00:00
Daniel D. Daugherty
6e6c64c6f6 8291941: ProblemList java/lang/ProcessBuilder/PipelineLeaksFD.java on linux-all
Reviewed-by: dholmes
2022-08-04 22:50:24 +00:00
Coleen Phillimore
617a196fd3 8290812: Add a test for ResourceHashtable
Reviewed-by: stuefe, iklam
2022-08-04 22:42:41 +00:00
Jie Fu
1edc245574 8291899: Zero VM is broken on MacOS after JDK-8290840 due to os::setup_fpu() is missing
Reviewed-by: shade
2022-08-04 22:23:56 +00:00
Phil Race
6ad6b1c454 8272998: ImageIO.read() throws incorrect exception type
Reviewed-by: aivanov, dnguyen
2022-08-04 20:51:48 +00:00
Alisen Chung
90257f9505 8169187: [macosx] Aqua: java/awt/image/multiresolution/MultiresolutionIconTest.java
Reviewed-by: prr, dnguyen
2022-08-04 20:37:12 +00:00
Daniel D. Daugherty
c48cd88652 8291926: ProblemList multiple tests in -Xcomp mode due to JDK-8291649
Reviewed-by: rriggs
2022-08-04 19:49:15 +00:00
Gaurav Chaudhari
3c3256414f 8288377: [REDO] DST not applying properly with zone id offset set with TZ env variable
Reviewed-by: naoto
2022-08-04 18:49:05 +00:00
Ioi Lam
fd9ac62161 8291457: Clean up lifecycle of CDS dump-time data structures
Reviewed-by: coleenp, ccheung
2022-08-04 18:10:21 +00:00
Vicente Romero
3ba317167d 8285935: Spurious lint warning for static method accessed through instance qualifier
Reviewed-by: jlahoda
2022-08-04 17:57:28 +00:00
Quan Anh Mai
92d2982f3f 8283232: x86: Improve vector broadcast operations
Reviewed-by: kvn, jbhateja
2022-08-04 16:27:45 +00:00
Andrew Haley
966ab219b4 8291895: Remove PRAGMA_NONNULL_IGNORED from x86 and AArch64
Reviewed-by: shade
2022-08-04 16:11:01 +00:00
Sergey Tsypanov
aa557b9b01 8288327: Executable.hasRealParameterData should not be volatile
Reviewed-by: plevart
2022-08-04 15:15:49 +00:00
Peter Levart
d4a795d75a 8283276: java/io/ObjectStreamClass/ObjectStreamClassCaching.java fails with various GCs
Reviewed-by: rkennke, shade
2022-08-04 13:25:15 +00:00
Harold Seigel
a3040fcc2b 8291360: Create entry points to expose low-level class file information
Reviewed-by: dholmes, rriggs
2022-08-04 13:13:01 +00:00
Daniel Jeliński
ce61eb6ff9 8290349: IP_DONTFRAGMENT doesn't set DF bit in IPv4 header
Reviewed-by: michaelm, alanb
2022-08-04 10:52:15 +00:00
Prasanta Sadhukhan
26e5c112da 4890041: Remove TAB and Shift TAB from Popup Menu in Motif Look & Feel
Reviewed-by: azvegint, prr
2022-08-04 09:15:15 +00:00
David Holmes
0bc804d6ef 8291762: Backout JDK-8291757 from jdk/jdk
Reviewed-by: alanb
2022-08-04 07:42:48 +00:00
David Holmes
3493973186 Merge 2022-08-04 07:14:59 +00:00
Daniel Jeliński
4772354f4c 8291825: java/time/nontestng/java/time/zone/CustomZoneNameTest.java fails if defaultLocale and defaultFormatLocale are different
Reviewed-by: naoto
2022-08-04 06:57:35 +00:00
Tobias Hartmann
1a6c83b771 8291798: VMRegImpl::print_on is broken after JDK-8289060
Reviewed-by: shade, jiefu, kvn, dlong
2022-08-04 05:02:16 +00:00
Ioi Lam
b6b0317f83 8290840: Refactor the "os" class
Reviewed-by: dholmes, gziemski, stuefe, stefank
2022-08-04 01:20:29 +00:00
Daniel D. Daugherty
4cfbb3b5ec Merge 2022-08-03 22:31:18 +00:00
Justin Gu
13f0f126b9 8290370: Convert SymbolPropertyTable to ResourceHashtable
Reviewed-by: coleenp, iklam
2022-08-03 19:53:30 +00:00
Vicente Romero
67f001186b 8260892: Compilation fails: lambda parameter not visible in body when generics involved
Reviewed-by: jlahoda
2022-08-03 19:19:34 +00:00
Eric Caspole
1b66cecd31 8291729: Reduce runtime of vm.compiler microbenchmarks
Reviewed-by: kvn
2022-08-03 18:01:26 +00:00
Ao Qi
0cc49fd9ea 8291508: Fix some tests with "requires vm.jvmti & vm.continuations"
Reviewed-by: sspitsyn, lmesnik, alanb
2022-08-03 17:33:11 +00:00
Aleksey Shipilev
c89556f6cd 8291633: Build failures with GCC 11, Alpine 3 due to incompatible casts from nullptr
Reviewed-by: stuefe, mbaesken, jiefu
2022-08-03 16:43:20 +00:00
Marc R. Hoffmann
4d6e6f6741 8291822: ARM32: Build errors with GCC 11 in frame::saved_oop_result
Reviewed-by: shade, stuefe
2022-08-03 16:40:03 +00:00
Naoto Sato
e52a340d7f 8290488: IBM864 character encoding implementation bug
Reviewed-by: iris, joehw, alanb
2022-08-03 15:59:43 +00:00
Daniel Jeliński
af529be069 8285836: sun/net/www/http/KeepAliveCache/KeepAliveProperty.java failed with "RuntimeException: Failed in server"
Reviewed-by: dfuchs, jpai
2022-08-03 14:51:28 +00:00
Coleen Phillimore
b7d2bde8e3 8291733: Remove JFR events that expose hashtable
Reviewed-by: egahlin
2022-08-03 13:06:53 +00:00
David Holmes
0971d34646 Merge 2022-08-03 08:11:10 +00:00
Serguei Spitsyn
0ae8341057 8290908: misc tests fail: assert(!thread->owns_locks()) failed: must release all locks when leaving VM
Reviewed-by: cjplummer, amenkov
2022-08-02 22:41:17 +00:00
Chris Plummer
5acf2d7cb4 8291578: Remove JMX related tests from ProblemList-svc-vthreads.txt
Reviewed-by: sspitsyn, kevinw, lmesnik
2022-08-02 21:15:01 +00:00
Chris Plummer
a6564d495b 8291650: Add delay to ClassUnloadEventTest before exiting to give time for JVM to send all events before VMDeath
Reviewed-by: sspitsyn, amenkov
2022-08-02 21:13:00 +00:00
Evgeny Astigeevich
af76c0c199 8291654: AArch64: assert from JDK-8287393 causes crashes
Reviewed-by: dholmes, xliu, phh
2022-08-02 12:01:25 +00:00
Johan Sjölén
a9db5bb373 8291626: Remove Mutex::contains as it is unused
Reviewed-by: stefank, dholmes
2022-08-02 10:38:31 +00:00
Pengfei Li
a2cff2634c 8291597: [BACKOUT] JDK-8289996: Fix array range check hoisting for some scaled loop iv
Reviewed-by: kvn, thartmann
2022-08-02 06:50:55 +00:00
Weijun Wang
554f44ecb1 8282730: LdapLoginModule throw NPE from logout method after login failure
Reviewed-by: mullan
2022-08-01 22:28:30 +00:00
Coleen Phillimore
f714ac52bf 8290718: Remove ALLOCATION_SUPER_CLASS_SPEC
Reviewed-by: zgu, iklam
2022-08-01 21:26:36 +00:00
Evgeny Astigeevich
6cbc234ad1 8287393: AArch64: Remove trampoline_call1
Reviewed-by: aph, phh
2022-08-01 19:52:42 +00:00
Bill Huang
57bf603b73 8289948: Improve test coverage for XPath functions: Node Set Functions
Reviewed-by: joehw
2022-08-01 16:37:22 +00:00
Gerard Ziemski
1df77ec137 8291060: OPEN_MAX is no longer the max limit on macOS >= 10.6 for RLIMIT_NOFILE
Reviewed-by: dholmes, dcubed
2022-08-01 16:07:11 +00:00
Aleksey Shipilev
fcc119531a 8290531: Loom: Parallelize a few tests more deeply
Reviewed-by: rpressler, jpai, alanb
2022-08-01 14:20:27 +00:00
Roger Riggs
226b8e680a 8290885: java/lang/ProcessBuilder/PipelineLeaksFD.java fail: More or fewer pipes than expected
Reviewed-by: bpb, naoto, jpai
2022-08-01 13:44:21 +00:00
Matthias Baesken
464085ed90 8291558: unify print_jni_name_prefix_on and print_jni_name_suffix_on on posix platforms
Reviewed-by: dholmes, stuefe
2022-08-01 13:24:31 +00:00
Prasanta Sadhukhan
f5d1b5bda2 6463708: DefaultButtonModel.setMnemonic generates ChangeEvent for no change
Reviewed-by: azvegint, prr
2022-08-01 11:08:56 +00:00
Thomas Schatzl
30205bb289 8290966: G1: Record number of PLAB filled and number of direct allocations
Reviewed-by: sangheki, kbarrett
2022-08-01 09:53:37 +00:00
Andrew Haley
86ef7b20eb 8289046: Undefined Behaviour in x86 class Assembler
Reviewed-by: shade, kvn
2022-08-01 08:57:49 +00:00
KIRIYAMA Takuya
d61c0c79cf 8290497: some tests in com/sun/jdi fail on localized Windows platform
Reviewed-by: sspitsyn, cjplummer, amenkov
2022-08-01 08:12:25 +00:00
Thomas Stuefe
7ff19694df 8290067: Show stack dimensions in UL logging when attaching threads
Reviewed-by: dholmes, mbaesken
2022-08-01 08:03:52 +00:00
Axel Boldt-Christmas
257c71c35f 8290062: Remove nmethodLocker for nmethods on-stack
Reviewed-by: eosterlund, kvn
2022-08-01 05:23:39 +00:00
Aleksey Shipilev
d9cb410efc 8290466: Default to --with-source-date=current to avoid unmodified Hotspot recompilation
Reviewed-by: erikj, ihse
2022-07-31 18:52:16 +00:00
Aleksey Shipilev
acbe093a66 8291559: x86: compiler/vectorization/TestReverseBitsVector.java fails
Reviewed-by: kvn
2022-07-31 18:49:21 +00:00
Thomas Stuefe
32d410a1af 8290868: NMT: MallocSiteTable statistics improvements
Reviewed-by: zgu, lucy
2022-07-30 13:03:25 +00:00
Johan Sjölén
357902415d 8288904: Incorrect memory ordering in UL
Reviewed-by: rehn, dholmes
2022-07-30 07:34:39 +00:00
Joe Wang
470c0eb216 8290740: Catalog not used when the handler is null
Reviewed-by: lancea, naoto, iris
2022-07-30 01:42:05 +00:00
Yasumasa Suenaga
dd9bd31b86 8289688: jfr command hangs when it processes invalid file
Reviewed-by: egahlin
2022-07-29 23:30:58 +00:00
Jonathan Gibbons
8179a191f0 8290243: move seeTagToContent from HtmlDocletWriter to TagletWriterImpl
Reviewed-by: prappo
2022-07-29 21:55:20 +00:00
Serguei Spitsyn
15943e4242 8282666: nsk/jvmti/PopFrame/popframe004 failed with: TEST FAILED: 30 JVMTI events were generated by the function PopFrame()
Reviewed-by: lmesnik, amenkov
2022-07-29 21:49:27 +00:00
Kevin Driver
0bcf17674e 6227536: KeyGenerator.init() methods do not throw IllegalArgumentException for keysize == 0
Reviewed-by: wetmore
2022-07-29 20:30:28 +00:00
Joe Darcy
cc2861a993 8290901: Reduce use of -source in langtools tests
Reviewed-by: jjg
2022-07-29 17:35:22 +00:00
Aggelos Biboudis
64a1a08ff9 8289647: AssertionError during annotation processing of record related tests
Reviewed-by: vromero
2022-07-29 16:02:18 +00:00
Thomas Schatzl
95fc16bdfa 8290525: Move HeapRegion::_compaction_top to G1FullCollector
Reviewed-by: kbarrett, sangheki
2022-07-29 15:45:25 +00:00
Thomas Schatzl
f58e08e258 8290715: Fix incorrect uses of G1CollectedHeap::heap_region_containing()
Reviewed-by: kbarrett, sangheki
2022-07-29 15:43:43 +00:00
Boris Ulasevich
18cd16d2ea 8291003: ARM32: constant_table.size assertion
Reviewed-by: shade
2022-07-29 06:21:48 +00:00
Bill Huang
cfe9026fe0 8289511: Improve test coverage for XPath Axes: child
Reviewed-by: joehw
2022-07-29 01:42:19 +00:00
Magnus Ihse Bursie
eeac3da795 8289755: Remove --enable-reproducible-build from jib profile
Reviewed-by: wetmore, erikj
2022-07-28 22:34:03 +00:00
Bradford Wetmore
791fc5791a 6383195: javax.crypto.spec.PBEKeySpec is not thread safe
Reviewed-by: weijun
2022-07-28 22:04:44 +00:00
Boris Ulasevich
e052d7f4bc 8288477: nmethod header size reduction
Reviewed-by: kvn, never
2022-07-28 19:49:31 +00:00
Jorn Vernee
54a2c5a6d1 8290059: Do not use std::thread in panama tests
Reviewed-by: mcimadamore, stuefe, erikj
2022-07-28 14:53:26 +00:00
Richard Reingruber
5214a17d81 8291479: ProblemList compiler/rangechecks/TestRangeCheckHoistingScaledIV.java on ppc64le
Reviewed-by: thartmann, goetz
2022-07-28 14:07:18 +00:00
Jatin Bhateja
471a427d10 8287794: Reverse*VNode::Identity problem
Reviewed-by: thartmann, xgong
2022-07-28 11:08:38 +00:00
Matthias Baesken
5d1ad39684 8290839: jdk/jfr/event/compiler/TestJitRestart.java failed with "RuntimeException: No JIT restart event found: expected true, was false"
Reviewed-by: egahlin, lucy
2022-07-28 10:48:45 +00:00
Leslie Zhai
97fc8deb1d 8291106: ZPlatformGranuleSizeShift is redundant
Reviewed-by: eosterlund, jiefu
2022-07-28 08:58:29 +00:00
Aleksey Shipilev
dd69a68d09 8291000: C2: Purge LoadPLocked and Store*Conditional nodes
Reviewed-by: eosterlund, kvn
2022-07-28 08:15:53 +00:00
Matthias Baesken
07f0612c9a 8290532: Adjust PKCS11Exception and handle more PKCS11 error codes
Reviewed-by: valeriep
2022-07-28 07:30:51 +00:00
Prasanta Sadhukhan
93f96d8c9e 8290399: [macos] Aqua LAF does not fire an action event if combo box menu is displayed
Reviewed-by: azvegint, prr
2022-07-28 06:44:49 +00:00
Jatin Bhateja
5d82d67a9e 8290034: Auto vectorize reverse bit operations.
Reviewed-by: xgong, kvn
2022-07-28 04:43:01 +00:00
Leonid Mesnik
348a0521e1 8290846: sun/tools/jstatd/JstatdTest* tests should use VM options
Reviewed-by: cjplummer, sspitsyn
2022-07-28 00:04:17 +00:00
Ioi Lam
bc6a3c7b83 8290739: Simplify storage of dump-time class information
Reviewed-by: ccheung
2022-07-27 23:52:30 +00:00
Hao Sun
16a127524c 8290943: Fix several IR test issues on SVE after JDK-8289801
Reviewed-by: jiefu, adinn
2022-07-27 23:42:11 +00:00
Pavel Rappo
c1a3347f17 8291358: Fix the "overridding" typo
Reviewed-by: rriggs
2022-07-27 21:48:59 +00:00
Thomas Schatzl
37b08c7bf9 8237913: G1CollectedHeap::heap_region_containing shouldn't be a template
Reviewed-by: kbarrett, sangheki
2022-07-27 20:05:06 +00:00
Aleksey Shipilev
dc74ea21f1 8291048: x86: compiler/c2/irTests/TestAutoVectorization2DArray.java fails with lower SSE
Reviewed-by: kvn, jiefu
2022-07-27 16:58:49 +00:00
Roger Riggs
c1040897cd 8290848: LoadLibraryUnload.java still fails with "Too few cleared WeakReferences"
Reviewed-by: mchung, jpai
2022-07-27 14:47:17 +00:00
David Holmes
923462467e Merge 2022-07-27 14:07:11 +00:00
Axel Boldt-Christmas
2f3e494b80 8290074: Remove implicit arguments for RegisterMap constructor
Reviewed-by: eosterlund, tschatzl
2022-07-27 12:43:18 +00:00
Thomas Schatzl
e804236f05 8291289: gc/TestPLABAdaptToMinTLABSize fails after JDK-8289137
Reviewed-by: shade
2022-07-27 12:39:28 +00:00
Zhengyu Gu
adaf3b9014 8291056: Remove unused Generation::par_promote*()
Reviewed-by: kbarrett
2022-07-27 12:25:35 +00:00
Harold Seigel
48b77a6969 8285792: Posix signal handler modification checking issues.
Reviewed-by: dholmes, erikj
2022-07-27 12:22:55 +00:00
Julian Waters
8ec3197683 8291002: Rename Method::build_interpreter_method_data to Method::build_profiling_method_data
Reviewed-by: kvn, thartmann
2022-07-27 11:52:10 +00:00
Tobias Hartmann
61e072d11c 8290705: StringConcat::validate_mem_flow asserts with "unexpected user: StoreI"
Reviewed-by: kvn, xliu
2022-07-27 10:43:52 +00:00
Eric Liu
2bd90c2149 8284990: AArch64: Remove STXR_PREFETCH from CPU features
Reviewed-by: aph, ngasson, njian
2022-07-27 09:38:04 +00:00
Thomas Schatzl
2a1d9cfead 8289137: Automatically adapt Young/OldPLABSize and when setting only MinTLABSize
Reviewed-by: iwalulya, sangheki
2022-07-27 08:01:05 +00:00
Mark Powers
4d796ee8ab 8290887: Unused private method in TrustManagerFactoryImpl
Reviewed-by: weijun, xuelei, mullan
2022-07-26 20:23:55 +00:00
Eric Caspole
f0f78a9125 8290894: Reduce runtime of vm.lang microbenchmarks
Reviewed-by: rriggs
2022-07-26 20:06:35 +00:00
Leonid Mesnik
1451642317 8244976: vmTestbase/nsk/jdi/Event/request/request001.java doesn' initialize eName
Reviewed-by: shade, sspitsyn, cjplummer
2022-07-26 19:02:47 +00:00
Aleksey Shipilev
8159a1ab70 8290706: Remove the support for inline contiguous allocations
Reviewed-by: eosterlund, aph, rrich, fyang, thartmann
2022-07-26 17:19:10 +00:00
Joe Darcy
7318b22209 8289551: Conversions between bit representations of half precision values and floats
Reviewed-by: psandoz, jrose
2022-07-26 16:54:32 +00:00
longxu0509
2ae8e31183 8290669: Fix wording in sun.security.ec
Reviewed-by: mullan
2022-07-26 15:04:49 +00:00
Pengfei Li
893909558b 8289996: Fix array range check hoisting for some scaled loop iv
Co-authored-by: John R Rose <jrose@openjdk.org>
Reviewed-by: roland, kvn, thartmann
2022-07-26 13:45:38 +00:00
Thomas Schatzl
da9cc5c9f4 8290806: Only add eager reclaim task to G1 post evacuate tasks if there were candidates
Reviewed-by: kbarrett, sangheki
2022-07-26 13:29:05 +00:00
Evgeny Astigeevich
330adc03a9 8290969: DumpClassListCLDClosure incorrectly uses ResizeableResourceHashtable
Reviewed-by: iklam, ccheung
2022-07-26 12:10:56 +00:00
Roger Riggs
28bbdc5ebb 8290972: ProblemList java/lang/ProcessBuilder/PipelineLeaksFD.java
Reviewed-by: iris, jpai
2022-07-26 11:53:50 +00:00
Xiaohong Gong
a6faf5d33a 8290485: [vector] REVERSE_BYTES for byte type should not emit any instructions
Reviewed-by: thartmann, kvn
2022-07-26 02:56:26 +00:00
Julian Waters
0ca5cb13a3 8290834: Improve potentially confusing documentation on collection of profiling information
Reviewed-by: thartmann, kvn, dlong
2022-07-25 22:46:19 +00:00
Alexey Semenyuk
7c3cfd13e3 8290557: tools/jpackage/share/AddLauncherTest.java#id1 failed with "ERROR: Failed: Check icon file"
Reviewed-by: almatvee
2022-07-25 21:51:26 +00:00
Andrey Turbanov
0ca74f538e 8289659: Refactor I/O stream copying to use InputStream.readAllBytes in X509CertPath
Reviewed-by: attila, weijun
2022-07-25 14:10:26 +00:00
Andrew Haley
1e270ea4f5 8290780: AArch64: Crash in c2 nmethod running RunThese30M.java
Reviewed-by: dlong
2022-07-25 12:40:21 +00:00
Kim Barrett
b17269ad52 8290959: Consistently use "grey" instead of "gray" in GC code
Reviewed-by: tschatzl
2022-07-25 12:26:04 +00:00
Axel Boldt-Christmas
350808a5a3 8290459: Remove unused GCCause enums
Reviewed-by: tschatzl, kbarrett
2022-07-25 11:03:48 +00:00
Prasanta Sadhukhan
d0c365a7b9 8170794: [macosx] Error when using setDesktopManager on a JDesktopPane on MacOS X with Look and Feel Aqua
Reviewed-by: prr
2022-07-25 10:32:11 +00:00
Bhavana Kilambi
80dc6cebc9 8290730: compiler/vectorization/TestAutoVecIntMinMax.java failed with "IRViolationException: There were one or multiple IR rule failures."
Reviewed-by: jiefu, kvn, thartmann
2022-07-25 09:08:23 +00:00
Erik Österlund
228e8e94fe 8290700: Optimize AArch64 nmethod entry barriers
Reviewed-by: kvn, dlong
2022-07-25 07:08:46 +00:00
Thomas Stuefe
852e71d9f0 8290870: NMT: Increase MallocSiteTable size and allocate it only when needed
Reviewed-by: zgu, dholmes
2022-07-25 05:18:34 +00:00
Man Cao
0599a05f8c 8290900: Build failure with Clang 14+ due to function warning attribute
Reviewed-by: kbarrett
2022-07-23 02:54:07 +00:00
Shruthi
987656d690 8289471: Issue in Initialization of keys in ErrorMsg.java and XPATHErrorResources.java
Reviewed-by: joehw
2022-07-22 22:10:43 +00:00
Roger Riggs
2660a9268b 8290893: ProblemList java/lang/ClassLoader/loadLibraryUnload/LoadLibraryUnload
Reviewed-by: dcubed
2022-07-22 20:11:25 +00:00
SWinxy
ef8486a1a4 8286270: [java.desktop] Replace color search in XColors with a switch statement
Reviewed-by: prr, azvegint
2022-07-22 18:36:58 +00:00
Andrey Turbanov
62f22633d1 8290861: Remove unused field URLJarFile.BUF_SIZE
Reviewed-by: jpai, djelinski, aefimov
2022-07-22 15:55:58 +00:00
Erik Österlund
b28f9dab80 8290688: Optimize x86_64 nmethod entry barriers
Reviewed-by: kvn, rrich
2022-07-22 14:42:42 +00:00
Zhengyu Gu
54854d9300 8256811: Delayed/missed jdwp class unloading events
Co-authored-by: Chris Plummer <cjplummer@openjdk.org>
Reviewed-by: cjplummer, coleenp, sspitsyn
2022-07-22 12:27:04 +00:00
Sergey Tsypanov
75c1e99968 8289572: InputStream wrapping with BufferedInputStream is redundant in HttpTimestamper
Reviewed-by: jpai, mullan
2022-07-22 11:50:28 +00:00
Aleksey Shipilev
7841e5cc38 8290464: Optimize ResourceArea zapping on ResourceMark release
Reviewed-by: stuefe, zgu, coleenp
2022-07-22 11:12:49 +00:00
David Holmes
e9f97b2e8c 8290489: Initial nroff manpage generation for JDK 20
Reviewed-by: dcubed
2022-07-22 04:40:15 +00:00
Chris Plummer
59d85bad34 8290687: serviceability/sa/TestClassDump.java could leave files owned by root on macOS
Reviewed-by: amenkov, lmesnik
2022-07-21 21:34:26 +00:00
Ioi Lam
66f59c2c16 8290731: Clean up CDS handling of LambdaForm Species classes
Reviewed-by: ccheung
2022-07-21 21:32:30 +00:00
Julian Waters
0dda3c14eb 8289275: Remove incorrect __declspec(dllimport) attributes from pointers in jdk.crypto.cryptoki
Reviewed-by: valeriep
2022-07-21 19:11:40 +00:00
Roger Riggs
620c8a045f 8289643: File descriptor leak with ProcessBuilder.startPipeline
Reviewed-by: alanb, jpai, lancea
2022-07-21 18:57:23 +00:00
Alex Menkov
7ec0132ad3 8286844: com/sun/jdi/RedefineCrossEvent.java failed with 1 threads completed while VM suspended
Reviewed-by: sspitsyn, cjplummer
2022-07-21 18:14:40 +00:00
Ryan Ernst
80bd8c3549 8290504: Close streams returned by ModuleReader::list
Reviewed-by: mchung, chegar
2022-07-21 18:01:25 +00:00
Eric Caspole
15f4b30459 8290115: ArrayCopyObject JMH has wrong package
Reviewed-by: rriggs
2022-07-21 17:49:22 +00:00
Jonathan Gibbons
4c1cd66d22 8288368: simplify code in ValueTaglet, remove redundant code
Reviewed-by: prappo
2022-07-21 16:26:52 +00:00
Daniel D. Daugherty
6346c3338c 8290826: validate-source failures after JDK-8290016
Reviewed-by: azvegint
2022-07-21 15:43:00 +00:00
Tobias Holenstein
604a115a5b 8290016: IGV: Fix graph panning when mouse dragged outside of window
Reviewed-by: kvn, thartmann
2022-07-21 14:54:27 +00:00
Aleksey Shipilev
59e495e4d3 8290704: x86: TemplateTable::_new should not call eden_allocate() without contiguous allocs enabled
Reviewed-by: kvn, thartmann, coleenp
2022-07-21 13:23:10 +00:00
Michael McMahon
799a2c844d 8276561: URL$DefaultFactory::PREFIX should be static final
Reviewed-by: djelinski, jpai
2022-07-21 11:03:48 +00:00
Andrey Turbanov
52cc6cd063 8288723: Avoid redundant ConcurrentHashMap.get call in java.time
Reviewed-by: attila, rriggs
2022-07-21 10:22:58 +00:00
Ryan Ernst
3582fd9e93 8290359: Ensure that all directory streams are closed in jdk.link
Reviewed-by: chegar
2022-07-21 06:19:55 +00:00
Ryan Ernst
53fc495e3a 8290316: Ensure that all directory streams are closed in java.base
Reviewed-by: chegar
2022-07-21 06:19:00 +00:00
Ryan Ernst
db1e44c2dd 8290353: ModuleReader::list specification should suggest closing the returned stream
Reviewed-by: chegar, mchung, mr, jpai
2022-07-21 06:16:03 +00:00
Ioi Lam
2c73a1f39d 8290324: Move atomic operations outside of os_xxx.hpp
Reviewed-by: dholmes, kbarrett
2022-07-21 05:12:10 +00:00
Vladimir Kozlov
e8975be94b 8290746: ProblemList compiler/vectorization/TestAutoVecIntMinMax.java
Reviewed-by: dholmes
2022-07-21 00:46:11 +00:00
Daniel D. Daugherty
9c19d89c9c Merge 2022-07-20 22:56:17 +00:00
Leonid Mesnik
b1817a30a0 8290468: Remove gc/gctests/mallocWithGC tests
Reviewed-by: kbarrett, tschatzl
2022-07-20 19:19:57 +00:00
Thomas Schatzl
eeb345a286 8290533: Remove G1ConcurrentMark::mark_in_bitmap(uint, HeapRegion*,oop)
Reviewed-by: sangheki, kbarrett
2022-07-20 16:16:57 +00:00
Bhavana Kilambi
89458e36af 8288107: Auto-vectorization for integer min/max
Reviewed-by: kvn, ngasson
2022-07-20 15:36:39 +00:00
Tobias Holenstein
3d3e3df8f0 8290069: IGV: Highlight both graphs of difference in outline
Reviewed-by: kvn, thartmann
2022-07-20 14:33:05 +00:00
Andrew Haley
1c055076e0 8289743: AArch64: Clean up patching logic
Reviewed-by: adinn, ngasson
2022-07-20 13:00:12 +00:00
Zhengyu Gu
011958d30b 8290374: Shenandoah: Remove inaccurate comment on SBS::load_reference_barrier()
Reviewed-by: shade
2022-07-20 12:42:13 +00:00
Thomas Schatzl
984cd02dfb 8290707: runtime/cds/appcds/dynamicArchive/DynamicLambdaWithUseImplMethodHandle.java fails with "Can't find sun.hotspot.whitebox"
Reviewed-by: dholmes
2022-07-20 12:34:55 +00:00
jeremy
4b4d35289a 8264999: GeneralPath.lineTo() to itself produces jagged lines
Reviewed-by: lbourges, prr
2022-07-20 11:34:48 +00:00
Erik Österlund
43c47b1ad7 8290534: Move MacroAssembler::verified_entry to C2_MacroAssembler on x86
Reviewed-by: shade, kvn
2022-07-20 10:26:38 +00:00
Fei Yang
5425573bb4 8290496: riscv: Fix build warnings-as-errors with GCC 11
Reviewed-by: yadongwang, fjiang, shade
2022-07-20 08:26:35 +00:00
Jesper Wilhelmsson
a3e07d950a Merge 2022-07-20 07:39:01 +00:00
Aleksey Shipilev
2ea3f546c2 8290495: Micro-optimize Method::can_be_statically_bound assertions
Reviewed-by: dholmes, stuefe
2022-07-20 06:00:03 +00:00
Prasanta Sadhukhan
971479153d 8190907: Windows 10 default Korean Font Malgun Gothic available not used by GUI elements even though available without Korean Language Pack
Reviewed-by: naoto, prr
2022-07-20 05:49:40 +00:00
Jie Fu
43588648ca 8290511: compiler/vectorapi/TestMaskedMacroLogicVector.java fails IR verification
Reviewed-by: kvn, thartmann
2022-07-19 22:50:00 +00:00
Joe Wang
7b418f9aba 8287916: Address the inconsistency between the constant array and pool size
Reviewed-by: naoto, lancea, rhalade, ahgross
2022-07-19 20:55:28 +00:00
Joe Wang
41ef2b2490 8285407: Improve Xalan supports
Reviewed-by: naoto, lancea, ahgross, rhalade
2022-07-19 20:55:27 +00:00
Weijun Wang
d991ec4f9f 8282676: Improve subject handling
Reviewed-by: ahgross, mullan, rhalade
2022-07-19 20:55:27 +00:00
Lance Andersen
b7b917a0a8 8284370: Improve zlib usage
Reviewed-by: alanb, mschoene, rhalade
2022-07-19 20:55:27 +00:00
Alexander Zuev
a37465b8fa 8283190: Improve MIDI processing
Reviewed-by: prr, rhalade, psadhukhan, mschoene
2022-07-19 20:55:27 +00:00
Tobias Hartmann
632d2d2690 8281866: Enhance MethodHandle invocations
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: chagedorn
2022-07-19 20:55:27 +00:00
Tobias Hartmann
84b4e9bb41 8281859: Improve class compilation
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: chagedorn
2022-07-19 20:55:27 +00:00
Joe Wang
e7f8003edd 8272249: Better properties of loaded Properties
Reviewed-by: naoto, lancea, rhalade, mschoene
2022-07-19 20:55:27 +00:00
Aleksei Efimov
cdc1582d1d 8277608: Address IP Addressing
Reviewed-by: dfuchs, rhalade, michaelm
2022-07-19 20:55:26 +00:00
Valerie Peng
ec1d338e15 8272243: Improve DER parsing
Reviewed-by: weijun, rhalade
2022-07-19 20:55:26 +00:00
Alexey Semenyuk
c2cbeb3ee8 8290398: jpackage exe installers are not installed in jtreg tests
Reviewed-by: almatvee
2022-07-19 19:46:51 +00:00
Alexey Semenyuk
1af7c33df5 8290400: Must run exe installers in jpackage jtreg tests without UI
Reviewed-by: almatvee
2022-07-19 17:01:55 +00:00
Alexey Semenyuk
d67e7ccda5 8290402: jpackage exe uninstallers don't return correct exit code in case of failure
Reviewed-by: almatvee
2022-07-19 17:01:01 +00:00
Alexey Semenyuk
977e09489d 8283707: Support <major.minor.update.build> version format on Windows
Reviewed-by: almatvee
2022-07-19 16:59:28 +00:00
Coleen Phillimore
96a542feb2 8227060: Optimize safepoint cleanup subtask order
Reviewed-by: kbarrett, pchilanomate
2022-07-19 16:32:07 +00:00
Eric Caspole
2cb659e7f4 8290391: Reduce runtime of java.util package microbenchmarks
Reviewed-by: rriggs, redestad
2022-07-19 16:30:44 +00:00
Coleen Phillimore
bbc57483ce 8272096: Exceptions::new_exception can return wrong exception
Reviewed-by: hseigel, dholmes
2022-07-19 14:41:58 +00:00
Thomas Schatzl
a41b12f430 8290512: G1: Fix typo in allocation statistics log message
Reviewed-by: kbarrett
2022-07-19 12:40:12 +00:00
Roger Riggs
e02627ca0a 8290397: LoadLibraryUnload.java failed with "Too few cleared WeakReferences"
Reviewed-by: mchung
2022-07-19 11:51:28 +00:00
Andrey Turbanov
2ff22087f2 8289804: Remove redundant stream() call before forEach in jdk.jshell
Reviewed-by: psandoz
2022-07-19 11:32:30 +00:00
Aggelos Biboudis
f5a7de8627 8290379: Parse error with parenthesized pattern and guard using an array
Reviewed-by: jlahoda
2022-07-19 09:03:28 +00:00
Matthias Baesken
612d8c6cb1 8290456: remove os::print_statistics()
Reviewed-by: coleenp
2022-07-19 07:15:08 +00:00
Thomas Stuefe
d7f0de272c 8290460: Alpine: disable some panama tests that rely on std::thread
Reviewed-by: jvernee, dholmes
2022-07-19 07:13:18 +00:00
Matthias Baesken
dfbc6919e1 8289524: Add JFR JIT restart event
Reviewed-by: kvn, lucy
2022-07-19 07:07:41 +00:00
George Adams
4e6cd67fec 8290000: Bump macOS GitHub actions to macOS 11
Reviewed-by: shade, clanger
2022-07-19 06:29:43 +00:00
Hollow Man
af86cd3d8c 8290463: Fix several comment typos in sun.security.ec
Reviewed-by: xuelei
2022-07-19 01:49:20 +00:00
Jesper Wilhelmsson
6cd1c0c14e Merge 2022-07-18 22:51:25 +00:00
Jie Fu
4a4d8ed83b 8289801: [IR Framework] Add flags to whitelist which can be used to simulate a specific machine setup like UseAVX
Reviewed-by: kvn, xgong, thartmann
2022-07-18 22:49:17 +00:00
Leonid Mesnik
5a96a5db13 8289612: Change hotspot/jtreg tests to not use Thread.stop
Reviewed-by: dholmes, dcubed
2022-07-18 21:53:41 +00:00
Mark Powers
b65f7ec2f1 4887998: Use Integer.rotateLeft() and rotateRight() in crypto implementations
Reviewed-by: weijun
2022-07-18 20:50:54 +00:00
Alexander Zuev
6c8d0e617f 8282526: Default icon is not painted properly
Reviewed-by: aivanov, prr
2022-07-18 20:33:19 +00:00
Srinivas Mandalika
e72742eeb5 8286172: Create an automated test for JDK-4516019
Reviewed-by: prr, achung
2022-07-18 17:18:53 +00:00
Srinivas Mandalika
b9de0a7556 8284524: Create an automated test for JDK-4422362
Reviewed-by: prr
2022-07-18 17:17:50 +00:00
Srinivas Mandalika
5ae4320921 8284767: Create an automated test for JDK-4422535
Reviewed-by: prr, achung
2022-07-18 17:16:44 +00:00
Sergey Tsypanov
efed7a7f65 8289908: Skip bounds check for cases when String is constructed from entirely used byte[]
Reviewed-by: prr, rriggs, aturbanov
2022-07-18 17:15:46 +00:00
Zhengyu Gu
b2010a7481 8287805: Shenandoah: consolidate evacuate-update-root closures
Reviewed-by: shade
2022-07-18 16:54:08 +00:00
Phil Race
ea8b75cfe4 8290334: Update FreeType to 2.12.1
Reviewed-by: serb, azvegint
2022-07-18 16:05:03 +00:00
Coleen Phillimore
6882f0eb39 8290013: serviceability/jvmti/GetLocalVariable/GetLocalWithoutSuspendTest.java failed "assert(!in_vm) failed: Undersized StackShadowPages"
Reviewed-by: lmesnik
2022-07-18 15:04:08 +00:00
Fei Yang
92067e2003 8290137: riscv: small refactoring for add_memory_int32/64
Reviewed-by: yadongwang, fjiang, shade
2022-07-18 13:01:35 +00:00
Fei Gao
87340fd540 8288883: C2: assert(allow_address || t != T_ADDRESS) failed after JDK-8283091
Reviewed-by: kvn, mdoerr
2022-07-18 05:54:51 +00:00
Ajit Ghaisas
bc7a1ea249 8288948: Few J2DBench tests indicate lower primitive drawing performance with metal rendering pipeline
Reviewed-by: avu, prr
2022-07-18 05:18:37 +00:00
Ioi Lam
84f23149e2 8286030: Avoid JVM crash when containers share the same /tmp dir
Reviewed-by: stuefe, sgehwolf
2022-07-18 04:10:08 +00:00
Feilong Jiang
4dd236b40a 8290280: riscv: Clean up stack and register handling in interpreter
Reviewed-by: fyang
2022-07-18 02:12:34 +00:00
Jesper Wilhelmsson
522b65743c Merge 2022-07-17 15:11:21 +00:00
Daniel D. Daugherty
441c33f0b1 8289003: JavaThread::check_is_terminated() implementation should rely on Thread-SMR
Reviewed-by: dholmes, pchilanomate
2022-07-16 13:17:52 +00:00
Jatin Bhateja
2342684f2c 8290066: Remove KNL specific handling for new CPU target check in IR annotation
Reviewed-by: kvn, sviswanathan
2022-07-16 01:18:30 +00:00
Ioi Lam
0143cf1d46 8290333: Remove os_share_*.hpp
Reviewed-by: dholmes, jiefu
2022-07-16 01:03:16 +00:00
Roger Riggs
0184f46bdf 8289919: [test] LoadLibraryUnloadTest.java failed with "Failed to unload native library"
Reviewed-by: mchung
2022-07-15 18:27:44 +00:00
Mandy Chung
cca91f7bcc 8290327: Remove java/lang/reflect/callerCache/ReflectionCallerCacheTest.java from ProblemList-Xcomp.txt
Reviewed-by: jpai
2022-07-15 18:11:18 +00:00
Thomas Schatzl
b4e2ce0094 8290366: Remove unused during_conc_mark parameter in HeapRegion::note_self_forwarding_removal_start
Reviewed-by: ayang
2022-07-15 13:58:17 +00:00
Vicente Romero
f3abb82989 8268312: Compilation error with nested generic functional interface
Reviewed-by: mcimadamore
2022-07-15 13:06:03 +00:00
Yoshiki Sato
92deab5465 8028265: Add legacy tz tests to OpenJDK
Reviewed-by: coffeys, naoto
2022-07-15 07:16:14 +00:00
Vladimir Kozlov
70fce07a38 8290246: test fails "assert(init != __null) failed: initialization not found"
Reviewed-by: dlong, iveresov
2022-07-15 05:07:21 +00:00
Thomas Schatzl
757a742ac7 8290177: Improve documentation in G1MMUTracker
Reviewed-by: iwalulya, ayang
2022-07-14 21:04:50 +00:00
Doug Lea
890bcedd49 8290264: java/util/concurrent/locks/Lock/OOMEInAQS.java fails with "exit code: 0"
Reviewed-by: dholmes, alanb, dcubed
2022-07-14 19:53:31 +00:00
Jesper Wilhelmsson
3ad3950560 Merge 2022-07-14 16:29:51 +00:00
Kim Barrett
3bb2dc8e7f 8290290: Remove addition of TimeInstants
Reviewed-by: stuefe, dholmes
2022-07-14 14:37:10 +00:00
Albert Mingkun Yang
c7c20661ee 8290221: G1: Merge multiple calls of get_next_marked_addr in HeapRegion::oops_on_memregion_iterate_in_unparsable
Reviewed-by: tschatzl, iwalulya
2022-07-14 08:47:29 +00:00
Jie Fu
be58cbc417 8290269: gc/shenandoah/TestVerifyJCStress.java fails due to invalid tag: required after JDK-8290023
Reviewed-by: tschatzl
2022-07-14 08:31:05 +00:00
Albert Mingkun Yang
109e21af66 8290080: G1: Remove unnecessary is-obj-dead check in HeapRegion::do_oops_on_memregion_in_humongous
Reviewed-by: tschatzl, iwalulya
2022-07-14 07:56:49 +00:00
KIRIYAMA Takuya
adf40d25a1 8290149: java/nio/file/Files/probeContentType/Basic.java fails on Windows Server 2019/2022
Reviewed-by: jpai, lancea
2022-07-14 07:00:33 +00:00
Daniel Jeliński
292d909e81 8290178: failure_handler: run netstat without name lookups
Reviewed-by: jpai, dfuchs, msheppar, lmesnik
2022-07-14 06:36:57 +00:00
Jesper Wilhelmsson
a7f83582d3 Merge 2022-07-14 06:19:40 +00:00
Andrey Turbanov
02fae60740 8288067: Avoid redundant HashMap.containsKey call in Type1Font.expandAbbreviation
Reviewed-by: attila, prr
2022-07-14 06:10:28 +00:00
Ichiroh Takiguchi
5d588eda97 8290218: AIX build failure by JDK-8289780
Reviewed-by: iklam, stuefe
2022-07-14 04:35:54 +00:00
Feilong Jiang
3471ac9a90 8290164: compiler/runtime/TestConstantsInError.java fails on riscv
Reviewed-by: fyang, yadongwang
2022-07-14 03:32:52 +00:00
Bill Huang
dbab827bee 8249834: java/util/ArrayList/Bug8146568.java and j/u/Vector/Bug8148174.java use @ignore w/o bug-id
Reviewed-by: jpai
2022-07-14 01:31:34 +00:00
lawrence.andrews
3216d198f3 8289559: java/awt/a11y/AccessibleJPopupMenuTest.java test fails with java.lang.NullPointerException
Reviewed-by: serb
2022-07-13 22:42:13 +00:00
Sergey Tsypanov
c83fcbd18f 8290079: Reduce interaction with volatile in static initializer of BigInteger
Reviewed-by: jpai, rriggs, darcy
2022-07-13 19:36:50 +00:00
Doug Simon
74ac5df96f 8290234: [JVMCI] use JVMCIKlassHandle to protect raw Klass* values from concurrent G1 scanning
Reviewed-by: kvn, never
2022-07-13 19:15:53 +00:00
Thomas Schatzl
5e3ecff7a6 8290253: gc/g1/TestVerificationInConcurrentCycle.java#id1 fails with "Error. can't find sun.hotspot.WhiteBox in test directory or libraries"
Reviewed-by: dcubed
2022-07-13 18:31:03 +00:00
Doug Lea
535804554d 8066859: java/lang/ref/OOMEInReferenceHandler.java failed with java.lang.Exception: Reference Handler thread died
Reviewed-by: alanb
2022-07-13 18:05:42 +00:00
Thomas Schatzl
2583feb21b 8290023: Remove use of IgnoreUnrecognizedVMOptions in gc tests
Reviewed-by: ayang, lkorinth, kbarrett
2022-07-13 16:08:59 +00:00
Brian Burkhalter
44fb92e2aa 8290197: test/jdk/java/nio/file/Files/probeContentType/Basic.java fails on some systems for the ".rar" extension
Reviewed-by: lancea, dfuchs, jpai
2022-07-13 15:13:27 +00:00
Alan Bateman
f528124f57 8289284: jdk.tracePinnedThreads output confusing when pinned due to native frame
Reviewed-by: jpai, mchung
2022-07-13 15:03:37 +00:00
Jonathan Gibbons
572c14efc6 8288624: Cleanup CommentHelper.getText0
Reviewed-by: hannesw
2022-07-13 14:45:04 +00:00
Prasanta Sadhukhan
6e18883d8f 8290162: Reset recursion counter missed in fix of JDK-8224267
Reviewed-by: prr
2022-07-13 05:06:04 +00:00
Jayashree Huttanagoudar
31f7fc043b 8283082: sun.security.x509.X509CertImpl.delete("x509.info.validity") nulls out info field
Reviewed-by: weijun
2022-07-12 20:12:22 +00:00
Jesper Wilhelmsson
d9ca438d06 Merge 2022-07-12 16:16:16 +00:00
Ludvig Janiuk
e8568b890a 8290020: Deadlock in leakprofiler::emit_events during shutdown
Reviewed-by: mgronlun, dholmes, egahlin
2022-07-12 15:54:36 +00:00
Ralf Schmelter
7f0e9bd632 8289745: JfrStructCopyFailed uses heap words instead of bytes for object sizes
Reviewed-by: mgronlun, stuefe
2022-07-12 14:53:46 +00:00
Ralf Schmelter
728157fa03 8289917: Metadata for regionsRefilled of G1EvacuationStatistics event is wrong
Reviewed-by: tschatzl, mgronlun, stuefe, egahlin
2022-07-12 14:51:55 +00:00
Erik Gahlin
0e906975a8 8290133: JFR: Remove unused methods in Bits.java
Reviewed-by: mgronlun
2022-07-12 14:14:56 +00:00
Ryan Ernst
ea12615d2f 8288984: Simplification in java.lang.Runtime::exit
Reviewed-by: dholmes, chegar, alanb, kbarrett
2022-07-12 13:50:36 +00:00
Martin Doerr
393dc7ade7 8290082: [PPC64] ZGC C2 load barrier stub needs to preserve vector registers
Reviewed-by: eosterlund, rrich
2022-07-12 13:31:51 +00:00
Matthias Baesken
e5491a2605 8289910: unify os::message_box across posix platforms
Reviewed-by: iklam, dholmes
2022-07-12 12:10:28 +00:00
Daniel Jeliński
04c47da118 8289768: Clean up unused code
Reviewed-by: dfuchs, lancea, weijun, naoto, cjplummer, alanb, michaelm, chegar
2022-07-12 11:30:17 +00:00
Daniel Fuchs
3b9059a147 8290083: ResponseBodyBeforeError: AssertionError or SSLException: Unsupported or unrecognized SSL message
Reviewed-by: jpai
2022-07-12 09:59:29 +00:00
Phil Race
f42dab8592 8289853: Update HarfBuzz to 4.4.1
Reviewed-by: serb, azvegint
2022-07-11 19:19:27 +00:00
Doug Simon
21db9a507b 8290065: [JVMCI] only check HotSpotCompiledCode stream is empty if installation succeeds
Reviewed-by: kvn
2022-07-11 16:47:05 +00:00
Jesper Wilhelmsson
c79baaa811 Merge 2022-07-11 16:15:49 +00:00
Coleen Phillimore
0c1aa2bc8a 8289184: runtime/ClassUnload/DictionaryDependsTest.java failed with "Test failed: should be unloaded"
Reviewed-by: lmesnik, hseigel
2022-07-11 15:34:17 +00:00
Calvin Cheung
c33fa55cf8 8274235: -Xshare:dump should not call vm_direct_exit
Reviewed-by: iklam, dholmes
2022-07-11 15:33:18 +00:00
Pavel Rappo
59980ac8e4 8288309: Rename the "testTagInheritence" directory
Reviewed-by: hannesw
2022-07-11 15:31:22 +00:00
Alan Bateman
fc01666a58 8290002: (se) AssertionError in SelectorImpl.implCloseSelector
Reviewed-by: michaelm
2022-07-11 14:41:13 +00:00
Thomas Stuefe
95c8022958 8290046: NMT: Remove unused MallocSiteTable::reset()
Reviewed-by: jiefu, zgu
2022-07-11 14:07:12 +00:00
Coleen Phillimore
0c37008917 8275662: remove test/lib/sun/hotspot
Reviewed-by: mseledtsov, sspitsyn, lmesnik
2022-07-11 13:07:03 +00:00
Prasanta Sadhukhan
46251bc6e2 8224267: JOptionPane message string with 5000+ newlines produces StackOverflowError
Reviewed-by: tr, aivanov
2022-07-11 11:35:32 +00:00
Aggelos Biboudis
bba6be79e0 8269674: Improve testing of parenthesized patterns
Reviewed-by: jlahoda
2022-07-11 11:13:55 +00:00
Koichi Sakata
2579373dd0 8280472: Don't mix legacy logging with UL
Reviewed-by: dholmes, mgronlun
2022-07-11 09:24:16 +00:00
Thomas Schatzl
0225eb434c 8290018: Remove dead declarations in G1BlockOffsetTablePart
Reviewed-by: ayang
2022-07-11 07:59:00 +00:00
Thomas Schatzl
e25982071d 8290019: Refactor HeapRegion::oops_on_memregion_iterate()
Reviewed-by: ayang, iwalulya
2022-07-11 07:58:07 +00:00
Thomas Schatzl
4ab77ac60d 8290017: Directly call HeapRegion::block_start in G1CMObjArrayProcessor::process_slice
Reviewed-by: ayang, iwalulya
2022-07-11 07:36:21 +00:00
Ioi Lam
e9d9cc6d0a 8290027: Move inline functions from vm_version_x86.hpp to cpp
Reviewed-by: kbarrett, dholmes
2022-07-11 05:21:01 +00:00
Andrey Turbanov
87aa3ce03e 8289274: Cleanup unnecessary null comparison before instanceof check in security modules
Reviewed-by: mullan
2022-07-09 17:59:43 +00:00
Jatin Bhateja
81ee7d28f8 8289186: Support predicated vector load/store operations over X86 AVX2 targets.
Reviewed-by: xgong, kvn
2022-07-09 15:13:25 +00:00
Ioi Lam
3c08e6b311 8289780: Avoid formatting stub names when Forte is not enabled
Reviewed-by: dholmes, coleenp, sspitsyn
2022-07-09 03:47:20 +00:00
Jonathan Gibbons
54b4576f78 8288699: cleanup HTML tree in HtmlDocletWriter.commentTagsToContent
Reviewed-by: hannesw
2022-07-08 19:33:03 +00:00
Lance Andersen
6aaf141f61 8289984: Files:isDirectory and isRegularFile methods not throwing SecurityException
Reviewed-by: iris, alanb
2022-07-08 18:56:04 +00:00
Weijun Wang
1877533f75 6522064: Aliases from Microsoft CryptoAPI has bad character encoding
Reviewed-by: coffeys, hchao
2022-07-08 18:38:08 +00:00
Vicente Romero
9c86c82091 8282714: synthetic arguments are being added to the constructors of static local classes
Reviewed-by: jlahoda
2022-07-08 17:24:27 +00:00
Coleen Phillimore
e7795851d2 8271707: migrate tests to use jdk.test.whitebox.WhiteBox
Reviewed-by: lmesnik, dholmes
2022-07-08 15:55:14 +00:00
Vladimir Kempik
d852e99ae9 8289697: buffer overflow in MTLVertexCache.m: MTLVertexCache_AddGlyphQuad
Reviewed-by: prr
2022-07-08 09:14:51 +00:00
Dmitry Chuyko
a13af65043 8282322: AArch64: Provide a means to eliminate all STREX family of instructions
Reviewed-by: ngasson, aph
2022-07-08 08:55:13 +00:00
Thomas Schatzl
f1967cfaab 8289997: gc/g1/TestVerificationInConcurrentCycle.java fails due to use of debug-only option
Reviewed-by: lkorinth
2022-07-08 08:49:17 +00:00
Thomas Schatzl
1b8f466dba 8289740: Add verification testing during all concurrent phases in G1
Reviewed-by: iwalulya, ayang
2022-07-08 07:15:56 +00:00
Robbin Ehn
ac399e9777 8286957: Held monitor count
Reviewed-by: rpressler, eosterlund
2022-07-08 07:12:19 +00:00
Ioi Lam
1fec62f299 8289710: Move Suspend/Resume classes out of os.hpp
Reviewed-by: dholmes, coleenp
2022-07-08 05:39:24 +00:00
Jesper Wilhelmsson
01b9f95c62 Merge 2022-07-08 02:07:36 +00:00
Yasumasa Suenaga
3f1174aa47 8289646: configure script failed on WSL
Reviewed-by: ihse
2022-07-08 00:04:46 +00:00
Mark Powers
f804f2ce8e 8284851: Update javax.crypto files to use proper javadoc for mentioned classes
Reviewed-by: weijun, valeriep
2022-07-07 23:20:58 +00:00
Coleen Phillimore
8cdead0c94 8278923: Document Klass::is_loader_alive
Reviewed-by: dholmes, iklam
2022-07-07 20:28:34 +00:00
Coleen Phillimore
f93beacd2f 8252329: runtime/LoadClass/TestResize.java timed out
Reviewed-by: hseigel, iklam
2022-07-07 20:27:31 +00:00
Zdenek Zambersky
3e60e82814 8289301: P11Cipher should not throw out of bounds exception during padding
Reviewed-by: valeriep
2022-07-07 18:18:04 +00:00
Thomas Schatzl
f7b183059a 8289538: Make G1BlockOffsetTablePart unaware of block sizes
Reviewed-by: ayang, iwalulya
2022-07-07 18:08:43 +00:00
Ioi Lam
5564effe9c 8289763: Remove NULL check in CDSProtectionDomain::init_security_info()
Reviewed-by: ccheung, coleenp
2022-07-07 17:29:25 +00:00
Alex Kasko
a694e9e34d 8288838: jpackage: file association additional arguments
Reviewed-by: asemenyuk, almatvee
2022-07-07 16:45:35 +00:00
Thomas Schatzl
95e3190d96 8210708: Use single mark bitmap in G1
Co-authored-by: Stefan Johansson <sjohanss@openjdk.org>
Co-authored-by: Ivan Walulya <iwalulya@openjdk.org>
Reviewed-by: iwalulya, ayang
2022-07-07 15:46:05 +00:00
Coleen Phillimore
8e7b45b820 8282986: Remove "system" in boot class path names
Reviewed-by: iklam, dholmes
2022-07-07 15:27:55 +00:00
Ivan Walulya
74ca6ca25b 8289800: G1: G1CollectionSet::finalize_young_part clears survivor list too early
Reviewed-by: ayang, tschatzl
2022-07-07 15:09:30 +00:00
Justin Gu
86f63f9703 8289164: Convert ResolutionErrorTable to use ResourceHashtable
Reviewed-by: iklam, coleenp
2022-07-07 14:57:24 +00:00
Albert Mingkun Yang
013a5eeeb9 8137280: Remove eager reclaim of humongous controls
Reviewed-by: tschatzl, iwalulya
2022-07-07 13:53:24 +00:00
Jie Fu
77ad998b6e 8289778: ZGC: incorrect use of os::free() for mountpoint string handling after JDK-8289633
Reviewed-by: stuefe, dholmes, mdoerr
2022-07-07 12:52:04 +00:00
Prasanta Sadhukhan
532a6ec7e3 7124313: [macosx] Swing Popups should overlap taskbar
Reviewed-by: serb, dmarkov
2022-07-07 11:51:49 +00:00
Martin Doerr
e05b2f2c3b 8289856: [PPC64] SIGSEGV in C2Compiler::init_c2_runtime() after JDK-8289060
Reviewed-by: dlong, lucy
2022-07-07 10:21:25 +00:00
Thomas Stuefe
cce77a7001 8289799: Build warning in methodData.cpp memset zero-length parameter
Reviewed-by: jiefu, lucy
2022-07-07 09:42:14 +00:00
Kevin Walls
d1249aa5cb 8198668: MemoryPoolMBean/isUsageThresholdExceeded/isexceeded001/TestDescription.java still failing
Reviewed-by: lmesnik, sspitsyn
2022-07-07 08:41:50 +00:00
Xiaohong Gong
a79ce4e748 8286941: Add mask IR for partial vector operations for ARM SVE
Reviewed-by: kvn, jbhateja, njian, ngasson
2022-07-07 08:14:21 +00:00
Thomas Stuefe
569de453c3 8289620: gtest/MetaspaceUtilsGtests.java failed with unexpected stats values
Reviewed-by: coleenp
2022-07-07 05:30:10 +00:00
Tongbao Zhang
403a9bc796 8289436: Make the redefine timer statistics more accurate
Reviewed-by: sspitsyn, cjplummer, lmesnik
2022-07-06 22:49:57 +00:00
Joe Darcy
a40c17b730 8289775: Update java.lang.invoke.MethodHandle[s] to use snippets
Reviewed-by: jrose
2022-07-06 21:28:09 +00:00
Jesper Wilhelmsson
2a6ec88cd0 Merge 2022-07-06 21:01:10 +00:00
Raffaello Giulietti
35387d5cb6 8289260: BigDecimal movePointLeft() and movePointRight() do not follow their API spec
Reviewed-by: darcy
2022-07-06 16:22:18 +00:00
Lance Andersen
9f37ba44b8 8288706: Unused parameter 'boolean newln' in method java.lang.VersionProps#print(boolean, boolean)
Reviewed-by: iris, alanb, rriggs
2022-07-06 15:37:23 +00:00
Andrew Haley
dfb24ae4b7 8289060: Undefined Behaviour in class VMReg
Reviewed-by: jvernee, kvn
2022-07-06 15:22:00 +00:00
Xue-Lei Andrew Fan
82a8bd7e92 8287596: Reorg jdk.test.lib.util.ForceGC
Reviewed-by: rriggs
2022-07-06 14:23:44 +00:00
Andrew Haley
cc2b792704 8288992: AArch64: CMN should be handled the same way as CMP
Reviewed-by: adinn, ngasson
2022-07-06 13:49:46 +00:00
Thomas Stuefe
75c0a5b828 8288824: [arm32] Display isetstate in register output
Reviewed-by: dsamersoff, snazarki
2022-07-06 13:17:54 +00:00
Coleen Phillimore
83a5d5996b 8278479: RunThese test failure with +UseHeavyMonitors and +VerifyHeavyMonitors
Reviewed-by: kvn, dcubed, dlong
2022-07-06 12:07:36 +00:00
Roland Westrelin
cbaf6e807e 8288022: c2: Transform (CastLL (AddL into (AddL (CastLL when possible
Reviewed-by: thartmann, kvn
2022-07-06 11:36:12 +00:00
Thomas Schatzl
834189527e 8289739: Add G1 specific GC breakpoints for testing
Reviewed-by: kbarrett, iwalulya
2022-07-06 09:39:25 +00:00
Severin Gehwolf
ac6be16519 8289695: [TESTBUG] TestMemoryAwareness.java fails on cgroups v2 and crun
Reviewed-by: sspitsyn
2022-07-06 08:24:47 +00:00
ScientificWare
4ad18cf088 8289730: Deprecated code sample in java.lang.ClassCastException
Reviewed-by: darcy
2022-07-06 08:19:40 +00:00
Matthias Baesken
d8f4e97bd3 8289146: containers/docker/TestMemoryWithCgroupV1.java fails on linux ppc64le machine with missing Memory and Swap Limit output
Reviewed-by: sgehwolf, mdoerr, iklam
2022-07-06 07:12:32 +00:00
Andrey Turbanov
f783244caf 8289706: (cs) Avoid redundant TreeMap.containsKey call in AbstractCharsetProvider
Reviewed-by: attila, naoto
2022-07-06 06:40:19 +00:00
Xiaohong Gong
fafe8b3f8d 8289604: compiler/vectorapi/VectorLogicalOpIdentityTest.java failed on x86 AVX1 system
Reviewed-by: jiefu, kvn
2022-07-06 06:15:04 +00:00
Evgeny Astigeevich
351560414d 8280481: Duplicated stubs to interpreter for static calls
Reviewed-by: kvn, phh
2022-07-05 20:50:02 +00:00
Lance Andersen
d48694d0f3 8283335: Add exists and readAttributesIfExists methods to FileSystemProvider
Reviewed-by: alanb
2022-07-05 19:45:08 +00:00
Doug Simon
c45d613faa 8289687: [JVMCI] bug in HotSpotResolvedJavaMethodImpl.equals
Reviewed-by: kvn
2022-07-05 18:25:12 +00:00
Michael McMahon
77c3bbf105 8289617: Remove test/jdk/java/net/ServerSocket/ThreadStop.java
Reviewed-by: alanb, jpai
2022-07-05 09:15:41 +00:00
Andrew Haley
a5934cddca 8289698: AArch64: Need to relativize extended_sp in frame
Reviewed-by: alanb, dholmes
2022-07-05 07:54:38 +00:00
Andrey Turbanov
fd1bb078ea 8287603: Avoid redundant HashMap.containsKey calls in NimbusDefaults.getDerivedColor
Reviewed-by: attila, aivanov
2022-07-05 07:39:05 +00:00
Albert Mingkun Yang
4c997ba830 8289520: G1: Remove duplicate checks in G1BarrierSetC1::post_barrier
Reviewed-by: tschatzl, iwalulya
2022-07-05 07:29:02 +00:00
KIRIYAMA Takuya
1b997db734 8289427: compiler/compilercontrol/jcmd/ClearDirectivesFileStackTest.java failed with null setting
Reviewed-by: kvn, thartmann
2022-07-05 06:38:10 +00:00
Thomas Stuefe
688712f75c 8289633: Forbid raw C-heap allocation functions in hotspot and fix findings
Reviewed-by: kbarrett, dholmes
2022-07-05 04:26:45 +00:00
Andrey Turbanov
df063f7db1 8289484: Cleanup unnecessary null comparison before instanceof check in java.rmi
Reviewed-by: jpai, attila
2022-07-04 20:21:11 +00:00
Ryan Ernst
9ccae7078e 8287593: ShortResponseBody could be made more resilient to rogue connections
Reviewed-by: chegar, dfuchs
2022-07-04 16:09:40 +00:00
Albert Mingkun Yang
bad9ffe471 8288947: G1: Consolidate per-region is-humongous query in G1CollectedHeap
Reviewed-by: tschatzl, iwalulya
2022-07-04 15:18:24 +00:00
Andrew Haley
b5d965656d 8288971: AArch64: Clean up stack and register handling in interpreter
Reviewed-by: adinn, ngasson
2022-07-04 13:26:54 +00:00
Albert Mingkun Yang
d53b02eb9f 8287312: G1: Early return on first failure in VerifyRegionClosure
Reviewed-by: tschatzl, iwalulya, kbarrett
2022-07-04 12:03:57 +00:00
Matthias Baesken
a8edd7a12f 8289569: [test] java/lang/ProcessBuilder/Basic.java fails on Alpine/musl
Reviewed-by: clanger, alanb, stuefe
2022-07-04 08:56:35 +00:00
Albert Mingkun Yang
e31003a064 8289575: G1: Remove unnecessary is-marking-active check in G1BarrierSetRuntime::write_ref_field_pre_entry
Reviewed-by: tschatzl, iwalulya
2022-07-04 08:04:01 +00:00
Andrey Turbanov
8e7a3cb5ab 8289431: (zipfs) Avoid redundant HashMap.get in ZipFileSystemProvider.removeFileSystem
Reviewed-by: lancea, attila
2022-07-04 06:54:09 +00:00
Prasanta Sadhukhan
649f2d8835 8065097: [macosx] javax/swing/Popup/TaskbarPositionTest.java fails because Popup is one pixel off
Reviewed-by: aivanov
2022-07-03 08:36:08 +00:00
Bill Huang
d8444aa45e 8286610: Add additional diagnostic output to java/net/DatagramSocket/InterruptibleDatagramSocket.java
Reviewed-by: msheppar, dfuchs, jpai
2022-07-03 02:37:30 +00:00
Jesper Wilhelmsson
70f5693356 Merge 2022-07-02 18:07:36 +00:00
Andrey Turbanov
dee5121bd4 8289385: Cleanup redundant synchronization in Http2ClientImpl
Reviewed-by: jpai, dfuchs
2022-07-02 15:24:23 +00:00
Ioi Lam
cdf6979259 8289230: Move PlatformXXX class declarations out of os_xxx.hpp
Reviewed-by: coleenp, ccheung
2022-07-02 14:45:10 +00:00
Kevin Driver
44e8c462b4 8289603: Code change for JDK-8170762 breaks all build
Reviewed-by: weijun
2022-07-01 22:01:55 +00:00
Kevin Driver
2dd00f580c 8170762: Document that ISO10126Padding pads with random bytes
Reviewed-by: weijun
2022-07-01 21:28:44 +00:00
Brian Burkhalter
e291a67e96 8289584: (fs) Print size values in java/nio/file/FileStore/Basic.java when they differ by > 1GiB
Reviewed-by: alanb
2022-07-01 19:13:49 +00:00
Calvin Cheung
c43bdf7165 8289257: Some custom loader tests failed due to symbol refcount not decremented
Reviewed-by: iklam, coleenp
2022-07-01 16:11:17 +00:00
Harold Seigel
09b4032f8b 8289534: Change 'uncomplicated' hotspot runtime options
Reviewed-by: coleenp, dholmes
2022-07-01 14:31:30 +00:00
Thomas Stuefe
a8fe2d97a2 8289512: Fix GCC 12 warnings for adlc output_c.cpp
Reviewed-by: kvn, lucy
2022-07-01 13:43:45 +00:00
Tobias Holenstein
b9b900a61c 8277060: EXCEPTION_INT_DIVIDE_BY_ZERO in TypeAryPtr::dump2 with -XX:+TracePhaseCCP
Reviewed-by: kvn, thartmann, chagedorn, dlong
2022-07-01 13:34:38 +00:00
Harshitha Onkar
f190f4e638 8288444: Remove the workaround for frame.pack() in ModalDialogTest
Reviewed-by: azvegint
2022-07-01 09:07:34 +00:00
Richard Reingruber
d260a4e794 8289434: x86_64: Improve comment on gen_continuation_enter()
Reviewed-by: kvn
2022-07-01 06:12:52 +00:00
Xiaohong Gong
124c63c17c 8288294: [vector] Add Identity/Ideal transformations for vector logic operations
Reviewed-by: kvn, jbhateja
2022-07-01 01:19:18 +00:00
Jesper Wilhelmsson
918068a115 Merge 2022-07-01 00:47:56 +00:00
Kevin Walls
00d06d4a82 8289440: Remove vmTestbase/nsk/monitoring/MemoryPoolMBean/isCollectionUsageThresholdExceeded/isexceeded003 from ProblemList.txt
Reviewed-by: amenkov, lmesnik
2022-06-30 20:18:52 +00:00
Prasanta Sadhukhan
feb223aacf 8288707: javax/swing/JToolBar/4529206/bug4529206.java: setFloating does not work correctly
Reviewed-by: tr, serb
2022-06-30 11:16:07 +00:00
rmartinc
c3addbb1c0 8288895: LdapContext doesn't honor set referrals limit
Reviewed-by: dfuchs, aefimov
2022-06-30 09:17:57 +00:00
Xiaohong Gong
1305fb5ca8 8287984: AArch64: [vector] Make all bits set vector sharable for match rules
Reviewed-by: kvn, ngasson
2022-06-30 08:53:27 +00:00
Ryan Ernst
7b5bd251ef 8286397: Address possibly lossy conversions in jdk.hotspot.agent
Reviewed-by: cjplummer, chegar
2022-06-30 08:28:45 +00:00
Tobias Holenstein
28c5e483a8 8287094: IGV: show node input numbers in edge tooltips
Reviewed-by: chagedorn, thartmann
2022-06-30 07:14:29 +00:00
Thomas Stuefe
da6d1fc0e0 8289477: Memory corruption with CPU_ALLOC, CPU_FREE on muslc
Reviewed-by: dholmes, clanger
2022-06-30 06:19:25 +00:00
Xin Liu
31e50f2c76 8286104: use aggressive liveness for unstable_if traps
Reviewed-by: kvn, thartmann
2022-06-30 03:59:42 +00:00
Jaikiran Pai
dddd4e7c81 8289291: HttpServer sets incorrect value for "max" parameter in Keep-Alive header value
Reviewed-by: michaelm, dfuchs
2022-06-30 01:43:11 +00:00
Jesper Wilhelmsson
048bffad79 Merge 2022-06-29 23:32:37 +00:00
Harshitha Onkar
15efb2bdeb 8289238: Refactoring changes to PassFailJFrame Test Framework
Reviewed-by: azvegint, aivanov
2022-06-29 18:36:38 +00:00
Zdenek Zambersky
b6bd190d8d 8288985: P11TlsKeyMaterialGenerator should work with ChaCha20-Poly1305
Reviewed-by: valeriep
2022-06-29 17:20:03 +00:00
Doug Simon
ba670ecbb9 8289094: [JVMCI] reduce JNI overhead and other VM rounds trips in JVMCI
Reviewed-by: kvn, dlong
2022-06-29 16:14:55 +00:00
liach
0709a6a1fb 8284942: Proxy building can just iterate superinterfaces once
Reviewed-by: mchung
2022-06-29 14:22:48 +00:00
Albert Mingkun Yang
2961b7eede 8285364: Remove REF_ enum for java.lang.ref.Reference
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Reviewed-by: kbarrett, coleenp, stefank
2022-06-29 13:15:19 +00:00
Yasumasa Suenaga
167ce4dae2 8289421: No-PCH build for Minimal VM was broken by JDK-8287001
Reviewed-by: mbaesken, jiefu, stuefe
2022-06-29 11:43:45 +00:00
Quan Anh Mai
108cd69516 8283726: x86_64 intrinsics for compareUnsigned method in Integer and Long
Reviewed-by: kvn, jbhateja
2022-06-29 10:34:05 +00:00
Thomas Stuefe
b96ba19807 8289182: NMT: MemTracker::baseline should return void
Reviewed-by: dholmes, zgu
2022-06-29 04:12:46 +00:00
Yuta Sato
779b4e1d19 8287001: Add warning message when fail to load hsdis libraries
Reviewed-by: kvn, ysuenaga
2022-06-29 01:17:28 +00:00
KIRIYAMA Takuya
910053b74e 8280235: Deprecated flag FlightRecorder missing from VMDeprecatedOptions test
Reviewed-by: dholmes, mgronlun
2022-06-28 23:37:23 +00:00
Hai-May Chao
7b3bf97760 8289401: Add dump output to TestRawRSACipher.java
Reviewed-by: weijun
2022-06-28 23:30:32 +00:00
Jesper Wilhelmsson
86dc760f9e Merge 2022-06-28 22:11:23 +00:00
altrisi
af0088076d 8284640: CollectorImpl class could be a record class
Reviewed-by: phh, rriggs
2022-06-28 17:12:06 +00:00
Alex Kasko
c67149be4b 8288961: jpackage: test MSI installation fix
Reviewed-by: asemenyuk, almatvee
2022-06-28 17:06:08 +00:00
Alex Kasko
1f36ed1fae 8288013: jpackage: test utility Windows registry enhancement
Reviewed-by: asemenyuk, almatvee
2022-06-28 17:03:11 +00:00
Yi-Fan Tsai
88fe19c5b2 8289071: Compute allocation sizes of stubs and nmethods outside of lock protection
Reviewed-by: thartmann, phh
2022-06-28 15:16:21 +00:00
Thomas Stuefe
d4eeeb82cb 8271252: os::reserve_memory should not use mtOther as default NMT flag
Reviewed-by: zgu
2022-06-28 12:32:35 +00:00
Zhengyu Gu
549c6c22ae 8287818: Shenandoah: adapt nmethod arming from Loom
Reviewed-by: shade
2022-06-28 12:16:55 +00:00
Albert Mingkun Yang
aa43824249 8289138: G1: Remove redundant is-marking-active checks in C1 barrier
Reviewed-by: tschatzl, ehelin
2022-06-28 11:54:25 +00:00
Magnus Ihse Bursie
b4ab5fe1da 8288396: Always create reproducible builds
Reviewed-by: amenkov, ehelin
2022-06-28 09:00:45 +00:00
Calvin Cheung
33369719b2 8289258: ProblemList some failing custom loader tests with ZGC
Reviewed-by: dholmes
2022-06-28 05:22:43 +00:00
Thejasvi Voniadka
784fa0add7 8282036: Change java/util/zip/ZipFile/DeleteTempJar.java to stop HttpServer cleanly in case of exceptions
Reviewed-by: jpai, alanb, dfuchs
2022-06-28 01:55:17 +00:00
Hai-May Chao
ca78f7bd76 8286259: Password cleanup after KeyStore.PasswordProtection in P11KeyStore
Reviewed-by: valeriep
2022-06-27 23:15:13 +00:00
Calvin Cheung
e322e77e95 8288651: CDS test HelloUnload.java should not use literal string as ClassLoader name
Reviewed-by: coleenp, iklam
2022-06-27 21:16:02 +00:00
Harshitha Onkar
40bf3b1167 8288993: Make AwtFramePackTest generic by removing @requires tag
Reviewed-by: dmarkov, aivanov, serb
2022-06-27 21:02:11 +00:00
Jesper Wilhelmsson
d4b040f42d Merge 2022-06-27 18:25:53 +00:00
Raffaello Giulietti
354ed1034d 8288021: Add hard test cases to jdk.internal.math.DoubleToDecimalChecker
Co-authored-by: Paul Zimmermann <Paul.Zimmermann@inria.fr>
Reviewed-by: darcy
2022-06-27 18:21:17 +00:00
Daniel Fuchs
f3f078846f 8288746: HttpClient resources could be reclaimed more eagerly
Reviewed-by: jpai, michaelm
2022-06-27 15:11:35 +00:00
Tobias Holenstein
be6be15efa 8288750: IGV: Improve Shortcuts
Reviewed-by: chagedorn, thartmann
2022-06-27 13:20:38 +00:00
Roland Westrelin
210a06a287 8287227: Shenandoah: A couple of virtual thread tests failed with iu mode even without Loom enabled.
Reviewed-by: shade, rkennke
2022-06-27 12:42:41 +00:00
Damon Nguyen
64f95cfb32 8012675: javax.swing.JEditorPane is unclear on the handling of unsupported HTML script tags
Reviewed-by: prr, aivanov
2022-06-27 12:37:15 +00:00
Jayashree Huttanagoudar
ddb55ede2c 8135292: Remove duplicate code in <OS>Address.java in SA
Reviewed-by: cjplummer, amenkov
2022-06-27 11:52:42 +00:00
Andrey Turbanov
7905788e96 8289126: Cleanup unnecessary null comparison before instanceof check in jdk.hotspot.agent
Reviewed-by: ayang, cjplummer
2022-06-27 07:30:19 +00:00
Andrey Turbanov
47fe9ef5bf 8289078: Make STARTTIME_ANY and STARTTIME_PROCESS_UNKNOWN fields static in ProcessHandleImpl
Reviewed-by: jpai, rriggs, bpb, naoto, iris
2022-06-27 07:13:02 +00:00
Matthias Baesken
62e1e7950b 8289147: unify os::infinite_sleep on posix platforms
Reviewed-by: mdoerr, kbarrett, dholmes
2022-06-27 06:50:11 +00:00
Joe Darcy
de7467146f 8266670: Better modeling of access flags in core reflection
Reviewed-by: mchung, rriggs, asotona
2022-06-25 19:09:43 +00:00
Ryan Ernst
a5c25d8837 8286395: Address possibly lossy conversions in java.security.jgss
Reviewed-by: chegar
2022-06-25 08:00:21 +00:00
Ryan Ernst
e93be3acdf 8286389: Address possibly lossy conversions in jdk.crypto.ec
Reviewed-by: chegar, xuelei
2022-06-25 07:55:55 +00:00
Vicente Romero
53b37fe153 8288130: compiler error with AP and explicit record accessor
Reviewed-by: jlahoda
2022-06-24 21:42:23 +00:00
Daniel D. Daugherty
08288819dd 8289166: ProblemList tools/jlink/plugins/CompressorPluginTest.java
Reviewed-by: lmesnik, bpb
2022-06-24 19:13:41 +00:00
Leonid Mesnik
4cdb97893c 8289098: clean up ported serviceability/jvmti tests
Reviewed-by: kevinw, sspitsyn
2022-06-24 18:13:23 +00:00
Joe Darcy
9918b6d384 8288609: Update --release 19 symbol information for JDK 19 build 28
Reviewed-by: iris
2022-06-24 16:26:03 +00:00
Ioi Lam
f67c5361cc 8288935: Remove excessive includes introduced in loom
Reviewed-by: rehn, stefank
2022-06-24 14:43:16 +00:00
Brian Burkhalter
239b4bb020 8289095: (fs) UnixCopyFile build error on linux-x86
Reviewed-by: alanb, shade, stuefe
2022-06-24 14:24:28 +00:00
Daniel D. Daugherty
0d2952e5b3 8289129: [BACKOUT] JDK-8287281 adjust guarantee in Handshake::execute for the case of target thread being current
Reviewed-by: alanb
2022-06-24 14:17:22 +00:00
Roger Riggs
fdc8455c45 8288495: [test] Make OutputAnalyzer exception more informative
Reviewed-by: lmesnik, naoto, jpai, dholmes
2022-06-24 13:46:32 +00:00
Harold Seigel
925084c496 8288976: classfile parser 'wrong name' error message has the names the wrong way around
Reviewed-by: dholmes, shade
2022-06-24 12:03:09 +00:00
Christian Hagedorn
17aacde50f 8288669: compiler/vectorapi/VectorFPtoIntCastTest.java still fails with "IRViolationException: There were one or multiple IR rule failures."
Reviewed-by: thartmann, dcubed
2022-06-24 07:28:44 +00:00
Johan Sjölén
9dc9a64fa4 8287281: adjust guarantee in Handshake::execute for the case of target thread being current
Reviewed-by: rehn, pchilanomate, dholmes, dcubed
2022-06-24 05:00:53 +00:00
Ioi Lam
64782a7524 8288623: Move Continuation classes out of javaClasses.hpp
Reviewed-by: stefank, coleenp
2022-06-24 04:29:48 +00:00
Daniel Jeliński
c8cc94a384 8288979: Improve CLDRConverter run time
Reviewed-by: naoto, rriggs
2022-06-23 18:44:54 +00:00
Sergey Tsypanov
740169ce1c 8285521: Minor improvements in java.net.URI
Reviewed-by: dfuchs
2022-06-23 17:52:37 +00:00
Brian Burkhalter
13cbb3a416 8289073: (fs) UnsatisfiedLinkError for sun.nio.fs.UnixCopyFile.bufferedCopy0()
Reviewed-by: alanb
2022-06-23 17:48:45 +00:00
Coleen Phillimore
b206d2d149 8289006: Cleanup from thread.hpp split
Reviewed-by: dholmes, dcubed
2022-06-23 16:21:26 +00:00
Naoto Sato
2728770e3d 8288589: Files.readString ignores encoding errors for UTF-16
Reviewed-by: rriggs, iris, alanb
2022-06-23 15:49:43 +00:00
Brian Burkhalter
ef17ee4dea 8288515: (ch) Unnecessary use of Math.addExact() in java.nio.channels.FileLock.overlaps()
Reviewed-by: alanb
2022-06-23 15:40:23 +00:00
Brian Burkhalter
72f286a9ba 8287580: (se) CancelledKeyException during channel registration
Reviewed-by: alanb
2022-06-23 15:39:32 +00:00
Brian Burkhalter
b8db0c383b 6980847: (fs) Files.copy needs to be "tuned"
Reviewed-by: alanb
2022-06-23 15:36:19 +00:00
Julian Waters
d579916a6b 8288740: Change incorrect documentation for sjavac flag
Reviewed-by: ihse
2022-06-23 14:17:58 +00:00
Thomas Stuefe
26c03c1860 8288719: [arm32] SafeFetch32 thumb interleaving causes random crashes
8284997: arm32 build crashes since JDK-8283326

Reviewed-by: snazarki, xliu, lucy
2022-06-23 10:15:05 +00:00
Thiago Henrique Hüpner
a802b9816a 8287760: --do-not-resolve-by-default gets overwritten if --warn-if-resolved flags is used
Reviewed-by: lancea, alanb, cstein
2022-06-23 09:41:06 +00:00
Evgeny Astigeevich
bf0623b11f 8286314: Trampoline not created for far runtime targets outside small CodeCache
Reviewed-by: aph, phh
2022-06-23 09:30:59 +00:00
Jesper Wilhelmsson
5b583e4792 Merge 2022-06-22 23:21:49 +00:00
Jonathan Gibbons
3b1ec3e660 8288994: Incorrect @since tags for @value update in JDK-8286101
Reviewed-by: darcy, prappo
2022-06-22 20:48:31 +00:00
Erik Gahlin
58b6937b09 8288982: JFR: Log event streaming actions
Reviewed-by: mgronlun
2022-06-22 19:37:51 +00:00
Xin Liu
82c77ca807 8288926: make runtime/logging/DeoptStats.java more reliable
Reviewed-by: simonis, phh
2022-06-22 15:57:48 +00:00
Naoto Sato
d4de475747 8287868: Localized names update in COMPAT locale provider
Reviewed-by: iris, joehw
2022-06-22 15:47:07 +00:00
Jaikiran Pai
50c37f53f2 8276798: HttpURLConnection sends invalid HTTP request
Reviewed-by: dfuchs, michaelm
2022-06-22 14:45:52 +00:00
Coleen Phillimore
270cf67e5f 8288752: Split thread implementation files
Reviewed-by: dholmes, rehn, iklam
2022-06-22 12:49:25 +00:00
Matthias Baesken
d51f4f471f 8287011: Improve container information
Reviewed-by: sgehwolf, stuefe
2022-06-22 10:36:16 +00:00
Jaikiran Pai
affbd72aa3 8288744: Remove tools/jlink/plugins/CompressorPluginTest.java from problemlist
Reviewed-by: alanb
2022-06-22 05:51:24 +00:00
Jesper Wilhelmsson
2bf5c9a687 Merge 2022-06-21 22:26:26 +00:00
Ioi Lam
9f8bfab290 8288537: Move Devirtualizer out of hotspot/share/memory/iterator.hpp
Reviewed-by: stefank, coleenp
2022-06-21 20:54:59 +00:00
Leonid Mesnik
f080430440 8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ...
Reviewed-by: sspitsyn, kevinw
2022-06-21 18:38:03 +00:00
Brian Burkhalter
535fba8bfc 8288687: (fc) Unix version ofFileChannelImpl.transferTo0() should should return IOS_UNSUPPORTED if not Linux, macOS, nor AIX
Reviewed-by: alanb
2022-06-21 15:27:52 +00:00
Weijun Wang
19017358b1 8288209: SSL debug message wrong about unsupported authentication scheme
Reviewed-by: djelinski, jnimeh
2022-06-21 14:33:03 +00:00
Andrey Turbanov
0f801fe6fd 8288628: Unnecessary Hashtable usage in ConditionalSpecialCasing
Reviewed-by: naoto, jpai
2022-06-21 08:28:04 +00:00
Thomas Stuefe
701ea3beaa 8288556: VM crashes if it gets sent SIGUSR2 from outside
Reviewed-by: dholmes, lucy
2022-06-21 07:55:48 +00:00
Jaikiran Pai
5e680d0594 8288724: Prevent NullPointerException in serviceability/tmtools/jstack/DaemonThreadTest.java if jstack process fails
Reviewed-by: kevinw, sspitsyn
2022-06-21 07:12:32 +00:00
Ioi Lam
ad8914616b 8288601: Consolidate static/dynamic archive tables
Reviewed-by: ccheung
2022-06-21 05:20:58 +00:00
Rob McKenna
7e211d7daa 8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run
Reviewed-by: dfuchs, aefimov
2022-06-21 00:23:12 +00:00
Jesper Wilhelmsson
7039c6616a Merge 2022-06-20 19:38:49 +00:00
Emanuel Peter
302a6c068d 8287801: Fix test-bugs related to stress flags
Reviewed-by: chagedorn, thartmann
2022-06-20 14:29:06 +00:00
Markus Grönlund
a7df5a4063 8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state
Reviewed-by: jbachorik, egahlin
2022-06-20 13:30:19 +00:00
tqxia
406cf611d9 8287771: Remove useless G1 After GC summary refinement and sampling thread times
Reviewed-by: tschatzl, kbarrett
2022-06-20 12:58:26 +00:00
Claes Redestad
5cdb4b1960 8288011: StringConcatFactory: Split application of stringifiers
Reviewed-by: jvernee, mchung
2022-06-20 11:56:20 +00:00
Erik Gahlin
46d5b682db 8288685: JFR: Use static methods for Active Recording and Active Setting events
Reviewed-by: mgronlun
2022-06-20 11:48:27 +00:00
Claes Redestad
68bff04515 8288673: Reduce runtime of java.time microbenchmarks
Reviewed-by: jvernee
2022-06-20 10:21:51 +00:00
Claes Redestad
d917e1874e 8288667: Reduce runtime of java.text microbenchmarks
Reviewed-by: jvernee
2022-06-20 10:20:31 +00:00
Andrey Turbanov
695d8656c5 8284672: Collapse identical catch branches in java.desktop
Reviewed-by: prr, aivanov, serb
2022-06-20 09:02:15 +00:00
Andrey Turbanov
7acdcc1034 8288329: Avoid redundant TreeMap.containsKey call in PolicyParser.read
Reviewed-by: mullan
2022-06-20 08:03:13 +00:00
Roberto Castañeda Lozano
f62b2bd9cd 8288480: IGV: toolbar action is not applied to the focused graph
Reviewed-by: chagedorn, thartmann
2022-06-20 07:34:45 +00:00
Roberto Castañeda Lozano
02da5f9970 8263384: IGV: Outline should highlight the Graph that has focus
Reviewed-by: xliu, chagedorn, thartmann
2022-06-20 07:27:11 +00:00
Erik Österlund
7d4df6a83f 8284404: Too aggressive sweeping with Loom
Reviewed-by: kvn, thartmann
2022-06-20 06:43:23 +00:00
Joe Darcy
47b86690b6 8288573: Make Executable.getParameterCount() actually abstract
Reviewed-by: iris, alanb, jpai
2022-06-17 16:57:38 +00:00
Jesper Wilhelmsson
af64d316c0 Merge 2022-06-17 13:46:47 +00:00
Claes Redestad
cc445926cf 8287904: Reduce runtime of java.net microbenchmarks
Reviewed-by: jvernee
2022-06-17 12:24:16 +00:00
Srinivas Mandalika
523d553e13 8282777: Create a Regression test for JDK-4515031
Reviewed-by: serb
2022-06-17 08:22:27 +00:00
Roberto Castañeda Lozano
f3da7ff66e 8288421: IGV: warn user about all unreachable nodes
Reviewed-by: chagedorn, thartmann
2022-06-17 07:32:15 +00:00
Sandhya Viswanathan
9d4b25e788 8288281: compiler/vectorapi/VectorFPtoIntCastTest.java failed with "IRViolationException: There were one or multiple IR rule failures."
Reviewed-by: thartmann, chagedorn
2022-06-16 22:07:13 +00:00
Andrey Turbanov
e833c1d179 8285519: Change usages of TimeUnit.convert to TimeUnit.toXXX
Reviewed-by: rriggs
2022-06-16 17:29:49 +00:00
Adam Sotona
e7d52e25a2 8288594: Address possibly lossy conversions in java.base FloatToDecimal
Reviewed-by: rriggs
2022-06-16 16:59:19 +00:00
Andrew Haley
2cf7c01759 8288478: AArch64: Clean up whitespace in assembler_aarch64.hpp
Reviewed-by: shade
2022-06-16 16:38:39 +00:00
Andrey Turbanov
ce5024f66f 8288468: Avoid redundant HashMap.get call in NegotiateAuthentication.firstToken
Reviewed-by: dfuchs, jpai
2022-06-16 16:03:05 +00:00
Claes Redestad
8fc8fdca96 8287905: Reduce runtime of java.nio microbenchmarks
Reviewed-by: jvernee
2022-06-16 15:05:00 +00:00
Coleen Phillimore
cf4a4966a8 8288064: Class initialization locking
Reviewed-by: rehn, vlivanov
2022-06-16 12:38:06 +00:00
Jesper Wilhelmsson
3d12c0225b Merge 2022-06-16 12:01:32 +00:00
Dmitry Kulikov
b2a58bec4a 8288005: HotSpot build with disabled PCH fails for Windows AArch64
Reviewed-by: shade, kbarrett
2022-06-16 08:12:30 +00:00
Tejesh R
39526e28bc 8284619: javax/swing/JTable/8236907/LastVisibleRow.java failed with "Test Case Failed!!, Last Row not Visible!!!"
Reviewed-by: psadhukhan, honkar
2022-06-16 03:47:30 +00:00
Fei Gao
a1795901ee 8283091: Support type conversion between different data sizes in SLP
Reviewed-by: kvn, sviswanathan
2022-06-16 02:40:59 +00:00
Hao Sun
f7ba3b7e42 8288300: AArch64: Remove the assertion in fmovs/fmovd(FloatRegister, FloatRegister)
Reviewed-by: aph, ngasson
2022-06-16 00:54:27 +00:00
Ioi Lam
07612281b0 8288443: Simplify vmClasses::resolve_all()
Reviewed-by: ccheung, dholmes, coleenp
2022-06-15 22:40:03 +00:00
Daniel D. Daugherty
9ff40346dd 8288530: ProblemList serviceability/jvmti/VMObjectAlloc/VMObjectAllocTest.java in -Xcomp mode
Reviewed-by: amenkov
2022-06-15 21:19:31 +00:00
Kevin Driver
1855e9d201 8220732: setSeed(long) java api doc is missing warning about provided seed quality
Reviewed-by: wetmore
2022-06-15 21:03:04 +00:00
Claes Redestad
6d595614a2 8288425: Footprint regression due MH creation when initializing StringConcatFactory
Reviewed-by: jvernee, mchung
2022-06-15 19:48:27 +00:00
Andrey Turbanov
3475e12fa6 8288330: Avoid redundant ConcurrentHashMap.get call in Http2ClientImpl.deleteConnection
Reviewed-by: jpai, dfuchs
2022-06-15 18:12:29 +00:00
Magnus Ihse Bursie
cb5ef3da19 8288499: Restore cancel-in-progress in GHA
Reviewed-by: erikj, shade
2022-06-15 17:36:12 +00:00
Conor Cleary
13d4ddc35b 8286962: java/net/httpclient/ServerCloseTest.java failed once with ConnectException
Reviewed-by: dfuchs, jpai
2022-06-15 15:41:18 +00:00
Andrew Leonard
6633855ca7 8288399: MacOS debug symbol files not always deterministic in reproducible builds
Reviewed-by: erikj
2022-06-15 14:00:20 +00:00
Johan Sjölén
d5cd2f2caa 8284849: Add deoptimization to unified logging
Reviewed-by: jvernee, kvn, xliu, coleenp
2022-06-15 12:23:49 +00:00
Andrey Turbanov
dfeeb6f8f3 8288140: Avoid redundant Hashtable.get call in Signal.handle
Reviewed-by: rriggs
2022-06-15 10:35:02 +00:00
Boris Ulasevich
68b2057205 8287373: remove unnecessary paddings in generated code
Reviewed-by: kvn
2022-06-15 09:10:48 +00:00
Emanuel Peter
2471f8f7c5 8287647: VM debug support: find node by pattern in name or dump
Reviewed-by: kvn, chagedorn, thartmann
2022-06-15 08:06:47 +00:00
Matthias Baesken
33f34d540e 8288207: Enhance MalformedURLException in Uri.parseCompat
Reviewed-by: dfuchs, alanb
2022-06-15 06:53:12 +00:00
Matthias Baesken
444a0d98ac 8284977: MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn't exist
Reviewed-by: sgehwolf, mdoerr
2022-06-15 06:39:23 +00:00
Zhuojun Miao
08400f18ba 8287349: AArch64: Merge LDR instructions to improve C1 OSR performance
Reviewed-by: aph, ngasson, thartmann
2022-06-15 05:57:55 +00:00
Yoshiki Sato
fe807217a7 8287917: System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier
Reviewed-by: mchung
2022-06-15 00:12:53 +00:00
Harshitha Onkar
bbaeacb597 8265586: [windows] last button is not shown in AWT Frame with BorderLayout and MenuBar set.
Reviewed-by: aivanov, dmarkov, azvegint
2022-06-14 19:48:06 +00:00
Coleen Phillimore
0f580974a6 8288134: Super class names don't have envelopes
Reviewed-by: iklam, hseigel, fparain
2022-06-14 19:30:39 +00:00
Paul Sandoz
fb297705f6 8287186: JDK modules participating in preview
Reviewed-by: alanb, jlahoda
2022-06-14 16:22:59 +00:00
Matthias Baesken
0530f4e517 8288094: cleanup old _MSC_VER handling
Reviewed-by: mdoerr, clanger, aturbanov
2022-06-14 10:43:07 +00:00
Magnus Ihse Bursie
1a6533225d 8287906: Rewrite of GitHub Actions (GHA) sanity tests
Reviewed-by: shade, erikj, cstein
2022-06-14 07:48:49 +00:00
Matthias Baesken
c2ccf4ca85 8288003: log events for os::dll_unload
Reviewed-by: dholmes, stuefe
2022-06-14 07:18:07 +00:00
Swati Sharma
03dca565cf 8287525: Extend IR annotation with new options to test specific target feature.
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: chagedorn, kvn
2022-06-14 06:13:26 +00:00
Eric Liu
86c9241cce 8287028: AArch64: [vectorapi] Backend implementation of VectorMask.fromLong with SVE2
Reviewed-by: xgong, ngasson
2022-06-14 03:38:42 +00:00
Naoto Sato
fbe9266622 8288378: [BACKOUT] DST not applying properly with zone id offset set with TZ env variable
Reviewed-by: dholmes
2022-06-14 01:06:54 +00:00
Jesper Wilhelmsson
19043538e1 Merge 2022-06-14 00:27:47 +00:00
Brian Burkhalter
a9c2ab67c4 8288080: (fc) FileChannel::map for MemorySegments should state it always throws UOE
Reviewed-by: alanb
2022-06-13 22:47:13 +00:00
Daniel D. Daugherty
e90b579b29 8288332: Tier1 validate-source fails after 8279614
Reviewed-by: darcy
2022-06-13 20:47:34 +00:00
Alisen Chung
b42c1ad108 8279614: The left line of the TitledBorder is not painted on 150 scale factor
Co-authored-by: Alexey Ivanov <aivanov@openjdk.org>
Reviewed-by: kizune, aivanov, prr
2022-06-13 20:05:06 +00:00
Gaurav Chaudhari
9b6d0a7e94 8285838: DST not applying properly with zone id offset set with TZ env variable
Reviewed-by: naoto
2022-06-13 20:01:57 +00:00
Jonathan Gibbons
53a0acee06 8286101: Support formatting in @value tag
Reviewed-by: prappo
2022-06-13 18:13:21 +00:00
Hai-May Chao
8f400b9aab 8286779: javax.crypto.CryptoPolicyParser#isConsistent always returns 'true'
Reviewed-by: mullan, rhalade
2022-06-13 15:31:58 +00:00
Severin Gehwolf
e0baf012b1 8287007: [cgroups] Consistently use stringStream throughout parsing code
Reviewed-by: iklam
2022-06-13 15:14:51 +00:00
Mark Powers
17695962ac 8285263: Minor cleanup could be done in java.security
Reviewed-by: weijun
2022-06-13 15:13:56 +00:00
Alexey Ivanov
b97a4f6cdc 8288114: Update JIRA link in vcs.xml
Reviewed-by: mcimadamore, ihse, erikj
2022-06-13 14:48:52 +00:00
Kevin Driver
2adef6a1f8 8267860: Off-by-one bug when searching arrays in AlpnGreaseTest
Co-authored-by: Bradford Wetmore <wetmore@openjdk.org>
Reviewed-by: wetmore
2022-06-13 14:38:36 +00:00
Jie Fu
4aede33fbf 8288282: Zero-release build is broken after JDK-8279047 due to UseHeavyMonitors is read-only
Reviewed-by: dholmes, shade
2022-06-13 14:36:57 +00:00
Andrew Haley
0207d761f4 8287926: AArch64: intrinsics for divideUnsigned and remainderUnsigned methods in java.lang.Integer and java.lang.Long
Reviewed-by: adinn, ngasson
2022-06-13 14:35:43 +00:00
Emanuel Peter
33ed0365c3 8283775: better dump: VM support for graph querying in debugger with BFS traversal and node filtering
Reviewed-by: kvn, chagedorn, thartmann, rcastanedalo
2022-06-13 11:46:13 +00:00
Koichi Sakata
ac28be721f 8283612: IGV: Remove Graal module
Reviewed-by: rcastanedalo, chagedorn
2022-06-13 08:22:57 +00:00
Sibabrata Sahoo
0cb0ecf443 8209935: Test to cover CodeSource.getCodeSigners()
Reviewed-by: mullan
2022-06-13 05:17:58 +00:00
Andrey Turbanov
f1143b1b57 8287696: Avoid redundant Hashtable.containsKey call in JarVerifier.doneWithMeta
Reviewed-by: jpai, lancea
2022-06-11 10:53:35 +00:00
David Holmes
d46f404b31 8279047: Remove expired flags in JDK 20
Reviewed-by: kvn, kbarrett, alanb
2022-06-11 05:52:14 +00:00
Hai-May Chao
f7a4be75fb 8288270: Tier1 build failures after JDK-8287178
Reviewed-by: weijun, jiefu
2022-06-10 23:58:15 +00:00
Weijun Wang
d4b473d890 8287178: IntegerModuloP::multiplicativeInverse returns 0 for 0
Reviewed-by: jnimeh
2022-06-10 22:25:18 +00:00
Raffaello Giulietti
da2339cf69 8288173: JDK-8202449 fix causes conformance test failure : api/java_util/Random/RandomGenerator/NextFloat.html
Reviewed-by: bpb, darcy
2022-06-10 21:01:14 +00:00
Joe Darcy
f2e10dce78 8288238: Add missing file jdk.incubator.concurrent-J.sym.txt
Reviewed-by: mikael, dcubed
2022-06-10 20:00:17 +00:00
Jesper Wilhelmsson
fa564e9d58 Merge 2022-06-10 19:53:40 +00:00
Magnus Ihse Bursie
d0c8ff8fdf 8288195: Prepare build system for GHA changes
Reviewed-by: shade, erikj
2022-06-10 19:32:30 +00:00
Joe Darcy
7e940efcbc 8286038: Update --release 19 symbol information for JDK 19 build 26
Reviewed-by: iris
2022-06-10 19:00:41 +00:00
Rajan Halade
c6dd2ab9d7 8224768: Test ActalisCA.java fails
Reviewed-by: mullan
2022-06-10 17:25:54 +00:00
Joe Darcy
aaa897148a 8288227: Refactor annotation implementation to use pattern matching for instanceof
Reviewed-by: alanb
2022-06-10 17:05:17 +00:00
Sandhya Viswanathan
2cc40afa07 8287835: Add support for additional float/double to integral conversion for x86
Reviewed-by: kvn, jbhateja
2022-06-10 17:02:33 +00:00
Rajan Halade
3ee1e60595 8288132: Update test artifacts in QuoVadis CA interop tests
Reviewed-by: mullan
2022-06-10 15:01:19 +00:00
Rajan Halade
512db0ff31 8271838: AmazonCA.java interop test fails
Reviewed-by: mullan
2022-06-10 14:49:27 +00:00
Prasanta Sadhukhan
fcb35ed40e 8287743: javax/swing/text/CSSBorder/6796710/bug6796710.java failed
Reviewed-by: aivanov
2022-06-10 13:37:24 +00:00
Andrew Haley
bdd64d6f7d 8288181: AArch64: clean up out-of-date comments
Reviewed-by: shade
2022-06-10 13:27:30 +00:00
Jie Fu
5d0e8b6981 8288203: runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java fails with release VMs
Reviewed-by: shade
2022-06-10 11:40:25 +00:00
Magnus Ihse Bursie
975316e3e5 8287902: UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows
Reviewed-by: naoto
2022-06-10 10:07:10 +00:00
KIRIYAMA Takuya
0901548833 8283724: Incorrect description for jtreg-failure-handler option
Reviewed-by: erikj, ihse
2022-06-10 09:19:06 +00:00
Roland Westrelin
dae4c493e4 8286197: C2: Optimize MemorySegment shape in int loop
Reviewed-by: kvn, thartmann
2022-06-10 08:17:26 +00:00
Thomas Schatzl
94b473e464 8280454: G1: ClassLoaderData verification keeps CLDs live that causes problems with VerifyDuringGC during Remark
Reviewed-by: stefank, coleenp
2022-06-10 07:57:32 +00:00
Andrey Turbanov
900d967da5 8287924: Avoid redundant HashMap.containsKey call in EnvHelp.mapToHashtable
Reviewed-by: sspitsyn, cjplummer
2022-06-09 20:29:16 +00:00
Brian Burkhalter
d482d7f5b9 8286160: (fs) Files.exists returns unexpected results with C:\pagefile.sys because it's not readable
Reviewed-by: alanb
2022-06-09 16:30:53 +00:00
Joe Darcy
edff51e5fd 8284858: Start of release updates for JDK 20
8286035: Add source 20 and target 20 to javac
8286034: Add SourceVersion.RELEASE_20

Reviewed-by: dholmes, kcr, iris, erikj, jjg, ihse
2022-06-09 16:16:49 +00:00
Conor Cleary
267144311c 8286171: HttpClient/2 : Expect:100-Continue blocks indefinitely when response is not 100
Reviewed-by: dfuchs, jpai
2022-06-09 15:03:52 +00:00
6042 changed files with 247720 additions and 157259 deletions

46
.github/actions/config/action.yml vendored Normal file
View File

@@ -0,0 +1,46 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Config'
description: 'Read JDK Configuration Variables'
inputs:
var:
description: 'The name of the variable to read'
required: true
outputs:
value:
description: 'The value of the configuration variable'
value: ${{ steps.read-config.outputs.value }}
runs:
using: composite
steps:
- name: 'Read configuration variable from repo'
id: read-config
run: |
# Extract value from configuration file
value="$(grep -h ${{ inputs.var }}= make/conf/github-actions.conf | cut -d '=' -f 2-)"
echo "::set-output name=value::$value"
shell: bash

80
.github/actions/do-build/action.yml vendored Normal file
View File

@@ -0,0 +1,80 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Do build'
description: 'Build the JDK using make'
inputs:
make-target:
description: 'Make target(s)'
required: true
platform:
description: 'Platform name'
required: true
debug-suffix:
description: 'File name suffix denoting debug level, possibly empty'
required: false
runs:
using: composite
steps:
- name: 'Build'
id: build
run: >
make LOG=info ${{ inputs.make-target }}
|| bash ./.github/scripts/gen-build-failure-report.sh "$GITHUB_STEP_SUMMARY"
shell: bash
- name: 'Check for failure'
id: check
run: |
# Check for failure marker file
build_dir="$(ls -d build/*)"
if [[ -e $build_dir/build-failure ]]; then
# Collect relevant log files
mkdir failure-logs
cp \
$build_dir/spec.gmk \
$build_dir/build.log \
$build_dir/configure.log \
$build_dir/make-support/failure-summary.log \
$build_dir/make-support/failure-logs/* \
failure-logs/ 2> /dev/null || true
echo '::set-output name=failure::true'
fi
shell: bash
- name: 'Upload build logs'
uses: actions/upload-artifact@v3
with:
name: failure-logs-${{ inputs.platform }}${{ inputs.debug-suffix }}
path: failure-logs
if: steps.check.outputs.failure == 'true'
# This is the best way I found to abort the job with an error message
- name: 'Notify about build failures'
uses: actions/github-script@v6
with:
script: core.setFailed('Build failed. See summary for details.')
if: steps.check.outputs.failure == 'true'

109
.github/actions/get-bootjdk/action.yml vendored Normal file
View File

@@ -0,0 +1,109 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Get BootJDK'
description: 'Download the BootJDK from cache or source location'
inputs:
platform:
description: 'Platform'
required: true
outputs:
path:
description: 'Path to the installed BootJDK'
value: ${{ steps.path-name.outputs.path }}
runs:
using: composite
steps:
- name: 'Determine platform prefix'
id: platform-prefix
run: |
# Convert platform name to upper case
platform_prefix="$(echo ${{ inputs.platform }} | tr [a-z-] [A-Z_])"
echo "::set-output name=value::$platform_prefix"
shell: bash
- name: 'Get URL configuration'
id: url
uses: ./.github/actions/config
with:
var: ${{ steps.platform-prefix.outputs.value}}_BOOT_JDK_URL
- name: 'Get SHA256 configuration'
id: sha256
uses: ./.github/actions/config
with:
var: ${{ steps.platform-prefix.outputs.value}}_BOOT_JDK_SHA256
- name: 'Get file extension configuration'
id: ext
uses: ./.github/actions/config
with:
var: ${{ steps.platform-prefix.outputs.value}}_BOOT_JDK_EXT
- name: 'Check cache for BootJDK'
id: get-cached-bootjdk
uses: actions/cache@v3
with:
path: bootjdk/jdk
key: boot-jdk-${{ inputs.platform }}-${{ steps.sha256.outputs.value }}
# macOS is missing sha256sum
- name: 'Install sha256sum'
run: |
# Run Homebrew installation
brew install coreutils
shell: bash
if: steps.get-cached-bootjdk.outputs.cache-hit != 'true' && runner.os == 'macOS'
- name: 'Download BootJDK'
run: |
# Download BootJDK and verify checksum
mkdir -p bootjdk/jdk
mkdir -p bootjdk/unpacked
wget --progress=dot:mega -O bootjdk/jdk.${{ steps.ext.outputs.value }} '${{ steps.url.outputs.value }}'
echo '${{ steps.sha256.outputs.value }} bootjdk/jdk.${{ steps.ext.outputs.value }}' | sha256sum -c >/dev/null -
shell: bash
if: steps.get-cached-bootjdk.outputs.cache-hit != 'true'
- name: 'Unpack BootJDK'
run: |
# Unpack the BootJDK and move files to a common location
if [[ '${{ steps.ext.outputs.value }}' == 'tar.gz' ]]; then
tar -xf bootjdk/jdk.${{ steps.ext.outputs.value }} -C bootjdk/unpacked
else
unzip -q bootjdk/jdk.${{ steps.ext.outputs.value }} -d bootjdk/unpacked
fi
jdk_root="$(dirname $(find bootjdk/unpacked -name bin -type d))"
mv "$jdk_root"/* bootjdk/jdk/
shell: bash
if: steps.get-cached-bootjdk.outputs.cache-hit != 'true'
- name: 'Export path to where BootJDK is installed'
id: path-name
run: |
# Export the path
echo '::set-output name=path::bootjdk/jdk'
shell: bash

109
.github/actions/get-bundles/action.yml vendored Normal file
View File

@@ -0,0 +1,109 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Get bundles'
description: 'Download resulting JDK bundles'
inputs:
platform:
description: 'Platform name'
required: true
debug-suffix:
description: 'File name suffix denoting debug level, possibly empty'
required: false
outputs:
jdk-path:
description: 'Path to the installed JDK bundle'
value: ${{ steps.path-name.outputs.jdk }}
symbols-path:
description: 'Path to the installed symbols bundle'
value: ${{ steps.path-name.outputs.symbols }}
tests-path:
description: 'Path to the installed tests bundle'
value: ${{ steps.path-name.outputs.tests }}
runs:
using: composite
steps:
- name: 'Download bundles artifact'
id: download-bundles
uses: actions/download-artifact@v3
with:
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
path: bundles
continue-on-error: true
- name: 'Download bundles artifact (retry)'
uses: actions/download-artifact@v3
with:
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
path: bundles
if: steps.download-bundles.outcome == 'failure'
- name: 'Unpack bundles'
run: |
if [[ -e bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.zip ]]; then
echo 'Unpacking jdk bundle...'
mkdir -p bundles/jdk
unzip -q bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.zip -d bundles/jdk
fi
if [[ -e bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz ]]; then
echo 'Unpacking jdk bundle...'
mkdir -p bundles/jdk
tar -xf bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz -C bundles/jdk
fi
if [[ -e bundles/symbols-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz ]]; then
echo 'Unpacking symbols bundle...'
mkdir -p bundles/symbols
tar -xf bundles/symbols-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz -C bundles/symbols
fi
if [[ -e bundles/tests-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz ]]; then
echo 'Unpacking tests bundle...'
mkdir -p bundles/tests
tar -xf bundles/tests-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz -C bundles/tests
fi
shell: bash
- name: 'Export paths to where bundles are installed'
id: path-name
run: |
# Export the paths
jdk_dir="$GITHUB_WORKSPACE/$(dirname $(find bundles/jdk -name bin -type d))"
symbols_dir="$GITHUB_WORKSPACE/$(dirname $(find bundles/symbols -name bin -type d))"
tests_dir="$GITHUB_WORKSPACE/bundles/tests"
if [[ '${{ runner.os }}' == 'Windows' ]]; then
jdk_dir="$(cygpath $jdk_dir)"
symbols_dir="$(cygpath $symbols_dir)"
tests_dir="$(cygpath $tests_dir)"
fi
echo "::set-output name=jdk::$jdk_dir"
echo "::set-output name=symbols::$symbols_dir"
echo "::set-output name=tests::$tests_dir"
shell: bash

54
.github/actions/get-gtest/action.yml vendored Normal file
View File

@@ -0,0 +1,54 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Get GTest'
description: 'Download GTest source'
outputs:
path:
description: 'Path to the installed GTest'
value: ${{ steps.path-name.outputs.path }}
runs:
using: composite
steps:
- name: 'Get GTest version configuration'
id: version
uses: ./.github/actions/config
with:
var: GTEST_VERSION
- name: 'Checkout GTest source'
uses: actions/checkout@v3
with:
repository: google/googletest
ref: 'release-${{ steps.version.outputs.value }}'
path: gtest
- name: 'Export path to where GTest is installed'
id: path-name
run: |
# Export the path
echo '::set-output name=path::gtest'
shell: bash

72
.github/actions/get-jtreg/action.yml vendored Normal file
View File

@@ -0,0 +1,72 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Get JTReg'
description: 'Download JTReg from cache or source location'
outputs:
path:
description: 'Path to the installed JTReg'
value: ${{ steps.path-name.outputs.path }}
runs:
using: composite
steps:
- name: 'Get JTReg version configuration'
id: version
uses: ./.github/actions/config
with:
var: JTREG_VERSION
- name: 'Check cache for JTReg'
id: get-cached-jtreg
uses: actions/cache@v3
with:
path: jtreg/installed
key: jtreg-${{ steps.version.outputs.value }}
- name: 'Checkout the JTReg source'
uses: actions/checkout@v3
with:
repository: openjdk/jtreg
ref: jtreg-${{ steps.version.outputs.value }}
path: jtreg/src
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
- name: 'Build JTReg'
run: |
# Build JTReg and move files to the proper locations
bash make/build.sh --jdk "$JAVA_HOME_11_X64"
mkdir ../installed
mv build/images/jtreg/* ../installed
working-directory: jtreg/src
shell: bash
if: steps.get-cached-jtreg.outputs.cache-hit != 'true'
- name: 'Export path to where JTReg is installed'
id: path-name
run: |
# Export the path
echo '::set-output name=path::jtreg/installed'
shell: bash

44
.github/actions/get-msys2/action.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Get MSYS2'
description: 'Download MSYS2 and prepare a Windows host'
runs:
using: composite
steps:
- name: 'Install MSYS2'
uses: msys2/setup-msys2@v2
with:
install: 'autoconf tar unzip zip make'
path-type: minimal
location: msys2
# We can't run bash until this is completed, so stick with pwsh
- name: 'Set MSYS2 path'
run: |
# Prepend msys2/msys64/usr/bin to the PATH
echo "$env:GITHUB_WORKSPACE/msys2/msys64/usr/bin" >> $env:GITHUB_PATH
shell: pwsh

View File

@@ -0,0 +1,77 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Upload bundles'
description: 'Upload resulting JDK bundles'
inputs:
platform:
description: 'Platform name'
required: true
debug-suffix:
description: 'File name suffix denoting debug level, possibly empty'
required: false
runs:
using: composite
steps:
- name: 'Determine bundle names'
id: bundles
run: |
# Rename bundles to consistent names
jdk_bundle_zip="$(ls build/*/bundles/jdk-*_bin${{ inputs.debug-suffix }}.zip 2> /dev/null || true)"
jdk_bundle_tar_gz="$(ls build/*/bundles/jdk-*_bin${{ inputs.debug-suffix }}.tar.gz 2> /dev/null || true)"
symbols_bundle="$(ls build/*/bundles/jdk-*_bin${{ inputs.debug-suffix }}-symbols.tar.gz 2> /dev/null || true)"
tests_bundle="$(ls build/*/bundles/jdk-*_bin-tests${{ inputs.debug-suffix }}.tar.gz 2> /dev/null || true)"
mkdir bundles
if [[ "$jdk_bundle_zip" != "" ]]; then
mv "$jdk_bundle_zip" "bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.zip"
fi
if [[ "$jdk_bundle_tar_gz" != "" ]]; then
mv "$jdk_bundle_tar_gz" "bundles/jdk-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz"
fi
if [[ "$symbols_bundle" != "" ]]; then
mv "$symbols_bundle" "bundles/symbols-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz"
fi
if [[ "$tests_bundle" != "" ]]; then
mv "$tests_bundle" "bundles/tests-${{ inputs.platform }}${{ inputs.debug-suffix }}.tar.gz"
fi
if [[ "$jdk_bundle_zip$jdk_bundle_tar_gz$symbols_bundle$tests_bundle" != "" ]]; then
echo '::set-output name=bundles-found::true'
else
echo '::set-output name=bundles-found::false'
fi
shell: bash
- name: 'Upload bundles artifact'
uses: actions/upload-artifact@v3
with:
name: bundles-${{ inputs.platform }}${{ inputs.debug-suffix }}
path: bundles
retention-days: 1
if: steps.bundles.outputs.bundles-found == 'true'

View File

@@ -1,5 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2022, 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
@@ -22,15 +23,29 @@
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# ##########################################################
# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
# ##########################################################
#
class name javax/security/auth/kerberos/KeyTab
-method name getUnboundInstance descriptor (Ljava/io/File;)Ljavax/security/auth/kerberos/KeyTab;
-method name getInstance descriptor (Ljavax/security/auth/kerberos/KerberosPrincipal;Ljava/io/File;)Ljavax/security/auth/kerberos/KeyTab;
-method name getUnboundInstance descriptor ()Ljavax/security/auth/kerberos/KeyTab;
-method name getInstance descriptor (Ljavax/security/auth/kerberos/KerberosPrincipal;)Ljavax/security/auth/kerberos/KeyTab;
-method name getPrincipal descriptor ()Ljavax/security/auth/kerberos/KerberosPrincipal;
-method name isBound descriptor ()Z
GITHUB_STEP_SUMMARY="$1"
BUILD_DIR="$(ls -d build/*)"
# Send signal to the do-build action that we failed
touch "$BUILD_DIR/build-failure"
(
echo '### :boom: Build failure summary'
echo ''
echo 'The build failed. Here follows the failure summary from the build.'
echo '<details><summary><b>View build failure summary</b></summary>'
echo ''
echo '```'
if [[ -f "$BUILD_DIR/make-support/failure-summary.log" ]]; then
cat "$BUILD_DIR/make-support/failure-summary.log"
else
echo "Failure summary ($BUILD_DIR/make-support/failure-summary.log) not found"
fi
echo '```'
echo '</details>'
echo ''
echo ''
echo ':arrow_right: To see the entire test log, click the job in the list to the left. To download logs, see the `failure-logs` [artifact above](#artifacts).'
) >> $GITHUB_STEP_SUMMARY

92
.github/scripts/gen-test-results.sh vendored Normal file
View File

@@ -0,0 +1,92 @@
#!/bin/bash
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
GITHUB_STEP_SUMMARY="$1"
test_suite_name=$(cat build/run-test-prebuilt/test-support/test-last-ids.txt)
results_dir=build/run-test-prebuilt/test-results/$test_suite_name/text
report_dir=build/run-test-prebuilt/test-support/$test_suite_name
failures=$(sed -E -e 's/(.*)\.(java|sh)/\1/' -e '/^#/d' $results_dir/newfailures.txt 2> /dev/null || true)
errors=$(sed -E -e 's/(.*)\.(java|sh)/\1/' -e '/^#/d' $results_dir/other_errors.txt 2> /dev/null || true)
if [[ "$failures" = "" && "$errors" = "" ]]; then
# If we have nothing to report, exit this step now
exit 0
fi
echo "### Test output for failed tests" >> $GITHUB_STEP_SUMMARY
for test in $failures $errors; do
anchor="$(echo "$test" | tr [A-Z/] [a-z_])"
base_path="$(echo "$test" | tr '#' '_')"
report_file="$report_dir/$base_path.jtr"
hs_err_files=$(ls $report_dir/$base_path/hs_err*.log 2> /dev/null || true)
echo "#### <a id="$anchor">$test"
echo '<details><summary>View test results</summary>'
echo ''
echo '```'
if [[ -f "$report_file" ]]; then
cat "$report_file"
else
echo "Error: Result file $report_file not found"
fi
echo '```'
echo '</details>'
echo ''
if [[ "$hs_err_files" != "" ]]; then
echo '<details><summary>View HotSpot error log</summary>'
echo ''
for hs_err in $hs_err_files; do
echo '```'
echo "$hs_err:"
echo ''
cat "$hs_err"
echo '```'
done
echo '</details>'
echo ''
fi
done >> $GITHUB_STEP_SUMMARY
# With many failures, the summary can easily exceed 1024 kB, the limit set by Github
# Trim it down if so.
summary_size=$(wc -c < $GITHUB_STEP_SUMMARY)
if [[ $summary_size -gt 1000000 ]]; then
# Trim to below 1024 kB, and cut off after the last detail group
head -c 1000000 $GITHUB_STEP_SUMMARY | tac | sed -n -e '/<\/details>/,$ p' | tac > $GITHUB_STEP_SUMMARY.tmp
mv $GITHUB_STEP_SUMMARY.tmp $GITHUB_STEP_SUMMARY
(
echo ''
echo ':x: **WARNING: Summary is too large and has been truncated.**'
echo ''
) >> $GITHUB_STEP_SUMMARY
fi
echo ':arrow_right: To see the entire test log, click the job in the list to the left.' >> $GITHUB_STEP_SUMMARY

69
.github/scripts/gen-test-summary.sh vendored Normal file
View File

@@ -0,0 +1,69 @@
#!/bin/bash
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
GITHUB_STEP_SUMMARY="$1"
test_suite_name=$(cat build/run-test-prebuilt/test-support/test-last-ids.txt)
results_dir=build/run-test-prebuilt/test-results/$test_suite_name/text
if [[ ! -f build/run-test-prebuilt/make-support/exit-with-error ]]; then
# There were no failures, exit now
exit
fi
failures=$(sed -E -e 's/(.*)\.(java|sh)/\1/' -e '/^#/d' $results_dir/newfailures.txt 2> /dev/null || true)
errors=$(sed -E -e 's/(.*)\.(java|sh)/\1/' -e '/^#/d' $results_dir/other_errors.txt 2> /dev/null || true)
failure_count=$(echo $failures | wc -w || true)
error_count=$(echo $errors | wc -w || true)
if [[ "$failures" = "" && "$errors" = "" ]]; then
# We know something went wrong, but not what
echo '::set-output name=error-message::Unspecified test suite failure. Please see log for job for details.'
exit 0
fi
echo '::set-output name=failure::true'
echo "::set-output name=error-message::Test run reported $failure_count test failure(s) and $error_count error(s). See summary for details."
echo '### :boom: Test failures summary' >> $GITHUB_STEP_SUMMARY
if [[ "$failures" != "" ]]; then
echo '' >> $GITHUB_STEP_SUMMARY
echo 'These tests reported failure:' >> $GITHUB_STEP_SUMMARY
for test in $failures; do
anchor="$(echo "$test" | tr [A-Z/] [a-z_])"
echo "* [$test](#user-content-$anchor)"
done >> $GITHUB_STEP_SUMMARY
fi
if [[ "$errors" != "" ]]; then
echo '' >> $GITHUB_STEP_SUMMARY
echo 'These tests reported errors:' >> $GITHUB_STEP_SUMMARY
for test in $errors; do
anchor="$(echo "$test" | tr [A-Z/] [a-z_])"
echo "* [$test](#user-content-$anchor)"
done >> $GITHUB_STEP_SUMMARY
fi

View File

@@ -0,0 +1,178 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Build (cross-compile)'
on:
workflow_call:
inputs:
gcc-major-version:
required: true
type: string
apt-gcc-version:
required: true
type: string
apt-gcc-cross-version:
required: true
type: string
extra-conf-options:
required: false
type: string
jobs:
build-cross-compile:
name: build
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
target-cpu:
- aarch64
- arm
- s390x
- ppc64le
- riscv64
include:
- target-cpu: aarch64
gnu-arch: aarch64
debian-arch: arm64
debian-repository: https://httpredir.debian.org/debian/
debian-version: bullseye
- target-cpu: arm
gnu-arch: arm
debian-arch: armhf
debian-repository: https://httpredir.debian.org/debian/
debian-version: bullseye
gnu-abi: eabihf
- target-cpu: s390x
gnu-arch: s390x
debian-arch: s390x
debian-repository: https://httpredir.debian.org/debian/
debian-version: bullseye
- target-cpu: ppc64le
gnu-arch: powerpc64le
debian-arch: ppc64el
debian-repository: https://httpredir.debian.org/debian/
debian-version: bullseye
- target-cpu: riscv64
gnu-arch: riscv64
debian-arch: riscv64
debian-repository: https://deb.debian.org/debian-ports
debian-keyring: /usr/share/keyrings/debian-ports-archive-keyring.gpg
debian-version: sid
steps:
- name: 'Checkout the JDK source'
uses: actions/checkout@v3
- name: 'Get the BootJDK'
id: bootjdk
uses: ./.github/actions/get-bootjdk
with:
platform: linux-x64
# Use linux-x64 JDK bundle as build JDK
- name: 'Get build JDK'
id: buildjdk
uses: ./.github/actions/get-bundles
with:
platform: linux-x64
# Upgrading apt to solve libc6 installation bugs, see JDK-8260460.
- name: 'Install toolchain and dependencies'
run: |
# Install dependencies using apt-get
sudo apt-get update
sudo apt-get install --only-upgrade apt
sudo apt-get install \
gcc-${{ inputs.gcc-major-version }}=${{ inputs.apt-gcc-version }} \
g++-${{ inputs.gcc-major-version }}=${{ inputs.apt-gcc-version }} \
gcc-${{ inputs.gcc-major-version }}-${{ matrix.gnu-arch }}-linux-gnu${{ matrix.gnu-abi}}=${{ inputs.apt-gcc-cross-version }} \
g++-${{ inputs.gcc-major-version }}-${{ matrix.gnu-arch }}-linux-gnu${{ matrix.gnu-abi}}=${{ inputs.apt-gcc-cross-version }} \
libxrandr-dev libxtst-dev libcups2-dev libasound2-dev \
debian-ports-archive-keyring
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${{ inputs.gcc-major-version }} 100 --slave /usr/bin/g++ g++ /usr/bin/g++-${{ inputs.gcc-major-version }}
- name: 'Check cache for sysroot'
id: get-cached-sysroot
uses: actions/cache@v3
with:
path: sysroot
key: sysroot-${{ matrix.debian-arch }}-${{ hashFiles('./.github/workflows/build-cross-compile.yml') }}
- name: 'Install sysroot dependencies'
run: sudo apt-get install debootstrap qemu-user-static
if: steps.get-cached-sysroot.outputs.cache-hit != 'true'
- name: 'Create sysroot'
run: >
sudo debootstrap
--arch=${{ matrix.debian-arch }}
--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
$(test -n "${{ matrix.debian-keyring }}" && echo "--keyring=${{ matrix.debian-keyring }}")
${{ matrix.debian-version }}
sysroot
${{ matrix.debian-repository }}
if: steps.get-cached-sysroot.outputs.cache-hit != 'true'
- name: 'Prepare sysroot'
run: |
# Prepare sysroot and remove unused files to minimize cache
sudo chroot sysroot symlinks -cr .
sudo chown ${USER} -R sysroot
rm -rf sysroot/{dev,proc,run,sys,var}
rm -rf sysroot/usr/{sbin,bin,share}
rm -rf sysroot/usr/lib/{apt,udev,systemd}
if: steps.get-cached-sysroot.outputs.cache-hit != 'true'
- name: 'Configure'
run: >
bash configure
--with-conf-name=linux-${{ matrix.target-cpu }}
--with-version-opt=${GITHUB_ACTOR}-${GITHUB_SHA}
--with-boot-jdk=${{ steps.bootjdk.outputs.path }}
--with-zlib=system
--enable-debug
--disable-precompiled-headers
--openjdk-target=${{ matrix.gnu-arch }}-linux-gnu${{ matrix.gnu-abi}}
--with-sysroot=sysroot
--with-build-jdk=${{ steps.buildjdk.outputs.jdk-path }}
--with-jmod-compress=zip-1
CC=${{ matrix.gnu-arch }}-linux-gnu${{ matrix.gnu-abi}}-gcc-${{ inputs.gcc-major-version }}
CXX=${{ matrix.gnu-arch }}-linux-gnu${{ matrix.gnu-abi}}-g++-${{ inputs.gcc-major-version }}
${{ inputs.extra-conf-options }} || (
echo "Dumping config.log:" &&
cat config.log &&
exit 1)
- name: 'Build'
id: build
uses: ./.github/actions/do-build
with:
make-target: 'hotspot'
platform: linux-${{ matrix.target-cpu }}

143
.github/workflows/build-linux.yml vendored Normal file
View File

@@ -0,0 +1,143 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Build (linux)'
on:
workflow_call:
inputs:
platform:
required: true
type: string
extra-conf-options:
required: false
type: string
make-target:
required: false
type: string
default: 'product-bundles test-bundles'
debug-levels:
required: false
type: string
default: '[ "debug", "release" ]'
gcc-major-version:
required: true
type: string
gcc-package-suffix:
required: false
type: string
default: ''
apt-gcc-version:
required: true
type: string
apt-architecture:
required: false
type: string
apt-extra-packages:
required: false
type: string
jobs:
build-linux:
name: build
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
debug-level: ${{ fromJSON(inputs.debug-levels) }}
include:
- debug-level: debug
flags: --with-debug-level=fastdebug
suffix: -debug
steps:
- name: 'Checkout the JDK source'
uses: actions/checkout@v3
- name: 'Get the BootJDK'
id: bootjdk
uses: ./.github/actions/get-bootjdk
with:
platform: linux-x64
- name: 'Get JTReg'
id: jtreg
uses: ./.github/actions/get-jtreg
- name: 'Get GTest'
id: gtest
uses: ./.github/actions/get-gtest
- name: 'Set architecture'
id: arch
run: |
# Set a proper suffix for packages if using a different architecture
if [[ '${{ inputs.apt-architecture }}' != '' ]]; then
echo '::set-output name=suffix:::${{ inputs.apt-architecture }}'
fi
# Upgrading apt to solve libc6 installation bugs, see JDK-8260460.
- name: 'Install toolchain and dependencies'
run: |
# Install dependencies using apt-get
if [[ '${{ inputs.apt-architecture }}' != '' ]]; then
sudo dpkg --add-architecture ${{ inputs.apt-architecture }}
fi
sudo apt-get update
sudo apt-get install --only-upgrade apt
sudo apt-get install gcc-${{ inputs.gcc-major-version }}${{ inputs.gcc-package-suffix }}=${{ inputs.apt-gcc-version }} g++-${{ inputs.gcc-major-version }}${{ inputs.gcc-package-suffix }}=${{ inputs.apt-gcc-version }} libxrandr-dev${{ steps.arch.outputs.suffix }} libxtst-dev${{ steps.arch.outputs.suffix }} libcups2-dev${{ steps.arch.outputs.suffix }} libasound2-dev${{ steps.arch.outputs.suffix }} ${{ inputs.apt-extra-packages }}
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${{ inputs.gcc-major-version }} 100 --slave /usr/bin/g++ g++ /usr/bin/g++-${{ inputs.gcc-major-version }}
- name: 'Configure'
run: >
bash configure
--with-conf-name=${{ inputs.platform }}
${{ matrix.flags }}
--with-version-opt=${GITHUB_ACTOR}-${GITHUB_SHA}
--with-boot-jdk=${{ steps.bootjdk.outputs.path }}
--with-jtreg=${{ steps.jtreg.outputs.path }}
--with-gtest=${{ steps.gtest.outputs.path }}
--enable-jtreg-failure-handler
--with-zlib=system
--with-jmod-compress=zip-1
${{ inputs.extra-conf-options }} || (
echo "Dumping config.log:" &&
cat config.log &&
exit 1)
- name: 'Build'
id: build
uses: ./.github/actions/do-build
with:
make-target: '${{ inputs.make-target }}'
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'
- name: 'Upload bundles'
uses: ./.github/actions/upload-bundles
with:
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'

118
.github/workflows/build-macos.yml vendored Normal file
View File

@@ -0,0 +1,118 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Build (macos)'
on:
workflow_call:
inputs:
platform:
required: true
type: string
extra-conf-options:
required: false
type: string
make-target:
required: false
type: string
default: 'product-bundles test-bundles'
debug-levels:
required: false
type: string
default: '[ "debug", "release" ]'
xcode-toolset-version:
required: true
type: string
jobs:
build-macos:
name: build
runs-on: macos-11
strategy:
fail-fast: false
matrix:
debug-level: ${{ fromJSON(inputs.debug-levels) }}
include:
- debug-level: debug
flags: --with-debug-level=fastdebug
suffix: -debug
steps:
- name: 'Checkout the JDK source'
uses: actions/checkout@v3
- name: 'Get the BootJDK'
id: bootjdk
uses: ./.github/actions/get-bootjdk
with:
platform: macos-x64
- name: 'Get JTReg'
id: jtreg
uses: ./.github/actions/get-jtreg
- name: 'Get GTest'
id: gtest
uses: ./.github/actions/get-gtest
- name: 'Install toolchain and dependencies'
run: |
# Run Homebrew installation and xcode-select
brew install make
sudo xcode-select --switch /Applications/Xcode_${{ inputs.xcode-toolset-version }}.app/Contents/Developer
# This will make GNU make available as 'make' and not only as 'gmake'
echo '/usr/local/opt/make/libexec/gnubin' >> $GITHUB_PATH
- name: 'Configure'
run: >
bash configure
--with-conf-name=${{ inputs.platform }}
${{ matrix.flags }}
--with-version-opt=${GITHUB_ACTOR}-${GITHUB_SHA}
--with-boot-jdk=${{ steps.bootjdk.outputs.path }}
--with-jtreg=${{ steps.jtreg.outputs.path }}
--with-gtest=${{ steps.gtest.outputs.path }}
--enable-jtreg-failure-handler
--with-zlib=system
--with-jmod-compress=zip-1
${{ inputs.extra-conf-options }} || (
echo "Dumping config.log:" &&
cat config.log &&
exit 1)
- name: 'Build'
id: build
uses: ./.github/actions/do-build
with:
make-target: '${{ inputs.make-target }}'
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'
- name: 'Upload bundles'
uses: ./.github/actions/upload-bundles
with:
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'

135
.github/workflows/build-windows.yml vendored Normal file
View File

@@ -0,0 +1,135 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Build (windows)'
on:
workflow_call:
inputs:
platform:
required: true
type: string
extra-conf-options:
required: false
type: string
make-target:
required: false
type: string
default: 'product-bundles test-bundles'
debug-levels:
required: false
type: string
default: '[ "debug", "release" ]'
msvc-toolset-version:
required: true
type: string
msvc-toolset-architecture:
required: true
type: string
env:
# These are needed to make the MSYS2 bash work properly
MSYS2_PATH_TYPE: minimal
CHERE_INVOKING: 1
jobs:
build-windows:
name: build
runs-on: windows-2019
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
debug-level: ${{ fromJSON(inputs.debug-levels) }}
include:
- debug-level: debug
flags: --with-debug-level=fastdebug
suffix: -debug
steps:
- name: 'Checkout the JDK source'
uses: actions/checkout@v3
- name: 'Get MSYS2'
uses: ./.github/actions/get-msys2
- name: 'Get the BootJDK'
id: bootjdk
uses: ./.github/actions/get-bootjdk
with:
platform: windows-x64
- name: 'Get JTReg'
id: jtreg
uses: ./.github/actions/get-jtreg
- name: 'Get GTest'
id: gtest
uses: ./.github/actions/get-gtest
- name: 'Install toolchain and dependencies'
run: |
# Run Visual Studio Installer
'/c/Program Files (x86)/Microsoft Visual Studio/Installer/vs_installer.exe' \
modify --quiet --installPath 'C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise' \
--add Microsoft.VisualStudio.Component.VC.${{ inputs.msvc-toolset-version }}.${{ inputs.msvc-toolset-architecture }}
- name: 'Configure'
run: >
bash configure
--with-conf-name=${{ inputs.platform }}
${{ matrix.flags }}
--with-version-opt=${GITHUB_ACTOR}-${GITHUB_SHA}
--with-boot-jdk=${{ steps.bootjdk.outputs.path }}
--with-jtreg=${{ steps.jtreg.outputs.path }}
--with-gtest=${{ steps.gtest.outputs.path }}
--enable-jtreg-failure-handler
--with-msvc-toolset-version=${{ inputs.msvc-toolset-version }}
--with-jmod-compress=zip-1
${{ inputs.extra-conf-options }} || (
echo "Dumping config.log:" &&
cat config.log &&
exit 1)
env:
# We need a minimal PATH on Windows
# Set PATH to "", so just GITHUB_PATH is included
PATH: ''
- name: 'Build'
id: build
uses: ./.github/actions/do-build
with:
make-target: '${{ inputs.make-target }}'
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'
- name: 'Upload bundles'
uses: ./.github/actions/upload-bundles
with:
platform: ${{ inputs.platform }}
debug-suffix: '${{ matrix.suffix }}'

342
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,342 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'OpenJDK GHA Sanity Checks'
on:
push:
branches-ignore:
- master
- pr/*
workflow_dispatch:
inputs:
platforms:
description: 'Platform(s) to execute on (comma separated, e.g. "linux-x64, macos, aarch64")'
required: true
default: 'linux-x64, linux-x86, linux-x64-variants, linux-cross-compile, macos-x64, macos-aarch64, windows-x64, windows-aarch64'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
###
### Determine platforms to include
###
select:
name: 'Select platforms'
runs-on: ubuntu-22.04
outputs:
linux-x64: ${{ steps.include.outputs.linux-x64 }}
linux-x86: ${{ steps.include.outputs.linux-x86 }}
linux-x64-variants: ${{ steps.include.outputs.linux-x64-variants }}
linux-cross-compile: ${{ steps.include.outputs.linux-cross-compile }}
macos-x64: ${{ steps.include.outputs.macos-x64 }}
macos-aarch64: ${{ steps.include.outputs.macos-aarch64 }}
windows-x64: ${{ steps.include.outputs.windows-x64 }}
windows-aarch64: ${{ steps.include.outputs.windows-aarch64 }}
steps:
# This function must be inlined in main.yml, or we'd be forced to checkout the repo
- name: 'Check what jobs to run'
id: include
run: |
# Determine which platform jobs to run
# Returns 'true' if the input platform list matches any of the platform monikers given as argument,
# 'false' otherwise.
# arg $1: platform name or names to look for
function check_platform() {
if [[ '${{ !secrets.JDK_SUBMIT_FILTER || startsWith(github.ref, 'refs/heads/submit/') }}' == 'false' ]]; then
# If JDK_SUBMIT_FILTER is set, and this is not a "submit/" branch, don't run anything
echo 'false'
return
fi
if [[ $GITHUB_EVENT_NAME == workflow_dispatch ]]; then
input='${{ github.event.inputs.platforms }}'
elif [[ $GITHUB_EVENT_NAME == push ]]; then
input='${{ secrets.JDK_SUBMIT_PLATFORMS }}'
else
echo 'Internal error in GHA'
exit 1
fi
normalized_input="$(echo ,$input, | tr -d ' ')"
if [[ "$normalized_input" == ",," ]]; then
# For an empty input, assume all platforms should run
echo 'true'
return
else
# Check for all acceptable platform names
for part in $* ; do
if echo "$normalized_input" | grep -q -e ",$part," ; then
echo 'true'
return
fi
done
fi
echo 'false'
}
echo "::set-output name=linux-x64::$(check_platform linux-x64 linux x64)"
echo "::set-output name=linux-x86::$(check_platform linux-x86 linux x86)"
echo "::set-output name=linux-x64-variants::$(check_platform linux-x64-variants variants)"
echo "::set-output name=linux-cross-compile::$(check_platform linux-cross-compile cross-compile)"
echo "::set-output name=macos-x64::$(check_platform macos-x64 macos x64)"
echo "::set-output name=macos-aarch64::$(check_platform macos-aarch64 macos aarch64)"
echo "::set-output name=windows-x64::$(check_platform windows-x64 windows x64)"
echo "::set-output name=windows-aarch64::$(check_platform windows-aarch64 windows aarch64)"
###
### Build jobs
###
build-linux-x64:
name: linux-x64
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
# The linux-x64 jdk bundle is used as buildjdk for the cross-compile job
if: needs.select.outputs.linux-x64 == 'true' || needs.select.outputs.linux-cross-compile == 'true'
build-linux-x86:
name: linux-x86
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x86
gcc-major-version: '10'
gcc-package-suffix: '-multilib'
apt-gcc-version: '10.3.0-15ubuntu1'
apt-architecture: 'i386'
# Some multilib libraries do not have proper inter-dependencies, so we have to
# install their dependencies manually.
apt-extra-packages: 'libfreetype6-dev:i386 libtiff-dev:i386 libcupsimage2-dev:i386 libc6-i386'
extra-conf-options: '--with-target-bits=32'
if: needs.select.outputs.linux-x86 == 'true'
build-linux-x64-hs-nopch:
name: linux-x64-hs-nopch
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
make-target: 'hotspot'
debug-levels: '[ "debug" ]'
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
extra-conf-options: '--disable-precompiled-headers'
if: needs.select.outputs.linux-x64-variants == 'true'
build-linux-x64-hs-zero:
name: linux-x64-hs-zero
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
make-target: 'hotspot'
debug-levels: '[ "debug" ]'
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
extra-conf-options: '--with-jvm-variants=zero --disable-precompiled-headers'
if: needs.select.outputs.linux-x64-variants == 'true'
build-linux-x64-hs-minimal:
name: linux-x64-hs-minimal
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
make-target: 'hotspot'
debug-levels: '[ "debug" ]'
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
extra-conf-options: '--with-jvm-variants=minimal --disable-precompiled-headers'
if: needs.select.outputs.linux-x64-variants == 'true'
build-linux-x64-hs-optimized:
name: linux-x64-hs-optimized
needs: select
uses: ./.github/workflows/build-linux.yml
with:
platform: linux-x64
make-target: 'hotspot'
# Technically this is not the "debug" level, but we can't inject a new matrix state for just this job
debug-levels: '[ "debug" ]'
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
extra-conf-options: '--with-debug-level=optimized --disable-precompiled-headers'
if: needs.select.outputs.linux-x64-variants == 'true'
build-linux-cross-compile:
name: linux-cross-compile
needs:
- select
- build-linux-x64
uses: ./.github/workflows/build-cross-compile.yml
with:
gcc-major-version: '10'
apt-gcc-version: '10.3.0-15ubuntu1'
apt-gcc-cross-version: '10.3.0-8ubuntu1cross1'
if: needs.select.outputs.linux-cross-compile == 'true'
build-macos-x64:
name: macos-x64
needs: select
uses: ./.github/workflows/build-macos.yml
with:
platform: macos-x64
xcode-toolset-version: '11.7'
if: needs.select.outputs.macos-x64 == 'true'
build-macos-aarch64:
name: macos-aarch64
needs: select
uses: ./.github/workflows/build-macos.yml
with:
platform: macos-aarch64
xcode-toolset-version: '12.4'
extra-conf-options: '--openjdk-target=aarch64-apple-darwin'
if: needs.select.outputs.macos-aarch64 == 'true'
build-windows-x64:
name: windows-x64
needs: select
uses: ./.github/workflows/build-windows.yml
with:
platform: windows-x64
msvc-toolset-version: '14.29'
msvc-toolset-architecture: 'x86.x64'
if: needs.select.outputs.windows-x64 == 'true'
build-windows-aarch64:
name: windows-aarch64
needs: select
uses: ./.github/workflows/build-windows.yml
with:
platform: windows-aarch64
msvc-toolset-version: '14.29'
msvc-toolset-architecture: 'arm64'
make-target: 'hotspot'
extra-conf-options: '--openjdk-target=aarch64-unknown-cygwin'
if: needs.select.outputs.windows-aarch64 == 'true'
###
### Test jobs
###
test-linux-x64:
name: linux-x64
needs:
- build-linux-x64
uses: ./.github/workflows/test.yml
with:
platform: linux-x64
bootjdk-platform: linux-x64
runs-on: ubuntu-22.04
test-linux-x86:
name: linux-x86
needs:
- build-linux-x86
uses: ./.github/workflows/test.yml
with:
platform: linux-x86
bootjdk-platform: linux-x64
runs-on: ubuntu-22.04
test-macos-x64:
name: macos-x64
needs:
- build-macos-x64
uses: ./.github/workflows/test.yml
with:
platform: macos-x64
bootjdk-platform: macos-x64
runs-on: macos-11
test-windows-x64:
name: windows-x64
needs:
- build-windows-x64
uses: ./.github/workflows/test.yml
with:
platform: windows-x64
bootjdk-platform: windows-x64
runs-on: windows-2019
# Remove bundles so they are not misconstrued as binary distributions from the JDK project
remove-bundles:
name: 'Remove bundle artifacts'
runs-on: ubuntu-22.04
if: always()
needs:
- build-linux-x64
- build-linux-x86
- build-linux-x64-hs-nopch
- build-linux-x64-hs-zero
- build-linux-x64-hs-minimal
- build-linux-x64-hs-optimized
- build-linux-cross-compile
- build-macos-x64
- build-macos-aarch64
- build-windows-x64
- build-windows-aarch64
- test-linux-x64
- test-linux-x86
- test-macos-x64
- test-windows-x64
steps:
# Hack to get hold of the api environment variables that are only defined for actions
- name: 'Get API configuration'
id: api
uses: actions/github-script@v6
with:
script: 'return { url: process.env["ACTIONS_RUNTIME_URL"], token: process.env["ACTIONS_RUNTIME_TOKEN"] }'
- name: 'Remove bundle artifacts'
run: |
# Find and remove all bundle artifacts
ALL_ARTIFACT_URLS="$(curl -s \
-H 'Accept: application/json;api-version=6.0-preview' \
-H 'Authorization: Bearer ${{ fromJson(steps.api.outputs.result).token }}' \
'${{ fromJson(steps.api.outputs.result).url }}_apis/pipelines/workflows/${{ github.run_id }}/artifacts?api-version=6.0-preview')"
BUNDLE_ARTIFACT_URLS="$(echo "$ALL_ARTIFACT_URLS" | jq -r -c '.value | map(select(.name|startswith("bundles-"))) | .[].url')"
for url in $BUNDLE_ARTIFACT_URLS; do
echo "Removing $url"
curl -s \
-H 'Accept: application/json;api-version=6.0-preview' \
-H 'Authorization: Bearer ${{ fromJson(steps.api.outputs.result).token }}' \
-X DELETE "$url" \
|| echo "Failed to remove bundle"
done

File diff suppressed because it is too large Load Diff

205
.github/workflows/test.yml vendored Normal file
View File

@@ -0,0 +1,205 @@
#
# Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
name: 'Run tests'
on:
workflow_call:
inputs:
platform:
required: true
type: string
bootjdk-platform:
required: true
type: string
runs-on:
required: true
type: string
env:
# These are needed to make the MSYS2 bash work properly
MSYS2_PATH_TYPE: minimal
CHERE_INVOKING: 1
jobs:
test:
name: test
runs-on: ${{ inputs.runs-on }}
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
test-name:
- 'jdk/tier1 part 1'
- 'jdk/tier1 part 2'
- 'jdk/tier1 part 3'
- 'langtools/tier1'
- 'hs/tier1 common'
- 'hs/tier1 compiler'
- 'hs/tier1 gc'
- 'hs/tier1 runtime'
- 'hs/tier1 serviceability'
include:
- test-name: 'jdk/tier1 part 1'
test-suite: 'test/jdk/:tier1_part1'
- test-name: 'jdk/tier1 part 2'
test-suite: 'test/jdk/:tier1_part2'
- test-name: 'jdk/tier1 part 3'
test-suite: 'test/jdk/:tier1_part3'
- test-name: 'langtools/tier1'
test-suite: 'test/langtools/:tier1'
- test-name: 'hs/tier1 common'
test-suite: 'test/hotspot/jtreg/:tier1_common'
debug-suffix: -debug
- test-name: 'hs/tier1 compiler'
test-suite: 'test/hotspot/jtreg/:tier1_compiler'
debug-suffix: -debug
- test-name: 'hs/tier1 gc'
test-suite: 'test/hotspot/jtreg/:tier1_gc'
debug-suffix: -debug
- test-name: 'hs/tier1 runtime'
test-suite: 'test/hotspot/jtreg/:tier1_runtime'
debug-suffix: -debug
- test-name: 'hs/tier1 serviceability'
test-suite: 'test/hotspot/jtreg/:tier1_serviceability'
debug-suffix: -debug
steps:
- name: 'Checkout the JDK source'
uses: actions/checkout@v3
- name: 'Get MSYS2'
uses: ./.github/actions/get-msys2
if: runner.os == 'Windows'
- name: 'Get the BootJDK'
id: bootjdk
uses: ./.github/actions/get-bootjdk
with:
platform: ${{ inputs.bootjdk-platform }}
- name: 'Get JTReg'
id: jtreg
uses: ./.github/actions/get-jtreg
- name: 'Get bundles'
id: bundles
uses: ./.github/actions/get-bundles
with:
platform: ${{ inputs.platform }}
debug-suffix: ${{ matrix.debug-suffix }}
- name: 'Install dependencies'
run: |
# On macOS we need to install some dependencies for testing
brew install make
sudo xcode-select --switch /Applications/Xcode_11.7.app/Contents/Developer
# This will make GNU make available as 'make' and not only as 'gmake'
echo '/usr/local/opt/make/libexec/gnubin' >> $GITHUB_PATH
if: runner.os == 'macOS'
- name: 'Set PATH'
id: path
run: |
# We need a minimal PATH on Windows
# Set PATH to "", so just GITHUB_PATH is included
if [[ '${{ runner.os }}' == 'Windows' ]]; then
echo "::set-output name=value::"
else
echo "::set-output name=value::$PATH"
fi
- name: 'Run tests'
id: run-tests
run: >
make test-prebuilt
TEST='${{ matrix.test-suite }}'
BOOT_JDK=${{ steps.bootjdk.outputs.path }}
JT_HOME=${{ steps.jtreg.outputs.path }}
JDK_IMAGE_DIR=${{ steps.bundles.outputs.jdk-path }}
SYMBOLS_IMAGE_DIR=${{ steps.bundles.outputs.symbols-path }}
TEST_IMAGE_DIR=${{ steps.bundles.outputs.tests-path }}
JTREG='JAVA_OPTIONS=-XX:-CreateCoredumpOnCrash;VERBOSE=fail,error,time;KEYWORDS=!headful'
&& bash ./.github/scripts/gen-test-summary.sh "$GITHUB_STEP_SUMMARY"
env:
PATH: ${{ steps.path.outputs.value }}
# This is a separate step, since if the markdown from a step gets bigger than
# 1024 kB it is skipped, but then the short summary above is still generated
- name: 'Generate test report'
run: bash ./.github/scripts/gen-test-results.sh "$GITHUB_STEP_SUMMARY"
if: always()
- name: 'Package test results'
id: package
run: |
# Package test-results and relevant parts of test-support
mkdir results
if [[ -d build/run-test-prebuilt/test-results ]]; then
cd build/run-test-prebuilt/test-results/
zip -r -9 "$GITHUB_WORKSPACE/results/test-results.zip" .
cd $GITHUB_WORKSPACE
else
echo '::warning ::Missing test-results directory'
fi
if [[ -d build/run-test-prebuilt/test-support ]]; then
cd build/run-test-prebuilt/test-support/
zip -r -9 "$GITHUB_WORKSPACE/results/test-support.zip" . -i *.jtr -i */hs_err*.log -i */replay*.log
cd $GITHUB_WORKSPACE
else
echo '::warning ::Missing test-support directory'
fi
artifact_name="results-${{ inputs.platform }}-$(echo ${{ matrix.test-name }} | tr '/ ' '__')"
echo "::set-output name=artifact-name::$artifact_name"
if: always()
- name: 'Upload test results'
uses: actions/upload-artifact@v3
with:
path: results
name: ${{ steps.package.outputs.artifact-name }}
if: always()
# This is the best way I found to abort the job with an error message
- name: 'Notify about test failures'
uses: actions/github-script@v6
with:
script: core.setFailed('${{ steps.run-tests.outputs.error-message }}')
if: steps.run-tests.outputs.failure == 'true'

View File

@@ -1,7 +1,7 @@
[general]
project=jdk
jbs=JDK
version=19
version=20
[checks]
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists

View File

@@ -1,11 +1,64 @@
# Welcome to the JDK!
## Wakefield
This is a temporary section created to host information on the
[Wakefield](https://wiki.openjdk.java.net/display/wakefield) project.
### Building
There are two addition `configure` arguments:
```
--with-wayland specify prefix directory for the wayland package
(expecting the headers under PATH/include)
--with-wayland-include specify directory for the wayland include files
```
As usual, there should be no need to specify those explicitly unless you're doing
something tricky.
However, a variant of `libwayland-dev` needs to be installed on the build system.
### Running
Make sure your system is configured such that `libwayland` can find the socket to connect to;
usually this means that the environment variable `WAYLAND_DISPLAY` is set to something
sensible. Then add this argument to `java`
```
-Dawt.toolkit.name=WLToolkit
```
### Testing
Testing that involves `Robot` is done inside a [Weston](https://gitlab.freedesktop.org/wayland/weston/)
instance with a special module loaded called `libwakefield`
that provides the necessary functionality. The Wayland-specific tests are therefore executed with a dedicated test driver
`test/jdk/java/awt/wakefield/WakefieldTestDriver.java`. The driver also provides an easy
way to run the test in several configurations with a different size and even number
of "outputs" (monitors).
To run the Wayland-specific tests, perform these steps:
* Install Weston version 9 (earlier versions are known NOT to work).
* Obtain `libwakefield.so` either by building from source (available under
`src/java.desktop/share/native/libwakefield` and not integrated into the rest of the
build infrastructure; see `README.md` there)
or by fetching the latest pre-built `x64` binary
```
wget https://github.com/mkartashev/wakefield/raw/main/libwakefield.so
```
* Set `LIBWAKEFIELD` environment variable to the full path to `libwakefield.so`
```
export LIBWAKEFIELD=/tmp/wakefield-testing/libwakefield.so
```
* Run `jtreg` like so
```
jtreg -e:XDG_RUNTIME_DIR -e:LIBWAKEFIELD -testjdk:... test/jdk/java/awt/wakefield/
```
This was verified to work in `Ubuntu 21.10`.
This does NOT work in `Ubuntu 21.04` or `Fedora 34`.
## Generic Info (not Wakefield-specific)
For build instructions please see the
[online documentation](https://openjdk.java.net/groups/build/doc/building.html),
[online documentation](https://openjdk.org/groups/build/doc/building.html),
or either of these files:
- [doc/building.html](doc/building.html) (html version)
- [doc/building.md](doc/building.md) (markdown version)
See <https://openjdk.java.net/> for more information about
See <https://openjdk.org/> for more information about
the OpenJDK Community and the JDK.

View File

@@ -215,14 +215,28 @@ replace_template_dir "$IDEA_OUTPUT"
CLASSES=$IDEA_OUTPUT/classes
if [ "x$ANT_HOME" = "x" ] ; then
# try some common locations, before giving up
if [ -f "/usr/share/ant/lib/ant.jar" ] ; then
ANT_HOME="/usr/share/ant"
elif [ -f "/usr/local/Cellar/ant/1.9.4/libexec/lib/ant.jar" ] ; then
ANT_HOME="/usr/local/Cellar/ant/1.9.4/libexec"
else
echo "FATAL: cannot find ant. Try setting ANT_HOME." >&2; exit 1
fi
# try some common locations
if [ -f "/usr/share/ant/lib/ant.jar" ] ; then
ANT_HOME="/usr/share/ant"
else
try_ant=$(ls /opt/homebrew/Cellar/ant/*/libexec/lib/ant.jar 2> /dev/null | sort -r | head -n 1)
if [ "x$try_ant" != "x" ] ; then
ANT_HOME=$(cd $(dirname $try_ant)/.. && pwd)
else
try_ant=$(ls /usr/local/Cellar/ant/*/libexec/lib/ant.jar 2> /dev/null | sort -r | head -n 1)
if [ "x$try_ant" != "x" ] ; then
ANT_HOME=$(cd $(dirname $try_ant)/.. && pwd)
fi
fi
fi
else
if [ ! -f "$ANT_HOME/lib/ant.jar" ] ; then
echo "FATAL: ANT_HOME is incorrect. Try removing it and use autodetection, or fix the value" >&2; exit 1
fi
fi
if [ "x$ANT_HOME" = "x" ] ; then
echo "FATAL: cannot find ant. Try setting ANT_HOME." >&2; exit 1
fi
CP=$ANT_HOME/lib/ant.jar
rm -rf $CLASSES; mkdir $CLASSES
@@ -230,7 +244,7 @@ rm -rf $CLASSES; mkdir $CLASSES
# If we have a Windows boot JDK, we need a .exe suffix
if [ -e "$BOOT_JDK/bin/java.exe" ] ; then
JAVAC=javac.exe
else
else
JAVAC=javac
fi

View File

@@ -70,6 +70,9 @@
<li><a href="#make-control-variables">Make Control Variables</a></li>
</ul></li>
<li><a href="#running-tests">Running Tests</a></li>
<li><a href="#signing">Signing</a><ul>
<li><a href="#macos-1">macOS</a></li>
</ul></li>
<li><a href="#cross-compiling">Cross-compiling</a><ul>
<li><a href="#cross-compiling-the-easy-way-with-openjdk-devkits">Cross compiling the easy way with OpenJDK devkits</a></li>
<li><a href="#boot-jdk-and-build-jdk">Boot JDK and Build JDK</a></li>
@@ -112,13 +115,14 @@
<li><a href="#developing-the-build-system-itself">Developing the Build System Itself</a></li>
</ul></li>
<li><a href="#contributing-to-the-jdk">Contributing to the JDK</a></li>
<li><a href="#editing-this-document">Editing this document</a></li>
</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 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>git clone https://git.openjdk.java.net/jdk/</code></p></li>
<code>git clone https://git.openjdk.org/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>
@@ -132,9 +136,9 @@
<p>If any of these steps failed, or if you want to know more about build requirements or build functionality, please continue reading this document.</p>
<h2 id="introduction">Introduction</h2>
<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>
<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.org/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="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>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.org/">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>
@@ -148,7 +152,7 @@
<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>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 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.org/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>
@@ -194,7 +198,7 @@
</tbody>
</table>
<p>The double version numbers for Linux are due to the hybrid model used at Oracle, where header files and external libraries from an older version are used when building on a more modern version of the OS.</p>
<p>The Build Group has a wiki page with <a href="https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms">Supported Build Platforms</a>. From time to time, this is updated by contributors to list successes or failures of building on different platforms.</p>
<p>The Build Group has a wiki page with <a href="https://wiki.openjdk.org/display/Build/Supported+Build+Platforms">Supported Build Platforms</a>. From time to time, this is updated by contributors to list successes or failures of building on different platforms.</p>
<h3 id="windows">Windows</h3>
<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>
@@ -233,7 +237,7 @@
<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>
<p>Please consult the AIX section of the <a href="https://wiki.openjdk.org/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>
<p>Large portions of the JDK consists of native code, that needs to be compiled to be able to run on the target platform. In theory, toolchain and operating system should be independent factors, but in practice there's more or less a one-to-one correlation between target operating system and toolchain.</p>
<table>
@@ -300,11 +304,11 @@
<p>It is advisable to keep an older version of Xcode for building the JDK when updating Xcode. This <a href="http://iosdevelopertips.com/xcode/install-multiple-versions-of-xcode.html">blog page</a> has good suggestions on managing multiple Xcode versions. To use a specific version of Xcode, use <code>xcode-select -s</code> before running <code>configure</code>, or use <code>--with-toolchain-path</code> to point to the version of Xcode to use, e.g. <code>configure --with-toolchain-path=/Applications/Xcode8.app/Contents/Developer/usr/bin</code></p>
<p>If you have recently (inadvertently) updated your OS and/or Xcode version, and the JDK can no longer be built, please see the section on <a href="#problems-with-the-build-environment">Problems with the Build Environment</a>, and <a href="#getting-help">Getting Help</a> to find out if there are any recent, non-merged patches available for this update.</p>
<h3 id="microsoft-visual-studio">Microsoft Visual Studio</h3>
<p>For aarch64 machines running Windows the minimum accepted version is Visual Studio 2019 (16.8 or higher). For all other platforms the minimum accepted version of Visual Studio is 2017. Older versions will not be accepted by <code>configure</code> and will not work. For all platforms the maximum accepted version of Visual Studio is 2022.</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>The minimum accepted version is Visual Studio 2019 version 16.8. (Note that this version is often presented as &quot;MSVC 14.28&quot;, and reported by cl.exe as 19.28.) Older versions will not be accepted by <code>configure</code> and will not work. The maximum accepted version of Visual Studio is 2022.</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=2022</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>
<p>Please consult the AIX section of the <a href="https://wiki.openjdk.org/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>
<p>Paradoxically, building the JDK requires a pre-existing JDK. This is called the &quot;boot JDK&quot;. The boot JDK does not, however, have to be a JDK built directly from the source code available in the OpenJDK Community. If you are porting the JDK to a new platform, chances are that there already exists another JDK for that platform that is usable as boot JDK.</p>
<p>The rule of thumb is that the boot JDK for building JDK major version <em>N</em> should be a JDK of major version <em>N-1</em>, so for building JDK 9 a JDK 8 would be suitable as boot JDK. However, the JDK should be able to &quot;build itself&quot;, so an up-to-date build of the current JDK source is an acceptable alternative. If you are following the <em>N-1</em> rule, make sure you've got the latest update version, since JDK 8 GA might not be able to build JDK 9 on all platforms.</p>
@@ -508,8 +512,8 @@
<li><code>SPEC_FILTER</code></li>
</ul>
<h2 id="running-tests">Running Tests</h2>
<p>Most of the JDK tests are using the <a href="http://openjdk.java.net/jtreg">JTReg</a> test framework. Make sure that your configuration knows where to find your installation of JTReg. If this is not picked up automatically, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc.</p>
<p>The <a href="https://wiki.openjdk.java.net/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptopenjdk.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
<p>Most of the JDK tests are using the <a href="http://openjdk.org/jtreg">JTReg</a> test framework. Make sure that your configuration knows where to find your installation of JTReg. If this is not picked up automatically, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc.</p>
<p>The <a href="https://wiki.openjdk.org/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptopenjdk.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
<p>Building of Hotspot Gtest suite requires the source code of Google Test framework. The top directory, which contains both <code>googletest</code> and <code>googlemock</code> directories, should be specified via <code>--with-gtest</code>. The supported version of Google Test is 1.8.1, whose source code can be obtained:</p>
<ul>
<li>by downloading and unpacking the source bundle from <a href="https://github.com/google/googletest/releases/tag/release-1.8.1">here</a></li>
@@ -518,6 +522,12 @@
<p>To execute the most basic tests (tier 1), use:</p>
<pre><code>make run-test-tier1</code></pre>
<p>For more details on how to run tests, please see <strong>Testing the JDK</strong> (<a href="testing.html">html</a>, <a href="testing.md">markdown</a>).</p>
<h2 id="signing">Signing</h2>
<h3 id="macos-1">macOS</h3>
<p>Modern versions of macOS require applications to be signed and notarizied before distribution. See Apple's documentation for more background on what this means and how it works. To help support this, the JDK build can be configured to automatically sign all native binaries, and the JDK bundle, with all the options needed for successful notarization, as well as all the entitlements required by the JDK. To enable <code>hardened</code> signing, use configure parameter <code>--with-macosx-codesign=hardened</code> and configure the signing identity you wish to use with <code>--with-macosx-codesign-identity=&lt;identity&gt;</code>. The identity refers to a signing identity from Apple that needs to be preinstalled on the build host.</p>
<p>When not signing for distribution with the hardened option, the JDK build will still attempt to perform <code>adhoc</code> signing to add the special entitlement <code>com.apple.security.get-task-allow</code> to each binary. This entitlement is required to be able to dump core files from a process. Note that adding this entitlement makes the build invalid for notarization, so it is only added when signing in <code>debug</code> mode. To explicitly enable this kind of adhoc signing, use configure parameter <code>--with-macosx-codesign=debug</code>. It will be enabled by default in most cases.</p>
<p>It's also possible to completely disable any explicit codesign operations done by the JDK build using the configure parameter <code>--without-macosx-codesign</code>. The exact behavior then depends on the architecture. For macOS on x64, it (at least at the time of this writing) results in completely unsigned binaries that should still work fine for development and debugging purposes. On aarch64, the Xcode linker will apply a default &quot;adhoc&quot; signing, without any entitlements. Such a build does not allow dumping core files.</p>
<p>The default mode &quot;auto&quot; will try for <code>hardened</code> signing if the debug level is <code>release</code> and either the default identity or the specified identity is valid. If hardened isn't possible, then <code>debug</code> signing is chosen if it works. If nothing works, the codesign build step is disabled.</p>
<h2 id="cross-compiling">Cross-compiling</h2>
<p>Cross-compiling means using one platform (the <em>build</em> platform) to generate output that can ran on another platform (the <em>target</em> platform).</p>
<p>The typical reason for cross-compiling is that the build is performed on a more powerful desktop computer, but the resulting binaries will be able to run on a different, typically low-performing system. Most of the complications that arise when building for embedded is due to this separation of <em>build</em> and <em>target</em> systems.</p>
@@ -810,7 +820,7 @@ ls build/linux-aarch64-server-release/</code></pre></li>
<p><a href="http://github.com/icecc/icecream">icecc/icecream</a> is a simple way to setup a distributed compiler network. If you have multiple machines available for building the JDK, you can drastically cut individual build times by utilizing it.</p>
<p>To use, setup an icecc network, and install icecc on the build machine. Then run <code>configure</code> using <code>--enable-icecc</code>.</p>
<h3 id="using-sjavac">Using sjavac</h3>
<p>To speed up Java compilation, especially incremental compilations, you can try the experimental sjavac compiler by using <code>--enable-sjavac</code>.</p>
<p>To speed up compilation of Java code, especially during incremental compilations, the sjavac server is automatically enabled in the configuration step by default. To explicitly enable or disable sjavac, use either <code>--enable-javac-server</code> or <code>--disable-javac-server</code>.</p>
<h3 id="building-the-right-target">Building the Right Target</h3>
<p>Selecting the proper target to build can have dramatic impact on build time. For normal usage, <code>jdk</code> or the default target is just fine. You only need to build <code>images</code> for shipping, or if your tests require it.</p>
<p>See also <a href="#using-fine-grained-make-targets">Using Fine-Grained Make Targets</a> on how to build an even smaller subset of the product.</p>
@@ -886,7 +896,7 @@ spawn failed</code></pre>
<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 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.org">build-dev@openjdk.org</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="reproducible-builds">Reproducible Builds</h2>
<p>Build reproducibility is the property of getting exactly the same bits out when building, every time, independent on who builds the product, or where. This is for many reasons a harder goal than it initially appears, but it is an important goal, for security reasons and others. Please see <a href="https://reproducible-builds.org">Reproducible Builds</a> for more information about the background and reasons for reproducible builds.</p>
@@ -898,13 +908,13 @@ spawn failed</code></pre>
<pre><code>export SOURCE_DATE_EPOCH=946684800
bash configure --with-version-opt=adhoc
make</code></pre>
<p>Note that regardless if you specify a source date for <code>configure</code> or not, the JDK build system will set <code>SOURCE_DATE_EPOCH</code> for all build tools when building. If <code>--with-source-date</code> has the value <code>updated</code> (which is the default unless <code>SOURCE_DATE_EPOCH</code> is found by in the environment by <code>configure</code>), the source date value will be determined at build time.</p>
<p>Note that regardless if you specify a source date for <code>configure</code> or not, the JDK build system will set <code>SOURCE_DATE_EPOCH</code> for all build tools when building. If <code>--with-source-date</code> has the value <code>current</code> (which is the default unless <code>SOURCE_DATE_EPOCH</code> is found by in the environment by <code>configure</code>), the source date value will be determined at configure time.</p>
<p>There are several aspects of reproducible builds that can be individually adjusted by <code>configure</code> arguments. If any of these are given, they will override the value derived from <code>SOURCE_DATE_EPOCH</code>. These arguments are:</p>
<ul>
<li><p><code>--with-source-date</code></p>
<p>This option controls how the JDK build sets <code>SOURCE_DATE_EPOCH</code> when building. It can be set to a value describing a date, either an epoch based timestamp as an integer, or a valid ISO-8601 date.</p>
<p>It can also be set to one of the special values <code>current</code>, <code>updated</code> or <code>version</code>. <code>current</code> means that the time of running <code>configure</code> will be used. <code>version</code> will use the nominal release date for the current JDK version. <code>updated</code>, which means that <code>SOURCE_DATE_EPOCH</code> will be set to the current time each time you are running <code>make</code>. All choices, except for <code>updated</code>, will set a fixed value for the source date timestamp.</p>
<p>When <code>SOURCE_DATE_EPOCH</code> is set, the default value for <code>--with-source-date</code> will be the value given by <code>SOURCE_DATE_EPOCH</code>. Otherwise, the default value is <code>updated</code>.</p></li>
<p>When <code>SOURCE_DATE_EPOCH</code> is set, the default value for <code>--with-source-date</code> will be the value given by <code>SOURCE_DATE_EPOCH</code>. Otherwise, the default value is <code>current</code>.</p></li>
<li><p><code>--with-hotspot-build-time</code></p>
<p>This option controls the build time string that will be included in the hotspot library (<code>libjvm.so</code> or <code>jvm.dll</code>). When the source date is fixed (e.g. by setting <code>SOURCE_DATE_EPOCH</code>), the default value for <code>--with-hotspot-build-time</code> will be an ISO 8601 representation of that time stamp. Otherwise the default value will be the current time when building hotspot.</p></li>
<li><p><code>--with-copyright-year</code></p>
@@ -1027,11 +1037,13 @@ test-support/</code></pre>
<pre><code>make COMPARE_BUILD=CONF=--enable-new-hotspot-feature:MAKE=hotspot</code></pre>
<p>See <code>make/InitSupport.gmk</code> for details on how to use <code>COMPARE_BUILD</code>.</p>
<p>To analyze build performance, run with <code>LOG=trace</code> and check <code>$BUILD/build-trace-time.log</code>. Use <code>JOBS=1</code> to avoid parallelism.</p>
<p>Please check that you adhere to the <a href="http://openjdk.java.net/groups/build/doc/code-conventions.html">Code Conventions for the Build System</a> before submitting patches.</p>
<p>Please check that you adhere to the <a href="http://openjdk.org/groups/build/doc/code-conventions.html">Code Conventions for the Build System</a> before submitting patches.</p>
<h2 id="contributing-to-the-jdk">Contributing to the JDK</h2>
<p>So, now you've built your JDK, and made your first patch, and want to contribute it back to the OpenJDK Community.</p>
<p>First of all: Thank you! We gladly welcome your contribution. However, please bear in mind that the JDK is a massive project, and we must ask you to follow our rules and guidelines to be able to accept your contribution.</p>
<p>The official place to start is the <a href="http://openjdk.java.net/contribute/">'How to contribute' page</a>. There is also an official (but somewhat outdated and skimpy on details) <a href="http://openjdk.java.net/guide/">Developer's Guide</a>.</p>
<p>If this seems overwhelming to you, the Adoption Group is there to help you! A good place to start is their <a href="https://wiki.openjdk.java.net/display/Adoption/New+Contributor">'New Contributor' page</a>, or start reading the comprehensive <a href="https://adoptopenjdk.gitbooks.io/adoptopenjdk-getting-started-kit/en/">Getting Started Kit</a>. The Adoption Group will also happily answer any questions you have about contributing. Contact them by <a href="http://mail.openjdk.java.net/mailman/listinfo/adoption-discuss">mail</a> or <a href="http://openjdk.java.net/irc/">IRC</a>.</p>
<p>The official place to start is the <a href="http://openjdk.org/contribute/">'How to contribute' page</a>. There is also an official (but somewhat outdated and skimpy on details) <a href="http://openjdk.org/guide/">Developer's Guide</a>.</p>
<p>If this seems overwhelming to you, the Adoption Group is there to help you! A good place to start is their <a href="https://wiki.openjdk.org/display/Adoption/New+Contributor">'New Contributor' page</a>, or start reading the comprehensive <a href="https://adoptopenjdk.gitbooks.io/adoptopenjdk-getting-started-kit/en/">Getting Started Kit</a>. The Adoption Group will also happily answer any questions you have about contributing. Contact them by <a href="http://mail.openjdk.org/mailman/listinfo/adoption-discuss">mail</a> or <a href="http://openjdk.org/irc/">IRC</a>.</p>
<h2 id="editing-this-document">Editing this document</h2>
<p>If you want to contribute changes to this document, edit <code>doc/building.md</code> and then run <code>make update-build-docs</code> to generate the same changes in <code>doc/building.html</code>.</p>
</body>
</html>

View File

@@ -7,7 +7,7 @@ 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): \
`git clone https://git.openjdk.java.net/jdk/`
`git clone https://git.openjdk.org/jdk/`
2. [Run configure](#running-configure): \
`bash configure`
@@ -40,14 +40,14 @@ reasonably powerful hardware.
If you just want to use the JDK and not build it yourself, this document is not
for you. See for instance [OpenJDK installation](
http://openjdk.java.net/install) for some methods of installing a prebuilt
http://openjdk.org/install) for some methods of installing a prebuilt
JDK.
## Getting the Source Code
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 Git site](https://git.openjdk.java.net/) you
repository. At the [OpenJDK Git site](https://git.openjdk.org/) 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 `jdk11u` repo, which contains
incremental updates, instead of the `jdk11` repo, which was frozen at JDK 11 GA.
@@ -96,7 +96,7 @@ on where and how to check out the source code.
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
https://wiki.openjdk.org/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
@@ -173,7 +173,7 @@ used at Oracle, where header files and external libraries from an older version
are used when building on a more modern version of the OS.
The Build Group has a wiki page with [Supported Build Platforms](
https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms). From
https://wiki.openjdk.org/display/Build/Supported+Build+Platforms). From
time to time, this is updated by contributors to list successes or failures of
building on different platforms.
@@ -303,7 +303,7 @@ sudo apk add build-base bash grep zip
### AIX
Please consult the AIX section of the [Supported Build Platforms](
https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms) OpenJDK
https://wiki.openjdk.org/display/Build/Supported+Build+Platforms) OpenJDK
Build Wiki page for details about which versions of AIX are supported.
## Native Compiler (Toolchain) Requirements
@@ -382,14 +382,14 @@ available for this update.
### Microsoft Visual Studio
For aarch64 machines running Windows the minimum accepted version is Visual Studio 2019
(16.8 or higher). For all other platforms the minimum accepted version of
Visual Studio is 2017. Older versions will not be accepted by `configure` and will
not work. For all platforms the maximum accepted version of Visual Studio is 2022.
The minimum accepted version is Visual Studio 2019 version 16.8. (Note that this
version is often presented as "MSVC 14.28", and reported by cl.exe as 19.28.)
Older versions will not be accepted by `configure` and will not work. The
maximum accepted version of Visual Studio is 2022.
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`.
setting `--with-toolchain-version`, e.g. `--with-toolchain-version=2022`.
If you have Visual Studio installed but `configure` fails to detect it, it may
be because of [spaces in path](#spaces-in-path).
@@ -397,7 +397,7 @@ be because of [spaces in path](#spaces-in-path).
### IBM XL C/C++
Please consult the AIX section of the [Supported Build Platforms](
https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms) OpenJDK
https://wiki.openjdk.org/display/Build/Supported+Build+Platforms) OpenJDK
Build Wiki page for details about which versions of XLC are supported.
@@ -848,14 +848,14 @@ Suggestions for Advanced Users](#hints-and-suggestions-for-advanced-users) and
## Running Tests
Most of the JDK tests are using the [JTReg](http://openjdk.java.net/jtreg)
Most of the JDK tests are using the [JTReg](http://openjdk.org/jtreg)
test framework. Make sure that your configuration knows where to find your
installation of JTReg. If this is not picked up automatically, use the
`--with-jtreg=<path to jtreg home>` option to point to the JTReg framework.
Note that this option should point to the JTReg home, i.e. the top directory,
containing `lib/jtreg.jar` etc.
The [Adoption Group](https://wiki.openjdk.java.net/display/Adoption) provides
The [Adoption Group](https://wiki.openjdk.org/display/Adoption) provides
recent builds of jtreg [here](
https://ci.adoptopenjdk.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/).
Download the latest `.tar.gz` file, unpack it, and point `--with-jtreg` to the
@@ -877,6 +877,42 @@ make run-test-tier1
For more details on how to run tests, please see **Testing the JDK**
([html](testing.html), [markdown](testing.md)).
## Signing
### macOS
Modern versions of macOS require applications to be signed and notarizied before
distribution. See Apple's documentation for more background on what this means
and how it works. To help support this, the JDK build can be configured to
automatically sign all native binaries, and the JDK bundle, with all the options
needed for successful notarization, as well as all the entitlements required by
the JDK. To enable `hardened` signing, use configure parameter
`--with-macosx-codesign=hardened` and configure the signing identity you wish to
use with `--with-macosx-codesign-identity=<identity>`. The identity refers to a
signing identity from Apple that needs to be preinstalled on the build host.
When not signing for distribution with the hardened option, the JDK build will
still attempt to perform `adhoc` signing to add the special entitlement
`com.apple.security.get-task-allow` to each binary. This entitlement is required
to be able to dump core files from a process. Note that adding this entitlement
makes the build invalid for notarization, so it is only added when signing in
`debug` mode. To explicitly enable this kind of adhoc signing, use configure
parameter `--with-macosx-codesign=debug`. It will be enabled by default in most
cases.
It's also possible to completely disable any explicit codesign operations done
by the JDK build using the configure parameter `--without-macosx-codesign`.
The exact behavior then depends on the architecture. For macOS on x64, it (at
least at the time of this writing) results in completely unsigned binaries that
should still work fine for development and debugging purposes. On aarch64, the
Xcode linker will apply a default "adhoc" signing, without any entitlements.
Such a build does not allow dumping core files.
The default mode "auto" will try for `hardened` signing if the debug level is
`release` and either the default identity or the specified identity is valid.
If hardened isn't possible, then `debug` signing is chosen if it works. If
nothing works, the codesign build step is disabled.
## Cross-compiling
Cross-compiling means using one platform (the *build* platform) to generate
@@ -1296,8 +1332,10 @@ run `configure` using `--enable-icecc`.
### Using sjavac
To speed up Java compilation, especially incremental compilations, you can try
the experimental sjavac compiler by using `--enable-sjavac`.
To speed up compilation of Java code, especially during incremental compilations,
the sjavac server is automatically enabled in the configuration step by default.
To explicitly enable or disable sjavac, use either `--enable-javac-server`
or `--disable-javac-server`.
### Building the Right Target
@@ -1510,7 +1548,7 @@ You can run `fsutil file setshortname` in `cmd` on certain directories, such as
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 [build-dev@openjdk.java.net](mailto:build-dev@openjdk.java.net).
a mail to [build-dev@openjdk.org](mailto:build-dev@openjdk.org).
Please include the relevant parts of the configure and/or build log.
If you need general help or advice about developing for the JDK, you can also
@@ -1557,9 +1595,9 @@ make
Note that regardless if you specify a source date for `configure` or not, the
JDK build system will set `SOURCE_DATE_EPOCH` for all build tools when building.
If `--with-source-date` has the value `updated` (which is the default unless
If `--with-source-date` has the value `current` (which is the default unless
`SOURCE_DATE_EPOCH` is found by in the environment by `configure`), the source
date value will be determined at build time.
date value will be determined at configure time.
There are several aspects of reproducible builds that can be individually
adjusted by `configure` arguments. If any of these are given, they will override
@@ -1580,7 +1618,7 @@ the value derived from `SOURCE_DATE_EPOCH`. These arguments are:
When `SOURCE_DATE_EPOCH` is set, the default value for `--with-source-date`
will be the value given by `SOURCE_DATE_EPOCH`. Otherwise, the default value
is `updated`.
is `current`.
* `--with-hotspot-build-time`
@@ -1920,7 +1958,7 @@ To analyze build performance, run with `LOG=trace` and check `$BUILD/build-trace
Use `JOBS=1` to avoid parallelism.
Please check that you adhere to the [Code Conventions for the Build System](
http://openjdk.java.net/groups/build/doc/code-conventions.html) before
http://openjdk.org/groups/build/doc/code-conventions.html) before
submitting patches.
## Contributing to the JDK
@@ -1933,19 +1971,25 @@ However, please bear in mind that the JDK is a massive project, and we must ask
you to follow our rules and guidelines to be able to accept your contribution.
The official place to start is the ['How to contribute' page](
http://openjdk.java.net/contribute/). There is also an official (but somewhat
http://openjdk.org/contribute/). There is also an official (but somewhat
outdated and skimpy on details) [Developer's Guide](
http://openjdk.java.net/guide/).
http://openjdk.org/guide/).
If this seems overwhelming to you, the Adoption Group is there to help you! A
good place to start is their ['New Contributor' page](
https://wiki.openjdk.java.net/display/Adoption/New+Contributor), or start
https://wiki.openjdk.org/display/Adoption/New+Contributor), or start
reading the comprehensive [Getting Started Kit](
https://adoptopenjdk.gitbooks.io/adoptopenjdk-getting-started-kit/en/). The
Adoption Group will also happily answer any questions you have about
contributing. Contact them by [mail](
http://mail.openjdk.java.net/mailman/listinfo/adoption-discuss) or [IRC](
http://openjdk.java.net/irc/).
http://mail.openjdk.org/mailman/listinfo/adoption-discuss) or [IRC](
http://openjdk.org/irc/).
## Editing this document
If you want to contribute changes to this document, edit `doc/building.md` and
then run `make update-build-docs` to generate the same changes in
`doc/building.html`.
---
# Override styles from the base CSS file that are not ideal for this document.

View File

@@ -68,8 +68,8 @@
<h3 id="counterexamples-and-updates">Counterexamples and Updates</h3>
<p>Many of the guidelines mentioned here have (sometimes widespread) counterexamples in the HotSpot code base. Finding a counterexample is not sufficient justification for new code to follow the counterexample as a precedent, since readers of your code will rightfully expect your code to follow the greater bulk of precedents documented here.</p>
<p>Occasionally a guideline mentioned here may be just out of synch with the actual HotSpot code base. If you find that a guideline is consistently contradicted by a large number of counterexamples, please bring it up for discussion and possible change. The architectural rule, of course, is &quot;When in Rome do as the Romans&quot;. Sometimes in the suburbs of Rome the rules are a little different; these differences can be pointed out here.</p>
<p>Proposed changes should be discussed on the <a href="mailto:hotspot-dev@openjdk.java.net">HotSpot Developers</a> mailing list. Changes are likely to be cautious and incremental, since HotSpot coders have been using these guidelines for years.</p>
<p>Substantive changes are approved by <a href="https://www.rfc-editor.org/rfc/rfc7282.html">rough consensus</a> of the <a href="https://openjdk.java.net/census#hotspot">HotSpot Group</a> Members. The Group Lead determines whether consensus has been reached.</p>
<p>Proposed changes should be discussed on the <a href="mailto:hotspot-dev@openjdk.org">HotSpot Developers</a> mailing list. Changes are likely to be cautious and incremental, since HotSpot coders have been using these guidelines for years.</p>
<p>Substantive changes are approved by <a href="https://www.rfc-editor.org/rfc/rfc7282.html">rough consensus</a> of the <a href="https://openjdk.org/census#hotspot">HotSpot Group</a> Members. The Group Lead determines whether consensus has been reached.</p>
<p>Editorial changes (changes that only affect the description of HotSpot style, not its substance) do not require the full consensus gathering process. The normal HotSpot pull request process may be used for editorial changes, with the additional requirement that the requisite reviewers are also HotSpot Group Members.</p>
<h2 id="structure-and-formatting">Structure and Formatting</h2>
<h3 id="factoring-and-class-design">Factoring and Class Design</h3>
@@ -238,7 +238,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<p>Some reasons for this include</p>
<ul>
<li><p>Exceptions. Perhaps the largest core issue with adopting the use of Standard Library facilities is exceptions. HotSpot does not use exceptions and, for platforms which allow doing so, builds with them turned off. Many Standard Library facilities implicitly or explicitly use exceptions.</p></li>
<li><p><code>assert</code>. An issue that is quickly encountered is the <code>assert</code> macro name collision (<a href="https://bugs.openjdk.java.net/browse/JDK-8007770">JDK-8007770</a>). Some mechanism for addressing this would be needed before much of the Standard Library could be used. (Not all Standard Library implementations use assert in header files, but some do.)</p></li>
<li><p><code>assert</code>. An issue that is quickly encountered is the <code>assert</code> macro name collision (<a href="https://bugs.openjdk.org/browse/JDK-8007770">JDK-8007770</a>). Some mechanism for addressing this would be needed before much of the Standard Library could be used. (Not all Standard Library implementations use assert in header files, but some do.)</p></li>
<li><p>Memory allocation. HotSpot requires explicit control over where allocations occur. The C++98/03 <code>std::allocator</code> class is too limited to support our usage. (Changes in more recent Standards may remove this limitation.)</p></li>
<li><p>Implementation vagaries. Bugs, or simply different implementation choices, can lead to different behaviors among the various Standard Libraries we need to deal with.</p></li>
<li><p>Inconsistent naming conventions. HotSpot and the C++ Standard use different naming conventions. The coexistence of those different conventions might appear jarring and reduce readability.</p></li>
@@ -272,7 +272,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<p>Due to bugs in certain (very old) compilers, there is widespread use of enums and avoidance of in-class initialization of static integral constant members. Compilers having such bugs are no longer supported. Except where an enum is semantically appropriate, new code should use integral constants.</p>
<h3 id="thread_local">thread_local</h3>
<p>Avoid use of <code>thread_local</code> (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2659.htm">n2659</a>); and instead, use the HotSpot macro <code>THREAD_LOCAL</code>, for which the initializer must be a constant expression. When <code>thread_local</code> must be used, use the Hotspot macro <code>APPROVED_CPP_THREAD_LOCAL</code> to indicate that the use has been given appropriate consideration.</p>
<p>As was discussed in the review for <a href="https://mail.openjdk.java.net/pipermail/hotspot-dev/2019-September/039487.html">JDK-8230877</a>, <code>thread_local</code> allows dynamic initialization and destruction semantics. However, that support requires a run-time penalty for references to non-function-local <code>thread_local</code> variables defined in a different translation unit, even if they don't need dynamic initialization. Dynamic initialization and destruction of non-local <code>thread_local</code> variables also has the same ordering problems as for ordinary non-local variables. So we avoid use of <code>thread_local</code> in general, limiting its use to only those cases where dynamic initialization or destruction are essential. See <a href="https://bugs.openjdk.java.net/browse/JDK-8282469">JDK-8282469</a> for further discussion.</p>
<p>As was discussed in the review for <a href="https://mail.openjdk.org/pipermail/hotspot-dev/2019-September/039487.html">JDK-8230877</a>, <code>thread_local</code> allows dynamic initialization and destruction semantics. However, that support requires a run-time penalty for references to non-function-local <code>thread_local</code> variables defined in a different translation unit, even if they don't need dynamic initialization. Dynamic initialization and destruction of non-local <code>thread_local</code> variables also has the same ordering problems as for ordinary non-local variables. So we avoid use of <code>thread_local</code> in general, limiting its use to only those cases where dynamic initialization or destruction are essential. See <a href="https://bugs.openjdk.org/browse/JDK-8282469">JDK-8282469</a> for further discussion.</p>
<h3 id="nullptr">nullptr</h3>
<p>Prefer <code>nullptr</code> (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2431.pdf">n2431</a>) to <code>NULL</code>. Don't use (constexpr or literal) 0 for pointers.</p>
<p>For historical reasons there are widespread uses of both <code>NULL</code> and of integer 0 as a pointer value.</p>
@@ -448,7 +448,6 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><p><code>[[deprecated]]</code> attribute (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3760.html">n3760</a>) — Not relevant in HotSpot code.</p></li>
<li><p>Avoid most operator overloading, preferring named functions. When operator overloading is used, ensure the semantics conform to the normal expected behavior of the operation.</p></li>
<li><p>Avoid most implicit conversion constructors and (implicit or explicit) conversion operators. (Note that conversion to <code>bool</code> isn't needed in HotSpot code because of the &quot;no implicit boolean&quot; guideline.)</p></li>
<li><p>Avoid covariant return types.</p></li>
<li><p>Avoid <code>goto</code> statements.</p></li>
</ul>
<h3 id="undecided-features">Undecided Features</h3>

View File

@@ -55,13 +55,13 @@ suburbs of Rome the rules are a little different; these differences
can be pointed out here.
Proposed changes should be discussed on the
[HotSpot Developers](mailto:hotspot-dev@openjdk.java.net) mailing
[HotSpot Developers](mailto:hotspot-dev@openjdk.org) mailing
list. Changes are likely to be cautious and incremental, since HotSpot
coders have been using these guidelines for years.
Substantive changes are approved by
[rough consensus](https://www.rfc-editor.org/rfc/rfc7282.html) of
the [HotSpot Group](https://openjdk.java.net/census#hotspot) Members.
the [HotSpot Group](https://openjdk.org/census#hotspot) Members.
The Group Lead determines whether consensus has been reached.
Editorial changes (changes that only affect the description of HotSpot
@@ -550,7 +550,7 @@ turned off. Many Standard Library facilities implicitly or explicitly
use exceptions.
* `assert`. An issue that is quickly encountered is the `assert` macro name
collision ([JDK-8007770](https://bugs.openjdk.java.net/browse/JDK-8007770)).
collision ([JDK-8007770](https://bugs.openjdk.org/browse/JDK-8007770)).
Some mechanism for addressing this would be needed before much of the
Standard Library could be used. (Not all Standard Library implementations
use assert in header files, but some do.)
@@ -661,7 +661,7 @@ be a constant expression. When `thread_local` must be used, use the Hotspot macr
consideration.
As was discussed in the review for
[JDK-8230877](https://mail.openjdk.java.net/pipermail/hotspot-dev/2019-September/039487.html),
[JDK-8230877](https://mail.openjdk.org/pipermail/hotspot-dev/2019-September/039487.html),
`thread_local` allows dynamic initialization and destruction
semantics. However, that support requires a run-time penalty for
references to non-function-local `thread_local` variables defined in a
@@ -671,7 +671,7 @@ non-local `thread_local` variables also has the same ordering
problems as for ordinary non-local variables. So we avoid use of
`thread_local` in general, limiting its use to only those cases where dynamic
initialization or destruction are essential. See
[JDK-8282469](https://bugs.openjdk.java.net/browse/JDK-8282469)
[JDK-8282469](https://bugs.openjdk.org/browse/JDK-8282469)
for further discussion.
### nullptr
@@ -1120,8 +1120,6 @@ normal expected behavior of the operation.
conversion operators. (Note that conversion to `bool` isn't needed
in HotSpot code because of the "no implicit boolean" guideline.)
* Avoid covariant return types.
* Avoid `goto` statements.
### Undecided Features

View File

@@ -46,6 +46,7 @@
<li><a href="#pkcs11-tests">PKCS11 Tests</a></li>
<li><a href="#client-ui-tests">Client UI Tests</a></li>
</ul></li>
<li><a href="#editing-this-document">Editing this document</a></li>
</ul>
</nav>
<h2 id="using-make-test-the-run-test-framework">Using &quot;make test&quot; (the run-test framework)</h2>
@@ -64,6 +65,9 @@ $ make exploded-test TEST=tier2</code></pre>
<h3 id="configuration">Configuration</h3>
<p>To be able to run JTReg tests, <code>configure</code> needs to know where to find the JTReg test framework. If it is not picked up automatically by configure, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc. (An alternative is to set the <code>JT_HOME</code> environment variable to point to the JTReg home before running <code>configure</code>.)</p>
<p>To be able to run microbenchmarks, <code>configure</code> needs to know where to find the JMH dependency. Use <code>--with-jmh=&lt;path to JMH jars&gt;</code> to point to a directory containing the core JMH and transitive dependencies. The recommended dependencies can be retrieved by running <code>sh make/devkit/createJMHBundle.sh</code>, after which <code>--with-jmh=build/jmh/jars</code> should work.</p>
<p>When tests fail or timeout, jtreg runs its failure handler to capture necessary data from the system where the test was run. This data can then be used to analyze the test failures. Collecting this data involves running various commands (which are listed in files residing in <code>test/failure_handler/src/share/conf</code>) and some of these commands use <code>sudo</code>. If the system's <code>sudoers</code> file isn't configured to allow running these commands, then it can result in password being prompted during the failure handler execution. Typically, when running locally, collecting this additional data isn't always necessary. To disable running the failure handler, use <code>--enable-jtreg-failure-handler=no</code> when running <code>configure</code>. If, however, you want to let the failure handler to run and don't want to be prompted for sudo password, then you can configure your <code>sudoers</code> file appropriately. Please read the necessary documentation of your operating system to see how to do that; here we only show one possible way of doing that - edit the <code>/etc/sudoers.d/sudoers</code> file to include the following line:</p>
<pre><code>johndoe ALL=(ALL) NOPASSWD: /sbin/dmesg</code></pre>
<p>This line configures <code>sudo</code> to <em>not</em> prompt for password for the <code>/sbin/dmesg</code> command (this is one of the commands that is listed in the files at <code>test/failure_handler/src/share/conf</code>), for the user <code>johndoe</code>. Here <code>johndoe</code> is the user account under which the jtreg tests are run. Replace the username with a relevant user account of your system.</p>
<h2 id="test-selection">Test selection</h2>
<p>All functionality is available using the <code>test</code> make target. In this use case, the test or tests to be executed is controlled using the <code>TEST</code> variable. To speed up subsequent test runs with no source code changes, <code>test-only</code> can be used instead, which do not depend on the source and test image build.</p>
<p>For some common top-level tests, direct make targets have been generated. This includes all JTReg test groups, the hotspot gtest, and custom tests (if present). This means that <code>make test-tier1</code> is equivalent to <code>make test TEST=&quot;tier1&quot;</code>, but the latter is more tab-completion friendly. For more complex test runs, the <code>test TEST=&quot;x&quot;</code> solution needs to be used.</p>
@@ -82,7 +86,7 @@ $ make exploded-test TEST=tier2</code></pre>
<li><p><code>tier4</code>: This test group includes every other test not covered by previous tiers. It includes, for example, <code>vmTestbase</code> suites for Hotspot, which run for many hours even on large machines. It also runs GUI tests, so the same <code>TEST_JOBS</code> and <code>JTREG_KEYWORDS</code> caveats apply.</p></li>
</ul>
<h3 id="jtreg">JTReg</h3>
<p>JTReg tests can be selected either by picking a JTReg test group, or a selection of files or directories containing JTReg tests.</p>
<p>JTReg tests can be selected either by picking a JTReg test group, or a selection of files or directories containing JTReg tests. Documentation can be found at <a href="https://openjdk.org/jtreg/">https://openjdk.org/jtreg/</a>, note especially the extensive <a href="https://openjdk.org/jtreg/faq.html">FAQ</a>.</p>
<p>JTReg test groups can be specified either without a test root, e.g. <code>:tier1</code> (or <code>tier1</code>, the initial colon is optional), or with, e.g. <code>hotspot:tier1</code>, <code>test/jdk:jdk_util</code> or <code>$(TOPDIR)/test/hotspot/jtreg:hotspot_all</code>. The test root can be specified either as an absolute path, or a path relative to the JDK top directory, or the <code>test</code> directory. For simplicity, the hotspot JTReg test root, which really is <code>hotspot/jtreg</code> can be abbreviated as just <code>hotspot</code>.</p>
<p>When specified without a test root, all matching groups from all test roots will be added. Otherwise, only the group from the specified test root will be added.</p>
<p>Individual JTReg tests or directories containing JTReg tests can also be specified, like <code>test/hotspot/jtreg/native_sanity/JniVersion.java</code> or <code>hotspot/jtreg/native_sanity</code>. Just like for test root selection, you can either specify an absolute path (which can even point to JTReg tests outside the source tree), or a path relative to either the JDK top directory or the <code>test</code> directory. <code>hotspot</code> can be used as an alias for <code>hotspot/jtreg</code> here as well.</p>
@@ -251,5 +255,7 @@ $ make test JTREG=&quot;VM_OPTIONS=-Duser.language=en -Duser.country=US&quot; TE
<h4 id="windows">Windows</h4>
<p>Type <code>gpedit</code> in the Search and then click Edit group policy; navigate to User Configuration -&gt; Administrative Templates -&gt; Windows Components -&gt; File Explorer; in the right-side pane look for &quot;Turn off Windows key hotkeys&quot; and double click on it; enable or disable hotkeys.</p>
<p>Note: restart is required to make the settings take effect.</p>
<h2 id="editing-this-document">Editing this document</h2>
<p>If you want to contribute changes to this document, edit <code>doc/testing.md</code> and then run <code>make update-build-docs</code> to generate the same changes in <code>doc/testing.html</code>.</p>
</body>
</html>

View File

@@ -43,6 +43,31 @@ containing the core JMH and transitive dependencies. The recommended
dependencies can be retrieved by running `sh make/devkit/createJMHBundle.sh`,
after which `--with-jmh=build/jmh/jars` should work.
When tests fail or timeout, jtreg runs its failure handler to capture necessary
data from the system where the test was run. This data can then be used to
analyze the test failures. Collecting this data involves running various commands
(which are listed in files residing in `test/failure_handler/src/share/conf`)
and some of these commands use `sudo`. If the system's `sudoers` file isn't
configured to allow running these commands, then it can result in password being
prompted during the failure handler execution. Typically, when running locally,
collecting this additional data isn't always necessary. To disable running the
failure handler, use `--enable-jtreg-failure-handler=no` when running `configure`.
If, however, you want to let the failure handler to run and don't want to be
prompted for sudo password, then you can configure your `sudoers` file
appropriately. Please read the necessary documentation of your operating system
to see how to do that; here we only show one possible way of doing that - edit
the `/etc/sudoers.d/sudoers` file to include the following line:
```
johndoe ALL=(ALL) NOPASSWD: /sbin/dmesg
```
This line configures `sudo` to _not_ prompt for password for the `/sbin/dmesg`
command (this is one of the commands that is listed in the files
at `test/failure_handler/src/share/conf`), for the user `johndoe`. Here `johndoe`
is the user account under which the jtreg tests are run. Replace the username
with a relevant user account of your system.
## Test selection
All functionality is available using the `test` make target. In this use case,
@@ -113,7 +138,9 @@ apply.
### JTReg
JTReg tests can be selected either by picking a JTReg test group, or a selection
of files or directories containing JTReg tests.
of files or directories containing JTReg tests. Documentation can be found at
[https://openjdk.org/jtreg/](https://openjdk.org/jtreg/), note especially the
extensive [FAQ](https://openjdk.org/jtreg/faq.html).
JTReg test groups can be specified either without a test root, e.g. `:tier1`
(or `tier1`, the initial colon is optional), or with, e.g. `hotspot:tier1`,
@@ -578,6 +605,12 @@ double click on it; enable or disable hotkeys.
Note: restart is required to make the settings take effect.
## Editing this document
If you want to contribute changes to this document, edit `doc/testing.md` and
then run `make update-build-docs` to generate the same changes in
`doc/testing.html`.
---
# Override some definitions in the global css file that are not optimal for
# this document.

View File

@@ -278,16 +278,7 @@ ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
$(SYMBOLS_EXCLUDE_PATTERN), \
$(ALL_JRE_FILES))
# On Macosx release builds, when there is a code signing certificate available,
# the final bundle layout can be signed.
SIGN_BUNDLE := false
ifeq ($(call isTargetOs, macosx)+$(DEBUG_LEVEL), true+release)
ifneq ($(CODESIGN), )
SIGN_BUNDLE := true
endif
endif
ifeq ($(SIGN_BUNDLE), true)
ifeq ($(MACOSX_CODESIGN_MODE), hardened)
# Macosx release build and code signing available.
################################################################################

View File

@@ -189,7 +189,7 @@ $(eval $(call SetupBuildDemo, Font2DTest, \
$(eval $(call SetupBuildDemo, J2Ddemo, \
DEMO_SUBDIR := jfc, \
MAIN_CLASS := java2d.J2Ddemo, \
DISABLED_WARNINGS := rawtypes deprecation unchecked cast, \
DISABLED_WARNINGS := rawtypes deprecation unchecked cast lossy-conversions, \
JAR_NAME := J2Ddemo, \
))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2022, 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
@@ -48,6 +48,30 @@ $(BUILDTOOLS_OUTPUTDIR)/gensrc/%.interim/module-info.java: \
TARGETS += $(patsubst %, $(BUILDTOOLS_OUTPUTDIR)/gensrc/%/module-info.java, \
$(INTERIM_LANGTOOLS_MODULES))
################################################################################
# Generate interim versions of the ToolProvider.java files for the interim
# langtools modules, which will allow to load javac from the interim
# jdk.compiler.
INTERIM_TOOL_PROVIDER_PATTERN := \
$(foreach m, $(INTERIM_LANGTOOLS_BASE_MODULES), -e 's/"$m"/"$m.interim"/g')
$(BUILDTOOLS_OUTPUTDIR)/gensrc/java.compiler.interim/javax/tools/ToolProvider.java: \
$(TOPDIR)/src/java.compiler/share/classes/javax/tools/ToolProvider.java
$(call LogInfo, Generating ToolProvider.java for java.compiler.interim)
$(call MakeDir, $(@D))
$(SED) $(INTERIM_TOOL_PROVIDER_PATTERN) $< > $@
java.compiler.interim_EXTRA_FILES := \
$(BUILDTOOLS_OUTPUTDIR)/gensrc/java.compiler.interim/javax/tools/ToolProvider.java
TARGETS += $(BUILDTOOLS_OUTPUTDIR)/gensrc/java.compiler.interim/javax/tools/ToolProvider.java
################################################################################
# Use the up-to-date PreviewFeature.java and NoPreview.java from the current
# sources, instead of the versions from the boot JDK, as javac may be referring
# to constants from the up-to-date versions.
$(eval $(call SetupCopyFiles, COPY_PREVIEW_FEATURES, \
FILES := $(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java \
$(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/NoPreview.java, \
@@ -73,8 +97,10 @@ define SetupInterimModule
$(TOPDIR)/src/$1/share/classes, \
EXCLUDES := sun javax/tools/snippet-files, \
EXCLUDE_FILES := $(TOPDIR)/src/$1/share/classes/module-info.java \
$(TOPDIR)/src/$1/share/classes/javax/tools/ToolProvider.java \
Standard.java, \
EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim/module-info.java, \
EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim/module-info.java \
$($1.interim_EXTRA_FILES), \
COPY := .gif .png .xml .css .svg .js .js.template .txt javax.tools.JavaCompilerTool, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/interim_langtools_modules/$1.interim, \
DISABLED_WARNINGS := module options, \

View File

@@ -121,8 +121,8 @@ TARGETS += $($(MODULE))
# 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)), \
# dependency declaration to that by using the *_MODFILELIST variable.
$($(MODULE)_MODFILELIST): $(foreach d, $(call FindDepsForModule, $(MODULE)), \
$(call SetupJavaCompilationApiTarget, $d, \
$(if $($d_BIN), $($d_BIN), $(JDK_OUTPUTDIR)/modules/$d)))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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
@@ -77,6 +77,13 @@ $(eval $(call SetupJavaCompilation, COMPILE_DEPEND, \
INCLUDES := build/tools/depend, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/depend, \
DISABLED_WARNINGS := options, \
JAVAC_FLAGS := \
--add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED, \
))
DEPEND_SERVICE_PROVIDER := $(BUILDTOOLS_OUTPUTDIR)/depend/META-INF/services/com.sun.source.util.Plugin

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2022, 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
@@ -226,11 +226,18 @@ else
JMOD_FLAGS += --exclude '**{_the.*,_*.marker*,*.diz,*.debuginfo,*.dSYM/**,*.dSYM}'
endif
# For reproducible builds specify the jmod --date using SOURCE_DATE in ISO-8601
ifeq ($(ENABLE_REPRODUCIBLE_BUILD), true)
JMOD_SOURCE_DATE := --date $(SOURCE_DATE_ISO_8601)
# Unless we are creating a very large module, use the small tool JVM options
JMOD_SMALL_FLAGS :=
ifeq ($(findstring $(MODULE), java.base java.desktop jdk.localedata), )
JMOD_SMALL_FLAGS += $(JAVA_TOOL_FLAGS_SMALL)
endif
ifeq ($(INTERIM_JMOD), true)
# Interim JMODs are not shipped anywhere, so there is no reason
# to compress them at all.
JMOD_FLAGS += --compress zip-0
else
JMOD_SOURCE_DATE :=
JMOD_FLAGS += --compress $(JMOD_COMPRESS)
endif
# Create jmods in the support dir and then move them into place to keep the
@@ -241,10 +248,10 @@ $(eval $(call SetupExecute, create_$(JMOD_FILE), \
OUTPUT_FILE := $(JMODS_DIR)/$(JMOD_FILE), \
SUPPORT_DIR := $(JMODS_SUPPORT_DIR), \
PRE_COMMAND := $(RM) $(JMODS_DIR)/$(JMOD_FILE) $(JMODS_SUPPORT_DIR)/$(JMOD_FILE), \
COMMAND := $(JMOD) create --module-version $(VERSION_SHORT) \
COMMAND := $(JMOD) $(JMOD_SMALL_FLAGS) create --module-version $(VERSION_SHORT) \
--target-platform '$(OPENJDK_MODULE_TARGET_PLATFORM)' \
--module-path $(JMODS_DIR) $(JMOD_FLAGS) \
$(JMOD_SOURCE_DATE) \
--date $(SOURCE_DATE_ISO_8601) \
$(JMODS_SUPPORT_DIR)/$(JMOD_FILE), \
POST_COMMAND := $(MV) $(JMODS_SUPPORT_DIR)/$(JMOD_FILE) $(JMODS_DIR)/$(JMOD_FILE), \
))

View File

@@ -69,8 +69,6 @@ JAVADOC_TAGS := \
-tag beaninfo:X \
-tag revised:X \
-tag since.unbundled:X \
-tag spec:X \
-tag specdefault:X \
-tag Note:X \
-tag ToDo:X \
-tag 'apiNote:a:API Note:' \
@@ -86,6 +84,7 @@ JAVADOC_TAGS := \
-tag since \
-tag serialData \
-tag factory \
-tag spec \
-tag see \
-taglet build.tools.taglet.ExtLink \
-taglet build.tools.taglet.Incubating \

View File

@@ -134,7 +134,7 @@ epilogue: check-bad-file-names
$(ECHO) '* The build README (doc/building.md) is a great source of information,'
$(ECHO) 'especially the chapter "Fixing Unexpected Build Failures". Check it out!'
$(ECHO)
$(ECHO) '* If you still need assistance please contact build-dev@openjdk.java.net.'
$(ECHO) '* If you still need assistance please contact build-dev@openjdk.org.'
$(ECHO)
TARGETS += epilogue

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2022, 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
@@ -114,67 +114,66 @@ $(eval $(call SetupExecute, jlink_jre, \
JLINK_JRE_TARGETS := $(jlink_jre)
ifeq ($(BUILD_CDS_ARCHIVE), true)
# Optimize CDS shared heap for small heap sizes, which are typically used
# for small cloud-based apps that have the most critical start-up requirement.
# The trade-off is that when larger heap sizes are used, the shared heap
# may need to be relocated at runtime.
CDS_DUMP_FLAGS = -Xmx128M -Xms128M
# Helper function for creating the CDS archives for the JDK and JRE
#
# Param1 - VM variant (e.g., server, client, zero, ...)
# Param2 - _nocoops, or empty
define CreateCDSArchive
$1_$2_DUMP_EXTRA_ARG := $(if $(filter _nocoops, $2),-XX:-UseCompressedOops,)
$1_$2_DUMP_TYPE := $(if $(filter _nocoops, $2),-NOCOOPS,)
# Only G1 supports dumping the shared heap, so explicitly use G1 if the JVM supports it.
$1_$2_CDS_DUMP_FLAGS := $(CDS_DUMP_FLAGS) $(if $(filter g1gc, $(JVM_FEATURES_$1)),-XX:+UseG1GC)
ifeq ($(OPENJDK_TARGET_OS), windows)
CDS_ARCHIVE := bin/server/classes.jsa
CDS_NOCOOPS_ARCHIVE := bin/server/classes_nocoops.jsa
$1_$2_CDS_ARCHIVE := bin/$1/classes$2.jsa
else
CDS_ARCHIVE := lib/server/classes.jsa
CDS_NOCOOPS_ARCHIVE := lib/server/classes_nocoops.jsa
$1_$2_CDS_ARCHIVE := lib/$1/classes$2.jsa
endif
$(eval $(call SetupExecute, gen_cds_archive_jdk, \
WARN := Creating CDS archive for jdk image, \
DEPS := $(jlink_jdk), \
OUTPUT_FILE := $(JDK_IMAGE_DIR)/$(CDS_ARCHIVE), \
SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jdk, \
COMMAND := $(FIXPATH) $(JDK_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$(JDK_IMAGE_DIR)/$(CDS_ARCHIVE) \
-Xmx128M -Xms128M $(LOG_INFO), \
$$(eval $$(call SetupExecute, $1_$2_gen_cds_archive_jdk, \
WARN := Creating CDS$$($1_$2_DUMP_TYPE) archive for jdk image for $1, \
INFO := Using CDS flags for $1: $$($1_$2_CDS_DUMP_FLAGS), \
DEPS := $$(jlink_jdk), \
OUTPUT_FILE := $$(JDK_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE), \
SUPPORT_DIR := $$(SUPPORT_OUTPUTDIR)/images/jdk, \
COMMAND := $$(FIXPATH) $$(JDK_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$$(JDK_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE) \
-$1 $$($1_$2_DUMP_EXTRA_ARG) $$($1_$2_CDS_DUMP_FLAGS) $$(LOG_INFO), \
))
JDK_TARGETS += $(gen_cds_archive_jdk)
JDK_TARGETS += $$($1_$2_gen_cds_archive_jdk)
$(eval $(call SetupExecute, gen_cds_archive_jre, \
WARN := Creating CDS archive for jre image, \
DEPS := $(jlink_jre), \
OUTPUT_FILE := $(JRE_IMAGE_DIR)/$(CDS_ARCHIVE), \
SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jre, \
COMMAND := $(FIXPATH) $(JRE_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$(JRE_IMAGE_DIR)/$(CDS_ARCHIVE) \
-Xmx128M -Xms128M $(LOG_INFO), \
$$(eval $$(call SetupExecute, $1_$2_gen_cds_archive_jre, \
WARN := Creating CDS$$($1_$2_DUMP_TYPE) archive for jre image for $1, \
INFO := Using CDS flags for $1: $$($1_$2_CDS_DUMP_FLAGS), \
DEPS := $$(jlink_jre), \
OUTPUT_FILE := $$(JRE_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE), \
SUPPORT_DIR := $$(SUPPORT_OUTPUTDIR)/images/jre, \
COMMAND := $$(FIXPATH) $$(JRE_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$$(JRE_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE) \
-$1 $$($1_$2_DUMP_EXTRA_ARG) $$($1_$2_CDS_DUMP_FLAGS) $$(LOG_INFO), \
))
JRE_TARGETS += $(gen_cds_archive_jre)
JRE_TARGETS += $$($1_$2_gen_cds_archive_jre)
endef
ifeq ($(BUILD_CDS_ARCHIVE), true)
$(foreach v, $(JVM_VARIANTS), \
$(eval $(call CreateCDSArchive,$v,)) \
)
ifeq ($(call isTargetCpuBits, 64), true)
$(eval $(call SetupExecute, gen_cds_nocoops_archive_jdk, \
WARN := Creating CDS-NOCOOPS archive for jdk image, \
DEPS := $(jlink_jdk), \
OUTPUT_FILE := $(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jdk, \
COMMAND := $(FIXPATH) $(JDK_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$(JDK_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
-XX:-UseCompressedOops \
-Xmx128M -Xms128M $(LOG_INFO), \
))
JDK_TARGETS += $(gen_cds_nocoops_archive_jdk)
$(eval $(call SetupExecute, gen_cds_nocoops_archive_jre, \
WARN := Creating CDS-NOCOOPS archive for jre image, \
DEPS := $(jlink_jre), \
OUTPUT_FILE := $(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE), \
SUPPORT_DIR := $(SUPPORT_OUTPUTDIR)/images/jre, \
COMMAND := $(FIXPATH) $(JRE_IMAGE_DIR)/bin/java -Xshare:dump \
-XX:SharedArchiveFile=$(JRE_IMAGE_DIR)/$(CDS_NOCOOPS_ARCHIVE) \
-XX:-UseCompressedOops \
-Xmx128M -Xms128M $(LOG_INFO), \
))
JRE_TARGETS += $(gen_cds_nocoops_archive_jre)
$(foreach v, $(JVM_VARIANTS), \
$(eval $(call CreateCDSArchive,$v,_nocoops)) \
)
endif
endif
################################################################################

View File

@@ -436,21 +436,24 @@ else # $(HAS_SPEC)=true
define PrintFailureReports
$(if $(filter none, $(LOG_REPORT)), , \
$(RM) $(MAKESUPPORT_OUTPUTDIR)/failure-summary.log ; \
$(if $(wildcard $(MAKESUPPORT_OUTPUTDIR)/failure-logs/*.log), \
$(PRINTF) "\n=== Output from failing command(s) repeated here ===\n" $(NEWLINE) \
$(foreach logfile, $(sort $(wildcard $(MAKESUPPORT_OUTPUTDIR)/failure-logs/*.log)), \
$(PRINTF) "* For target $(notdir $(basename $(logfile))):\n" $(NEWLINE) \
$(if $(filter all, $(LOG_REPORT)), \
$(GREP) -v -e "^Note: including file:" < $(logfile) || true $(NEWLINE) \
, \
($(GREP) -v -e "^Note: including file:" < $(logfile) || true) | $(HEAD) -n 15 $(NEWLINE) \
if test `$(WC) -l < $(logfile)` -gt 15; then \
$(ECHO) " ... (rest of output omitted)" ; \
fi $(NEWLINE) \
) \
) \
$(PRINTF) "\n* All command lines available in $(MAKESUPPORT_OUTPUTDIR)/failure-logs.\n" $(NEWLINE) \
$(PRINTF) "=== End of repeated output ===\n" \
( \
$(PRINTF) "\n=== Output from failing command(s) repeated here ===\n" ; \
$(foreach logfile, $(sort $(wildcard $(MAKESUPPORT_OUTPUTDIR)/failure-logs/*.log)), \
$(PRINTF) "* For target $(notdir $(basename $(logfile))):\n" ; \
$(if $(filter all, $(LOG_REPORT)), \
$(GREP) -v -e "^Note: including file:" < $(logfile) || true ; \
, \
($(GREP) -v -e "^Note: including file:" < $(logfile) || true) | $(HEAD) -n 15 ; \
if test `$(WC) -l < $(logfile)` -gt 15; then \
$(ECHO) " ... (rest of output omitted)" ; \
fi ; \
) \
) \
$(PRINTF) "\n* All command lines available in $(MAKESUPPORT_OUTPUTDIR)/failure-logs.\n" ; \
$(PRINTF) "=== End of repeated output ===\n" ; \
) >> $(MAKESUPPORT_OUTPUTDIR)/failure-summary.log \
) \
)
endef
@@ -465,7 +468,8 @@ else # $(HAS_SPEC)=true
else \
$(PRINTF) "\nNo indication of failed target found.\n" ; \
$(PRINTF) "HELP: Try searching the build log for '] Error'.\n" ; \
fi \
fi >> $(MAKESUPPORT_OUTPUTDIR)/failure-summary.log ; \
$(CAT) $(MAKESUPPORT_OUTPUTDIR)/failure-summary.log \
)
endef

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2022, 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
@@ -48,6 +48,7 @@ JIMAGE_PKGS := \
$(eval $(call SetupJavaCompilation, BUILD_JRTFS, \
COMPILER := bootjdk, \
DISABLED_WARNINGS := options, \
TARGET_RELEASE := $(TARGET_RELEASE_JDK8), \
SRC := $(TOPDIR)/src/java.base/share/classes, \
EXCLUDE_FILES := module-info.java, \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2022, 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
@@ -349,13 +349,24 @@ ExpandJtregPath = \
)) \
)
# with test id: dir/Test.java#selection -> Test.java#selection -> .java#selection -> #selection
# without: dir/Test.java -> Test.java -> .java -> <<empty string>>
TestID = \
$(subst .java,,$(suffix $(notdir $1)))
# The test id starting with a hash (#testid) will be stripped by all
# evals in ParseJtregTestSelectionInner and will be reinserted by calling
# TestID (if it is present).
ParseJtregTestSelection = \
$(call IfAppend, $(call ParseJtregTestSelectionInner, $1), $(call TestID, $1))
# Helper function to determine if a test specification is a Jtreg test
#
# It is a Jtreg test if it optionally begins with jtreg:, and then is either
# an unspecified group name (possibly prefixed by :), or a group in a
# specified test root, or a path to a test or test directory,
# either absolute or relative to any of the TEST_BASEDIRS or test roots.
define ParseJtregTestSelection
define ParseJtregTestSelectionInner
$(eval TEST_NAME := $(strip $(patsubst jtreg:%, %, $1))) \
$(if $(or $(findstring :, $(TEST_NAME)), $(findstring /, $(TEST_NAME))), , \
$(eval TEST_NAME := :$(TEST_NAME)) \
@@ -419,28 +430,19 @@ ifeq ($(TEST), )
$(error Cannot continue)
endif
ParseTestSelection = \
$(strip $(or \
$(call ParseCustomTestSelection, $1) \
$(call ParseGtestTestSelection, $1) \
$(call ParseMicroTestSelection, $1) \
$(call ParseJtregTestSelection, $1) \
$(call ParseSpecialTestSelection, $1) \
))
# Now intelligently convert the test selection given by the user in TEST
# into a list of fully qualified test descriptors of the tests to run.
TESTS_TO_RUN :=
$(foreach test, $(TEST), \
$(eval PARSED_TESTS := $(call ParseCustomTestSelection, $(test))) \
$(if $(strip $(PARSED_TESTS)), , \
$(eval PARSED_TESTS += $(call ParseGtestTestSelection, $(test))) \
) \
$(if $(strip $(PARSED_TESTS)), , \
$(eval PARSED_TESTS += $(call ParseMicroTestSelection, $(test))) \
) \
$(if $(strip $(PARSED_TESTS)), , \
$(eval PARSED_TESTS += $(call ParseJtregTestSelection, $(test))) \
) \
$(if $(strip $(PARSED_TESTS)), , \
$(eval PARSED_TESTS += $(call ParseSpecialTestSelection, $(test))) \
) \
$(if $(strip $(PARSED_TESTS)), , \
$(eval UNKNOWN_TEST := $(test)) \
) \
$(eval TESTS_TO_RUN += $(PARSED_TESTS)) \
)
TESTS_TO_RUN := $(strip $(foreach test, $(TEST), $(call ParseTestSelection, $(test))))
UNKNOWN_TEST := $(strip $(foreach test, $(TEST), $(if $(call ParseTestSelection, $(test)), , $(test))))
ifneq ($(UNKNOWN_TEST), )
$(info Unknown test selection: '$(UNKNOWN_TEST)')
@@ -448,9 +450,6 @@ ifneq ($(UNKNOWN_TEST), )
$(error Cannot continue)
endif
TESTS_TO_RUN := $(strip $(TESTS_TO_RUN))
# Present the result of our parsing to the user
$(info Test selection '$(TEST)', will run:)
$(foreach test, $(TESTS_TO_RUN), $(info * $(test)))
@@ -786,6 +785,8 @@ define SetupRunJtregTestBody
# symbol lookup in hserr files
ifeq ($$(call isTargetOs, windows), true)
$1_JTREG_BASIC_OPTIONS += -e:_NT_SYMBOL_PATH
else ifeq ($$(call isTargetOs, linux), true)
$1_JTREG_BASIC_OPTIONS += -e:_JVM_DWARF_PATH=$$(SYMBOLS_IMAGE_DIR)
endif
$1_JTREG_BASIC_OPTIONS += \
@@ -853,7 +854,7 @@ define SetupRunJtregTestBody
-dir:$$(JTREG_TOPDIR) \
-reportDir:$$($1_TEST_RESULTS_DIR) \
-workDir:$$($1_TEST_SUPPORT_DIR) \
-status:$$$${JTREG_STATUS} \
$$$${JTREG_STATUS} \
$$(JTREG_OPTIONS) \
$$(JTREG_FAILURE_HANDLER_OPTIONS) \
$$(JTREG_COV_OPTIONS) \
@@ -1184,13 +1185,11 @@ ifeq ($(TEST_OPTS_JCOV), true)
JCOV_SOURCE_DIFF := $(JCOV_OUTPUT_DIR)/source_diff
JCOV_DIFF_COVERAGE_REPORT := $(JCOV_OUTPUT_DIR)/diff_coverage_report
ifneq ($(and $(HG), $(wildcard $(TOPDIR)/.hg)), )
DIFF_COMMAND := $(HG) -R $(TOPDIR) diff -r $(TEST_OPTS_JCOV_DIFF_CHANGESET) > $(JCOV_SOURCE_DIFF)
else ifneq ($(and $(GIT), $(wildcard $(TOPDIR)/.git)), )
ifneq ($(and $(GIT), $(wildcard $(TOPDIR)/.git)), )
DIFF_COMMAND := $(GIT) -C $(TOPDIR) diff $(TEST_OPTS_JCOV_DIFF_CHANGESET) > $(JCOV_SOURCE_DIFF)
else
$(info Error: Must be either hg or git source tree for diff coverage.)
$(error Neither hg nor git source tree.)
$(info Error: Must be a git source tree for diff coverage.)
$(error No git source tree.)
endif
jcov-gen-diffcoverage: jcov-stop-grabber

View File

@@ -169,7 +169,6 @@ ZIPEXE := zip
UNZIP := unzip
EXPR := expr
FILE := file
HG := hg
ULIMIT := ulimit
ifeq ($(OPENJDK_BUILD_OS), windows)

View File

@@ -42,11 +42,7 @@ $(eval $(call IncludeCustomExtension, SourceRevision-pre.gmk))
STORED_SOURCE_REVISION := $(TOPDIR)/.src-rev
USE_SCM := false
ifneq ($(and $(HG), $(wildcard $(TOPDIR)/.hg)), )
USE_SCM := true
SCM_DIR := .hg
ID_COMMAND := $(PRINTF) "hg:%s" "$$($(HG) id -i)"
else ifneq ($(and $(GIT), $(wildcard $(TOPDIR)/.git)), )
ifneq ($(and $(GIT), $(wildcard $(TOPDIR)/.git)), )
USE_SCM := true
SCM_DIR := .git
ID_COMMAND := $(PRINTF) "git:%s%s\n" \
@@ -85,7 +81,7 @@ ifeq ($(USE_SCM), true)
REPO_REVISIONS += $$(SUPPORT_OUTPUTDIR)/src-rev/$$($1_FILENAME)
endef
# Setup rules for all repos. This makes sure all the "hg id" calls are made
# Setup rules for all repos. This makes sure all the "git log" calls are made
# in parallel.
$(foreach repo, $(call FindAllReposRel), \
$(eval $(call SetupGetRevisionForRepo, $(repo))) \

View File

@@ -300,6 +300,8 @@ AC_DEFUN_ONCE([BASIC_SETUP_DEVKIT],
# Prepend the extra path to the global path
UTIL_PREPEND_TO_PATH([PATH],$EXTRA_PATH)
UTIL_FIXUP_PATH([SYSROOT])
AC_MSG_CHECKING([for sysroot])
AC_MSG_RESULT([$SYSROOT])
AC_SUBST(SYSROOT)
@@ -451,7 +453,7 @@ AC_DEFUN_ONCE([BASIC_CHECK_SRC_PERMS],
# in the source tree when configure runs
file_to_test="$TOPDIR/Makefile"
if test `$STAT -c '%a' "$file_to_test"` -lt 400; then
AC_MSG_ERROR([Bad file permissions on src files. This is usually caused by cloning the repositories with a non cygwin hg in a directory not created in cygwin.])
AC_MSG_ERROR([Bad file permissions on src files. This is usually caused by cloning the repositories with non cygwin tools in a directory not created in cygwin.])
fi
fi
])

View File

@@ -342,7 +342,6 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
UTIL_LOOKUP_PROGS(READELF, greadelf readelf)
UTIL_LOOKUP_PROGS(DOT, dot)
UTIL_LOOKUP_PROGS(HG, hg)
UTIL_LOOKUP_PROGS(STAT, stat)
UTIL_LOOKUP_PROGS(TIME, time)
UTIL_LOOKUP_PROGS(FLOCK, flock)
@@ -376,41 +375,6 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
UTIL_REQUIRE_PROGS(MIG, mig)
UTIL_REQUIRE_PROGS(XATTR, xattr)
UTIL_LOOKUP_PROGS(CODESIGN, codesign)
# Check for user provided code signing identity.
UTIL_ARG_WITH(NAME: macosx-codesign-identity, TYPE: string,
DEFAULT: openjdk_codesign, CHECK_VALUE: UTIL_CHECK_STRING_NON_EMPTY,
DESC: [specify the macosx code signing identity],
CHECKING_MSG: [for macosx code signing identity]
)
AC_SUBST(MACOSX_CODESIGN_IDENTITY)
if test "x$CODESIGN" != "x"; then
# Verify that the codesign certificate is present
AC_MSG_CHECKING([if codesign certificate is present])
$RM codesign-testfile
$TOUCH codesign-testfile
$CODESIGN -s "$MACOSX_CODESIGN_IDENTITY" codesign-testfile 2>&AS_MESSAGE_LOG_FD \
>&AS_MESSAGE_LOG_FD || CODESIGN=
$RM codesign-testfile
if test "x$CODESIGN" = x; then
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
# Verify that the codesign has --option runtime
AC_MSG_CHECKING([if codesign has --option runtime])
$RM codesign-testfile
$TOUCH codesign-testfile
$CODESIGN --option runtime -s "$MACOSX_CODESIGN_IDENTITY" codesign-testfile \
2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD || CODESIGN=
$RM codesign-testfile
if test "x$CODESIGN" = x; then
AC_MSG_ERROR([codesign does not have --option runtime. macOS 10.13.6 and above is required.])
else
AC_MSG_RESULT([yes])
fi
fi
fi
UTIL_REQUIRE_PROGS(SETFILE, SetFile)
fi
if ! test "x$OPENJDK_TARGET_OS" = "xwindows"; then

View File

@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2012, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2022, 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
@@ -40,6 +40,7 @@ export AWK="@AWK@"
export BASH="@BASH@"
export CAT="@CAT@"
export CMP="@CMP@"
export CODESIGN="@CODESIGN@"
export CP="@CP@"
export CUT="@CUT@"
export DIFF="@DIFF@"
@@ -92,7 +93,6 @@ if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
export PATH="$PATH:@TOOLCHAIN_PATH@"
fi
export HOTSPOT_BUILD_TIME="@HOTSPOT_BUILD_TIME@"
export USE_PRECOMPILED_HEADER="@USE_PRECOMPILED_HEADER@"
# Now locate the main script and run it.

View File

@@ -31,7 +31,7 @@
AC_PREREQ([2.69])
AC_INIT(OpenJDK, openjdk, build-dev@openjdk.java.net,,http://openjdk.java.net)
AC_INIT(OpenJDK, openjdk, build-dev@openjdk.org,,https://openjdk.org)
AC_CONFIG_AUX_DIR([$TOPDIR/make/autoconf/build-aux])
m4_include([build-aux/pkg.m4])
@@ -133,6 +133,7 @@ BASIC_SETUP_DEFAULT_LOG
###############################################################################
# We need build & target for this.
JDKOPT_SETUP_JMOD_OPTIONS
JDKOPT_SETUP_JLINK_OPTIONS
JDKVER_SETUP_JDK_VERSION_NUMBERS
@@ -191,18 +192,15 @@ TOOLCHAIN_POST_DETECTION
TOOLCHAIN_SETUP_BUILD_COMPILERS
TOOLCHAIN_MISC_CHECKS
# Setup the JTReg Regression Test Harness.
TOOLCHAIN_SETUP_JTREG
# Setup the Java Microbenchmark Harness (JMH)
LIB_TESTS_SETUP_JMH
# Setup Jib dependency tool
TOOLCHAIN_SETUP_JIB
# After toolchain setup, we need to process some flags to be able to continue.
FLAGS_POST_TOOLCHAIN
# Setup the tools needed to test the JDK (JTReg Regression Test Harness,
# Java Microbenchmark Harness (JMH) and the Jib dependency tool).
LIB_TESTS_SETUP_JTREG
LIB_TESTS_SETUP_JMH
LIB_TESTS_SETUP_JIB
# Now we can test some aspects on the target using configure macros.
PLATFORM_SETUP_OPENJDK_TARGET_BITS
PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS
@@ -243,12 +241,14 @@ HOTSPOT_SETUP_MISC
#
###############################################################################
JDKOPT_ENABLE_DISABLE_FAILURE_HANDLER
LIB_TESTS_ENABLE_DISABLE_FAILURE_HANDLER
JDKOPT_ENABLE_DISABLE_GENERATE_CLASSLIST
JDKOPT_EXCLUDE_TRANSLATIONS
JDKOPT_ENABLE_DISABLE_MANPAGES
JDKOPT_ENABLE_DISABLE_CDS_ARCHIVE
JDKOPT_ENABLE_DISABLE_COMPATIBLE_CDS_ALIGNMENT
JDKOPT_SETUP_MACOSX_SIGNING
###############################################################################
#

View File

@@ -113,9 +113,21 @@ AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS],
)
fi
CFLAGS_DEBUG_SYMBOLS="-g"
CFLAGS_DEBUG_SYMBOLS="-g -gdwarf-4"
ASFLAGS_DEBUG_SYMBOLS="-g"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then
# Check if compiler supports -fdebug-prefix-map. If so, use that to make
# the debug symbol paths resolve to paths relative to the workspace root.
workspace_root_trailing_slash="${WORKSPACE_ROOT%/}/"
DEBUG_PREFIX_CFLAGS="-fdebug-prefix-map=${workspace_root_trailing_slash}="
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${DEBUG_PREFIX_CFLAGS}],
IF_FALSE: [
DEBUG_PREFIX_CFLAGS=
]
)
fi
CFLAGS_DEBUG_SYMBOLS="-g"
ASFLAGS_DEBUG_SYMBOLS="-g"
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
@@ -155,11 +167,7 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
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="$DISABLED_WARNINGS 4307"
fi
DISABLED_WARNINGS="4800 5105"
;;
gcc)
@@ -522,25 +530,15 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
TOOLCHAIN_CFLAGS_JVM="-qtbtable=full -qtune=balanced \
-qalias=noansi -qstrict -qtls=default -qnortti -qnoeh -qignerrno -qstackprotect"
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
TOOLCHAIN_CFLAGS_JVM="-nologo -MD -Zc:strictStrings -MP"
TOOLCHAIN_CFLAGS_JDK="-nologo -MD -Zc:strictStrings -Zc:wchar_t-"
TOOLCHAIN_CFLAGS_JVM="-nologo -MD -Zc:preprocessor -Zc:strictStrings -MP"
TOOLCHAIN_CFLAGS_JDK="-nologo -MD -Zc:preprocessor -Zc:strictStrings -Zc:wchar_t-"
fi
# CFLAGS C language level for JDK sources (hotspot only uses C++)
# Ideally we would have a common level across all toolchains so that all sources
# are sure to conform to the same standard. Unfortunately neither our sources nor
# our toolchains are in a condition to support that. But what we loosely aim for is
# C99 level.
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang || test "x$TOOLCHAIN_TYPE" = xxlc; then
# Explicitly set C99. clang and xlclang support the same flag.
LANGSTD_CFLAGS="-std=c99"
LANGSTD_CFLAGS="-std=c11"
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
# MSVC doesn't support C99/C11 explicitly, unless you compile as C++:
# LANGSTD_CFLAGS="-TP"
# but that requires numerous changes to the sources files. So we are limited
# to C89/C90 plus whatever extensions Visual Studio has decided to implement.
# This is the lowest bar for shared code.
LANGSTD_CFLAGS=""
LANGSTD_CFLAGS="-std:c11"
fi
TOOLCHAIN_CFLAGS_JDK_CONLY="$LANGSTD_CFLAGS $TOOLCHAIN_CFLAGS_JDK_CONLY"
@@ -774,10 +772,8 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_TOOLCHAIN_CFLAGS="${NO_DELETE_NULL_POINTER_CHECKS_CFLAG}"
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"
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
REPRODUCIBLE_CFLAGS="-experimental:deterministic"
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${REPRODUCIBLE_CFLAGS}],
PREFIX: $3,
IF_FALSE: [
@@ -804,8 +800,7 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
FILE_MACRO_CFLAGS=
]
)
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft &&
test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; 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.
# PATHMAP_FLAGS is also added to LDFLAGS in flags-ldflags.m4.

View File

@@ -128,10 +128,13 @@ 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
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
REPRODUCIBLE_LDFLAGS="-experimental:deterministic"
FLAGS_LINKER_CHECK_ARGUMENTS(ARGUMENT: [$REPRODUCIBLE_LDFLAGS],
IF_FALSE: [
REPRODUCIBLE_LDFLAGS=
]
)
fi
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then

View File

@@ -311,6 +311,13 @@ AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS],
fi
printf "* Boot JDK: $BOOT_JDK_VERSION (at $BOOT_JDK)\n"
printf "* Toolchain: $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION)\n"
if test "x$DEVKIT_NAME" != x; then
printf "* Devkit: $DEVKIT_NAME ($DEVKIT_ROOT)\n"
elif test "x$DEVKIT_ROOT" != x; then
printf "* Devkit: $DEVKIT_ROOT\n"
elif test "x$SYSROOT" != x; then
printf "* Sysroot: $SYSROOT\n"
fi
printf "* C Compiler: Version $CC_VERSION_NUMBER (at ${CC#"$FIXPATH "})\n"
printf "* C++ Compiler: Version $CXX_VERSION_NUMBER (at ${CXX#"$FIXPATH "})\n"

View File

@@ -472,6 +472,31 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_STATIC_BUILD],
AC_SUBST(STATIC_BUILD)
])
################################################################################
#
# jmod options.
#
AC_DEFUN_ONCE([JDKOPT_SETUP_JMOD_OPTIONS],
[
# Final JMODs are recompiled often during development, and java.base JMOD
# includes the JVM libraries. In release mode, prefer to compress JMODs fully.
# In debug mode, pay with a little extra space, but win a lot of CPU time back
# with the lightest (but still some) compression.
if test "x$DEBUG_LEVEL" = xrelease; then
DEFAULT_JMOD_COMPRESS="zip-6"
else
DEFAULT_JMOD_COMPRESS="zip-1"
fi
UTIL_ARG_WITH(NAME: jmod-compress, TYPE: literal,
VALID_VALUES: [zip-0 zip-1 zip-2 zip-3 zip-4 zip-5 zip-6 zip-7 zip-8 zip-9],
DEFAULT: $DEFAULT_JMOD_COMPRESS,
CHECKING_MSG: [for JMOD compression type],
DESC: [specify JMOD compression type (zip-[0-9])]
)
AC_SUBST(JMOD_COMPRESS)
])
################################################################################
#
# jlink options.
@@ -486,29 +511,6 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JLINK_OPTIONS],
AC_SUBST(JLINK_KEEP_PACKAGED_MODULES)
])
################################################################################
#
# Check if building of the jtreg failure handler should be enabled.
#
AC_DEFUN_ONCE([JDKOPT_ENABLE_DISABLE_FAILURE_HANDLER],
[
UTIL_ARG_ENABLE(NAME: jtreg-failure-handler, DEFAULT: auto,
RESULT: BUILD_FAILURE_HANDLER,
DESC: [enable keeping of packaged modules in jdk image],
DEFAULT_DESC: [enabled if jtreg is present],
CHECKING_MSG: [if the jtreg failure handler should be built],
CHECK_AVAILABLE: [
AC_MSG_CHECKING([if the jtreg failure handler is available])
if test "x$JT_HOME" != "x"; then
AC_MSG_RESULT([yes])
else
AVAILABLE=false
AC_MSG_RESULT([no (jtreg not present)])
fi
])
AC_SUBST(BUILD_FAILURE_HANDLER)
])
################################################################################
#
# Enable or disable generation of the classlist at build time
@@ -648,7 +650,7 @@ AC_DEFUN([JDKOPT_ALLOW_ABSOLUTE_PATHS_IN_OUTPUT],
AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
[
AC_ARG_WITH([source-date], [AS_HELP_STRING([--with-source-date],
[how to set SOURCE_DATE_EPOCH ('updated', 'current', 'version' a timestamp or an ISO-8601 date) @<:@updated/value of SOURCE_DATE_EPOCH@:>@])],
[how to set SOURCE_DATE_EPOCH ('updated', 'current', 'version' a timestamp or an ISO-8601 date) @<:@current/value of SOURCE_DATE_EPOCH@:>@])],
[with_source_date_present=true], [with_source_date_present=false])
if test "x$SOURCE_DATE_EPOCH" != x && test "x$with_source_date" != x; then
@@ -665,9 +667,9 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
with_source_date_present=true
AC_MSG_RESULT([$SOURCE_DATE, from SOURCE_DATE_EPOCH])
else
# Tell the makefiles to update at each build
SOURCE_DATE=updated
AC_MSG_RESULT([determined at build time (default)])
# Tell makefiles to take the time from configure
SOURCE_DATE=$($DATE +"%s")
AC_MSG_RESULT([$SOURCE_DATE, from 'current' (default)])
fi
elif test "x$with_source_date" = xupdated; then
SOURCE_DATE=updated
@@ -713,30 +715,111 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
fi
fi
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 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-build])
AC_MSG_NOTICE([with --disable-absolute-paths-in-output.])
AC_MSG_ERROR([Cannot continue])
fi
AC_SUBST(SOURCE_DATE)
AC_SUBST(ENABLE_REPRODUCIBLE_BUILD)
AC_SUBST(ISO_8601_FORMAT_STRING)
AC_SUBST(SOURCE_DATE_ISO_8601)
UTIL_DEPRECATED_ARG_ENABLE(reproducible-build)
])
################################################################################
#
# Setup signing on macOS. This can either be setup to sign with a real identity
# and enabling the hardened runtime, or it can simply add the debug entitlement
# com.apple.security.get-task-allow without actually signing any binaries. The
# latter is needed to be able to debug processes and dump core files on modern
# versions of macOS. It can also be skipped completely.
#
# Check if codesign will run with the given parameters
# $1: Parameters to run with
# $2: Checking message
# Sets CODESIGN_SUCCESS=true/false
AC_DEFUN([JDKOPT_CHECK_CODESIGN_PARAMS],
[
PARAMS="$1"
MESSAGE="$2"
CODESIGN_TESTFILE="$CONFIGURESUPPORT_OUTPUTDIR/codesign-testfile"
$RM "$CODESIGN_TESTFILE"
$TOUCH "$CODESIGN_TESTFILE"
CODESIGN_SUCCESS=false
$CODESIGN $PARAMS "$CODESIGN_TESTFILE" 2>&AS_MESSAGE_LOG_FD \
>&AS_MESSAGE_LOG_FD && CODESIGN_SUCCESS=true
$RM "$CODESIGN_TESTFILE"
AC_MSG_CHECKING([$MESSAGE])
if test "x$CODESIGN_SUCCESS" = "xtrue"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
])
AC_DEFUN([JDKOPT_CHECK_CODESIGN_HARDENED],
[
JDKOPT_CHECK_CODESIGN_PARAMS([-s "$MACOSX_CODESIGN_IDENTITY" --option runtime],
[if codesign with hardened runtime is possible])
])
AC_DEFUN([JDKOPT_CHECK_CODESIGN_DEBUG],
[
JDKOPT_CHECK_CODESIGN_PARAMS([-s -], [if debug mode codesign is possible])
])
AC_DEFUN([JDKOPT_SETUP_MACOSX_SIGNING],
[
ENABLE_CODESIGN=false
if test "x$OPENJDK_TARGET_OS" = "xmacosx" && test "x$CODESIGN" != "x"; then
UTIL_ARG_WITH(NAME: macosx-codesign, TYPE: literal, OPTIONAL: true,
VALID_VALUES: [hardened debug auto], DEFAULT: auto,
ENABLED_DEFAULT: true,
CHECKING_MSG: [for macosx code signing mode],
DESC: [set the macosx code signing mode (hardened, debug, auto)]
)
MACOSX_CODESIGN_MODE=disabled
if test "x$MACOSX_CODESIGN_ENABLED" = "xtrue"; then
# Check for user provided code signing identity.
UTIL_ARG_WITH(NAME: macosx-codesign-identity, TYPE: string,
DEFAULT: openjdk_codesign, CHECK_VALUE: UTIL_CHECK_STRING_NON_EMPTY,
DESC: [specify the macosx code signing identity],
CHECKING_MSG: [for macosx code signing identity]
)
AC_SUBST(MACOSX_CODESIGN_IDENTITY)
if test "x$MACOSX_CODESIGN" = "xauto"; then
# Only try to default to hardened signing on release builds
if test "x$DEBUG_LEVEL" = "xrelease"; then
JDKOPT_CHECK_CODESIGN_HARDENED
if test "x$CODESIGN_SUCCESS" = "xtrue"; then
MACOSX_CODESIGN_MODE=hardened
fi
fi
if test "x$MACOSX_CODESIGN_MODE" = "xdisabled"; then
JDKOPT_CHECK_CODESIGN_DEBUG
if test "x$CODESIGN_SUCCESS" = "xtrue"; then
MACOSX_CODESIGN_MODE=debug
fi
fi
AC_MSG_CHECKING([for macosx code signing mode])
AC_MSG_RESULT([$MACOSX_CODESIGN_MODE])
elif test "x$MACOSX_CODESIGN" = "xhardened"; then
JDKOPT_CHECK_CODESIGN_HARDENED
if test "x$CODESIGN_SUCCESS" = "xfalse"; then
AC_MSG_ERROR([Signing with hardened runtime is not possible])
fi
MACOSX_CODESIGN_MODE=hardened
elif test "x$MACOSX_CODESIGN" = "xdebug"; then
JDKOPT_CHECK_CODESIGN_DEBUG
if test "x$CODESIGN_SUCCESS" = "xfalse"; then
AC_MSG_ERROR([Signing in debug mode is not possible])
fi
MACOSX_CODESIGN_MODE=debug
else
AC_MSG_ERROR([unknown value for --with-macosx-codesign: $MACOSX_CODESIGN])
fi
fi
AC_SUBST(MACOSX_CODESIGN_IDENTITY)
AC_SUBST(MACOSX_CODESIGN_MODE)
fi
])

View File

@@ -275,6 +275,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_JVMCI],
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xriscv64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
AVAILABLE=false
@@ -410,7 +412,7 @@ AC_DEFUN([JVM_FEATURES_PREPARE_VARIANT],
elif test "x$variant" = "xcore"; then
JVM_FEATURES_VARIANT_UNAVAILABLE="cds minimal zero"
elif test "x$variant" = "xzero"; then
JVM_FEATURES_VARIANT_UNAVAILABLE="cds compiler1 compiler2 \
JVM_FEATURES_VARIANT_UNAVAILABLE="compiler1 compiler2 \
jvmci minimal zgc"
else
JVM_FEATURES_VARIANT_UNAVAILABLE="minimal zero"

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2018, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,13 @@
# questions.
#
################################################################################
# Setup libraries and functionalities needed to test the JDK.
################################################################################
# Minimum supported version
JTREG_MINIMUM_VERSION=7
###############################################################################
#
# Setup and check for gtest framework source files
@@ -118,3 +125,163 @@ AC_DEFUN_ONCE([LIB_TESTS_SETUP_JMH],
AC_SUBST(JMH_COMMONS_MATH_JAR)
AC_SUBST(JMH_VERSION)
])
# Setup the JTReg Regression Test Harness.
AC_DEFUN_ONCE([LIB_TESTS_SETUP_JTREG],
[
AC_ARG_WITH(jtreg, [AS_HELP_STRING([--with-jtreg],
[Regression Test Harness @<:@probed@:>@])])
if test "x$with_jtreg" = xno; then
# jtreg disabled
AC_MSG_CHECKING([for jtreg test harness])
AC_MSG_RESULT([no, disabled])
elif test "x$with_jtreg" != xyes && test "x$with_jtreg" != x; then
if test -d "$with_jtreg"; then
# An explicit path is specified, use it.
JT_HOME="$with_jtreg"
else
case "$with_jtreg" in
*.zip )
JTREG_SUPPORT_DIR=$CONFIGURESUPPORT_OUTPUTDIR/jtreg
$RM -rf $JTREG_SUPPORT_DIR
$MKDIR -p $JTREG_SUPPORT_DIR
$UNZIP -qq -d $JTREG_SUPPORT_DIR $with_jtreg
# Try to find jtreg to determine JT_HOME path
JTREG_PATH=`$FIND $JTREG_SUPPORT_DIR | $GREP "/bin/jtreg"`
if test "x$JTREG_PATH" != x; then
JT_HOME=$($DIRNAME $($DIRNAME $JTREG_PATH))
fi
;;
* )
;;
esac
fi
UTIL_FIXUP_PATH([JT_HOME])
if test ! -d "$JT_HOME"; then
AC_MSG_ERROR([jtreg home directory from --with-jtreg=$with_jtreg does not exist])
fi
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_ERROR([jtreg home directory from --with-jtreg=$with_jtreg is not a valid jtreg home])
fi
AC_MSG_CHECKING([for jtreg test harness])
AC_MSG_RESULT([$JT_HOME])
else
# Try to locate jtreg using the JT_HOME environment variable
if test "x$JT_HOME" != x; then
# JT_HOME set in environment, use it
if test ! -d "$JT_HOME"; then
AC_MSG_WARN([Ignoring JT_HOME pointing to invalid directory: $JT_HOME])
JT_HOME=
else
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_WARN([Ignoring JT_HOME which is not a valid jtreg home: $JT_HOME])
JT_HOME=
else
AC_MSG_NOTICE([Located jtreg using JT_HOME from environment])
fi
fi
fi
if test "x$JT_HOME" = x; then
# JT_HOME is not set in environment, or was deemed invalid.
# Try to find jtreg on path
UTIL_LOOKUP_PROGS(JTREGEXE, jtreg)
if test "x$JTREGEXE" != x; then
# That's good, now try to derive JT_HOME
JT_HOME=`(cd $($DIRNAME $JTREGEXE)/.. && pwd)`
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_WARN([Ignoring jtreg from path since a valid jtreg home cannot be found])
JT_HOME=
else
AC_MSG_NOTICE([Located jtreg using jtreg executable in path])
fi
fi
fi
AC_MSG_CHECKING([for jtreg test harness])
if test "x$JT_HOME" != x; then
AC_MSG_RESULT([$JT_HOME])
else
AC_MSG_RESULT([no, not found])
if test "x$with_jtreg" = xyes; then
AC_MSG_ERROR([--with-jtreg was specified, but no jtreg found.])
fi
fi
fi
UTIL_FIXUP_PATH(JT_HOME)
AC_SUBST(JT_HOME)
# Verify jtreg version
if test "x$JT_HOME" != x; then
AC_MSG_CHECKING([jtreg version number])
# jtreg -version looks like this: "jtreg 6.1+1-19"
# Extract actual version part ("6.1" in this case)
jtreg_version_full=`$JAVA -jar $JT_HOME/lib/jtreg.jar -version | $HEAD -n 1 | $CUT -d ' ' -f 2`
jtreg_version=${jtreg_version_full/%+*}
AC_MSG_RESULT([$jtreg_version])
# This is a simplified version of TOOLCHAIN_CHECK_COMPILER_VERSION
comparable_actual_version=`$AWK -F. '{ printf("%05d%05d%05d%05d\n", [$]1, [$]2, [$]3, [$]4) }' <<< "$jtreg_version"`
comparable_minimum_version=`$AWK -F. '{ printf("%05d%05d%05d%05d\n", [$]1, [$]2, [$]3, [$]4) }' <<< "$JTREG_MINIMUM_VERSION"`
if test $comparable_actual_version -lt $comparable_minimum_version ; then
AC_MSG_ERROR([jtreg version is too old, at least version $JTREG_MINIMUM_VERSION is required])
fi
fi
])
# Setup the JIB dependency resolver
AC_DEFUN_ONCE([LIB_TESTS_SETUP_JIB],
[
AC_ARG_WITH(jib, [AS_HELP_STRING([--with-jib],
[Jib dependency management tool @<:@not used@:>@])])
if test "x$with_jib" = xno || test "x$with_jib" = x; then
# jib disabled
AC_MSG_CHECKING([for jib])
AC_MSG_RESULT(no)
elif test "x$with_jib" = xyes; then
AC_MSG_ERROR([Must supply a value to --with-jib])
else
JIB_HOME="${with_jib}"
AC_MSG_CHECKING([for jib])
AC_MSG_RESULT(${JIB_HOME})
if test ! -d "${JIB_HOME}"; then
AC_MSG_ERROR([--with-jib must be a directory])
fi
JIB_JAR=$(ls ${JIB_HOME}/lib/jib-*.jar)
if test ! -f "${JIB_JAR}"; then
AC_MSG_ERROR([Could not find jib jar file in ${JIB_HOME}])
fi
fi
AC_SUBST(JIB_HOME)
])
################################################################################
#
# Check if building of the jtreg failure handler should be enabled.
#
AC_DEFUN_ONCE([LIB_TESTS_ENABLE_DISABLE_FAILURE_HANDLER],
[
UTIL_ARG_ENABLE(NAME: jtreg-failure-handler, DEFAULT: auto,
RESULT: BUILD_FAILURE_HANDLER,
DESC: [enable building of the jtreg failure handler],
DEFAULT_DESC: [enabled if jtreg is present],
CHECKING_MSG: [if the jtreg failure handler should be built],
CHECK_AVAILABLE: [
AC_MSG_CHECKING([if the jtreg failure handler is available])
if test "x$JT_HOME" != "x"; then
AC_MSG_RESULT([yes])
else
AVAILABLE=false
AC_MSG_RESULT([no (jtreg not present)])
fi
])
AC_SUBST(BUILD_FAILURE_HANDLER)
])

View File

@@ -0,0 +1,162 @@
#
# Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2023, JetBrains s.r.o.. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
################################################################################
# Setup wayland
################################################################################
AC_DEFUN_ONCE([LIB_SETUP_WAYLAND],
[
AC_ARG_WITH(wayland, [AS_HELP_STRING([--with-wayland],
[specify prefix directory for the wayland package
(expecting the headers under PATH/include)])])
AC_ARG_WITH(wayland-include, [AS_HELP_STRING([--with-wayland-include],
[specify directory for the wayland include files])])
if test "x$NEEDS_LIB_WAYLAND" = xfalse; then
if (test "x${with_wayland}" != x && test "x${with_wayland}" != xno) || \
(test "x${with_wayland_include}" != x && test "x${with_wayland_include}" != xno); then
AC_MSG_WARN([[wayland not used, so --with-wayland[-*] is ignored]])
fi
WAYLAND_CFLAGS=
WAYLAND_LIBS=
VULKAN_FLAGS=
VULKAN_ENABLED=false
else
WAYLAND_FOUND=no
if test "x${with_wayland}" = xno || test "x${with_wayland_include}" = xno; then
AC_MSG_ERROR([It is not possible to disable the use of wayland. Remove the --without-wayland option.])
fi
if test "x${with_wayland}" != x; then
AC_MSG_CHECKING([for wayland headers])
if test -s "${with_wayland}/include/wayland-client.h" && test -s "${with_wayland}/include/wayland-cursor.h"; then
WAYLAND_CFLAGS="-I${with_wayland}/include"
WAYLAND_LIBS="-L${with_wayland}/lib -lwayland-client -lwayland-cursor"
WAYLAND_FOUND=yes
AC_MSG_RESULT([$WAYLAND_FOUND])
else
AC_MSG_ERROR([Can't find 'include/wayland-client.h' and 'include/wayland-cursor.h' under ${with_wayland} given with the --with-wayland option.])
fi
fi
if test "x${with_wayland_include}" != x; then
AC_MSG_CHECKING([for wayland headers])
if test -s "${with_wayland_include}/wayland-client.h" && test -s "${with_wayland_include}/wayland-cursor.h"; then
WAYLAND_CFLAGS="-I${with_wayland_include}"
WAYLAND_FOUND=yes
AC_MSG_RESULT([$WAYLAND_FOUND])
else
AC_MSG_ERROR([Can't find 'wayland-client.h' and 'wayland-cursor.h' under ${with_wayland_include} given with the --with-wayland-include option.])
fi
fi
if test "x$WAYLAND_FOUND" = xno; then
# Are the wayland headers installed in the default /usr/include location?
AC_CHECK_HEADERS([wayland-client.h wayland-cursor.h],
[ WAYLAND_FOUND=yes ],
[ WAYLAND_FOUND=no; break ]
)
if test "x$WAYLAND_FOUND" = xyes; then
WAYLAND_CFLAGS=
WAYLAND_LIBS="-lwayland-client -lwayland-cursor"
DEFAULT_WAYLAND=yes
fi
fi
if test "x$WAYLAND_FOUND" = xno; then
HELP_MSG_MISSING_DEPENDENCY([wayland])
AC_MSG_ERROR([Could not find wayland! $HELP_MSG ])
fi
# Checking for vulkan sdk
AC_ARG_WITH(vulkan, [AS_HELP_STRING([--with-vulkan],
[specify whether we use vulkan])])
AC_ARG_WITH(vulkan-include, [AS_HELP_STRING([--with-vulkan-include],
[specify directory for the vulkan include files])])
if test "x$SUPPORTS_LIB_VULKAN" = xfalse; then
if (test "x${with_vulkan}" != x && test "x${with_vulkan}" != xno) || \
(test "x${with_vulkan_include}" != x && test "x${with_vulkan_include}" != xno); then
AC_MSG_WARN([[vulkan not used, so --with-vulkan-include is ignored]])
fi
VULKAN_FLAGS=
VULKAN_ENABLED=false
else
# Do not build vulkan rendering pipeline by default
if (test "x${with_vulkan}" = x && test "x${with_vulkan_include}" = x) || \
test "x${with_vulkan}" = xno || test "x${with_vulkan_include}" = xno ; then
VULKAN_FLAGS=
VULKAN_ENABLED=false
else
VULKAN_FOUND=no
if test "x${with_vulkan_include}" != x; then
AC_CHECK_HEADERS([${with_vulkan_include}/include/vulkan/vulkan.h],
[ VULKAN_FOUND=yes
VULKAN_FLAGS="-DVK_USE_PLATFORM_WAYLAND_KHR -I${with_vulkan_include}/include -DVULKAN_ENABLED"
VULKAN_ENABLED=true
],
[ AC_MSG_ERROR([Can't find 'vulkan/vulkan.h' under '${with_vulkan_include}']) ]
)
fi
if test "x$VULKAN_FOUND" = xno; then
# Check vulkan sdk location
AC_CHECK_HEADERS([$VULKAN_SDK/include/vulkan/vulkan.h],
[ VULKAN_FOUND=yes
VULKAN_FLAGS="-DVK_USE_PLATFORM_WAYLAND_KHR -I${VULKAN_SDK}/include -DVULKAN_ENABLED"
VULKAN_ENABLED=true
],
[ VULKAN_FOUND=no; break ]
)
fi
if test "x$VULKAN_FOUND" = xno; then
# Check default /usr/include location
AC_CHECK_HEADERS([vulkan/vulkan.h],
[ VULKAN_FOUND=yes
VULKAN_FLAGS="-DVK_USE_PLATFORM_WAYLAND_KHR -DVULKAN_ENABLED"
VULKAN_ENABLED=true
],
[ VULKAN_FOUND=no; break ]
)
fi
if test "x$VULKAN_FOUND" = xno; then
HELP_MSG_MISSING_DEPENDENCY([vulkan])
AC_MSG_ERROR([Could not find vulkan! $HELP_MSG ])
fi
fi
fi
fi
AC_SUBST(VULKAN_FLAGS)
AC_SUBST(VULKAN_ENABLED)
AC_SUBST(WAYLAND_CFLAGS)
AC_SUBST(WAYLAND_LIBS)
])

View File

@@ -33,6 +33,7 @@ m4_include([lib-freetype.m4])
m4_include([lib-hsdis.m4])
m4_include([lib-std.m4])
m4_include([lib-x11.m4])
m4_include([lib-wayland.m4])
m4_include([lib-tests.m4])
@@ -41,14 +42,23 @@ m4_include([lib-tests.m4])
################################################################################
AC_DEFUN_ONCE([LIB_DETERMINE_DEPENDENCIES],
[
# Check if X11 is needed
# Check if X11, wayland and vulkan is needed
if test "x$OPENJDK_TARGET_OS" = xwindows || test "x$OPENJDK_TARGET_OS" = xmacosx; then
# No X11 support on windows or macosx
# No X11 and wayland support on windows or macosx
NEEDS_LIB_X11=false
NEEDS_LIB_WAYLAND=false
SUPPORTS_LIB_VULKAN=false
elif test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
# No X11 support needed when building headless only
NEEDS_LIB_X11=false
NEEDS_LIB_WAYLAND=false
SUPPORTS_LIB_VULKAN=false
else
# All other instances need X11, even if building headless only, libawt still
# All other instances need X11 and wayland, even if building headless only, libawt still
# needs X11 headers.
NEEDS_LIB_X11=true
NEEDS_LIB_WAYLAND=true
SUPPORTS_LIB_VULKAN=true
fi
# Check if fontconfig is needed
@@ -105,6 +115,7 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
LIB_SETUP_LIBFFI
LIB_SETUP_MISC_LIBS
LIB_SETUP_X11
LIB_SETUP_WAYLAND
LIB_TESTS_SETUP_GTEST

View File

@@ -129,7 +129,6 @@ RELEASE_FILE_OS_ARCH:=@RELEASE_FILE_OS_ARCH@
RELEASE_FILE_LIBC:=@RELEASE_FILE_LIBC@
SOURCE_DATE := @SOURCE_DATE@
ENABLE_REPRODUCIBLE_BUILD := @ENABLE_REPRODUCIBLE_BUILD@
ISO_8601_FORMAT_STRING := @ISO_8601_FORMAT_STRING@
ifneq ($(SOURCE_DATE), updated)
@@ -454,13 +453,17 @@ endif
# Necessary additional compiler flags to compile X11
X_CFLAGS:=@X_CFLAGS@
X_LIBS:=@X_LIBS@
WAYLAND_CFLAGS:=@WAYLAND_CFLAGS@
WAYLAND_LIBS:=@WAYLAND_LIBS@
VULKAN_FLAGS:=@VULKAN_FLAGS@
VULKAN_ENABLED:=@VULKAN_ENABLED@
# The lowest required version of macosx
MACOSX_VERSION_MIN=@MACOSX_VERSION_MIN@
# The highest allowed version of macosx
MACOSX_VERSION_MAX=@MACOSX_VERSION_MAX@
# The macosx code signing identity to use
# The macosx code signing configuration
MACOSX_CODESIGN_MODE:=@MACOSX_CODESIGN_MODE@
MACOSX_CODESIGN_IDENTITY=@MACOSX_CODESIGN_IDENTITY@
# Toolchain type: gcc, clang, xlc, microsoft...
@@ -665,7 +668,7 @@ JAVAC = $(JAVAC_CMD)
JAVADOC = $(JAVADOC_CMD)
JAR = $(JAR_CMD)
JLINK = $(JLINK_CMD)
JMOD = $(JMOD_CMD) $(JAVA_TOOL_FLAGS_SMALL)
JMOD = $(JMOD_CMD)
BUILD_JAVA_FLAGS := @BOOTCYCLE_JVM_ARGS_BIG@
BUILD_JAVA=@FIXPATH@ $(BUILD_JDK)/bin/java $(BUILD_JAVA_FLAGS)
@@ -702,6 +705,7 @@ JAVADOC_MAIN_CLASS = -m jdk.javadoc.interim/jdk.javadoc.internal.tool.Main
NEW_JAVAC = $(INTERIM_LANGTOOLS_ARGS) $(JAVAC_MAIN_CLASS)
NEW_JAVADOC = $(INTERIM_LANGTOOLS_ARGS) $(JAVADOC_MAIN_CLASS)
JMOD_COMPRESS:=@JMOD_COMPRESS@
JLINK_KEEP_PACKAGED_MODULES:=@JLINK_KEEP_PACKAGED_MODULES@
RCFLAGS := @RCFLAGS@
@@ -768,7 +772,6 @@ READELF:=@READELF@
EXPR:=@EXPR@
FILE:=@FILE@
DOT:=@DOT@
HG:=@HG@
GIT:=@GIT@
OBJCOPY:=@OBJCOPY@
SETFILE:=@SETFILE@

View File

@@ -52,7 +52,7 @@ TOOLCHAIN_DESCRIPTION_xlc="IBM XL C/C++"
# Minimum supported versions, empty means unspecified
TOOLCHAIN_MINIMUM_VERSION_clang="3.5"
TOOLCHAIN_MINIMUM_VERSION_gcc="6.0"
TOOLCHAIN_MINIMUM_VERSION_microsoft="19.10.0.0" # VS2017
TOOLCHAIN_MINIMUM_VERSION_microsoft="19.28.0.0" # VS2019 16.8, aka MSVC 14.28
TOOLCHAIN_MINIMUM_VERSION_xlc=""
# Minimum supported linker versions, empty means unspecified
@@ -972,123 +972,3 @@ AC_DEFUN_ONCE([TOOLCHAIN_MISC_CHECKS],
fi
AC_SUBST(HOTSPOT_TOOLCHAIN_TYPE)
])
# Setup the JTReg Regression Test Harness.
AC_DEFUN_ONCE([TOOLCHAIN_SETUP_JTREG],
[
AC_ARG_WITH(jtreg, [AS_HELP_STRING([--with-jtreg],
[Regression Test Harness @<:@probed@:>@])])
if test "x$with_jtreg" = xno; then
# jtreg disabled
AC_MSG_CHECKING([for jtreg test harness])
AC_MSG_RESULT([no, disabled])
elif test "x$with_jtreg" != xyes && test "x$with_jtreg" != x; then
if test -d "$with_jtreg"; then
# An explicit path is specified, use it.
JT_HOME="$with_jtreg"
else
case "$with_jtreg" in
*.zip )
JTREG_SUPPORT_DIR=$CONFIGURESUPPORT_OUTPUTDIR/jtreg
$RM -rf $JTREG_SUPPORT_DIR
$MKDIR -p $JTREG_SUPPORT_DIR
$UNZIP -qq -d $JTREG_SUPPORT_DIR $with_jtreg
# Try to find jtreg to determine JT_HOME path
JTREG_PATH=`$FIND $JTREG_SUPPORT_DIR | $GREP "/bin/jtreg"`
if test "x$JTREG_PATH" != x; then
JT_HOME=$($DIRNAME $($DIRNAME $JTREG_PATH))
fi
;;
* )
;;
esac
fi
UTIL_FIXUP_PATH([JT_HOME])
if test ! -d "$JT_HOME"; then
AC_MSG_ERROR([jtreg home directory from --with-jtreg=$with_jtreg does not exist])
fi
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_ERROR([jtreg home directory from --with-jtreg=$with_jtreg is not a valid jtreg home])
fi
AC_MSG_CHECKING([for jtreg test harness])
AC_MSG_RESULT([$JT_HOME])
else
# Try to locate jtreg using the JT_HOME environment variable
if test "x$JT_HOME" != x; then
# JT_HOME set in environment, use it
if test ! -d "$JT_HOME"; then
AC_MSG_WARN([Ignoring JT_HOME pointing to invalid directory: $JT_HOME])
JT_HOME=
else
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_WARN([Ignoring JT_HOME which is not a valid jtreg home: $JT_HOME])
JT_HOME=
else
AC_MSG_NOTICE([Located jtreg using JT_HOME from environment])
fi
fi
fi
if test "x$JT_HOME" = x; then
# JT_HOME is not set in environment, or was deemed invalid.
# Try to find jtreg on path
UTIL_LOOKUP_PROGS(JTREGEXE, jtreg)
if test "x$JTREGEXE" != x; then
# That's good, now try to derive JT_HOME
JT_HOME=`(cd $($DIRNAME $JTREGEXE)/.. && pwd)`
if test ! -e "$JT_HOME/lib/jtreg.jar"; then
AC_MSG_WARN([Ignoring jtreg from path since a valid jtreg home cannot be found])
JT_HOME=
else
AC_MSG_NOTICE([Located jtreg using jtreg executable in path])
fi
fi
fi
AC_MSG_CHECKING([for jtreg test harness])
if test "x$JT_HOME" != x; then
AC_MSG_RESULT([$JT_HOME])
else
AC_MSG_RESULT([no, not found])
if test "x$with_jtreg" = xyes; then
AC_MSG_ERROR([--with-jtreg was specified, but no jtreg found.])
fi
fi
fi
UTIL_FIXUP_PATH(JT_HOME)
AC_SUBST(JT_HOME)
])
# Setup the JIB dependency resolver
AC_DEFUN_ONCE([TOOLCHAIN_SETUP_JIB],
[
AC_ARG_WITH(jib, [AS_HELP_STRING([--with-jib],
[Jib dependency management tool @<:@not used@:>@])])
if test "x$with_jib" = xno || test "x$with_jib" = x; then
# jib disabled
AC_MSG_CHECKING([for jib])
AC_MSG_RESULT(no)
elif test "x$with_jib" = xyes; then
AC_MSG_ERROR([Must supply a value to --with-jib])
else
JIB_HOME="${with_jib}"
AC_MSG_CHECKING([for jib])
AC_MSG_RESULT(${JIB_HOME})
if test ! -d "${JIB_HOME}"; then
AC_MSG_ERROR([--with-jib must be a directory])
fi
JIB_JAR=$(ls ${JIB_HOME}/lib/jib-*.jar)
if test ! -f "${JIB_JAR}"; then
AC_MSG_ERROR([Could not find jib jar file in ${JIB_HOME}])
fi
fi
AC_SUBST(JIB_HOME)
])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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
@@ -25,21 +25,7 @@
################################################################################
# The order of these defines the priority by which we try to find them.
VALID_VS_VERSIONS="2019 2017 2022"
VS_DESCRIPTION_2017="Microsoft Visual Studio 2017"
VS_VERSION_INTERNAL_2017=141
VS_MSVCR_2017=vcruntime140.dll
VS_MSVCP_2017=msvcp140.dll
VS_ENVVAR_2017="VS150COMNTOOLS"
VS_USE_UCRT_2017="true"
VS_VS_INSTALLDIR_2017="Microsoft Visual Studio/2017"
VS_EDITIONS_2017="BuildTools Community Professional Enterprise"
VS_SDK_INSTALLDIR_2017=
VS_VS_PLATFORM_NAME_2017="v141"
VS_SDK_PLATFORM_NAME_2017=
VS_SUPPORTED_2017=true
VS_TOOLSET_SUPPORTED_2017=true
VALID_VS_VERSIONS="2022 2019"
VS_DESCRIPTION_2019="Microsoft Visual Studio 2019"
VS_VERSION_INTERNAL_2019=142
@@ -84,7 +70,7 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
UTIL_FIXUP_PATH(VS_BASE, NOFAIL)
if test "x$VS_BASE" != x && test -d "$VS_BASE"; then
# In VS 2017 and VS 2019, the default installation is in a subdir named after the edition.
# In VS 2019, the default installation is in a subdir named after the edition.
# Find the first one present and use that.
if test "x$VS_EDITIONS" != x; then
for edition in $VS_EDITIONS; do
@@ -97,20 +83,18 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
AC_MSG_NOTICE([Found Visual Studio installation at $VS_BASE using $METHOD])
if test "x$TARGET_CPU" = xx86; then
VCVARSFILES="vc/bin/vcvars32.bat vc/auxiliary/build/vcvars32.bat"
VCVARSFILES="vcvars32.bat vcvarsamd64_x86.bat"
elif test "x$TARGET_CPU" = xx86_64; then
VCVARSFILES="vc/bin/amd64/vcvars64.bat vc/bin/x86_amd64/vcvarsx86_amd64.bat \
vc/auxiliary/build/vcvarsx86_amd64.bat vc/auxiliary/build/vcvars64.bat"
VCVARSFILES="vcvars64.bat vcvarsx86_amd64.bat"
elif test "x$TARGET_CPU" = xaarch64; then
# for host x86-64, target aarch64
# aarch64 requires Visual Studio 16.8 or higher
VCVARSFILES="vc/auxiliary/build/vcvarsamd64_arm64.bat \
vc/auxiliary/build/vcvarsx86_arm64.bat"
VCVARSFILES="vcvarsamd64_arm64.bat vcvarsx86_arm64.bat"
fi
for VCVARSFILE in $VCVARSFILES; do
if test -f "$VS_BASE/$VCVARSFILE"; then
VS_ENV_CMD="$VS_BASE/$VCVARSFILE"
if test -f "$VS_BASE/vc/auxiliary/build/$VCVARSFILE"; then
VS_ENV_CMD="$VS_BASE/vc/auxiliary/build/$VCVARSFILE"
break
fi
done
@@ -172,11 +156,9 @@ AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT],
# build environment and assigns it to VS_ENV_CMD
AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
[
# VS2017 provides the option to install previous minor versions of the MSVC
# toolsets. It is not possible to directly download earlier minor versions of
# VS2017 and in order to build with a previous minor compiler toolset version,
# it is now possible to compile with earlier minor versions by passing
# -vcvars_ver=<toolset_version> argument to vcvarsall.bat.
# Since VS2017 MS provides the option to install previous minor versions of
# the toolset. In order to build with a previous minor compiler toolset
# version, pass -vcvars_ver=<toolset_version> argument to vcvarsall.bat.
AC_ARG_WITH(msvc-toolset-version, [AS_HELP_STRING([--with-msvc-toolset-version],
[specific MSVC toolset version to use, passed as -vcvars_ver argument to
pass to vcvarsall.bat (Windows only)])])
@@ -494,14 +476,9 @@ AC_DEFUN([TOOLCHAIN_SETUP_MSVC_DLL],
if test "x$MSVC_DLL" = x; then
if test "x$VCINSTALLDIR" != x; then
if test "$VS_VERSION" -lt 2017; then
# Probe: Using well-known location from Visual Studio 12.0 and older
POSSIBLE_MSVC_DLL="$VCINSTALLDIR/redist/$vs_target_cpu/microsoft.vc${VS_VERSION_INTERNAL}.crt/$DLL_NAME"
else
# Probe: Using well-known location from VS 2017 and VS 2019
POSSIBLE_MSVC_DLL="`ls $VCToolsRedistDir/$vs_target_cpu/microsoft.vc${VS_VERSION_INTERNAL}.crt/$DLL_NAME 2> /dev/null`"
fi
# In case any of the above finds more than one file, loop over them.
# Probe: Using well-known location
POSSIBLE_MSVC_DLL="`ls $VCToolsRedistDir/$vs_target_cpu/microsoft.vc${VS_VERSION_INTERNAL}.crt/$DLL_NAME 2> /dev/null`"
# If the above finds more than one file, loop over them.
for possible_msvc_dll in $POSSIBLE_MSVC_DLL; do
TOOLCHAIN_CHECK_POSSIBLE_MSVC_DLL([$DLL_NAME], [$possible_msvc_dll],
[well-known location in VCINSTALLDIR])

View File

@@ -223,10 +223,8 @@ define SetupJarArchiveBody
# If reproducible build and the boot jdk jar supports --date option
# then specify the --date using SOURCE_DATE in ISO-8601
$1_JAR_OPTIONS :=
ifeq ($$(ENABLE_REPRODUCIBLE_BUILD), true)
ifeq ($$(BOOT_JDK_JAR_SUPPORTS_DATE), true)
$1_JAR_OPTIONS += --date $(SOURCE_DATE_ISO_8601)
endif
ifeq ($$(BOOT_JDK_JAR_SUPPORTS_DATE), true)
$1_JAR_OPTIONS += --date $(SOURCE_DATE_ISO_8601)
endif
ifneq (,$$($1_CHECK_COMPRESS_JAR))
ifneq ($(COMPRESS_JARS), true)

View File

@@ -402,8 +402,11 @@ define SetupJavaCompilationBody
$1_COMPILE_TARGET := $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$1_batch
$1_FILELIST := $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$1_batch.filelist
$1_MODFILELIST := $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$1_batch.modfiles
$1_MODFILELIST_FIXED := $$($1_MODFILELIST).fixed
$1_API_TARGET := $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$1_pubapi
$1_API_INTERNAL := $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$1_internalapi
# Put headers in a temp dir to filter out those that actually
# changed before copying them to the real header dir.
@@ -437,6 +440,8 @@ define SetupJavaCompilationBody
$1_API_DIGEST_FLAGS := \
-classpath $$(BUILDTOOLS_OUTPUTDIR)/depend \
-Xplugin:"depend $$($1_API_TARGET)" \
"-XDinternalAPIPath=$$($1_API_INTERNAL)" \
"-XDLOG_LEVEL=$(LOG_LEVEL)" \
#
$1_EXTRA_DEPS := $$(BUILDTOOLS_OUTPUTDIR)/depend/_the.COMPILE_DEPEND_batch
@@ -447,16 +452,39 @@ define SetupJavaCompilationBody
# list of files.
$$($1_FILELIST): $$($1_SRCS) $$($1_VARDEPS_FILE)
$$(call MakeDir, $$(@D))
$$(call LogWarn, Compiling $$(words $$($1_SRCS)) files for $1)
$$(call LogWarn, Compiling up to $$(words $$($1_SRCS)) files for $1)
$$(eval $$(call ListPathsSafely, $1_SRCS, $$($1_FILELIST)))
# Create a $$($1_MODFILELIST) file with significant modified dependencies
# (either sources files or the other mark dependencies).
# It is then sent using a side-channel
# to the custom Depend plugin. The Depend plugin will check the provided list
# of modified files, and if none of the Java source files is changed in a way
# observable from outside of the file, and the list of modified files does
# not include a non-Java source file, it will only compile the modified files.
# Otherwise, all module's sources will be compiled. If a non-Java file is included,
# it will be considered to be a significant change, and all module source will
# be recompiled
$$($1_MODFILELIST): $$($1_SRCS) $$($1_DEPENDS) \
$$($1_VARDEPS_FILE) $$($1_EXTRA_DEPS) $$($1_JAVAC_SERVER_CONFIG)
$$(eval $1_MODFILES := $$?)
$$(eval $$(call ListPathsSafely, $1_MODFILES, $$($1_MODFILELIST)))
# Convert the paths in the MODFILELIST file to Windows-style paths
# on Windows. This is needed because javac operates on Windows-style paths
# when running on Windows. On other platforms this just copies the MODFILELIST file.
$$($1_MODFILELIST_FIXED): $$($1_MODFILELIST)
$$(call FixPathFile, $$($1_MODFILELIST), $$($1_MODFILELIST_FIXED))
# Do the actual compilation
$$($1_COMPILE_TARGET): $$($1_SRCS) $$($1_FILELIST) $$($1_DEPENDS) \
$$($1_VARDEPS_FILE) $$($1_EXTRA_DEPS) $$($1_JAVAC_SERVER_CONFIG)
$$($1_VARDEPS_FILE) $$($1_EXTRA_DEPS) $$($1_JAVAC_SERVER_CONFIG) \
$$($1_MODFILELIST_FIXED)
$$(call MakeDir, $$(@D))
$$(call ExecuteWithLog, $$($1_BIN)$$($1_MODULE_SUBDIR)/_the.$$($1_SAFE_NAME)_batch, \
$$($1_JAVAC_CMD) $$($1_FLAGS) \
$$($1_API_DIGEST_FLAGS) \
-XDmodifiedInputs=$$($1_MODFILELIST_FIXED) \
-d $$($1_BIN) $$($1_HEADERS_ARG) @$$($1_FILELIST)) && \
$(TOUCH) $$@

View File

@@ -127,14 +127,13 @@ endef
# the build was created from
SOURCE_REVISION_TRACKER := $(SUPPORT_OUTPUTDIR)/src-rev/source-revision-tracker
# Locate all hg repositories included in the forest, as absolute paths
# Locate all sourcecode repositories included in the forest, as absolute paths
FindAllReposAbs = \
$(strip $(sort $(dir $(filter-out $(TOPDIR)/build/%, $(wildcard \
$(addprefix $(TOPDIR)/, .hg */.hg */*/.hg */*/*/.hg */*/*/*/.hg) \
$(addprefix $(TOPDIR)/, .git */.git */*/.git */*/*/.git */*/*/*/.git) \
)))))
# Locate all hg repositories included in the forest, as relative paths
# Locate all sourcecode repositories included in the forest, as relative paths
FindAllReposRel = \
$(strip $(subst $(TOPDIR)/,.,$(patsubst $(TOPDIR)/%/, %, $(FindAllReposAbs))))
@@ -443,12 +442,23 @@ endif
# list.
# This is normally not needed since we use the FIXPATH prefix for command lines,
# but might be needed in certain circumstances.
#
# FixPathFile is the file version of FixPath. It instead takes a file with paths in $1
# and outputs the 'fixed' paths into the file in $2. If the file in $2 already exists
# it is overwritten.
# On non-Windows platforms this instead does a copy, so that $2 can still be used
# as a depenendency of a make rule, instead of having to conditionally depend on
# $1 instead, based on the target platform.
ifeq ($(call isTargetOs, windows), true)
FixPath = \
$(strip $(subst \,\\, $(shell $(FIXPATH_BASE) print $(patsubst $(FIXPATH), , $1))))
FixPathFile = \
$(shell $(FIXPATH_BASE) convert $1 $2)
else
FixPath = \
$1
FixPathFile = \
$(shell $(CP) $1 $2)
endif
################################################################################

View File

@@ -267,10 +267,15 @@ endif
# specialized file is found, returns the default file.
# $1 Executable to find entitlements file for.
ENTITLEMENTS_DIR := $(TOPDIR)/make/data/macosxsigning
DEFAULT_ENTITLEMENTS_FILE := $(ENTITLEMENTS_DIR)/default.plist
ifeq ($(MACOSX_CODESIGN_MODE), debug)
CODESIGN_PLIST_SUFFIX := -debug
else
CODESIGN_PLIST_SUFFIX :=
endif
DEFAULT_ENTITLEMENTS_FILE := $(ENTITLEMENTS_DIR)/default$(CODESIGN_PLIST_SUFFIX).plist
GetEntitlementsFile = \
$(foreach f, $(ENTITLEMENTS_DIR)/$(strip $(notdir $1)).plist, \
$(foreach f, $(ENTITLEMENTS_DIR)/$(strip $(notdir $1))$(CODESIGN_PLIST_SUFFIX).plist, \
$(if $(wildcard $f), $f, $(DEFAULT_ENTITLEMENTS_FILE)) \
)
@@ -338,10 +343,15 @@ define SetupCompileNativeFileBody
endif
endif
ifneq ($(DISABLE_WARNING_PREFIX), )
$1_WARNINGS_FLAGS := $$(addprefix $(DISABLE_WARNING_PREFIX), \
$$($$($1_BASE)_DISABLED_WARNINGS_$(TOOLCHAIN_TYPE)_$$($1_FILENAME)))
endif
$1_BASE_CFLAGS := $$($$($1_BASE)_CFLAGS) $$($$($1_BASE)_EXTRA_CFLAGS) \
$$($$($1_BASE)_SYSROOT_CFLAGS)
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_WARNINGS_FLAGS)
$1_BASE_CXXFLAGS := $$($$($1_BASE)_CXXFLAGS) $$($$($1_BASE)_EXTRA_CXXFLAGS) \
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS)
$$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS) $$($1_WARNINGS_FLAGS)
$1_BASE_ASFLAGS := $$($$($1_BASE)_ASFLAGS) $$($$($1_BASE)_EXTRA_ASFLAGS)
ifneq ($$(filter %.c, $$($1_FILENAME)), )
@@ -359,9 +369,9 @@ define SetupCompileNativeFileBody
$1_FLAGS := $(BASIC_ASFLAGS) $$($1_BASE_ASFLAGS)
$1_COMPILER := $(AS)
# gcc assembly files must contain an appropriate relative .file
# gcc or clang assembly files must contain an appropriate relative .file
# path for reproducible builds.
ifeq ($(TOOLCHAIN_TYPE), gcc)
ifneq ($(findstring $(TOOLCHAIN_TYPE), gcc clang), )
# If no absolute paths allowed, work out relative source file path
# for assembly .file substitution, otherwise use full file path
ifeq ($(ALLOW_ABSOLUTE_PATHS_IN_OUTPUT), false)
@@ -403,11 +413,10 @@ define SetupCompileNativeFileBody
$1_OBJ_DEPS := $$($1_SRC_FILE) $$($$($1_BASE)_COMPILE_VARDEPS_FILE) \
$$($$($1_BASE)_EXTRA_DEPS) $$($1_VARDEPS_FILE)
$1_COMPILE_OPTIONS := $$($1_FLAGS) $(CC_OUT_OPTION)$$($1_OBJ) $$($1_SRC_FILE)
# For reproducible builds with gcc ensure random symbol generation is seeded deterministically
ifeq ($(TOOLCHAIN_TYPE), gcc)
ifeq ($$(ENABLE_REPRODUCIBLE_BUILD), true)
$1_COMPILE_OPTIONS += -frandom-seed="$$($1_FILENAME)"
endif
# For reproducible builds with gcc and clang ensure random symbol generation is
# seeded deterministically
ifneq ($(findstring $(TOOLCHAIN_TYPE), gcc clang), )
$1_COMPILE_OPTIONS += -frandom-seed="$$($1_FILENAME)"
endif
$$($1_OBJ_JSON): $$($1_OBJ_DEPS)
@@ -803,7 +812,7 @@ define SetupNativeCompilationBody
ifeq ($(TOOLCHAIN_TYPE), microsoft)
$1_PCH_FILE := $$($1_OBJECT_DIR)/$1.pch
$1_GENERATED_PCH_SRC := $$($1_OBJECT_DIR)/$1_pch.cpp
$1_GENERATED_PCH_OBJ := $$($1_OBJECT_DIR)/$1_pch.obj
$1_GENERATED_PCH_OBJ := $$($1_OBJECT_DIR)/$1_pch$(OBJ_SUFFIX)
$$(eval $$(call SetupCompileNativeFile, $1_$$(notdir $$($1_GENERATED_PCH_SRC)), \
FILE := $$($1_GENERATED_PCH_SRC), \
@@ -910,15 +919,15 @@ define SetupNativeCompilationBody
# For some unknown reason, in this case CL actually outputs the show
# includes to stderr so need to redirect it to hide the output from the
# main log.
$$(call ExecuteWithLog, $$($1_RES_DEPS_FILE).obj, \
$$(call ExecuteWithLog, $$($1_RES_DEPS_FILE)$(OBJ_SUFFIX), \
$$($1_CC) $$(filter-out -l%, $$($1_RCFLAGS)) \
$$($1_SYSROOT_CFLAGS) -showIncludes -nologo -TC \
$(CC_OUT_OPTION)$$($1_RES_DEPS_FILE).obj -P -Fi$$($1_RES_DEPS_FILE).pp \
$(CC_OUT_OPTION)$$($1_RES_DEPS_FILE)$(OBJ_SUFFIX) -P -Fi$$($1_RES_DEPS_FILE).pp \
$$($1_VERSIONINFO_RESOURCE)) 2>&1 \
| $(TR) -d '\r' | $(GREP) -v -e "^Note: including file:" \
-e "^$$(notdir $$($1_VERSIONINFO_RESOURCE))$$$$" || test "$$$$?" = "1" ; \
$(ECHO) $$($1_RES): \\ > $$($1_RES_DEPS_FILE) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_RES_DEPS_FILE).obj.log \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_RES_DEPS_FILE)$(OBJ_SUFFIX).log \
>> $$($1_RES_DEPS_FILE) ; \
$(ECHO) >> $$($1_RES_DEPS_FILE) ;\
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_RES_DEPS_FILE) \
@@ -1205,11 +1214,16 @@ define SetupNativeCompilationBody
$$($1_MT) -nologo -manifest $$($1_MANIFEST) -identity:"$$($1_NAME).exe, version=$$($1_MANIFEST_VERSION)" -outputresource:$$@;#1
endif
endif
# This only works if the openjdk_codesign identity is present on the system. Let
# silently fail otherwise.
ifneq ($(CODESIGN), )
# On macosx, optionally run codesign on every binary.
# Remove signature explicitly first to avoid warnings if the linker
# added a default adhoc signature.
ifeq ($(MACOSX_CODESIGN_MODE), hardened)
$(CODESIGN) --remove-signature $$@
$(CODESIGN) -f -s "$(MACOSX_CODESIGN_IDENTITY)" --timestamp --options runtime \
--entitlements $$(call GetEntitlementsFile, $$@) $$@
else ifeq ($(MACOSX_CODESIGN_MODE), debug)
$(CODESIGN) --remove-signature $$@
$(CODESIGN) -f -s - --entitlements $$(call GetEntitlementsFile, $$@) $$@
endif
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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
@@ -68,6 +68,12 @@ _sequence-do = \
$(words $(SEQUENCE_COUNT)) \
$(call _sequence-do,$1))
################################################################################
# Strip both arguments. Append the first argument to the second argument. If the
# first argument is empty, return the empty string.
IfAppend = \
$(if $(strip $1),$(strip $1)$(strip $2),)
################################################################################
# Replace question marks with space in string. This macro needs to be called on
# files from FindFiles in case any of them contains space in their file name,
@@ -367,6 +373,9 @@ isBuildCpu = \
isBuildCpuArch = \
$(strip $(if $(filter $(OPENJDK_BUILD_CPU_ARCH), $1), true, false))
isCompiler = \
$(strip $(if $(filter $(TOOLCHAIN_TYPE), $1), true, false))
################################################################################
# Converts a space separated list to a comma separated list.
#

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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
@@ -54,7 +54,7 @@ endif
# FOLLOW_SYMLINKS - Set to explicitly follow symlinks. Affects performance of
# finding files.
# ZIP_OPTIONS extra options to pass to zip
# REPRODUCIBLE override ENABLE_REPRODUCIBLE_BUILD (to make zip reproducible or not)
# REPRODUCIBLE set to false to disable the step that makes zip reproducible
SetupZipArchive = $(NamedParamsMacroTemplate)
define SetupZipArchiveBody
@@ -130,7 +130,7 @@ define SetupZipArchiveBody
)
ifeq ($$($1_REPRODUCIBLE), )
$1_REPRODUCIBLE := $$(ENABLE_REPRODUCIBLE_BUILD)
$1_REPRODUCIBLE := true
endif
# Use a slightly shorter name for logging, but with enough path to identify this zip.

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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,7 +29,7 @@ PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A
HOTSPOT_VM_DISTRO="OpenJDK"
VENDOR_URL=https://openjdk.java.net/
VENDOR_URL=https://openjdk.org/
VENDOR_URL_BUG=https://bugreport.java.com/bugreport/
VENDOR_URL_VM_BUG=https://bugreport.java.com/bugreport/crash.jsp

View File

@@ -23,21 +23,19 @@
# questions.
#
# Versions and download locations for dependencies used by pre-submit testing.
# Versions and download locations for dependencies used by GitHub Actions (GHA)
BOOT_JDK_VERSION=18
JTREG_VERSION=6.1
JTREG_BUILD=1
GTEST_VERSION=1.8.1
JTREG_VERSION=7+1
LINUX_X64_BOOT_JDK_FILENAME=openjdk-18_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=0f60aef7b8504983d6e374fe94d09a7bedcf05ec559e812d801a33bd4ebd23d0
LINUX_X64_BOOT_JDK_EXT=tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=f47aba585cfc9ecff1ed8e023524e8309f4315ed8b80100b40c7dcc232c12f96
WINDOWS_X64_BOOT_JDK_FILENAME=openjdk-18_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=a5b91d4c12752d44aa75df70ae3e2311287b3e60c288b07dade106376c688277
MACOS_X64_BOOT_JDK_EXT=tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=bfd33f5b2590fd552ae2d9231340c6b4704a872f927dce1c52860b78c49a5a11
MACOS_X64_BOOT_JDK_FILENAME=openjdk-18_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk18/43f95e8614114aeaa8e8a5fcf20a682d/36/GPL/openjdk-18_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=527b61b4265caf45cdcbacfcf8fbcd0b4b280bede1eff32a5b252d855ff0534b
WINDOWS_X64_BOOT_JDK_EXT=zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk19/877d6127e982470ba2a7faa31cc93d04/36/GPL/openjdk-19_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=8fabcee7c4e8d3b53486777ecd27bb906d67d7c1efd1bf22a8290cf659afa487

View File

@@ -254,12 +254,7 @@ var getJibProfilesCommon = function (input, data) {
"--disable-jvm-feature-shenandoahgc",
versionArgs(input, common))
};
// Extra settings for release profiles
common.release_profile_base = {
configure_args: [
"--enable-reproducible-build",
],
};
// Extra settings for debug profiles
common.debug_suffix = "-debug";
common.debug_profile_base = {
@@ -393,7 +388,7 @@ var getJibProfilesCommon = function (input, data) {
};
};
common.boot_jdk_version = "18";
common.boot_jdk_version = "19";
common.boot_jdk_build_number = "36";
common.boot_jdk_home = input.get("boot_jdk", "install_path") + "/jdk-"
+ common.boot_jdk_version
@@ -558,7 +553,7 @@ var getJibProfilesProfiles = function (input, common, data) {
"ANT_HOME": input.get("ant", "home_path")
}
};
[ "linux-x64", "macosx-x64", "windows-x64", "linux-aarch64"]
[ "linux-x64", "macosx-aarch64", "macosx-x64", "windows-x64", "linux-aarch64"]
.forEach(function (name) {
var maketestName = name + "-testmake";
profiles[maketestName] = concatObjects(profiles[name], testmakeBase);
@@ -854,13 +849,6 @@ var getJibProfilesProfiles = function (input, common, data) {
});
});
// After creating all derived profiles, we can add the release profile base
// to the main profiles
common.main_profile_names.forEach(function (name) {
profiles[name] = concatObjects(profiles[name],
common.release_profile_base);
});
// Artifacts of JCov profiles
[ "linux-aarch64", "linux-x64", "macosx-x64", "macosx-aarch64", "windows-x64" ]
.forEach(function (name) {
@@ -955,7 +943,7 @@ var getJibProfilesProfiles = function (input, common, data) {
target_cpu: input.build_cpu,
dependencies: [
"jtreg", "gnumake", "boot_jdk", "devkit", "jib", "jcov", testedProfileJdk,
testedProfileTest
testedProfileTest, testedProfile + ".jdk_symbols",
],
src: "src.conf",
make_args: testOnlyMake,
@@ -963,7 +951,8 @@ var getJibProfilesProfiles = function (input, common, data) {
"BOOT_JDK": common.boot_jdk_home,
"JT_HOME": input.get("jtreg", "home_path"),
"JDK_IMAGE_DIR": input.get(testedProfileJdk, "home_path"),
"TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path")
"TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path"),
"SYMBOLS_IMAGE_DIR": input.get(testedProfile + ".jdk_symbols", "home_path")
},
labels: "test"
}
@@ -1003,17 +992,6 @@ var getJibProfilesProfiles = function (input, common, data) {
profiles["run-test"] = concatObjects(profiles["run-test"], macosxRunTestExtra);
profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"], macosxRunTestExtra);
}
// On windows we want the debug symbols available at test time
if (input.build_os == "windows") {
windowsRunTestPrebuiltExtra = {
dependencies: [ testedProfile + ".jdk_symbols" ],
environment: {
"SYMBOLS_IMAGE_DIR": input.get(testedProfile + ".jdk_symbols", "home_path"),
}
};
profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"],
windowsRunTestPrebuiltExtra);
}
// The profile run-test-prebuilt defines src.conf as the src bundle. When
// running in Mach 5, this reduces the time it takes to populate the
@@ -1153,9 +1131,9 @@ var getJibProfilesDependencies = function (input, common) {
jtreg: {
server: "jpg",
product: "jtreg",
version: "6.1",
version: "7",
build_number: "1",
file: "bundles/jtreg-6.1+1.zip",
file: "bundles/jtreg-7+1.zip",
environment_name: "JT_HOME",
environment_path: input.get("jtreg", "home_path") + "/bin",
configure_args: "--with-jtreg=" + input.get("jtreg", "home_path"),
@@ -1164,12 +1142,12 @@ var getJibProfilesDependencies = function (input, common) {
jmh: {
organization: common.organization,
ext: "tar.gz",
revision: "1.34+1.0"
revision: "1.35+1.0"
},
jcov: {
organization: common.organization,
revision: "3.0-12-jdk-asm+1.0",
revision: "3.0-13-jdk-asm+1.0",
ext: "zip",
environment_name: "JCOV_HOME",
},

View File

@@ -26,17 +26,17 @@
# Default version, product, and vendor information to use,
# unless overridden by configure
DEFAULT_VERSION_FEATURE=19
DEFAULT_VERSION_FEATURE=20
DEFAULT_VERSION_INTERIM=0
DEFAULT_VERSION_UPDATE=0
DEFAULT_VERSION_PATCH=0
DEFAULT_VERSION_EXTRA1=0
DEFAULT_VERSION_EXTRA2=0
DEFAULT_VERSION_EXTRA3=0
DEFAULT_VERSION_DATE=2022-09-20
DEFAULT_VERSION_CLASSFILE_MAJOR=63 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_DATE=2023-03-21
DEFAULT_VERSION_CLASSFILE_MAJOR=64 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_VERSION_DOCS_API_SINCE=11
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="18 19"
DEFAULT_JDK_SOURCE_TARGET_VERSION=19
DEFAULT_PROMOTED_VERSION_PRE=
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="19 20"
DEFAULT_JDK_SOURCE_TARGET_VERSION=20
DEFAULT_PROMOTED_VERSION_PRE=ea

View File

@@ -4,7 +4,9 @@
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or

View File

@@ -0,0 +1 @@
0x25 U+0025

View File

@@ -81,6 +81,7 @@ JVM_GetClassDeclaredConstructors
JVM_GetClassDeclaredFields
JVM_GetClassDeclaredMethods
JVM_GetClassFieldsCount
JVM_GetClassFileVersion
JVM_GetClassInterfaces
JVM_GetClassMethodsCount
JVM_GetClassModifiers
@@ -193,7 +194,6 @@ JVM_RegisterLambdaProxyClassForArchiving
JVM_RegisterSignal
JVM_ReleaseUTF
JVM_ReportFinalizationComplete
JVM_ResumeThread
JVM_ExtentLocalCache
JVM_SetExtentLocalCache
JVM_SetArrayElement
@@ -204,9 +204,7 @@ JVM_SetStackWalkContinuation
JVM_SetThreadPriority
JVM_Sleep
JVM_StartThread
JVM_StopThread
JVM_SupportsCX8
JVM_SuspendThread
JVM_TotalMemory
JVM_UnloadLibrary
JVM_WaitForReferencePendingList
@@ -226,4 +224,5 @@ JVM_VirtualThreadMountBegin
JVM_VirtualThreadMountEnd
JVM_VirtualThreadUnmountBegin
JVM_VirtualThreadUnmountEnd
JVM_VirtualThreadHideFrames
#

View File

@@ -0,0 +1,18 @@
<?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.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>
<key>com.apple.security.get-task-allow</key>
<true/>
</dict>
</plist>

View File

@@ -0,0 +1,20 @@
<?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.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>
<key>com.apple.security.device.audio-input</key>
<true/>
<key>com.apple.security.get-task-allow</key>
<true/>
</dict>
</plist>

View File

@@ -28,7 +28,7 @@
JMH_VERSION=1.35
COMMONS_MATH3_VERSION=3.2
JOPT_SIMPLE_VERSION=4.6
JOPT_SIMPLE_VERSION=5.0.4
BUNDLE_NAME=jmh-$JMH_VERSION.tar.gz

View File

@@ -142,8 +142,7 @@ ifeq ($(call check-jvm-feature, compiler2), true)
ifeq ($(HOTSPOT_TARGET_CPU_ARCH), aarch64)
AD_SRC_FILES += $(call uniq, $(wildcard $(foreach d, $(AD_SRC_ROOTS), \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/$(HOTSPOT_TARGET_CPU_ARCH)_neon.ad \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/$(HOTSPOT_TARGET_CPU_ARCH)_sve.ad \
$d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/$(HOTSPOT_TARGET_CPU_ARCH)_vector.ad \
)))
endif

View File

@@ -66,6 +66,10 @@ ifeq ($(VERSION_BUILD), )
VERSION_BUILD := 0
endif
ifeq ($(HOTSPOT_BUILD_TIME), )
HOTSPOT_BUILD_TIME := $(call EpochToISO8601, $(shell $(DATE) +"%s"))
endif
CFLAGS_VM_VERSION := \
$(VERSION_CFLAGS) \
-DHOTSPOT_VERSION_STRING='"$(VERSION_STRING)"' \
@@ -73,12 +77,9 @@ CFLAGS_VM_VERSION := \
-DHOTSPOT_BUILD_USER='"$(USERNAME)"' \
-DHOTSPOT_VM_DISTRO='"$(HOTSPOT_VM_DISTRO)"' \
-DCPU='"$(OPENJDK_TARGET_CPU_VM_VERSION)"' \
-DHOTSPOT_BUILD_TIME='"$(HOTSPOT_BUILD_TIME)"' \
#
ifneq ($(HOTSPOT_BUILD_TIME), )
CFLAGS_VM_VERSION += -DHOTSPOT_BUILD_TIME='"$(HOTSPOT_BUILD_TIME)"'
endif
################################################################################
# Disabled warnings

View File

@@ -120,12 +120,8 @@ endif
ifneq ($(call check-jvm-feature, cds), true)
JVM_CFLAGS_FEATURES += -DINCLUDE_CDS=0
JVM_EXCLUDE_FILES += \
cdsProtectionDomain.cpp \
classLoaderDataShared.cpp \
classLoaderExt.cpp \
dumpTimeSharedClassInfo.cpp \
lambdaProxyClassDictionary.cpp \
runTimeSharedClassInfo.cpp \
systemDictionaryShared.cpp
JVM_EXCLUDE_PATTERNS += cds/
endif
@@ -169,12 +165,13 @@ endif
################################################################################
ifeq ($(call check-jvm-feature, link-time-opt), true)
# NOTE: Disable automatic opimization level and let the explicit cflag control
# optimization level instead. This activates O3 on slowdebug builds, just
# like the old build, but it's probably not right.
JVM_OPTIMIZATION :=
JVM_CFLAGS_FEATURES += -O3 -flto
JVM_LDFLAGS_FEATURES += -O3 -flto -fuse-linker-plugin -fno-strict-aliasing
# Set JVM_OPTIMIZATION directly so other jvm-feature flags can override it
# later on if desired
JVM_OPTIMIZATION := HIGHEST_JVM
ifeq ($(call isCompiler, gcc), true)
JVM_CFLAGS_FEATURES += -flto -fuse-linker-plugin
JVM_LDFLAGS_FEATURES += -flto -fuse-linker-plugin -fno-strict-aliasing
endif
endif
ifeq ($(call check-jvm-feature, opt-size), true)

View File

@@ -53,7 +53,7 @@ endif
# platform dependent.
ifeq ($(call isTargetOs, linux), true)
DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
DUMP_SYMBOLS_CMD := $(NM) --defined-only *$(OBJ_SUFFIX)
ifneq ($(FILTER_SYMBOLS_PATTERN), )
FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
endif
@@ -67,7 +67,7 @@ ifeq ($(call isTargetOs, linux), true)
else ifeq ($(call isTargetOs, macosx), true)
# nm on macosx prints out "warning: nm: no name list" to stderr for
# files without symbols. Hide this, even at the expense of hiding real errors.
DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
DUMP_SYMBOLS_CMD := $(NM) -Uj *$(OBJ_SUFFIX) 2> /dev/null
ifneq ($(FILTER_SYMBOLS_PATTERN), )
FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
endif
@@ -89,7 +89,7 @@ else ifeq ($(call isTargetOs, aix), true)
# which may be installed under /opt/freeware/bin. So better use an absolute path here!
# NM=/usr/bin/nm
DUMP_SYMBOLS_CMD := $(NM) -X64 -B -C *.o
DUMP_SYMBOLS_CMD := $(NM) -X64 -B -C *$(OBJ_SUFFIX)
FILTER_SYMBOLS_AWK_SCRIPT := \
'{ \
if (($$2="d" || $$2="D") && ($$3 ~ /^__vft/ || $$3 ~ /^gHotSpotVM/)) print $$3; \
@@ -98,7 +98,7 @@ else ifeq ($(call isTargetOs, aix), true)
}'
else ifeq ($(call isTargetOs, windows), true)
DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *.obj
DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *$(OBJ_SUFFIX)
# The following lines create a list of vftable symbols to be filtered out of
# the mapfile. Removing this line causes the linker to complain about too many

View File

@@ -5,7 +5,7 @@
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="\d{7}" />
<option name="linkRegexp" value="https://bugs.openjdk.java.net/browse/JDK-$0" />
<option name="linkRegexp" value="https://bugs.openjdk.org/browse/JDK-$0" />
</IssueNavigationLink>
</list>
</option>

View File

@@ -33,7 +33,6 @@ import java.util.Formatter;
import java.util.HashSet;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Locale;
import java.util.Objects;
@@ -70,7 +69,6 @@ class ResourceBundleGenerator implements BundleGenerator {
private static final String META_VALUE_PREFIX = "metaValue_";
@Override
@SuppressWarnings("unchecked")
public void generateBundle(String packageName, String baseName, String localeID, boolean useJava,
Map<String, ?> map, BundleType type) throws IOException {
String suffix = useJava ? ".java" : ".properties";
@@ -144,56 +142,34 @@ class ResourceBundleGenerator implements BundleGenerator {
map = newMap;
} else {
// generic reduction of duplicated values
Map<String, Object> newMap = null;
for (String key : map.keySet()) {
Object val = map.get(key);
String metaVal = null;
for (Map.Entry<String, ?> entry : map.entrySet()) {
String k = entry.getKey();
if (!k.equals(key) &&
Objects.deepEquals(val, entry.getValue()) &&
!(Objects.nonNull(newMap) && newMap.containsKey(k))) {
if (Objects.isNull(newMap)) {
newMap = new HashMap<>();
Map<String, Object> newMap = new LinkedHashMap<>(map);
Map<BundleEntryValue, BundleEntryValue> dedup = new HashMap<>(map.size());
for (Map.Entry<String, ?> entry : map.entrySet()) {
String key = entry.getKey();
Object val = entry.getValue();
BundleEntryValue newEntry = new BundleEntryValue(key, val);
BundleEntryValue oldEntry = dedup.putIfAbsent(newEntry, newEntry);
if (oldEntry != null) {
if (oldEntry.meta()) {
if (fmt == null) {
fmt = new Formatter();
}
if (Objects.isNull(metaVal)) {
metaVal = META_VALUE_PREFIX + key.replaceAll("[\\.-]", "_");
if (val instanceof String[]) {
fmt.format(" final String[] %s = new String[] {\n", metaVal);
for (String s : (String[]) val) {
fmt.format(" \"%s\",\n", CLDRConverter.saveConvert(s, useJava));
}
fmt.format(" };\n");
} else if (val instanceof List) {
fmt.format(" final String[] %s = new String[] {\n", metaVal);
for (String s : (List<String>) val) {
fmt.format(" \"%s\",\n", CLDRConverter.saveConvert(s, useJava));
}
fmt.format(" };\n");
} else {
fmt.format(" final String %s = \"%s\";\n", metaVal, CLDRConverter.saveConvert((String)val, useJava));
String metaVal = oldEntry.metaKey();
if (val instanceof String[] values) {
fmt.format(" final String[] %s = new String[] {\n", metaVal);
for (String s : values) {
fmt.format(" \"%s\",\n", CLDRConverter.saveConvert(s, useJava));
}
fmt.format(" };\n");
} else {
fmt.format(" final String %s = \"%s\";\n", metaVal, CLDRConverter.saveConvert((String)val, useJava));
}
newMap.put(k, metaVal);
newMap.put(oldEntry.key, oldEntry.metaKey());
}
}
if (Objects.nonNull(metaVal)) {
newMap.put(key, metaVal);
newMap.put(key, oldEntry.metaKey());
}
}
if (Objects.nonNull(newMap)) {
for (String key : map.keySet()) {
newMap.putIfAbsent(key, map.get(key));
}
map = newMap;
}
map = newMap;
}
try (PrintWriter out = new PrintWriter(file, encoding)) {
@@ -247,6 +223,58 @@ class ResourceBundleGenerator implements BundleGenerator {
}
}
private static class BundleEntryValue {
private final String key;
private final Object value;
private final int hashCode;
private String metaKey;
BundleEntryValue(String key, Object value) {
this.key = Objects.requireNonNull(key);
this.value = Objects.requireNonNull(value);
if (value instanceof String) {
hashCode = value.hashCode();
} else if (value instanceof String[] arr) {
hashCode = Arrays.hashCode(arr);
} else {
throw new InternalError("Expected a string or a string array");
}
}
/**
* mark the entry as meta
* @return true if the entry was not meta before, false otherwise
*/
public boolean meta() {
if (metaKey == null) {
metaKey = META_VALUE_PREFIX + key.replaceAll("[\\.-]", "_");
return true;
}
return false;
}
public String metaKey() {
return metaKey;
}
@Override
public int hashCode() {
return hashCode;
}
@Override
public boolean equals(Object obj) {
if (obj instanceof BundleEntryValue entry) {
if (value instanceof String s) {
return s.equals(entry.value);
} else if (entry.value instanceof String[] otherVal) {
return Arrays.equals((String[]) value, otherVal);
}
}
return false;
}
}
@Override
public void generateMetaInfo(Map<String, SortedSet<String>> metaInfo) throws IOException {
String dirName = CLDRConverter.DESTINATION_DIR + File.separator + "sun" + File.separator + "util" +

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017, 2022, 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
@@ -24,6 +24,17 @@
*/
package build.tools.depend;
import com.sun.source.tree.ClassTree;
import com.sun.source.tree.CompilationUnitTree;
import com.sun.source.tree.IdentifierTree;
import com.sun.source.tree.ImportTree;
import com.sun.source.tree.LiteralTree;
import com.sun.source.tree.MemberReferenceTree;
import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.MethodTree;
import com.sun.source.tree.ModifiersTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -86,8 +97,37 @@ import com.sun.source.util.TaskEvent;
import com.sun.source.util.TaskEvent.Kind;
import com.sun.source.util.TaskListener;
import com.sun.source.util.TreePath;
import com.sun.source.util.TreeScanner;
import com.sun.source.util.Trees;
import com.sun.tools.javac.api.BasicJavacTask;
import com.sun.tools.javac.code.Flags;
import com.sun.tools.javac.main.JavaCompiler;
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
import com.sun.tools.javac.util.Context;
import com.sun.tools.javac.util.Context.Key;
import com.sun.tools.javac.util.ListBuffer;
import com.sun.tools.javac.util.Options;
import com.sun.tools.javac.util.StringUtils;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.IdentityHashMap;
import java.util.LinkedHashMap;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.StreamSupport;
import javax.lang.model.element.ElementKind;
import javax.lang.model.element.Name;
import javax.tools.ForwardingJavaFileManager;
import javax.tools.JavaFileManager;
import javax.tools.StandardLocation;
import javax.tools.ToolProvider;
public class Depend implements Plugin {
@@ -98,6 +138,45 @@ public class Depend implements Plugin {
@Override
public void init(JavacTask jt, String... args) {
addExports();
AtomicBoolean noApiChange = new AtomicBoolean();
try {
Context context = ((BasicJavacTask) jt).getContext();
Options options = Options.instance(context);
String modifiedInputs = options.get("modifiedInputs");
if (modifiedInputs == null) {
throw new IllegalStateException("Expected modifiedInputs to be set using -XDmodifiedInputs=<list-of-files>");
}
String logLevel = options.get("LOG_LEVEL");
boolean debug = "trace".equals(logLevel) || "debug".equals(logLevel);
String internalAPIPath = options.get("internalAPIPath");
if (internalAPIPath == null) {
throw new IllegalStateException("Expected internalAPIPath to be set using -XDinternalAPIPath=<internal-API-path>");
}
Set<Path> modified = Files.readAllLines(Paths.get(modifiedInputs)).stream()
.map(Paths::get)
.collect(Collectors.toSet());
Path internalAPIDigestFile = Paths.get(internalAPIPath);
JavaCompiler compiler = JavaCompiler.instance(context);
Class<?> initialFileParserIntf = Class.forName("com.sun.tools.javac.main.JavaCompiler$InitialFileParserIntf");
Class<?> initialFileParser = Class.forName("com.sun.tools.javac.main.JavaCompiler$InitialFileParser");
Field initialParserKeyField = initialFileParser.getDeclaredField("initialParserKey");
@SuppressWarnings("unchecked")
Key<Object> key = (Key<Object>) initialParserKeyField.get(null);
Object initialParserInstance =
Proxy.newProxyInstance(Depend.class.getClassLoader(),
new Class<?>[] {initialFileParserIntf},
new FilteredInitialFileParser(compiler,
modified,
internalAPIDigestFile,
noApiChange,
debug));
context.<Object>put(key, initialParserInstance);
} catch (Exception ex) {
throw new IllegalStateException(ex);
}
jt.addTaskListener(new TaskListener() {
private final Map<ModuleElement, Set<PackageElement>> apiPackages = new HashMap<>();
private final MessageDigest apiHash;
@@ -134,7 +213,7 @@ public class Depend implements Plugin {
}
}
}
if (te.getKind() == Kind.COMPILATION) {
if (te.getKind() == Kind.COMPILATION && !noApiChange.get()) {
String previousSignature = null;
File digestFile = new File(args[0]);
try (InputStream in = new FileInputStream(digestFile)) {
@@ -156,6 +235,116 @@ public class Depend implements Plugin {
});
}
private void addExports() {
var systemCompiler = ToolProvider.getSystemJavaCompiler();
try (JavaFileManager jfm = systemCompiler.getStandardFileManager(null, null, null)) {
JavaFileManager fm = new ForwardingJavaFileManager<JavaFileManager>(jfm) {
@Override
public ClassLoader getClassLoader(JavaFileManager.Location location) {
if (location == StandardLocation.CLASS_PATH) {
return Depend.class.getClassLoader();
}
return super.getClassLoader(location);
}
};
((JavacTask) systemCompiler.getTask(null, fm, null,
List.of("-proc:only", "-XDaccessInternalAPI=true"),
List.of("java.lang.Object"), null))
.analyze();
} catch (IOException ex) {
throw new IllegalStateException(ex);
}
}
private com.sun.tools.javac.util.List<JCCompilationUnit> doFilteredParse(
JavaCompiler compiler, Iterable<JavaFileObject> fileObjects, Set<Path> modified,
Path internalAPIDigestFile, AtomicBoolean noApiChange,
boolean debug) {
Map<String, String> internalAPI = new LinkedHashMap<>();
if (Files.isReadable(internalAPIDigestFile)) {
try {
Files.readAllLines(internalAPIDigestFile, StandardCharsets.UTF_8)
.forEach(line -> {
String[] keyAndValue = line.split("=");
internalAPI.put(keyAndValue[0], keyAndValue[1]);
});
} catch (IOException ex) {
throw new IllegalStateException(ex);
}
}
Map<JavaFileObject, JCCompilationUnit> files2CUT = new IdentityHashMap<>();
boolean fullRecompile = modified.stream()
.map(Path::toString)
.anyMatch(f -> !StringUtils.toLowerCase(f).endsWith(".java"));
ListBuffer<JCCompilationUnit> result = new ListBuffer<>();
for (JavaFileObject jfo : fileObjects) {
if (modified.contains(Path.of(jfo.getName()))) {
JCCompilationUnit parsed = compiler.parse(jfo);
files2CUT.put(jfo, parsed);
String currentSignature = treeDigest(parsed);
if (!currentSignature.equals(internalAPI.get(jfo.getName()))) {
fullRecompile |= true;
internalAPI.put(jfo.getName(), currentSignature);
}
result.add(parsed);
}
}
if (fullRecompile) {
for (JavaFileObject jfo : fileObjects) {
if (!modified.contains(Path.of(jfo.getName()))) {
JCCompilationUnit parsed = files2CUT.get(jfo);
if (parsed == null) {
parsed = compiler.parse(jfo);
internalAPI.put(jfo.getName(), treeDigest(parsed));
}
result.add(parsed);
}
}
try (OutputStream out = Files.newOutputStream(internalAPIDigestFile)) {
String hashes = internalAPI.entrySet()
.stream()
.map(e -> e.getKey() + "=" + e.getValue())
.collect(Collectors.joining("\n"));
out.write(hashes.getBytes(StandardCharsets.UTF_8));
} catch (IOException ex) {
throw new IllegalStateException(ex);
}
} else {
noApiChange.set(true);
}
if (debug) {
long allJavaInputs = StreamSupport.stream(fileObjects.spliterator(), false).count();
String module = StreamSupport.stream(fileObjects.spliterator(), false)
.map(fo -> fo.toUri().toString())
.filter(path -> path.contains("/share/classes/"))
.map(path -> path.substring(0, path.indexOf("/share/classes/")))
.map(path -> path.substring(path.lastIndexOf("/") + 1))
.findAny()
.orElseGet(() -> "unknown");
String nonJavaModifiedFiles = modified.stream()
.map(Path::toString)
.filter(f -> !StringUtils.toLowerCase(f)
.endsWith(".java"))
.collect(Collectors.joining(", "));
System.err.println("compiling module: " + module +
", all Java inputs: " + allJavaInputs +
", modified files (Java or non-Java): " + modified.size() +
", full recompile: " + fullRecompile +
", non-Java modified files: " + nonJavaModifiedFiles);
}
return result.toList();
}
private String treeDigest(JCCompilationUnit cu) {
try {
TreeVisitor v = new TreeVisitor(MessageDigest.getInstance("MD5"));
v.scan(cu, null);
return Depend.this.toString(v.apiHash.digest());
} catch (NoSuchAlgorithmException ex) {
throw new IllegalStateException(ex);
}
}
private String toString(byte[] digest) {
return HexFormat.of().withUpperCase().formatHex(digest);
}
@@ -537,4 +726,192 @@ public class Depend implements Plugin {
}
}
private static final class TreeVisitor extends TreeScanner<Void, Void> {
private final Set<Name> seenIdentifiers = new HashSet<>();
private final MessageDigest apiHash;
private final Charset utf8;
public TreeVisitor(MessageDigest apiHash) {
this.apiHash = apiHash;
utf8 = Charset.forName("UTF-8");
}
private void update(CharSequence data) {
apiHash.update(data.toString().getBytes(utf8));
}
@Override
public Void scan(Tree tree, Void p) {
update("(");
if (tree != null) {
update(tree.getKind().name());
};
super.scan(tree, p);
update(")");
return null;
}
@Override
public Void visitCompilationUnit(CompilationUnitTree node, Void p) {
seenIdentifiers.clear();
scan(node.getPackage(), p);
scan(node.getTypeDecls(), p);
scan(((JCCompilationUnit) node).getModuleDecl(), p);
List<ImportTree> importantImports = new ArrayList<>();
for (ImportTree imp : node.getImports()) {
Tree t = imp.getQualifiedIdentifier();
if (t.getKind() == Tree.Kind.MEMBER_SELECT) {
Name member = ((MemberSelectTree) t).getIdentifier();
if (member.contentEquals("*") || seenIdentifiers.contains(member)) {
importantImports.add(imp);
}
} else {
//should not happen, possibly erroneous source?
importantImports.add(imp);
}
}
importantImports.sort((imp1, imp2) -> {
if (imp1.isStatic() ^ imp2.isStatic()) {
return imp1.isStatic() ? -1 : 1;
} else {
return imp1.getQualifiedIdentifier().toString().compareTo(imp2.getQualifiedIdentifier().toString());
}
});
scan(importantImports, p);
return null;
}
@Override
public Void visitIdentifier(IdentifierTree node, Void p) {
update(node.getName());
seenIdentifiers.add(node.getName());
return super.visitIdentifier(node, p);
}
@Override
public Void visitMemberSelect(MemberSelectTree node, Void p) {
update(node.getIdentifier());
return super.visitMemberSelect(node, p);
}
@Override
public Void visitMemberReference(MemberReferenceTree node, Void p) {
update(node.getName());
return super.visitMemberReference(node, p);
}
@Override
public Void scan(Iterable<? extends Tree> nodes, Void p) {
update("(");
super.scan(nodes, p);
update(")");
return null;
}
@Override
public Void visitClass(ClassTree node, Void p) {
update(node.getSimpleName());
scan(node.getModifiers(), p);
scan(node.getTypeParameters(), p);
scan(node.getExtendsClause(), p);
scan(node.getImplementsClause(), p);
scan(node.getMembers()
.stream()
.filter(this::importantMember)
.collect(Collectors.toList()),
p);
return null;
}
private boolean importantMember(Tree m) {
return switch (m.getKind()) {
case ANNOTATION_TYPE, CLASS, ENUM, INTERFACE, RECORD ->
!isPrivate(((ClassTree) m).getModifiers());
case METHOD ->
!isPrivate(((MethodTree) m).getModifiers());
case VARIABLE ->
!isPrivate(((VariableTree) m).getModifiers()) ||
isRecordComponent((VariableTree) m);
case BLOCK -> false;
default -> throw new IllegalStateException("Unexpected tree kind: " + m.getKind());
};
}
private boolean isPrivate(ModifiersTree mt) {
return mt.getFlags().contains(Modifier.PRIVATE);
}
private boolean isRecordComponent(VariableTree vt) {
return (((JCVariableDecl) vt).mods.flags & Flags.RECORD) != 0;
}
@Override
public Void visitVariable(VariableTree node, Void p) {
update(node.getName());
return super.visitVariable(node, p);
}
@Override
public Void visitMethod(MethodTree node, Void p) {
update(node.getName());
scan(node.getModifiers(), p);
scan(node.getReturnType(), p);
scan(node.getTypeParameters(), p);
scan(node.getParameters(), p);
scan(node.getReceiverParameter(), p);
scan(node.getThrows(), p);
scan(node.getDefaultValue(), p);
return null;
}
@Override
public Void visitLiteral(LiteralTree node, Void p) {
update(String.valueOf(node.getValue()));
return super.visitLiteral(node, p);
}
@Override
public Void visitModifiers(ModifiersTree node, Void p) {
update(node.getFlags().toString());
return super.visitModifiers(node, p);
}
}
private class FilteredInitialFileParser implements InvocationHandler {
private final JavaCompiler compiler;
private final Set<Path> modified;
private final Path internalAPIDigestFile;
private final AtomicBoolean noApiChange;
private final boolean debug;
public FilteredInitialFileParser(JavaCompiler compiler,
Set<Path> modified,
Path internalAPIDigestFile,
AtomicBoolean noApiChange,
boolean debug) {
this.compiler = compiler;
this.modified = modified;
this.internalAPIDigestFile = internalAPIDigestFile;
this.noApiChange = noApiChange;
this.debug = debug;
}
@Override
@SuppressWarnings("unchecked")
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
return switch (method.getName()) {
case "parse" -> doFilteredParse(compiler,
(Iterable<JavaFileObject>) args[0],
modified,
internalAPIDigestFile,
noApiChange,
debug);
default -> throw new UnsupportedOperationException();
};
}
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017, 2022, 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
@@ -52,6 +52,8 @@ public class DependTest {
test.testModules();
test.testAnnotations();
test.testRecords();
test.testImports();
test.testModifiers();
}
public void testMethods() throws Exception {
@@ -145,7 +147,8 @@ public class DependTest {
"@SuppressWarnings(\"any\")\n" +
"public class Test {\n" +
"}",
false);
false,
true); //Tree hash does not tolerate undocumented annotations
doOrdinaryTest("package test;" +
"public class Test {\n" +
"}",
@@ -156,6 +159,83 @@ public class DependTest {
true);
}
public void testImports() throws Exception {
doOrdinaryTest("package test;" +
"public class Test {\n" +
"}",
"package test;" +
"import java.util.List;\n" +
"public class Test {\n" +
" private List l;\n" +
"}",
false);
doOrdinaryTest("package test;" +
"public class Test {\n" +
"}",
"package test;" +
"import java.util.List;\n" +
"public class Test {\n" +
" public List l;\n" +
"}",
true);
doOrdinaryTest("package test;" +
"public class Test {\n" +
"}",
"package test;" +
"import java.util.List;\n" +
"public class Test {\n" +
" List l;\n" +
"}",
false,
true);
doOrdinaryTest("package test;" +
"import java.util.*;\n" +
"public abstract class Test implements List {\n" +
"}\n" +
"class H {\n" +
" public interface List {}\n" +
"}",
"package test;" +
"import java.util.*;\n" +
"import test.H.List;\n" +
"public abstract class Test implements List {\n" +
"}\n" +
"class H {\n" +
" public interface List {}\n" +
"}",
true);
doOrdinaryTest("package test;" +
"public class Test {\n" +
"}",
"package test;" +
"import java.util.*;\n" +
"public class Test {\n" +
"}",
false,
true);
doOrdinaryTest("package test;" +
"import java.util.*;\n" +
"public class Test {\n" +
"}",
"package test;" +
"public class Test {\n" +
"}",
false,
true);
}
public void testModifiers() throws Exception {
doOrdinaryTest("package test;" +
"public class Test {\n" +
" String l;\n" +
"}",
"package test;" +
"public class Test {\n" +
" public String l;\n" +
"}",
true);
}
public void testModules() throws Exception {
doModuleTest("module m { }",
"module m { requires java.compiler; }",
@@ -199,11 +279,13 @@ public class DependTest {
doOrdinaryTest("package test; public record Test (int x, int y) { }",
"package test; public record Test (int x, int y) {" +
"public Test { } }", // compact ctr
false);
false,
true);
doOrdinaryTest("package test; public record Test (int x, int y) { }",
"package test; public record Test (int x, int y) {" +
"public Test (int x, int y) { this.x=x; this.y=y;} }", // canonical ctr
false);
false,
true);
doOrdinaryTest("package test; public record Test (int x, int y) { }",
"package test; public record Test (int y, int x) { }", // reverse
true);
@@ -227,6 +309,7 @@ public class DependTest {
private Path scratchServices;
private Path scratchClasses;
private Path apiHash;
private Path treeHash;
private void setupClass() throws IOException {
depend = Paths.get(Depend.class.getProtectionDomain().getCodeSource().getLocation().getPath());
@@ -244,34 +327,53 @@ public class DependTest {
Files.createDirectories(scratchClasses);
apiHash = scratch.resolve("api");
treeHash = scratch.resolve("tree");
}
private void doOrdinaryTest(String codeBefore, String codeAfter, boolean hashChangeExpected) throws Exception {
doOrdinaryTest(codeBefore, codeAfter, hashChangeExpected, hashChangeExpected);
}
private void doOrdinaryTest(String codeBefore, String codeAfter, boolean apiHashChangeExpected, boolean treeHashChangeExpected) throws Exception {
List<String> options =
Arrays.asList("-d", scratchClasses.toString(),
"-processorpath", depend.toString() + File.pathSeparator + scratchServices.toString(),
"-Xplugin:depend " + apiHash.toString());
"-Xplugin:depend " + apiHash.toString() + " " + treeHash.toString(),
"-XDmodifiedInputs=build-all");
List<TestJavaFileObject> beforeFiles =
Arrays.asList(new TestJavaFileObject("module-info", "module m { exports test; }"),
new TestJavaFileObject("test.Test", codeBefore));
compiler.getTask(null, null, null, options, null, beforeFiles).call();
byte[] originalHash = Files.readAllBytes(apiHash);
byte[] originalApiHash = Files.readAllBytes(apiHash);
byte[] originalTreeHash = Files.readAllBytes(treeHash);
List<TestJavaFileObject> afterFiles =
Arrays.asList(new TestJavaFileObject("module-info", "module m { exports test; }"),
new TestJavaFileObject("test.Test", codeAfter));
compiler.getTask(null, null, null, options, null, afterFiles).call();
byte[] newHash = Files.readAllBytes(apiHash);
byte[] newApiHash = Files.readAllBytes(apiHash);
byte[] newTreeHash = Files.readAllBytes(treeHash);
if (Arrays.equals(originalHash, newHash) ^ !hashChangeExpected) {
throw new AssertionError("Unexpected hash state.");
if (Arrays.equals(originalApiHash, newApiHash) ^ !apiHashChangeExpected) {
throw new AssertionError("Unexpected API hash state.");
}
if (Arrays.equals(originalTreeHash, newTreeHash) ^ !treeHashChangeExpected) {
throw new AssertionError("Unexpected Tree hash state, " +
"original: " + new String(originalTreeHash) +
", new: " + new String(newTreeHash));
}
}
private void doModuleTest(String codeBefore, String codeAfter, boolean hashChangeExpected) throws Exception {
doModuleTest(codeBefore, codeAfter, hashChangeExpected, hashChangeExpected);
}
private void doModuleTest(String codeBefore, String codeAfter, boolean apiHashChangeExpected, boolean treeHashChangeExpected) throws Exception {
List<String> options =
Arrays.asList("-d", scratchClasses.toString(),
"-processorpath", depend.toString() + File.pathSeparator + scratchServices.toString(),
"-Xplugin:depend " + apiHash.toString());
"-Xplugin:depend " + apiHash.toString() + " " + treeHash.toString(),
"-XDmodifiedInputs=build-all");
List<TestJavaFileObject> beforeFiles =
Arrays.asList(new TestJavaFileObject("module-info", codeBefore),
new TestJavaFileObject("test.Test1", "package test; public interface Test1 {}"),
@@ -279,7 +381,8 @@ public class DependTest {
new TestJavaFileObject("test.TestImpl1", "package test; public class TestImpl1 implements Test1, Test2 {}"),
new TestJavaFileObject("test.TestImpl2", "package test; public class TestImpl2 implements Test1, Test2 {}"));
compiler.getTask(null, null, null, options, null, beforeFiles).call();
byte[] originalHash = Files.readAllBytes(apiHash);
byte[] originalApiHash = Files.readAllBytes(apiHash);
byte[] originalTreeHash = Files.readAllBytes(treeHash);
List<TestJavaFileObject> afterFiles =
Arrays.asList(new TestJavaFileObject("module-info", codeAfter),
new TestJavaFileObject("test.Test1", "package test; public interface Test1 {}"),
@@ -287,10 +390,17 @@ public class DependTest {
new TestJavaFileObject("test.TestImpl1", "package test; public class TestImpl1 implements Test1, Test2 {}"),
new TestJavaFileObject("test.TestImpl2", "package test; public class TestImpl2 implements Test1, Test2 {}"));
compiler.getTask(null, null, null, options, null, afterFiles).call();
byte[] newHash = Files.readAllBytes(apiHash);
byte[] newApiHash = Files.readAllBytes(apiHash);
byte[] newTreeHash = Files.readAllBytes(treeHash);
if (Arrays.equals(originalHash, newHash) ^ !hashChangeExpected) {
throw new AssertionError("Unexpected hash state.");
if (Arrays.equals(originalApiHash, newApiHash) ^ !apiHashChangeExpected) {
throw new AssertionError("Unexpected API hash state.");
}
if (Arrays.equals(originalTreeHash, newTreeHash) ^ !treeHashChangeExpected) {
throw new AssertionError("Unexpected Tree hash state, " +
"original: " + new String(originalTreeHash) +
", new: " + new String(newTreeHash));
}
}

View File

@@ -30,18 +30,9 @@ import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.BufferedInputStream;
import java.io.OutputStream;
import java.util.Hashtable;
import java.util.Vector;
import java.util.BitSet;
import java.util.StringTokenizer;
import java.util.Enumeration;
import java.util.Properties;
import java.util.zip.DeflaterOutputStream;
import java.util.zip.Deflater;
import java.net.URL;
/**
* The representation of an SGML DTD. This is produced by the DTDParser.
@@ -58,8 +49,7 @@ import java.net.URL;
* @author Arthur van Hoff
* @author Guy Abossolo Foh
*/
public
class DTDBuilder extends DTD {
public class DTDBuilder extends DTD {
static PublicMapping mapping = null;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2022, 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
@@ -919,8 +919,6 @@ class DTDParser implements DTDConstants {
} catch (Exception e) {
error("exception", e.getClass().getName(), e.getMessage());
e.printStackTrace();
} catch (ThreadDeath e) {
error("terminated");
}
return (nerrors > 0) ? null : dtd;
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2022, 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
@@ -94,25 +94,20 @@ public class GenerateBreakIteratorData {
rules = (ResourceBundle) Class.forName(
localizedBundleName("sun.text.resources", "BreakIteratorRules")).getDeclaredConstructor().newInstance();
if (info.containsKey("CharacterData")) {
generateDataFile(info.getString("CharacterData"),
rules.getString("CharacterBreakRules"),
classNames[0]);
}
if (info.containsKey("WordData")) {
generateDataFile(info.getString("WordData"),
rules.getString("WordBreakRules"),
classNames[1]);
classNames[0]);
}
if (info.containsKey("LineData")) {
generateDataFile(info.getString("LineData"),
rules.getString("LineBreakRules"),
classNames[2]);
classNames[1]);
}
if (info.containsKey("SentenceData")) {
generateDataFile(info.getString("SentenceData"),
rules.getString("SentenceBreakRules"),
classNames[3]);
classNames[2]);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017, 2022, 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
@@ -56,7 +56,7 @@ public class Incubating implements Taglet {
}
private static final String MESSAGE =
"<BR><b><a href=\"http://openjdk.java.net/jeps/11\">Incubating Feature.</a>"
"<BR><b><a href=\"https://openjdk.org/jeps/11\">Incubating Feature.</a>"
+ " Will be removed in a future release.</b>";
@Override

View File

@@ -79,7 +79,7 @@ ifeq ($(call isTargetOs, macosx aix linux), true)
SRC := $(TOPDIR)/src/$(MODULE)/unix/native/jspawnhelper, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKEXE) -I$(TOPDIR)/src/$(MODULE)/unix/native/libjava, \
EXTRA_OBJECT_FILES := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjava/childproc.o, \
EXTRA_OBJECT_FILES := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjava/childproc$(OBJ_SUFFIX), \
LDFLAGS := $(LDFLAGS_JDKEXE), \
OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/modules_libs/$(MODULE), \
))

View File

@@ -43,10 +43,13 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBNET, \
NAME := net, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKLIB), \
DISABLED_WARNINGS_gcc := format-nonliteral unused-function, \
DISABLED_WARNINGS_clang := parentheses-equality constant-logical-operand \
format-nonliteral undef, \
DISABLED_WARNINGS_microsoft := 4244 4047 4133 4996, \
DISABLED_WARNINGS_gcc_net_util_md.c := format-nonliteral, \
DISABLED_WARNINGS_gcc_NetworkInterface.c := unused-function, \
DISABLED_WARNINGS_clang_net_util_md.c := format-nonliteral, \
DISABLED_WARNINGS_microsoft_InetAddress.c := 4244, \
DISABLED_WARNINGS_microsoft_NetworkInterface.c := 4133, \
DISABLED_WARNINGS_microsoft_NetworkInterface_winXP.c := 4133, \
DISABLED_WARNINGS_microsoft_ResolverConfigurationImpl.c := 4996, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_windows := -delayload:secur32.dll -delayload:iphlpapi.dll, \
@@ -70,8 +73,6 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBNIO, \
OPTIMIZATION := HIGH, \
WARNINGS_AS_ERRORS_xlc := false, \
CFLAGS := $(CFLAGS_JDKLIB), \
DISABLED_WARNINGS_gcc := undef, \
DISABLED_WARNINGS_clang := undef, \
EXTRA_HEADER_DIRS := \
libnio/ch \
libnio/fs \
@@ -101,8 +102,7 @@ ifeq ($(call isTargetOs, macosx), true)
NAME := osxsecurity, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKLIB), \
DISABLED_WARNINGS_clang := deprecated-declarations \
missing-method-return-type, \
DISABLED_WARNINGS_clang_KeystoreImpl.m := deprecated-declarations, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
-L$(SUPPORT_OUTPUTDIR)/modules_libs/java.base \
$(call SET_SHARED_LIBRARY_ORIGIN), \
@@ -130,7 +130,6 @@ ifeq ($(call isTargetOsType, unix), true)
NAME := jsig, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBJSIG_CFLAGS), \
DISABLED_WARNINGS_gcc := undef, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LIBS_linux := $(LIBDL), \

View File

@@ -30,7 +30,7 @@ GENDATA_TZDB :=
#
TZDATA_DIR := $(MODULE_SRC)/share/data/tzdata
TZDATA_TZFILE := africa antarctica asia australasia europe northamerica southamerica backward etcetera gmt jdk11_backward
TZDATA_TZFILES := $(addprefix $(TZDATA_DIR)/,$(TZDATA_TZFILE))
TZDATA_TZFILES := $(wildcard $(TZDATA_DIR)/*)
GENDATA_TZDB_DAT := $(SUPPORT_OUTPUTDIR)/modules_libs/$(MODULE)/tzdb.dat

View File

@@ -24,12 +24,12 @@
#
#
# Rules to create $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/util/regex/EmojiData.java
# Rules to create $(SUPPORT_OUTPUTDIR)/gensrc/java.base/jdk/internal/util/regex/EmojiData.java
#
GENSRC_EMOJIDATA := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/java/util/regex/EmojiData.java
GENSRC_EMOJIDATA := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/jdk/internal/util/regex/EmojiData.java
EMOJIDATATEMP = $(MODULE_SRC)/share/classes/java/util/regex/EmojiData.java.template
EMOJIDATATEMP = $(MODULE_SRC)/share/classes/jdk/internal/util/regex/EmojiData.java.template
UNICODEDATA = $(MODULE_SRC)/share/data/unicodedata
$(GENSRC_EMOJIDATA): $(BUILD_TOOLS_JDK) $(EMOJIDATATEMP) $(UNICODEDATA)/emoji/emoji-data.txt

View File

@@ -48,9 +48,14 @@ $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
CFLAGS_windows_debug := -DLOGGING, \
CFLAGS_aix := -qfloat=nomaf, \
DISABLED_WARNINGS_gcc := sign-compare misleading-indentation array-bounds, \
DISABLED_WARNINGS_clang := sign-compare misleading-indentation, \
DISABLED_WARNINGS_microsoft := 4146 4244 4018, \
DISABLED_WARNINGS_gcc := sign-compare, \
DISABLED_WARNINGS_gcc_k_rem_pio2.c := maybe-uninitialized, \
DISABLED_WARNINGS_clang := sign-compare, \
DISABLED_WARNINGS_microsoft := 4146, \
DISABLED_WARNINGS_microsoft_e_exp.c := 4244, \
DISABLED_WARNINGS_microsoft_s_ceil.c := 4018, \
DISABLED_WARNINGS_microsoft_s_expm1.c := 4244, \
DISABLED_WARNINGS_microsoft_s_floor.c := 4018, \
ARFLAGS := $(ARFLAGS), \
OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
))
@@ -93,7 +98,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJAVA, \
jdk_util.c_CFLAGS := $(VERSION_CFLAGS), \
EXTRA_HEADER_DIRS := libfdlibm, \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_gcc := unused-result unused-function, \
DISABLED_WARNINGS_gcc_ProcessImpl_md.c := unused-result, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_macosx := -L$(SUPPORT_OUTPUTDIR)/native/$(MODULE)/, \
@@ -134,8 +139,8 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBZIP, \
CFLAGS := $(CFLAGS_JDKLIB) \
$(LIBZ_CFLAGS), \
CFLAGS_unix := $(BUILD_LIBZIP_MMAP) -UDEBUG, \
DISABLED_WARNINGS_gcc := unused-function implicit-fallthrough, \
DISABLED_WARNINGS_clang := format-nonliteral, \
DISABLED_WARNINGS_gcc_zip_util.c := unused-function, \
DISABLED_WARNINGS_clang_gzwrite.c := format-nonliteral, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LIBS_unix := -ljvm -ljava $(LIBZ_LIBS), \
@@ -172,8 +177,10 @@ ifeq ($(call isTargetOs, macosx), true)
endif
ifeq ($(call isTargetOs, windows), true)
# Supply the name of the C runtime lib.
LIBJLI_CFLAGS += -DMSVCR_DLL_NAME='"$(notdir $(MSVCR_DLL))"'
# Supply the name of the C runtime libs.
ifneq ($(MSVCR_DLL), )
LIBJLI_CFLAGS += -DMSVCR_DLL_NAME='"$(notdir $(MSVCR_DLL))"'
endif
ifneq ($(VCRUNTIME_1_DLL), )
LIBJLI_CFLAGS += -DVCRUNTIME_1_DLL_NAME='"$(notdir $(VCRUNTIME_1_DLL))"'
endif
@@ -203,8 +210,8 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJLI, \
EXTRA_FILES := $(LIBJLI_EXTRA_FILES), \
OPTIMIZATION := HIGH, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS), \
DISABLED_WARNINGS_gcc := unused-function implicit-fallthrough, \
DISABLED_WARNINGS_clang := sometimes-uninitialized format-nonliteral, \
DISABLED_WARNINGS_gcc := unused-function, \
DISABLED_WARNINGS_clang := format-nonliteral, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LIBS_unix := $(LIBZ_LIBS), \

View File

@@ -23,6 +23,7 @@
# questions.
#
DISABLED_WARNINGS_java += lossy-conversions
DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:java.*,javax.*'
COPY += .gif .png .wav .txt .xml .css .pf

View File

@@ -103,7 +103,6 @@ LIBAWT_EXTRA_HEADER_DIRS := \
libmlib_image \
include \
java.base:libjava \
java.base:include \
#
LIBAWT_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES $(X_CFLAGS)
@@ -191,7 +190,7 @@ ifeq ($(call isTargetOs, windows macosx), false)
common/font \
#
LIBAWT_XAWT_EXCLUDES := medialib debug
LIBAWT_XAWT_EXCLUDES := medialib debug wl vulkan
LIBAWT_XAWT_EXTRA_HEADER_DIRS := \
$(LIBAWT_DEFAULT_HEADER_DIRS) \
@@ -263,6 +262,97 @@ endif
################################################################################
ifeq ($(call isTargetOs, windows macosx), false)
ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBAWT_WLAWT_EXTRA_SRC := \
common/awt \
common/java2d \
common/font \
#
LIBAWT_WLAWT_EXCLUDES := medialib debug opengl x11
LIBAWT_WLAWT_EXCLUDE_FILES := common/awt/X11Color.c common/awt/awt_Font.c
# Substitute Vulkan with stubs if disabled.
ifeq ($(VULKAN_ENABLED), false)
LIBAWT_WLAWT_EXCLUDES += vulkan
LIBAWT_WLAWT_EXTRA_FILES += $(TOPDIR)/src/$(MODULE)/share/native/common/java2d/vulkan/VKStubs.c
endif
LIBAWT_WLAWT_EXTRA_HEADER_DIRS := \
$(LIBAWT_DEFAULT_HEADER_DIRS) \
libawt_wlawt/awt \
include \
common/awt/debug \
common/awt/systemscale \
common/font \
common/java2d/wl \
common/java2d/vulkan \
#
# Enable 'wakefield' extension for java.awt.Robot support
WAKEFIELD_ROBOT_CFLAGS=-DWAKEFIELD_ROBOT
LIBAWT_WLAWT_CFLAGS += -DWLAWT \
$(WAKEFIELD_ROBOT_CFLAGS) \
$(FONTCONFIG_CFLAGS) \
$(VULKAN_FLAGS) \
$(CUPS_CFLAGS)
LIBAWT_WLAWT_CXXFLAGS += $(VULKAN_FLAGS)
LIBAWT_WLAWT_LIBS := $(LIBM) -lawt $(WAYLAND_LIBS) $(LIBDL) -ljava -ljvm -lrt
ifeq ($(call isTargetOs, linux), true)
LIBAWT_WLAWT_LIBS += -lpthread
endif
ifeq ($(TOOLCHAIN_TYPE), gcc)
# Turn off all warnings for the following files since they contain warnings
# that cannot be turned of individually.
# redefining a macro
BUILD_LIBAWT_WLAWT_awt_Font.c_CFLAGS := -w
# initializing a declared 'extern'
BUILD_LIBAWT_WLAWT_debug_mem.c_CFLAGS := -w
endif
$(eval $(call SetupJdkLibrary, BUILD_LIBAWT_WLAWT, \
NAME := awt_wlawt, \
EXCLUDE_FILES := $(LIBAWT_WLAWT_EXCLUDE_FILES), \
EXTRA_FILES := $(LIBAWT_WLAWT_EXTRA_FILES), \
EXTRA_SRC := $(LIBAWT_WLAWT_EXTRA_SRC), \
EXTRA_HEADER_DIRS := $(LIBAWT_WLAWT_EXTRA_HEADER_DIRS), \
EXCLUDES := $(LIBAWT_WLAWT_EXCLUDES), \
OPTIMIZATION := LOW, \
TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_WLAWT_CFLAGS), \
CXXFLAGS := $(CXXFLAGS_JDKLIB) $(LIBAWT_WLAWT_CXXFLAGS), \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_C_gcc := type-limits pointer-to-int-cast \
unused-result maybe-uninitialized format \
format-security int-to-pointer-cast parentheses \
implicit-fallthrough undef unused-function, \
DISABLED_WARNINGS_CXX_gcc := undef, \
DISABLED_WARNINGS_clang := parentheses format undef \
logical-op-parentheses format-nonliteral int-conversion, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN) \
-L$(INSTALL_LIBRARIES_HERE), \
LIBS := $(LIBAWT_WLAWT_LIBS), \
))
$(BUILD_LIBAWT_WLAWT): $(call FindLib, java.base, java)
$(BUILD_LIBAWT_WLAWT): $(BUILD_LIBAWT)
TARGETS += $(BUILD_LIBAWT_WLAWT)
endif
endif
################################################################################
# The fast floor code loses precision.
LCMS_CFLAGS=-DCMS_DONT_USE_FAST_FLOOR
@@ -361,7 +451,7 @@ ifeq ($(call isTargetOs, windows macosx), false)
$(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
#
LIBAWT_HEADLESS_EXCLUDES := medialib
LIBAWT_HEADLESS_EXCLUDES := medialib wl vulkan
LIBAWT_HEADLESS_EXTRA_HEADER_DIRS := \
$(LIBAWT_DEFAULT_HEADER_DIRS) \
@@ -493,13 +583,9 @@ ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
endif
ifeq ($(call isTargetOs, windows), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
X11TextRenderer.c
LIBFONTMANAGER_OPTIMIZATION := HIGHEST
else ifeq ($(call isTargetOs, macosx), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
X11TextRenderer.c \
fontpath.c \
LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \
lcdglyph.c
else
LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \
@@ -524,7 +610,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
EXTRA_HEADER_DIRS := $(LIBFONTMANAGER_EXTRA_HEADER_DIRS), \
EXTRA_SRC := $(LIBFONTMANAGER_EXTRA_SRC), \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_gcc := $(HARFBUZZ_DISABLED_WARNINGS_gcc), \
DISABLED_WARNINGS_gcc := $(HARFBUZZ_DISABLED_WARNINGS_gcc) unused-result, \
DISABLED_WARNINGS_CXX_gcc := $(HARFBUZZ_DISABLED_WARNINGS_CXX_gcc), \
DISABLED_WARNINGS_clang := $(HARFBUZZ_DISABLED_WARNINGS_clang), \
DISABLED_WARNINGS_microsoft := $(HARFBUZZ_DISABLED_WARNINGS_microsoft), \
@@ -554,6 +640,51 @@ TARGETS += $(BUILD_LIBFONTMANAGER)
################################################################################
ifeq ($(call isTargetOs, windows macosx), false)
ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBFONTMANAGER_XAWT_EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES)
LIBFONTMANAGER_XAWT_CFLAGS := $(LIBFONTMANAGER_CFLAGS)
LIBFONTMANAGER_XAWT_OPTIMIZATION := $(LIBFONTMANAGER_OPTIMIZATION)
LIBFONTMANAGER_XAWT_EXTRA_HEADER_DIRS := $(LIBFONTMANAGER_EXTRA_HEADER_DIRS) \
libfontmanager
LIBFONTMANAGER_XAWT_EXTRA_SRC :=
$(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER_XAWT, \
NAME := fontmanager_xawt, \
EXCLUDE_FILES := $(LIBFONTMANAGER_XAWT_EXCLUDE_FILES) \
AccelGlyphCache.c, \
TOOLCHAIN := TOOLCHAIN_LINK_CXX, \
CFLAGS := $(CFLAGS_JDKLIB) $(LIBFONTMANAGER_XAWT_CFLAGS), \
CXXFLAGS := $(CXXFLAGS_JDKLIB) $(LIBFONTMANAGER_XAWT_CFLAGS), \
OPTIMIZATION := $(LIBFONTMANAGER_XAWT_OPTIMIZATION), \
CFLAGS_windows = -DCC_NOEX, \
EXTRA_HEADER_DIRS := $(LIBFONTMANAGER_XAWT_EXTRA_HEADER_DIRS), \
EXTRA_SRC := $(LIBFONTMANAGER_XAWT_EXTRA_SRC), \
WARNINGS_AS_ERRORS_xlc := false, \
DISABLED_WARNINGS_gcc := $(HARFBUZZ_DISABLED_WARNINGS_gcc), \
DISABLED_WARNINGS_CXX_gcc := $(HARFBUZZ_DISABLED_WARNINGS_CXX_gcc), \
DISABLED_WARNINGS_clang := $(HARFBUZZ_DISABLED_WARNINGS_clang), \
DISABLED_WARNINGS_microsoft := $(HARFBUZZ_DISABLED_WARNINGS_microsoft), \
LDFLAGS := $(subst -Xlinker -z -Xlinker defs,, \
$(subst -Wl$(COMMA)-z$(COMMA)defs,,$(LDFLAGS_JDKLIB))) $(LDFLAGS_CXX_JDK) \
$(call SET_SHARED_LIBRARY_ORIGIN), \
LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
LDFLAGS_aix := -Wl$(COMMA)-berok, \
LIBS := $(BUILD_LIBFONTMANAGER_FONTLIB), \
LIBS_unix := -lfontmanager -lawt -ljava -ljvm $(LIBM) $(LIBCXX), \
))
$(BUILD_LIBFONTMANAGER_XAWT): $(BUILD_LIBFONTMANAGER)
$(BUILD_LIBFONTMANAGER_XAWT): $(BUILD_LIBAWT_XAWT)
TARGETS += $(BUILD_LIBFONTMANAGER_XAWT)
endif
endif
################################################################################
ifeq ($(call isTargetOs, windows), true)
LIBJAWT_CFLAGS := -EHsc -DUNICODE -D_UNICODE
@@ -565,7 +696,6 @@ ifeq ($(call isTargetOs, windows), true)
libawt/java2d \
libawt/java2d/windows \
libawt/windows \
java.base:include \
java.base:libjava \
#
@@ -732,7 +862,6 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBSPLASHSCREEN_HEADER_DIRS += \
libosxapp \
java.base:include \
java.base:libjava \
#

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2022, 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
@@ -40,6 +40,19 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBJ2GSS, \
TARGETS += $(BUILD_LIBJ2GSS)
ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBSSPI_BRIDGE, \
NAME := sspi_bridge, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKLIB) \
-I$(TOPDIR)/src/java.security.jgss/share/native/libj2gss, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN) \
))
TARGETS += $(BUILD_LIBSSPI_BRIDGE)
endif
################################################################################
ifneq ($(BUILD_CRYPTO), false)
@@ -57,17 +70,6 @@ ifneq ($(BUILD_CRYPTO), false)
))
TARGETS += $(BUILD_LIBW2K_LSA_AUTH)
$(eval $(call SetupJdkLibrary, BUILD_LIBSSPI_BRIDGE, \
NAME := sspi_bridge, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_JDKLIB) \
-I$(TOPDIR)/src/java.security.jgss/share/native/libj2gss, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
$(call SET_SHARED_LIBRARY_ORIGIN) \
))
TARGETS += $(BUILD_LIBSSPI_BRIDGE)
endif
ifeq ($(call isTargetOs, macosx), true)

View File

@@ -23,6 +23,7 @@
# questions.
#
DISABLED_WARNINGS_java += lossy-conversions
DOCLINT += -Xdoclint:all/protected \
'-Xdoclint/package:$(call CommaList, javax.xml.catalog javax.xml.datatype \
javax.xml.transform javax.xml.validation javax.xml.xpath)'

View File

@@ -45,7 +45,6 @@ ifeq ($(call isTargetOs, windows), true)
-DACCESSBRIDGE_ARCH_$2, \
EXTRA_HEADER_DIRS := \
include/bridge \
java.base:include \
java.desktop:include, \
LDFLAGS := $(LDFLAGS_JDKLIB), \
LIBS := kernel32.lib user32.lib gdi32.lib \
@@ -72,8 +71,7 @@ ifeq ($(call isTargetOs, windows), true)
CFLAGS := $(CFLAGS_JDKLIB) \
-DACCESSBRIDGE_ARCH_$2, \
EXTRA_HEADER_DIRS := \
include/bridge \
java.base:include, \
include/bridge, \
LDFLAGS := $(LDFLAGS_JDKLIB) \
-def:$(ACCESSIBILITY_SRCDIR)/libwindowsaccessbridge/WinAccessBridge.DEF, \
LIBS := kernel32.lib user32.lib gdi32.lib \

View File

@@ -29,16 +29,10 @@ include LibCommon.gmk
ifeq ($(call isTargetOs, windows), true)
CFLAGS_LIBDT_SHMEM := $(CFLAGS_JDKLIB)
ifneq ($(HOTSPOT_BUILD_TIME), )
CFLAGS_LIBDT_SHMEM += -DSHMEM_BUILD_TIME='"$(HOTSPOT_BUILD_TIME)"'
endif
$(eval $(call SetupJdkLibrary, BUILD_LIBDT_SHMEM, \
NAME := dt_shmem, \
OPTIMIZATION := LOW, \
CFLAGS := $(CFLAGS_LIBDT_SHMEM), \
CFLAGS := $(CFLAGS_JDKLIB), \
EXTRA_HEADER_DIRS := \
jdk.jdwp.agent:include \
jdk.jdwp.agent:libjdwp/export, \

View File

@@ -129,6 +129,10 @@ ifeq ($(call isTargetOs, windows), true)
JPACKAGE_TARGETS += $(BUILD_LIB_JPACKAGE)
JPACKAGE_WIXHELPER_SRC := \
$(call FindSrcDirsForComponent, jdk.jpackage, libwixhelper) \
$(call FindSrcDirsForComponent, jdk.jpackage, common)
# Build Wix custom action helper
# Output library in resources dir, and symbols in the object dir
$(eval $(call SetupJdkLibrary, BUILD_LIB_WIXHELPER, \
@@ -136,11 +140,12 @@ ifeq ($(call isTargetOs, windows), true)
OUTPUT_DIR := $(JPACKAGE_OUTPUT_DIR), \
SYMBOLS_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libwixhelper, \
OPTIMIZATION := LOW, \
SRC := $(JPACKAGE_WIXHELPER_SRC), \
CXXFLAGS := $(call JpackageWithStaticCrt, $(CXXFLAGS_JDKLIB)) \
$(JPACKAGE_CXXFLAGS_windows), \
$(addprefix -I, $(JPACKAGE_WIXHELPER_SRC)) $(JPACKAGE_CXXFLAGS_windows), \
LDFLAGS := $(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK), \
LIBS := $(LIBCXX), \
LIBS_windows := msi.lib Shlwapi.lib User32.lib, \
LIBS_windows := User32.lib, \
))
JPACKAGE_TARGETS += $(BUILD_LIB_WIXHELPER)

View File

@@ -42,6 +42,7 @@ if [ "$OPENJDK_TARGET_OS" = "macosx" ]; then
LDD_CMD="$OTOOL -L"
DIS_CMD="$OTOOL -v -V -t"
STAT_PRINT_SIZE="-f %z"
STRIP="$STRIP -no_code_signature_warning"
elif [ "$OPENJDK_TARGET_OS" = "windows" ]; then
FULLDUMP_CMD="$DUMPBIN -all"
LDD_CMD="$DUMPBIN -dependents"
@@ -674,14 +675,22 @@ compare_bin_file() {
ORIG_THIS_FILE="$THIS_FILE"
ORIG_OTHER_FILE="$OTHER_FILE"
if [ "$STRIP_ALL" = "true" ] || [[ "$STRIP_BEFORE_COMPARE" = *"$BIN_FILE"* ]]; then
if [ "$STRIP_ALL" = "true" ] || [[ "$STRIP_BEFORE_COMPARE" = *"$BIN_FILE"* ]] \
|| [ "$OPENJDK_TARGET_OS" = "macosx" ]; then
THIS_STRIPPED_FILE=$FILE_WORK_DIR/this/$NAME
OTHER_STRIPPED_FILE=$FILE_WORK_DIR/other/$NAME
$MKDIR -p $FILE_WORK_DIR/this $FILE_WORK_DIR/other
$CP $THIS_FILE $THIS_STRIPPED_FILE
$CP $OTHER_FILE $OTHER_STRIPPED_FILE
$STRIP $THIS_STRIPPED_FILE
$STRIP $OTHER_STRIPPED_FILE
if [ "$STRIP_ALL" = "true" ] || [[ "$STRIP_BEFORE_COMPARE" = *"$BIN_FILE"* ]]; then
$STRIP $THIS_STRIPPED_FILE
$STRIP $OTHER_STRIPPED_FILE
fi
# On macosx, always remove any signature before comparing
if [ "$OPENJDK_TARGET_OS" = "macosx" ]; then
$CODESIGN --remove-signature $THIS_STRIPPED_FILE
$CODESIGN --remove-signature $OTHER_STRIPPED_FILE
fi
THIS_FILE="$THIS_STRIPPED_FILE"
OTHER_FILE="$OTHER_STRIPPED_FILE"
fi

View File

@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2012, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2022, 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
@@ -36,7 +36,7 @@ fi
# Diff exceptions
if [ "$OPENJDK_TARGET_OS" = "linux" ]; then
if [ "$HOTSPOT_BUILD_TIME" = "" -o "$USE_PRECOMPILED_HEADER" = "true" ]; then
if [ "$USE_PRECOMPILED_HEADER" = "true" ]; then
ACCEPTED_BIN_DIFF="
./lib/server/libjvm.so
./hotspot/gtest/server/libjvm.so

View File

@@ -148,14 +148,13 @@ function import_path() {
if [[ "$path" != "" ]]; then
# Store current unix path
unixpath="$path"
# Now turn it into a windows path
winpath="$($PATHTOOL -w "$path" 2>/dev/null)"
# If it fails, try again with an added .exe (needed on WSL)
if [[ $? -ne 0 ]]; then
# If $unixpath does not exist, add .exe (needed on WSL)
if [[ ! -e "$unixpath" ]]; then
unixpath="$unixpath.exe"
winpath="$($PATHTOOL -w "$unixpath" 2>/dev/null)"
fi
if [[ $? -eq 0 ]]; then
# Now turn it into a windows path
winpath="$($PATHTOOL -w "$unixpath" 2>/dev/null)"
if [[ $? -eq 0 && -e "$unixpath" ]]; then
if [[ ! "$winpath" =~ ^"$ENVROOT"\\.*$ ]] ; then
# If it is not in envroot, it's a generic windows path
if [[ ! $winpath =~ ^[-_.:\\a-zA-Z0-9]*$ ]] ; then
@@ -353,6 +352,21 @@ function convert_path() {
fi
}
# Treat $1 as name of a file containing paths. Convert those paths to Windows style,
# and output them to the file specified by $2.
# If the output file already exists, it is overwritten.
function convert_file() {
infile="$1"
outfile="$2"
if [[ -e $outfile ]] ; then
rm $outfile
fi
while read line; do
convert_path "$line"
echo "$result" >> $outfile
done < $infile
}
# Treat $1 as name of a file containing paths. Convert those paths to Windows style,
# in a new temporary file, and return a string "@<temp file>" pointing to that
# new file.
@@ -499,6 +513,8 @@ if [[ "$ACTION" == "import" ]] ; then
elif [[ "$ACTION" == "print" ]] ; then
print_command_line "$@"
echo "$result"
elif [[ "$ACTION" == "convert" ]] ; then
convert_file "$@"
elif [[ "$ACTION" == "exec" ]] ; then
exec_command_line "$@"
# Propagate exit code

View File

@@ -38,7 +38,7 @@
# directory.
# - open a terminal program and run these commands:
# cd "${JDK_CHECKOUT}"/src/jdk.compiler/share/data/symbols
# bash ../../scripts/generate-symbol-data.sh "${JDK_N_INSTALL}"
# bash ../../../../../make/scripts/generate-symbol-data.sh "${JDK_N_INSTALL}"
# - this command will generate or update data for "--release N" into the ${JDK_CHECKOUT}/src/jdk.compiler/share/data/symbols
# directory, updating all registration necessary. If the goal was to update the data, and there are no
# new or changed files in the ${JDK_CHECKOUT}/src/jdk.compiler/share/data/symbols directory after running this script,
@@ -73,5 +73,5 @@ $1/bin/java --add-exports jdk.jdeps/com.sun.tools.classfile=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED \
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \
--add-modules jdk.jdeps \
../../../make/langtools/src/classes/build/tools/symbolgenerator/CreateSymbols.java \
../../../../../make/langtools/src/classes/build/tools/symbolgenerator/CreateSymbols.java \
build-description-incremental symbols include.list

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