Compare commits

...

637 Commits

Author SHA1 Message Date
Egor Ushakov
efca7647af fixed excludes after merge 2022-08-23 16:08:05 +02:00
Egor Ushakov
ae3b4fb15c Merge remote-tracking branch 'origin/jbr17' into jb-jdi-tests-openjdk
# Conflicts:
#	test/hotspot/jtreg/jbProblemList.txt
#	test/jdk/jbProblemList.txt
2022-08-23 15:36:54 +02:00
Yasumasa Suenaga
3b8a2c2a96 8289646: configure script failed on WSL
Reviewed-by: ihse
2022-08-23 10:50:43 +03:00
Maxim Kartashev
0fa5fab938 JBR API v1.0.0
JBR-4753 Added JBR API for custom desktop actions

JBR-3511 Way to customize implementation of java.awt.Desktop.browse()

Provided Desktop.setDesktopActionsHandler() and DesktopActionsHandler
interface, which methods will be invoked instead of the standard actions
provided that DesktopActionsHandler.isSupported() is true for the
corresponding action.
2022-08-23 10:50:43 +03:00
Nikita Gubarkov
056d5d6e6b JBR-4746 Added jetbrains.api.verifyBytecode VM option for generated bytecode verification 2022-08-23 10:40:24 +03:00
Nikita Gubarkov
030b686740 Added jetbrains.api.verbose system property for easier JBR API troubleshooting
Also fixed dependency scanning optimization by allowing search in known proxy interfaces outside com.jetbrains
2022-08-23 10:40:23 +03:00
Vitaly Provodin
bb525776f4 Update README.md 2022-08-22 15:31:24 +07:00
Maxim Kartashev
b3e080a26b JBR-3101 Exception in NSApplicationAWT: java.lang.NullPointerException at java.desktop/sun.lwawt.macosx.CPlatformComponent.setBounds
After CPlatformComponent.setBounds() was changed to allow for platformWindow.getPeer() == null, a few exceptions appeared that suggest platformWindow can also be null. This commit safeguards against this situation as well.

It seems that this can only be the case if the instance is created from outside of JDK, so Objects.requireNonNull() may help to catch the perpetrator.
2022-08-17 15:45:20 +03:00
Konstantin Bulenkov
f1cd491d10 IDEA-299292 Use Inter semibold instead of Inter bold 2022-08-16 00:45:09 +02:00
Alexey Ushakov
048a0a0f5c JBR-4718 SIGSEGV: [libobjc.A.dylib+0x641d] objc_msgSend / Java_sun_java2d_metal_MTLRenderQueue_flushBuffer
Align lifetime of MTLLayer and AWTView objc objects with MTLSDOps data attached to MTLSurfaceData
Added some more checks to commitCommandBuffer (in MTLContext)
2022-08-11 16:32:15 +02:00
Nikita Gubarkov
cf8740ad08 JBR-4466 fix mouse event coordinates for non-client events with custom window decorations 2022-08-10 14:35:00 +03:00
Dmitry Batrak
dc1b49b5a6 JBR-4720 Focus state is broken after certain operations when VoiceOver is enabled 2022-08-09 11:27:05 +03:00
Maxim Kartashev
cc78d0b872 JBR-4544 Enable OpenGL pipeline by default for Wayland sessions
The OpenGL pipeline is enabled only if all of the following is true:
- WAYLAND is detected,
- VMWare virtualization is detected,
- rendering pipeline is not a software one (llvmpipe).
As a side effect, a system property 'jbr.virtualization.information'
is set to the value of detected virtualization type. The value is the
same as provided by JFR.
2022-08-08 16:20:53 +03:00
Nikita Gubarkov
5a82f557ad JBR-4713 Change cp -rn to cp -r in bin/idea.sh 2022-08-05 16:03:43 +03:00
Nikita Gubarkov
30639cd55a Fix italic and bold styles for colored outline glyphs 2022-08-04 12:08:19 +03:00
Vitaly Provodin
2067181181 Update README.md 2022-08-03 04:08:19 +07:00
Vitaly Provodin
60f90078b7 Update README.md 2022-08-02 06:24:18 +07:00
Alexey Ushakov
6678e14181 JBR-4692 Metal: sync content of the destination drawing surface before changing it to another one
Conditionally sync surfaces using JVM option sun.java2d.metal.syncSurfaces
The default value is false
2022-08-01 22:00:58 +02:00
Nikita Gubarkov
88a58263ff JBR-4686 Fix rotated text metrics 2022-08-01 13:47:45 +03:00
Sergey Bylokhov serb
98a07f0df1 8284370: Improve zlib usage
Reviewed-by: andrew
Backport-of: 46f42c72a92ffb035e84eb8e73bd6329ef006251
2022-07-30 05:46:56 +07:00
Andrew John Hughes
5f3b133afb 8272243: Improve DER parsing
Backport-of: ec91d4bce10cd965e8a0099f35aed8c9150f6a44
2022-07-30 05:46:56 +07:00
Martin Balao
c648ccd547 8281866: Enhance MethodHandle invocations
Reviewed-by: mbaesken
Backport-of: d974d9da365f787f67971d88c79371c8b0769f75
2022-07-30 05:46:55 +07:00
Aleksei Voitylov
d9482099a9 8285407: Improve Xalan supports
Reviewed-by: mbalao
Backport-of: fd6385d8c20379c1139f64f5c90d331ad9631097
2022-07-30 05:46:55 +07:00
Aleksei Voitylov
7bda23a925 8283190: Improve MIDI processing
Reviewed-by: mbalao, mbaesken
Backport-of: e0329eb343661edd5066deb6ae5d99a742135831
2022-07-30 05:46:55 +07:00
Martin Balao
ffa2b4fd28 8281859: Improve class compilation
Reviewed-by: mbaesken
Backport-of: 3ac62a66efd05d0842076dd4cfbea0e53b12630f
2022-07-30 05:46:54 +07:00
Yuri Nesterenko
0c8d7e4d96 8272249: Better properties of loaded Properties
Reviewed-by: mbalao, mbaesken
Backport-of: f9f7e5eaf51cd4793805e50f8ba3549689d939e9
2022-07-30 05:46:54 +07:00
Aleksei Voitylov
040270882a 8277608: Address IP Addressing
Reviewed-by: mbalao
Backport-of: f2136e833d5bbeb9eb4e61e73774c36ff7d27cfb
2022-07-30 05:46:53 +07:00
Christoph Langer
9b133dea20 8286855: javac error on invalid jar should only print filename
Backport-of: 1606d5545b
2022-07-30 05:46:53 +07:00
Christoph Langer
0dab88ba34 8287162: (zipfs) Performance regression related to support for POSIX file permissions
Backport-of: a10c5597d9
2022-07-30 05:46:52 +07:00
Christoph Langer
ea68b428df 8286594: (zipfs) Mention paths with dot elements in ZipException and cleanups
Backport-of: 80cf9f3464
2022-07-30 05:46:52 +07:00
Christoph Langer
690d1594f5 8286444: javac errors after JDK-8251329 are not helpful enough to find root cause
Backport-of: 29c4b8e80d
2022-07-30 05:46:51 +07:00
Christoph Langer
f44f138ff5 8287378: GHA: Update cygwin to fix issues in langtools tests on Windows
Backport-of: f086d945c3
2022-07-30 05:46:51 +07:00
Andrew John Hughes
d12493ee17 8284094: Memory leak in invoker_completeInvokeRequest()
Backport-of: 1dfa1eaea0
2022-07-30 05:46:50 +07:00
Ichiroh Takiguchi
1d142fe2d3 8287362: FieldAccessWatch testcase failed on AIX platform
Backport-of: 66340372d5
2022-07-30 05:46:50 +07:00
Ichiroh Takiguchi
19925e2cf1 8282422: JTable.print() failed with UnsupportedCharsetException on AIX ko_KR locale
Backport-of: 6ea996c205
2022-07-30 05:46:49 +07:00
Christoph Langer
3611393e41 8287336: GHA: Workflows break on patch versions
Reviewed-by: andrew
Backport-of: e44465d4d6
2022-07-30 05:46:49 +07:00
Alexander Scherbatiy
8d0b9b0544 8285397: JNI exception pending in CUPSfuncs.c:250
Backport-of: a03438cb1b
2022-07-30 05:46:48 +07:00
Adam Farley
e702c1ee8c 8286601: Mac Aarch: Excessive warnings to be ignored for build jdk
Reviewed-by: andrew
Backport-of: 40f43c6b1f
2022-07-30 05:46:48 +07:00
Alexander Scherbatiy
31355fa74e 8181571: printing to CUPS fails on mac sandbox app
Backport-of: 3d4be14eba
2022-07-30 05:46:47 +07:00
Matthias Baesken
ac07460e44 8287119: Add Distrust.java to ProblemList
Backport-of: da8fd4547f
2022-07-30 05:46:47 +07:00
Ichiroh Takiguchi
b94148b818 8139173: [macosx] JInternalFrame shadow is not properly drawn
Backport-of: f7814c120b
2022-07-30 05:46:46 +07:00
Sergey Bylokhov
5852f6cff5 8285523: Improve test java/io/FileOutputStream/OpenNUL.java
Backport-of: f42631e354
2022-07-30 05:46:46 +07:00
Goetz Lindenmaier
de4f86c455 8209776: Refactor jdk/security/JavaDotSecurity/ifdefs.sh to plain java test
Backport-of: 9711033780
2022-07-30 05:46:45 +07:00
Ichiroh Takiguchi
44e025e286 8240756: [macos] SwingSet2:TableDemo:Printed Japanese characters were garbled
Backport-of: 27fe3d7f8d
2022-07-30 05:46:44 +07:00
Zhengyu Gu
193831fda6 8283469: Don't use memset to initialize members in FileMapInfo and fix memory leak
Reviewed-by: mdoerr
Backport-of: d6fa8b004b
2022-07-30 05:46:44 +07:00
Goetz Lindenmaier
b664e66d02 8286293: Tests ShortResponseBody and ShortResponseBodyWithRetry should use less resources
Backport-of: f143386109
2022-07-30 05:46:43 +07:00
Goetz Lindenmaier
cd4f3ba18d 8236136: tests which use CompilationMode shouldn't be run w/ TieredStopAtLevel
Backport-of: a86cab8d42
2022-07-30 05:46:43 +07:00
Goetz Lindenmaier
2578bba2ae 8285686: Update FreeType to 2.12.0
Backport-of: 67dd8a8d6a
2022-07-30 05:46:41 +07:00
Matthias Baesken
3839a0d732 8285728: Alpine Linux build fails with busybox tar
Backport-of: 36bf6fbe08
2022-07-30 05:46:41 +07:00
Matthias Baesken
0c355821ef 8284758: [linux] improve print_container_info
Backport-of: 6c6d5223df
2022-07-30 05:46:41 +07:00
Matthias Baesken
4b42ee38d5 8284754: print more interesting env variables in hs_err and VM.info
Backport-of: 8ee2944cc4
2022-07-30 05:46:40 +07:00
Martin Doerr
14327f0ab1 8283323: libharfbuzz optimization level results in extreme build times
Backport-of: 2c43ecb43f
2022-07-30 05:46:40 +07:00
Thomas Stuefe
18561e3192 8286198: [linux] Fix process-memory information
Backport-of: 9e320d9ab1
2022-07-30 05:46:40 +07:00
Tyler Steele
51ae74bb99 8285956: (fs) Excessive default poll interval in PollingWatchService
Backport-of: 1bb4de2e28
2022-07-30 05:46:39 +07:00
Richard Reingruber
a8c038b872 8280593: [PPC64, S390] redundant allocation of MacroAssembler in StubGenerator ctor
Backport-of: c936e7059b
2022-07-30 05:46:39 +07:00
Richard Reingruber
d53e4daaee 8274687: JDWP deadlocks if some Java thread reaches wait in blockOnDebuggerSuspend
Backport-of: ca2efb73f5
2022-07-30 05:46:38 +07:00
Basil Crow
9886b49f70 8268773: Improvements related to: Failed to start thread - pthread_create failed (EAGAIN)
Backport-of: e35005d5ce
2022-07-30 05:46:38 +07:00
Aleksey Shipilev
e2749ccd05 8284848: C2: Compiler blackhole arguments should be treated as globally escaping
Reviewed-by: kvn
Backport-of: 5629c7555f
2022-07-30 05:46:38 +07:00
Matthias Baesken
0e80e5e9ac 8285921: serviceability/dcmd/jvmti/AttachFailed/AttachReturnError.java fails on Alpine
Backport-of: 0f62cb6fcc
2022-07-30 05:46:37 +07:00
Goetz Lindenmaier
6fb25ac8e8 8206187: javax/management/remote/mandatory/connection/DefaultAgentFilterTest.java fails with Port already in use
Backport-of: cd36be42c2
2022-07-30 05:46:37 +07:00
Jie Fu
80d0ac8b33 8286013: Incorrect test configurations for compiler/stable/TestStableShort.java
Backport-of: 3420a1aa70
2022-07-30 05:46:36 +07:00
Jie Fu
a4c7ea5e59 8284992: Fix misleading Vector API doc for LSHR operator
Backport-of: e54f26aa3d
2022-07-30 05:46:36 +07:00
Jie Fu
81f8f2bff6 8285828: runtime/execstack/TestCheckJDK.java fails with zipped debug symbols
Backport-of: c4f7a850c6
2022-07-30 05:46:36 +07:00
Christoph Langer
c9d518f6ff 8285727: [11u, 17u] Unify fix for JDK-8284920 with version from head
Reviewed-by: mdoerr, akozlov
2022-07-30 05:46:35 +07:00
Christoph Langer
7ec60c2d73 8285726: [11u, 17u] Unify fix for JDK-8284548 with version from head
Reviewed-by: mdoerr
2022-07-30 05:46:35 +07:00
Martin Doerr
721d8800c8 8282929: Localized monetary symbols are not reflected in toLocalizedPattern return value
Backport-of: c96085eaab
2022-07-30 05:46:35 +07:00
Tyler Steele
906f84c120 8286029: Add classpath exemption to globals_vectorApiSupport_***.S.inc
Backport-of: 6a1b145a0a
2022-07-30 05:46:34 +07:00
Zhengyu Gu
4e6c088081 8284023: java.sun.awt.X11GraphicsDevice.getDoubleBufferVisuals() leaks XdbeScreenVisualInfo
Backport-of: ec205f68a8
2022-07-30 05:44:47 +07:00
Zhengyu Gu
f651cd87b7 8284532: Memory leak in BitSet::BitMapFragmentTable in JFR leak profiler
Backport-of: b55c32f5fe
2022-07-30 05:43:40 +07:00
Aleksey Shipilev
a3c17f3386 8282170: JVMTI SetBreakpoint metaspace allocation test
Backport-of: 7b91bbba82
2022-07-30 05:43:40 +07:00
Aleksey Shipilev
3a1da92c5a 8285394: Compiler blackholes can be eliminated due to stale ciMethod::intrinsic_id()
Reviewed-by: kvn
Backport-of: ce8db2c403
2022-07-30 05:43:39 +07:00
Zhengyu Gu
5144f2c5b7 8284549: JFR: FieldTable leaks FieldInfoTable member
Backport-of: 92f5e42696
2022-07-30 05:43:39 +07:00
Zhengyu Gu
bdce3e9f2c 8284620: CodeBuffer may leak _overflow_arena
Reviewed-by: mdoerr, kvn
Backport-of: 4d45c3ebc4
2022-07-30 05:43:39 +07:00
Sergey Bylokhov
b0f61372a8 8274735: javax.imageio.IIOException: Unsupported Image Type while processing a valid JPEG image
Backport-of: f8a164915f
2022-07-30 05:43:38 +07:00
Goetz Lindenmaier
99645ecbdd 8279529: ProblemList java/nio/channels/DatagramChannel/ManySourcesAndTargets.java on macosx-aarch64
8279532: ProblemList sun/security/ssl/SSLSessionImpl/NoInvalidateSocketException.java

Backport-of: 564c8c6390
2022-07-30 05:43:38 +07:00
Martin Doerr
6c2ce3ae7a 8282293: Domain value for system property jdk.https.negotiate.cbt should be case-insensitive
Backport-of: 86015e15a5
2022-07-30 05:43:37 +07:00
Martin Doerr
8dbb4c73c3 8279842: HTTPS Channel Binding support for Java GSS/Kerberos
Reviewed-by: goetz
Backport-of: de3113b998
2022-07-30 05:43:37 +07:00
Jaroslav Bachorik
2531e69aa6 8280684: JfrRecorderService failes with guarantee(num_written > 0) when no space left on device.
Backport-of: 9471f24ca1
2022-07-30 05:43:36 +07:00
Matthias Baesken
cb8e82d992 8285445: cannot open file "NUL:"
Backport-of: 03cbb48e6a
2022-07-30 05:43:36 +07:00
Zhengyu Gu
37c6d5f230 8284458: CodeHeapState::aggregate() leaks blob_name
Reviewed-by: mdoerr
Backport-of: d4a4884385
2022-07-30 05:43:35 +07:00
Martin Doerr
1cb571cc21 8284866: Add test to JDK-8273056
Backport-of: 3ffec3a50b
2022-07-30 05:43:34 +07:00
Martin Doerr
d616a12a70 8278519: serviceability/jvmti/FieldAccessWatch/FieldAccessWatch.java failed "assert(handle != __null) failed: JNI handle should not be null"
Backport-of: 63e43030ed
2022-07-30 05:43:34 +07:00
Martin Doerr
ea64bb8fe9 8277396: [TESTBUG] In DefaultButtonModelCrashTest.java, frame is accessed from main thread
Backport-of: b310f301ef
2022-07-30 05:43:34 +07:00
Martin Doerr
f1735b17cc 8273095: vmTestbase/vm/mlvm/anonloader/stress/oome/heap/Test.java fails with "wrong OOME"
Backport-of: f62b81c3b5
2022-07-30 05:43:33 +07:00
Martin Doerr
35c2fca802 8282142: [TestCase] compiler/inlining/ResolvedClassTest.java will fail when --with-jvm-features=-compiler1
Backport-of: c459f8f406
2022-07-30 05:43:33 +07:00
Jie Fu
ea352d0d5c 8285342: Zero build failure with clang due to values not handled in switch
Backport-of: d84b9c5489
2022-07-30 05:43:32 +07:00
Christoph Langer
9fa23a4646 8284622: Update versions of some Github Actions used in JDK workflow
Backport-of: 5851631de2
2022-07-30 05:43:32 +07:00
Sergey Bylokhov
bc093901cd 8283422: Create a new test for JDK-8254790
Backport-of: ad83ec7e28
2022-07-30 05:43:31 +07:00
Martin Doerr
4bcda1856e 8279597: [TESTBUG] ReturnBlobToWrongHeapTest.java fails with -XX:TieredStopAtLevel=1 on machines with many cores
Backport-of: 45f20633f6
2022-07-30 05:43:31 +07:00
Martin Doerr
df641aa323 8284884: Replace polling with waiting in javax/swing/text/html/parser/Parser/8078268/bug8078268.java
Backport-of: 53580b336a
2022-07-30 05:43:31 +07:00
Thomas Stuefe
4fadc15610 8283725: Launching java with "-Xlog:gc*=trace,safepoint*=trace,class*=trace" crashes the JVM
Backport-of: 1ca0ede60d
2022-07-30 05:43:30 +07:00
Martin Doerr
35e5d01d8a 8279520: SPNEGO has not passed channel binding info into the underlying mechanism
Backport-of: 8d0f385fd0
2022-07-30 05:43:30 +07:00
Christoph Langer
f5a0c2350c 8284507: GHA: Only check test results if testing was not skipped
Backport-of: 8eac3427b1
2022-07-30 05:43:29 +07:00
Christoph Langer
5b4cbd3d28 8284603: [17u] Update Boot JDK used in GHA to 17.0.2
Reviewed-by: sgehwolf
2022-07-30 05:43:29 +07:00
Christoph Langer
fed4540405 8284389: Improve stability of GHA Pre-submit testing by caching cygwin installer
Backport-of: 61fcf2f67f
2022-07-30 05:43:29 +07:00
Goetz Lindenmaier
01a0d697dd 8276863: Remove test/jdk/sun/security/ec/ECDSAJavaVerify.java
Backport-of: c27afb313b
2022-07-30 05:43:28 +07:00
Zhengyu Gu
4fe8b8899d 8283217: Leak FcObjectSet in getFontConfigLocations() in fontpath.c
Backport-of: 909986c7e1
2022-07-30 05:43:28 +07:00
Martin Doerr
aca2dbec8f 8279822: CI: Constant pool entries in error state are not supported
Reviewed-by: goetz
Backport-of: c5c8c0644d
2022-07-30 05:43:27 +07:00
Martin Doerr
289fdf2bad 8276880: Remove java/lang/RuntimeTests/exec/ExecWithDir as unnecessary
Reviewed-by: goetz
Backport-of: d7012fbd60
2022-07-30 05:43:27 +07:00
Martin Doerr
53ba6a8dd7 8284369: TestFailedAllocationBadGraph fails with -XX:TieredStopAtLevel < 4
Backport-of: 955d61df30
2022-07-30 05:43:26 +07:00
Severin Gehwolf
347fafdbd3 8283279: [Testbug] Improve TestGetSwapSpaceSize
Backport-of: a77160065b
2022-07-30 05:43:26 +07:00
Matthias Baesken
6afa1299ba 8283347: [macos] Bad JNI lookup accessibilityHitTest is shown when Screen magnifier is enabled
Reviewed-by: mdoerr
2022-07-30 05:43:25 +07:00
Martin Doerr
7e31edd17a 8283187: C2: loop candidate for superword not always unrolled fully if superword fails
Backport-of: 14c20bc0e0
2022-07-30 05:43:25 +07:00
Martin Doerr
9a008025fc 8281822: Test failures on non-DTrace builds due to incomplete DTrace* flags handling
Backport-of: a81c911176
2022-07-30 05:43:24 +07:00
Thomas Stuefe
d8cc532974 8280940: gtest os.release_multi_mappings_vm is racy
Reviewed-by: mdoerr
Backport-of: f07b816523
2022-07-30 05:43:24 +07:00
Thomas Stuefe
52f1b71aa9 8281522: Rename ADLC classes which have the same name as hotspot variants
Reviewed-by: mdoerr
Backport-of: eee6a5622d
2022-07-30 05:43:23 +07:00
Thomas Stuefe
60fa5fb29f 8282382: Report glibc malloc tunables in error reports
Backport-of: bc42e7cbbf
2022-07-30 05:43:23 +07:00
Zhengyu Gu
da5ecfd226 8282887: Potential memory leak in sun.util.locale.provider.HostLocaleProviderAdapterImpl.getNumberPattern() on Windows
Backport-of: 2cddf3f539
2022-07-30 05:43:22 +07:00
Zhengyu Gu
fc62424ae9 8282628: Potential memory leak in sun.font.FontConfigManager.getFontConfig()
Backport-of: 5df2a05770
2022-07-30 05:43:22 +07:00
Thomas Stuefe
b81e3e2ac0 8283497: [windows] print TMP and TEMP in hs_err and VM.info
Backport-of: b035fda459
2022-07-30 05:43:21 +07:00
Thomas Stuefe
f4f173a412 8283249: CompressedClassPointers.java fails on ppc with 'Narrow klass shift: 0' missing
Backport-of: 58487ddc17
2022-07-30 05:43:21 +07:00
Thomas Stuefe
0e558ecf98 8281450: Remove unnecessary operator new and delete from ObjectMonitor
Backport-of: 83d67452da
2022-07-30 05:43:20 +07:00
Thomas Stuefe
581f482673 8280941: os::print_memory_mappings() prints segment preceeding the inclusion range
Backport-of: d1cc5fda8f
2022-07-30 05:43:20 +07:00
Thomas Stuefe
d5b3f364f6 8280004: DCmdArgument<jlong>::parse_value() should handle NULL input
Backport-of: 55f180fb7d
2022-07-30 05:43:20 +07:00
Martin Doerr
bbcd8deeeb 8273142: Remove dependancy of TestHttpServer, HttpTransaction, HttpCallback from open/test/jdk/sun/net/www/protocol/http/ tests
Backport-of: 2f955d6f5b
2022-07-30 05:43:19 +07:00
Martin Doerr
365453fa0f 8256368: Avoid repeated upcalls into Java to re-resolve MH/VH linkers/invokers
Backport-of: 534e557874
2022-07-30 05:43:19 +07:00
Martin Doerr
68ee5e4016 8282590: C2: assert(addp->is_AddP() && addp->outcnt() > 0) failed: Don't process dead nodes
Backport-of: d29c7e740d
2022-07-30 05:43:18 +07:00
Martin Doerr
885b0c8783 8283641: Large value for CompileThresholdScaling causes assert
Backport-of: c1048021fe
2022-07-30 05:43:17 +07:00
Martin Doerr
33ec34dec9 8283451: C2: assert(_base == Long) failed: Not a Long
Backport-of: fabde3b7b8
2022-07-30 05:43:17 +07:00
Martin Doerr
97328400a5 8283834: Unmappable character for US-ASCII encoding in TestPredicateInputBelowLoopPredicate
Backport-of: 2367228835
2022-07-30 05:43:16 +07:00
Martin Doerr
b05a97af4b 8282592: C2: assert(false) failed: graph should be schedulable
Backport-of: 85628a871d
2022-07-30 05:43:16 +07:00
Martin Doerr
5fb41b33ec 8282312: Minor corrections to evbroadcasti32x4 intrinsic on x86
Backport-of: 8b45dbdae6
2022-07-30 05:43:15 +07:00
Sergey Bylokhov
f25e8d1e6c 8279586: [macos] custom JCheckBox and JRadioBox with custom icon set: focus is still displayed after unchecking
Backport-of: 18a7dc8c08
2022-07-30 05:43:15 +07:00
Martin Doerr
a18a738b42 8271008: appcds/*/MethodHandlesAsCollectorTest.java tests time out because of excessive GC (CodeCache GC Threshold) in loom
Backport-of: 022d80707c
2022-07-30 05:43:14 +07:00
Martin Doerr
6f0b639b91 8282874: Bad performance on gather/scatter API caused by different IntSpecies of indexMap
Backport-of: 5c408c1410
2022-07-30 05:43:14 +07:00
Martin Doerr
f6a6e6c73e 8280901: MethodHandle::linkToNative stub is missing w/ -Xint
Backport-of: f86f38a8af
2022-07-30 05:43:13 +07:00
Martin Doerr
1769afd114 8282045: When loop strip mining fails, safepoints are removed from loop anyway
Backport-of: 2c5d266f9f
2022-07-30 05:43:13 +07:00
Martin Doerr
5f8e015a0e 8282231: x86-32: runtime call to SharedRuntime::ldiv corrupts registers
Backport-of: ecd85e6f0f
2022-07-30 05:43:12 +07:00
Martin Doerr
f0e2d13c7f 8272908: Missing coverage for certain classes in com.sun.org.apache.xml.internal.security
Backport-of: a16f2d0a3c
2022-07-30 05:43:12 +07:00
Martin Doerr
46b98f0839 8272964: java/nio/file/Files/InterruptCopy.java fails with java.lang.RuntimeException: Copy was not interrupted
Backport-of: dfeb4132e4
2022-07-30 05:43:11 +07:00
Martin Doerr
0a0b9b84f8 8272493: Suboptimal code generation around Preconditions.checkIndex intrinsic with AVX2
Backport-of: 88f0938c94
2022-07-30 05:43:11 +07:00
Martin Doerr
d3a5335623 8283408: Fix a C2 crash when filling arrays with unsafe
Backport-of: a6740c010b
2022-07-30 05:43:11 +07:00
Martin Doerr
f8d74332c7 8282172: CompileBroker::log_metaspace_failure is called from non-Java/compiler threads
Backport-of: 4e7fb41daf
2022-07-30 05:43:10 +07:00
Martin Doerr
c5e48f486e 8280867: Cpuid1Ecx feature parsing is incorrect for AMD CPUs
Backport-of: a18beb4797
2022-07-30 05:43:10 +07:00
Martin Doerr
2aef52d677 8280600: C2: assert(!had_error) failed: bad dominance
Backport-of: de826ba18a
2022-07-30 05:43:09 +07:00
Martin Doerr
2c08acd036 8271055: Crash during deoptimization with "assert(bb->is_reachable()) failed: getting result from unreachable basicblock" with -XX:+VerifyStack
Backport-of: e44dc638b8
2022-07-30 05:43:08 +07:00
Martin Doerr
2671018ace 8280964: [Linux aarch64] : drawImage dithers TYPE_BYTE_INDEXED images incorrectly
Backport-of: 6f882deddc
2022-07-30 05:43:08 +07:00
Martin Doerr
c08e4adb6f 8272358: Some tests may fail when executed with other locales than the US
Backport-of: 29e552c03a
2022-07-30 05:43:02 +07:00
Martin Doerr
2d691a8eb4 8277055: Assert "missing inlining msg" with -XX:+PrintIntrinsics
Backport-of: b1f935c1d0
2022-07-30 05:43:01 +07:00
Martin Doerr
5295d4e22a 8264605: vmTestbase/nsk/jvmti/SuspendThread/suspendthrd003/TestDescription.java failed with "agent_tools.cpp, 471: (foundThread = (jthread) jni_env->NewGlobalRef(foundThread)) != NULL"
Backport-of: 96fe1d0d4d
2022-07-30 05:43:01 +07:00
Martin Doerr
38905c8f5c 8279219: [REDO] C2 crash when allocating array of size too large
Backport-of: d32f99ee65
2022-07-30 05:43:00 +07:00
Martin Doerr
603349e45e 8281544: assert(VM_Version::supports_avx512bw()) failed for Tests jdk/incubator/vector/
Backport-of: 4e0b81c596
2022-07-30 05:43:00 +07:00
Martin Doerr
3e6b06801f 8283350: (tz) Update Timezone Data to 2022a
Backport-of: 1ab6f9395f
2022-07-30 05:43:00 +07:00
Martin Doerr
552791caa2 8275337: C1: assert(false) failed: live_in set of first block must be empty
Backport-of: 4191b2b9b9
2022-07-30 05:42:59 +07:00
Martin Doerr
4149771026 8273169: java/util/regex/NegativeArraySize.java failed after JDK-8271302
Backport-of: 683e30db79
2022-07-30 05:42:59 +07:00
Martin Doerr
451a156edf 8271302: Regex Test Refresh
Backport-of: fecefb8541
2022-07-30 05:42:58 +07:00
Severin Gehwolf
f6c2765bc1 8282551: Properly initialize L32X64MixRandom state
Backport-of: ce18ff8527
2022-07-30 05:42:58 +07:00
Martin Doerr
a97a083d49 8278794: Infinite loop in DeflaterOutputStream.finish()
Backport-of: ff0b0927a2
2022-07-30 05:42:58 +07:00
Martin Doerr
260e73b53c 8281771: Crash in java_lang_invoke_MethodType::print_signature
Backport-of: a24498b777
2022-07-30 05:42:51 +07:00
Martin Doerr
ccf87b2cdf 8270797: ShortECDSA.java test is not complete
Backport-of: 221e4b9c61
2022-07-30 05:42:51 +07:00
Matthias Baesken
7cb35a057a 8278549: UNIX sun/font coding misses SUSE distro detection on recent distro SUSE 15
Reviewed-by: mdoerr
Backport-of: 84976b4531
2022-07-30 05:42:50 +07:00
Roman Kennke
907856ba20 8278065: Refactor subclassAudits to use ClassValue
Backport-of: 8fed8ab29c
2022-07-30 05:42:50 +07:00
Roman Kennke
21fadd66a3 8280041: Retry loop issues in java.io.ClassCache
Backport-of: cebaad1c94
2022-07-30 05:42:49 +07:00
Roman Kennke
943e557f56 8277072: ObjectStreamClass caches keep ClassLoaders alive
Backport-of: 8eb453baeb
2022-07-30 05:42:49 +07:00
Goetz Lindenmaier
9ede4c2d01 8255266: Update Public Suffix List to 3c213aa
Backport-of: 7ce75afbbc
2022-07-30 05:42:49 +07:00
Chris Hegarty
9523a7e838 8282444: Module finder incorrectly assumes default file system path-separator character
Backport-of: 369291b265
2022-07-30 05:42:48 +07:00
Foivos Zakkak
5496fc25ba 8281266: [JVMCI] MetaUtil.toInternalName() doesn't handle hidden classes correctly
Backport-of: 0cbc4b85bf
2022-07-30 05:42:48 +07:00
Matthias Baesken
54d5e24779 8282345: handle latest VS2022 in abstract_vm_version
Backport-of: 735e86b0f7
2022-07-30 05:42:47 +07:00
Matthias Baesken
ddf765b7d4 8281274: deal with ActiveProcessorCount in os::Linux::print_container_info
Backport-of: bb2e10ccea
2022-07-30 05:42:36 +07:00
Thomas Stuefe
98e96aa70e 8280543: Update the "java" and "jcmd" tool specification for CDS
Reviewed-by: mdoerr
Backport-of: 39165613aa
2022-07-30 05:42:26 +07:00
Jonathan Dowland
e07c0980c6 8193682: Infinite loop in ZipOutputStream.close()
Backport-of: 1e9ed54d36
2022-07-30 05:42:26 +07:00
Goetz Lindenmaier
69952038c4 8282583: Update BCEL md to include the copyright notice
Backport-of: 8478173d83
2022-07-30 05:42:25 +07:00
Goetz Lindenmaier
2a5860d457 8277922: Unable to click JCheckBox in JTable through Java Access Bridge
Backport-of: 1668c02ee8
2022-07-30 05:42:25 +07:00
Goetz Lindenmaier
e72eb44dc2 8249592: Robot.mouseMove moves cursor to incorrect location when display scale varies and Java runs in DPI Unaware mode
Backport-of: 8aba4de984
2022-07-30 05:42:25 +07:00
Goetz Lindenmaier
456602c63d 8282295: SymbolPropertyEntry::set_method_type fails with assert
Backport-of: 3e4dfc63e7
2022-07-30 05:42:24 +07:00
Goetz Lindenmaier
7066357e81 8281275: Upgrading from 8 to 11 no longer accepts '/' as filepath separator in gc paths
Backport-of: 84868e39be
2022-07-30 05:42:24 +07:00
Goetz Lindenmaier
fc1396c1b2 8281262: Windows builds in different directories are not fully reproducible
Backport-of: d442328bc2
2022-07-30 05:42:23 +07:00
Goetz Lindenmaier
3562039b4d 8278472: Invalid value set to CANDIDATEFORM structure
Backport-of: 2426d58e59
2022-07-30 05:42:23 +07:00
Goetz Lindenmaier
1fb8c36855 8280956: Re-examine copyright headers on files in src/java.desktop/macosx/native/libawt_lwawt/awt/a11y
Backport-of: fe547eacd7
2022-07-30 05:42:22 +07:00
Zhengyu Gu
06bdd7888c 8265261: java/nio/file/Files/InterruptCopy.java fails with java.lang.RuntimeException: Copy was not interrupted
Backport-of: aaedac635a
2022-07-30 05:42:22 +07:00
Goetz Lindenmaier
92965c3b42 8280401: [sspi] gss_accept_sec_context leaves output_token uninitialized
Backport-of: 6352c020c2
2022-07-30 05:42:22 +07:00
Goetz Lindenmaier
2259ae2925 8279227: Access Bridge: Wrong frame position and hit test result on HiDPI display
Backport-of: 20ef954158
2022-07-30 05:42:21 +07:00
Goetz Lindenmaier
8d3d31c2e1 8277087: ZipException: zip END header not found at ZipFile#Source.findEND
Backport-of: e3243ee963
2022-07-30 05:42:14 +07:00
Goetz Lindenmaier
8dc24126e0 8278851: Correct signer logic for jars signed with multiple digestalgs
Reviewed-by: mbaesken
Backport-of: 61b8944327
2022-07-30 05:42:13 +07:00
Goetz Lindenmaier
3554cb073d 8276796: gc/TestSystemGC.java large pages subtest fails with ZGC
Backport-of: 91bb0d658b
2022-07-30 05:42:13 +07:00
Goetz Lindenmaier
e031d013e6 8214733: runtime/8176717/TestInheritFD.java timed out
Backport-of: 4501ddda7f
2022-07-30 05:42:13 +07:00
Goetz Lindenmaier
a9b0bd028b 8279437: [JVMCI] exception in HotSpotJVMCIRuntime.translate can exit the VM
Backport-of: e14fb4f4aa
2022-07-30 05:42:12 +07:00
Goetz Lindenmaier
4a7d5d9314 8278186: org.jcp.xml.dsig.internal.dom.Utils.parseIdFromSameDocumentURI throws StringIndexOutOfBoundsException when calling substring method
Backport-of: 1f1db838ab
2022-07-30 05:42:12 +07:00
Goetz Lindenmaier
3a17af9b19 8277422: tools/jar/JarEntryTime.java fails with modified time mismatch
Backport-of: ad1ff27b73
2022-07-30 05:42:11 +07:00
Goetz Lindenmaier
1a79359b1b 8277165: jdeps --multi-release --print-module-deps fails if module-info.class in different versioned directories
8277166: Data race in jdeps VersionHelper
8277123: jdeps does not report some exceptions correctly

Backport-of: 7e54d065a1
2022-07-30 05:42:11 +07:00
Goetz Lindenmaier
643d374487 8275037: Test vmTestbase/nsk/sysdict/vm/stress/btree/btree011/btree011.java crashes with memory exhaustion on Windows
Backport-of: 9f2f46ee45
2022-07-30 05:42:10 +07:00
Sergey Bylokhov
8c5557ce89 8274751: Drag And Drop hangs on Windows
Backport-of: 7a0a6c95a5
2022-07-30 05:42:09 +07:00
Aleksey Shipilev
83f23743c7 8281638: jfr/event/allocation tests fail with release VMs after JDK-8281318 due to lack of -XX:+UnlockDiagnosticVMOptions
Backport-of: d254cf28c5
2022-07-30 05:41:56 +07:00
Aleksey Shipilev
9074de396d 8281318: Improve jfr/event/allocation tests reliability
Backport-of: 65831eb294
2022-07-30 05:41:48 +07:00
Aleksey Shipilev
59c4b50ebb 8277893: Arraycopy stress tests
Backport-of: 29bd73638a
2022-07-30 05:41:47 +07:00
Zhengyu Gu
2a54e2e249 8281615: Deadlock caused by jdwp agent
Backport-of: e1060bee2a
2022-07-30 05:41:47 +07:00
Martin Doerr
0edfb1635e 8273139: C2: assert(f <= 1 && f >= 0) failed: Incorrect frequency
Backport-of: 68b40ec286
2022-07-30 05:41:46 +07:00
Aleksey Shipilev
89406c45b1 8283017: GHA: Workflows break with update release versions
Reviewed-by: clanger
Backport-of: 01570ca92d
2022-07-30 05:41:46 +07:00
Goetz Lindenmaier
8266965e16 8270435: UT: MonitorUsedDeflationThresholdTest failed: did not find too_many string in output
Backport-of: 21e302a0f4
2022-07-30 05:41:46 +07:00
Goetz Lindenmaier
76a9f418e1 8274172: Convert JavadocTester to use NIO
Backport-of: 5b0c9ccc49
2022-07-30 05:41:45 +07:00
Goetz Lindenmaier
4dd36d6616 8272168: some hotspot runtime/logging tests don't check exit code
Backport-of: 3b899ef7ff
2022-07-30 05:41:45 +07:00
Goetz Lindenmaier
014109dcf4 8269077: TestSystemGC uses "require vm.gc.G1" for large pages subtest
Backport-of: 1a818154cf
2022-07-30 05:41:44 +07:00
Goetz Lindenmaier
0cba17ba56 8267163: Rename anonymous loader tests to hidden loader tests
Reviewed-by: mdoerr
Backport-of: 5c21c00441
2022-07-30 05:41:44 +07:00
Aleksey Shipilev
ec5e19636c 8281168: Micro-optimize VarForm.getMemberName for interpreter
Backport-of: fc77217814
2022-07-30 05:41:43 +07:00
Aleksey Shipilev
8d54d7a8ee 8279668: x86: AVX2 versions of vpxor should be asserted
Backport-of: 2bbeae3f05
2022-07-30 05:41:42 +07:00
Aleksey Shipilev
26ffc41cfd 8279958: Provide configure hints for Alpine/apk package managers
Backport-of: a30aa52b77
2022-07-30 05:41:41 +07:00
Goetz Lindenmaier
1fb1d7d57a 8276657: XSLT compiler tries to define a class with empty name
Backport-of: a093cdddaf
2022-07-30 05:41:41 +07:00
Goetz Lindenmaier
fc2abce839 8276825: hotspot/runtime/SelectionResolution test errors
Backport-of: 55b36c6f3b
2022-07-30 05:41:40 +07:00
Goetz Lindenmaier
8e0aeafe57 8276260: (se) Remove java/nio/channels/Selector/Wakeup.java from ProblemList (win)
Backport-of: fa4ce824a3
2022-07-30 05:41:40 +07:00
Goetz Lindenmaier
5bfd7b9f06 8251904: vmTestbase/nsk/sysdict/vm/stress/btree/btree010/btree010.java fails with ClassNotFoundException: nsk.sysdict.share.BTree0LLRLRLRRLR
Backport-of: 7ca053de21
2022-07-30 05:41:40 +07:00
Goetz Lindenmaier
bb6231981b 8268595: java/io/Serializable/serialFilter/GlobalFilterTest.java#id1 failed in timeout
Backport-of: f143d2a88e
2022-07-30 05:41:39 +07:00
Goetz Lindenmaier
9423a22849 8274244: ReportOnImportedModuleAnnotation.java fails on rerun
Backport-of: c391e59ea6
2022-07-30 05:41:39 +07:00
Goetz Lindenmaier
df6efce0cf 8274561: sun/net/ftp/TestFtpTimeValue.java timed out on slow machines
Backport-of: b7b78ff1f3
2022-07-30 05:41:39 +07:00
Goetz Lindenmaier
9872c47fce 8274233: Minor cleanup for ToolBox
Backport-of: e741a18062
2022-07-30 05:41:38 +07:00
Goetz Lindenmaier
703aac308e 8269373: some tests in jdk/tools/launcher/ fails on localized Windows platform
Backport-of: cb112affd6
2022-07-30 05:41:38 +07:00
Martin Doerr
3c222af77b 8282509: [exploded image] ResolvedClassTest fails with similar output
Backport-of: 7c8ea9f05b
2022-07-30 05:41:38 +07:00
Aleksey Shipilev
d6e5726d49 8282225: GHA: Allow one concurrent run per PR only
Backport-of: aaab2cb416
2022-07-30 05:41:37 +07:00
Goetz Lindenmaier
a35ead5c58 8268558: [TESTBUG] Case 2 in TestP11KeyFactoryGetRSAKeySpec is skipped
Backport-of: 041ae20b10
2022-07-30 05:41:37 +07:00
Goetz Lindenmaier
6ddec9f6b8 8272146: Disable Fibonacci test on memory constrained systems
Backport-of: adba09b91d
2022-07-30 05:41:37 +07:00
Martin Doerr
748d3e0c40 8279515: C1: No inlining through invokedynamic and invokestatic call sites when resolved class is not linked
Backport-of: ad34f03b54
2022-07-30 05:41:36 +07:00
Goetz Lindenmaier
d8ff4e42ba 8272169: runtime/logging/LoaderConstraintsTest.java doesn't build test.Empty
Backport-of: eb6f3fe59d
2022-07-30 05:41:36 +07:00
Goetz Lindenmaier
2fb149272c 8271224: runtime/EnclosingMethodAttr/EnclMethodAttr.java doesn't check exit code
Backport-of: 68dd828088
2022-07-30 05:41:36 +07:00
Goetz Lindenmaier
f421239562 8269753: Misplaced caret in PatternSyntaxException's detail message
Backport-of: bb508e1303
2022-07-30 05:41:35 +07:00
Goetz Lindenmaier
a8fb85170f 8270336: [TESTBUG] Fix initialization in NonbranchyTree
Backport-of: 3cadc36060
2022-07-30 05:41:35 +07:00
Goetz Lindenmaier
25d731277f 8269933: test/jdk/javax/net/ssl/compatibility/JdkInfo incorrect verification of protocol and cipher support
Backport-of: 6346793c64
2022-07-30 05:41:35 +07:00
Goetz Lindenmaier
2d7b8fe2f7 8270837: fix typos in test TestSigParse.java
Backport-of: 67dc1c5bf3
2022-07-30 05:41:34 +07:00
Goetz Lindenmaier
351a249837 8270021: Incorrect log decorators in gc/g1/plab/TestPLABEvacuationFailure.java
Backport-of: 4a45d95719
2022-07-30 05:41:34 +07:00
Goetz Lindenmaier
a15e8b1aca 8263538: SharedArchiveConsistency.java should test -Xshare:auto as well
Backport-of: e8206dbb17
2022-07-30 05:41:34 +07:00
Goetz Lindenmaier
b8962e2f78 8269135: TestDifferentProtectionDomains runs into timeout in client VM
Reviewed-by: clanger
Backport-of: 53ad903a82
2022-07-30 05:41:33 +07:00
Goetz Lindenmaier
24b1a67cf4 8268906: gc/g1/mixedgc/TestOldGenCollectionUsage.java assumes that GCs take 1ms minimum
Backport-of: a0f32cb140
2022-07-30 05:41:33 +07:00
Martin Doerr
5a46090e29 8270468: TestRangeCheckEliminated fails because methods are not compiled
Backport-of: bb82005a81
2022-07-30 05:41:33 +07:00
Martin Doerr
fd711cc60e 8269129: Multiple tier1 tests in hotspot/jtreg/compiler are failing for client VMs
Backport-of: 561a3a5077
2022-07-30 05:41:32 +07:00
Martin Doerr
421958cb07 8278948: compiler/vectorapi/reshape/TestVectorCastAVX1.java crashes in assembler
Backport-of: f8f9148016
2022-07-30 05:41:32 +07:00
Martin Doerr
7675fc735e 8265317: [vector] assert(payload->is_object()) failed: expected 'object' value for scalar-replaced boxed vector but got: NULL
Backport-of: 58b5fb3233
2022-07-30 05:41:32 +07:00
Martin Doerr
a6848f22ed 8278966: two microbenchmarks tests fail "assert(!jvms->method()->has_exception_handlers()) failed: no exception handler expected" after JDK-8275638
Backport-of: e7244c19f4
2022-07-30 05:41:31 +07:00
Martin Doerr
88078f9bc2 8275638: GraphKit::combine_exception_states fails with "matching stack sizes" assert
Backport-of: b9a477bf19
2022-07-30 05:41:31 +07:00
Jim Laskey
3334e1d215 8273056: java.util.random does not correctly sample exponential or Gaussian distributions
Backport-of: 3d98ec1b7b
2022-07-30 05:41:31 +07:00
Roman Kennke
3d08ee109f 8276990: Memory leak in invoker.c fillInvokeRequest() during JDI operations
Backport-of: 5ab22e88da
2022-07-30 05:41:30 +07:00
Martin Doerr
70b5f410c2 8274855: vectorapi tests failing with assert(!vbox->is_Phi()) failed
Backport-of: 5021a12cea
2022-07-30 05:41:30 +07:00
Martin Doerr
49df388240 8278796: Incorrect behavior of FloatVector.withLane on X86
Backport-of: 8494fec665
2022-07-30 05:41:29 +07:00
Martin Doerr
30502f407c 8278014: [vectorapi] Remove test run script
Backport-of: 9b3e672059
2022-07-30 05:41:29 +07:00
Martin Doerr
304104d56b 8275830: C2: Receiver downcast is missing when inlining through method handle linkers
Backport-of: 95a3010acf
2022-07-30 05:41:29 +07:00
Martin Doerr
f3da094fc4 8280123: C2: Infinite loop in CMoveINode::Ideal during IGVN
Backport-of: 3f747368b9
2022-07-30 05:41:28 +07:00
Martin Doerr
76a0d55325 8273804: Platform.isTieredSupported should handle the no-compiler case
Backport-of: 46af82e5b0
2022-07-30 05:41:28 +07:00
Dmitry Chuyko
e48bdaef3e 8279560: AArch64: generate_compare_long_string_same_encoding and LARGE_LOOP_PREFETCH alignment
Backport-of: 126328cb62
2022-07-30 05:41:27 +07:00
Martin Doerr
3c8157af87 8279356: Method linking fails with guarantee(mh->adapter() != NULL) failed: Adapter blob must already exist!
Backport-of: 6d7db4b0b3
2022-07-30 05:41:27 +07:00
Martin Doerr
8f029fb882 8279837: C2: assert(is_Loop()) failed: invalid node class: Region
Backport-of: 65eb066b63
2022-07-30 05:41:27 +07:00
Martin Doerr
95ab9e2149 8258814: Compilation logging crashes for thread suspension / debugging tests
Backport-of: 35ee0f38c6
2022-07-30 05:41:26 +07:00
Dmitry Chuyko
85928d8628 8268231: Aarch64: Use Ldp in intrinsics for String.compareTo
Backport-of: 6d1d4d5292
2022-07-30 05:41:26 +07:00
Martin Doerr
89b415d560 8275854: C2: assert(stride_con != 0) failed: missed some peephole opt
Backport-of: aea096770e
2022-07-30 05:41:25 +07:00
Martin Doerr
19aaab7d52 8277906: Incorrect type for IV phi of long counted loops after CCP
Backport-of: 3889af3f7d
2022-07-30 05:41:25 +07:00
Martin Doerr
1d94c4548c 8274983: C1 optimizes the invocation of private interface methods
Reviewed-by: xliu
Backport-of: 21d9ca6cd9
2022-07-30 05:41:25 +07:00
Martin Doerr
4bb176f31a 8281043: Intrinsify recursive ObjectMonitor locking for PPC64
Backport-of: 46c6c6f308
2022-07-30 05:41:24 +07:00
Goetz Lindenmaier
fbd681580e 8282499: Bump update version for OpenJDK: jdk-17.0.4
Reviewed-by: mdoerr
2022-07-30 05:41:24 +07:00
bell-sw
3cd791a819 Revert "JBR-4141 Access Bridge: Wrong frame position and hit test result on HiDPI display"
This reverts commit ba8cdbab2b.
2022-07-30 05:41:24 +07:00
Vitaly Provodin
d7873e0f25 exclude javax/swing/SwingUtilities/7146377/bug7146377.java on windows due to JBR-4679 2022-07-29 19:27:53 +07:00
Vitaly Provodin
50edf75948 exclude javax/swing/SwingUtilities/4917669/bug4917669.java on windows due to JBR-4677 2022-07-29 19:27:52 +07:00
Vitaly Provodin
94be775252 exclude jb/hotspot/AbortHandler.java on macosx-all due to JBR-4669 2022-07-29 10:36:38 +07:00
Vitaly Provodin
785e1d46bd exclude java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java on all platforms due to 8266283 2022-07-29 10:36:04 +07:00
Dmitry Batrak
7468974488 JBR-4673 Focus moves to another application on file dialog closing 2022-07-27 18:36:30 +03:00
Vitaly Provodin
ebfa8e4b4d exclude jb/hotspot/AbortHandler.java on macosx-11.6.7 due to JBR-4669 2022-07-27 07:27:17 +07:00
Vitaly Provodin
2b389bee66 Update README.md 2022-07-27 05:52:29 +07:00
Dmitry Batrak
9b32c2a577 JBR-4665 Focus 'jitter' on window showing in WSLg 2022-07-25 18:48:39 +03:00
Nikita Gubarkov
a6f4cb2174 Disable colored outlines on Linux to be able to build with old system Freetype 2022-07-23 11:52:49 +03:00
Vitaly Provodin
05a623178f JBR-4658 add tier4_no_desktop test group 2022-07-23 05:30:29 +07:00
Nikita Gubarkov
b31f84efd6 Implement rendering of colored outlines and bitmap glyphs in OutlineTextRenderer
Pick changes from OpenJDK review
2022-07-21 13:59:13 +03:00
Dmitry Batrak
e34677587d JBR-4652 With multiple projects open non-fullscreen, right-click on Dock icon to select the project from the context menu doesn't switch to that project 2022-07-21 09:34:28 +03:00
Vitaly Provodin
3e368f51a4 Revert "fixup! JBR-4087 add version info into the name of root directory in JBR tar.gz-distributions (fix misprint)"
This reverts commit 5103549342.
2022-07-20 17:53:53 +07:00
Vitaly Provodin
f20bbd0c7a JBR-3770 enable test java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java 2022-07-20 16:17:02 +07:00
Nikita Gubarkov
1a56eecedd JBR-4524 JBR-4558 Null check TT_OS2 2022-07-19 20:08:48 +03:00
Nikita Gubarkov
3c56771eeb JBR-4553 Add logging to setUpTransparentTitleBar and resetTitleBar 2022-07-19 13:39:45 +03:00
Dmitry Batrak
ec748f84fb JBR-4642 regression: "focus follows mouse" broken for modals, I need to click into them
a better solution, fixing also the case when mouse hovers over a window, which is not the modal dialog's ancestor
2022-07-18 13:16:06 +03:00
Vitaly Provodin
7f4f822670 Update README.md 2022-07-15 05:25:02 +07:00
Alexey Ushakov
1573ab4f8c JBR-4573 Start/stop displaysync affects performance in metal rendering pipeline
Reverted extra change
2022-07-14 19:35:52 +02:00
Alexey Ushakov
f4f0beb75e JBR-4573 Start/stop displaysync affects performance in metal rendering pipeline
Reuse displaysync thread for subsequent updates
2022-07-14 19:30:14 +02:00
Alexey Ushakov
d0671eee76 JBR-4636 Some JWindow tests failed due to wrong scaling
Take into account custom scale via sun.java2d.uiScale
2022-07-14 19:30:14 +02:00
Dmitry Batrak
c55bf03680 JBR-4642 regression: "focus follows mouse" broken for modals, I need to click into them 2022-07-14 20:17:28 +03:00
Artem Semenov
4d69e3ac47 JBR-4633 [macos] Voice over reads the boolean value as null in the JTable 2022-07-14 11:04:06 +03:00
Dmitry Batrak
8b9a00915d JBR-4638 Regression: Unable to enter emoji in editor via Emoji & Symbols on macOS 2022-07-12 16:41:14 +03:00
Vitaly Provodin
37e95663b2 Update README.md 2022-07-12 08:27:12 +07:00
Vitaly Provodin
5103549342 fixup! JBR-4087 add version info into the name of root directory in JBR tar.gz-distributions (fix misprint) 2022-07-12 04:48:30 +07:00
Nikita Gubarkov
df9cc387a0 JBR-2523 Fix emoji, ZWJ and font fallback
Require layout for some emoji-related unicodes
Fix variation selectors and ZWJ
2022-07-09 13:00:40 +03:00
Alexey Ushakov
9af4a30780 JBR-4619 Window content scale wrong after disconnecting external display / waking OS from sleep
Use viewDidChangeBackingProperties notification to adjust a window layer scale
2022-07-06 19:33:39 +02:00
Vladimir Kempik
b6b13b59cc 8289697: buffer overflow in MTLVertexCache.m: MTLVertexCache_AddGlyphQuad
Cherry-pick of https://github.com/openjdk/jdk/pull/9368
2022-07-06 14:12:50 +03:00
Nikita Gubarkov
21a30251eb JBR-2917 Move dingbats and symbol fonts to fallback sequence on Windows
That gives emoji font higher priority which fixes ZWJ sequences in composite fonts.
2022-07-04 23:29:48 +03:00
Vitaly Provodin
e67438409d Update README.md 2022-07-04 05:13:14 +07:00
Maxim Kartashev
9e8791461f JBR-4610 jb/hotspot/AbortHandler.java: hs_err_pid file generated with default options 2022-06-29 12:11:11 +03:00
Vitaly Provodin
f2750fbb5f Update README.md 2022-06-29 05:04:47 +07:00
Vitaly Provodin
7608f4fe17 exclude vmTestbase/vm/jit/LongTransitions due to 8271615 on macOS 2022-06-29 04:16:53 +07:00
Maxim Kartashev
acb42be927 JBR-4602 Unexpected NoSuchFileException running Rider test
This reverts commits for JBR-3680, JBR-4118, and JBR-4485.
2022-06-28 11:05:37 +03:00
Maxim Kartashev
b0c8d6fec7 JBR-3770 IDE crash at Java2D Disposer
The list of deferredRecords could be modified by Disposer.pollRemove()
on one thread, while being traversed by Disposer.clearDeferredRecords()
on another thread at the same time.
Such use of a non-thread-safe collection sometimes lead to a null
record retrieved from deferredRecords (which does not contain nulls),
resulting in a caught and ignored NPE. Another result was an abort()
caused by calling free() as detected by libc's built-in heap health
checks, likely triggered by free'ing the same block more than once.
2022-06-28 11:00:50 +03:00
Nikita Gubarkov
d2e8094682 JBR-4373 Add mapping for .NewYork-* and .SFArabic-* system fonts 2022-06-27 23:24:39 +03:00
Nikita Gubarkov
e806a9b30d JBR-2917 Add Segoe UI Emoji to font fallback on Windows 2022-06-27 01:04:14 +03:00
Alexander Lobas
89cd3c625d JBR-4563 Rounded corners for native Window on Mac OS (#156)
* JBR-4563 Rounded corners for native Window on Mac OS
2022-06-24 17:01:23 +02:00
Alexey Ushakov
ea11e74aca JBR-4588 macOS: SIGILL at [libsystem_kernel] __kill in CCE: class sun.java2d.opengl.CGLGraphicsConfig cannot be cast to class sun.java2d.metal.MTLGraphicsConfig
Prevent fall back to OpenGL if Metal has been used before
2022-06-24 14:31:41 +02:00
Alexander Lobas
47ffba7109 JBR-4563 Rounded corners for native Window on Mac OS 2022-06-23 23:23:22 +02:00
Alexander Lobas
91629c8401 JBR-4563 Rounded corners for native Window on Mac OS 2022-06-23 23:23:22 +02:00
Alexander Lobas
ecd3bd94eb JBR-4563 Rounded corners for native Window on Mac OS 2022-06-23 23:23:22 +02:00
Alexander Lobas
1a5fba9910 JBR-4563 Rounded corners for native Window on Mac OS 2022-06-23 23:23:22 +02:00
Vladimir Kempik
a2d3da2434 8256844: Make NMT late-initializable
Cherry pick of PR https://github.com/openjdk/jdk17u-dev/pull/496

Reviewed-by: stuefe
2022-06-23 21:01:10 +03:00
Andrew Leonard
11da1aa07f JBR-4062 8288399: MacOS debug symbol files not always deterministic in reproducible builds
Reviewed-by: erikj
2022-06-23 17:53:38 +03:00
Alexey Pavlyutkin
87d8bda745 JBR-4062 8287894: Use fixed timestamp as an alternative of __DATE__ macro in jdk.jdi to make Windows build reproducible
Reviewed-by: erikj, ihse
2022-06-23 17:50:39 +03:00
Alexey Ushakov
b8d373e711 JBR-4591 macOS: SIGILL at [libsystem_kernel] __kill in -[__NSMallocBlock__ removeFromSuperview]: unrecognized selector sent to instance
Verified if windowDragView is present
2022-06-23 16:23:53 +02:00
Maxim Kartashev
4e8864552d JBR-4562 Generate hs_err file on SIGABRT
Changed the option from a -XX one to -Djbr.catch.SIGABRT=true to make it
more compatible with other JDKs.
2022-06-22 09:36:47 +03:00
Maxim Kartashev
57cd74977e fixup! JBR-4485 Windows: EXCEPTION_ACCESS_VIOLATION at sun.nio.fs.WindowsDirectoryStream$WindowsDirectoryIterator.readNextEntry 2022-06-21 09:03:33 +03:00
Vitaly Provodin
845d9cd2a7 exclude javax/swing/JToolBar/4529206/bug4529206.java due to 8288707 on linux 2022-06-19 07:12:07 +07:00
Vitaly Provodin
abd349c4c9 fixup! JBR-4567 fix checking test status 2022-06-18 06:36:16 +07:00
Vitaly Provodin
3c7af3d9ac fixup! JBR-4567 replace comma with point in RenderPerf scores 2022-06-18 06:36:16 +07:00
Maxim Kartashev
62f8abdea8 JBR-4562 Generate hs_err file on SIGABRT
The generation can be switched off with the env var JVM_NO_SIGABRT.
2022-06-16 13:19:48 +03:00
Maxim Kartashev
2fc6a7d38b JBR-3101 Exception in NSApplicationAWT: java.lang.NullPointerException at java.desktop/sun.lwawt.macosx.CPlatformComponent.setBounds
CWarningWindow doesn't have a peer, so accomodated for that in
CPlatformComponent.setBounds().
2022-06-16 12:25:09 +03:00
Vitaly Provodin
004cba3473 JBR-4570 improve synchronization and increase waiting time 2022-06-16 15:42:45 +07:00
Nikita Provotorov
a89da55450 JBR-2074 Windows AArch64 support: add build and pack scripts. 2022-06-16 03:41:30 +07:00
Maxim Kartashev
04544a5f96 JBR-4485 Windows: EXCEPTION_ACCESS_VIOLATION at sun.nio.fs.WindowsDirectoryStream$WindowsDirectoryIterator.readNextEntry
As a precaution, range-check the offset returned by WinAPI before
using it to read raw memory with Unsafe.
2022-06-15 10:48:34 +03:00
Maxim Kartashev
8dda13944a JBR-4481 Avoid workaround for reproducible jrt-fs.jar if boot jar supports reproducibility
BUILD_JAR is used instead of hand-crafted path and timestamp fixup is not
even applied if BOOT_JDK_JAR_SUPPORTS_DATE.
2022-06-15 09:58:01 +03:00
Vitaly Provodin
21865fd478 Update README.md 2022-06-15 06:13:24 +07:00
Vitaly Provodin
a4b4baeafb JBR-4567 replace comma with point in RenderPerf scores 2022-06-13 14:35:26 +07:00
Vitaly Provodin
2f68e2a4b6 JBR-4566 release file does not contain IMPLEMENTOR and other properties 2022-06-13 14:35:23 +07:00
Vitaly Provodin
55a8176c6d JBR-3770 exclude java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java from regular runs on macosx-all 2022-06-10 13:56:24 +07:00
Vitaly Provodin
7f66caa16e JBR-4451 fix the case when asterik cannot be found in string with perf score
After adding the set -e option, which instructs bash to immediately exit if any command has a non-zero exit status, perfcmp.sh unexpectedly exited because grep could not find an asterik. But it is expected case which means that the score is applicable
2022-06-10 06:30:22 +07:00
Rajan Halade
08aeb1b30f 8287109: Distrust.java failed with CertificateExpiredException
Reviewed-by: mullan

(cherry picked from commit 5b7d066ca5)
2022-06-10 06:30:22 +07:00
Vitaly Provodin
b4a19f1154 exclude sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java due to 8252812 on linux-all 2022-06-10 06:30:22 +07:00
Vitaly Provodin
2b2b48c6af exclude java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_4.java due to 8204200 2022-06-10 06:30:22 +07:00
Vitaly Provodin
38cc9f2592 Update README.md 2022-06-10 05:35:57 +07:00
Dmitry Batrak
94d95ad55c JBR-4535 Popup windows disappear on mouse hover when 'Focus strictly under mouse' policy is used in KDE
use override-redirect flag for popup menus on KDE - popup menus aren't affected by JBR-4535,
as they use an active mouse pointer grab, and marking them as override-redirect will allow to display
them over the system task bar, as https://bugs.openjdk.org/browse/JDK-6580930 requires
2022-06-09 20:23:21 +03:00
Alexey Ushakov
5b49bd750a 8287600: AA Ovals not rendered under metal
Commit command buffer after MTL_OP_MASK_OP operation
2022-06-09 13:49:52 +02:00
Dmitry Batrak
6dc194e089 JBR-4552 Windows revert back after initial move/resize in Cygwin/X 2022-06-08 15:01:51 +03:00
Dmitry Batrak
1f9120c283 JBR-4546 Focus is not returned back to IDE after closing "Open" dialog 2022-06-07 19:14:41 +03:00
Manuel Unterhofer
0301983b6a FL-11598 Fix accidental reset of window configuration for custom decoration on macOS
This also aligns the handling of the style mask with how the other settings are applied: It uses a client property now. This property is now also applied directly on peer initialization so that there is no need to re-apply, and the window directly appears in the correct configuration.
2022-06-07 15:17:09 +02:00
Dmitry Batrak
73d3da2f28 JBR-4543 NPE: IdeEventQueue.lambda$getNextEvent$0 2022-06-06 16:49:08 +03:00
Nikita Provotorov
321a4a3f83 fixup! JBR-4394, IDEA-246833: refactoring and blocking the fix of JBR-1573 to recreate IMs and ICs during preediting. 2022-06-06 21:38:10 +10:00
Nikita Provotorov
8490a25a0f JBR-4394, IDEA-246833: refactoring and blocking the fix of JBR-1573 to recreate IMs and ICs during preediting.
(cherry picked from commit 7a36587db8d3d5a63c5691243cd5bf56733c06e6)
2022-06-05 06:55:50 +10:00
Nikita Provotorov
9fbb44cae7 JBR-4394, IDEA-246833: fixup of JBR-2444.
(cherry picked from commit ef262dc8bb)
2022-06-03 19:50:39 +07:00
Dmitry Batrak
d10e161b72 JBR-4537 Popup windows shown for a background window cause app icon to blink in taskbar on KDE 2022-06-03 16:41:01 +03:00
Dmitry Batrak
c9670beb62 JBR-4535 Popup windows disappear on mouse hover when 'Focus strictly under mouse' policy is used in KDE 2022-06-03 16:41:01 +03:00
Vladimir Kempik
a0f8c27bdf 8280476: [macOS] : hotspot arm64 bug exposed by latest clang
Backport-of: f5d6fddc6d
2022-06-03 15:44:26 +03:00
Vitaly Provodin
c39e4a4fcd JBR-4272 fix misprint in linux-aarch64 2022-06-03 04:06:06 +07:00
Nikita Gubarkov
51993ea193 JBR API v0.0.6
JBR-4525 Add DRAGGABLE_AREA hitspot type for custom window decoration
2022-06-01 22:42:28 +03:00
Nikita Gubarkov
30885a997e JBR-4031 add null-check for tagsArray returned from CTFontCopyAvailableTables 2022-06-01 00:41:02 +03:00
Vitaly Provodin
929d5352c4 JBR-4520 set file permissions after signing 2022-05-31 18:48:17 +07:00
Alexey Ushakov
5332227582 JBR-4442 ClipFlatOval test hangs on M1 mac
Improved RenderPerfTest:
  - corrected and simplified test logic
  - added timeout on low performant rendering
  - used several markers to recover from missing frames
  - protected measurements from multiple paint invocations
2022-05-27 16:03:05 +02:00
Jaikiran Pai
4fb8ed7e15 8285515: (dc) DatagramChannel.disconnect fails with "Invalid argument" on macOS 12.4 beta2
Reviewed-by: dfuchs, alanb
(cherry picked from commit 269eae6189)
2022-05-27 20:06:11 +07:00
Vitaly Provodin
b477e4bb20 JBR-4512 windows: include pdb-files into jbrsdk 2022-05-27 19:13:39 +07:00
Vitaly Provodin
91d6a17b71 JBR-4087 add version info into the name of root directory in JBR tar.gz-distributions 2022-05-27 19:11:59 +07:00
Alexey Ushakov
99653a7246 JBR-3828 restore details for Java exceptions in crash dumps handled by ObjC
Added exception.toString() to jbr_err_* log

(cherry picked from commit 478bd6cdd7)

Added java stack of the exception to jbr_err_* log

(cherry picked from commit e97f728e93)

Also return the static string "OutOfMemoryError" in case of that
exception has been thrown in order to avoid crashing while reporting an
exception in an out-of-memory situation.
2022-05-25 12:32:25 +03:00
Vitaly Provodin
2d4764e6a5 Update README.md
update the link to JBR for IDEA 2022.2
2022-05-24 11:04:08 +07:00
Vitaly Provodin
1a5d095ffc exclude jb/java/awt/Window/ZOrderOnModalDialogActivation.java from S2 runs on Windows and Linux 2022-05-24 04:58:43 +07:00
Vitaly Provodin
6e54137bec exclude several tests from runs on machines with enabled VoiceOver 2022-05-24 04:58:42 +07:00
Vitaly Provodin
9ae2d19d82 exclude javax/swing/plaf/nimbus/TestNimbusOverride.java on windows due to 8253184 2022-05-24 04:58:42 +07:00
Vitaly Provodin
5ed37e2ade exclude java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java on linux-aarch64 only due to 8266283 2022-05-24 04:58:42 +07:00
Vitaly Provodin
7f2f3dd782 JBR-4487 enable Linux 32 builds (fix misprint) 2022-05-24 04:55:38 +07:00
Vladimir Kempik
c0f008e54d JBR-4496: Revert-JBR-4291-JBR-4423-and-JBR-4309 2022-05-23 18:33:46 +03:00
Harshitha Onkar
83521a04b4 8255439: System Tray icons get corrupted when windows scaling changes
Co-authored-by: Alexey Ivanov <aivanov@openjdk.org>
Reviewed-by: kcr, prr, aivanov
2022-05-23 14:23:05 +03:00
Naoto Sato
a1c716f556 8272352: Java launcher can not parse Chinese character when system locale is set to UTF-8
Reviewed-by: rriggs
2022-05-23 13:02:05 +03:00
Vladislav Rassokhin
e5085c2252 JBR-4451 Make bash scripts safer 2022-05-21 06:20:13 +07:00
Vitaly Provodin
bf7b0d3d01 JBR-4487 enable Linux 32 builds 2022-05-20 17:52:53 +07:00
Vitaly Provodin
6dc33960aa JBR-4458 enable JBR17 windows 32 bit builds 2022-05-20 17:52:53 +07:00
VladimirKempik
afe1cbc136 JBR-4452: Update crash report message with JBR youtrack link instead of bugreport.java.com (#151) 2022-05-20 11:18:10 +03:00
Maxim Kartashev
17e5d307b3 JBR-4457 getOperatingSystemMXBean throws an NPE
Instead of picking the memory cgroup specifically for "anyController",
pick any controller that appeared to be the first in the map.
2022-05-20 11:06:23 +03:00
Sergey Bylokhov
a3f12a2a6f 8274939: Incorrect size of the pixel storage is used by the robot on macOS
Reviewed-by: aivanov, prr
2022-05-18 21:19:51 +02:00
Dmitry Batrak
f42feb1eab JBR-1740 Menu remains open when application loses focus
(cherry picked from commit f987d22cd2)
2022-05-17 17:28:58 +03:00
Maxim Kartashev
4f4f3c9e41 JBR-4471 Linux: popup appears on wrong screen after desktop scale change
When screen scale changes, the cached screen bounds must be explicitly
updated. Call resetBoundsCache() whenever X11GraphicsDevice.scale has
changed.
2022-05-17 01:55:52 -07:00
Vitaly Provodin
d37946eef4 add _diz tarballs for linux-aarch64 to the expected set of artifacts 2022-05-17 10:39:37 +07:00
Vitaly Provodin
e3c584a7e3 exclude Frame/RestoreToOppositeScreen/RestoreToOppositeScreen.java from S2 runs due to 8286840 2022-05-17 05:17:48 +07:00
Zhengyu Gu
cd2dbaa88e JBR-4378 8284680: sun.font.FontConfigManager.getFontConfig() leaks charset
Reviewed-by: prr, andrew
2022-05-16 07:28:38 -07:00
Zhengyu Gu
a076696bc6 JBR-4378 8284956: Potential leak awtImageData/color_data when initializes X11GraphicsEnvironment
Reviewed-by: prr, shade
2022-05-16 07:28:38 -07:00
Artem Bochkarev
8b2a1daac3 JBR-4473: fixed native part of SystemHotkeyReader 2022-05-16 17:16:05 +07:00
Nikita Gubarkov
56420d17c1 JBR-4364 Fixup macOS native file dialog 2022-05-16 12:33:54 +03:00
Nikita Gubarkov
4f69815a42 JBR-4364 Port macOS native file dialog patches
JBR-1752 Floating windows overlap modal dialogs
JBR-2005: don't set appearance of file chooser if OSX version < 10.14
2022-05-16 00:01:24 +03:00
Vitaly Provodin
9de73a31e8 JBR-4437 add sources to JBRSDK distributions for Windows and Linux 2022-05-14 05:04:41 +07:00
Andrey Turbanov
5509467613 8280896: java/nio/file/Files/probeContentType/Basic.java fails on Windows 11
Reviewed-by: jpai, bpb
(cherry picked from commit f9137cb7b7)
2022-05-14 05:04:41 +07:00
Artem Semenov
6321222001 JBR-4432 Context menu not opening for JTextComponent on mac 2022-05-13 12:02:17 +03:00
Nikita Gubarkov
a74ccad7f8 JBR-4364 Port macOS native file dialog patches
IDEA-146669 Enable Mac native file dialogs
IDEA-159507 Mac native dialogs: multiple open dialogs are possible
JBR-1784 File dialogs aren't themed on macOS
2022-05-12 20:43:34 +03:00
Nikita Gubarkov
6eb83f426c JBR-4460 Allow changing custom window decorations on Windows on the fly 2022-05-12 17:55:16 +03:00
Nikita Gubarkov
58f4edd277 Use reflection instead of method handle lookup to find JBR API implementation classes
This is useful for internal services and allows to keep implementation in classes normally not accessible from the point where service is created
2022-05-12 17:52:48 +03:00
Nikita Gubarkov
9bbb5185f4 fixup! Handle cases when unsupported window type is passed to CustomWindowDecoration client-side fallback
Bump JBR API patch version
2022-05-12 13:25:15 +03:00
Nikita Gubarkov
b4cc3ca9b9 Handle cases when unsupported window type is passed to CustomWindowDecoration client-side fallback 2022-05-12 13:16:48 +03:00
Alexander Lobas
fb428d58b1 JBR-4462 BigSur: project tab does not gain focus when click it after focusing another app 2022-05-12 11:03:53 +02:00
Alexander Lobas
5e3573d422 JBR-4462 BigSur: project tab does not gain focus when click it after focusing another app 2022-05-12 11:03:53 +02:00
Alexander Lobas
39969abfad JBR-4462 BigSur: project tab does not gain focus when click it after focusing another app 2022-05-12 11:03:53 +02:00
Dmitry Batrak
39c4654438 JBR-4463 Activating app-modal dialog brings all app windows to front
(cherry picked from commit 2b05925276)
2022-05-11 22:09:30 +03:00
Nikita Gubarkov
10479dccd9 JBR-4460 Fix window drag with custom decorations on macOS 2022-05-11 19:25:39 +03:00
Maxim Kartashev
9a81ca792e JBR-3498 Windows: exception when trying to delete a directory with a trailing space
Allow Windows Path to have a trailing space despite Windows naming conventions
discouraging it. Many programs - including Explorer - successfully work
with such files or directories.
2022-05-11 17:04:14 +03:00
Nikita Provotorov
626ab933a9 JBR-4458: JBR17 Windows x86_32 build is broken.
Build-fix of the JBR-1430 fix.
2022-05-11 03:43:29 +07:00
Nikita Provotorov
6fb9661f26 JBR-4458: JBR17 Windows x86_32 build is broken.
Build-fix of the JBR-3997 fix.
2022-05-11 03:43:28 +07:00
Manuel Unterhofer
8b735d389b Merge fullscreen handlers for transparent title bar into existing ones 2022-05-09 14:39:14 +02:00
Manuel Unterhofer
e4c34ade82 FL-11420 Fix view hierarchy restoration for full-screen mode on macOS 2022-05-09 14:39:14 +02:00
Dmitry Batrak
11db651a21 JBR-1518 JBR 11 does not support chain of popups on Linux
(cherry picked from commit 849356ee01)
2022-05-04 17:10:46 +03:00
Maxim Kartashev
03f0ec3a28 JBR-3862 Implement native WatchService on MacOS
The watch service is based on FSEvents API that notifies about file
system changes at a directory level. It is possible to go back to
using the old polling watch service with -Dwatch.service.polling=true.

Features include:
- support for FILE_TREE option (recursive directory watching),
- minimum necessary I/O (no filesystem access more than once
  unless needed),
- one thread ("run loop") per WatchService instance,
- changes are detected by comparing file modification times with
  millisecond precision,
- a directory tree snapshot is taken at the time of WatchKey creation
  and can take a long time (proportional to the number of files).
2022-05-04 15:11:03 +03:00
Vitaly Provodin
59005e679f JBR-4437 add sources to JBRSDK distributions 2022-05-03 08:45:33 +07:00
Ryan Osial
efd61f2f97 Cache results of font-config pattern search for reuse
(cherry picked from commit 432f637904)
(cherry picked from commit 17bc232f6f)
2022-04-29 19:37:01 +02:00
Maxim Kartashev
3bf2a3f32d JBR-3948 Linux: SIGSEGV at [libawt_xawt] Java_sun_awt_X11_XInputMethod_createXICNative
The crashes begin with the call to getDefaultConfig() in
createStatusWindow() returning garbage. With 8280468 fixed, there aren't
many reasons left for it to do so; it must be that the argument to the
call (the screen number) is out of range.

This change eliminates the possibilities to get an absolutely incorrect
screen number by checking the return values of several Xlib functions,
which, when fail, will leave their outgoing arguments uninitialized.
This, in turn, can lead to reading some random memory resulting in
equally random screen number that is later being fed to
getDefaultConfig().

Although on modern systems with Xinerama there should really be no
screen other than zero, as the last resort, this number is also
range-checked in getDefaultConfig() itself.
2022-04-29 06:36:53 -07:00
Atrem Bochkarev
b193bdbf37 JBR-4093: fixed test hangs at finishing 2022-04-29 13:45:05 +03:00
Anton Kozlov
b9ae79bd62 8284920: Incorrect Token type causes XPath expression to return empty result
Reviewed-by: andrew
2022-04-29 05:43:46 +07:00
Christoph Langer
57c4e5009e 8284548: Invalid XPath expression causes StringIndexOutOfBoundsException
Reviewed-by: andrew
2022-04-29 05:43:45 +07:00
Alexey Bakhtin
078c85a001 8278449: Improve keychain support
Reviewed-by: andrew
Backport-of: 2376bb88eff3ae6922c4cae276e1d703a520853d
2022-04-29 05:43:45 +07:00
Yuri Nesterenko
97dcc801c9 8270504: Better Xpath expression handling
Reviewed-by: andrew
Backport-of: b61a2ca626b1da5e555c50e548b643a2daa396c6
2022-04-29 05:43:44 +07:00
Yuri Nesterenko
e8f43ec415 8282300: Throws NamingException instead of InvalidNameException after JDK-8278972
Backport-of: e6afb6ff81c9004aadaa6f694e643de9703dd32d
2022-04-29 05:43:44 +07:00
Yuri Nesterenko
1a0517f672 8278972: Improve URL supports
Backport-of: 94f1fbfd6d23f18ade3cc1b36f6dd368963c9d02
2022-04-29 05:43:43 +07:00
Martin Balao
57e955258d 8281388: Change wrapping of EncryptedPrivateKeyInfo
Reviewed-by: mbaesken
Backport-of: 405381ce9b44c8b122a06e590e4d8240fd9ba996
2022-04-29 05:43:43 +07:00
Andrew Brygin
1ec310320b 8278805: Enhance BMP image loading
Backport-of: 6319119be51e595be82f253b9f5e9495e72d4ad9
2022-04-29 05:43:42 +07:00
Martin Balao
db07db3824 8278798: Improve supported intrinsic
Reviewed-by: roland, mbaesken
Backport-of: 7ed3d37203da74f3f2cc92d06250f74aa5ceccd1
2022-04-29 05:43:36 +07:00
David Alvarez
dd0ad60a02 8274221: More definite BER encodings
Backport-of: ee39b0fc22a55a051b8a4d5754c34105fe4b734e
2022-04-29 05:43:36 +07:00
Sergey Bylokhov
24ee64a3c3 8272255: Completely handle MIDI files
Reviewed-by: mbaesken
Backport-of: 6efdd1870e7ddb77a04d8c8183ced385039d0913
2022-04-29 05:43:36 +07:00
Martin Balao
4f01131d8b 8282397: createTempFile method of java.io.File is failing when called with suffix of spaces character
Reviewed-by: mbaesken
Backport-of: d48181536fa9b99f01fc80f8adb73777ec6ffa58
2022-04-29 05:43:36 +07:00
Martin Balao
eca38c63b7 8278356: Improve file creation
Backport-of: 3c75bf069973c1d05b94cb42edf6eb62820b1ef5
2022-04-29 05:43:35 +07:00
Aleksei Voitylov
a3cab9ff52 8277672: Better invocation handler handling
Reviewed-by: mbaesken
Backport-of: 0691804665559f1935b7361d5f1207ac46f823f0
2022-04-29 05:43:35 +07:00
Aleksei Voitylov
eb6c770ce8 8277233: Improve ECDSA signature support
Reviewed-by: mbaesken
Backport-of: 34714d63f1be267c2bc2ae7a55f936deab8ea6d2
2022-04-29 05:43:35 +07:00
Aleksei Voitylov
6c509ba751 8277227: Better identification of OIDs
Reviewed-by: mbaesken
Backport-of: 3ac5f0175356fad40b59f879322fa7d89dfbcaab
2022-04-29 05:43:34 +07:00
Aleksei Voitylov
8cd33ef9e3 8275151: Improved Object Identification
Reviewed-by: mbaesken
Backport-of: 4cffe1cc913f895f54281de8e91ca39f4bde4b5f
2022-04-29 05:43:34 +07:00
Martin Balao
d2f5d0d55b 8272594: Better record of recordings
Reviewed-by: evergizova
Backport-of: 44d9bf6d4afac7b17273b0de1189f3487c1a22f7
2022-04-29 05:43:34 +07:00
Martin Balao
811607b4df 8272588: Enhanced recording parsing
Reviewed-by: mbaesken
Backport-of: 036e1b836ee6854f9996be2e8f04773227e60901
2022-04-29 05:43:33 +07:00
Oli Gillespie
48789ca2cd 8272261: Improve JFR recording file processing
Reviewed-by: mbaesken
Backport-of: 71dc970b928a6b3ccc4973f56765a4ff7c43860d
2022-04-29 05:43:33 +07:00
Martin Balao
6e62b56d09 8269938: Enhance XML processing passes redux
Reviewed-by: mbaesken
Backport-of: ff4e11b1a83d6910e39f1d46bea154f0876f39da
2022-04-29 05:43:33 +07:00
Goetz Lindenmaier
cf54d8c618 8282761: XPathFactoryImpl remove setProperty and getProperty methods
Reviewed-by: clanger, yan
2022-04-29 05:43:32 +07:00
Goetz Lindenmaier
e1f7c4214f 8277795: ldap connection timeout not honoured under contention
Backport-of: 3d926dd66e
2022-04-29 05:43:32 +07:00
Goetz Lindenmaier
b5054ca0ca 8276141: XPathFactory set/getProperty method
Reviewed-by: mbaesken, phh
Backport-of: b226ab99c8
2022-04-29 05:43:26 +07:00
Alexey Pavlyutkin
53463b2c26 8274471: Add support for RSASSA-PSS in OCSP Response
Reviewed-by: mdoerr, goetz
Backport-of: f63c4a832a
2022-04-29 05:43:26 +07:00
Ichiroh Takiguchi
47e1841109 8282219: jdk/java/lang/ProcessBuilder/Basic.java fails on AIX
Backport-of: c5c6058fd5
2022-04-29 05:43:25 +07:00
Zdenek Zambersky
c8654d24ba 8279669: test/jdk/com/sun/jdi/TestScaffold.java uses wrong condition
Backport-of: 4c52eb3943
2022-04-29 05:43:25 +07:00
Matthias Baesken
766f8a634b 8276841: Add support for Visual Studio 2022
Backport-of: f65db88b74
2022-04-29 05:43:24 +07:00
Goetz Lindenmaier
535f0320ef 8272866: java.util.random package summary contains incorrect mixing function in table
Backport-of: e66c8afb59
2022-04-29 05:43:24 +07:00
Mat Carter
1356468ccd 8272996: JNDI DNS provider fails to resolve SRV entries when IPV6 stack is enabled
Backport-of: 4c169495a2
2022-04-29 05:43:23 +07:00
Toshio Nakamura
6b023bd72b 8278185: Custom JRE cannot find non-ASCII named module inside
Backport-of: fcd67a5242
2022-04-29 05:43:16 +07:00
Thomas Stuefe
a0ed8eb08c 8281460: Let ObjectMonitor have its own NMT category
Backport-of: a037b3c358
2022-04-29 05:43:16 +07:00
Andrew Leonard
d5b5130b62 8278163: --with-cacerts-src variable resolved after GenerateCacerts recipe setup
Reviewed-by: sgehwolf
Backport-of: 45da3aea22
2022-04-29 05:43:16 +07:00
Thomas Stuefe
2523e70ff6 8277383: VM.metaspace optionally show chunk freelist details
Backport-of: 35361270cb
2022-04-29 05:43:15 +07:00
Thomas Stuefe
53d6420947 8271721: Split gc/g1/TestMixedGCLiveThreshold into separate tests
Backport-of: 66c653c561
2022-04-29 05:43:15 +07:00
Matthias Baesken
c268107085 8277488: Add expiry exception for Digicert (geotrustglobalca) expiring in May 2022
Backport-of: d3749de478
2022-04-29 05:43:14 +07:00
Jonathan Dowland
a8f138e96d 8270117: Broken jtreg link in "Building the JDK" page
Backport-of: 41a5eb4372
2022-04-29 05:43:14 +07:00
Jonathan Dowland
68dc172fb6 8279695: [TESTBUG] modify compiler/loopopts/TestSkeletonPredicateNegation.java to run on C1 also
Reviewed-by: mdoerr
Backport-of: 86d0abb66b
2022-04-29 05:43:07 +07:00
Andrew Leonard
a22d6706fa 8278080: Add --with-cacerts-src='user cacerts folder' to enable deterministic cacerts generation
Backport-of: dc2abc9f05
2022-04-29 05:43:07 +07:00
Alexey Bakhtin
486152a73d 8274524: SSLSocket.close() hangs if it is called during the ssl handshake
Backport-of: 58dae60da0
2022-04-29 05:43:06 +07:00
Matthias Baesken
0e640760fa 8278346: java/nio/file/Files/probeContentType/Basic.java fails on Linux SLES15 machine
Backport-of: fd8cb2dae8
2022-04-29 05:43:06 +07:00
Matthias Baesken
014ea3f95a 8274171: java/nio/file/Files/probeContentType/Basic.java failed on "Content type" mismatches
Backport-of: bb74ae87ab
2022-04-29 05:43:05 +07:00
Goetz Lindenmaier
e613fa1334 8274562: (fs) UserDefinedFileAttributeView doesn't correctly determine if supported when using OverlayFS
Backport-of: 3d7671b65e
2022-04-29 05:43:05 +07:00
Matthias Baesken
de2384fdb9 8273655: content-types.properties files are missing some common types
Backport-of: 65ed0a742e
2022-04-29 05:43:05 +07:00
Matthias Baesken
bc88d6fa82 8279385: [test] Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344
Backport-of: 01f93ddf18
2022-04-29 05:43:04 +07:00
Matthias Baesken
51472cf71a 8280373: Update Xalan serializer / SystemIDResolver to align with JDK-8270492
Backport-of: c180070cb5
2022-04-29 05:43:04 +07:00
Andrew John Hughes
8de2f8cd71 8272541: Incorrect overflow test in Toom-Cook branch of BigInteger multiplication
Backport-of: d1aeca117c
2022-04-29 05:43:04 +07:00
Goetz Lindenmaier
308e18cbbb 8278951: containers/cgroup/PlainRead.java fails on Ubuntu 21.10
Backport-of: 35172cdaf3
2022-04-29 05:42:58 +07:00
Goetz Lindenmaier
086e158c78 8272600: (test) Use native "sleep" in Basic.java
Backport-of: 0a361638c5
2022-04-29 05:42:57 +07:00
Alexey Bakhtin
c0fcd34c81 8271199: Mutual TLS handshake fails signing client certificate with custom sensitive PKCS11 key
Backport-of: f6232982b9
2022-04-29 05:42:57 +07:00
Ana Marsh
52c72750b3 8277299: STACK_OVERFLOW in Java_sun_awt_shell_Win32ShellFolder2_getIconBits
Backport-of: 94127f43a4
2022-04-29 05:42:56 +07:00
Martin Doerr
9753c60d48 8281061: [s390] JFR runs into assertions while validating interpreter frames
Backport-of: 7f19c70070
2022-04-29 05:42:56 +07:00
Goetz Lindenmaier
36b8e66074 8190748: java/text/Format/DateFormat/DateFormatTest.java and NonGregorianFormatTest fail intermittently
Backport-of: f1c20e91d8
2022-04-29 05:42:56 +07:00
Goetz Lindenmaier
df46e70a3a 8274750: java/io/File/GetXSpace.java failed: '/dev': 191488 != 190976
Backport-of: 13265f9901
2022-04-29 05:42:55 +07:00
Matthias Baesken
302f1a32a5 8273387: remove some unreferenced gtk-related functions
Backport-of: 6eba443428
2022-04-29 05:42:55 +07:00
Bernhard Urban-Forster
2f2df3dce8 8279702: [macosx] ignore xcodebuild warnings on M1
Backport-of: 4b520f0001
2022-04-29 05:42:55 +07:00
Dmitry Chuyko
df9e6e5bcc 8277180: Intrinsify recursive ObjectMonitor locking for C2 x64 and A64
Backport-of: d93b238f97
2022-04-29 05:42:54 +07:00
Goetz Lindenmaier
afb43747b4 8277449: compiler/vectorapi/TestLongVectorNeg.java fails with release VMs
Backport-of: b15e6f076a
2022-04-29 05:42:53 +07:00
Goetz Lindenmaier
001ec50992 8275643: C2's unaryOp vector intrinsic does not properly handle LongVector.neg
Backport-of: 47564caeb0
2022-04-29 05:42:43 +07:00
Goetz Lindenmaier
25c02411ed 8271056: C2: "assert(no_dead_loop) failed: dead loop detected" due to cmoving identity
Backport-of: 54481394a3
2022-04-29 05:42:36 +07:00
Goetz Lindenmaier
c916005092 8275847: Scheduling fails with "too many D-U pinch points" on small method
Backport-of: 3934fe54b4
2022-04-29 05:42:36 +07:00
Goetz Lindenmaier
228e8c5d3d 8274944: AppCDS dump causes SEGV in VM thread while adjusting lambda proxy class info
Reviewed-by: stuefe
Backport-of: e5cd2692da
2022-04-29 05:42:35 +07:00
Goetz Lindenmaier
989c96f284 8275874: [JVMCI] only support aligned reads in c2v_readFieldValue
Backport-of: 2448b3f5f9
2022-04-29 05:42:35 +07:00
Goetz Lindenmaier
0c879b3d93 8271506: Add ResourceHashtable support for deleting selected entries
Reviewed-by: stuefe
Backport-of: f15d6cbcaf
2022-04-29 05:42:34 +07:00
Paul Hohensee
ad66624c0b 8278381: [GCC 11] Address::make_raw() does not initialize rspec
Backport-of: 4f594e6a28
2022-04-29 05:42:34 +07:00
Xin Liu
cdac6f2bcb 8279124: VM does not handle SIGQUIT during initialization
Backport-of: 9bf6ffa19f
2022-04-29 05:42:34 +07:00
Artem Semenov
c87d359b32 8277497: Last column cell in the JTable row is read as empty cell
Reviewed-by: ant, kizune
Backport-of: 70bad89b01
2022-04-29 05:42:33 +07:00
Artem Semenov
a05696e047 8278604: SwingSet2 table demo does not have accessible description set for images
8278526: [macos] Screen reader reads SwingSet2 JTable row selection as null, dimmed row for last column

Reviewed-by: ant, kizune
Backport-of: 8fbe1724e0
2022-04-29 05:42:33 +07:00
Goetz Lindenmaier
0d5c48f570 8275645: [JVMCI] avoid unaligned volatile reads on AArch64
Backport-of: 4dec8fc4cc
2022-04-29 05:42:33 +07:00
Matthias Baesken
eddefa3c18 8280414: Memory leak in DefaultProxySelector
Backport-of: fe77250fa4
2022-04-29 05:42:32 +07:00
Goetz Lindenmaier
05cf38eb5a 8273381: Assert in PtrQueueBufferAllocatorTest.stress_free_list_allocator_vm
Backport-of: c80a612709
2022-04-29 05:42:26 +07:00
Goetz Lindenmaier
d788f72b30 8269616: serviceability/dcmd/framework/VMVersionTest.java fails with Address already in use error
Backport-of: 8785737ba5
2022-04-29 05:42:26 +07:00
Martin Doerr
7137933ae2 8280155: [PPC64, s390] frame size checks are not yet correct
Backport-of: f37bfeadcf
2022-04-29 05:42:26 +07:00
Martin Doerr
30d10347c8 8279924: [PPC64, s390] implement frame::is_interpreted_frame_valid checks
Backport-of: c809d34f9e
2022-04-29 05:42:25 +07:00
Aleksey Shipilev
31dd91ce87 8280526: x86_32 Math.sqrt performance regression with -XX:UseSSE={0,1}
Backport-of: a24f44d17d
2022-04-29 05:42:25 +07:00
Aleksey Shipilev
b44a3f99a4 8279076: C2: Bad AD file when matching SqrtF with UseSSE=0
Backport-of: 9d5ae2e380
2022-04-29 05:42:24 +07:00
Aleksey Shipilev
258ee0952a 8279445: Update JMH devkit to 1.34
Backport-of: 0f98efbf2f
2022-04-29 05:42:24 +07:00
Thomas Stuefe
c98d88d182 8274753: ZGC: SEGV in MetaspaceShared::link_shared_classes
8274935: dumptime_table has stale entry

Reviewed-by: goetz, phh
Backport-of: 110e38ded8
2022-04-29 05:42:24 +07:00
Dmitry Chuyko
834d9b833e 8251216: Implement MD5 intrinsics on AArch64
Reviewed-by: phh, luhenry
Backport-of: 088b244ec6
2022-04-29 05:42:23 +07:00
Evgeny Astigeevich
8ebfbb7820 8278241: Implement JVM SpinPause on linux-aarch64
Backport-of: bcb79fd012
2022-04-29 05:42:23 +07:00
Thomas Stuefe
707d793a6c 8275608: runtime/Metaspace/elastic/TestMetaspaceAllocationMT2 too slow
Backport-of: d6d82f52d4
2022-04-29 05:42:22 +07:00
Aleksey Shipilev
ac1b1bc923 8276057: Update JMH devkit to 1.33
Backport-of: a2f2d8fcf5
2022-04-29 05:42:22 +07:00
Matthias Baesken
80735e7ebd 8275082: Update XML Security for Java to 2.3.0
Backport-of: 2c31a1735d
2022-04-29 05:42:16 +07:00
Goetz Lindenmaier
56514c6b5a 8177814: jdk/editpad is not in jdk TEST.groups
Backport-of: cfe7471f17
2022-04-29 05:42:16 +07:00
Goetz Lindenmaier
4de21bcbd0 8253197: vmTestbase/nsk/jvmti/StopThread/stopthrd007/TestDescription.java fails with "ERROR: DebuggeeSleepingThread: ThreadDeath lost"
Backport-of: 9573022978
2022-04-29 05:42:16 +07:00
Goetz Lindenmaier
f011ce4ef4 8236505: Mark jdk/editpad/EditPadTest.java as @headful
Backport-of: 7acec3f161
2022-04-29 05:42:15 +07:00
Goetz Lindenmaier
f87cf6e410 8272553: several hotspot runtime/CommandLine tests don't check exit code
Backport-of: 709b5910c3
2022-04-29 05:42:15 +07:00
Aleksey Shipilev
2ab6f9613e 8275687: runtime/CommandLine/PrintTouchedMethods test shouldn't catch RuntimeException
Backport-of: f0136ec945
2022-04-29 05:42:15 +07:00
Matthias Baesken
07a6d64186 8278344: sun/security/pkcs12/KeytoolOpensslInteropTest.java test fails because of different openssl output
Backport-of: 8b5ff4bdff
2022-04-29 05:42:14 +07:00
Sergey Bylokhov
bb2c382cdc 8273972: Multi-core choke point in CMM engine (LCMSTransform.doTransform)
Backport-of: e49e5b5a7e
2022-04-29 05:42:14 +07:00
Aleksey Shipilev
bd83a74dea 8273438: Enable parallelism in vmTestbase/metaspace/stressHierarchy tests
Backport-of: a143372818
2022-04-29 05:42:14 +07:00
Aleksey Shipilev
4a88de7f21 8278389: SuspendibleThreadSet::_suspend_all should be volatile/atomic
Backport-of: aec1b039b3
2022-04-29 05:42:13 +07:00
Aleksey Shipilev
2c82c24a0a 8273433: Enable parallelism in vmTestbase_nsk_sysdict tests
Backport-of: 5ca26cbddb
2022-04-29 05:42:13 +07:00
Evgeny Astigeevich
8924a0f904 8277503: compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java failed with "OnSpinWaitInst with the expected value 'isb' not found."
Reviewed-by: phh
Backport-of: 7b2d823e84
2022-04-29 05:42:12 +07:00
Evgeny Astigeevich
34c70e32d6 8277137: Set OnSpinWaitInst/OnSpinWaitInstCount defaults to "isb"/1 for Arm Neoverse N1
Backport-of: 38345bd28d
2022-04-29 05:42:11 +07:00
Goetz Lindenmaier
4795538fb9 8273341: Update Siphash to version 1.0
Backport-of: 6cf4cd1aa4
2022-04-29 05:42:02 +07:00
Goetz Lindenmaier
776ec05e5e 8269032: Stringdedup tests are failing if the ergonomically select GC does not support it
Backport-of: 3fc761d97d
2022-04-29 05:41:55 +07:00
Evgeny Astigeevich
c148505468 8186670: Implement _onSpinWait() intrinsic for AArch64
Backport-of: 6954b98f8f
2022-04-29 05:41:55 +07:00
Aleksey Shipilev
5502ec8e97 8279998: PPC64 debug builds fail with "untested: RangeCheckStub: predicate_failed_trap_id"
Backport-of: 4d9b3f4cee
2022-04-29 05:41:54 +07:00
Thomas Stuefe
282cb0aed3 8280002: jmap -histo may leak stream
Backport-of: c359c358c8
2022-04-29 05:41:54 +07:00
Goetz Lindenmaier
f094c9d55d 8279833: Loop optimization issue in String.encodeUTF8_UTF16
Backport-of: c3d0a94040
2022-04-29 05:41:54 +07:00
Goetz Lindenmaier
259fa9e71b 8273277: C2: Move conditional negation into rc_predicate
Backport-of: 710f496456
2022-04-29 05:41:53 +07:00
Goetz Lindenmaier
19d2bb1980 8279412: [JVMCI] failed speculations list must outlive any nmethod that refers to it
Backport-of: 1ffdc52cf0
2022-04-29 05:41:53 +07:00
Goetz Lindenmaier
0730ec9972 8271202: C1: assert(false) failed: live_in set of first block must be empty
Backport-of: 54b800d56d
2022-04-29 05:41:52 +07:00
Goetz Lindenmaier
6cd7098d2a 8263567: gtests don't terminate the VM safely
Backport-of: 843943c204
2022-04-29 05:41:52 +07:00
Goetz Lindenmaier
3cd2abf9c6 8269206: A small typo in comment in test/lib/sun/hotspot/WhiteBox.java
Backport-of: 2c29d790ca
2022-04-29 05:41:51 +07:00
Thomas Stuefe
360de18e79 8278309: [windows] use of uninitialized OSThread::_state
Backport-of: 54993b1307
2022-04-29 05:41:47 +07:00
Matthias Baesken
5465df52b6 8274506: TestPids.java and TestPidsLimit.java fail with podman run as root
Backport-of: 94e31e5ca5
2022-04-29 05:41:40 +07:00
Johannes Bechberger
71869e54d6 8273967: gtest os.dll_address_to_function_and_library_name_vm fails on macOS12
Reviewed-by: goetz
Backport-of: 92d2176362
2022-04-29 05:41:30 +07:00
Johannes Bechberger
bfca0b1a22 8273366: [testbug] javax/swing/UIDefaults/6302464/bug6302464.java fails on macOS12
Backport-of: febcc72a54
2022-04-29 05:41:29 +07:00
Martin Doerr
b5ba120da4 8277846: Implement fast-path for ASCII-compatible CharsetEncoders on ppc64
Backport-of: a5f2a58ba4
2022-04-29 05:41:29 +07:00
Matthias Baesken
b02f0c9df3 8273526: Extend the OSContainer API pids controller with pids.current
Backport-of: d4546b6b36
2022-04-29 05:41:28 +07:00
Goetz Lindenmaier
c17cfd417e 8269849: vmTestbase/gc/gctests/PhantomReference/phantom002/TestDescription.java failed with "OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects"
Backport-of: b7245c6164
2022-04-29 05:41:28 +07:00
Goetz Lindenmaier
dbf12435bf 8269087: CheckSegmentedCodeCache test fails in an emulated-client VM
Backport-of: 595446bff4
2022-04-29 05:41:28 +07:00
Goetz Lindenmaier
52a56ace28 8278871: [JVMCI] assert((uint)reason < 2* _trap_hist_limit) failed: oob
Backport-of: 6f0e8da6d3
2022-04-29 05:41:27 +07:00
Aleksey Shipilev
f1efa59e9e 8279505: Update documentation for RETRY_COUNT and REPEAT_COUNT
Backport-of: bc12381105
2022-04-29 05:41:26 +07:00
Liam Miller-Cushon
d91d113e44 8225559: assertion error at TransTypes.visitApply
Backport-of: de61328d30
2022-04-29 05:41:24 +07:00
Sergey Nazarkin
fa7bbcef4f 8279300: [arm32] SIGILL when running GetObjectSizeIntrinsicsTest
Backport-of: 6613ce64d7
2022-04-29 05:41:14 +07:00
Zhengyu Gu
f65f5ae101 8273682: Upgrade Jline to 3.20.0
Backport-of: b8cb76ad21
2022-04-29 05:41:13 +07:00
Goetz Lindenmaier
fb4a51d3cf 8278758: runtime/BootstrapMethod/BSMCalledTwice.java fails with release VMs after JDK-8262134
Backport-of: f48a3e86d0
2022-04-29 05:41:13 +07:00
Goetz Lindenmaier
39baf821da 8262134: compiler/uncommontrap/TestDeoptOOM.java failed with "guarantee(false) failed: wrong number of expression stack elements during deopt"
Backport-of: 32139c1a8a
2022-04-29 05:41:12 +07:00
Goetz Lindenmaier
0e480cea7c 8269037: jsig/Testjsig.java doesn't have to be restricted to linux only
Backport-of: 34ba70a71b
2022-04-29 05:41:12 +07:00
Goetz Lindenmaier
400ad87f54 8269523: runtime/Safepoint/TestAbortOnVMOperationTimeout.java failed when expecting 'VM operation took too long'
Backport-of: 4f42eb6601
2022-04-29 05:41:11 +07:00
Aleksey Shipilev
b163257c80 8244602: Add JTREG_REPEAT_COUNT to repeat execution of a test
Reviewed-by: clanger
Backport-of: b2638e5efd
2022-04-29 05:41:11 +07:00
Matthias Baesken
f07c536579 8272398: Update DockerTestUtils.buildJdkDockerImage()
Backport-of: ec63957f9d
2022-04-29 05:41:11 +07:00
Zhengyu Gu
553cb9b215 8278384: Bytecodes::result_type() for arraylength returns T_VOID instead of T_INT
Backport-of: 769f14db84
2022-04-29 05:41:09 +07:00
Aleksey Shipilev
1445c219f0 8278020: ~13% variation in Renaissance-Scrabble
Backport-of: 4ba980ba43
2022-04-29 05:41:09 +07:00
Aleksey Shipilev
53db7729d3 8279225: [arm32] C1 longs comparison operation destroys argument registers
Backport-of: 299022dfac
2022-04-29 05:41:08 +07:00
Matthias Baesken
55cb19a3ba 8266490: Extend the OSContainer API to support the pids controller of cgroups
Backport-of: 089e83bf1b
2022-04-29 05:41:08 +07:00
Aleksey Shipilev
d7d86ca1f2 8279379: GHA: Print tests that are in error
Backport-of: 06f3713271
2022-04-29 05:41:07 +07:00
Jaroslav Bachorik
d011ed5755 8278987: RunThese24H.java failed with EXCEPTION_ACCESS_VIOLATION in __write_sample_info__
Backport-of: 713fbeb050
2022-04-29 05:41:07 +07:00
Zhengyu Gu
66e2207548 8278627: Shenandoah: TestHeapDump test failed
Reviewed-by: shade
Backport-of: 1128674d7f
2022-04-29 05:41:07 +07:00
William Kemper
53622682d6 8278824: Uneven work distribution when scanning heap roots in G1
Reviewed-by: phh
Backport-of: b4b0328d62
2022-04-29 05:41:06 +07:00
Goetz Lindenmaier
df5e1000f6 8278239: vmTestbase/nsk/jvmti/RedefineClasses/StressRedefine failed with EXCEPTION_ACCESS_VIOLATION at 0x000000000000000d
Backport-of: 2be3e7ef1c
2022-04-29 05:41:06 +07:00
Jaroslav Bachorik
b45abc7e82 8277919: OldObjectSample event causing bloat in the class constant pool in JFR recording
Backport-of: 475ec8e6c5
2022-04-29 05:41:06 +07:00
Zhengyu Gu
1b2238e50d 8277342: vmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV in InstanceKlass::jni_id_for
Backport-of: 09e8c8c64a
2022-04-29 05:41:05 +07:00
Guoxiong Li
1ecff37be4 8278104: C1 should support the compiler directive 'BreakAtExecute'
Backport-of: 3c10b5db38
2022-04-29 05:41:00 +07:00
Goetz Lindenmaier
0e4879c8d0 8274465: Fix javax/swing/text/ParagraphView/6364882/bug6364882.java failures
Backport-of: bb4500d0d2
2022-04-29 05:41:00 +07:00
Goetz Lindenmaier
c9970aca0a 8273933: [TESTBUG] Test must run without preallocated exceptions
Backport-of: 4d95a5d6dc
2022-04-29 05:40:59 +07:00
Goetz Lindenmaier
fc3aaf015e 8278172: java/nio/channels/FileChannel/BlockDeviceSize.java should only run on Linux
Backport-of: 0d938cedca
2022-04-29 05:40:59 +07:00
Goetz Lindenmaier
e51e21080e 8275800: Redefinition leaks MethodData::_extra_data_lock
Backport-of: 40606021ee
2022-04-29 05:40:59 +07:00
Goetz Lindenmaier
50cb9ebe93 8273634: [TEST_BUG] Improve javax/swing/text/ParagraphView/6364882/bug6364882.java
Backport-of: 67e52a3078
2022-04-29 05:40:58 +07:00
Goetz Lindenmaier
6089b1ede8 8239502: [TEST_BUG] Test javax/swing/text/FlowView/6318524/bug6318524.java never fails
Backport-of: b7425b63f6
2022-04-29 05:40:58 +07:00
Goetz Lindenmaier
e7df97037c 8275326: C2: assert(no_dead_loop) failed: dead loop detected
Backport-of: 70d5dffb4e
2022-04-29 05:40:57 +07:00
Aleksey Shipilev
2f67420af3 8274130: C2: MulNode::Ideal chained transformations may act on wrong nodes
Reviewed-by: kvn
Backport-of: 756d22c356
2022-04-29 05:40:57 +07:00
Aleksey Shipilev
8515081977 8279011: JFR: JfrChunkWriter incorrectly handles int64_t chunk size as size_t
Backport-of: 467f654916
2022-04-29 05:40:57 +07:00
Aleksey Shipilev
d1778fa02b 8276662: Scalability bottleneck in SymbolTable::lookup_common()
Backport-of: 1d7cef33c5
2022-04-29 05:40:56 +07:00
Goetz Lindenmaier
1d4ed37016 8275536: Add test to check that File::lastModified returns same time stamp as Files.getLastModifiedTime
Backport-of: 97d3280eb4
2022-04-29 05:40:56 +07:00
Goetz Lindenmaier
66abf9fbbc 8273895: compiler/ciReplay/TestVMNoCompLevel.java fails due to wrong data size with TieredStopAtLevel=2,3
Backport-of: a561eac912
2022-04-29 05:40:56 +07:00
Sergey Bylokhov
41d675ae86 8272167: AbsPathsInImage.java should skip *.dSYM directories
Backport-of: dd93c6e27b
2022-04-29 05:40:55 +07:00
Sergey Bylokhov
5fb74f4969 8270874: JFrame paint artifacts when dragged from standard monitor to HiDPI monitor
Backport-of: 03473b4c27
2022-04-29 05:39:30 +07:00
Goetz Lindenmaier
a8c3a64c7d 8275610: C2: Object field load floats above its null check resulting in a segfault
Backport-of: 7c6f57fcb1
2022-04-29 05:39:29 +07:00
Goetz Lindenmaier
69630a187f 8278099: two sun/security/pkcs11/Signature tests failed with AssertionError
Backport-of: 669c90e23b
2022-04-29 05:39:28 +07:00
Goetz Lindenmaier
7c7f86c1e5 8276623: JDK-8275650 accidentally pushed "out" file
Backport-of: c62b3476ce
2022-04-29 05:39:24 +07:00
Matthias Baesken
6dc11924e5 8277328: jdk/jshell/CommandCompletionTest.java failures on Windows
Backport-of: 3955b037da
2022-04-29 05:39:23 +07:00
Goetz Lindenmaier
52b99a8043 8277441: CompileQueue::add fails with assert(_last->next() == __null) failed: not last
Backport-of: 90f96fb4db
2022-04-29 05:39:23 +07:00
Goetz Lindenmaier
b79d4a689e 8274714: Incorrect verifier protected access error message
Backport-of: e39bdc9ddb
2022-04-29 05:39:22 +07:00
Goetz Lindenmaier
1861711838 8274658: ISO 4217 Amendment 170 Update
Backport-of: f2404d60de
2022-04-29 05:39:22 +07:00
Bernhard Urban-Forster
4a71ec04a7 8274795: AArch64: avoid spilling and restoring r18 in macro assembler
Reviewed-by: aph
Backport-of: ede3f4e94c
2022-04-29 05:39:22 +07:00
Jie Fu
565b969238 8277777: [Vector API] assert(r->is_XMMRegister()) failed: must be in x86_32.ad
Backport-of: 349328c929
2022-04-29 05:39:21 +07:00
Vladimir Kozlov
57fb014ec6 8276314: [JVMCI] check alignment of call displacement during code installation
Backport-of: 2f4b5405f0
2022-04-29 05:39:21 +07:00
Zhengyu Gu
7f5240ae26 8265150: AsyncGetCallTrace crashes on ResourceMark
Backport-of: 267c024eb5
2022-04-29 05:39:21 +07:00
Zhengyu Gu
814fc632c3 8276177: nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with "assert(def_ik->is_being_redefined()) failed: should be being redefined to get here"
Reviewed-by: goetz
Backport-of: a907b2b144
2022-04-29 05:39:20 +07:00
Goetz Lindenmaier
abf8fc0352 8275650: Problemlist java/io/File/createTempFile/SpecialTempFile.java for Windows 11
Backport-of: 32895ac609
2022-04-29 05:39:20 +07:00
Goetz Lindenmaier
6a6ba4290d 8273704: DrawStringWithInfiniteXform.java failed : drawString with InfiniteXform transform takes long time
Backport-of: acceffcbf7
2022-04-29 05:39:20 +07:00
Aleksey Shipilev
73c208a706 8273162: AbstractSplittableWithBrineGenerator does not create a random salt
Backport-of: 5e1df2c7d7
2022-04-29 05:39:19 +07:00
Aleksey Shipilev
ecee063ff5 8273351: bad tag in jdk.random module-info.java
Backport-of: d4177a98c1
2022-04-29 05:39:19 +07:00
Aleksey Shipilev
9632d98d90 8247980: Exclusive execution of java/util/stream tests slows down tier1
Backport-of: 544193a3bb
2022-04-29 05:39:19 +07:00
Aleksey Shipilev
699a74e849 8272327: Shenandoah: Avoid enqueuing duplicate string candidates
Backport-of: ee8bf10d32
2022-04-29 05:39:18 +07:00
Aleksey Shipilev
7bdb37587e 8278115: gc/stress/gclocker/TestGCLockerWithSerial.java has duplicate -Xmx
Backport-of: 0fbd2713f1
2022-04-29 05:39:18 +07:00
Aleksey Shipilev
1d33e5cb56 8278116: runtime/modules/LoadUnloadModuleStress.java has duplicate -Xmx
Backport-of: bef5c7a286
2022-04-29 05:39:18 +07:00
Aleksey Shipilev
0673b647b0 8277992: Add fast jdk_svc subtests to jdk:tier3
Backport-of: 30f0c64753
2022-04-29 05:39:17 +07:00
Aleksey Shipilev
082345b52f 8278016: Add compiler tests to tier{2,3}
Backport-of: f180a4591f
2022-04-29 05:39:17 +07:00
Aleksey Shipilev
b63207415f 8277385: Zero: Enable CompactStrings support
Backport-of: 3f847fe89a
2022-04-29 05:39:17 +07:00
Aleksey Shipilev
a6afe30ec7 8275586: Zero: Simplify interpreter initialization
Backport-of: 3613ce7c7d
2022-04-29 05:39:16 +07:00
Vladimir Kempik
281b7e0377 8269175: [macosx-aarch64] wrong CPU speed in hs_err file
Backport-of: bcbe3845d9
2022-04-29 05:39:16 +07:00
Goetz Lindenmaier
2476c5b3bf 8278822: Bump update version for OpenJDK: jdk-17.0.3
Reviewed-by: clanger
2022-04-29 05:39:16 +07:00
Vitaly Provodin
e9fa8fde16 JBR-4370 create a test checking all JBR artifacts exist - add exit code 2022-04-27 14:59:49 +07:00
Vladimir Kempik
627b9cfb0c JBR-4423: Remove excessive warnings after JBR-4291 2022-04-26 19:42:24 +03:00
Vitaly Provodin
fd4bc7dfcd JBR-4370 create a test checking all JBR artifacts exist 2022-04-26 11:31:02 +07:00
Anton Tarasov
dc88d4e63f JBR-3906 JBR for Linux aarch64 with JCEF is missing, is there any support plan? 2022-04-23 17:08:26 +07:00
Atrem Bochkarev
67d6fd157a JBR-4094: fixed MouseEventAfterHideAndShowBrowserTest 2022-04-23 04:35:03 +03:00
Vitaly Provodin
56d463d29a Revert "JBR-4325 Implement creating an event to call NSAccessibilityShowMenuAction"
This reverts commit f6cf71ce68.
2022-04-22 18:28:22 +07:00
Phil Race
aa625213b5 8223543: [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java has issues
Reviewed-by: serb, azvegint, aivanov
2022-04-22 00:07:32 +02:00
Alexey Ushakov
1538f1e6ad Revert "JBR-1380: [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java works incorrectly"
This reverts commit b7449a593a.
2022-04-22 00:02:31 +02:00
Alexey Ushakov
47017e1e14 Revert "JBR-1388 [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java fails on macOS Mojave"
This reverts commit 603f214e2c.
2022-04-22 00:02:00 +02:00
Roger Riggs
decffd42a5 JBR-3483 8282008: Incorrect handling of quoted arguments in ProcessBuilder
Reviewed-by: bchristi
2022-04-21 16:24:43 +03:00
Anton Tarasov
f189c552a6 JBR-4355 javax/swing/GraphicsConfigNotifier/StalePreferredSize.java: # C [libobjc.A.dylib+0x90ff] objc_release+0x1f
(cherry picked from commit c0b2b59d4a)
2022-04-21 13:42:12 +03:00
Anton Tarasov
c20bd5a658 JBR-4389 [update_1] IDEA UI font becomes too large after disconnecting the external monitor / sleep 2022-04-21 11:53:22 +03:00
Anton Tarasov
e900d17295 JBR-4389 IDEA UI font becomes too large after disconnecting the external monitor / sleep 2022-04-21 11:32:24 +03:00
Dmitry Batrak
35f18de090 remove duplicate bundled JetBrains Mono bold italic font
following JBR-4402

(cherry picked from commit b7e5d3cfcf)
2022-04-20 21:50:44 +03:00
Dmitry Batrak
47d473b1a1 JBR-4402 The wrong text is rendered in editor 2022-04-20 21:07:42 +03:00
Maxim Kartashev
70dde74a8f JBR-4062 Undo parts of JBR-4145 that have become obsolete by upstream changes. 2022-04-20 16:23:43 +03:00
Andrew Leonard
5745455f66 JBR-4062 8284661: Reproducible assembly builds without relative linking
Reviewed-by: ihse
2022-04-20 15:04:01 +03:00
Zhengyu Gu
a9ce9c763b JBR-4378 8284093: Memory leak: X11SD_DisposeXImage should also free obdata
Reviewed-by: prr, andrew
2022-04-20 01:58:38 -07:00
Andrew Leonard
c5507f0d9a JBR-4062 8284539: Configure --with-source-date=version fails on MacOS
Reviewed-by: erikj, ihse
2022-04-20 11:25:49 +03:00
Magnus Ihse Bursie
8670e275a1 JBR-4062 8282769: BSD date cannot handle all ISO 8601 formats
Reviewed-by: erikj
2022-04-20 11:25:22 +03:00
Martin Doerr
2fc34e9f04 8281811: assert(_base == Tuple) failed: Not a Tuple after JDK-8280799
Backport-of: fcce24c5b3

(cherry picked from commit cdf144edba)
2022-04-20 00:35:15 +03:00
Dmitry Batrak
fae9ac43a5 JBR-4398 Gear emoji displayed monochrome in Editor since 2022.1
this reverts JBR-4072 and associated fixes (JBR-4194, JBR-4314)
2022-04-19 22:10:45 +03:00
Konstantin Bulenkov
68db465ae1 Added support for otf into the build scripts. Updated prebuild maps. 2022-04-19 15:54:03 +02:00
Vitaly Provodin
0aa9b4f7de JBR-4297 add a regression test
(cherry picked from commit 8e94fff6aa)
2022-04-18 07:25:55 +07:00
Vitaly Provodin
d40250ddf5 Merge pull request #132
JBR-4392 - use only loaded classes when collecting affected classes
2022-04-17 03:42:41 +07:00
Vladimir Dvorak
63b1c11712 JBR-4386 - disable AllowEnhancedClassRedefinition in jfr 2022-04-17 03:39:37 +07:00
Vladimir Dvorak
1eab1527d5 JBR-4392 - use only loaded classes when collecting affected classes 2022-04-16 12:30:27 +02:00
Vitaly Provodin
9b5ebaaa5a exclude java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java due to 8280392 2022-04-16 05:55:55 +07:00
Konstantin Bulenkov
a37db66560 Update JetBrains Mono font to 2.225 2022-04-15 22:32:25 +02:00
Dmitry Batrak
39dd2f608c JBR-4382 [i3] All dialogs are tiled
(cherry picked from commit 800220af16)
2022-04-15 22:27:51 +03:00
Konstantin Bulenkov
890efa0ea8 bundle Inter font 2022-04-14 19:04:47 +02:00
Anton Tarasov
7efb0075bc JBR-4362 [mac] system menu opens with duplicated items
(cherry picked from commit e32defe49d)
2022-04-12 15:50:50 +03:00
Alexey Ushakov
413ff95d63 Removed comma from tag parsing result 2022-04-11 19:41:28 +02:00
Alexey Ushakov
bfa7a36237 JBR-4363 Changes in fonts rendering between JBR11 and JBR17
Resolved merge artifact after applying IDEA-57233 fix
2022-04-11 19:34:30 +02:00
Andrew Leonard
138596467d JBR-4062 8284437: Building from different users/workspace is not always deterministic
Reviewed-by: erikj
(cherry picked from commit 4451257b14)
2022-04-08 10:41:39 +03:00
Dmitry Batrak
f7a0716ccd JBR-4346 [Xfce] Windows are moved unexpectedly between workspaces when modal dialog is shown
(cherry picked from commit ad299f1e74)
2022-04-06 22:41:56 +03:00
Zhengyu Gu
bdb9d3f12f JBR-4360 284023: java.sun.awt.X11GraphicsDevice.getDoubleBufferVisuals() leaks XdbeScreenVisualInfo
Reviewed-by: prr, serb
2022-04-06 16:07:42 +03:00
Maxim Kartashev
1e8d2c0873 JBR-4357 8284033: Leak XVisualInfo in getAllConfigs in awt_GraphicsEnv.c
Reviewed-by: serb, prr
2022-04-04 23:03:35 -07:00
Vladimir Dvorak
360f8f332c Remove version-numbers left over from the merge of dcevm17 2022-04-05 04:38:32 +07:00
Vladimir Dvorak
13512decff JBR-4352 - fix AARCH64 compilation issues
- use correct INCLUDE_JFR condition for jfr code
- exclude jvmtiEnhancedRedefineClasses.cpp if INCLUDE_JVMTI=0
2022-04-02 16:33:54 +01:00
Vitaly Provodin
28ebc0c2e0 excludejava/awt/Mouse/GetMousePositionTest/GetMousePositionWithPopup.java on windows
and java/io/File/createTempFile/SpecialTempFile.java on windows11
2022-04-02 06:29:47 +07:00
Anton Tarasov
9a35ca0b25 JBR-4349 jb/java/awt/Toolkit/LWCToolkitInvokeAndWaitTest.java: Test FAILED! (not found in the log: “lost”) 2022-04-01 21:34:03 +03:00
Anton Tarasov
e424a5bf19 JBR-4347 jb/java/awt/Toolkit/AWTThreadingCMenuTest.java fails by ClassNotFoundException 2022-04-01 21:32:14 +03:00
Alexey Ushakov
ca4d838caf 8273355: Flickering on tooltip appearance IntelliJ IDEA 2021.2.1
Reviewed-by: serb, aghaisas
2022-03-30 20:42:06 +02:00
Alexey Ushakov
6ed5106466 Revert "JBR-3727 JBR17-Metal: Flickering on tooltip appearance"
This reverts commit eaa9c1618e.
2022-03-30 20:27:45 +02:00
Dmitry Batrak
098a50d91a JBR-4334 java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java fails
re-fix JBR-4306 in a different way

(cherry picked from commit 3b5ded0d02)
2022-03-30 12:16:24 +03:00
Dmitry Batrak
050990303b JBR-4334 java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java fails
revert original fix for JBR-4306

(cherry picked from commit 0f33031484)
2022-03-30 12:16:24 +03:00
Anton Tarasov
9f9416a12e JBR-4328 remove LWCToolkit.unsafeNonblockingExecute
(cherry picked from commit 9a3f31a6c4)
2022-03-28 22:00:59 +03:00
Anton Tarasov
b6cb489fee JBR-4134 PyCharm is slow and unusable on MacBook Pro with M1
(cherry picked from commit 36190505f5)
2022-03-28 22:00:52 +03:00
Anton Tarasov
446535b706 JBR-4284 Sub items of main menu options are not displayed
A regression of JBR-4208 LWCToolkit.invokeAndWait should not stuck on invocation loss

(cherry picked from commit c464e4748e)
2022-03-28 21:59:41 +03:00
Anton Tarasov
c18934bb98 JBR-4119 UI freezes at sun.lwawt.macosx.CAccessibility.getChildrenAndRoles
(cherry picked from commit 6ba79774d8)
2022-03-28 21:59:36 +03:00
Anton Tarasov
e8a6e8bd6e JBR-4106 PyCharm hangs with 100% CPU usage on one core 2022-03-28 21:59:28 +03:00
Mikhail Grishchenko
4a7241931f JBR-3975 print Teamcity messages 2022-03-26 05:32:40 +07:00
Mikhail Grishchenko
b45b8c9913 JBR-3975 add processing of "." java version separator 2022-03-24 08:55:51 +07:00
Artem Semenov
f6cf71ce68 JBR-4325 Implement creating an event to call NSAccessibilityShowMenuAction 2022-03-23 21:29:36 +03:00
Dmitry Batrak
803039d6db JBR-4306 Robot doesn't work as expected in some cases on macOS
(cherry picked from commit 7d69734465)
2022-03-23 12:53:42 +03:00
Vladimir Dvorak
436223316f JBR-4312 - fix crash call ResolvedMethodTable from ServiceThread
adjust_metod_entries_dcevm incorrectly changed the hashes of resolved
method oops stored in ResolvedMethodTable. Now all oops of old methods
are first removed, then updated and then added to table again
2022-03-23 11:08:36 +07:00
Dmitry Batrak
9a0ab296fe better handle multi-monitor configurations in tests related to macOS spaces
Detect the presence of an additional space by looking at number of spaces for the first monitor, not at the total number of spaces.
The latter is larger than one in a multi-monitor configuration, as each monitor corresponds to a separate space.
This approach should be better than the original one, but it relies on the primary (default) monitor to be mentioned first
in the plist file, which isn't known to be always true.

(cherry picked from commit 9040fd56cd)
2022-03-21 21:30:12 +03:00
Artem Semenov
bf4a191246 JBR-4318 On MacOS, some context menu items are not voiced 2022-03-21 15:40:18 +03:00
Andrew Leonard
cdfff8f6ac JBR-4062 8283315: jrt-fs.jar not always deterministically built
Reviewed-by: ihse
2022-03-21 14:03:00 +03:00
Alexey Ushakov
6d6de1034a JBR-3827 SIGILL at [libsystem_kernel] __kill in Java Exception at -[CDragSource convertData:]
Added check for drag source
2022-03-18 18:36:10 +01:00
Vitaly Provodin
2333999906 JBR-4303 add a regression test
(cherry picked from commit bc7cb5711b)
2022-03-18 09:50:29 +07:00
Alexey Ushakov
6ffcd2bf91 JBR-3366 SIGILL at [libsystem_kernel] __kill in NSWindowStyleMaskFullScreen cleared on a window outside of a full screen transition
Wrapped the native exception and added logging
2022-03-17 18:09:49 +01:00
Artem Semenov
822b4a8c49 JBR-4235 Context menu not readable after opening on Mac OS 2022-03-17 16:34:39 +03:00
Dmitry Batrak
debc6336c0 JBR-4314 2022.1 EAP version's JBR use incorrect fallback font to render Chinese characters in macOS
(cherry picked from commit 82048d1d73)
2022-03-17 15:15:34 +03:00
Mikhail Grishchenko
1f93154f62 JBR-3975 add PASSED message in check_jbr_size.sh 2022-03-17 03:35:05 +07:00
Mikhail Grishchenko
9f069ca59e JBR-3975 Fix regexp in check_jbr_size.sh
(cherry picked from commit 23131fc435)
2022-03-17 01:45:51 +07:00
Vladimir Kempik
53f1a647fd JBR-4309: jdk/tools/launcher/modules/illegalaccess/IllegalAccessTest.java fails after JBR-4291 2022-03-14 11:27:16 +03:00
Alexander Lobas
7d31563471 JBR-4305 (#119)
* IDEA-283934 Top panel (toolbar, Editor tabs) hides under the Mac menu in full-screen mode

* IDEA-283934 Top panel (toolbar, Editor tabs) hides under the Mac menu in full-screen mode

* JBR-4305 IDEA-283934 Top panel (toolbar, Editor tabs) hides under the Mac menu in full-screen mode

* JBR-4305 IDEA-283934 Top panel (toolbar, Editor tabs) hides under the Mac menu in full-screen mode
2022-03-10 20:23:11 +01:00
Alexey Ushakov
36ded60698 JBR-3365 SIGILL at [libsystem_kernel] __kill in java.lang.RuntimeException: Failed to convert, no screen / primaryScreen
Wrapped the native exception and added logging
2022-03-10 14:28:18 +01:00
Dmitry Batrak
d53de90f8a JBR-3751 Window content isn't rendered with some window managers on Linux
(cherry picked from commit 8d22e4dcb0)
2022-03-09 13:40:40 +03:00
VladimirKempik
6196076b95 JBR-4291: Ability to ignore all add-opens 2022-03-04 15:05:43 +03:00
Egor Ushakov
11f2cf63c3 exclude jdb based tests 2020-01-24 13:27:50 +03:00
Egor Ushakov
485f23c77e more tests excluded 2020-01-24 13:24:36 +03:00
Egor Ushakov
c98a1dddf6 more tests excluded 2020-01-24 13:06:19 +03:00
Egor Ushakov
6c9c710e08 exclude lists 2020-01-23 19:08:11 +03:00
Egor Ushakov
a9764fa161 fix some tests 2020-01-23 16:35:19 +03:00
Egor Ushakov
c70650a44a use jb jdi for tests 2020-01-23 16:29:42 +03:00
1727 changed files with 47495 additions and 18879 deletions

View File

@@ -12,6 +12,10 @@ on:
required: true
default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows aarch64, Windows x64, macOS x64"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
prerequisites:
name: Prerequisites
@@ -19,6 +23,7 @@ jobs:
outputs:
should_run: ${{ steps.check_submit.outputs.should_run }}
bundle_id: ${{ steps.check_bundle_id.outputs.bundle_id }}
jdk_version: ${{ steps.check_jdk_versions.outputs.jdk_version }}
platform_linux_additional: ${{ steps.check_platforms.outputs.platform_linux_additional }}
platform_linux_x64: ${{ steps.check_platforms.outputs.platform_linux_x64 }}
platform_linux_x86: ${{ steps.check_platforms.outputs.platform_linux_x86 }}
@@ -51,7 +56,7 @@ jobs:
if: steps.check_submit.outputs.should_run != 'false'
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
if: steps.check_submit.outputs.should_run != 'false'
@@ -66,20 +71,40 @@ jobs:
run: "echo '${{ steps.check_deps.outputs.dependencies }}'"
if: steps.check_submit.outputs.should_run != 'false'
- name: Determine full JDK versions
id: check_jdk_versions
shell: bash
run: |
FEATURE=${{ fromJson(steps.check_deps.outputs.dependencies).DEFAULT_VERSION_FEATURE }}
INTERIM=${{ fromJson(steps.check_deps.outputs.dependencies).DEFAULT_VERSION_INTERIM }}
UPDATE=${{ fromJson(steps.check_deps.outputs.dependencies).DEFAULT_VERSION_UPDATE }}
PATCH=${{ fromJson(steps.check_deps.outputs.dependencies).DEFAULT_VERSION_PATCH }}
if [ "x${PATCH}" != "x0" ]; then
V=${FEATURE}.${INTERIM}.${UPDATE}.${PATCH}
elif [ "x${UPDATE}" != "x0" ]; then
V=${FEATURE}.${INTERIM}.${UPDATE}
elif [ "x${INTERIM}" != "x0" ]; then
V={FEATURE}.${INTERIM}
else
V=${FEATURE}
fi
echo "::set-output name=jdk_version::${V}"
if: steps.check_submit.outputs.should_run != 'false'
- name: Determine the jtreg ref to checkout
run: "echo JTREG_REF=jtreg-${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_VERSION }}+${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_BUILD }} >> $GITHUB_ENV"
if: steps.check_submit.outputs.should_run != 'false'
- name: Check if a jtreg image is present in the cache
id: jtreg
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/jtreg/
key: jtreg-${{ env.JTREG_REF }}-v1
if: steps.check_submit.outputs.should_run != 'false'
- name: Checkout the jtreg source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "openjdk/jtreg"
ref: ${{ env.JTREG_REF }}
@@ -97,7 +122,7 @@ jobs:
if: steps.check_submit.outputs.should_run != 'false' && steps.jtreg.outputs.cache-hit != 'true'
- name: Store jtreg for use by later steps
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jtreg_${{ steps.check_bundle_id.outputs.bundle_id }}
path: ~/jtreg/
@@ -121,7 +146,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
@@ -129,13 +154,13 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -151,21 +176,21 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
if: steps.jtreg_restore.outcome == 'failure'
- name: Checkout gtest sources
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
@@ -197,7 +222,7 @@ jobs:
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jdk-linux-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
@@ -250,7 +275,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
@@ -258,11 +283,11 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -278,14 +303,14 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
@@ -293,14 +318,14 @@ jobs:
- name: Restore build artifacts
id: build_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x64${{ matrix.artifact }}
continue-on-error: true
- name: Restore build artifacts (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x64${{ matrix.artifact }}
@@ -322,6 +347,7 @@ jobs:
echo "imageroot=`dirname ${imageroot}`" >> $GITHUB_ENV
- name: Run tests
id: run_tests
run: >
JDK_IMAGE_DIR=${{ env.imageroot }}
TEST_IMAGE_DIR=${HOME}/jdk-linux-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_linux-x64_bin-tests${{ matrix.artifact }}
@@ -337,10 +363,11 @@ jobs:
JTREG="JAVA_OPTIONS=-XX:-CreateCoredumpOnCrash"
- name: Check that all tests executed successfully
if: always()
if: steps.run_tests.outcome != 'skipped'
run: >
if ! grep --include=test-summary.txt -lqr build/*/test-results -e "TEST SUCCESS" ; then
cat build/*/test-results/*/text/newfailures.txt ;
cat build/*/test-results/*/text/other_errors.txt ;
exit 1 ;
fi
@@ -371,14 +398,14 @@ jobs:
- name: Persist test results
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/linux-x64${{ matrix.artifact }}_testresults_${{ env.logsuffix }}.zip
continue-on-error: true
- name: Persist test outputs
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/linux-x64${{ matrix.artifact }}_testsupport_${{ env.logsuffix }}.zip
continue-on-error: true
@@ -431,7 +458,7 @@ jobs:
gnu-arch: powerpc64le
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
@@ -439,13 +466,13 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -461,14 +488,14 @@ jobs:
- name: Restore build JDK
id: build_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x64_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x64
continue-on-error: true
- name: Restore build JDK (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x64_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x64
@@ -499,7 +526,7 @@ jobs:
- name: Cache sysroot
id: cache-sysroot
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/sysroot-${{ matrix.debian-arch }}/
key: sysroot-${{ matrix.debian-arch }}-${{ hashFiles('jdk/.github/workflows/submit.yml') }}
@@ -579,7 +606,7 @@ jobs:
# Reduced 32-bit build uses the same boot JDK as 64-bit build
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
@@ -587,13 +614,13 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -609,21 +636,21 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
if: steps.jtreg_restore.outcome == 'failure'
- name: Checkout gtest sources
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
@@ -662,7 +689,7 @@ jobs:
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jdk-linux-x86${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
@@ -716,7 +743,7 @@ jobs:
# Reduced 32-bit build uses the same boot JDK as 64-bit build
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).LINUX_X64_BOOT_JDK_URL }}"
@@ -724,11 +751,11 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -744,14 +771,14 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
@@ -759,14 +786,14 @@ jobs:
- name: Restore build artifacts
id: build_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x86${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x86${{ matrix.artifact }}
continue-on-error: true
- name: Restore build artifacts (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-linux-x86${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-linux-x86${{ matrix.artifact }}
@@ -788,6 +815,7 @@ jobs:
echo "imageroot=`dirname ${imageroot}`" >> $GITHUB_ENV
- name: Run tests
id: run_tests
run: >
JDK_IMAGE_DIR=${{ env.imageroot }}
TEST_IMAGE_DIR=${HOME}/jdk-linux-x86${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_linux-x86_bin-tests${{ matrix.artifact }}
@@ -803,10 +831,11 @@ jobs:
JTREG="JAVA_OPTIONS=-XX:-CreateCoredumpOnCrash"
- name: Check that all tests executed successfully
if: always()
if: steps.run_tests.outcome != 'skipped'
run: >
if ! grep --include=test-summary.txt -lqr build/*/test-results -e "TEST SUCCESS" ; then
cat build/*/test-results/*/text/newfailures.txt ;
cat build/*/test-results/*/text/other_errors.txt ;
exit 1 ;
fi
@@ -837,14 +866,14 @@ jobs:
- name: Persist test results
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/linux-x86${{ matrix.artifact }}_testresults_${{ env.logsuffix }}.zip
continue-on-error: true
- name: Persist test outputs
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/linux-x86${{ matrix.artifact }}_testsupport_${{ env.logsuffix }}.zip
continue-on-error: true
@@ -866,34 +895,45 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_URL }}"
BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_SHA256 }}"
steps:
- name: Restore cygwin installer from cache
id: cygwin-installer
uses: actions/cache@v3
with:
path: ~/cygwin/setup-x86_64.exe
key: cygwin-installer
- name: Download cygwin installer
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
if: steps.cygwin-installer.outputs.cache-hit != 'true'
- name: Restore cygwin packages from cache
id: cygwin
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/cygwin/packages
key: cygwin-packages-${{ runner.os }}-v1
- name: Install cygwin
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.3.5-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -955,34 +995,45 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_URL }}"
BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_SHA256 }}"
steps:
- name: Restore cygwin installer from cache
id: cygwin-installer
uses: actions/cache@v3
with:
path: ~/cygwin/setup-x86_64.exe
key: cygwin-installer
- name: Download cygwin installer
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
if: steps.cygwin-installer.outputs.cache-hit != 'true'
- name: Restore cygwin packages from cache
id: cygwin
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/cygwin/packages
key: cygwin-packages-${{ runner.os }}-v1
- name: Install cygwin
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.3.5-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -998,7 +1049,7 @@ jobs:
if: steps.bootjdk.outputs.cache-hit != 'true'
- name: Checkout gtest sources
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
@@ -1006,14 +1057,14 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
@@ -1053,7 +1104,7 @@ jobs:
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jdk-windows-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
@@ -1107,7 +1158,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_URL }}"
@@ -1115,11 +1166,11 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -1134,29 +1185,40 @@ jobs:
Get-ChildItem "$HOME\bootjdk\$env:BOOT_JDK_VERSION\*\*" | Move-Item -Destination "$HOME\bootjdk\$env:BOOT_JDK_VERSION"
if: steps.bootjdk.outputs.cache-hit != 'true'
- name: Restore cygwin installer from cache
id: cygwin-installer
uses: actions/cache@v3
with:
path: ~/cygwin/setup-x86_64.exe
key: cygwin-installer
- name: Download cygwin installer
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
if: steps.cygwin-installer.outputs.cache-hit != 'true'
- name: Restore cygwin packages from cache
id: cygwin
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/cygwin/packages
key: cygwin-packages-${{ runner.os }}-v1
- name: Install cygwin
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.3.5-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
@@ -1164,14 +1226,14 @@ jobs:
- name: Restore build artifacts
id: build_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-windows-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-windows-x64${{ matrix.artifact }}
continue-on-error: true
- name: Restore build artifacts (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-windows-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-windows-x64${{ matrix.artifact }}
@@ -1196,6 +1258,7 @@ jobs:
run: echo ("imageroot=" + (Get-ChildItem -Path $HOME/jdk-windows-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_windows-x64_bin${{ matrix.artifact }} -Filter release -Recurse -ErrorAction SilentlyContinue -Force).DirectoryName) | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8
- name: Run tests
id: run_tests
run: >
$env:Path = "$HOME\cygwin\cygwin64\bin;$HOME\cygwin\cygwin64\bin;$env:Path" ;
$env:Path = $env:Path -split ";" -match "C:\\Windows|PowerShell|cygwin" -join ";" ;
@@ -1214,10 +1277,11 @@ jobs:
JTREG="JAVA_OPTIONS=-XX:-CreateCoredumpOnCrash"
- name: Check that all tests executed successfully
if: always()
if: steps.run_tests.outcome != 'skipped'
run: >
if ((Get-ChildItem -Path build\*\test-results\test-summary.txt -Recurse | Select-String -Pattern "TEST SUCCESS" ).Count -eq 0) {
Get-Content -Path build\*\test-results\*\*\newfailures.txt ;
Get-Content -Path build\*\test-results\*\*\other_errors.txt ;
exit 1
}
@@ -1250,14 +1314,14 @@ jobs:
- name: Persist test results
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/windows-x64${{ matrix.artifact }}_testresults_${{ env.logsuffix }}.zip
continue-on-error: true
- name: Persist test outputs
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/windows-x64${{ matrix.artifact }}_testsupport_${{ env.logsuffix }}.zip
continue-on-error: true
@@ -1281,7 +1345,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_URL }}"
@@ -1289,13 +1353,13 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -1311,21 +1375,21 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
if: steps.jtreg_restore.outcome == 'failure'
- name: Checkout gtest sources
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
@@ -1357,7 +1421,7 @@ jobs:
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jdk-macos-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
@@ -1383,7 +1447,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_URL }}"
@@ -1391,13 +1455,13 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -1413,21 +1477,21 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
if: steps.jtreg_restore.outcome == 'failure'
- name: Checkout gtest sources
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
@@ -1460,7 +1524,7 @@ jobs:
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: transient_jdk-macos-aarch64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
@@ -1514,7 +1578,7 @@ jobs:
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_INTERIM }}.${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_UPDATE }}"
JDK_VERSION: "${{ needs.prerequisites.outputs.jdk_version }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_URL }}"
@@ -1522,11 +1586,11 @@ jobs:
steps:
- name: Checkout the source
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
@@ -1542,14 +1606,14 @@ jobs:
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
@@ -1557,14 +1621,14 @@ jobs:
- name: Restore build artifacts
id: build_restore
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-macos-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-macos-x64${{ matrix.artifact }}
continue-on-error: true
- name: Restore build artifacts (retry)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: transient_jdk-macos-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jdk-macos-x64${{ matrix.artifact }}
@@ -1592,6 +1656,7 @@ jobs:
echo "imageroot=`dirname ${imageroot}`" >> $GITHUB_ENV
- name: Run tests
id: run_tests
run: >
JDK_IMAGE_DIR=${{ env.imageroot }}
TEST_IMAGE_DIR=${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}
@@ -1607,10 +1672,11 @@ jobs:
JTREG="JAVA_OPTIONS=-XX:-CreateCoredumpOnCrash"
- name: Check that all tests executed successfully
if: always()
if: steps.run_tests.outcome != 'skipped'
run: >
if ! grep --include=test-summary.txt -lqr build/*/test-results -e "TEST SUCCESS" ; then
cat build/*/test-results/*/text/newfailures.txt ;
cat build/*/test-results/*/text/other_errors.txt ;
exit 1 ;
fi
@@ -1641,14 +1707,14 @@ jobs:
- name: Persist test results
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/macos-x64${{ matrix.artifact }}_testresults_${{ env.logsuffix }}.zip
continue-on-error: true
- name: Persist test outputs
if: always()
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
path: ~/macos-x64${{ matrix.artifact }}_testsupport_${{ env.logsuffix }}.zip
continue-on-error: true
@@ -1671,7 +1737,7 @@ jobs:
steps:
- name: Determine current artifacts endpoint
id: actions_runtime
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
script: "return { url: process.env['ACTIONS_RUNTIME_URL'], token: process.env['ACTIONS_RUNTIME_TOKEN'] }"
@@ -1694,7 +1760,7 @@ jobs:
done
- name: Fetch remaining artifacts (test results)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
path: test-results
@@ -1711,7 +1777,7 @@ jobs:
done
- name: Upload a combined test results artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: test-results_${{ needs.prerequisites.outputs.bundle_id }}
path: test-results

View File

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

View File

@@ -11,8 +11,8 @@ can be found on the [releases page](https://github.com/JetBrains/JetBrainsRuntim
| IDE Version | Latest JBR | Date Released |
| --- | --- | --- |
| 2022.1 | [17_0_2-b315.1](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr17_0_2b315.1) | 09-Feb-2022 |
| 2021.3 | [17_0_1-b164.8](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr17_0_1b164.8) | 15-Nov-2021 |
| 2022.2 | [17.0.4-b469.46](https://github.com/JetBrains/JetBrainsRuntime/releases/tag/jbr-release-17.0.4b469.46)| 22-Aug-2022 |
## Contents
- [Welcome to JetBrains Runtime](#jetbrains-runtime)

View File

@@ -114,8 +114,8 @@ cd "$SCRIPT_DIR/.." ; OPENJDK_DIR=`pwd`
IDEA_MAKE="$OPENJDK_DIR/make/ide/idea/jdk"
IDEA_TEMPLATE="$IDEA_MAKE/template"
cp -rn "$TOPLEVEL_DIR/jb/project/idea-project-files"/* "$IDEA_OUTPUT"
cp -rn "$IDEA_TEMPLATE"/* "$IDEA_OUTPUT"
cp -r "$TOPLEVEL_DIR/jb/project/idea-project-files"/* "$IDEA_OUTPUT"
cp -r "$IDEA_TEMPLATE"/* "$IDEA_OUTPUT"
#override template
if [ -d "$TEMPLATES_OVERRIDE" ] ; then
@@ -321,4 +321,4 @@ if [ "$VERBOSE" = true ] ; then
echo "
Now you can open \"$IDEA_PROJECT_DIR\" as IDEA project
You can also run 'bash \"$IDEA_OUTPUT/jdk-clion/update-project.sh\"' to generate Clion project"
fi
fi

View File

@@ -507,7 +507,7 @@
</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/jtreg/lastSuccessfulBuild/artifact">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>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>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>

View File

@@ -848,7 +848,7 @@ containing `lib/jtreg.jar` etc.
The [Adoption Group](https://wiki.openjdk.java.net/display/Adoption) provides
recent builds of jtreg [here](
https://ci.adoptopenjdk.net/view/Dependencies/job/jtreg/lastSuccessfulBuild/artifact).
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
`jtreg` directory that you just unpacked.

View File

@@ -193,7 +193,9 @@ TEST FAILURE</code></pre>
<h4 id="aot_modules-1">AOT_MODULES</h4>
<p>Generate AOT modules before testing for the specified module, or set of modules. If multiple modules are specified, they should be separated by space (or, to help avoid quoting issues, the special value <code>%20</code>).</p>
<h4 id="retry_count">RETRY_COUNT</h4>
<p>Retry failed tests up to a set number of times. Defaults to 0.</p>
<p>Retry failed tests up to a set number of times, until they pass. This allows to pass the tests with intermittent failures. Defaults to 0.</p>
<h4 id="repeat_count">REPEAT_COUNT</h4>
<p>Repeat the tests up to a set number of times, stopping at first failure. This helps to reproduce intermittent test failures. Defaults to 0.</p>
<h3 id="gtest-keywords">Gtest keywords</h3>
<h4 id="repeat">REPEAT</h4>
<p>The number of times to repeat the tests (<code>--gtest_repeat</code>).</p>

View File

@@ -419,7 +419,15 @@ modules. If multiple modules are specified, they should be separated by space
#### RETRY_COUNT
Retry failed tests up to a set number of times. Defaults to 0.
Retry failed tests up to a set number of times, until they pass.
This allows to pass the tests with intermittent failures.
Defaults to 0.
#### REPEAT_COUNT
Repeat the tests up to a set number of times, stopping at first failure.
This helps to reproduce intermittent test failures.
Defaults to 0.
### Gtest keywords

View File

@@ -1,7 +1,55 @@
FROM i386/ubuntu:xenial
# NOTE: This Dockerfile is meant to be used from the mkdocker_x86.sh script.
RUN linux32 apt-get update && apt-get install -y --no-install-recommends apt-utils
COPY jbrsdk-11.0.5-b1 /jbrsdk-11.0.5-b1
RUN linux32 apt-get -y install file build-essential zip unzip curl libx11-dev libxext-dev \
libxrender-dev libxrandr-dev libxtst-dev libxt-dev libcups2-dev libasound2-data \
libpng12-0 libasound2 libfreetype6 libfontconfig1-dev libasound2-dev autoconf
# Pull a concrete version of Linux that does NOT receive updates after it's
# been created. This is so that the image is as stable as possible to make
# image creation reproducible.
# NB: this also means there may be no security-related fixes there, need to
# move the version to the next manually.
#FROM i386/ubuntu:xenial
#FROM i386/ubuntu:bionic
FROM i386/ubuntu:focal
RUN linux32 \
apt-get update && apt-get install -y --no-install-recommends apt-utils
RUN export DEBIAN_FRONTEND=noninteractive \
export DEBCONF_NONINTERACTIVE_SEEN=true && \
echo 'tzdata tzdata/Areas select Etc' | debconf-set-selections; \
echo 'tzdata tzdata/Zones/Etc select UTC' | debconf-set-selections; \
linux32 \
apt-get -y install \
autoconf \
build-essential \
curl \
file \
git \
libx11-dev \
libxext-dev \
libxrender-dev \
libxrandr-dev \
libxtst-dev \
libxt-dev \
libcups2-dev \
libasound2-data \
# libpng12-0 \
libasound2 \
libfreetype6 \
libfontconfig1-dev \
libasound2-dev \
rsync \
unzip \
zip
RUN linux32 \
apt-get -y install \
g++-10 \
gcc-10 && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 && \
apt-get clean -qy && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# Set up boot JDK for building
COPY boot_jdk_x86.tar.gz /jdk17/
RUN cd /jdk17 && tar --strip-components=1 -xzf boot_jdk_x86.tar.gz && rm /jdk17/boot_jdk_x86.tar.gz
ENV BOOT_JDK=/jdk17
RUN git config --global user.email "teamcity@jetbrains.com" && \
git config --global user.name "builduser"

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building AArch64 variant
# of the JetBrains Runtime version 17.

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building musl AArch64 variant
# of the JetBrains Runtime version 17.

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# This script creates a Docker image suitable for building musl-x64 variant
# of the JetBrains Runtime version 17.

View File

@@ -0,0 +1,26 @@
#!/bin/bash -x
# This script creates a Docker image suitable for building x86 variant
# of the JetBrains Runtime version 17.
BOOT_JDK_REMOTE_FILE=zulu17.34.19-ca-jdk17.0.3-linux_i686.tar.gz
BOOT_JDK_SHA=1c35c374ba0001e675d6e80819d5be900c4e141636d5e484992a8c550be14481
BOOT_JDK_LOCAL_FILE=boot_jdk_x86.tar.gz
if [ ! -f $BOOT_JDK_LOCAL_FILE ]; then
# Obtain "boot JDK" from outside of the container.
wget -nc https://cdn.azul.com/zulu/bin/${BOOT_JDK_REMOTE_FILE} -O $BOOT_JDK_LOCAL_FILE
else
echo "boot JDK \"$BOOT_JDK_LOCAL_FILE\" present, skipping download"
fi
# Verify that what we've downloaded can be trusted.
sha256sum -c - <<EOF
$BOOT_JDK_SHA *$BOOT_JDK_LOCAL_FILE
EOF
docker build -t jetbrains/runtime:jbr17env_x86 -f Dockerfile.x86 .
# NB: the resulting container can (and should) be used without the network
# connection (--network none) during build in order to reduce the chance
# of build contamination.

View File

@@ -1,4 +1,6 @@
#!/bin/sh
#!/bin/bash
set -euo pipefail
# $1 - Boot JDK
# $2 - JBR part of API version

View File

@@ -1,12 +1,15 @@
#!/bin/bash -x
#!/bin/bash
function do_maketest() {
set -euo pipefail
set -x
function check_bundle_type_maketest() {
# check whether last char is 't', if so remove it
if [ "${bundle_type: -1}" == "t" ]; then
echo ${bundle_type%?}
return 1
bundle_type="${bundle_type%?}"
do_maketest=1
else
echo ${bundle_type}
return 0
do_maketest=0
fi
}
@@ -16,22 +19,25 @@ function getVersionProp() {
while getopts ":i?" o; do
case "${o}" in
i)
i="incremental build"
INC_BUILD=1
;;
i) INC_BUILD=1 ;;
esac
done
shift $((OPTIND-1))
if [[ $# -lt 2 ]]; then
echo "Required at least two arguments: build_number bundle_type"
exit 1
fi
build_number=$1
bundle_type=$2
architecture=$3 # aarch64 or x64
# shellcheck disable=SC2034
architecture=${3:-x64} # aarch64 or x64
check_bundle_type_maketest
bundle_type=$(do_maketest)
do_maketest=$?
tag_prefix="jbr-"
OPENJDK_TAG=$(git log --simplify-by-decoration --decorate=short --pretty=short | grep "$tag_prefix" | cut -d "(" -f2 | cut -d ")" -f1 | awk '{print $2}' | sort -t "-" -k 2 -g | tail -n 1)
OPENJDK_TAG=$(git log --simplify-by-decoration --decorate=short --pretty=short | grep "$tag_prefix" | cut -d "(" -f2 | cut -d ")" -f1 | awk '{print $2}' | sort -t "-" -k 2 -g | tail -n 1 | tr -d ",")
VERSION_FEATURE=$(getVersionProp "DEFAULT_VERSION_FEATURE")
VERSION_INTERIM=$(getVersionProp "DEFAULT_VERSION_INTERIM")
VERSION_UPDATE=$(getVersionProp "DEFAULT_VERSION_UPDATE")
@@ -49,6 +55,11 @@ do_reset_changes=0
do_reset_dcevm=0
HEAD_REVISION=0
STATIC_CONF_ARGS=""
common_conf_props_file="jb/project/tools/common/static_conf_args.txt"
if [[ -f "$common_conf_props_file" ]]; then
STATIC_CONF_ARGS=$(<$common_conf_props_file)
fi
OS_NAME=$(uname -s)
# Enable reproducible builds
TZ=UTC
@@ -126,7 +137,7 @@ function update_jsdk_mods() {
# re-create java.base.jmod with updated hashes
tmp=.java.base.$$.tmp
mkdir "$tmp" || exit $?
hash_modules=$("$JSDK"/bin/jmod describe "$__orig_jsdk_mods"/java.base.jmod | grep hashes | awk '{print $2}' | tr '\n' '|' | sed s/\|$//) || exit $?
hash_modules=$("$__jsdk"/bin/jmod describe "$__orig_jsdk_mods"/java.base.jmod | grep hashes | awk '{print $2}' | tr '\n' '|' | sed s/\|$//) || exit $?
"$__jsdk"/bin/jmod extract --dir "$tmp" "$__orig_jsdk_mods"/java.base.jmod || exit $?
rm "$__updated_jsdk_mods"/java.base.jmod || exit $? # temp exclude from path
"$__jsdk"/bin/jmod \

View File

@@ -0,0 +1 @@
--with-vendor-vm-bug-url=https://youtrack.jetbrains.com/issues/JBR

View File

@@ -1,11 +1,46 @@
#!/bin/bash -x
#!/bin/bash
# The following parameter must be specified:
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_aarch64
source jb/project/tools/common/scripts/common.sh
JCEF_PATH=${JCEF_PATH:=./jcef_linux_aarch64}
function do_configure {
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
function is_musl {
libc=$(ldd /bin/ls | grep 'musl' | head -1 | cut -d ' ' -f1)
if [ -z $libc ]; then
@@ -15,73 +50,114 @@ function is_musl {
return 0
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
LIBC_TYPE_SUFFIX=''
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then LIBC_TYPE_SUFFIX='musl-' ; fi
if is_musl; then libc_type_suffix='musl-' ; fi
sh configure \
--with-debug-level=release \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="${JDK_BUILD_NUMBER}" \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| exit $?
make clean CONF=linux-aarch64-server-release || exit $?
make images CONF=linux-aarch64-server-release test-image || exit $?
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}aarch64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-${libc_type_suffix}aarch64-${fastdebug_infix:-}b${build_number%%.*}
JBSDK=${JBRSDK_BASE_NAME}-linux-${LIBC_TYPE_SUFFIX}aarch64-b${build_number}
BASE_DIR=build/linux-aarch64-server-release/images
JSDK=${BASE_DIR}/jdk
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-aarch64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=1
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-aarch64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module_aarch64.patch || do_exit $?
update_jsdk_mods $JSDK $JCEF_PATH/jmods $JSDK/jmods $JSDK_MODS_DIR || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
zip_native_debug_symbols $JSDK "${JBSDK}_diz"
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# NB: --sort=name requires tar1.28
tar $REPRODUCIBLE_TAR_OPTS --sort=name -pcf $JBSDK.tar \
--exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
-C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
touch -c -d @$SOURCE_DATE_EPOCH $JBRSDK.tar
gzip $JBSDK.tar || exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-${libc_type_suffix}test-aarch64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image CONF=$RELEASE_NAME || do_exit $?
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
JBR=$JBR_BASE_NAME-linux-${LIBC_TYPE_SUFFIX}aarch64-b$build_number
grep -v javafx jb/project/tools/common/modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.aarch64
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.aarch64 | sed s/" "//g | sed s/',$'//g) \
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar $REPRODUCIBLE_TAR_OPTS --sort=name -pcf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
touch -c -d @$SOURCE_DATE_EPOCH $JBR.tar
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-${LIBC_TYPE_SUFFIX}test-aarch64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?
do_exit 0

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
@@ -32,6 +35,7 @@ function do_configure {
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
@@ -53,40 +57,43 @@ function create_image_bundle {
__modules=$4
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then libc_type_suffix='musl-' ; fi
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-${libc_type_suffix}x64-${fastdebug_infix:-}b${build_number%%.*}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__arch_name" ] && rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__arch_name"
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__arch_name"/release
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__arch_name"/release > release
mv release "$IMAGES_DIR"/"$__arch_name"/release
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__arch_name"/jmods
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__arch_name" -print0 | LC_ALL=C sort -z | \
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
@@ -107,7 +114,7 @@ case "$bundle_type" in
;;
esac
if [ -z "$INC_BUILD" ]; then
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
@@ -127,6 +134,8 @@ if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle

View File

@@ -1,80 +1,143 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
function do_configure {
linux32 bash configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
$STATIC_CONF_ARGS \
--enable-cds=yes \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
}
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
function is_musl {
libc=$(ldd /bin/ls | grep 'musl' | head -1 | cut -d ' ' -f1)
if [ -z $libc ]; then
# This is not Musl, return 1 == false
return 1
fi
return 0
}
linux32 bash configure \
--with-debug-level=release \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes || exit $?
make clean CONF=linux-x86-server-release || exit $?
make images CONF=linux-x86-server-release test-image || exit $?
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
JBSDK=${JBRSDK_BASE_NAME}-linux-x86-b${build_number}
BASE_DIR=build/linux-x86-server-release/images
JSDK=${BASE_DIR}/jdk
libc_type_suffix=''
fastdebug_infix=''
if is_musl; then libc_type_suffix='musl-' ; fi
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-${libc_type_suffix}x86-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-${libc_type_suffix}x86-${fastdebug_infix:-}b${build_number%%.*}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__root_dir" ] && rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
$JSDK/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__root_dir"
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__root_dir"/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__root_dir"/release > release
mv release "$IMAGES_DIR"/"$__root_dir"/release
cp $IMAGES_DIR/jdk/lib/src.zip "$IMAGES_DIR"/"$__root_dir"/lib
copy_jmods "$__modules" "$__modules_path" "$IMAGES_DIR"/"$__root_dir"/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk "${JBR}_diz"
fi
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__root_dir"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
(cd "$IMAGES_DIR" &&
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
tar $REPRODUCIBLE_TAR_OPTS \
--no-recursion --null -T - -cf "$JBR".tar) || do_exit $?
mv "$IMAGES_DIR"/"$JBR".tar ./"$JBR".tar
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
touch -c -d "@$SOURCE_DATE_EPOCH" "$JBR".tar
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__root_dir"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86-server-release
case "$bundle_type" in
"jcef")
echo "not implemented" && do_exit 1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
# create runtime image bundle
modules=$(grep -v "jdk.internal.vm" jb/project/tools/common/modules.list | xargs | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man -C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
gzip $JBSDK.tar || exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-${libc_type_suffix}test-x86-b${build_number}
echo Creating "$JBRSDK_TEST" ...
[ $do_reset_changes -eq 1 ] && git checkout HEAD jb/project/tools/common/modules.list src/java.desktop/share/classes/module-info.java
make test-image CONF=$RELEASE_NAME || do_exit $?
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
JBR=$JBR_BASE_NAME-linux-x86-b$build_number
grep -v javafx jb/project/tools/common/modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g | sed s/,$//g) --output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar -pcf $JBR.tar -C $BASE_DIR $JBR_BUNDLE || exit $?
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' --exclude='test/hotspot/gtest' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?
do_exit 0

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
@@ -22,7 +25,6 @@
source jb/project/tools/common/scripts/common.sh
JCEF_PATH=${JCEF_PATH:=./jcef_mac}
architecture=${architecture:=x64}
BOOT_JDK=${BOOT_JDK:=$(/usr/libexec/java_home -v 16)}
function do_configure {
@@ -44,6 +46,7 @@ function do_configure {
--with-extra-cflags="-F$(pwd)/Frameworks" \
--with-extra-cxxflags="-F$(pwd)/Frameworks" \
--with-extra-ldflags="-F$(pwd)/Frameworks" \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
@@ -61,6 +64,7 @@ function do_configure {
--with-boot-jdk="$BOOT_JDK" \
--with-macosx-version-max="${MACOSX_VERSION_MAX:="10.12.00"}" \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
$WITH_ZIPPED_NATIVE_DEBUG_SYMBOLS \
|| do_exit $?
@@ -73,13 +77,16 @@ function create_image_bundle {
__modules_path=$3
__modules=$4
fastdebug_infix=''
tmp=.bundle.$$.tmp
mkdir "$tmp" || do_exit $?
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-osx-${architecture}-${fastdebug_infix}b${build_number}
JBR=${__bundle_name}-${JBSDK_VERSION}-osx-${architecture}-${fastdebug_infix:-}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-${architecture}-${fastdebug_infix:-}b${build_number%%.*}
JRE_CONTENTS=$tmp/$__arch_name/Contents
JRE_CONTENTS=$tmp/$__root_dir/Contents
mkdir -p "$JRE_CONTENTS" || do_exit $?
echo Running jlink...
@@ -91,6 +98,7 @@ function create_image_bundle {
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $JRE_CONTENTS/Home/release > release
mv release $JRE_CONTENTS/Home/release
cp $IMAGES_DIR/jdk-bundle/jdk-$JBSDK_VERSION.jdk/Contents/Home/lib/src.zip $JRE_CONTENTS/Home/lib
copy_jmods "$__modules" "$__modules_path" "$JRE_CONTENTS"/Home/jmods
zip_native_debug_symbols $IMAGES_DIR/jdk-bundle/jdk-$JBSDK_VERSION.jdk "${JBR}_diz"
fi
@@ -102,10 +110,10 @@ function create_image_bundle {
echo Creating "$JBR".tar.gz ...
# Normalize timestamp
find "$tmp"/"$__arch_name" -print0 | xargs -0 touch -c -h -t "$TOUCH_TIME"
find "$tmp"/"$__root_dir" -print0 | xargs -0 touch -c -h -t "$TOUCH_TIME"
(cd "$tmp" &&
find "$__arch_name" -print0 | LC_ALL=C sort -z | \
find "$__root_dir" -print0 | LC_ALL=C sort -z | \
COPYFILE_DISABLE=1 tar $REPRODUCIBLE_TAR_OPTS --no-recursion --null -T - \
-czf "$JBR".tar.gz --exclude='*.dSYM' --exclude='man') || do_exit $?
mv "$tmp"/"$JBR".tar.gz "$JBR".tar.gz
@@ -135,7 +143,7 @@ case "$bundle_type" in
;;
esac
if [ -z "$INC_BUILD" ]; then
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
@@ -153,6 +161,8 @@ if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
APP_DIRECTORY=$1
APPL_USER=$2

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
APPLICATION_PATH=$1
APP_NAME=$2
@@ -97,8 +100,11 @@ BUILD_NAME=$(echo $APPLICATION_PATH | awk -F"/" '{ print $2 }')
log "Creating $APP_NAME.pkg..."
rm -rf "$APP_NAME.pkg"
pkgbuild --identifier $BUNDLE_ID --sign "$JB_INSTALLER_CERT" --root $APPLICATION_PATH \
--install-location /Library/Java/JavaVirtualMachines/${BUILD_NAME} ${APP_NAME}.pkg
mkdir -p unsigned
pkgbuild --identifier $BUNDLE_ID --root $APPLICATION_PATH \
--install-location /Library/Java/JavaVirtualMachines/${BUILD_NAME} unsigned/${APP_NAME}.pkg
productsign --timestamp --sign "$JB_INSTALLER_CERT" unsigned/${APP_NAME}.pkg ${APP_NAME}.pkg
#log "Signing whole app..."
#codesign --timestamp \

View File

@@ -1,7 +1,8 @@
#!/bin/bash -x
#!/bin/bash
#immediately exit script with an error if a command fails
set -euo pipefail
set -x
export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
export COPYFILE_DISABLE=true
@@ -44,8 +45,7 @@ fi
log "$INPUT_FILE extracted and removed"
APP_NAME=$(echo ${INPUT_FILE} | awk -F".tar" '{ print $1 }')
APPLICATION_PATH=$(sed "s/osx-//" <<< "$EXPLODED/$APP_NAME")
mv $EXPLODED/$BUILD_NAME $APPLICATION_PATH
APPLICATION_PATH=$EXPLODED/$(ls $EXPLODED)
find "$APPLICATION_PATH/Contents/Home/bin" \
-maxdepth 1 -type f -name '*.jnilib' -print0 |

View File

@@ -0,0 +1,30 @@
diff --git jb/project/tools/common/modules.list jb/project/tools/common/modules.list
index 522acb7..c40e689 100644
--- jb/project/tools/common/modules.list
+++ jb/project/tools/common/modules.list
@@ -51,4 +51,7 @@ jdk.unsupported.desktop,
jdk.xml.dom,
jdk.zipfs,
jdk.hotspot.agent,
-jdk.jcmd
+jdk.jcmd,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index 897647e..781d180 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -116,7 +116,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

View File

@@ -1,5 +1,17 @@
#!/bin/bash
set -euo pipefail
while getopts ":t" o; do
case "${o}" in
t)
t="With Teamcity tests info"
TC_PRINT=1
;;
esac
done
shift $((OPTIND-1))
NEWFILEPATH=$1
CONFIGID=$2
BUILDID=$3
@@ -7,6 +19,7 @@ TOKEN=$4
#
# Get the size of new artifact
#
unameOut="$(uname -s)"
case "${unameOut}" in
Linux*)
@@ -16,7 +29,11 @@ case "${unameOut}" in
NEWFILESIZE=$(stat -f%z "$NEWFILEPATH")
;;
CYGWIN*)
NEWFILESIZE=$(stat -c%s "$NEWFILEPATH")
NEWFILESIZE=$(stat -c%s$4
#
# Get the size of new artifact
#
"$NEWFILEPATH")
;;
MINGW*)
NEWFILESIZE=$(stat -c%s "$NEWFILEPATH")
@@ -25,32 +42,88 @@ case "${unameOut}" in
echo "Unknown machine: ${unameOut}"
exit 1
esac
FILENAME=$(basename ${NEWFILEPATH})
echo "New size of $NEWFILEPATH = $NEWFILESIZE bytes."
#
# Get pattern of artifact name
# Base filename pattern: <BUNDLE_TYPE>-<JDK_VERSION>-<OS>-<ARCH>-b<BUILD>.tar.gz: jbr_dcevm-17.0.2-osx-x64-b1234.tar.gz
# BUNDLE_TYPE: jbr, jbrsdk, jbr_dcevm, jbrsdk_jcef etc.
# OS_ARCH_PATTERN - <os_architecture>: osx-x64, linux-aarch64, windows-x64 etc.
# example: IntellijCustomJdk_Jdk17_Master_LinuxX64jcef
BUNDLE_TYPE=jbrsdk
OS_ARCH_PATTERN=""
FILE_EXTENSION=tar.gz
re='(jbr[a-z_]*).*-[0-9_\.]+-(.+)-b[0-9]+(.+)'
if [[ $FILENAME =~ $re ]]; then
BUNDLE_TYPE=${BASH_REMATCH[1]}
OS_ARCH_PATTERN=${BASH_REMATCH[2]}
FILE_EXTENSION=${BASH_REMATCH[3]}
fi
if [ $TC_PRINT -eq 1 ]; then
testname_file_ext=`echo $FILE_EXTENSION | sed 's/\./_/g'`
testname=$BUNDLE_TYPE"_"$OS_ARCH_PATTERN$testname_file_ext
echo \#\#teamcity[testStarted name=\'$testname\']
fi
echo "BUNDLE_TYPE: " $BUNDLE_TYPE
echo "OS_ARCH_PATTERN: " $OS_ARCH_PATTERN
echo "FILE_EXTENSION: " $FILE_EXTENSION
echo "New size of $FILENAME = $NEWFILESIZE bytes."
function test_failed_msg() {
if [ $3 -eq 1 ]; then
echo \#\#teamcity[testFailed name=\'$1\' message=\'$2\']
fi
}
function test_finished_msg() {
if [ $2 -eq 1 ]; then
echo \#\#teamcity[testFinished name=\'$1\']
fi
}
#
# Get previous successful build ID
# Example:
# CONFIGID=IntellijCustomJdk_Jdk17_Master_LinuxX64jcef
# BUILDID=12345678
#
# expected return value
# id="123".number="567"
#
CURL_RESPONSE=$(curl --header "Authorization: Bearer $TOKEN" "https://buildserver.labs.intellij.net/app/rest/builds/?locator=buildType:(id:$CONFIGID),status:success,count:1,finishDate:(build:$BUILDID,condition:before)")
re='id=\"([0-9]+)\".+number=\"([0-9\.]+)\"'
re='id=\"([0-9]+)\".+number=\"([0-9]+)\"'
# ID: Previous successful build id
ID=0
if [[ $CURL_RESPONSE =~ $re ]]; then
ID=${BASH_REMATCH[1]}
echo "BUILD Number: ${BASH_REMATCH[2]}"
else
echo "ERROR: can't find previous build"
msg="ERROR: can't find previous build"
echo $msg
echo $CURL_RESPONSE
test_failed_msg $testname $msg $TC_PRINT
test_finished_msg $testname $TC_PRINT
exit 1
fi
#
# Get artifacts from previous successful build
#
# expected return value
# name="jbrsdk_jcef*.tar.gz size="123'
#
CURL_RESPONSE=$(curl --header "Authorization: Bearer $TOKEN" "https://buildserver.labs.intellij.net/app/rest/builds/$ID?fields=id,number,artifacts(file(name,size))")
echo "Atrifacts of last pinned build of $CONFIGID :\n"
echo "Atrifacts of previous build of $CONFIGID :"
echo $CURL_RESPONSE
# Find size (in response) with reg exp
re='name=\"(jbrsdk_jcef[^\"]+\.tar\.gz)\" size=\"([0-9]+)\"'
# Find binary size (in response) with reg exp
re='name=\"('$BUNDLE_TYPE'[^\"]+'${OS_ARCH_PATTERN}'[^\"]+'${FILE_EXTENSION}')\" size=\"([0-9]+)\"'
if [[ $CURL_RESPONSE =~ $re ]]; then
OLDFILENAME=${BASH_REMATCH[1]}
@@ -61,12 +134,20 @@ if [[ $CURL_RESPONSE =~ $re ]]; then
let allowedSize=OLDFILESIZE+OLDFILESIZE/20 # use 5% threshold
echo "Allowed size = $allowedSize"
if [[ "$NEWFILESIZE" -gt "$allowedSize" ]]; then
echo "ERROR: new size is significally greater than prev size (need to investigate)"
msg="ERROR: new size is significally greater than prev size (need to investigate)"
echo $msg
test_failed_msg $testname $msg $TC_PRINT
test_finished_msg $testname $TC_PRINT
exit 1
else
echo "PASSED"
test_finished_msg $testname $TC_PRINT
fi
else
echo "ERROR: can't find string with size in xml response:"
msg="ERROR: can't find string with size in xml response:"
echo $msg
echo $CURL_RESPONSE
test_failed_msg $testname $msg $TC_PRINT
test_finished_msg $testname $TC_PRINT
exit 1
fi

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
usage ()
{
@@ -57,7 +60,13 @@ else
testContent=`paste -d '\t' $refFile <(echo "$curValues") | tail -n +1`
fi
testContent=`echo "$testContent" | awk -F'\t' '{ if ($3>$2+$2*0.1) {print "* "$1"\t"$2"\t"$3"\t"(($2==0)?"-":$3/$2)} else {print " "$1"\t"$2"\t"$3"\t"(($2==0)?"-":$3/$2)} }'`
testContent=`echo "$testContent" | tr "," "." | awk -F'\t' '{
if ($3>$2+$2*0.1) {
print "* "$1"\t"$2"\t"$3"\t"(($2>0)?$3/$2:"-")
} else {
print " "$1"\t"$2"\t"$3"\t"(($2>0)?$3/$2:"-")
}
}'`
if [ -z $noHeaders ]; then
echo "$header" > $resFile
fi
@@ -68,11 +77,12 @@ if [ -z $tc ]; then
exit 0
fi
failed=0
echo "$testContent" 2>&1 | (
while read -r s; do
testname=`echo "$s" | cut -f 1 | tr -d "[:space:]" | tr -d "*"`
duration=`echo "$s" | cut -f 3`
failed=`echo "$s" | cut -c1 | grep -c "*"`
echo "$s" | cut -c1 | grep -c "*" && failed=1
echo \#\#teamcity[testStarted name=\'$testNamePrefix$testname\']
echo "===>$s"
echo \#\#teamcity[buildStatisticValue key=\'$testNamePrefix$testname\' value=\'$duration\']

View File

@@ -0,0 +1,142 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script makes test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
# Environment variables:
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument
# to configure
# By default JDK_BUILD_NUMBER is set zero
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_aarch64
if [ -z "$BUILD_JDK" ]; then
echo "BUILD_JDK environment variable must be specified and point to a JDK built from the current sources" \
" and is able to run on the build system. See OpenJDK documentation for --with-build-jdk for more info."
exit 1
fi
source jb/project/tools/common/scripts/common.sh
WORK_DIR=$(pwd)
JCEF_PATH=${JCEF_PATH:=$WORK_DIR/jcef_win_aarch64}
function do_configure {
sh ./configure \
--enable-option-checking=fatal \
--openjdk-target=aarch64-unknown-cygwin \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--with-build-jdk=$BUILD_JDK \
--disable-ccache \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-aarch64-${fastdebug_infix:-}b${build_number%%.*}
echo Running jlink ...
${BUILD_JDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__root_dir/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -a --exclude demo --exclude sample $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-aarch64-server-release
case "$bundle_type" in
"jcef")
do_reset_changes=0
do_maketest=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-aarch64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
else
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME images test-image || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME images || do_exit $?
fi
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module_aarch64.patch || do_exit $?
update_jsdk_mods "$BUILD_JDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
@@ -35,6 +38,7 @@ function do_configure {
--with-boot-jdk=$BOOT_JDK \
--disable-ccache \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
}
@@ -45,18 +49,24 @@ function create_image_bundle {
__modules_path=$3
__modules=$4
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-x64-${fastdebug_infix:-}b${build_number%%.*}
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__arch_name || do_exit $?
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__arch_name/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__arch_name/release > release
mv release $__arch_name/release
copy_jmods "$__modules" "$__modules_path" "$__arch_name"/jmods
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__root_dir/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -a --exclude demo --exclude sample $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
@@ -78,7 +88,7 @@ case "$bundle_type" in
;;
esac
if [ -z "$INC_BUILD" ]; then
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image || do_exit $?
@@ -104,9 +114,11 @@ if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
# create runtime image bundlef
# create runtime image bundle
modules=$(xargs < jb/project/tools/common/modules.list | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?

View File

@@ -1,12 +1,14 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
@@ -14,50 +16,112 @@
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WORK_DIR=$(pwd)
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
function do_configure {
sh ./configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--disable-ccache \
--enable-cds=yes \
$STATIC_CONF_ARGS \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
}
PATH="/usr/local/bin:/usr/bin:${PATH}"
./configure \
--with-target-bits=32 \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || exit 1
make clean CONF=windows-x86-server-release || exit 1
make LOG=info images CONF=windows-x86-server-release test-image || exit 1
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
JBSDK=${JBRSDK_BASE_NAME}-windows-x86-b${build_number}
BASE_DIR=build/windows-x86-server-release/images
JSDK=${BASE_DIR}/jdk
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
__root_dir=${__bundle_name}-${JBSDK_VERSION}-x86-${fastdebug_infix:-}b${build_number%%.*}
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__root_dir || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__root_dir/release
if [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__root_dir/release > release
mv release $__root_dir/release
for dir in $(ls -d $IMAGES_DIR/jdk/*); do
rsync -a --exclude demo --exclude sample $dir $__root_dir
done
copy_jmods "$__modules" "$__modules_path" "$__root_dir"/jmods
fi
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-server-release
case "$bundle_type" in
"jcef")
echo "not implemented" && do_exit 1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-server-fastdebug
;;
esac
if [ -z "${INC_BUILD:-}" ]; then
do_configure || do_exit $?
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME clean images test-image || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
else
if [ $do_maketest -eq 1 ]; then
make LOG=info CONF=$RELEASE_NAME images test-image || do_exit $?
else
make LOG=info CONF=$RELEASE_NAME images || do_exit $?
fi
fi
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
sed 's/JBR/JBRSDK/g' ${JSDK}/release > release
mv release ${JBRSDK_BUNDLE}/release
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
JBR_BUNDLE=jbr
rm -rf ${JBR_BUNDLE}
grep -v javafx jb/project/tools/common/modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
echo ",jdk.crypto.mscapi" >> modules.list.x86
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
echo Modifying release info ...
#grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release
# create runtime image bundle
modules=$(grep -v "jdk.internal.vm" jb/project/tools/common/modules.list | xargs | sed s/" "//g) || do_exit $?
modules+=",jdk.crypto.mscapi"
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g)
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -0,0 +1,56 @@
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# This script packs test-image along with JDK images when bundle_type is set to "jcef".
# If the character 't' is added at the end of bundle_type then it also makes test-image along with JDK images.
#
source jb/project/tools/common/scripts/common.sh
[ "$bundle_type" == "jcef" ] && do_maketest=1
function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-aarch64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-aarch64-${fastdebug_infix:-}b${build_number%%.*}
echo Creating $JBR.tar.gz ...
chmod -R ug+rwx,o+rx ${BASE_DIR}/$__root_dir
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
JBRSDK_BUNDLE=jbrsdk
RELEASE_NAME=windows-aarch64-server-release
IMAGES_DIR=build/$RELEASE_NAME/images
BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
pack_jbr jbr${jbr_name_postfix} jbr
pack_jbr jbrsdk${jbr_name_postfix} jbrsdk
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=$JBRSDK_BUNDLE-$JBSDK_VERSION-windows-test-aarch64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -1,4 +1,7 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# build_number - specifies the number of JetBrainsRuntime build
@@ -19,12 +22,15 @@ function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-x64-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-x64-${fastdebug_infix:-}b${build_number%%.*}
echo Creating $JBR.tar.gz ...
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__arch_name || do_exit $?
chmod -R ug+rwx,o+rx ${BASE_DIR}/$__root_dir
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
@@ -36,6 +42,8 @@ BASE_DIR=.
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
pack_jbr jbr${jbr_name_postfix} jbr

View File

@@ -1,42 +1,50 @@
#!/bin/bash -x
#!/bin/bash
set -euo pipefail
set -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built;possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
JBR_BASE_NAME=jbr-$JBSDK_VERSION
[ "$bundle_type" == "jcef" ] && echo "not implemented" && do_exit 1
IMAGES_DIR=build/windows-x86-server-release/images
JSDK=$IMAGES_DIR/jdk
JBSDK=$JBRSDK_BASE_NAME-windows-x86-b$build_number
BASE_DIR=.
function pack_jbr {
__bundle_name=$1
__arch_name=$2
fastdebug_infix=''
[ "$bundle_type" == "fd" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-windows-x86-${fastdebug_infix}b${build_number}
__root_dir=${__bundle_name}-${JBSDK_VERSION}-x86-${fastdebug_infix:-}b${build_number%%.*}
echo Creating $JBR.tar.gz ...
chmod -R ug+rwx,o+rx ${BASE_DIR}/$__root_dir
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR $__root_dir || do_exit $?
}
[ "$bundle_type" == "nomod" ] && bundle_type=""
JBRSDK_BUNDLE=jbrsdk
echo Creating $JBSDK.tar.gz ...
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || exit 1
BASE_DIR=.
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
jbr_name_postfix="_${bundle_type}"
else
jbr_name_postfix=""
fi
JBR=$JBR_BASE_NAME-windows-x86-b$build_number
echo Creating $JBR.tar.gz ...
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR ${JBR_BUNDLE} || exit 1
pack_jbr jbr${jbr_name_postfix} jbr
pack_jbr jbrsdk${jbr_name_postfix} jbrsdk
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || exit 1
if [ $do_maketest -eq 1 ]; then
JBRSDK_TEST=$JBRSDK_BUNDLE-$JBSDK_VERSION-windows-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $BASE_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -229,15 +229,19 @@ else
endif
ifeq ($(ENABLE_REPRODUCIBLE_BUILD), true)
ifeq ($(MODULE), java.base)
JAR_FILE_TO_FIX := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/jrt-fs.jar
$(eval $(call SetupExecute, fixup_jrtfs_jar, \
WARN := Fixing timestamps in modules_libs/java.base/jrt-fs.jar, \
DEPS := $(JAR_FILE_TO_FIX) $(JDK_OUTPUTDIR)/bin/jar, \
OUTPUT_DIR := $(JMODS_SUPPORT_DIR), \
COMMAND := $(FIXPATH) $(JDK_OUTPUTDIR)/bin/jar --date $(SOURCE_DATE_ISO_8601) --update --file $(JAR_FILE_TO_FIX) @$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/_the.jrt-fs.jar_contents, \
))
DEPS += $(fixup_jrtfs_jar_TARGET)
# If boot JDK's jar supported --date, jrt-fs.jar would've been built with
# that option already.
ifneq ($(BOOT_JDK_JAR_SUPPORTS_DATE), true)
ifeq ($(MODULE), java.base)
JAR_FILE_TO_FIX := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/jrt-fs.jar
$(eval $(call SetupExecute, fixup_jrtfs_jar, \
WARN := Fixing timestamps in modules_libs/java.base/jrt-fs.jar, \
DEPS := $(JAR_FILE_TO_FIX) $(JDK_OUTPUTDIR)/bin/jar, \
OUTPUT_DIR := $(JMODS_SUPPORT_DIR), \
COMMAND := $(BUILD_JAR) --date $(SOURCE_DATE_ISO_8601) --update --file $(JAR_FILE_TO_FIX) @$(SUPPORT_OUTPUTDIR)/modules_libs/java.base/_the.jrt-fs.jar_contents, \
))
DEPS += $(fixup_jrtfs_jar_TARGET)
endif
endif
endif

View File

@@ -200,7 +200,7 @@ $(eval $(call SetTestOpt,FAILURE_HANDLER_TIMEOUT,JTREG))
$(eval $(call ParseKeywordVariable, JTREG, \
SINGLE_KEYWORDS := JOBS TIMEOUT_FACTOR FAILURE_HANDLER_TIMEOUT \
TEST_MODE ASSERT VERBOSE RETAIN MAX_MEM RUN_PROBLEM_LISTS \
RETRY_COUNT MAX_OUTPUT, \
RETRY_COUNT REPEAT_COUNT MAX_OUTPUT, \
STRING_KEYWORDS := OPTIONS JAVA_OPTIONS VM_OPTIONS KEYWORDS \
EXTRA_PROBLEM_LISTS LAUNCHER_OPTIONS, \
))
@@ -744,6 +744,15 @@ define SetupRunJtregTestBody
JTREG_RETAIN ?= fail,error
JTREG_RUN_PROBLEM_LISTS ?= false
JTREG_RETRY_COUNT ?= 0
JTREG_REPEAT_COUNT ?= 0
ifneq ($$(JTREG_RETRY_COUNT), 0)
ifneq ($$(JTREG_REPEAT_COUNT), 0)
$$(info Error: Cannot use both JTREG_RETRY_COUNT and JTREG_REPEAT_COUNT together.)
$$(info Please choose one or the other.)
$$(error Cannot continue)
endif
endif
ifneq ($$(JTREG_LAUNCHER_OPTIONS), )
$1_JTREG_LAUNCHER_OPTIONS += $$(JTREG_LAUNCHER_OPTIONS)
@@ -875,6 +884,18 @@ define SetupRunJtregTestBody
done
endif
ifneq ($$(JTREG_REPEAT_COUNT), 0)
$1_COMMAND_LINE := \
for i in {1..$$(JTREG_REPEAT_COUNT)}; do \
$$(PRINTF) "\nRepeating Jtreg run: $$$$i out of $$(JTREG_REPEAT_COUNT)\n"; \
$$($1_COMMAND_LINE); \
if [ "`$$(CAT) $$($1_EXITCODE)`" != "0" ]; then \
$$(PRINTF) "\nFailures detected, no more repeats.\n"; \
break; \
fi; \
done
endif
run-test-$1: pre-run-test clean-workdir-$1
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')

View File

@@ -35,8 +35,8 @@ BUILD_INFO_PROPERTIES := $(TEST_IMAGE_DIR)/build-info.properties
$(BUILD_INFO_PROPERTIES):
$(call MakeTargetDir)
$(ECHO) "# Build info properties for JDK tests" > $@
$(ECHO) "build.workspace.root=$(call FixPath, $(WORKSPACE_ROOT))" >> $@
$(ECHO) "build.output.root=$(call FixPath, $(OUTPUTDIR))" >> $@
$(ECHO) 'build.workspace.root=$(call FixPath, $(WORKSPACE_ROOT))' >> $@
$(ECHO) 'build.output.root=$(call FixPath, $(OUTPUTDIR))' >> $@
README := $(TEST_IMAGE_DIR)/Readme.txt

View File

@@ -270,6 +270,8 @@ AC_DEFUN([BASIC_CHECK_TAR],
TAR_TYPE="bsd"
elif test "x$($TAR -v | $GREP "bsdtar")" != "x"; then
TAR_TYPE="bsd"
elif test "x$($TAR --version | $GREP "busybox")" != "x"; then
TAR_TYPE="busybox"
elif test "x$OPENJDK_BUILD_OS" = "xaix"; then
TAR_TYPE="aix"
fi
@@ -281,9 +283,12 @@ AC_DEFUN([BASIC_CHECK_TAR],
TAR_SUPPORTS_TRANSFORM="true"
elif test "x$TAR_TYPE" = "aix"; then
# -L InputList of aix tar: name of file listing the files and directories
# that need to be archived or extracted
# that need to be archived or extracted
TAR_INCLUDE_PARAM="L"
TAR_SUPPORTS_TRANSFORM="false"
elif test "x$TAR_TYPE" = "xbusybox"; then
TAR_INCLUDE_PARAM="T"
TAR_SUPPORTS_TRANSFORM="false"
else
TAR_INCLUDE_PARAM="I"
TAR_SUPPORTS_TRANSFORM="false"

View File

@@ -95,11 +95,39 @@ AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS],
# info flags for toolchains unless we know they work.
# See JDK-8207057.
ASFLAGS_DEBUG_SYMBOLS=""
# Debug prefix mapping if supported by compiler
DEBUG_PREFIX_CFLAGS=
# Debug symbols
if test "x$TOOLCHAIN_TYPE" = xgcc; 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" = 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
@@ -108,6 +136,11 @@ AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS],
CFLAGS_DEBUG_SYMBOLS="-Z7"
fi
if test "x$DEBUG_PREFIX_CFLAGS" != x; then
CFLAGS_DEBUG_SYMBOLS="$CFLAGS_DEBUG_SYMBOLS $DEBUG_PREFIX_CFLAGS"
ASFLAGS_DEBUG_SYMBOLS="$ASFLAGS_DEBUG_SYMBOLS $DEBUG_PREFIX_CFLAGS"
fi
AC_SUBST(CFLAGS_DEBUG_SYMBOLS)
AC_SUBST(ASFLAGS_DEBUG_SYMBOLS)
])
@@ -159,6 +192,7 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
clang)
DISABLE_WARNING_PREFIX="-Wno-"
BUILD_CC_DISABLE_WARNING_PREFIX="-Wno-"
CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
# Additional warnings that are not activated by -Wall and -Wextra
@@ -778,8 +812,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
FILE_MACRO_CFLAGS=
]
)
# -fdebug-prefix-map is supported by all modern versions of gcc/clang
DEBUG_PREFIX_CFLAGS=" -fdebug-prefix-map=${workspace_root_trailing_slash}="
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft &&
test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then
# There is a known issue with the pathmap if the mapping is made to the
@@ -810,12 +842,12 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$TOOLCHAIN_CFLAGS_JVM ${$1_TOOLCHAIN_CFLAGS_JVM} \
$OS_CFLAGS $OS_CFLAGS_JVM $CFLAGS_OS_DEF_JVM $DEBUG_CFLAGS_JVM \
$WARNING_CFLAGS $WARNING_CFLAGS_JVM $JVM_PICFLAG $FILE_MACRO_CFLAGS \
$REPRODUCIBLE_CFLAGS $DEBUG_PREFIX_CFLAGS"
$REPRODUCIBLE_CFLAGS"
CFLAGS_JDK_COMMON="$ALWAYS_CFLAGS_JDK $ALWAYS_DEFINES_JDK $TOOLCHAIN_CFLAGS_JDK \
$OS_CFLAGS $CFLAGS_OS_DEF_JDK $DEBUG_CFLAGS_JDK $DEBUG_OPTIONS_FLAGS_JDK \
$WARNING_CFLAGS $WARNING_CFLAGS_JDK $DEBUG_SYMBOLS_CFLAGS_JDK \
$FILE_MACRO_CFLAGS $REPRODUCIBLE_CFLAGS $DEBUG_PREFIX_CFLAGS"
$FILE_MACRO_CFLAGS $REPRODUCIBLE_CFLAGS"
# Use ${$2EXTRA_CFLAGS} to block EXTRA_CFLAGS to be added to build flags.
# (Currently we don't have any OPENJDK_BUILD_EXTRA_CFLAGS, but that might

View File

@@ -82,14 +82,6 @@ AC_DEFUN([FLAGS_SETUP_ASFLAGS],
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
BASIC_ASFLAGS="-nologo -c"
fi
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
workspace_root_trailing_slash="${WORKSPACE_ROOT%/}/"
BASIC_ASFLAGS+=" -fdebug-prefix-map=${workspace_root_trailing_slash}="
fi
fi
AC_SUBST(BASIC_ASFLAGS)
if test "x$OPENJDK_TARGET_OS" = xmacosx; then

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,7 +25,7 @@
AC_DEFUN_ONCE([HELP_SETUP_DEPENDENCY_HELP],
[
UTIL_LOOKUP_PROGS(PKGHANDLER, zypper apt-get yum brew port pkgutil pkgadd pacman)
UTIL_LOOKUP_PROGS(PKGHANDLER, zypper apt-get yum brew port pkgutil pkgadd pacman apk)
])
AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
@@ -58,6 +58,8 @@ AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
zypper_help $MISSING_DEPENDENCY ;;
*pacman)
pacman_help $MISSING_DEPENDENCY ;;
*apk)
apk_help $MISSING_DEPENDENCY ;;
esac
if test "x$PKGHANDLER_COMMAND" != x; then
@@ -184,6 +186,27 @@ pkgadd_help() {
PKGHANDLER_COMMAND=""
}
apk_help() {
case $1 in
devkit)
PKGHANDLER_COMMAND="sudo apk add alpine-sdk linux-headers" ;;
alsa)
PKGHANDLER_COMMAND="sudo apk add alsa-lib-dev" ;;
cups)
PKGHANDLER_COMMAND="sudo apk add cups-dev" ;;
fontconfig)
PKGHANDLER_COMMAND="sudo apk add fontconfig-dev" ;;
freetype)
PKGHANDLER_COMMAND="sudo apk add freetype-dev" ;;
harfbuzz)
PKGHANDLER_COMMAND="sudo apk add harfbuzz-dev" ;;
x11)
PKGHANDLER_COMMAND="sudo apk add libxtst-dev libxt-dev libxrender-dev libxrandr-dev" ;;
ccache)
PKGHANDLER_COMMAND="sudo apk add ccache" ;;
esac
}
# This function will check if we're called from the "configure" wrapper while
# printing --help. If so, we will print out additional information that can
# only be extracted within the autoconf script, and then exit. This must be

View File

@@ -169,6 +169,23 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
fi
AC_SUBST(CACERTS_FILE)
# Choose cacerts source folder for user provided PEM files
AC_ARG_WITH(cacerts-src, [AS_HELP_STRING([--with-cacerts-src],
[specify alternative cacerts source folder containing certificates])])
CACERTS_SRC=""
AC_MSG_CHECKING([for cacerts source])
if test "x$with_cacerts_src" == x; then
AC_MSG_RESULT([default])
else
CACERTS_SRC=$with_cacerts_src
if test ! -d "$CACERTS_SRC"; then
AC_MSG_RESULT([fail])
AC_MSG_ERROR([Specified cacerts source folder "$CACERTS_SRC" does not exist])
fi
AC_MSG_RESULT([$CACERTS_SRC])
fi
AC_SUBST(CACERTS_SRC)
# Enable or disable unlimited crypto
UTIL_ARG_ENABLE(NAME: unlimited-crypto, DEFAULT: true, RESULT: UNLIMITED_CRYPTO,
DESC: [enable unlimited crypto policy])

View File

@@ -412,6 +412,8 @@ GTEST_FRAMEWORK_SRC := @GTEST_FRAMEWORK_SRC@
# Source file for cacerts
CACERTS_FILE=@CACERTS_FILE@
# Source folder for user provided cacerts PEM files
CACERTS_SRC=@CACERTS_SRC@
# Enable unlimited crypto policy
UNLIMITED_CRYPTO=@UNLIMITED_CRYPTO@

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
@@ -234,7 +234,7 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETERMINE_TOOLCHAIN_TYPE],
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
if test -n "$XCODEBUILD"; then
# On Mac OS X, default toolchain to clang after Xcode 5
XCODE_VERSION_OUTPUT=`"$XCODEBUILD" -version 2>&1 | $HEAD -n 1`
XCODE_VERSION_OUTPUT=`"$XCODEBUILD" -version | $HEAD -n 1`
$ECHO "$XCODE_VERSION_OUTPUT" | $GREP "Xcode " > /dev/null
if test $? -ne 0; then
AC_MSG_NOTICE([xcodebuild output: $XCODE_VERSION_OUTPUT])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,7 @@
################################################################################
# The order of these defines the priority by which we try to find them.
VALID_VS_VERSIONS="2019 2017"
VALID_VS_VERSIONS="2019 2017 2022"
VS_DESCRIPTION_2017="Microsoft Visual Studio 2017"
VS_VERSION_INTERNAL_2017=141
@@ -56,6 +56,21 @@ VS_SDK_PLATFORM_NAME_2019=
VS_SUPPORTED_2019=true
VS_TOOLSET_SUPPORTED_2019=true
VS_DESCRIPTION_2022="Microsoft Visual Studio 2022"
VS_VERSION_INTERNAL_2022=143
VS_MSVCR_2022=vcruntime140.dll
VS_VCRUNTIME_1_2022=vcruntime140_1.dll
VS_MSVCP_2022=msvcp140.dll
VS_ENVVAR_2022="VS170COMNTOOLS"
VS_USE_UCRT_2022="true"
VS_VS_INSTALLDIR_2022="Microsoft Visual Studio/2022"
VS_EDITIONS_2022="BuildTools Community Professional Enterprise"
VS_SDK_INSTALLDIR_2022=
VS_VS_PLATFORM_NAME_2022="v143"
VS_SDK_PLATFORM_NAME_2022=
VS_SUPPORTED_2022=true
VS_TOOLSET_SUPPORTED_2022=true
################################################################################
AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],

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
@@ -230,8 +230,6 @@ AC_DEFUN([UTIL_GET_MATCHING_VALUES],
# Converts an ISO-8601 date/time string to a unix epoch timestamp. If no
# suitable conversion method was found, an empty string is returned.
#
# Sets the specified variable to the resulting list.
#
# $1: result variable name
# $2: input date/time string
AC_DEFUN([UTIL_GET_EPOCH_TIMESTAMP],
@@ -241,11 +239,16 @@ AC_DEFUN([UTIL_GET_EPOCH_TIMESTAMP],
timestamp=$($DATE --utc --date=$2 +"%s" 2> /dev/null)
else
# BSD date
timestamp=$($DATE -u -j -f "%F %T" "$2" "+%s" 2> /dev/null)
# ISO-8601 date&time in Zulu 'date'T'time'Z
timestamp=$($DATE -u -j -f "%FT%TZ" "$2" "+%s" 2> /dev/null)
if test "x$timestamp" = x; then
# Perhaps the time was missing
timestamp=$($DATE -u -j -f "%F %T" "$2 00:00:00" "+%s" 2> /dev/null)
# If this did not work, we give up and return the empty string
# BSD date cannot handle trailing milliseconds.
# Try again ignoring characters at end
timestamp=$($DATE -u -j -f "%Y-%m-%dT%H:%M:%S" "$2" "+%s" 2> /dev/null)
fi
if test "x$timestamp" = x; then
# Perhaps the time was missing.
timestamp=$($DATE -u -j -f "%FT%TZ" "$2""T00:00:00Z" "+%s" 2> /dev/null)
fi
fi
$1=$timestamp

View File

@@ -1,55 +0,0 @@
#
# Copyright (c) 2011, 2019, 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.
#
# Default version, product, and vendor information to use,
# unless overridden by configure
DEFAULT_VERSION_FEATURE=15
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=2020-09-15
DEFAULT_VERSION_CLASSFILE_MAJOR=59 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="14 15"
DEFAULT_JDK_SOURCE_TARGET_VERSION=15
DEFAULT_PROMOTED_VERSION_PRE=
LAUNCHER_NAME=openjdk
PRODUCT_NAME=OpenJDK
PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A
HOTSPOT_VM_DISTRO="Dynamic Code Evolution"
VENDOR_URL=https://openjdk.java.net/
VENDOR_URL_BUG=https://bugreport.java.com/bugreport/
VENDOR_URL_VM_BUG=https://bugreport.java.com/bugreport/crash.jsp
# Might need better names for these
MACOSX_BUNDLE_NAME_BASE="OpenJDK"
MACOSX_BUNDLE_ID_BASE="net.java.openjdk"

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
@@ -193,7 +193,8 @@ define SetupJarArchiveBody
$1_UPDATE_CONTENTS=\
if [ "`$(WC) -l $$($1_BIN)/_the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'`" -gt "0" ]; then \
$(ECHO) " updating" `$(WC) -l $$($1_BIN)/_the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'` files && \
$$($1_JAR_CMD) --update $$($1_JAR_OPTIONS) --file $$@ @$$($1_BIN)/_the.$$($1_JARNAME)_contents; \
$(SORT) $$($1_BIN)/_the.$$($1_JARNAME)_contents > $$($1_BIN)/_the.$$($1_JARNAME)_contents_sorted && \
$$($1_JAR_CMD) --update $$($1_JAR_OPTIONS) --file $$@ @$$($1_BIN)/_the.$$($1_JARNAME)_contents_sorted; \
fi $$(NEWLINE)
# The s-variants of the above macros are used when the jar is created from scratch.
# NOTICE: please leave the parentheses space separated otherwise the AIX build will break!
@@ -212,7 +213,9 @@ define SetupJarArchiveBody
| $(SED) 's|$$(src)/|-C $$(src) |g' >> \
$$($1_BIN)/_the.$$($1_JARNAME)_contents) $$(NEWLINE) )
endif
$1_SUPDATE_CONTENTS=$$($1_JAR_CMD) --update $$($1_JAR_OPTIONS) --file $$@ @$$($1_BIN)/_the.$$($1_JARNAME)_contents $$(NEWLINE)
$1_SUPDATE_CONTENTS=\
$(SORT) $$($1_BIN)/_the.$$($1_JARNAME)_contents > $$($1_BIN)/_the.$$($1_JARNAME)_contents_sorted && \
$$($1_JAR_CMD) --update $$($1_JAR_OPTIONS) --file $$@ @$$($1_BIN)/_the.$$($1_JARNAME)_contents_sorted $$(NEWLINE)
# Use a slightly shorter name for logging, but with enough path to identify this jar.
$1_NAME:=$$(subst $$(OUTPUTDIR)/,,$$($1_JAR))

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
@@ -358,6 +358,20 @@ define SetupCompileNativeFileBody
# Compile as preprocessed assembler file
$1_FLAGS := $(BASIC_ASFLAGS) $$($1_BASE_ASFLAGS)
$1_COMPILER := $(AS)
# gcc or clang assembly files must contain an appropriate relative .file
# path for reproducible builds.
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)
$1_REL_ASM_SRC := $$(call RelativePath, $$($1_FILE), $(WORKSPACE_ROOT))
else
$1_REL_ASM_SRC := $$($1_FILE)
endif
$1_FLAGS := $$($1_FLAGS) -DASSEMBLY_SRC_FILE='"$$($1_REL_ASM_SRC)"' \
-include $(TOPDIR)/make/data/autoheaders/assemblyprefix.h
endif
else ifneq ($$(filter %.cpp %.cc %.mm, $$($1_FILENAME)), )
# Compile as a C++ or Objective-C++ file
$1_FLAGS := $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) $$($1_BASE_CXXFLAGS) \
@@ -389,6 +403,13 @@ 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 and clang ensure random symbol generation is
# seeded deterministically
ifneq ($(findstring $(TOOLCHAIN_TYPE), gcc clang), )
ifeq ($$(ENABLE_REPRODUCIBLE_BUILD), true)
$1_COMPILE_OPTIONS += -frandom-seed="$$($1_FILENAME)"
endif
endif
$$($1_OBJ_JSON): $$($1_OBJ_DEPS)
$$(call WriteCompileCommandsFragment, $$@, $$(PWD), $$($1_SRC_FILE), \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2020, 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,19 +25,19 @@
# Versions and download locations for dependencies used by pre-submit testing.
BOOT_JDK_VERSION=16
BOOT_JDK_VERSION=17
JTREG_VERSION=6
JTREG_BUILD=1
GTEST_VERSION=1.8.1
LINUX_X64_BOOT_JDK_FILENAME=openjdk-17.0.1_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk17.0.1/2a2082e5a09d4267845be086888add4f/12/GPL/openjdk-17.0.1_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=1c0a73cbb863aad579b967316bf17673b8f98a9bb938602a140ba2e5c38f880a
LINUX_X64_BOOT_JDK_FILENAME=openjdk-17.0.2_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_x64_linux_hotspot_17.0.2_8.tar.gz
LINUX_X64_BOOT_JDK_SHA256=288f34e3ba8a4838605636485d0365ce23e57d5f2f68997ac4c2e4c01967cd48
WINDOWS_X64_BOOT_JDK_FILENAME=openjdk-17.0.1_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk17.0.1/2a2082e5a09d4267845be086888add4f/12/GPL/openjdk-17.0.1_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=329900a6673b237b502bdcf77bc334da34bc91355c5fd2d457fc00f53fd71ef1
WINDOWS_X64_BOOT_JDK_FILENAME=openjdk-17.0.2_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_x64_windows_hotspot_17.0.2_8.zip
WINDOWS_X64_BOOT_JDK_SHA256=d083479ca927dce2f586f779373d895e8bf668c632505740279390384edf03fa
MACOS_X64_BOOT_JDK_FILENAME=openjdk-17.0.1_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk17.0.1/2a2082e5a09d4267845be086888add4f/12/GPL/openjdk-17.0.1_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=6ccb35800e723cabe15af60e67099d1a07c111d2d3208aa75523614dde68bee1
MACOS_X64_BOOT_JDK_FILENAME=openjdk-17.0.2_macos-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_URL=https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_x64_mac_hotspot_17.0.2_8.tar.gz
MACOS_X64_BOOT_JDK_SHA256=3630e21a571b7180876bf08f85d0aac0bdbb3267b2ae9bd242f4933b21f9be32

View File

@@ -28,12 +28,12 @@
DEFAULT_VERSION_FEATURE=17
DEFAULT_VERSION_INTERIM=0
DEFAULT_VERSION_UPDATE=2
DEFAULT_VERSION_UPDATE=4
DEFAULT_VERSION_PATCH=0
DEFAULT_VERSION_EXTRA1=0
DEFAULT_VERSION_EXTRA2=0
DEFAULT_VERSION_EXTRA3=0
DEFAULT_VERSION_DATE=2022-01-18
DEFAULT_VERSION_DATE=2022-07-19
DEFAULT_VERSION_CLASSFILE_MAJOR=61 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_VERSION_DOCS_API_SINCE=11

View File

@@ -0,0 +1,29 @@
#
# 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.
#
# 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.
#
// ASSEMBLY_SRC_FILE gets replaced by relative or absolute file path
// in NativeCompilation.gmk for gcc tooling on Linux. This ensures a
// reproducible object file through a predictable value of the STT_FILE
// symbol, and subsequently a reproducible .debuginfo.
.file ASSEMBLY_SRC_FILE

View File

@@ -32,7 +32,7 @@ formatVersion=3
# Version of the currency code information in this class.
# It is a serial number that accompanies with each amendment.
dataVersion=169
dataVersion=170
# List of all valid ISO 4217 currency codes.
# To ensure compatibility, do not remove codes.
@@ -54,7 +54,7 @@ all=ADP020-AED784-AFA004-AFN971-ALL008-AMD051-ANG532-AOA973-ARS032-ATS040-AUD036
SBD090-SCR690-SDD736-SDG938-SEK752-SGD702-SHP654-SIT705-SKK703-SLL694-SOS706-\
SRD968-SRG740-SSP728-STD678-STN930-SVC222-SYP760-SZL748-THB764-TJS972-TMM795-TMT934-TND788-TOP776-\
TPE626-TRL792-TRY949-TTD780-TWD901-TZS834-UAH980-UGX800-USD840-USN997-USS998-UYI940-\
UYU858-UZS860-VEB862-VEF937-VES928-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
UYU858-UZS860-VEB862-VED926-VEF937-VES928-VND704-VUV548-WST882-XAF950-XAG961-XAU959-XBA955-\
XBB956-XBC957-XBD958-XCD951-XDR960-XFO000-XFU000-XOF952-XPD964-XPF953-\
XPT962-XSU994-XTS963-XUA965-XXX999-YER886-YUM891-ZAR710-ZMK894-ZMW967-ZWD716-ZWL932-\
ZWN942-ZWR935

View File

@@ -52,6 +52,7 @@ allfonts.myanmar=Myanmar Text
allfonts.dingbats=Wingdings
allfonts.symbol=Symbol
allfonts.symbols=Segoe UI Symbol
allfonts.emoji=Segoe UI Emoji
allfonts.thai=Tahoma
allfonts.georgian=Sylfaen
@@ -197,58 +198,58 @@ dialoginput.bolditalic.korean=Malgun Gothic
# Search Sequences
sequence.allfonts=alphabetic/default,dingbats,symbol
sequence.allfonts=alphabetic/default,dingbats,symbol,symbols
sequence.serif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.sansserif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.monospaced.GBK=chinese-ms936,alphabetic,dingbats,symbol,chinese-ms936-extb
sequence.dialog.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.dialoginput.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb
sequence.serif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb,symbols
sequence.sansserif.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb,symbols
sequence.monospaced.GBK=chinese-ms936,alphabetic,dingbats,symbol,chinese-ms936-extb,symbols
sequence.dialog.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb,symbols
sequence.dialoginput.GBK=alphabetic,chinese-ms936,dingbats,symbol,chinese-ms936-extb,symbols
sequence.serif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.sansserif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.monospaced.GB18030=chinese-gb18030,alphabetic,dingbats,symbol,chinese-gb18030-extb
sequence.dialog.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.dialoginput.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb
sequence.serif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb,symbols
sequence.sansserif.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb,symbols
sequence.monospaced.GB18030=chinese-gb18030,alphabetic,dingbats,symbol,chinese-gb18030-extb,symbols
sequence.dialog.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb,symbols
sequence.dialoginput.GB18030=alphabetic,chinese-gb18030,dingbats,symbol,chinese-gb18030-extb,symbols
sequence.serif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-windows-950=chinese-ms950,alphabetic,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb
sequence.serif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb,symbols
sequence.sansserif.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb,symbols
sequence.monospaced.x-windows-950=chinese-ms950,alphabetic,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialog.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialoginput.x-windows-950=alphabetic,chinese-ms950,dingbats,symbol,chinese-ms950-extb,symbols
sequence.serif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-MS950-HKSCS=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.serif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.sansserif.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.monospaced.x-MS950-HKSCS=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialog.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialoginput.x-MS950-HKSCS=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.serif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.sansserif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.monospaced.x-MS950-HKSCS-XP=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialog.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.dialoginput.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb
sequence.serif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.sansserif.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.monospaced.x-MS950-HKSCS-XP=chinese-ms950,alphabetic,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialog.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.dialoginput.x-MS950-HKSCS-XP=alphabetic,chinese-ms950,chinese-hkscs,dingbats,symbol,chinese-ms950-extb,symbols
sequence.allfonts.UTF-8.hi=alphabetic/1252,devanagari,dingbats,symbol
sequence.allfonts.UTF-8.ja=alphabetic,japanese,devanagari,dingbats,symbol
sequence.allfonts.UTF-8.hi=alphabetic/1252,devanagari,dingbats,symbol,symbols
sequence.allfonts.UTF-8.ja=alphabetic,japanese,devanagari,dingbats,symbol,symbols
sequence.allfonts.windows-1255=hebrew,alphabetic/1252,dingbats,symbol
sequence.allfonts.windows-1255=hebrew,alphabetic/1252,dingbats,symbol,symbols
sequence.serif.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.sansserif.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.monospaced.windows-31j=japanese,alphabetic,dingbats,symbol
sequence.dialog.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.dialoginput.windows-31j=alphabetic,japanese,dingbats,symbol
sequence.serif.windows-31j=alphabetic,japanese,dingbats,symbol,symbols
sequence.sansserif.windows-31j=alphabetic,japanese,dingbats,symbol,symbols
sequence.monospaced.windows-31j=japanese,alphabetic,dingbats,symbol,symbols
sequence.dialog.windows-31j=alphabetic,japanese,dingbats,symbol,symbols
sequence.dialoginput.windows-31j=alphabetic,japanese,dingbats,symbol,symbols
sequence.serif.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.sansserif.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.monospaced.x-windows-949=korean,alphabetic,dingbats,symbol
sequence.dialog.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.dialoginput.x-windows-949=alphabetic,korean,dingbats,symbol
sequence.serif.x-windows-949=alphabetic,korean,dingbats,symbol,symbols
sequence.sansserif.x-windows-949=alphabetic,korean,dingbats,symbol,symbols
sequence.monospaced.x-windows-949=korean,alphabetic,dingbats,symbol,symbols
sequence.dialog.x-windows-949=alphabetic,korean,dingbats,symbol,symbols
sequence.dialoginput.x-windows-949=alphabetic,korean,dingbats,symbol,symbols
sequence.allfonts.x-windows-874=alphabetic,thai,dingbats,symbol
sequence.allfonts.x-windows-874=alphabetic,thai,dingbats,symbol,symbols
sequence.fallback=symbols,\
sequence.fallback=emoji,\
chinese-ms950,chinese-hkscs,chinese-ms936,chinese-gb18030,\
japanese,korean,chinese-ms950-extb,chinese-ms936-extb,\
georgian,devanagari,bengali,gujarati,gurmukhi,kannada,\
@@ -260,6 +261,25 @@ sequence.fallback=symbols,\
exclusion.alphabetic=0700-1cff,1d80-1e9f,1f00-2017,2020-20ab,20ad-20b8,20bb-20bc,20be-24ff,2501-2501,2503-250b,250d-250f,2511-2513,2515-2517,2519-251b,251d-2523,2525-252b,252d-2533,2535-253b,253d-254f,256d-f8ff
exclusion.chinese-gb18030=0390-03d6,2200-22ef,2701-27be
exclusion.hebrew=0041-005a,0060-007a,007f-00ff,20ac-20ac
exclusion.symbols=000d-0022,0024-0029,002b-002f,003a-00a8,00aa-00ad,00af-02dc,2002-2003,\
2005-2005,200d-200d,2013-2014,2018-201a,201c-201e,2020-2022,2026-2026,\
2030-2030,2039-203a,2044-2044,20ac-20ac,20e3-20e3,2126-2126,2190-2193,\
219a-21a8,21ab-21ff,2206-2206,220f-220f,2211-2212,2219-221a,221e-221e,\
222b-222b,2248-2248,2260-2260,231a-231b,23e9-23ec,23f0-23f0,23f3-23f3,\
24b6-24c1,24c3-24cf,25a0-25a9,25ac-25b5,25b7-25bf,25c1-25fa,25fd-25ff,\
260f-2610,2612-2612,2614-2615,263b-263b,263f-263f,2641-2641,2643-2653,\
2672-267a,267c-267d,267f-267f,2693-2693,26a1-26a6,26a8-26ab,26bd-26be,\
26c4-26c5,26c7-26c7,26ce-26ce,26d4-26d4,26dd-26dd,26e3-26e3,26ea-26ea,\
26f2-26f3,26f5-26f5,26fa-26fa,26fd-26fd,2701-2701,2703-2705,270a-270b,\
270e-270e,2710-2710,2713-2713,2715-2715,2717-2718,2728-2728,2731-2732,\
2735-2743,2745-2746,2748-274c,274e-274e,2753-2755,2757-2757,2795-2797,\
27b0-27b0,27bf-27bf,2936-2937,2b12-2b1c,2b50-2b52,2b55-2b55,3244-3247,\
01f000-01f02b,01f0cf-01f0cf,01f172-01f17d,01f180-01f1ff,01f201-01f201,\
01f210-01f236,01f238-01f23a,01f250-01f320,01f32d-01f335,01f337-01f37c,\
01f37e-01f393,01f3a0-01f3ca,01f3cf-01f3d3,01f3e0-01f3f0,01f3f4-01f3f4,\
01f3f8-01f43e,01f440-01f440,01f442-01f4fc,01f4ff-01f53d,01f54b-01f567,\
01f57a-01f57a,01f595-01f596,01f5a4-01f5a4,01f5fb-01f64f,01f680-01f6c5,\
01f6cc-01f6cc,01f6d0-01f6d2,01f6eb-01f6ec,01f6f4-01f6f6,01f910-01f93a,01f93c-01f9c0
# Monospaced to Proportional width variant mapping
# (Experimental private syntax)
@@ -323,3 +343,4 @@ filename.Wingdings=WINGDING.TTF
filename.Sylfaen=sylfaen.ttf
filename.Segoe_UI_Symbol=SEGUISYM.TTF
filename.Segoe_UI_Emoji=seguiemj.ttf

View File

@@ -1,2 +1,2 @@
Github: https://raw.githubusercontent.com/publicsuffix/list/cbbba1d234670453df9c930dfbf510c0474d4301/public_suffix_list.dat
Date: 2020-04-24
Github: https://raw.githubusercontent.com/publicsuffix/list/3c213aab32b3c014f171b1673d4ce9b5cd72bf1c/public_suffix_list.dat
Date: 2021-11-27

File diff suppressed because it is too large Load Diff

View File

@@ -21,4 +21,4 @@
# or visit www.oracle.com if you need additional information or have any
# questions.
#
tzdata2021e
tzdata2022a

View File

@@ -941,6 +941,10 @@ Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
# (setq islamic-year (+ 1 islamic-year))))
#
# From Milamber (2021-03-31, 2022-03-10), confirming these predictions:
# https://www.mmsp.gov.ma/fr/actualites.aspx?id=2076
# https://www.ecoactu.ma/horaires-administration-ramadan-gmtheure-gmt-a-partir-de-dimanche-27-mars/
# Rule NAME FROM TO - IN ON AT SAVE LETTER/S
Rule Morocco 1939 only - Sep 12 0:00 1:00 -

View File

@@ -3429,8 +3429,12 @@ Zone Asia/Karachi 4:28:12 - LMT 1907
# ... winter time will begin in Palestine from Friday 10-29, 01:00 AM
# by 60 minutes backwards.
#
# From Paul Eggert (2021-10-20):
# Guess future fall transitions on October's last Friday at 01:00.
# From Tim Parenti (2021-10-25), per Paul Eggert (2021-10-24):
# Guess future fall transitions at 01:00 on the Friday preceding October's
# last Sunday (i.e., Fri>=23), as this is more consistent with recent practice.
# From Heba Hamad (2022-03-10):
# summer time will begin in Palestine from Sunday 03-27-2022, 00:00 AM.
# Rule NAME FROM TO - IN ON AT SAVE LETTER/S
Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
@@ -3466,9 +3470,10 @@ Rule Palestine 2016 2018 - Mar Sat>=24 1:00 1:00 S
Rule Palestine 2016 2018 - Oct Sat>=24 1:00 0 -
Rule Palestine 2019 only - Mar 29 0:00 1:00 S
Rule Palestine 2019 only - Oct Sat>=24 0:00 0 -
Rule Palestine 2020 max - Mar Sat>=24 0:00 1:00 S
Rule Palestine 2020 2021 - Mar Sat>=24 0:00 1:00 S
Rule Palestine 2020 only - Oct 24 1:00 0 -
Rule Palestine 2021 max - Oct lastFri 1:00 0 -
Rule Palestine 2021 max - Oct Fri>=23 1:00 0 -
Rule Palestine 2022 max - Mar Sun>=25 0:00 1:00 S
# Zone NAME STDOFF RULES FORMAT [UNTIL]
Zone Asia/Gaza 2:17:52 - LMT 1900 Oct

View File

@@ -2808,8 +2808,26 @@ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
# says he remembers that Samara opted out of the 1992-01-19 exception
# 2 days before the switch.
#
# From Alois Treindl (2022-02-15):
# the Russian wikipedia page
# https://ru.wikipedia.org/wiki/Московскоеремя#Перемещение_границы_применения_московскогоремени_наосток
# contains the sentence (in Google translation) "In the autumn of
# 1981, Arkhangelsk, Vologda, Yaroslavl, Ivanovo, Vladimir, Ryazan,
# Lipetsk, Voronezh, Rostov-on-Don, Krasnodar and regions to the east
# of those named (about 30 in total) parted ways with Moscow time.
# However, the convenience of common time with Moscow turned out to be
# decisive - in 1982, these regions again switched to Moscow time."
# Shanks International atlas has similar information, and also the
# Russian book Zaitsev A., Kutalev D. A new astrologer's reference
# book. Coordinates of cities and time corrections, - The World of
# Urania, 2012 (Russian: Зайцев А., Куталёв Д., Новый справочник
# астролога. Координаты городов и временные поправки).
# To me it seems that an extra zone is needed, which starts with LMT
# util 1919, later follows Moscow since 1930, but deviates from it
# between 1 October 1981 until 1 April 1982.
#
# From Paul Eggert (2016-03-18):
#
# From Paul Eggert (2022-02-15):
# Given the above, we appear to be missing some Zone entries for the
# chaotic early 1980s in Russia. It's not clear what these entries
# should be. For now, sweep this under the rug and just document the
@@ -2856,7 +2874,7 @@ Zone Europe/Simferopol 2:16:24 - LMT 1880
1:00 C-Eur CE%sT 1944 Apr 13
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
2:00 - EET 1992
2:00 - EET 1992 Mar 20
# Central Crimea used Moscow time 1994/1997.
#
# From Paul Eggert (2006-03-22):
@@ -2866,7 +2884,7 @@ Zone Europe/Simferopol 2:16:24 - LMT 1880
# sometime between the 1994 DST switches. Shanks & Pottenger simply say
# 1994-09-25 03:00, but that can't be right. For now, guess it
# changed in May.
2:00 E-Eur EE%sT 1994 May
2:00 C-Eur EE%sT 1994 May
# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
3:00 E-Eur MSK/MSD 1996 Mar 31 0:00s
3:00 1:00 MSD 1996 Oct 27 3:00s
@@ -4033,6 +4051,27 @@ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
# Ukraine
#
# From Alois Triendl (2014-03-01):
# REGULATION A N O V A on March 20, 1992 N 139 ... means that from
# 1992 on, Ukraine had DST with begin time at 02:00 am, on last Sunday
# in March, and end time 03:00 am, last Sunday in September....
# CABINET OF MINISTERS OF UKRAINE RESOLUTION on May 13, 1996 N 509
# "On the order of computation time on the territory of Ukraine" ....
# As this cabinet decision is from May 1996, it seems likely that the
# transition in March 1996, which predates it, was still at 2:00 am
# and not at 3:00 as would have been under EU rules.
# This is why I have set the change to EU rules into May 1996,
# so that the change in March is stil covered by the Ukraine rule.
# The next change in October 1996 happened under EU rules....
# TZ database holds three other zones for Ukraine.... I have not yet
# worked out the consequences for these three zones, as we (me and my
# US colleague David Cochrane) are still trying to get more
# information upon these local deviations from Kiev rules.
#
# From Paul Eggert (2022-02-08):
# For now, assume that Ukraine's other three zones followed the same rules,
# except that Crimea switched to Moscow time in 1994 as described elsewhere.
# From Igor Karpov, who works for the Ukrainian Ministry of Justice,
# via Garrett Wollman (2003-01-27):
# BTW, I've found the official document on this matter. It's government
@@ -4122,7 +4161,7 @@ Zone Europe/Kiev 2:02:04 - LMT 1880
1:00 C-Eur CE%sT 1943 Nov 6
3:00 Russia MSK/MSD 1990 Jul 1 2:00
2:00 1:00 EEST 1991 Sep 29 3:00
2:00 E-Eur EE%sT 1995
2:00 C-Eur EE%sT 1996 May 13
2:00 EU EE%sT
# Transcarpathia used CET 1990/1991.
# "Uzhhorod" is the transliteration of the Rusyn/Ukrainian pronunciation, but
@@ -4135,8 +4174,8 @@ Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
1:00 - CET 1991 Mar 31 3:00
2:00 - EET 1992
2:00 E-Eur EE%sT 1995
2:00 - EET 1992 Mar 20
2:00 C-Eur EE%sT 1996 May 13
2:00 EU EE%sT
# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
# "Zaporizhia" is the transliteration of the Ukrainian name, but
@@ -4149,7 +4188,8 @@ Zone Europe/Zaporozhye 2:20:40 - LMT 1880
3:00 - MSK 1941 Aug 25
1:00 C-Eur CE%sT 1943 Oct 25
3:00 Russia MSK/MSD 1991 Mar 31 2:00
2:00 E-Eur EE%sT 1995
2:00 E-Eur EE%sT 1992 Mar 20
2:00 C-Eur EE%sT 1996 May 13
2:00 EU EE%sT
# Vatican City

View File

@@ -95,11 +95,11 @@ Leap 2016 Dec 31 23:59:60 + S
# Any additional leap seconds will come after this.
# This Expires line is commented out for now,
# so that pre-2020a zic implementations do not reject this file.
#Expires 2022 Jun 28 00:00:00
#Expires 2022 Dec 28 00:00:00
# POSIX timestamps for the data in this file:
#updated 1467936000 (2016-07-08 00:00:00 UTC)
#expires 1656374400 (2022-06-28 00:00:00 UTC)
#expires 1672185600 (2022-12-28 00:00:00 UTC)
# Updated through IERS Bulletin C62
# File expires on: 28 June 2022
# Updated through IERS Bulletin C63
# File expires on: 28 December 2022

View File

@@ -1109,7 +1109,7 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# Chile
# From Paul Eggert (2015-04-03):
# From Paul Eggert (2022-03-15):
# Shanks & Pottenger says America/Santiago introduced standard time in
# 1890 and rounds its UT offset to 70W40; guess that in practice this
# was the same offset as in 1916-1919. It also says Pacific/Easter
@@ -1132,7 +1132,7 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# Historia de la hora oficial de Chile (retrieved 2012-10-24). See:
# https://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
# A fancier Spanish version (requiring mouse-clicking) is at:
# http://www.horaoficial.cl/historia_hora.html
# http://www.horaoficial.cl/historia_hora.php
# Conflicts between [1] and [2] were resolved as follows:
#
# - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
@@ -1141,7 +1141,8 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# - [1] says SMT was -4:42:45, [2] says Chile's official time from
# 1916 to 1919 was -4:42:46.3, the meridian of Chile's National
# Astronomical Observatory (OAN), then located in what is now
# Quinta Normal in Santiago. Go with [2], rounding it to -4:42:46.
# Quinta Normal in Santiago. Go with [1], as this matches the meridian
# referred to by the relevant Chilean laws to this day.
#
# - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
# Boletín No. 22, Aviso No. 129/1918 (1918-08-23). Go with [2].
@@ -1163,6 +1164,32 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# this is known to work for DST transitions starting in 2008 and
# may well be true for earlier transitions.
# From Tim Parenti (2022-03-15):
# For a brief period of roughly six weeks in 1946, DST was only observed on an
# emergency basis in specific regions of central Chile; namely, "the national
# territory between the provinces of Coquimbo and Concepción, inclusive".
# This was enacted by Decree 3,891, dated 1946-07-13, and took effect
# 1946-07-14 24:00, advancing these central regions to -03.
# https://www.diariooficial.interior.gob.cl/versiones-anteriores/do-h/19460715/#page/1
# The decree contemplated "[t]hat this advancement of the Official Time, even
# though it has been proposed for the cities of Santiago and Valparaíso only,
# must be agreed with that of other cities, due to the connection of various
# activities that require it, such as, for example, the operation of rail
# services". It was originally set to expire after 30 days but was extended
# through 1946-08-31 by Decree 4,506, dated 1946-08-13.
# https://www.diariooficial.interior.gob.cl/versiones-anteriores/do-h/19460814/#page/1
#
# Law Number 8,522, promulgated 1946-08-27, reunified Chilean clocks at their
# new "Summer Time" of -04, reckoned as that of "the meridian of the
# Astronomical Observatory of Lo Espejo, advanced by 42 minutes and 45
# seconds".
# https://www.diariooficial.interior.gob.cl/versiones-anteriores/do-h/19460828/#page/1
# After a brief "Winter Time" stint at -05 beginning 1947-04-01, Law Number
# 8,777, promulgated 1947-05-17, established year-round -04 "from 23:00 on the
# second day after it is published in the 'Diario Oficial'." It was published
# on Monday 1947-05-19 and so took effect from Wednesday 1947-05-21 23:00.
# https://www.diariooficial.interior.gob.cl/versiones-anteriores/do-h/19470519/#page/1
# From Eduardo Krell (1995-10-19):
# The law says to switch to DST at midnight [24:00] on the second SATURDAY
# of October.... The law is the same for March and October.
@@ -1321,12 +1348,12 @@ Rule Chile 2019 max - Sep Sun>=2 4:00u 1:00 -
# IATA SSIM anomalies: (1992-02) says 1992-03-14;
# (1996-09) says 1998-03-08. Ignore these.
# Zone NAME STDOFF RULES FORMAT [UNTIL]
Zone America/Santiago -4:42:46 - LMT 1890
-4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
Zone America/Santiago -4:42:45 - LMT 1890
-4:42:45 - SMT 1910 Jan 10 # Santiago Mean Time
-5:00 - -05 1916 Jul 1
-4:42:46 - SMT 1918 Sep 10
-4:42:45 - SMT 1918 Sep 10
-4:00 - -04 1919 Jul 1
-4:42:46 - SMT 1927 Sep 1
-4:42:45 - SMT 1927 Sep 1
-5:00 Chile -05/-04 1932 Sep 1
-4:00 - -04 1942 Jun 1
-5:00 - -05 1942 Aug 1
@@ -1336,11 +1363,11 @@ Zone America/Santiago -4:42:46 - LMT 1890
-5:00 - -05 1947 May 21 23:00
-4:00 Chile -04/-03
Zone America/Punta_Arenas -4:43:40 - LMT 1890
-4:42:46 - SMT 1910 Jan 10
-4:42:45 - SMT 1910 Jan 10
-5:00 - -05 1916 Jul 1
-4:42:46 - SMT 1918 Sep 10
-4:42:45 - SMT 1918 Sep 10
-4:00 - -04 1919 Jul 1
-4:42:46 - SMT 1927 Sep 1
-4:42:45 - SMT 1927 Sep 1
-5:00 Chile -05/-04 1932 Sep 1
-4:00 - -04 1942 Jun 1
-5:00 - -05 1942 Aug 1

View File

@@ -26,7 +26,7 @@
# Create a bundle in the build directory, containing what's needed to
# build and run JMH microbenchmarks from the OpenJDK build.
JMH_VERSION=1.32
JMH_VERSION=1.34
COMMONS_MATH3_VERSION=3.2
JOPT_SIMPLE_VERSION=4.6

View File

@@ -58,6 +58,9 @@ ifeq ($(call check-jvm-feature, compiler2), true)
ADLC_CFLAGS += -I$(TOPDIR)/src/hotspot/share
# Add file macro mappings
ADLC_CFLAGS += $(FILE_MACRO_CFLAGS)
$(eval $(call SetupNativeCompilation, BUILD_ADLC, \
NAME := adlc, \
TYPE := EXECUTABLE, \

View File

@@ -84,7 +84,7 @@ ifneq ($(call check-jvm-feature, jvmti), true)
jvmtiImpl.cpp jvmtiManageCapabilities.cpp jvmtiRawMonitor.cpp jvmtiUtil.cpp jvmtiTrace.cpp \
jvmtiCodeBlobEvents.cpp jvmtiEnv.cpp jvmtiRedefineClasses.cpp jvmtiEnvBase.cpp jvmtiEnvThreadState.cpp \
jvmtiTagMap.cpp jvmtiEventController.cpp evmCompat.cpp jvmtiEnter.xsl jvmtiExport.cpp \
jvmtiClassFileReconstituter.cpp jvmtiTagMapTable.cpp
jvmtiClassFileReconstituter.cpp jvmtiTagMapTable.cpp jvmtiEnhancedRedefineClasses.cpp
endif
ifneq ($(call check-jvm-feature, jvmci), true)

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2021, 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
@@ -204,6 +204,10 @@ public class MakeZipReproducible {
entry.setTimeLocal(timestamp);
}
// Ensure "extra" field is not set from original ZipEntry info that may be not deterministic
// eg.may contain specific UID/GID
entry.setExtra(null);
zos.putNextEntry(entry);
if (entry.getSize() > 0 && entryInputStream != null) {
entryInputStream.transferTo(zos);

View File

@@ -60,7 +60,11 @@ TARGETS += $(GENDATA_CURDATA)
################################################################################
GENDATA_CACERTS_SRC := $(TOPDIR)/make/data/cacerts/
ifneq ($(CACERTS_SRC), )
GENDATA_CACERTS_SRC := $(CACERTS_SRC)
else
GENDATA_CACERTS_SRC := $(TOPDIR)/make/data/cacerts/
endif
GENDATA_CACERTS := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/security/cacerts
$(GENDATA_CACERTS): $(BUILD_TOOLS_JDK) $(wildcard $(GENDATA_CACERTS_SRC)/*)

View File

@@ -84,7 +84,7 @@ TARGETS += $(COPY_LEGAL)
################################################################################
FONTFILE_SRC_DIR := $(TOPDIR)/src/java.desktop/share
FONTFILE_SRCS := $(wildcard $(FONTFILE_SRC_DIR)/fonts/*.ttf) $(FONTFILE_SRC_DIR)/fonts/fonts.dir $(FONTFILE_SRC_DIR)/fonts/font.conf
FONTFILE_SRCS := $(wildcard $(FONTFILE_SRC_DIR)/fonts/*.ttf) $(wildcard $(FONTFILE_SRC_DIR)/fonts/*.otf) $(FONTFILE_SRC_DIR)/fonts/fonts.dir $(FONTFILE_SRC_DIR)/fonts/font.conf
FONTFILE_TARGET_FILES := $(subst $(FONTFILE_SRC_DIR),$(LIB_DST_DIR),$(FONTFILE_SRCS))
$(LIB_DST_DIR)/fonts/%: $(FONTFILE_SRC_DIR)/fonts/%

View File

@@ -471,7 +471,6 @@ else
endif
LIBFONTMANAGER_EXTRA_HEADER_DIRS := \
libharfbuzz \
common/awt \
@@ -486,6 +485,14 @@ BUILD_LIBFONTMANAGER_FONTLIB += $(LIBFREETYPE_LIBS)
LIBFONTMANAGER_OPTIMIZATION := HIGHEST
ifneq ($(filter $(TOOLCHAIN_TYPE), gcc clang), )
# gcc (and to an extent clang) is particularly bad at optimizing these files,
# causing a massive spike in compile time. We don't care about these
# particular files anyway, so lower optimization level.
BUILD_LIBFONTMANAGER_hb-subset.cc_OPTIMIZATION := SIZE
BUILD_LIBFONTMANAGER_hb-subset-plan.cc_OPTIMIZATION := SIZE
endif
ifeq ($(call isTargetOs, windows), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
X11TextRenderer.c

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2019, 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,10 +29,16 @@ 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_JDKLIB), \
CFLAGS := $(CFLAGS_LIBDT_SHMEM), \
EXTRA_HEADER_DIRS := \
jdk.jdwp.agent:include \
jdk.jdwp.agent:libjdwp/export, \

View File

@@ -147,14 +147,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

View File

@@ -863,7 +863,7 @@ ifeq ($(call isTargetOs, linux), true)
BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exeFPRegs := -ldl
BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libAsyncGetCallTraceTest := -ldl
else
BUILD_HOTSPOT_JTREG_EXCLUDE += libtest-rw.c libtest-rwx.c libTestJNI.c \
BUILD_HOTSPOT_JTREG_EXCLUDE += libtest-rw.c libtest-rwx.c \
exeinvoke.c exestack-gap.c exestack-tls.c libAsyncGetCallTraceTest.cpp
endif
@@ -871,7 +871,7 @@ BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exesigtest := -ljvm
ifeq ($(call isTargetOs, windows), true)
BUILD_HOTSPOT_JTREG_EXECUTABLES_CFLAGS_exeFPRegs := -MT
BUILD_HOTSPOT_JTREG_EXCLUDE += exesigtest.c libterminatedThread.c
BUILD_HOTSPOT_JTREG_EXCLUDE += exesigtest.c libterminatedThread.c libTestJNI.c
BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libatExit := jvm.lib
else
BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libbootclssearch_agent += -lpthread

View File

@@ -741,4 +741,13 @@ public class TableDemo extends DemoModule {
footerTextField.setDragEnabled(dragEnabled);
}
@Override
public ImageIcon createImageIcon(String filename, String description) {
ImageIcon imageIcon = super.createImageIcon(filename, description);
AccessibleContext context = imageIcon.getAccessibleContext();
if (context!= null) {
context.setAccessibleName(description);
}
return imageIcon;
}
}

View File

@@ -2373,6 +2373,8 @@ const bool Matcher::match_rule_supported(int opcode) {
bool ret_value = true;
switch (opcode) {
case Op_OnSpinWait:
return VM_Version::supports_on_spin_wait();
case Op_CacheWB:
case Op_CacheWBPreSync:
case Op_CacheWBPostSync:
@@ -3848,7 +3850,7 @@ encode %{
// Try to CAS m->owner from NULL to current thread.
__ add(tmp, disp_hdr, (ObjectMonitor::owner_offset_in_bytes()-markWord::monitor_value));
__ cmpxchg(tmp, zr, rthread, Assembler::xword, /*acquire*/ true,
/*release*/ true, /*weak*/ false, noreg); // Sets flags for result
/*release*/ true, /*weak*/ false, rscratch1); // Sets flags for result
// Store a non-null value into the box to avoid looking like a re-entrant
// lock. The fast-path monitor unlock code checks for
@@ -3857,6 +3859,15 @@ encode %{
__ mov(tmp, (address)markWord::unused_mark().value());
__ str(tmp, Address(box, BasicLock::displaced_header_offset_in_bytes()));
__ br(Assembler::EQ, cont); // CAS success means locking succeeded
__ cmp(rscratch1, rthread);
__ br(Assembler::NE, cont); // Check for recursive locking
// Recursive lock case
__ increment(Address(disp_hdr, ObjectMonitor::recursions_offset_in_bytes() - markWord::monitor_value), 1);
// flag == EQ still from the cmp above, checking if this is a reentrant lock
__ bind(cont);
// flag == EQ indicates success
// flag == NE indicates failure
@@ -3904,11 +3915,20 @@ encode %{
__ add(tmp, tmp, -(int)markWord::monitor_value); // monitor
__ ldr(rscratch1, Address(tmp, ObjectMonitor::owner_offset_in_bytes()));
__ ldr(disp_hdr, Address(tmp, ObjectMonitor::recursions_offset_in_bytes()));
__ eor(rscratch1, rscratch1, rthread); // Will be 0 if we are the owner.
__ orr(rscratch1, rscratch1, disp_hdr); // Will be 0 if there are 0 recursions
__ cmp(rscratch1, zr); // Sets flags for result
Label notRecursive;
__ cmp(rscratch1, rthread);
__ br(Assembler::NE, cont);
__ cbz(disp_hdr, notRecursive);
// Recursive lock
__ sub(disp_hdr, disp_hdr, 1u);
__ str(disp_hdr, Address(tmp, ObjectMonitor::recursions_offset_in_bytes()));
// flag == EQ was set in the ownership check above
__ b(cont);
__ bind(notRecursive);
__ ldr(rscratch1, Address(tmp, ObjectMonitor::EntryList_offset_in_bytes()));
__ ldr(disp_hdr, Address(tmp, ObjectMonitor::cxq_offset_in_bytes()));
__ orr(rscratch1, rscratch1, disp_hdr); // Will be 0 if both are 0.
@@ -14321,6 +14341,18 @@ instruct signumF_reg(vRegF dst, vRegF src, vRegF zero, vRegF one) %{
ins_pipe(fp_uop_d);
%}
instruct onspinwait() %{
match(OnSpinWait);
ins_cost(INSN_COST);
format %{ "onspinwait" %}
ins_encode %{
__ spin_wait();
%}
ins_pipe(pipe_class_empty);
%}
// ============================================================================
// Logical Instructions

View File

@@ -2988,7 +2988,7 @@ void LIR_Assembler::membar_loadstore() { __ membar(MacroAssembler::LoadStore); }
void LIR_Assembler::membar_storeload() { __ membar(MacroAssembler::StoreLoad); }
void LIR_Assembler::on_spin_wait() {
Unimplemented();
__ spin_wait();
}
void LIR_Assembler::get_thread(LIR_Opr result_reg) {

View File

@@ -355,7 +355,7 @@ void C1_MacroAssembler::remove_frame(int framesize) {
}
void C1_MacroAssembler::verified_entry() {
void C1_MacroAssembler::verified_entry(bool breakAtEntry) {
// If we have to make this method not-entrant we'll overwrite its
// first instruction with a jump. For this action to be legal we
// must ensure that this first instruction is a B, BL, NOP, BKPT,

View File

@@ -111,7 +111,15 @@ define_pd_global(intx, InlineSmallCode, 1000);
product(int, SoftwarePrefetchHintDistance, -1, \
"Use prfm hint with specified distance in compiled code." \
"Value -1 means off.") \
range(-1, 4096)
range(-1, 4096) \
product(ccstr, OnSpinWaitInst, "none", DIAGNOSTIC, \
"The instruction to use to implement " \
"java.lang.Thread.onSpinWait()." \
"Options: none, nop, isb, yield.") \
product(uint, OnSpinWaitInstCount, 1, DIAGNOSTIC, \
"The number of OnSpinWaitInst instructions to generate." \
"It cannot be used with OnSpinWaitInst=none.") \
range(1, 99)
// end of ARCH_FLAGS

View File

@@ -129,8 +129,17 @@ static inline uint32_t uimm(uint32_t val, int hi, int lo)
uint64_t replicate(uint64_t bits, int nbits, int count)
{
assert(count > 0, "must be");
assert(nbits > 0, "must be");
assert(count * nbits <= 64, "must be");
// Special case nbits == 64 since the shift below with that nbits value
// would result in undefined behavior.
if (nbits == 64) {
return bits;
}
uint64_t result = 0;
// nbits may be 64 in which case we want mask to be -1
uint64_t mask = ones(nbits);
for (int i = 0; i < count ; i++) {
result <<= nbits;

View File

@@ -2027,15 +2027,6 @@ void MacroAssembler::increment(Address dst, int value)
str(rscratch1, dst);
}
void MacroAssembler::pusha() {
push(0x7fffffff, sp);
}
void MacroAssembler::popa() {
pop(0x7fffffff, sp);
}
// Push lots of registers in the bit set supplied. Don't push sp.
// Return the number of words pushed
int MacroAssembler::push(unsigned int bitset, Register stack) {
@@ -2677,7 +2668,7 @@ void MacroAssembler::pop_call_clobbered_registers_except(RegSet exclude) {
void MacroAssembler::push_CPU_state(bool save_vectors, bool use_sve,
int sve_vector_size_in_bytes) {
push(0x3fffffff, sp); // integer registers except lr & sp
push(RegSet::range(r0, r29), sp); // integer registers except lr & sp
if (save_vectors && use_sve && sve_vector_size_in_bytes > 16) {
sub(sp, sp, sve_vector_size_in_bytes * FloatRegisterImpl::number_of_registers);
for (int i = 0; i < FloatRegisterImpl::number_of_registers; i++) {
@@ -2713,7 +2704,14 @@ void MacroAssembler::pop_CPU_state(bool restore_vectors, bool use_sve,
reinitialize_ptrue();
}
pop(0x3fffffff, sp); // integer registers except lr & sp
// integer registers except lr & sp
pop(RegSet::range(r0, r17), sp);
#ifdef R18_RESERVED
ldp(zr, r19, Address(post(sp, 2 * wordSize)));
pop(RegSet::range(r20, r29), sp);
#else
pop(RegSet::range(r18_tls, r29), sp);
#endif
}
/**
@@ -5354,3 +5352,21 @@ void MacroAssembler::verify_cross_modify_fence_not_required() {
}
}
#endif
void MacroAssembler::spin_wait() {
for (int i = 0; i < VM_Version::spin_wait_desc().inst_count(); ++i) {
switch (VM_Version::spin_wait_desc().inst()) {
case SpinWait::NOP:
nop();
break;
case SpinWait::ISB:
isb();
break;
case SpinWait::YIELD:
yield();
break;
default:
ShouldNotReachHere();
}
}
}

View File

@@ -1123,10 +1123,6 @@ public:
void push(Register src);
void pop(Register dst);
// push all registers onto the stack
void pusha();
void popa();
void repne_scan(Register addr, Register value, Register count,
Register scratch);
void repne_scanw(Register addr, Register value, Register count,
@@ -1414,6 +1410,9 @@ public:
void cache_wb(Address line);
void cache_wbsync(bool is_pre);
// Code for java.lang.Thread::onSpinWait() intrinsic.
void spin_wait();
private:
// Check the current thread doesn't need a cross modify fence.
void verify_cross_modify_fence_not_required() PRODUCT_RETURN;

View File

@@ -0,0 +1,48 @@
/*
* Copyright (c) 2021, Amazon.com Inc. 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.
*
* 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.
*
*/
#ifndef CPU_AARCH64_SPIN_WAIT_AARCH64_HPP
#define CPU_AARCH64_SPIN_WAIT_AARCH64_HPP
class SpinWait {
public:
enum Inst {
NONE = -1,
NOP,
ISB,
YIELD
};
private:
Inst _inst;
int _count;
public:
SpinWait(Inst inst = NONE, int count = 0) : _inst(inst), _count(count) {}
Inst inst() const { return _inst; }
int inst_count() const { return _count; }
};
#endif // CPU_AARCH64_SPIN_WAIT_AARCH64_HPP

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2003, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, 2021, Red Hat Inc. All rights reserved.
* Copyright (c) 2003, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, 2022, Red Hat Inc. 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
@@ -3223,6 +3223,194 @@ class StubGenerator: public StubCodeGenerator {
return start;
}
// Arguments:
//
// Inputs:
// c_rarg0 - byte[] source+offset
// c_rarg1 - int[] SHA.state
// c_rarg2 - int offset
// c_rarg3 - int limit
//
address generate_md5_implCompress(bool multi_block, const char *name) {
__ align(CodeEntryAlignment);
StubCodeMark mark(this, "StubRoutines", name);
address start = __ pc();
Register buf = c_rarg0;
Register state = c_rarg1;
Register ofs = c_rarg2;
Register limit = c_rarg3;
Register a = r4;
Register b = r5;
Register c = r6;
Register d = r7;
Register rscratch3 = r10;
Register rscratch4 = r11;
Label keys;
Label md5_loop;
__ BIND(md5_loop);
// Save hash values for addition after rounds
__ ldrw(a, Address(state, 0));
__ ldrw(b, Address(state, 4));
__ ldrw(c, Address(state, 8));
__ ldrw(d, Address(state, 12));
#define FF(r1, r2, r3, r4, k, s, t) \
__ eorw(rscratch3, r3, r4); \
__ movw(rscratch2, t); \
__ andw(rscratch3, rscratch3, r2); \
__ addw(rscratch4, r1, rscratch2); \
__ ldrw(rscratch1, Address(buf, k*4)); \
__ eorw(rscratch3, rscratch3, r4); \
__ addw(rscratch3, rscratch3, rscratch1); \
__ addw(rscratch3, rscratch3, rscratch4); \
__ rorw(rscratch2, rscratch3, 32 - s); \
__ addw(r1, rscratch2, r2);
#define GG(r1, r2, r3, r4, k, s, t) \
__ eorw(rscratch2, r2, r3); \
__ ldrw(rscratch1, Address(buf, k*4)); \
__ andw(rscratch3, rscratch2, r4); \
__ movw(rscratch2, t); \
__ eorw(rscratch3, rscratch3, r3); \
__ addw(rscratch4, r1, rscratch2); \
__ addw(rscratch3, rscratch3, rscratch1); \
__ addw(rscratch3, rscratch3, rscratch4); \
__ rorw(rscratch2, rscratch3, 32 - s); \
__ addw(r1, rscratch2, r2);
#define HH(r1, r2, r3, r4, k, s, t) \
__ eorw(rscratch3, r3, r4); \
__ movw(rscratch2, t); \
__ addw(rscratch4, r1, rscratch2); \
__ ldrw(rscratch1, Address(buf, k*4)); \
__ eorw(rscratch3, rscratch3, r2); \
__ addw(rscratch3, rscratch3, rscratch1); \
__ addw(rscratch3, rscratch3, rscratch4); \
__ rorw(rscratch2, rscratch3, 32 - s); \
__ addw(r1, rscratch2, r2);
#define II(r1, r2, r3, r4, k, s, t) \
__ movw(rscratch3, t); \
__ ornw(rscratch2, r2, r4); \
__ addw(rscratch4, r1, rscratch3); \
__ ldrw(rscratch1, Address(buf, k*4)); \
__ eorw(rscratch3, rscratch2, r3); \
__ addw(rscratch3, rscratch3, rscratch1); \
__ addw(rscratch3, rscratch3, rscratch4); \
__ rorw(rscratch2, rscratch3, 32 - s); \
__ addw(r1, rscratch2, r2);
// Round 1
FF(a, b, c, d, 0, 7, 0xd76aa478)
FF(d, a, b, c, 1, 12, 0xe8c7b756)
FF(c, d, a, b, 2, 17, 0x242070db)
FF(b, c, d, a, 3, 22, 0xc1bdceee)
FF(a, b, c, d, 4, 7, 0xf57c0faf)
FF(d, a, b, c, 5, 12, 0x4787c62a)
FF(c, d, a, b, 6, 17, 0xa8304613)
FF(b, c, d, a, 7, 22, 0xfd469501)
FF(a, b, c, d, 8, 7, 0x698098d8)
FF(d, a, b, c, 9, 12, 0x8b44f7af)
FF(c, d, a, b, 10, 17, 0xffff5bb1)
FF(b, c, d, a, 11, 22, 0x895cd7be)
FF(a, b, c, d, 12, 7, 0x6b901122)
FF(d, a, b, c, 13, 12, 0xfd987193)
FF(c, d, a, b, 14, 17, 0xa679438e)
FF(b, c, d, a, 15, 22, 0x49b40821)
// Round 2
GG(a, b, c, d, 1, 5, 0xf61e2562)
GG(d, a, b, c, 6, 9, 0xc040b340)
GG(c, d, a, b, 11, 14, 0x265e5a51)
GG(b, c, d, a, 0, 20, 0xe9b6c7aa)
GG(a, b, c, d, 5, 5, 0xd62f105d)
GG(d, a, b, c, 10, 9, 0x02441453)
GG(c, d, a, b, 15, 14, 0xd8a1e681)
GG(b, c, d, a, 4, 20, 0xe7d3fbc8)
GG(a, b, c, d, 9, 5, 0x21e1cde6)
GG(d, a, b, c, 14, 9, 0xc33707d6)
GG(c, d, a, b, 3, 14, 0xf4d50d87)
GG(b, c, d, a, 8, 20, 0x455a14ed)
GG(a, b, c, d, 13, 5, 0xa9e3e905)
GG(d, a, b, c, 2, 9, 0xfcefa3f8)
GG(c, d, a, b, 7, 14, 0x676f02d9)
GG(b, c, d, a, 12, 20, 0x8d2a4c8a)
// Round 3
HH(a, b, c, d, 5, 4, 0xfffa3942)
HH(d, a, b, c, 8, 11, 0x8771f681)
HH(c, d, a, b, 11, 16, 0x6d9d6122)
HH(b, c, d, a, 14, 23, 0xfde5380c)
HH(a, b, c, d, 1, 4, 0xa4beea44)
HH(d, a, b, c, 4, 11, 0x4bdecfa9)
HH(c, d, a, b, 7, 16, 0xf6bb4b60)
HH(b, c, d, a, 10, 23, 0xbebfbc70)
HH(a, b, c, d, 13, 4, 0x289b7ec6)
HH(d, a, b, c, 0, 11, 0xeaa127fa)
HH(c, d, a, b, 3, 16, 0xd4ef3085)
HH(b, c, d, a, 6, 23, 0x04881d05)
HH(a, b, c, d, 9, 4, 0xd9d4d039)
HH(d, a, b, c, 12, 11, 0xe6db99e5)
HH(c, d, a, b, 15, 16, 0x1fa27cf8)
HH(b, c, d, a, 2, 23, 0xc4ac5665)
// Round 4
II(a, b, c, d, 0, 6, 0xf4292244)
II(d, a, b, c, 7, 10, 0x432aff97)
II(c, d, a, b, 14, 15, 0xab9423a7)
II(b, c, d, a, 5, 21, 0xfc93a039)
II(a, b, c, d, 12, 6, 0x655b59c3)
II(d, a, b, c, 3, 10, 0x8f0ccc92)
II(c, d, a, b, 10, 15, 0xffeff47d)
II(b, c, d, a, 1, 21, 0x85845dd1)
II(a, b, c, d, 8, 6, 0x6fa87e4f)
II(d, a, b, c, 15, 10, 0xfe2ce6e0)
II(c, d, a, b, 6, 15, 0xa3014314)
II(b, c, d, a, 13, 21, 0x4e0811a1)
II(a, b, c, d, 4, 6, 0xf7537e82)
II(d, a, b, c, 11, 10, 0xbd3af235)
II(c, d, a, b, 2, 15, 0x2ad7d2bb)
II(b, c, d, a, 9, 21, 0xeb86d391)
#undef FF
#undef GG
#undef HH
#undef II
// write hash values back in the correct order
__ ldrw(rscratch1, Address(state, 0));
__ addw(rscratch1, rscratch1, a);
__ strw(rscratch1, Address(state, 0));
__ ldrw(rscratch2, Address(state, 4));
__ addw(rscratch2, rscratch2, b);
__ strw(rscratch2, Address(state, 4));
__ ldrw(rscratch3, Address(state, 8));
__ addw(rscratch3, rscratch3, c);
__ strw(rscratch3, Address(state, 8));
__ ldrw(rscratch4, Address(state, 12));
__ addw(rscratch4, rscratch4, d);
__ strw(rscratch4, Address(state, 12));
if (multi_block) {
__ add(buf, buf, 64);
__ add(ofs, ofs, 64);
__ cmp(ofs, limit);
__ br(Assembler::LE, md5_loop);
__ mov(c_rarg0, ofs); // return ofs
}
__ ret(lr);
return start;
}
// Arguments:
//
// Inputs:
@@ -4915,18 +5103,6 @@ class StubGenerator: public StubCodeGenerator {
return entry;
}
// code for comparing 16 bytes of strings with same encoding
void compare_string_16_bytes_same(Label &DIFF1, Label &DIFF2) {
Register result = r0, str1 = r1, cnt1 = r2, str2 = r3, tmp1 = r10, tmp2 = r11;
__ ldr(rscratch1, Address(__ post(str1, 8)));
__ eor(rscratch2, tmp1, tmp2);
__ ldr(cnt1, Address(__ post(str2, 8)));
__ cbnz(rscratch2, DIFF1);
__ ldr(tmp1, Address(__ post(str1, 8)));
__ eor(rscratch2, rscratch1, cnt1);
__ ldr(tmp2, Address(__ post(str2, 8)));
__ cbnz(rscratch2, DIFF2);
}
// code for comparing 16 characters of strings with Latin1 and Utf16 encoding
void compare_string_16_x_LU(Register tmpL, Register tmpU, Label &DIFF1,
@@ -5133,97 +5309,108 @@ class StubGenerator: public StubCodeGenerator {
: "compare_long_string_same_encoding UU");
address entry = __ pc();
Register result = r0, str1 = r1, cnt1 = r2, str2 = r3, cnt2 = r4,
tmp1 = r10, tmp2 = r11;
Label SMALL_LOOP, LARGE_LOOP_PREFETCH, CHECK_LAST, DIFF2, TAIL,
LENGTH_DIFF, DIFF, LAST_CHECK_AND_LENGTH_DIFF,
DIFF_LAST_POSITION, DIFF_LAST_POSITION2;
tmp1 = r10, tmp2 = r11, tmp1h = rscratch1, tmp2h = rscratch2;
Label LARGE_LOOP_PREFETCH, LOOP_COMPARE16, DIFF, LESS16, LESS8, CAL_DIFFERENCE, LENGTH_DIFF;
// exit from large loop when less than 64 bytes left to read or we're about
// to prefetch memory behind array border
int largeLoopExitCondition = MAX2(64, SoftwarePrefetchHintDistance)/(isLL ? 1 : 2);
// cnt1/cnt2 contains amount of characters to compare. cnt1 can be re-used
// update cnt2 counter with already loaded 8 bytes
// before jumping to stub, pre-load 8 bytes already, so do comparison directly
__ eor(rscratch2, tmp1, tmp2);
__ cbnz(rscratch2, CAL_DIFFERENCE);
__ sub(cnt2, cnt2, wordSize/(isLL ? 1 : 2));
// update pointers, because of previous read
__ add(str1, str1, wordSize);
__ add(str2, str2, wordSize);
if (SoftwarePrefetchHintDistance >= 0) {
__ align(OptoLoopAlignment);
__ bind(LARGE_LOOP_PREFETCH);
__ prfm(Address(str1, SoftwarePrefetchHintDistance));
__ prfm(Address(str2, SoftwarePrefetchHintDistance));
compare_string_16_bytes_same(DIFF, DIFF2);
compare_string_16_bytes_same(DIFF, DIFF2);
for (int i = 0; i < 4; i++) {
__ ldp(tmp1, tmp1h, Address(str1, i * 16));
__ ldp(tmp2, tmp2h, Address(str2, i * 16));
__ cmp(tmp1, tmp2);
__ ccmp(tmp1h, tmp2h, 0, Assembler::EQ);
__ br(Assembler::NE, DIFF);
}
__ sub(cnt2, cnt2, isLL ? 64 : 32);
compare_string_16_bytes_same(DIFF, DIFF2);
__ add(str1, str1, 64);
__ add(str2, str2, 64);
__ subs(rscratch2, cnt2, largeLoopExitCondition);
compare_string_16_bytes_same(DIFF, DIFF2);
__ br(__ GT, LARGE_LOOP_PREFETCH);
__ cbz(cnt2, LAST_CHECK_AND_LENGTH_DIFF); // no more chars left?
__ br(Assembler::GE, LARGE_LOOP_PREFETCH);
__ cbz(cnt2, LENGTH_DIFF); // no more chars left?
}
// less than 16 bytes left?
__ subs(cnt2, cnt2, isLL ? 16 : 8);
__ br(__ LT, TAIL);
__ subs(rscratch1, cnt2, isLL ? 16 : 8);
__ br(Assembler::LE, LESS16);
__ align(OptoLoopAlignment);
__ bind(SMALL_LOOP);
compare_string_16_bytes_same(DIFF, DIFF2);
__ subs(cnt2, cnt2, isLL ? 16 : 8);
__ br(__ GE, SMALL_LOOP);
__ bind(TAIL);
__ adds(cnt2, cnt2, isLL ? 16 : 8);
__ br(__ EQ, LAST_CHECK_AND_LENGTH_DIFF);
__ bind(LOOP_COMPARE16);
__ ldp(tmp1, tmp1h, Address(__ post(str1, 16)));
__ ldp(tmp2, tmp2h, Address(__ post(str2, 16)));
__ cmp(tmp1, tmp2);
__ ccmp(tmp1h, tmp2h, 0, Assembler::EQ);
__ br(Assembler::NE, DIFF);
__ sub(cnt2, cnt2, isLL ? 16 : 8);
__ subs(rscratch2, cnt2, isLL ? 16 : 8);
__ br(Assembler::LT, LESS16);
__ ldp(tmp1, tmp1h, Address(__ post(str1, 16)));
__ ldp(tmp2, tmp2h, Address(__ post(str2, 16)));
__ cmp(tmp1, tmp2);
__ ccmp(tmp1h, tmp2h, 0, Assembler::EQ);
__ br(Assembler::NE, DIFF);
__ sub(cnt2, cnt2, isLL ? 16 : 8);
__ subs(rscratch2, cnt2, isLL ? 16 : 8);
__ br(Assembler::GE, LOOP_COMPARE16);
__ cbz(cnt2, LENGTH_DIFF);
__ bind(LESS16);
// each 8 compare
__ subs(cnt2, cnt2, isLL ? 8 : 4);
__ br(__ LE, CHECK_LAST);
__ eor(rscratch2, tmp1, tmp2);
__ cbnz(rscratch2, DIFF);
__ br(Assembler::LE, LESS8);
__ ldr(tmp1, Address(__ post(str1, 8)));
__ ldr(tmp2, Address(__ post(str2, 8)));
__ sub(cnt2, cnt2, isLL ? 8 : 4);
__ bind(CHECK_LAST);
if (!isLL) {
__ add(cnt2, cnt2, cnt2); // now in bytes
}
__ eor(rscratch2, tmp1, tmp2);
__ cbnz(rscratch2, DIFF);
__ ldr(rscratch1, Address(str1, cnt2));
__ ldr(cnt1, Address(str2, cnt2));
__ eor(rscratch2, rscratch1, cnt1);
__ cbz(rscratch2, LENGTH_DIFF);
// Find the first different characters in the longwords and
// compute their difference.
__ bind(DIFF2);
__ rev(rscratch2, rscratch2);
__ clz(rscratch2, rscratch2);
__ andr(rscratch2, rscratch2, isLL ? -8 : -16);
__ lsrv(rscratch1, rscratch1, rscratch2);
if (isLL) {
__ lsrv(cnt1, cnt1, rscratch2);
__ uxtbw(rscratch1, rscratch1);
__ uxtbw(cnt1, cnt1);
} else {
__ lsrv(cnt1, cnt1, rscratch2);
__ uxthw(rscratch1, rscratch1);
__ uxthw(cnt1, cnt1);
__ cbnz(rscratch2, CAL_DIFFERENCE);
__ sub(cnt2, cnt2, isLL ? 8 : 4);
__ bind(LESS8); // directly load last 8 bytes
if (!isLL) {
__ add(cnt2, cnt2, cnt2);
}
__ subw(result, rscratch1, cnt1);
__ b(LENGTH_DIFF);
__ ldr(tmp1, Address(str1, cnt2));
__ ldr(tmp2, Address(str2, cnt2));
__ eor(rscratch2, tmp1, tmp2);
__ cbz(rscratch2, LENGTH_DIFF);
__ b(CAL_DIFFERENCE);
__ bind(DIFF);
__ cmp(tmp1, tmp2);
__ csel(tmp1, tmp1, tmp1h, Assembler::NE);
__ csel(tmp2, tmp2, tmp2h, Assembler::NE);
// reuse rscratch2 register for the result of eor instruction
__ eor(rscratch2, tmp1, tmp2);
__ bind(CAL_DIFFERENCE);
__ rev(rscratch2, rscratch2);
__ clz(rscratch2, rscratch2);
__ andr(rscratch2, rscratch2, isLL ? -8 : -16);
__ lsrv(tmp1, tmp1, rscratch2);
__ lsrv(tmp2, tmp2, rscratch2);
if (isLL) {
__ lsrv(tmp2, tmp2, rscratch2);
__ uxtbw(tmp1, tmp1);
__ uxtbw(tmp2, tmp2);
} else {
__ lsrv(tmp2, tmp2, rscratch2);
__ uxthw(tmp1, tmp1);
__ uxthw(tmp2, tmp2);
}
__ subw(result, tmp1, tmp2);
__ b(LENGTH_DIFF);
__ bind(LAST_CHECK_AND_LENGTH_DIFF);
__ eor(rscratch2, tmp1, tmp2);
__ cbnz(rscratch2, DIFF);
__ bind(LENGTH_DIFF);
__ ret(lr);
return entry;
@@ -6182,6 +6369,18 @@ class StubGenerator: public StubCodeGenerator {
return start;
}
// Support for spin waits.
address generate_spin_wait() {
__ align(CodeEntryAlignment);
StubCodeMark mark(this, "StubRoutines", "spin_wait");
address start = __ pc();
__ spin_wait();
__ ret(lr);
return start;
}
#ifdef LINUX
// ARMv8.1 LSE versions of the atomic stubs used by Atomic::PlatformXX.
@@ -7464,6 +7663,10 @@ class StubGenerator: public StubCodeGenerator {
StubRoutines::_counterMode_AESCrypt = generate_counterMode_AESCrypt();
}
if (UseMD5Intrinsics) {
StubRoutines::_md5_implCompress = generate_md5_implCompress(false, "md5_implCompress");
StubRoutines::_md5_implCompressMB = generate_md5_implCompress(true, "md5_implCompressMB");
}
if (UseSHA1Intrinsics) {
StubRoutines::_sha1_implCompress = generate_sha1_implCompress(false, "sha1_implCompress");
StubRoutines::_sha1_implCompressMB = generate_sha1_implCompress(true, "sha1_implCompressMB");
@@ -7486,6 +7689,8 @@ class StubGenerator: public StubCodeGenerator {
StubRoutines::_updateBytesAdler32 = generate_updateBytesAdler32();
}
StubRoutines::aarch64::_spin_wait = generate_spin_wait();
#ifdef LINUX
generate_atomic_entry_points();

View File

@@ -57,6 +57,10 @@ address StubRoutines::aarch64::_string_indexof_linear_uu = NULL;
address StubRoutines::aarch64::_string_indexof_linear_ul = NULL;
address StubRoutines::aarch64::_large_byte_array_inflate = NULL;
address StubRoutines::aarch64::_method_entry_barrier = NULL;
static void empty_spin_wait() { }
address StubRoutines::aarch64::_spin_wait = CAST_FROM_FN_PTR(address, empty_spin_wait);
bool StubRoutines::aarch64::_completed = false;
/**

View File

@@ -36,7 +36,7 @@ static bool returns_to_call_stub(address return_pc) {
enum platform_dependent_constants {
code_size1 = 19000, // simply increase if too small (assembler will crash if too small)
code_size2 = 32000 // simply increase if too small (assembler will crash if too small)
code_size2 = 45000 // simply increase if too small (assembler will crash if too small)
};
class aarch64 {
@@ -72,6 +72,8 @@ class aarch64 {
static address _method_entry_barrier;
static address _spin_wait;
static bool _completed;
public:
@@ -177,6 +179,10 @@ class aarch64 {
return _method_entry_barrier;
}
static address spin_wait() {
return _spin_wait;
}
static bool complete() {
return _completed;
}

View File

@@ -1397,11 +1397,12 @@ address TemplateInterpreterGenerator::generate_native_entry(bool synchronized) {
__ cmp(rscratch1, (u1)StackOverflow::stack_guard_yellow_reserved_disabled);
__ br(Assembler::NE, no_reguard);
__ pusha(); // XXX only save smashed registers
__ push_call_clobbered_registers();
__ mov(c_rarg0, rthread);
__ mov(rscratch2, CAST_FROM_FN_PTR(address, SharedRuntime::reguard_yellow_pages));
__ blr(rscratch2);
__ popa(); // XXX only restore smashed registers
__ pop_call_clobbered_registers();
__ bind(no_reguard);
}

View File

@@ -46,6 +46,26 @@ int VM_Version::_dcache_line_size;
int VM_Version::_icache_line_size;
int VM_Version::_initial_sve_vector_length;
SpinWait VM_Version::_spin_wait;
static SpinWait get_spin_wait_desc() {
if (strcmp(OnSpinWaitInst, "nop") == 0) {
return SpinWait(SpinWait::NOP, OnSpinWaitInstCount);
} else if (strcmp(OnSpinWaitInst, "isb") == 0) {
return SpinWait(SpinWait::ISB, OnSpinWaitInstCount);
} else if (strcmp(OnSpinWaitInst, "yield") == 0) {
return SpinWait(SpinWait::YIELD, OnSpinWaitInstCount);
} else if (strcmp(OnSpinWaitInst, "none") != 0) {
vm_exit_during_initialization("The options for OnSpinWaitInst are nop, isb, yield, and none", OnSpinWaitInst);
}
if (!FLAG_IS_DEFAULT(OnSpinWaitInstCount) && OnSpinWaitInstCount > 0) {
vm_exit_during_initialization("OnSpinWaitInstCount cannot be used for OnSpinWaitInst 'none'");
}
return SpinWait{};
}
void VM_Version::initialize() {
_supports_cx8 = true;
_supports_atomic_getset4 = true;
@@ -182,6 +202,14 @@ void VM_Version::initialize() {
if (FLAG_IS_DEFAULT(UseSIMDForMemoryOps)) {
FLAG_SET_DEFAULT(UseSIMDForMemoryOps, true);
}
if (FLAG_IS_DEFAULT(OnSpinWaitInst)) {
FLAG_SET_DEFAULT(OnSpinWaitInst, "isb");
}
if (FLAG_IS_DEFAULT(OnSpinWaitInstCount)) {
FLAG_SET_DEFAULT(OnSpinWaitInstCount, 1);
}
}
if (_cpu == CPU_ARM) {
@@ -272,9 +300,8 @@ void VM_Version::initialize() {
FLAG_SET_DEFAULT(UseFMA, true);
}
if (UseMD5Intrinsics) {
warning("MD5 intrinsics are not available on this CPU");
FLAG_SET_DEFAULT(UseMD5Intrinsics, false);
if (FLAG_IS_DEFAULT(UseMD5Intrinsics)) {
UseMD5Intrinsics = true;
}
if (_features & (CPU_SHA1 | CPU_SHA2 | CPU_SHA3 | CPU_SHA512)) {
@@ -450,5 +477,7 @@ void VM_Version::initialize() {
}
#endif
_spin_wait = get_spin_wait_desc();
UNSUPPORTED_OPTION(CriticalJNINatives);
}

View File

@@ -26,6 +26,7 @@
#ifndef CPU_AARCH64_VM_VERSION_AARCH64_HPP
#define CPU_AARCH64_VM_VERSION_AARCH64_HPP
#include "spin_wait_aarch64.hpp"
#include "runtime/abstract_vm_version.hpp"
#include "utilities/sizes.hpp"
@@ -45,6 +46,8 @@ protected:
static int _icache_line_size;
static int _initial_sve_vector_length;
static SpinWait _spin_wait;
// Read additional info using OS-specific interfaces
static void get_os_cpu_info();
@@ -142,6 +145,10 @@ public:
static void get_compatible_board(char *buf, int buflen);
static const SpinWait& spin_wait_desc() { return _spin_wait; }
static bool supports_on_spin_wait() { return _spin_wait.inst() != SpinWait::NONE; }
#ifdef __APPLE__
// Is the CPU running emulated (for example macOS Rosetta running x86_64 code on M1 ARM (aarch64)
static bool is_cpu_emulated();

View File

@@ -47,7 +47,7 @@
// Convert the raw encoding form into the form expected by the
// constructor for Address.
Address Address::make_raw(int base, int index, int scale, int disp, relocInfo::relocType disp_reloc) {
RelocationHolder rspec;
RelocationHolder rspec = RelocationHolder::none;
if (disp_reloc != relocInfo::none) {
rspec = Relocation::spec_simple(disp_reloc);
}

View File

@@ -1685,6 +1685,9 @@ void LIR_Assembler::logic_op(LIR_Code code, LIR_Opr left, LIR_Opr right, LIR_Opr
} else {
assert(right->is_constant(), "must be");
const uint c = (uint)right->as_constant_ptr()->as_jint();
if (!Assembler::is_arith_imm_in_range(c)) {
BAILOUT("illegal arithmetic operand");
}
switch (code) {
case lir_logic_and: __ and_32(res, lreg, c); break;
case lir_logic_or: __ orr_32(res, lreg, c); break;
@@ -1825,8 +1828,8 @@ void LIR_Assembler::comp_op(LIR_Condition condition, LIR_Opr opr1, LIR_Opr opr2,
__ teq(xhi, yhi);
__ teq(xlo, ylo, eq);
} else {
__ subs(xlo, xlo, ylo);
__ sbcs(xhi, xhi, yhi);
__ subs(Rtemp, xlo, ylo);
__ sbcs(Rtemp, xhi, yhi);
}
} else {
ShouldNotReachHere();

View File

@@ -70,8 +70,8 @@ void C1_MacroAssembler::remove_frame(int frame_size_in_bytes) {
raw_pop(FP, LR);
}
void C1_MacroAssembler::verified_entry() {
if (C1Breakpoint) {
void C1_MacroAssembler::verified_entry(bool breakAtEntry) {
if (breakAtEntry) {
breakpoint();
}
}

View File

@@ -81,8 +81,6 @@ void RangeCheckStub::emit_code(LIR_Assembler* ce) {
if (_info->deoptimize_on_exception()) {
address a = Runtime1::entry_for(Runtime1::predicate_failed_trap_id);
// May be used by optimizations like LoopInvariantCodeMotion or RangeCheckEliminator.
DEBUG_ONLY( __ untested("RangeCheckStub: predicate_failed_trap_id"); )
//__ load_const_optimized(R0, a);
__ add_const_optimized(R0, R29_TOC, MacroAssembler::offset_to_global_toc(a));
__ mtctr(R0);

View File

@@ -87,8 +87,8 @@ void C1_MacroAssembler::build_frame(int frame_size_in_bytes, int bang_size_in_by
}
void C1_MacroAssembler::verified_entry() {
if (C1Breakpoint) illtrap();
void C1_MacroAssembler::verified_entry(bool breakAtEntry) {
if (breakAtEntry) illtrap();
// build frame
}

View File

@@ -41,17 +41,18 @@
// Compress char[] to byte[] by compressing 16 bytes at once.
void C2_MacroAssembler::string_compress_16(Register src, Register dst, Register cnt,
Register tmp1, Register tmp2, Register tmp3, Register tmp4, Register tmp5,
Label& Lfailure) {
Label& Lfailure, bool ascii) {
const Register tmp0 = R0;
const int byte_mask = ascii ? 0x7F : 0xFF;
assert_different_registers(src, dst, cnt, tmp0, tmp1, tmp2, tmp3, tmp4, tmp5);
Label Lloop, Lslow;
// Check if cnt >= 8 (= 16 bytes)
lis(tmp1, 0xFF); // tmp1 = 0x00FF00FF00FF00FF
lis(tmp1, byte_mask); // tmp1 = 0x00FF00FF00FF00FF (non ascii case)
srwi_(tmp2, cnt, 3);
beq(CCR0, Lslow);
ori(tmp1, tmp1, 0xFF);
ori(tmp1, tmp1, byte_mask);
rldimi(tmp1, tmp1, 32, 0);
mtctr(tmp2);
@@ -67,7 +68,7 @@ void C2_MacroAssembler::string_compress_16(Register src, Register dst, Register
rldimi(tmp4, tmp4, 2*8, 2*8); // _4_6_7_7
andc_(tmp0, tmp0, tmp1);
bne(CCR0, Lfailure); // Not latin1.
bne(CCR0, Lfailure); // Not latin1/ascii.
addi(src, src, 16);
rlwimi(tmp3, tmp2, 0*8, 24, 31);// _____1_3
@@ -87,20 +88,49 @@ void C2_MacroAssembler::string_compress_16(Register src, Register dst, Register
}
// Compress char[] to byte[]. cnt must be positive int.
void C2_MacroAssembler::string_compress(Register src, Register dst, Register cnt, Register tmp, Label& Lfailure) {
void C2_MacroAssembler::string_compress(Register src, Register dst, Register cnt, Register tmp,
Label& Lfailure, bool ascii) {
const int byte_mask = ascii ? 0x7F : 0xFF;
Label Lloop;
mtctr(cnt);
bind(Lloop);
lhz(tmp, 0, src);
cmplwi(CCR0, tmp, 0xff);
bgt(CCR0, Lfailure); // Not latin1.
cmplwi(CCR0, tmp, byte_mask);
bgt(CCR0, Lfailure); // Not latin1/ascii.
addi(src, src, 2);
stb(tmp, 0, dst);
addi(dst, dst, 1);
bdnz(Lloop);
}
void C2_MacroAssembler::encode_iso_array(Register src, Register dst, Register len,
Register tmp1, Register tmp2, Register tmp3, Register tmp4, Register tmp5,
Register result, bool ascii) {
Label Lslow, Lfailure1, Lfailure2, Ldone;
string_compress_16(src, dst, len, tmp1, tmp2, tmp3, tmp4, tmp5, Lfailure1, ascii);
rldicl_(result, len, 0, 64-3); // Remaining characters.
beq(CCR0, Ldone);
bind(Lslow);
string_compress(src, dst, result, tmp2, Lfailure2, ascii);
li(result, 0);
b(Ldone);
bind(Lfailure1);
mr(result, len);
mfctr(tmp1);
rldimi_(result, tmp1, 3, 0); // Remaining characters.
beq(CCR0, Ldone);
b(Lslow);
bind(Lfailure2);
mfctr(result); // Remaining characters.
bind(Ldone);
subf(result, result, len);
}
// Inflate byte[] to char[] by inflating 16 bytes at once.
void C2_MacroAssembler::string_inflate_16(Register src, Register dst, Register cnt,
Register tmp1, Register tmp2, Register tmp3, Register tmp4, Register tmp5) {

View File

@@ -32,10 +32,16 @@
// Compress char[] to byte[] by compressing 16 bytes at once.
void string_compress_16(Register src, Register dst, Register cnt,
Register tmp1, Register tmp2, Register tmp3, Register tmp4, Register tmp5,
Label& Lfailure);
Label& Lfailure, bool ascii = false);
// Compress char[] to byte[]. cnt must be positive int.
void string_compress(Register src, Register dst, Register cnt, Register tmp, Label& Lfailure);
void string_compress(Register src, Register dst, Register cnt, Register tmp,
Label& Lfailure, bool ascii = false);
// Encode UTF16 to ISO_8859_1 or ASCII. Return len on success or position of first mismatch.
void encode_iso_array(Register src, Register dst, Register len,
Register tmp1, Register tmp2, Register tmp3, Register tmp4, Register tmp5,
Register result, bool ascii);
// Inflate byte[] to char[] by inflating 16 bytes at once.
void string_inflate_16(Register src, Register dst, Register cnt,

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2021 SAP SE. All rights reserved.
* Copyright (c) 2000, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2022 SAP SE. 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
@@ -294,9 +294,57 @@ void frame::patch_pc(Thread* thread, address pc) {
}
bool frame::is_interpreted_frame_valid(JavaThread* thread) const {
// Is there anything to do?
assert(is_interpreted_frame(), "Not an interpreted frame");
return true;
// These are reasonable sanity checks
if (fp() == 0 || (intptr_t(fp()) & (wordSize-1)) != 0) {
return false;
}
if (sp() == 0 || (intptr_t(sp()) & (wordSize-1)) != 0) {
return false;
}
int min_frame_slots = (abi_minframe_size + ijava_state_size) / sizeof(intptr_t);
if (fp() - min_frame_slots < sp()) {
return false;
}
// These are hacks to keep us out of trouble.
// The problem with these is that they mask other problems
if (fp() <= sp()) { // this attempts to deal with unsigned comparison above
return false;
}
// do some validation of frame elements
// first the method
Method* m = *interpreter_frame_method_addr();
// validate the method we'd find in this potential sender
if (!Method::is_valid_method(m)) return false;
// stack frames shouldn't be much larger than max_stack elements
// this test requires the use of unextended_sp which is the sp as seen by
// the current frame, and not sp which is the "raw" pc which could point
// further because of local variables of the callee method inserted after
// method arguments
if (fp() - unextended_sp() > 1024 + m->max_stack()*Interpreter::stackElementSize) {
return false;
}
// validate bci/bcx
address bcp = interpreter_frame_bcp();
if (m->validate_bci_from_bcp(bcp) < 0) {
return false;
}
// validate constantPoolCache*
ConstantPoolCache* cp = *interpreter_frame_cache_addr();
if (MetaspaceObj::is_valid(cp) == false) return false;
// validate locals
address locals = (address) *interpreter_frame_locals_addr();
return thread->is_in_stack_range_incl(locals, (address)fp());
}
BasicType frame::interpreter_frame_result(oop* oop_result, jvalue* value_result) {

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 1997, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2021 SAP SE. All rights reserved.
* Copyright (c) 1997, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2022 SAP SE. 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
@@ -2942,16 +2942,17 @@ void MacroAssembler::compiler_fast_lock_object(ConditionRegister flag, Register
// Store a non-null value into the box.
std(box, BasicLock::displaced_header_offset_in_bytes(), box);
beq(flag, cont);
# ifdef ASSERT
// Check for recursive locking.
cmpd(flag, current_header, R16_thread);
bne(flag, cont);
// We have acquired the monitor, check some invariants.
addi(/*monitor=*/temp, temp, -ObjectMonitor::owner_offset_in_bytes());
// Invariant 1: _recursions should be 0.
//assert(ObjectMonitor::recursions_size_in_bytes() == 8, "unexpected size");
asm_assert_mem8_is_zero(ObjectMonitor::recursions_offset_in_bytes(), temp,
"monitor->_recursions should be 0");
# endif
// Current thread already owns the lock. Just increment recursions.
Register recursions = displaced_header;
ld(recursions, ObjectMonitor::recursions_offset_in_bytes()-ObjectMonitor::owner_offset_in_bytes(), temp);
addi(recursions, recursions, 1);
std(recursions, ObjectMonitor::recursions_offset_in_bytes()-ObjectMonitor::owner_offset_in_bytes(), temp);
#if INCLUDE_RTM_OPT
} // use_rtm()
@@ -2967,8 +2968,7 @@ void MacroAssembler::compiler_fast_unlock_object(ConditionRegister flag, Registe
bool try_bias, bool use_rtm) {
assert_different_registers(oop, box, temp, displaced_header, current_header);
assert(flag != CCR0, "bad condition register");
Label cont;
Label object_has_monitor;
Label cont, object_has_monitor, notRecursive;
if (try_bias) {
biased_locking_exit(flag, oop, current_header, cont);
@@ -3039,11 +3039,16 @@ void MacroAssembler::compiler_fast_unlock_object(ConditionRegister flag, Registe
#endif
ld(displaced_header, ObjectMonitor::recursions_offset_in_bytes(), current_header);
xorr(temp, R16_thread, temp); // Will be 0 if we are the owner.
orr(temp, temp, displaced_header); // Will be 0 if there are 0 recursions.
cmpdi(flag, temp, 0);
cmpd(flag, temp, R16_thread);
bne(flag, cont);
addic_(displaced_header, displaced_header, -1);
blt(CCR0, notRecursive); // Not recursive if negative after decrement.
std(displaced_header, ObjectMonitor::recursions_offset_in_bytes(), current_header);
b(cont); // flag is already EQ here.
bind(notRecursive);
ld(temp, ObjectMonitor::EntryList_offset_in_bytes(), current_header);
ld(displaced_header, ObjectMonitor::cxq_offset_in_bytes(), current_header);
orr(temp, temp, displaced_header); // Will be 0 if both are 0.

View File

@@ -157,6 +157,6 @@
}
// Implements a variant of EncodeISOArrayNode that encode ASCII only
static const bool supports_encode_ascii_array = false;
static const bool supports_encode_ascii_array = true;
#endif // CPU_PPC_MATCHER_PPC_HPP

View File

@@ -12798,30 +12798,26 @@ instruct encode_iso_array(rarg1RegP src, rarg2RegP dst, iRegIsrc len, iRegIdst r
effect(TEMP_DEF result, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4, TEMP tmp5,
USE_KILL src, USE_KILL dst, KILL ctr, KILL cr0);
ins_cost(300);
format %{ "Encode array $src,$dst,$len -> $result \t// KILL $tmp1, $tmp2, $tmp3, $tmp4, $tmp5" %}
format %{ "Encode iso array $src,$dst,$len -> $result \t// KILL $tmp1, $tmp2, $tmp3, $tmp4, $tmp5" %}
ins_encode %{
Label Lslow, Lfailure1, Lfailure2, Ldone;
__ string_compress_16($src$$Register, $dst$$Register, $len$$Register, $tmp1$$Register,
$tmp2$$Register, $tmp3$$Register, $tmp4$$Register, $tmp5$$Register, Lfailure1);
__ rldicl_($result$$Register, $len$$Register, 0, 64-3); // Remaining characters.
__ beq(CCR0, Ldone);
__ bind(Lslow);
__ string_compress($src$$Register, $dst$$Register, $result$$Register, $tmp2$$Register, Lfailure2);
__ li($result$$Register, 0);
__ b(Ldone);
__ encode_iso_array($src$$Register, $dst$$Register, $len$$Register, $tmp1$$Register, $tmp2$$Register,
$tmp3$$Register, $tmp4$$Register, $tmp5$$Register, $result$$Register, false);
%}
ins_pipe(pipe_class_default);
%}
__ bind(Lfailure1);
__ mr($result$$Register, $len$$Register);
__ mfctr($tmp1$$Register);
__ rldimi_($result$$Register, $tmp1$$Register, 3, 0); // Remaining characters.
__ beq(CCR0, Ldone);
__ b(Lslow);
__ bind(Lfailure2);
__ mfctr($result$$Register); // Remaining characters.
__ bind(Ldone);
__ subf($result$$Register, $result$$Register, $len$$Register);
// encode char[] to byte[] in ASCII
instruct encode_ascii_array(rarg1RegP src, rarg2RegP dst, iRegIsrc len, iRegIdst result, iRegLdst tmp1,
iRegLdst tmp2, iRegLdst tmp3, iRegLdst tmp4, iRegLdst tmp5, regCTR ctr, flagsRegCR0 cr0) %{
predicate(((EncodeISOArrayNode*)n)->is_ascii());
match(Set result (EncodeISOArray src (Binary dst len)));
effect(TEMP_DEF result, TEMP tmp1, TEMP tmp2, TEMP tmp3, TEMP tmp4, TEMP tmp5,
USE_KILL src, USE_KILL dst, KILL ctr, KILL cr0);
ins_cost(300);
format %{ "Encode ascii array $src,$dst,$len -> $result \t// KILL $tmp1, $tmp2, $tmp3, $tmp4, $tmp5" %}
ins_encode %{
__ encode_iso_array($src$$Register, $dst$$Register, $len$$Register, $tmp1$$Register, $tmp2$$Register,
$tmp3$$Register, $tmp4$$Register, $tmp5$$Register, $result$$Register, true);
%}
ins_pipe(pipe_class_default);
%}

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 1997, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2021 SAP SE. All rights reserved.
* Copyright (c) 1997, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2022 SAP SE. 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
@@ -4616,8 +4616,6 @@ class StubGenerator: public StubCodeGenerator {
public:
StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
// replace the standard masm with a special one:
_masm = new MacroAssembler(code);
if (all) {
generate_all();
} else {

View File

@@ -74,8 +74,8 @@ void C1_MacroAssembler::build_frame(int frame_size_in_bytes, int bang_size_in_by
push_frame(frame_size_in_bytes);
}
void C1_MacroAssembler::verified_entry() {
if (C1Breakpoint) z_illtrap(0xC1);
void C1_MacroAssembler::verified_entry(bool breakAtEntry) {
if (breakAtEntry) z_illtrap(0xC1);
}
void C1_MacroAssembler::lock_object(Register hdr, Register obj, Register disp_hdr, Label& slow_case) {

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2019 SAP SE. All rights reserved.
* Copyright (c) 2016, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2022 SAP SE. 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
@@ -117,8 +117,8 @@ bool frame::safe_for_sender(JavaThread *thread) {
return false;
}
z_abi_160* sender_abi = (z_abi_160*) fp;
intptr_t* sender_sp = (intptr_t*) sender_abi->callers_sp;
z_abi_16* sender_abi = (z_abi_16*)fp;
intptr_t* sender_sp = (intptr_t*) fp;
address sender_pc = (address) sender_abi->return_pc;
// We must always be able to find a recognizable pc.
@@ -142,7 +142,7 @@ bool frame::safe_for_sender(JavaThread *thread) {
// sender_fp must be within the stack and above (but not
// equal) current frame's fp.
if (!thread->is_in_stack_range_excl(sender_fp, fp)) {
return false;
return false;
}
// If the potential sender is the interpreter then we can do some more checking.
@@ -298,9 +298,55 @@ void frame::patch_pc(Thread* thread, address pc) {
}
bool frame::is_interpreted_frame_valid(JavaThread* thread) const {
// Is there anything to do?
assert(is_interpreted_frame(), "Not an interpreted frame");
return true;
// These are reasonable sanity checks
if (fp() == 0 || (intptr_t(fp()) & (wordSize-1)) != 0) {
return false;
}
if (sp() == 0 || (intptr_t(sp()) & (wordSize-1)) != 0) {
return false;
}
int min_frame_slots = (z_abi_16_size + z_ijava_state_size) / sizeof(intptr_t);
if (fp() - min_frame_slots < sp()) {
return false;
}
// These are hacks to keep us out of trouble.
// The problem with these is that they mask other problems
if (fp() <= sp()) { // this attempts to deal with unsigned comparison above
return false;
}
// do some validation of frame elements
// first the method
// Need to use "unchecked" versions to avoid "z_istate_magic_number" assertion.
Method* m = (Method*)(ijava_state_unchecked()->method);
// validate the method we'd find in this potential sender
if (!Method::is_valid_method(m)) return false;
// stack frames shouldn't be much larger than max_stack elements
// this test requires the use of unextended_sp which is the sp as seen by
// the current frame, and not sp which is the "raw" pc which could point
// further because of local variables of the callee method inserted after
// method arguments
if (fp() - unextended_sp() > 1024 + m->max_stack()*Interpreter::stackElementSize) {
return false;
}
// validate bci/bcx
address bcp = (address)(ijava_state_unchecked()->bcp);
if (m->validate_bci_from_bcp(bcp) < 0) {
return false;
}
// validate constantPoolCache*
ConstantPoolCache* cp = (ConstantPoolCache*)(ijava_state_unchecked()->cpoolCache);
if (MetaspaceObj::is_valid(cp) == false) return false;
// validate locals
address locals = (address)(ijava_state_unchecked()->locals);
return thread->is_in_stack_range_incl(locals, (address)fp());
}
BasicType frame::interpreter_frame_result(oop* oop_result, jvalue* value_result) {

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2019 SAP SE. All rights reserved.
* Copyright (c) 2016, 2022, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2022 SAP SE. 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
@@ -2404,9 +2404,6 @@ class StubGenerator: public StubCodeGenerator {
public:
StubGenerator(CodeBuffer* code, bool all) : StubCodeGenerator(code) {
// Replace the standard masm with a special one:
_masm = new MacroAssembler(code);
_stub_count = !all ? 0x100 : 0x200;
if (all) {
generate_all();

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