Compare commits

...

1656 Commits

Author SHA1 Message Date
Vitaly Provodin
873c9deb15 JBR-2957 notarize JBR and JBRSDK as APPL 2020-12-28 05:23:32 +07:00
Vitaly Provodin
f0ab3813f3 Revert "JBR-2526: make CPlatformResponder logic the same as in openjdk"
This reverts commit d2ee9bd6
2020-12-26 09:09:48 +07:00
Alexander Lobas
a84736ebcc JBR-2893 Big Sur: Add support of opening project as tabs IDEA-257932 Big Sur: IDEA hangs after closing a project tab after exiting and entering full screen 2020-12-25 20:40:32 +03:00
Alexander Lobas
f02e31a440 JBR-2893 Big Sur: Add support of opening project as tabs IDEA-257932 Big Sur: IDEA hangs after closing a project tab after exiting and entering full screen 2020-12-25 20:40:32 +03:00
Alexey Ushakov
809ae5fedc Merge pull request #38 from trespasserw/patch-1
README: correcting proper nouns
2020-12-25 18:40:19 +03:00
Alexey Ushakov
8a58a000e3 Merge pull request #44 from bell-sw/update_188
jdk-11.0.9.1-ga update
2020-12-25 18:35:50 +03:00
Alexey Ushakov
bfc6ed7f6e Merge pull request #34 from JetBrains/mono/2.002
JetBrains Mono release 2.002
2020-12-25 18:33:11 +03:00
Alexey Ushakov
3dbd4af7ae JBR-1370 White square when running on dwm or bspwm
Added support of dwm via GDMSESSION env property
2020-12-24 10:29:54 -08:00
Dmitry Batrak
2d9fb9e7b8 JBR-2977 Opening a recent project in a new window doesn't bring this window to the front 2020-12-24 17:39:18 +03:00
Nikita Gubarkov
f37901ffb0 JBR-2910 Fixed fractional metrics for outline glyphs in freetypeScaler 2020-12-23 20:16:59 +03:00
Vitaly Provodin
e15dad041c JBR-667 add shenandoahgc feature 2020-12-23 08:35:17 +07:00
Vitaly Provodin
580a370d19 JBR-2956 add JNF into jbrsdk binaries & fix signing JBRSDK 2020-12-23 04:37:54 +07:00
Vitaly Provodin
7642ffdd5a JBR-2957 do not stop tar from including hidden ._ files in archives 2020-12-23 04:34:56 +07:00
Vitaly Provodin
d8443a1cbe JBR-2938 force codesign on macOS 2020-12-23 04:14:57 +07:00
Vitaly Provodin
0718402ff5 JBR-2526 specify default value for the architecture parameter 2020-12-23 04:14:56 +07:00
Artem Bochkarev
4281b031e6 JBR-2526: support aarch64 in build script 2020-12-23 04:14:55 +07:00
Artem Bochkarev
d2ee9bd66e JBR-2526: make CPlatformResponder logic the same as in openjdk
this fixes problems with keyboard input on BigSur-AARCH64
2020-12-23 04:14:54 +07:00
Artem Bochkarev
bf7d47e3bf JBR-2526: remove obsolete code
minor fixes for azul patches
2020-12-23 04:14:53 +07:00
Artem Bochkarev
4b519165aa ZULU-18344: Fix gtests to do W^X on VM code calls 2020-12-23 04:14:52 +07:00
Artem Bochkarev
ca1ab64827 8253791: Issue with useAppleColor check in CSystemColors.m
Reviewed-by: phh, lucy, serb
2020-12-23 04:14:52 +07:00
Artem Bochkarev
c18cb04d88 8253375: OSX build fails with Xcode 12.0 (12A7209)
Summary: Replace double array with short array in AdapterHandlerLibrary::create_native_wrapper, add parens around ?: in CSystemColors:getColor
Reviewed-by: prr, kbarrett, lucy
2020-12-23 04:14:51 +07:00
Artem Bochkarev
3b7443c997 ZULU-18865: Disable CDS on macarm 2020-12-23 04:14:50 +07:00
Artem Bochkarev
5fead08584 ZULU-18973: Support macarm builds on apple silicon host 2020-12-23 04:14:49 +07:00
Artem Bochkarev
598cf7049c ZULU-17241: MacARM: CPU feature detection 2020-12-23 04:14:48 +07:00
Artem Bochkarev
8a8349defe 8253015: Aarch64: Move linux code out from generic CPU feature detection
Reviewed-by: aph
2020-12-23 04:14:47 +07:00
Artem Bochkarev
bc4b8e593c Backed out changeset 43ca3f690588: ZULU-17255: Disable CPU feature detection 2020-12-23 04:14:46 +07:00
Artem Bochkarev
b67de1a1e3 Backed out changeset b5afa94104cb: ZULU-18140: Remove unexpected JVM output 2020-12-23 04:14:45 +07:00
Artem Bochkarev
370727ad41 ZULU-18362: Failure in runtime/NMT/CheckForProperDetailStackTrace.java - 'AllocateHeap' found in stdout 2020-12-23 04:14:44 +07:00
Artem Bochkarev
48cc9e5374 ZULU-18759: Implement SA for macarm 2020-12-23 04:14:42 +07:00
Artem Bochkarev
510fab2c07 ZULU-18361: [TESTBUG] Failure in runtime/CompressedOops/CompressedClassPointers.java - 'Narrow klass base: 0x0000000000000000' missing from stdout/stderr 2020-12-23 04:14:41 +07:00
Artem Bochkarev
aea9725329 ZULU-18130: Refactor ZULU-17389 for inclusion into openjdk 2020-12-23 04:14:41 +07:00
Artem Bochkarev
1bc60057f4 ZULU-18388: Fix X->W transition in JVMTI 2020-12-23 04:14:40 +07:00
Artem Bochkarev
81649c99de ZULU-18417: Implement JVMTI call declaration for mac_aarch64 2020-12-23 04:14:39 +07:00
Artem Bochkarev
d2cadcef11 ZULU-18387: zulu_macarm crashes in C1 when working with above 32-bit memory regions 2020-12-23 04:14:38 +07:00
Artem Bochkarev
ac4e1f5be0 ZULU-18290: [TESTBUG]Fix missing separator in ArgumentHandler.java 2020-12-23 04:14:37 +07:00
Artem Bochkarev
5d545329ad ZULU-18251: Update dt_shmem block list for many jdi tests 2020-12-23 04:14:36 +07:00
Artem Bochkarev
9e8db31e71 ZULU-18231: Make codesign to rewrite signature when signing 2020-12-23 04:14:35 +07:00
Artem Bochkarev
f8d7b9e0b9 ZULU-18202: Solaris builds are broken after ZULU-17910 on 13 and 11 part2 2020-12-23 04:14:34 +07:00
Artem Bochkarev
9c6f6f2a12 ZULU-18200: Solaris builds are broken after ZULU-17910 on 13 and 11 2020-12-23 04:14:33 +07:00
Artem Bochkarev
3e8f36e723 ZULU-18198: Solaris builds are broken after ZULU-17141 on 13 and 11 2020-12-23 04:14:32 +07:00
Artem Bochkarev
db476a1787 ZULU-18174: Make tier1 is broken with xcode12 2020-12-23 04:14:31 +07:00
Artem Bochkarev
740e6c6534 ZULU-17141: Lock JIT memory when executing 2020-12-23 04:14:29 +07:00
Artem Bochkarev
f317336a65 ZULU-17910: Import JDK-8234930: Use MAP_JIT when allocating pages for code cache on macOS
http://cr.openjdk.java.net/~akozlov/8234930/webrev.00/
2020-12-23 04:14:28 +07:00
Artem Bochkarev
49c7d75922 ZULU-17387: Port X18 exclusion patch from win_aarch64 jep 2020-12-23 04:14:27 +07:00
Artem Bochkarev
06e1ffdccb ZULU-17389: Support macos aarch64 packed abi 2020-12-23 04:13:56 +07:00
Artem Bochkarev
9398632bdb ZULU-18140: Remove unexpected JVM output 2020-12-23 04:13:23 +07:00
Artem Bochkarev
c762636c1a ZULU-17243: Implement aarch64_get_thread_helper 2020-12-23 04:13:22 +07:00
Artem Bochkarev
8e9b28f521 ZULU-17253: Disable SA for macos/aarch64 2020-12-23 04:12:56 +07:00
Artem Bochkarev
00c3e8774a ZULU-17145: Do not use objc_msgSend_stret 2020-12-23 04:12:29 +07:00
Artem Bochkarev
cfd633b9fe ZULU-17255: Disable CPU feature detection 2020-12-23 04:12:28 +07:00
Artem Bochkarev
79371ddf34 ZULU-17139: Add os_cpu/bsd_aarch64 based on linux_aarch64
ZULU-17386: Remove sigtrap leftovers from bsd_aarch64
2020-12-23 04:11:59 +07:00
Artem Bochkarev
73ac0cc856 8251930: Native types mismatch in hotspot 2020-12-23 04:11:57 +07:00
Artem Bochkarev
9718b44236 8250824: AArch64: follow up for JDK-8248414
Summary: The original change missed to update an assert.
Reviewed-by: dholmes
Contributed-by: monica.beckwith@microsoft.com, luhenry@microsoft.com, beurba@microsoft.com
2020-12-23 04:11:56 +07:00
Artem Bochkarev
3d9a4eef55 8248414: AArch64: Remove uses of long and unsigned long ints 2020-12-23 04:11:55 +07:00
Artem Bochkarev
6ef822dd72 ZULU-17909: Initial load 2020-12-23 04:11:46 +07:00
Artem Bochkarev
20750eaf89 ZULU-17256: Remove obsolete code in AWTView.m 2020-12-23 04:10:41 +07:00
Artem Bochkarev
072d69f050 8250876: Fix issues with cross-compile on macos
Reviewed-by: erikj, ihse
2020-12-23 04:10:40 +07:00
Artem Bochkarev
4754d939e5 8233787: Break cycle in vm_version* includes 2020-12-23 04:10:39 +07:00
Artem Bochkarev
9c5d643170 8211296: Remove HotSpot deprecation warning suppression for Mac/clang
Summary: Removed deprecation warning suppression, fixed uses of deprecated functions.
Reviewed-by: dholmes, mikael
2020-12-23 04:10:39 +07:00
Denis Konoplev
c811c295c2 JBR-2891: Post PhaseEvents in the begin and end of Magnify and Rotate 2020-12-22 14:25:31 +03:00
Dmitry Batrak
20fe78b650 JBR-2973 Copy/Move dialog not in the focus on drag-n-drop to Project Tool window from external application 2020-12-21 18:31:49 +03:00
Dmitry Batrak
9d86b4d235 JBR-2971 Log more information about window creation and property changes 2020-12-21 13:05:38 +03:00
Dmitry Batrak
0a9f16dc90 JBR-2907 [JCK] Font.equals(Font) returns false after serialization/deserialization. 2020-12-16 17:05:59 +03:00
Dmitry Batrak
53489fab27 IDEA-257525 Unable to show Chinese when using IDEA mac ARM version
fix typo
2020-12-16 09:32:11 +03:00
Dmitry Batrak
92b00d50b5 IDEA-257525 Unable to show Chinese when using IDEA mac ARM version
update following JR-CR-714
2020-12-15 19:35:57 +03:00
Artem Semenov
2e0b486c59 JR-CR-712 JBR-2928 In trees in which the root is not displayed, nodes of the first level are not pronounced 2020-12-15 13:48:16 +03:00
Dmitry Batrak
9b7113a6cf IDEA-257525 Unable to show Chinese when using IDEA mac ARM version
The proposed solution is to use a 'normal' font as a base for 'San Francisco' font fallback.
Most of its fallback components/candidates (provided by the OS) are expected to be normal
fonts as well, and so the resulting coverage of Unicode character repertoire should be much better.
2020-12-14 20:12:43 +03:00
Conor Cleary
8dc3fcd392 JBR-2932 backport fix for NetworkInterface/UniqueMacAddressesTest
8246741: NetworkInterface/UniqueMacAddressesTest: mac address uniqueness test failed

Reviewed-by: chegar, dfuchs
2020-12-11 18:37:05 +07:00
Elena Sayapina
4deb3bbe61 JBR-2585 [TESTBUG] TouchScreenEvent tests affect tests simulating mouse actions
- added workaround for JBR-2585
- added README.md about manual test run
- made an update to close LinuxTouchScreenDevice properly
- added an error exit from linux shell script if sudo password is empty or chown fails
2020-12-09 18:43:24 +07:00
Elena Sayapina
eda8e4d50e JBR-2657 [TESTBUG] ChainOfPopupsFocusTest misbehaving on Windows
- changed open popup shortcut from Ctrl+N to Ctrl+M, so no new explorer windows appear if desktop gets focused by error
- added a click on the main test frame, so it gets focus when running from background cygwin process on Windows, otherwise it just flashes on the taskbar
2020-12-09 18:38:45 +07:00
Sergey Bylokhov
84d4918aa2 IDEA-157583 Backport fix for Wrong popup menu position on dual screen
8223045: GraphicsEnvironment does not detect resolution changes in multiscreen systems

Reviewed-by: prr
2020-12-09 17:03:01 +07:00
Artem Semenov
c8d46c2c23 JR-CR-702 JBR-2785 Implement accessibility for JTRee 2020-12-08 16:43:11 +03:00
Artem Bochkarev
f8c0077b2f JBR-2562: log suppressed exception into jbr_err 2020-12-04 12:21:08 +03:00
Egor Ushakov
1437ff8717 fixed navigation to issues from vcs log 2020-12-02 19:18:25 +03:00
Artem Bochkarev
93cbab2f2d JBR-2562: fixed invokation of parent method 2020-12-02 12:56:59 +03:00
Artem Bochkarev
dd055b5970 JBR-2562: suppress exceptions from [NSWindow _changeJustMain]
temporary workaround to prevent crashes
2020-11-30 18:46:29 +03:00
Alexey Ushakov
2c8cdb221b JBR-2382 Provide detailed stack trace in crash dumps for unhandled ObjC exceptions
Used user home dir for jbr_err files. Removed logging with reportException method
2020-11-25 20:12:54 +03:00
Mikhail Grishchenko
d34d6528fe JBR-2890 Disable jcef tests on 32-bit and aarch64 platforms 2020-11-25 21:06:09 +07:00
Dmitry Batrak
1d525a2d2f added RobotSmokeTest
this test failing in jtreg launch most probably indicates either some problem with the environment (e.g. some windows left open from previously launched processes) or with java.awt.Robot implementation
2020-11-25 16:33:47 +03:00
Artem Semenov
3038fc95c6 JR-CR-698: JBR-2877 Fix accessibility Label for lists 2020-11-24 11:04:53 +03:00
Artem Semenov
10a30e2135 JR-CR-673: JBR-2649 A11y Make accessibility for JTable 2020-11-24 11:04:52 +03:00
Artem Semenov
b46c4429b4 [a11y] Renderer lists are not spoken: JBR-2457 2020-11-24 11:04:52 +03:00
Anton Tarasov
e51648f368 [a11y] Rename JavaAxObjectProvider and PlatformAxObject
Renamed:
  JavaAxObjectProvider -> JavaBaseProvider
  PlatformAxObject -> PlatformAxElement
  PlatformAxObjectProvider -> PlatformAxElementProvider

Reasoning:
  JavaBaseProvider provides JavaBaseAccessibility and subclasses
  PlatformAxElement inherits from NSAccessibilityElement
2020-11-24 11:04:52 +03:00
Anton Tarasov
235dbdc3f0 [a11y] Add getAccessibilityWindow to PlatformAxObject 2020-11-24 11:04:52 +03:00
Anton Tarasov
c8f68f23d9 [a11y] Add JavaElementAccessibility for all NSAccessibilityElement subclasses
- JavaElementAccessibility (and respective PlatformAxObject) is the base class for elements conforming to the new a11y protocol
2020-11-24 11:04:52 +03:00
Anton Tarasov
5cc0870756 [a11y] Split NSElementAccessibilty and NSObject hierarchies
- Mixing the two hierarchies does not work, so split it
- Implement binding b/w associated objects of the two hierarchies via new protocols: JavaAxObjectProvider, PlatformAxObjectProvider
2020-11-24 11:04:52 +03:00
Anton Tarasov
a50a5f1bea [a11y] Separate base part from JavaComponentAccessibility
- Create JavaBaseAccessibility and JavaListAccessibility for the new a11y
- Adopt NSAccessibilityList protocol (based on investigations by Artem Semenov)
- Use JavaComponentAccessibility for the legacy a11y
2020-11-24 11:04:52 +03:00
Alexey Ushakov
95a47810d5 JBR-2382 Provide detailed stack trace in crash dumps for unhandled ObjC exceptions
Used process workdir for jbr_err files. Added one more logging to reportException method
2020-11-23 21:04:02 +03:00
Alexey Ushakov
8cb0377a31 JBR-2879 Big Sur: Opening project in new window results in opening project in another tab
Disabled Tabbing mode for all NSWindows
2020-11-20 16:52:53 +03:00
Mikhail Grishchenko
66ad6472ae JBR-2412 [windows] mouse listener does not work for jcef
fixed test name in @run tag
2020-11-20 18:26:52 +07:00
Vitaly Provodin
0a37bf022c updated JTreg exclude list 2020-11-20 05:42:17 +07:00
Mikhail Grishchenko
bed977e88e JBR-2865 Disable jcef tests on 32-bit platforms 2020-11-19 18:24:03 +07:00
Mikhail Grishchenko
04246aac57 JBR-2412 [windows] mouse listener does not work for jcef
Rename test.
2020-11-19 17:53:12 +07:00
Artem Semenov
cd5682f5b9 JR-CR-693 JBR-2786 Create a manual test to test Accessibility in JTree 2020-11-19 12:09:09 +03:00
Anton Tarasov
bad748e3d0 JBR-2872 improve: JBR-2866 JCEF: Markdown editor steals focus from a different frame 2020-11-18 19:35:01 +03:00
Thejasvi Voniadka
176016c7db 8158880: test/java/time/tck/java/time/format/TCKDateTimeFormatterBuilder.java fail with zh_CN locale
Reviewed-by: naoto
2020-11-17 18:11:10 +07:00
Dmitry Batrak
98a9219c23 improve TitleBarClickTest stability on Linux 2020-11-17 13:47:56 +03:00
Anton Tarasov
697259b968 JBR-2866 JCEF: Markdown editor steals focus from a different frame 2020-11-16 19:39:10 +03:00
Dmitry Batrak
010f6fc951 fix WindowWithoutParentTest failures on Windows 2020-11-16 18:28:15 +03:00
Dmitry Batrak
e8bbd8ffdd add comments explaining delays used in focus tests 2020-11-16 18:06:23 +03:00
Dmitry Batrak
cd6dd5c3cf improve stability of focus tests on Linux
* use 'WINDOW_GAINED_FOCUS' event instead of 'WINDOW_OPENED' to track window creation - on Linux the latter can be dispatched before the window is actually mapped
* add additional delay before mouse click emulation - under GNOME, even if window is known to be mapped and focused, click at its location can be dispatched to another (underlying) window (probably because GNOME might not have updated its internal state right after new window appearing)
2020-11-16 18:03:27 +03:00
goetz
f9a5f5e009 Added tag jdk-11.0.9.1-ga for changeset 31affc22b3b5 2020-11-15 05:58:16 +07:00
thartmann
8b8d0ccb9a 8250861: Crash in MinINode::Ideal(PhaseGVN*, bool)
Summary: Added missing NULL checks.
Reviewed-by: kvn, chagedorn
2020-11-15 05:58:12 +07:00
goetz
c21fec4119 8255781: Bump patch update version for OpenJDK: jdk-11.0.9.1
Reviewed-by: clanger
2020-11-15 05:58:08 +07:00
Alexander Zuev
0fa5500adf JBR-2859 backport fix for JFrame memory leak
4907798: MEMORY LEAK: javax.swing.plaf.basic.BasicPopupMenuUI$MenuKeyboardHelper

Reviewed-by: psadhukhan, serb
2020-11-13 16:57:34 +07:00
goetz
9f835d753e Added tag jdk-11.0.9.1-ga for changeset 31affc22b3b5 2020-11-12 11:37:15 -05:00
thartmann
387470fc07 8250861: Crash in MinINode::Ideal(PhaseGVN*, bool)
Summary: Added missing NULL checks.
Reviewed-by: kvn, chagedorn
2020-11-12 11:28:35 -05:00
goetz
72a9541a6c 8255781: Bump patch update version for OpenJDK: jdk-11.0.9.1
Reviewed-by: clanger
2020-11-12 11:28:34 -05:00
Mikhail Grishchenko
b7cde4fd05 JBR-2639, JBR-2412 [jcef] Tests that checks mouse events 2020-11-12 17:49:21 +07:00
Vitaly Provodin
e89ed58cfa JBR-2853 fix issues with remote debugging 2020-11-12 06:18:23 +07:00
Dmitry Batrak
cd863bac0d JBR-2854 [macOS] Undecorated window without parent steals focus on showing 2020-11-10 19:12:08 +03:00
Dmitry Batrak
e94f6057a4 JBR-2847 Always dispatch KEY_TYPED event to the same component as KEY_PRESSED event
also fixes JBR-2834, IDEA-254466, IDEA-254466
2020-11-09 12:17:50 +03:00
Dmitry Batrak
e30ef51d71 revert fix for JBR-2834 (Typing happens in the editor when comparing editor to clipboard)
the problem will be fixed with JBR-2847
2020-11-08 17:03:05 +03:00
Dmitry Batrak
acd7e3b2da JBR-2843 No caret in merge window 2020-11-05 13:07:52 +03:00
Vitaly Provodin
83f1177a90 JBR-2846 fix misprint causing the jbrsdk-fastdebug build miss 2020-11-05 08:11:57 +07:00
Vitaly Provodin
5e7e8fcc97 updated JTreg exclude list 2020-11-04 05:01:09 +07:00
Dmitry Batrak
504c17b3b0 JBR-2834 Typing happens in the editor when comparing editor to clipboard 2020-10-30 12:07:15 +03:00
Vitaly Provodin
ca9d268797 merge DCEVM patches with update from bell-sw/update_11.0.9 2020-10-30 06:24:07 +07:00
Vitaly Provodin
967e760aa0 updated JTreg exclude list 2020-10-30 04:47:14 +07:00
Vitaly Provodin
8bed43092c Merge pull request #43 from bell-sw/update_11.0.9 2020-10-30 04:40:58 +07:00
Dmitry Batrak
89e519a4ef JBR-2819 Create API to determine typographic family/subfamily for available fonts 2020-10-28 10:41:55 +03:00
Vitaly Provodin
44bafba5fe JBR-2813 add patches containing a fix for metadataOnStack bug 2020-10-26 08:15:35 +07:00
Denis Konoplev
5acc7680a1 JBR-2490 Add option to work with Surface Pen 2020-10-23 11:42:02 +03:00
andrew
7408fa9ed9 Added tag jdk-11.0.9-ga for changeset 4397fa4529b2 2020-10-22 18:46:22 -04:00
prr
fb12c14831 8253019: Enhanced JPEG decoding
Reviewed-by: rhalade, mschoene, serb, psadhukhan
2020-10-22 18:45:39 -04:00
prr
7bf8eb1eb9 8248574: Improve jpeg processing
Reviewed-by: serb, jdv, mschoene, rhalade
2020-10-22 18:45:39 -04:00
jnimeh
1c1f5fd22f 8245417: Improve certificate chain handling
Reviewed-by: mullan, jnimeh, mbalao, andrew
Contributed-by: hai-may.chao@oracle.com
2020-10-22 18:45:38 -04:00
iklam
a5543e7396 8245412: Better class definitions
Reviewed-by: coleenp, rhalade, jwilhelm, skoivu, mbalao, andrew
2020-10-22 18:45:38 -04:00
naoto
d22040a4cd 8245407: Enhance zoning of times
Reviewed-by: rriggs, rhalade, skoivu
2020-10-22 18:45:37 -04:00
mullan
5b66b914fd 8244479: Further constrain certificates
Reviewed-by: ascarpino, ahgross, rhalade
2020-10-22 18:45:37 -04:00
bpb
bb41825c5b 8244136: Improved Buffer supports
Reviewed-by: alanb, ahgross, rhalade, psandoz
2020-10-22 18:45:37 -04:00
hseigel
7802653d57 8243302: Advanced class supports
Reviewed-by: coleenp, lfoltan, mschoene, rhalade
Contributed-by: harold.seigel@oracle.com
2020-10-22 18:45:36 -04:00
bpb
f1289c29b9 8242685: Better Path Validation
Reviewed-by: alanb, rhalade
2020-10-22 18:45:36 -04:00
bpb
e540ba996f 8242680: Improved URI Support
Reviewed-by: alanb, rhalade
2020-10-22 18:45:35 -04:00
thartmann
f0f38dfde8 8241114: Better range handling
Reviewed-by: kvn, vlivanov, rhalade, ahgross, mbalao, andrew
2020-10-22 18:45:35 -04:00
vkempik
3ff5734088 8244955: Additional Fix for JDK-8240124
Reviewed-by: mbalao, andrew
2020-10-22 18:45:34 -04:00
vkempik
098d97bd64 8240124: Better VM Interning
Reviewed-by: mbalao, andrew
2020-10-22 18:45:34 -04:00
mullan
f40d642800 8237995: Enhance certificate processing
Reviewed-by: weijun, rhalade, ahgross, erikj, mbalao, andrew
2020-10-22 18:45:33 -04:00
aefimov
9891148867 8237990: Enhanced LDAP contexts
Reviewed-by: dfuchs, robm, weijun, xyin, rhalade, ahgross
2020-10-22 18:45:33 -04:00
kravikumar
ed95bcd45a 8236862: Enhance support of Proxy class
8249927: Specify limits of jdk.serialProxyInterfaceLimit
Reviewed-by: rriggs, coffeys, andrew
2020-10-22 18:45:32 -04:00
egahlin
899a28c552 8236196: Improve string pooling
Reviewed-by: mgronlun, rehn, ahgross, jwilhelm, rhalade
2020-10-22 18:45:32 -04:00
vkempik
e101be357c 8233624: Enhance JNI linkage
Reviewed-by: dholmes, jrose, rhalade, mschoene, mbalao, andrew
2020-10-22 18:45:32 -04:00
goetz
da443a34b4 8253813: Backout JDK-8244287 from 11u: it causes several crashes
Reviewed-by: mdoerr, goetz
Contributed-by: jaroslav.bachorik@datadoghq.com, martin.doerr@sap.com
2020-10-22 18:45:31 -04:00
alvdavi
89da1e8daf 8250787: Provider.put no longer registering aliases in FIPS env
Summary: Allows parseLegacyPut to search algorithms added to the non-legacy map
Reviewed-by: mbalao
2020-10-22 18:45:31 -04:00
jbachorik
0f1f77659c 8244287: JFR: Methods samples have line number 0
Reviewed-by: goetz
2020-10-22 18:45:30 -04:00
clanger
905ff191da 8253283: [11u] Test build/translations/VerifyTranslations.java failing after JDK-8252258
Reviewed-by: goetz
2020-10-22 18:45:30 -04:00
phh
c9e0ac1f9f 8253134: JMM_VERSION should remain at 0x20020000 (JDK 10) in JDK 11
Summary: Change JMM_VERSION to 0x2002000, use @since 11.0.9 for c.s.m.ThreadMXBean.currentThreadAllocatedBytes
Reviewed-by: simonis
2020-10-22 18:45:29 -04:00
andrew
a26ac2cad8 8252258: [11u] JDK-8242154 changes the default vendor
Summary: Change the default vendor back to "Oracle Corporation"
Reviewed-by: clanger
2020-10-22 18:45:29 -04:00
simonis
26d260a938 8252804: [test] Fix 'ReleaseDeflater.java' test after downport of 8234011
Reviewed-by: phh
2020-10-22 18:45:28 -04:00
aefimov
51b08ef9b3 8062947: Fix exception message to correctly represent LDAP connection failure
Reviewed-by: dfuchs, xyin, vtewari
2020-10-22 18:45:28 -04:00
serb
45e863a853 8022535: [TEST BUG] javax/swing/text/html/parser/Test8017492.java fails
Reviewed-by: prr, pbansal
2020-10-22 18:45:27 -04:00
prappo
d252c95851 8151678: com/sun/jndi/ldap/LdapTimeoutTest.java failed due to timeout on DeadServerNoTimeoutTest is incorrect
Reviewed-by: dfuchs, martin, robm
2020-10-22 18:45:27 -04:00
prappo
8b7722cd74 8245981: Upgrade to jQuery 3.5.1
Reviewed-by: hannesw
2020-10-22 18:45:27 -04:00
tnakamura
ef6c86a47e 8233829: javac cannot find non-ASCII module name under non-UTF8 environment
Reviewed-by: jjg
2020-10-22 18:45:26 -04:00
alanb
46082dba1a 8243453: java --describe-module failed with non-ASCII module name under non-UTF8 environment
Reviewed-by: alanb
Contributed-by: Toshio Nakamura <toshiona@jp.ibm.com>
2020-10-22 18:45:26 -04:00
cgo
308588eec5 8234535: Cross compilation fails due to missing CFLAGS for the BUILD_CC
Reviewed-by: erikj
2020-10-22 18:45:25 -04:00
mbalao
7701382ce3 8250582: Revert Principal Name type to NT-UNKNOWN when requesting TGS Kerberos tickets
Reviewed-by: weijun
2020-10-22 18:45:25 -04:00
clanger
7a4385aefa 8160768: Add capability to custom resolve host/domain names within the default JNDI LDAP provider
Reviewed-by: alanb, dfuchs, chegar, mchung, vtewari, goetz
Contributed-by: rob.mckenna@oracle.com, christoph.langer@sap.com
2020-10-22 18:45:24 -04:00
xyin
697645c757 8241130: com.sun.jndi.ldap.EventSupport.removeDeadNotifier: java.lang.NullPointerException
Reviewed-by: dfuchs
2020-10-22 18:45:24 -04:00
jcbeyler
79ac49a4cc 8247615: Initialize the bytes left for the heap sampler
Summary: Initialize the heap sampler correctly before usage
Reviewed-by: sspitsyn, martin, manc
2020-10-22 18:45:23 -04:00
kbarrett
ef7399d356 8210131: vmTestbase/nsk/jvmti/scenarios/allocation/AP10/ap10t001/TestDescription.java failed with ObjectFree: GetCurrentThreadCpuTimerInfo returned unexpected error code
Summary: Expanded permitted threads to include all NamedThreads.
Reviewed-by: dcubed, sspitsyn
2020-10-22 18:45:23 -04:00
phh
17f5bc5b98 8252157: JDK-8231209 11u backport breaks jmm binary compatibility
Summary: Move jmm_GetOneThreadAllocatedMemory to reserved_2 jmm_interface slot
Reviewed-by: simonis, clanger
2020-10-22 18:45:22 -04:00
ysuenaga
8c49afc8f0 8249215: JFrame::setVisible crashed with -Dfile.encoding=UTF-8 on Japanese Windows.
Reviewed-by: prr, serb
2020-10-22 18:45:22 -04:00
zgu
1ef499823d 8251487: Shenandoah: missing detail timing tracking for final mark cleaning phase
Reviewed-by: rkennke
2020-10-22 18:45:21 -04:00
valeriep
5094b9b5ee 8244151: Update MUSCLE PC/SC-Lite headers to the latest release 1.8.26
Summary: Updated from 1.8.24 to 1.8.26
Reviewed-by: xuelei
2020-10-22 18:45:21 -04:00
darcy
37896f558c 8226809: Circular reference in printed stack trace is not correctly indented & ambiguous
Reviewed-by: bpb
2020-10-22 18:45:20 -04:00
roland
07281583bd 8247824: CTW: C2 (Shenandoah) compilation fails with SEGV in SBC2Support::pin_and_expand
Reviewed-by: rkennke, thartmann
2020-10-22 18:45:20 -04:00
amenkov
a7108cbfc5 8212665: com/sun/jdi/DeferredStepTest.java: jj1 (line 57) - unexpected. lastLine=52, minLine=52, maxLine=55
Reviewed-by: jcbeyler, gadams, sspitsyn
2020-10-22 18:45:20 -04:00
amenkov
256eb1a6aa 8212629: [TEST] wrong breakpoint in test/jdk/com/sun/jdi/DeferredStepTest
Reviewed-by: cjplummer, jcbeyler
2020-10-22 18:45:19 -04:00
amenkov
6e1d1b3a9b 8211292: [TEST] convert com/sun/jdi/DeferredStepTest.sh test
Reviewed-by: sspitsyn, jcbeyler
2020-10-22 18:45:18 -04:00
amenkov
f523654c21 8209332: [TEST] test/jdk/com/sun/jdi/CatchPatternTest.sh is incorrect
Reviewed-by: jcbeyler, dtitov, cjplummer
2020-10-22 18:45:18 -04:00
amenkov
a0b9796b9f 8203928: [Test] Convert non-JDB scaffolding serviceability shell script tests to java
Reviewed-by: jcbeyler, cjplummer
2020-10-22 18:45:18 -04:00
amenkov
2d2730faf8 8210760: [TEST] rewrite com/sun/jdi shell tests to java version - step4
Reviewed-by: jcbeyler, sspitsyn, cjplummer
2020-10-22 18:45:17 -04:00
amenkov
83a7c4beda 8210725: com/sun/jdi/RedefineClearBreakpoint.java fails with waitForPrompt timed out after 60 seconds
8210748: [TESTBUG] lib.jdb.Jdb.waitForPrompt() should clarify which output is the pending reply after a timeout
Reviewed-by: jcbeyler, gadams, sspitsyn
2020-10-22 18:45:17 -04:00
amenkov
09cb3da751 8210560: [TEST] convert com/sun/jdi redefineClass-related tests
Reviewed-by: jcbeyler, sspitsyn
2020-10-22 18:45:16 -04:00
amenkov
a1507f6e90 8210243: [TEST] rewrite com/sun/jdi shell tests to java version - step3
Reviewed-by: jcbeyler, cjplummer, sspitsyn
2020-10-22 18:45:16 -04:00
amenkov
ae7606fe6c 8067354: com/sun/jdi/GetLocalVariables4Test.sh failed
Reviewed-by: jcbeyler, sspitsyn
2020-10-22 18:45:15 -04:00
amenkov
05b36c091c 8209604: [TEST] rewrite com/sun/jdi shell tests to java version - step2
Reviewed-by: jcbeyler, sspitsyn, cjplummer
2020-10-22 18:45:15 -04:00
amenkov
90dc74e1b9 8203393: com/sun/jdi/JdbMethodExitTest.sh and JdbExprTest.sh fail due to timeout
Reviewed-by: sspitsyn, cjplummer
2020-10-22 18:45:14 -04:00
amenkov
3e3444472e 8209605: com/sun/jdi/BreakpointWithFullGC.java fails with ZGC
Reviewed-by: sspitsyn, dholmes
2020-10-22 18:45:14 -04:00
amenkov
503586a51c 8209608: Problem list com/sun/jdi/BreakpointWithFullGC.java
Reviewed-by: mikael, dtitov, dcubed
2020-10-22 18:45:13 -04:00
amenkov
a327489b0f 8209517: com/sun/jdi/BreakpointWithFullGC.java fails with timeout
Reviewed-by: dcubed, mikael
2020-10-22 18:45:13 -04:00
amenkov
f99295be02 8209109: [TEST] rewrite com/sun/jdi shell tests to java version - step1
Reviewed-by: sspitsyn, jcbeyler
2020-10-22 18:45:12 -04:00
serb
564c903844 8251469: Better cleanup for test/jdk/javax/imageio/SetOutput.java
Reviewed-by: prr, pbansal
2020-10-22 18:45:12 -04:00
shade
1ea536d294 8252120: compiler/oracle/TestCompileCommand.java misspells "occured"
Reviewed-by: iignatyev
2020-10-22 18:45:11 -04:00
jpai
e5d9e1a4f8 8241138: http.nonProxyHosts=* causes StringIndexOutOfBoundsException in DefaultProxySelector
Reviewed-by: dfuchs, chegar
2020-10-22 18:45:11 -04:00
shade
70723e80ce 8244729: Shenandoah: remove resolve paths from SBSA::generate_shenandoah_lrb
Reviewed-by: rkennke
2020-10-22 18:45:10 -04:00
shade
55ba81e3d4 8250844: Make sure {type,obj}ArrayOopDesc accessors check the bounds
Reviewed-by: rrich, coleenp
2020-10-22 18:45:10 -04:00
zgu
62057eadd5 8245880: Shenandoah: check class unloading flag early in concurrent code root scan
Reviewed-by: shade
2020-10-22 18:45:09 -04:00
rkennke
b14e837e87 8251451: Shenandoah: Remark ObjectSynchronizer roots with I-U
Reviewed-by: shade
2020-10-22 18:45:09 -04:00
rkennke
868a4b8348 8241065: Shenandoah: remove leftover code after JDK-8231086
Reviewed-by: rkennke
Contributed-by: Charlie Gracie <charlie.gracie@microsoft.com>
2020-10-22 18:45:08 -04:00
rkennke
e3a31d2bbd 8222079: Don't use memset to initialize fields decode_env constructor in disassembler.cpp
Reviewed-by: dlong, stuefe, mdoerr
2020-10-22 18:45:08 -04:00
simonis
0a50aad915 8234011: (zipfs) Memory leak in ZipFileSystem.releaseDeflater()
Reviewed-by: clanger, lancea
2020-10-22 18:45:08 -04:00
dfuchs
43c4798b50 8230000: some httpclients testng tests run zero test
Summary: two tests needed to declared their test methods public, the last one was a simple abstract framework for subclasses and needed its @test keyword removed.
Reviewed-by: chegar, aefimov, dfuchs
Contributed-by: Julia Boes <julia.boes@oracle.com>
2020-10-22 18:45:07 -04:00
rkennke
d956cd691a 8249560: Shenandoah: Fix racy GC request handling
Reviewed-by: shade
2020-10-22 18:45:06 -04:00
jdv
51f5bc0aae 6532025: GIF reader throws misleading exception with truncated images
Reviewed-by: prr, bpb
2020-10-22 18:45:06 -04:00
amenkov
03c98cd7b0 8238710: LingeredApp doesn't log stdout/stderr if exits with non-zero code
Reviewed-by: cjplummer, sspitsyn
2020-10-22 18:45:06 -04:00
shade
175fceb89e 8241007: Shenandoah: remove ShenandoahCriticalControlThreadPriority support
Reviewed-by: adityam, shade
Contributed-by: Nikola Grcevski <nikola.grcevski@microsoft.com>
2020-10-22 18:45:05 -04:00
shade
80c4abef7b 8241574: Shenandoah: remove ShenandoahAssertToSpaceClosure
Reviewed-by: zgu, bmathiske, shade
Contributed-by: Charlie Gracie <charlie.gracie@microsoft.com>
2020-10-22 18:45:05 -04:00
rkennke
88f949d66f 8251354: Shenandoah: Fix jdk/jfr/tool/TestPrintJSON.java test failure
Reviewed-by: clanger, stuefe
2020-10-22 18:45:04 -04:00
erikj
19da89a193 8246094: [macos] Sound Recording and playback is not working
Reviewed-by: prr, serb
2020-10-22 18:45:04 -04:00
ysuenaga
8cab555838 8250826: jhsdb does not work with coredump which comes from Substrate VM
Reviewed-by: cjplummer, sspitsyn
2020-10-22 18:45:03 -04:00
mbalao
72a8d326e3 8251117: Cannot check P11Key size in P11Cipher and P11AEADCipher
Reviewed-by: valeriep
Contributed-by: zzambers@redhat.com
2020-10-22 18:45:03 -04:00
lmesnik
710c814a3d 8241478: vmTestbase/gc/gctests/Steal/steal001/steal001.java fails with OOME
Reviewed-by: tschatzl, kbarrett
2020-10-22 18:45:02 -04:00
coleenp
f12a95f6cd 8231953: Wrong assumption in assertion in oop::register_oop
Summary: On ARM32 thumb mode, the pc of the current frame is always zero
Reviewed-by: coleenp, dcubed
Contributed-by: christoph.goettschkes@microdoc.com
2020-10-22 18:45:02 -04:00
joehw
980226f337 8230094: CCE in createXMLEventWriter(Result) over an arbitrary XMLStreamWriter
Reviewed-by: lancea
2020-10-22 18:45:01 -04:00
rhalade
8a22af8929 8243320: Add SSL root certificates to Oracle Root CA program
Reviewed-by: mullan
2020-10-22 18:45:01 -04:00
kvn
a9507bbe7a 8248987: AOT's Linker.java seems to eagerly fail-fast on Windows
Summary: Treat all problems in getVC141AndNewerLinker() as non-fatal. Print error messages with --verbose flag.
Reviewed-by: iignatyev, iveresov
2020-10-22 18:45:00 -04:00
shade
7b06c4f724 8249953: Shenandoah: gc/shenandoah/mxbeans tests should account for corner cases
Reviewed-by: rkennke
2020-10-22 18:45:00 -04:00
rkennke
dcf11b2f29 8249801: Shenandoah: Clear soft-refs on requested GC cycle
Reviewed-by: shade
2020-10-22 18:44:59 -04:00
lancea
8089f329af 8212807: tools/jar/multiRelease/Basic.java times out
Reviewed-by: bchristi
2020-10-22 18:44:59 -04:00
rfield
20ec00a07e 8223688: JShell: crash on the instantiation of raw anonymous class
Reviewed-by: jlahoda
2020-10-22 18:44:58 -04:00
rfield
e7ff20c013 8210527: JShell: NullPointerException in jdk.jshell.Eval.translateExceptionStack
8232855: jshell missing word in /help help
Reviewed-by: jlahoda
2020-10-22 18:44:58 -04:00
rfield
44e6abfbc3 8211694: JShell: Redeclared variable should be reset
Reviewed-by: sundar
2020-10-22 18:44:58 -04:00
jjg
9d174c2b84 8234687: change javap reporting on unknown attributes
Reviewed-by: mchung
2020-10-22 18:44:57 -04:00
chegar
f85669d99e 8225037: java.net.JarURLConnection::getJarEntry() throws NullPointerException
Reviewed-by: coffeys, vtewari
2020-10-22 18:44:56 -04:00
lmesnik
7bf0cd4cf8 8241319: WB_GetCodeBlob doesn't have ResourceMark
Reviewed-by: iignatyev, thartmann
2020-10-22 18:44:56 -04:00
phh
024b17cd07 8234541: C1 emits an empty message when it inlines successfully
Summary: Use "inline" as the message when successfull
Reviewed-by: thartmann, mdoerr
Contributed-by: navy.xliu@gmail.com
2020-10-22 18:44:56 -04:00
mli
dccbd0645a 8134599: TEST_BUG: java/rmi/transport/closeServerSocket/CloseServerSocket.java fails intermittently with Address already in use
Reviewed-by: weijun, darcy, rriggs, coffeys
2020-10-22 18:44:55 -04:00
xyin
cbd80b1dff 8202117: com/sun/jndi/ldap/RemoveNamingListenerTest.java fails intermittently: Connection reset
Reviewed-by: dfuchs, vtewari
2020-10-22 18:44:55 -04:00
itakiguchi
e97f001647 8232161: Align some one-way conversion in MS950 charset with Windows
Summary: MS950 charset encoder's conversion table is changed
Reviewed-by: naoto
2020-10-22 18:44:54 -04:00
fyang
288cb01d1e 8221658: aarch64: add necessary predicate for ubfx patterns
Reviewed-by: aph
2020-10-22 18:44:54 -04:00
fyang
58e50eade3 8250609: C2 crash in IfNode::fold_compares
Reviewed-by: kvn, chagedorn
Contributed-by: wanghuang3@huawei.com
2020-10-22 18:44:53 -04:00
zgu
b5bfaf2468 8250827: Shenandoah: needs to reset/finish StringTable's dead count before/after parallel walk
Reviewed-by: rkennke
2020-10-22 18:44:53 -04:00
serb
60b928fe4c 8250755: Better cleanup for jdk/test/javax/imageio/plugins/shared/CanWriteSequence.java
Reviewed-by: jdv
2020-10-22 18:44:52 -04:00
sgehwolf
c2f5f25ee6 8250627: Use -XX:+/-UseContainerSupport for enabling/disabling Java container metrics
Reviewed-by: aph, dholmes, bobv, shade
2020-10-22 18:44:52 -04:00
fyuan
e16a88ee6c 8230010: Remove jdk8037819/BasicTest1.java
8230002: javax/xml/jaxp/unittest/transform/SecureProcessingTest.java runs zero test
Reviewed-by: joehw, vtewari
2020-10-22 18:44:51 -04:00
dfuchs
7f90bbf2fc 8208281: java/nio/channels/AsynchronousSocketChannel/Basic.java timed out
Summary: modify the test to accept the peer socket before closing the client socket
Reviewed-by: alanb
2020-10-22 18:44:51 -04:00
joehw
6e6d2b85d4 8233686: XML transformer uses excessive amount of memory
Summary: remove unnecessary object creation and also update xalan.md file
Reviewed-by: lancea
2020-10-22 18:44:50 -04:00
coleenp
fd99818ccd 8233386: Initialize NULL fields for unused decorations
Reviewed-by: shade, hseigel, dcubed
2020-10-22 18:44:50 -04:00
lancea
8c43f76d41 8230870: (zipfs) Add a ZIP FS test that is similar to test/jdk/java/util/zip/EntryCount64k.java
Reviewed-by: clanger, martin
2020-10-22 18:44:50 -04:00
jlahoda
77b9fb7dae 8221759: Crash when completing \"java.io.File.path\"
Summary: Do not provide documentation for inaccessible elements.
Reviewed-by: rfield
2020-10-22 18:44:49 -04:00
vlivanov
e390eafb22 8247502: PhaseStringOpts crashes while optimising effectively dead code
Reviewed-by: kvn, thartmann
2020-10-22 18:44:49 -04:00
neliasso
f65a021bf0 8226536: Catch OOM from deopt that fails rematerializing objects
Reviewed-by: vlivanov, thartmann
2020-10-22 18:44:48 -04:00
rhalade
0d12b95241 8243321: Add Entrust root CA - G4 to Oracle Root CA program
Reviewed-by: mullan
2020-10-22 18:44:48 -04:00
rkennke
fbf2030820 8250784: Shenandoah: A Low-Pause-Time Garbage Collector
Reviewed-by: aph, kdnilsen, adityam
2020-10-22 18:44:47 -04:00
mikael
d131ad342c 8237182: Update copyright header for shenandoah and epsilon files
Reviewed-by: iignatyev, zgu
2020-10-22 18:44:46 -04:00
sviswanathan
793e0ddfa6 8224234: compiler/codegen/TestCharVect2.java fails in test_mulc
Reviewed-by: vlivanov, thartmann
2020-10-22 18:44:46 -04:00
sviswanathan
bee394f465 8222074: Enhance auto vectorization for x86
Reviewed-by: kvn, vlivanov
2020-10-22 18:44:45 -04:00
erikj
bf58975c4e 8249255: Build fails if source code in cygwin home dir
Reviewed-by: tbell
2020-10-22 18:44:45 -04:00
jjiang
3616dee7a0 8243029: Rewrite javax/net/ssl/compatibility/Compatibility.java with a flexible interop test framework
Reviewed-by: xuelei
2020-10-22 18:44:44 -04:00
stuefe
76af57e5d9 8223777: In posix_spawn mode, failing to exec() jspawnhelper does not result in an error
Reviewed-by: rriggs, martin, fweimer
2020-10-22 18:44:44 -04:00
bsrbnd
f93f4ab75e 8193367: Annotated type variable bounds crash javac
Reviewed-by: mcimadamore, vromero
2020-10-22 18:44:43 -04:00
valeriep
ad19522db0 8242556: Cannot load RSASSA-PSS public key with non-null params from byte array
Summary: Update AlgorithmId to use alg name before oid str when parsing DER bytes
Reviewed-by: mullan
2020-10-22 18:44:43 -04:00
vkempik
b26694a0f9 8238284: [macos] Zero VM build fails due to an obvious typo
Reviewed-by: goetz
2020-10-22 18:44:42 -04:00
amenkov
36ab405269 8204994: SA might fail to attach to process with "Windbg Error: WaitForEvent failed"
Reviewed-by: sspitsyn, cjplummer
2020-10-22 18:44:42 -04:00
vkempik
4620397dbe 8248495: [macos] zerovm is broken due to libffi headers location
Reviewed-by: ihse, erikj
2020-10-22 18:44:42 -04:00
fyang
a42c526b18 8248851: CMS: Missing memory fences between free chunk check and klass read
Reviewed-by: aph, kbarrett, dholmes
Contributed-by: wangshuai94@huawei.com
2020-10-22 18:44:41 -04:00
fyang
14c7fe0b61 8247979: aarch64: missing side effect of killing flags for clearArray_reg_reg
Reviewed-by: adinn
Contributed-by: wangyadong4@huawei.com
2020-10-22 18:44:41 -04:00
ysuenaga
e6cfd63ecd 8238388: libj2gss/NativeFunc.o "multiple definition" link errors with GCC10
Summary: Fixed libj2gss link errors caused by GCC10 default -fno-common
Reviewed-by: weijun
2020-10-22 18:44:40 -04:00
ysuenaga
b625ec36f2 8238386: (sctp) jdk.sctp/unix/native/libsctp/SctpNet.c "multiple definition" link errors with GCC10
Summary: Fixed libsctp link errors caused by GCC10 default -fno-common
Reviewed-by: chegar
2020-10-22 18:44:40 -04:00
ysuenaga
9f8b577206 8238380: java.base/unix/native/libjava/childproc.c "multiple definition" link errors with GCC10
Reviewed-by: stuefe, clanger, rriggs
Contributed-by: patrick@os.amperecomputing.com
2020-10-22 18:44:39 -04:00
arapte
00e9dff047 8249278: Revert JDK-8226253 which breaks the spec of AccessibleState.SHOWING for JList
Reviewed-by: prr, serb
2020-10-22 18:44:39 -04:00
mbaesken
4defecb1ea 8236617: jtreg test containers/docker/TestMemoryAwareness.java fails after 8226575
Reviewed-by: bobv, clanger, mdoerr, adinn
2020-10-22 18:44:38 -04:00
sgehwolf
ea22d2debd 8226575: OperatingSystemMXBean should be made container aware
Reviewed-by: adinn
2020-10-22 18:44:38 -04:00
pbansal
4d9f67b93b 8249251: [dark_mode ubuntu 20.04] The selected menu is not highlighted in GTKLookAndFeel
Reviewed-by: serb, prr
2020-10-22 18:44:37 -04:00
joehw
aae6ac4f69 8248348: Regression caused by the update to BCEL 6.0
Reviewed-by: smarks, plevart
2020-10-22 18:44:37 -04:00
jlahoda
f3765eca39 8244763: Update --release 8 symbol information after JSR 337 MR3
Reviewed-by: jjg, wetmore
2020-10-22 18:44:36 -04:00
hchao
9350c687e0 8245151: jarsigner should not raise duplicate warnings on verification
Reviewed-by: weijun
2020-10-22 18:44:36 -04:00
naoto
af7e73eb27 8234347: "Turkey" meta time zone does not generate composed localized names
8236548: Localized time zone name inconsistency between English and other locales
Reviewed-by: joehw, rriggs
2020-10-22 18:44:35 -04:00
vromero
48341a9b4f 8213703: LambdaConversionException: Invalid receiver type not a subtype of implementation type interface
Reviewed-by: mcimadamore
2020-10-22 18:44:35 -04:00
shade
7781717e37 8213182: Minimal VM build failure after JDK-8212200 (assert when shared java.lang.Object is redefined by JVMTI agent)
Reviewed-by: dholmes, iklam
2020-10-22 18:44:34 -04:00
goetz
6f7c21121a 8249277: TestVerifyIterativeGVN.java is failing with timeout in OpenJDK 11
Summary: See also 8248521: TestVerifyIterativeGVN.java is failing with timeout
Reviewed-by: mbaesken, chagedorn
2020-10-22 18:44:34 -04:00
sshivang
ac7bb087e4 8246330: Add TLS Tests for Legacy ECDSA curves
Reviewed-by: rhalade
2020-10-22 18:44:33 -04:00
jjiang
ce59727cb2 8249159: Downport test rework for SSLSocketTemplate from 8224650
Reviewed-by: mbaesken
2020-10-22 18:44:33 -04:00
xuelei
f2da7b5e8c 8236464: SO_LINGER option is ignored by SSLSocket in JDK 11
Reviewed-by: ascarpino
2020-10-22 18:44:32 -04:00
erikj
d8dc0ea467 8213214: Set -Djava.io.tmpdir= when running tests
Reviewed-by: alanb, mikael
2020-10-22 18:44:32 -04:00
hannesw
1f39a87a62 8240169: javadoc fails to link to non-modular api docs
Reviewed-by: jjg
2020-10-22 18:44:31 -04:00
weijun
b11f050cfd 8227595: keytool/fakegen/DefaultSignatureAlgorithm.java fails due to "exitValue = 6"
Reviewed-by: mullan
2020-10-22 18:44:31 -04:00
phh
ff039d5fe4 8231968: getCurrentThreadAllocatedBytes default implementation s/b getThreadAllocatedBytes
Summary: Pass Thread.currentThread().getId() to getThreadAllocatedBytes, remove its implSpec
Reviewed-by: dholmes, mchung, sspitsyn
2020-10-22 18:44:30 -04:00
phh
9f836984f1 8231209: [REDO] ThreadMXBean::getThreadAllocatedBytes() can be quicker for self thread
Summary: Add com.sun.management.getCurrentThreadAllocatedBytes, implement getThreadAllocatedBytes(long) independent of getThreadAllocatedBytes(long[])
Reviewed-by: mchung, dholmes, sspitsyn
2020-10-22 18:44:30 -04:00
shade
56fd51cd53 8221918: runtime/SharedArchiveFile/serviceability/ReplaceCriticalClasses.java fails: Shared archive not found
Reviewed-by: jiangli, dholmes
2020-10-22 18:44:29 -04:00
iklam
282c7b3195 8213275: ReplaceCriticalClasses.java fails with jdk.internal.vm.PostVMInitHook not found
Reviewed-by: lfoltan, sspitsyn, shade
2020-10-22 18:44:29 -04:00
iklam
0eeb0f5772 8212200: assert when shared java.lang.Object is redefined by JVMTI agent
Reviewed-by: dholmes, jiangli, hseigel, lfoltan, sspitsyn
2020-10-22 18:44:29 -04:00
vkempik
d9cc1dae70 8243470: [macos] bring back O2 opt level for unsafe.cpp
Summary: Remove special case for unsafe.cpp on clang macos
Reviewed-by: erikj, ihse
2020-10-22 18:44:28 -04:00
never
ece8fcc91b 8247246: Add explicit ResolvedJavaType.link and expose presence of default methods
Reviewed-by: kvn, sgehwolf, adinn
Contributed-by: Foivos Zakkak <fzakkak@redhat.com>
2020-10-22 18:44:27 -04:00
mseledtsov
4d01f061fb 8222769: [TESTBUG] TestJFRNetworkEvents should not rely on hostname command
Summary: Using InetAddress.getLocalHost()
Reviewed-by: egahlin, lmesnik
Contributed-by: Severin Gehwolf <sgehwolf@redhat.com>
2020-10-22 18:44:27 -04:00
psadhukhan
8318f44a43 8203281: [Windows] JComboBox change in ui when editor.setBorder() is called
Reviewed-by: psadhukhan
Contributed-by: mraz.martin.dev@gmail.com
2020-10-22 18:44:27 -04:00
chagedorn
75f5e42208 8246203: Segmentation fault in verification due to stack overflow with -XX:+VerifyIterativeGVN
Summary: Replace the recursive verification algorithm with an iterative one to avoid a stack overflow for large graphs.
Reviewed-by: kvn, thartmann
2020-10-22 18:44:26 -04:00
chagedorn
85da04fb94 8244719: CTW: C2 compilation fails with "assert(!VerifyHashTableKeys || _hash_lock == 0) failed: remove node from hash table before modifying it"
Summary: Fix Parse::Block::init_graph() to also count predecessors for exception blocks because they can have a direct bytecode jump to them resulting in this assertion failure.
Reviewed-by: kvn, thartmann
2020-10-22 18:44:26 -04:00
weijun
5c79be3ac4 8242184: CRL generation error with RSASSA-PSS
Reviewed-by: xuelei
2020-10-22 18:44:25 -04:00
kevinw
92e0697af3 8240295: hs_err elapsed time in seconds is not accurate enough
Reviewed-by: dholmes, sspitsyn
2020-10-22 18:44:25 -04:00
valeriep
ac1091da41 8238448: RSASSA-PSS signature verification fail when using certain odd key sizes
Summary: Calculate and set offset for correct verification for such key sizes
Reviewed-by: xuelei
2020-10-22 18:44:24 -04:00
amenkov
a78c0a9dbb 8235846: Improve WindbgDebuggerLocal implementation
Reviewed-by: sspitsyn, cjplummer
2020-10-22 18:44:24 -04:00
weijun
728f1ee8b2 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
Reviewed-by: xuelei
2020-10-22 18:44:23 -04:00
fyang
792e69edc6 8248219: aarch64: missing memory barrier in fast_storefield and fast_accessfield
Reviewed-by: aph
Contributed-by: songyaofei2@huawei.com
2020-10-22 18:44:23 -04:00
naoto
27c4c1ae43 8218948: SimpleDateFormat :: format - Zone Names are not reflected correctly during run time
Reviewed-by: lancea, rgoel
2020-10-22 18:44:22 -04:00
roland
6a410fc890 8240676: Meet not symmetric failure when running lucene on jdk8
Reviewed-by: kvn, thartmann
2020-10-22 18:44:22 -04:00
qpzhang
155efb6dce 8248214: Add paddings for TaskQueueSuper to reduce false-sharing cache contention
Summary: This is a downport of a part of JDK-8243326
Reviewed-by: goetz, clanger
2020-10-22 18:44:21 -04:00
iklam
fa1e491340 8203382: Rename SystemDictionary::initialize_wk_klass to resolve_wk_klass
Reviewed-by: jiangli
2020-10-22 18:44:21 -04:00
dtitov
35ecf979a3 8246196: javax/management/MBeanServer/OldMBeanServerTest fails with AssertionError
Reviewed-by: amenkov, dholmes, sspitsyn
2020-10-22 18:44:21 -04:00
kvn
f32fefb57a 8247350: [aarch64] assert(false) failed: wrong size of mach node
Summary: use movptr() to load address of string
Reviewed-by: adinn, azeemj
2020-10-22 18:44:20 -04:00
goetz
ea9a7e808c 8248385: [testbug][11u] Adapt TestInitiExceptions to jtreg 5.1
Summary: Downport fix for TestInitException from 8246387
Reviewed-by: clanger
2020-10-22 18:44:20 -04:00
weijun
42b2ce754a 8244087: 2020-04-24 public suffix list update
Reviewed-by: mullan
2020-10-22 18:44:19 -04:00
thartmann
ece3569549 8246153: TestEliminateArrayCopy fails with -XX:+StressReflectiveCode
Summary: Use the memory input instead of the control input to find the membar.
Reviewed-by: kvn, neliasso
2020-10-22 18:44:19 -04:00
bobv
73d45929ea 8245832: JDK build make-static-libs should build all JDK libraries
Reviewed-by: erikj, aph
2020-10-22 18:44:18 -04:00
thartmann
a2fc77de24 8246453: TestClone crashes with "all collected exceptions must come from the same place"
Summary: Set deoptimize_on_exception for slow paths.
Reviewed-by: neliasso
2020-10-22 18:44:18 -04:00
chagedorn
310f6de15a 8239083: C1 assert(known_holder == NULL || (known_holder->is_instance_klass() && (!known_holder->is_interface() || ((ciInstanceKlass*)known_holder)->has_nonstatic_concrete_methods())), "should be non-static concrete method");
Summary: Remove unnecessary preparation to profile the holder of a static method called by a method handle in C1.
Reviewed-by: thartmann, kvn
2020-10-22 18:44:17 -04:00
weijun
22d21b77a7 8246193: Possible NPE in ENC-PA-REP search in AS-REQ
Reviewed-by: xuelei
2020-10-22 18:44:17 -04:00
aoqi
1039a2a78c 8246027: Minimal fastdebug build broken after JDK-8245801
Summary: Added COMPILER2_PRESENT macro
Reviewed-by: shade, thartmann
2020-10-22 18:44:16 -04:00
thartmann
c5525de5f0 8245801: StressRecompilation triggers assert "redundunt OSR recompilation detected. memory leak in CodeCache!"
Summary: Assert is too strong.
Reviewed-by: roland
2020-10-22 18:44:16 -04:00
xyin
d5b5777bed 8243138: Enhance BaseLdapServer to support starttls extended request
Reviewed-by: aefimov, dfuchs
2020-10-22 18:44:15 -04:00
prr
c5be925d70 8220150: macos10.14 Mojave returns anti-aliased glyphs instead of aliased B&W glyphs
Reviewed-by: serb, kcr
2020-10-22 18:44:15 -04:00
rraghavan
3336e5a993 8228448: Jconsole can't connect to itself
Summary: Additions done to allow jconsole to connect to itself
Reviewed-by: erikj
Contributed-by: ramkumar.sunderbabu@oracle.com
2020-10-22 18:44:14 -04:00
gadams
f1b9ac5b74 8203026: java.rmi.NoSuchObjectException: no such object in table
Reviewed-by: rriggs, sspitsyn
2020-10-22 18:44:14 -04:00
weijun
71417ea192 8172404: Tools should warn if weak algorithms are used before restricting them
Reviewed-by: mullan, weijun
Contributed-by: Hai-May Chao <hai-may.chao@oracle.com>
2020-10-22 18:44:14 -04:00
sgehwolf
72a603ebfb 8247874: Replacement in VersionProps.java.template not working when --with-vendor-bug-url contains '&'
Summary: Backports parts of 8223319: Add copyright footer to specs and man pages
Reviewed-by: andrew, phh
2020-10-22 18:44:13 -04:00
psadhukhan
b02e5c6dbb 8209343: Test javax/swing/border/TestTitledBorderLeak.java should be marked as headful
Reviewed-by: jdv
2020-10-22 18:44:13 -04:00
psadhukhan
292903d050 8234385: [TESTBUG] java/awt/EventQueue/6980209/bug6980209.java fails in linux nightly
Reviewed-by: serb
2020-10-22 18:44:12 -04:00
jjiang
14f80f197a 8228967: Trust/Key store and SSL context utilities for tests
Reviewed-by: xuelei, mbaesken
2020-10-22 18:44:12 -04:00
egahlin
301391b751 8230767: FlightRecorderListener returns null recording
Reviewed-by: mseledtsov, mgronlun
2020-10-22 18:44:11 -04:00
michaelm
9366c54ad3 8233958: Memory retention due to HttpsURLConnection finalizer that serves no purpose
Reviewed-by: dfuchs, rriggs
2020-10-22 18:44:11 -04:00
afarley
36272958ae 8229378: jdwp library loader in linker_md.c quietly truncates on buffer overflow
Summary: Check buffer overflow when the jdwp agent full dll name is built
Reviewed-by: cjplummer, sspitsyn, andrew
2020-10-22 18:44:10 -04:00
mbaesken
51aaccc7b6 8244196: adjust output in os_linux
Reviewed-by: dholmes, mdoerr
2020-10-22 18:44:10 -04:00
mbaesken
5aecb93b5e 8243389: enhance os::pd_print_cpu_info on linux
Reviewed-by: dholmes, mdoerr
2020-10-22 18:44:09 -04:00
ddong
110ad3d6dc 8240360: NativeLibraryEvent has wrong library name on Linux
Reviewed-by: ysuenaga, clanger
2020-10-22 18:44:09 -04:00
amenkov
eb335668c7 8244703: "platform encoding not initialized" exceptions with debugger, JNI
Reviewed-by: alanb, sspitsyn
2020-10-22 18:44:08 -04:00
goetz
5edbfcd631 8244225: stringop-overflow warning on strncpy call from compile_the_world_in
Reviewed-by: aph
2020-10-22 18:44:08 -04:00
psadhukhan
34f48c3c25 8234149: Several regression tests do not dispose Frame at end
Reviewed-by: serb
2020-10-22 18:44:08 -04:00
xuelei
1a908f2143 8223940: Private key not supported by chosen signature algorithm
Reviewed-by: valeriep
2020-10-22 18:44:07 -04:00
rehn
d5b78cd8c4 8213574: Deadlock in string table expansion when dumping lots of CDS classes
Reviewed-by: jiangli, iklam, dholmes
2020-10-22 18:44:07 -04:00
roland
d00809040a 8245714: "Bad graph detected in build_loop_late" when loads are pinned on loop limit check uncommon branch
Reviewed-by: thartmann
2020-10-22 18:44:06 -04:00
mullan
83e3a4f792 8237888: security/infra/java/security/cert/CertPathValidator/certification/LuxTrustCA.java fails when checking validity interval
Reviewed-by: xuelei
2020-10-22 18:44:06 -04:00
erikj
872a3be669 8216021: RunTest.gmk might set concurrency level to 1 on Windows
Reviewed-by: ctornqvi, tbell
2020-10-22 18:44:05 -04:00
ascarpino
6d53cf16f8 8233228: Disable weak named curves by default in TLS, CertPath, and Signed JAR
Reviewed-by: mullan, xuelei, weijun
2020-10-22 18:44:05 -04:00
prr
c9d3a45626 6949753: [TEST BUG]: java/awt/print/PageFormat/PDialogTest.java needs update by removing a infinite loop
Reviewed-by: jdv
2020-10-22 18:44:04 -04:00
chagedorn
939d481396 8230402: Allocation of compile task fails with assert: "Leaking compilation tasks?"
Summary: Remove assert that is only hit with hand written edge case tests.
Reviewed-by: kvn, thartmann
2020-10-22 18:44:04 -04:00
cjplummer
569ede41a0 8214797: TestJmapCoreMetaspace.java timed out
Reviewed-by: dcubed
2020-10-22 18:44:03 -04:00
jjiang
2b4e4637e6 8237977: Further update javax/net/ssl/compatibility/Compatibility.java
Reviewed-by: rhalade
2020-10-22 18:44:03 -04:00
darcy
511f78097c 8233452: java.math.BigDecimal.sqrt() with RoundingMode.FLOOR results in incorrect result
Reviewed-by: bpb, dfuchs
2020-10-22 18:44:02 -04:00
kvn
db08174fd1 8233741: AES Countermode (AES-CTR) optimization using AVX512 + VAES instructions
Reviewed-by: kvn
Contributed-by: smita.kamath@intel.com, regev.shemy@intel.com, shay.gueron@intel.com
2020-10-22 18:44:02 -04:00
srukmannagar
01dd0e2432 8225625: AES Electronic Codebook (ECB) encryption and decryption optimization using AVX512 + VAES instructions
Summary: AES-ECB encryption and decryption optimization for x86_64 architectures supporting AVX3+VAES
Reviewed-by: kvn, valeriep
Contributed-by: shravya.rukmannagari@intel.com, smita.kamath@intel.com
2020-10-22 18:44:01 -04:00
prr
4ed81251c5 8226697: Several tests which need the @key headful keyword are missing it.
Reviewed-by: serb
2020-10-22 18:44:01 -04:00
mbalao
0cb7085706 8239385: KerberosTicket client name refers wrongly to sAMAccountName in AD
Reviewed-by: weijun
2020-10-22 18:44:00 -04:00
jbachorik
5cb460ee1d 8243489: Thread CPU Load event may contain wrong data for CPU time under certain conditions
Reviewed-by: jbachorik
Contributed-by: Nikolay Martynov <nikolay.martynov@datadoghq.com>
2020-10-22 18:44:00 -04:00
hseigel
dcabdc3f8c 8234058: runtime/CompressedOops/CompressedClassPointers.java fails with 'Narrow klass base: 0x0000000000000000' missing from stdout/stderr
Summary: Don't run test on Windows because ASLR can cause unexpected memory addresses
Reviewed-by: coleenp
2020-10-22 18:43:59 -04:00
jlahoda
9c82b4a1fa 8229815: Upgrade Jline to 3.12.1
Reviewed-by: rfield
2020-10-22 18:43:59 -04:00
never
6c1953558c 8233027: OopMapSet::all_do does oms.next() twice during iteration
Reviewed-by: shade, kvn
2020-10-22 18:43:58 -04:00
never
b3819957e5 8232083: Minimal VM is broken after JDK-8231586
Reviewed-by: dlong
2020-10-22 18:43:57 -04:00
never
74a916cc26 8231586: enlarge encoding space for OopMapValue offsets
Reviewed-by: dlong
2020-10-22 18:43:57 -04:00
tnakamura
e9e9a2b097 8224184: jshell got IOException at exiting with AIX
Reviewed-by: rfield, jlahoda
2020-10-22 18:43:57 -04:00
jlahoda
c1a84aca31 8215244: jdk/jshell/ToolBasicTest.java testHistoryReference failed
Summary: Mark history entries from previous sessions with timestamp that is definitelly in the past.
Reviewed-by: rfield
2020-10-22 18:43:56 -04:00
rschmelter
622fbd4f12 8219712: code_size2 (defined in stub_routines_x86.hpp) is too small on new Skylake CPUs
Reviewed-by: mbaesken, dholmes, kvn
2020-10-22 18:43:56 -04:00
shade
82d723bfe2 8215354: x86_32 build failures after JDK-8214074 (Ghash optimization using AVX instructions)
Reviewed-by: thartmann
2020-10-22 18:43:55 -04:00
ascarpino
4efed15025 8214074: Ghash optimization using AVX instructions
Reviewed-by: kvn, ascarpino
Contributed-by: smita.kamath@intel.com
2020-10-22 18:43:55 -04:00
egahlin
457295440e 8210977: jdk/jfr/event/oldobject/TestThreadLocalLeak.java fails to find ThreadLocalObject
Reviewed-by: mgronlun, mseledtsov
2020-10-22 18:43:54 -04:00
jlahoda
81330e61e0 8215438: jshell tool: Ctrl-D causes EOF
Summary: Properly handling EndOfFileException so that jshell can be closed with Ctrl-D.
Reviewed-by: rfield
2020-10-22 18:43:54 -04:00
jlahoda
0c8610cf4d 8215243: JShell tests failing intermitently with \"Problem cleaning up the following threads:\"
Summary: Do not reset closed state in the StopDetectingInputStream.write
Reviewed-by: rfield
2020-10-22 18:43:53 -04:00
jlahoda
586dfe6b76 8214491: Upgrade to JLine 3.9.0
Summary: Upgrading JLine to 3.9.0 and updating jshell and jjs to the new JLine.
Reviewed-by: rfield, sundar
2020-10-22 18:43:53 -04:00
sballal
35af20e342 8209342: Problemlist SA tests on Solaris due to Error attaching to process: Can't create thread_db agent!
Reviewed-by: dcubed, iklam, jgeorge
2020-10-22 18:43:52 -04:00
coleenp
d56e6f97a7 8206309: Tier1 SA tests fail
Summary: remove tests that should have been removed with JDK-8205534
Reviewed-by: hseigel
2020-10-22 18:43:52 -04:00
coleenp
7e571bb76b 8205534: Remove SymbolTable dependency from serviceability agent
Reviewed-by: gziemski, poonam, jgeorge, hseigel
2020-10-22 18:43:51 -04:00
ngasson
de1643f260 8244164: AArch64: jaotc generates incorrect code for compressed OOPs with non-zero heap base
Reviewed-by: aph
2020-10-22 18:43:51 -04:00
goetz
36e4dd081b 8245616: Bump update version for OpenJDK: jdk-11.0.9
Reviewed-by: clanger
2020-10-22 18:43:50 -04:00
bpb
e2c56236da 8242695: Enhanced buffer support
Reviewed-by: alanb, rhalade, mbalao, andrew
2020-10-22 18:43:34 -04:00
dfuchs
32394a0091 8238270: java.net HTTP/2 client does not decrease stream count when receives 204 response
Summary: The HTTP/2 Stream is updated to register a trivial data subscriber in case of 204 so that the END_STREAM is correctly processed.
Reviewed-by: chegar
2020-10-22 18:43:33 -04:00
dfuchs
3a2177dcd5 8216974: HttpConnection not returned to the pool after 204 response
Summary: MultiExchange now call nullBody() on Exchange after receiving 204
Reviewed-by: chegar
2020-10-22 18:43:32 -04:00
serb
b66a21a9d1 8243925: Toolkit#getScreenInsets() returns wrong value on HiDPI screens (Windows)
Reviewed-by: prr, psadhukhan
2020-10-22 18:43:32 -04:00
Dmitry Batrak
f5b6222835 JBR-2712 Typeahead mechanism doesn't work on Windows
fix issue with newly opened popup not being recognized by screen reader
2020-10-22 11:26:58 +03:00
Vitaly Provodin
557b87f774 JBR-2810 refactor dcevm patches 2020-10-21 05:12:40 +07:00
Denis Konoplev
bf3e1c0c31 JBR-2795: Add explicit conversion 2020-10-19 20:08:36 +03:00
Dmitry Batrak
b20c56ff3e JBR-2759, JBR-2798 Typeahead issue on Linux
remove test that fails after the fix
there doesn't seem to be a sense in fixing an applet-related behaviour (captured in a synthetic test), when testing with a real applet isn't possible
2020-10-19 17:38:48 +03:00
Dmitry Batrak
a507cab6d3 JBR-2696 Log focus API invocations with stack traces
add com.apple.eawt.Application.requestForeground to the set of logged requests
2020-10-19 15:56:08 +03:00
Phil Race
35fc070473 JBR-2790 backport the fix from OpenJDK
8244818: Java2D Queue Flusher crash while moving application window to external monitor

Reviewed-by: serb, jdv, kcr
2020-10-16 17:09:46 +07:00
Vitaly Provodin
1813c24330 JBR-2762 add patch fixing DCEVM JVM Crashes on sun.instrument.InstrumentationImpl.retransformClasses method 2020-10-16 17:09:14 +07:00
Dmitry Batrak
76bdaf1131 JBR-2759 Typeahead issue on Linux 2020-10-15 13:32:30 +03:00
Vitaly Provodin
fcc56cc8a2 JBR-2787 fix copying jcef files into jbr/jbrsdk binaries 2020-10-15 08:56:23 +07:00
Dmitry Batrak
1a9838082e JBR-2712 Typeahead mechanism doesn't work on Windows 2020-10-13 13:12:03 +03:00
Dmitry Batrak
d60027e12b JBR-2778 Revert fix for JBR-1973 (IDEA-215004)
This reverts commit c8b3c854
2020-10-12 12:40:03 +03:00
Rajan Halade
bd27263ec7 JBR-2774 Backport: Updated GetPolicyQualifiers.java test
8254081: java/security/cert/PolicyNode/GetPolicyQualifiers.java fails due to an expired certificate

Perform backdated validation of test certificate.

Reviewed-by: mullan, xuelei
2020-10-09 16:25:53 +07:00
Vitaly Provodin
27eafd8a53 Remove jogl and gluegen modules from module-info and modules list
These modules will be added via patch during building corresponding JBR binaries
2020-10-06 07:18:50 +07:00
Anton Tarasov
96da1139c0 Add jogl and gluegen modules to support jcef osr mode
OSR - off-screen rendering
2020-10-05 20:52:49 +03:00
Vitaly Provodin
668570bc61 JBR-2758 refactor building scripts to apply patches adding required modules instead of excluding them 2020-10-05 17:03:54 +07:00
Vitaly Provodin
d3ec3d899d JBR-2736 provide writeObjects implementation for copying files/folders (fix review notes) 2020-10-02 13:52:15 +07:00
Mikhail Grishchenko
d1479872f2 JBR-2412 [windows] mouse listener does not work for jcef
added regression test
2020-09-30 19:43:42 +07:00
Mikhail Grishchenko
e8e4741bb0 JBR-2639 [win] jcef does not recognize vertical mouse wheel events
added regression test
2020-09-30 12:53:32 +07:00
Andrey Starovoyt
33db034d49 JBR-2736 provide writeObjects implementation for copying files/folders from Project Explorer to the Finder 2020-09-30 06:50:13 +07:00
Roman Shevchenko
6a85e88e94 README: correcting proper nouns 2020-09-29 21:45:34 +02:00
Vitaly Provodin
8b7ad2e58f updated JTreg exclude list 2020-09-29 06:20:36 +07:00
Artem Semenov
696a9a4128 JR-CR-667 JBR-2738 Create a test for JTable Accessibility 2020-09-28 13:01:39 +03:00
Artem Semenov
54bb49caeb Review JR-CR-645 JBR-2504 A11y Create a test to test the accessibility of lists on MAc
(cherry picked from commit 92e40bf92c00fb5ce46dff41fc23ad39e460fcc1)
2020-09-25 12:55:34 +03:00
Vitaly Provodin
9c0afe3a7d updated JTreg exclude list 2020-09-24 05:04:33 +07:00
Dmitry Batrak
6dd334f9f0 JBR-2648 Cannot input Japanese and Chinese text in Search Everywhere
code being removed (added to fix JRE-665) is not needed after JBR-2533 fix, as 'simple' windows are natively focused now
2020-09-23 17:27:37 +03:00
Dmitry Batrak
96dd8fcf48 JBR-2735 PopupIncomingFocusTest is failing on KDE when launched via jtreg 2020-09-23 12:47:19 +03:00
Egor Ushakov
9b960dd02a navigation to issues from vcs log 2020-09-16 15:38:20 +03:00
Mikhail Grishchenko
6b7d5fd58c updated JTreg exclude list 2020-09-16 16:25:07 +07:00
Dmitry Batrak
ebcdeb7d80 JBR-2698 setAutoRequestFocus(false) breaks focus logic under i3 window manager on Linux 2020-09-11 11:11:17 +03:00
Vitaly Provodin
67870df19e updated JTreg exclude list 2020-09-11 10:36:59 +07:00
Nikita Gubarkov
afd19dbefd JBR-2614 Fixed LCD glyph width to include both left & right padding, so that rowBytes = width * 3 2020-09-10 15:45:25 +03:00
Nikita Gubarkov
a55097289b Revert "JBR-2614 Passed real glyph type from native code instead of guessing on rowBytes & width"
This reverts commit 8de39b80
2020-09-10 15:39:00 +03:00
Nikita Gubarkov
8de39b80cd JBR-2614 Passed real glyph type from native code instead of guessing on rowBytes & width 2020-09-10 01:50:34 +03:00
Dmitry Batrak
0f038754e5 JBR-2696 Log focus API invocations with stack traces 2020-09-07 14:19:43 +03:00
Vitaly Provodin
4aa278e4a0 Revert "JBR-2577 implemented precise CompilationMXBean#getTotalCompilationTime"
This reverts commit 89163e73
2020-09-07 16:44:40 +07:00
Vitaly Provodin
e3562ecc99 Revert "thread.cpp:4574:43: error: ‘nullptr’ quick fix"
This reverts commit 82a36017
2020-09-07 16:44:20 +07:00
Vitaly Provodin
b62d47da9c updated JTreg exclude list 2020-09-06 06:27:20 +07:00
MonoBot
715e8d345a Fonts release 2.002 2020-08-27 14:05:47 +03:00
Vitaly Provodin
e748f39e20 updated JTreg exclude list 2020-08-26 11:41:35 +07:00
Brian Burkhalter
428ade4fd8 8221852: SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE should be selected at runtime, not build time
Reviewed-by: alanb, shade
2020-08-24 11:36:15 +07:00
Alexey Ushakov
e28ff71e97 JBR-2617 Text with opacity renders black
Some more adjustments in font thickness for dark text. Added JVM properties for fine tuning
2020-08-21 23:52:21 +03:00
Elena Sayapina
f826eb992e IDEA-242347: [TESTUPDATE] Added a comment 2020-08-20 18:10:47 +07:00
Denis Konoplev
ba3f14c83a JBR-2669: set unicode for both keyCode and extendedKeyCode 2020-08-19 21:56:51 +03:00
Alexey Titov
82a3601748 thread.cpp:4574:43: error: ‘nullptr’ quick fix 2020-08-19 14:58:35 +03:00
Kirill Kirichenko
eeab5252e6 JBR-2667 Post review: rename win.darkTheme.on to win.lightTheme.on and reversed the logic 2020-08-19 11:32:58 +03:00
Alexey Ushakov
838bbedd1a Merge pull request #33 from JetBrains/alexey.titov/precise-compilation-time
JBR-2577 implemented precise CompilationMXBean#getTotalCompilationTime
2020-08-18 17:40:47 +03:00
Kirill Kirichenko
0e4ad056dd JBR-2667 Add new AWT desktop property for light/dark theme detection on Windows 10 2020-08-18 14:12:37 +03:00
Alexey Titov
89163e73d0 JBR-2577 implemented precise CompilationMXBean#getTotalCompilationTime 2020-08-13 15:37:22 +03:00
Dmitry Batrak
665ebc5d47 JBR-2652 Window is not focused in some cases on Linux 2020-08-11 13:44:58 +03:00
denis.konoplev
32b1c35305 IDEA-242347: Remove sun.awt.event.KeyEvent import 2020-08-10 12:25:10 +03:00
Alexey Ushakov
55c7be5fe9 JBR-2617 Text with opacity renders black
Minor adjustments of dark text according to UX-1320
2020-08-07 19:52:02 +03:00
denis.konoplev
5017e2e385 IDEA-242347: Remove redundant conversion for Latin unicode 2020-08-07 15:00:02 +03:00
Anton Tarasov
492c217125 JBR-2645 enable CefBrowser.close(true) in jcef reg tests 2020-08-06 16:19:03 +03:00
Alexey Ushakov
269c9580fb JBR-2617 Text with opacity renders black
Corrected bright text thickness (smooth on), bright and dark text thickness (smooth off)
2020-08-06 13:47:28 +03:00
Elena Sayapina
5f691bb788 JBR-2630 Typing speed in IDE editor was dropped after switching to 11.0.8
Introduced sun.awt.osx.RobotSafeDelayMillis property to control macOS specific safe delay for Robot methods.
50 ms safe delay was initially hardcoded in 3862142d (JDK-8242174: [macos] The NestedModelessDialogTest test make the macOS unstable) which affected performance tests execution.
2020-08-06 12:29:37 +07:00
Vitaly Provodin
bcdd2242ef JBR-2634 add facilities generating windows fastdebug builds 2020-08-06 09:53:42 +07:00
Rahul Yadav
faee138574 8240666: Websocket client’s OpeningHandshake discards the HTTP response body
The fix updates jdk.internal.net.http.websocket. OpeningHandshake.send() method to process the response body from server

Reviewed-by: chegar, dfuchs, prappo
(cherry picked from commit ed24927500)
2020-08-05 15:32:40 +07:00
Daniel Fuchs
fb69e212ba 8236859: WebSocket over authenticating proxy fails with NPE
This change fixes several issues with WebSocket and proxy authentication. The AuthenticationFilter is changed to support an authenticating server accessed through an authenticating proxy. MultiExchange is fixed to close the previous connection if a new connection is necessary to establish the websocket (websocket connections are not cached and must be closed in that case). WebSocket OpeningHandshake is fixed to close the connection (without creating the RawChannel) if the opening handshake doesn't result in 101 upgrade protocol.

Reviewed-by: prappo, chegar
(cherry picked from commit c6da6681d4)
2020-08-05 15:32:40 +07:00
Daniel Fuchs
d8cc648a18 8216478: Cleanup HttpResponseImpl back reference to HttpConnection
Retain a reference to Exchange and HttpConnection only when necessary, i.e. for WebSocket initial connection.

Reviewed-by: chegar
(cherry picked from commit ad67fe1baf)
2020-08-05 15:32:40 +07:00
Julia Boes
15d2b6217d 8232853: AuthenticationFilter.Cache::remove may throw ConcurrentModificationException
Change implementation to use iterator instead of plain LinkedList

Reviewed-by: dfuchs, vtewari
(cherry picked from commit d948bfd584)
2020-08-05 15:32:40 +07:00
Michael McMahon
b92f4a73b4 8199849: Add support for UTF-8 encoded credentials in HTTP Basic Authentication
Reviewed-by: chegar, dfuchs
(cherry picked from commit e3b6b7f842)
2020-08-05 15:32:40 +07:00
Michael McMahon
5f0e3bcd37 8217237: HttpClient does not deal well with multi-valued WWW-Authenticate challenge headers
Reviewed-by: chegar, dfuchs
(cherry picked from commit d089a4ae51)
2020-08-05 15:32:40 +07:00
Chris Hegarty
e6f336ae8b 8217429: WebSocket over authenticating proxy fails to send Upgrade headers
Reviewed-by: dfuchs, prappo
(cherry picked from commit 46f4ab603b)
2020-08-05 15:32:40 +07:00
Brian Burkhalter
7c0f78edf1 8227080: (fs) Files.newInputStream(...).skip(n) is slow
Reviewed-by: sbordet, rriggs, fweimer
(cherry picked from commit c6c82dd736)
2020-08-05 15:22:14 +07:00
Brian Burkhalter
a2ba1bd211 8215467: Files.isHidden should return true for hidden directories on Windows
Reviewed-by: alanb, bchristi, darcy
(cherry picked from commit 5c5d27962a)
2020-08-05 15:22:14 +07:00
Alexey Ushakov
c95adeb8f2 JBR-2617 Text with opacity renders black
Fix compilation on windows
2020-08-04 20:58:47 +03:00
Alexey Ushakov
c30306f779 JBR-2617 Text with opacity renders black
Implemented alpha blending in grayscale text rendering
2020-08-04 19:09:37 +03:00
Konstantin Bulenkov
ad8ac1f3bc Merge pull request #28 from JetBrains/mono/2.001
JetBrains Mono release 2.001
2020-07-31 09:05:46 +02:00
Aleksey Shipilev
63719b57ed 8221824: Build failure with MSVS 2013 after JDK-8218418
Reviewed-by: stuefe, alanb
2020-07-31 13:47:51 +07:00
bpb
0f775c6d66 8218418: (fs) Files.createSymbolicLink should use SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE (win)
Reviewed-by: alanb
2020-07-31 13:46:11 +07:00
Sergey Malenkov
523d80cafd EA-235126 - CME: HighlightableComponent.getPreferredSize 2020-07-29 22:05:39 +03:00
Mikhail Grishchenko
ca48245ee3 updated JTreg exclude list 2020-07-29 16:26:39 +07:00
Zhengyu Gu
fd6991529e JBR-2616 Backport: disable test for 32bit platforms
8241086: Test runtime/NMT/HugeArenaTracking.java is failing on 32bit Windows

Reviewed-by: stuefe
2020-07-29 16:25:07 +07:00
Alexey Ushakov
1e04518d5c CMake: defined MACOSX macro for project sources 2020-07-24 19:34:38 +03:00
Alexey Ushakov
5953202a7e JBR-2521 Ugly font in all 2020.2 EAPs on macOS
Provide gamma correction for both light and dark text
2020-07-24 19:33:52 +03:00
Vitaly Provodin
e333be38f4 updated JTreg exclude list 2020-07-24 11:55:12 +07:00
Mikhail Grishchenko
c1bca14fd3 JBR-2586 Render benchmark hangs on Linux and Windows
Fixed incorrect color of jpanel.
2020-07-23 18:07:12 +07:00
Anton Tarasov
57bbddf071 JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI 2020-07-23 10:08:36 +03:00
Vitaly Provodin
9f930e3748 resolving conflict DCEVM vs 11.0.8 update 2020-07-23 10:22:07 +07:00
Alexey Ushakov
64f610b58e CMake: Added compile targets for linux 2020-07-22 20:34:09 +03:00
Alexey Ushakov
ed52fde57d JBR-2591 Repainting is broken (was: Icons in tree list widgets became dark)
Fix compilation on linux
2020-07-22 20:32:13 +03:00
Alexey Ushakov
f517bb3380 Merge pull request #29 from bell-sw/update_11.0.8
jdk-11.0.8-ga update
2020-07-22 14:05:35 +03:00
Alexey Ushakov
7beb75ccec JBR-2591 Repainting is broken (was: Icons in tree list widgets became dark)
Save current blend mode before cached grayscale rendering
2020-07-22 13:21:42 +03:00
andrew
f8ff966477 Added tag jdk-11.0.8-ga for changeset 0b0d55cb09b2 2020-07-22 02:14:38 +03:00
andrew
c9a79afe07 Added tag jdk-11.0.8+10 for changeset 0b0d55cb09b2 2020-07-22 02:02:27 +03:00
valeriep
2834f4adb0 8248505: Unexpected NoSuchAlgorithmException when using secure random impl from BCFIPS provider
Summary: Use getService(...) call for Provider.getDefaultSecureRandomService()
Reviewed-by: weijun, coffeys, mullan
2020-07-22 02:02:26 +03:00
andrew
6d10730d00 Added tag jdk-11.0.8+9 for changeset 59f8565ee5e2 2020-07-22 02:02:26 +03:00
joehw
abf2d7d74c 8242136: Better XML namespace handling
Reviewed-by: lancea, dfuchs, skoivu, rhalade, kravikumar
2020-07-22 02:02:25 +03:00
amenkov
be2bbc2f48 8241522: Manifest improved jar headers redux
Reviewed-by: sspitsyn, jwilhelm, mschoene, rhalade
2020-07-22 02:02:25 +03:00
weijun
dbf75d0e56 8241379: Update JCEKS support
Reviewed-by: ahgross, mullan, rhalade
2020-07-22 02:02:24 +03:00
serb
60118a409e 8240482: Improved WAV file playback
Reviewed-by: amenkov, rhalade, mschoene, prr
2020-07-22 02:02:24 +03:00
prr
a08aa25531 8240119: Less Affine Transformations
Reviewed-by: serb, bpb, mschoene, rhalade
2020-07-22 02:02:23 +03:00
serb
ce61762e04 8238925: Enhance WAV file playback
Reviewed-by: prr, amenkov, rhalade, mschoene
2020-07-22 02:02:22 +03:00
bpb
1c244b7bc0 8238920: Better Buffer support
Reviewed-by: alanb, ahgross, rhalade, psandoz
2020-07-22 02:02:22 +03:00
prr
b8b35ffb01 8238843: Enhanced font handing
Reviewed-by: serb, psadhukhan, mschoene, rhalade
2020-07-22 02:02:21 +03:00
weijun
24418db7cd 8238804: Enhance key handling process
Reviewed-by: rriggs, mullan, ahgross, rhalade
2020-07-22 02:02:21 +03:00
bpb
93c5a7b606 8238013: Enhance String writing
Reviewed-by: alanb, ahgross, rhalade, rriggs
2020-07-22 02:02:20 +03:00
prr
c61033caba 8238002: Better matrix operations
Reviewed-by: serb, erikj, mschoene, rhalade
2020-07-22 02:02:19 +03:00
weijun
b04998a70a 8237592: Enhance certificate verification
Reviewed-by: xuelei, mullan, rhalade, ahgross
2020-07-22 02:02:19 +03:00
chegar
5e281062c3 8237117: Better ForkJoinPool behavior
Reviewed-by: dfuchs, alanb, rhalade, mullan
2020-07-22 02:02:18 +03:00
phh
784be32b7e 8236867: Enhance Graal interface handling
Summary: Includes "[GR-14791] Fix NPE in InliningData.getInlineInfo" (Graal 4c69db20e2b614c29af27ed95d20e3b80bd21848)
Reviewed-by: andrew
Contributed-by: benty@amazon.com
2020-07-22 02:02:17 +03:00
xuelei
783a80c6c6 8236191: Enhance OID processing
Reviewed-by: jnimeh, weijun, ahgross, rhalade
2020-07-22 02:02:16 +03:00
rriggs
9796449910 8234836: Improve serialization handling
Reviewed-by: skoivu, rhalade, chegar
2020-07-22 02:02:15 +03:00
mullan
381d62cc37 8234418: Better parsing with CertificateFactory
Reviewed-by: weijun, mschoene, rhalade
2020-07-22 02:02:15 +03:00
mullan
11ad64ffa3 8234042: Better factory production of certificates
Reviewed-by: weijun, rhalade, mschoene
2020-07-22 02:02:14 +03:00
mullan
1d0182f137 8234032: Improve basic calendar services
Reviewed-by: weijun, rhalade, mschoene
2020-07-22 02:02:13 +03:00
serb
d1d9055e51 8233255: Better Swing Buttons
Reviewed-by: alitvinov, prr, ahgross, rhalade
2020-07-22 02:02:13 +03:00
jdv
3767fcae50 8233239: Enhance TIFF support
Reviewed-by: prr, bpb, mschoene, rhalade
2020-07-22 02:02:12 +03:00
phh
1aa7603700 8233234: Better Zip Naming
Reviewed-by: andrew, mbalao
Contributed-by: James Guo <junguoj@amazon.com>
2020-07-22 02:02:11 +03:00
joehw
628e62978b 8232014: Expand DTD support
Reviewed-by: lancea, dfuchs, mschoene, rhalade, aefimov
2020-07-22 02:02:10 +03:00
smarks
8949ef0d15 8231800: Better listing of arrays
Reviewed-by: alanb, rhalade, ahgross, igerasim
2020-07-22 02:02:10 +03:00
aefimov
75d8c71dd8 8230613: Better ASCII conversions
Reviewed-by: dfuchs, naoto, mschoene, rhalade
2020-07-22 02:02:09 +03:00
goetz
d931e3ceb9 Added tag jdk-11.0.8+8 for changeset 40b646e9d8fb 2020-07-22 01:19:18 +03:00
goetz
01d727e6a3 Added tag jdk-11.0.8+7 for changeset 46d4984bb3c6 2020-07-22 01:18:00 +03:00
goetz
e7ac29729c Added tag jdk-11.0.8+6 for changeset e42c6d1a1993 2020-07-22 01:17:23 +03:00
goetz
bb6e1641db Added tag jdk-11.0.8+5 for changeset 8df1a601187c 2020-07-22 01:16:34 +03:00
goetz
703ed01dd0 Added tag jdk-11.0.8+4 for changeset aa6c93b4f1ac 2020-07-22 01:16:06 +03:00
goetz
77eaa99d36 Added tag jdk-11.0.8+3 for changeset 2c0c9cfe2a4e 2020-07-22 01:15:19 +03:00
goetz
b6fbcf5b0c Added tag jdk-11.0.8+2 for changeset 88eaa453331e 2020-07-22 01:14:38 +03:00
goetz
aaa8cec640 Added tag jdk-11.0.8+1 for changeset 2eb415c82056 2020-07-22 01:14:01 +03:00
Alexey Ushakov
ad409b4370 JBR-2593 Wide ligatures not rendered in Grayscale mode
Added missing flush of cached vertices
2020-07-21 19:55:45 +03:00
bell-sw
eab96a58e3 reverted functional part of ccfe65b (JRE-938 [windows] Frame.setMaximizedBounds not hidpi-aware) due to upstream update 8176359 (Frame#setMaximizedbounds not working properly in multi screen environments) 2020-07-21 11:50:40 +03:00
Vitaly Provodin
345329a74c updated JTreg exclude list 2020-07-17 12:21:26 +07:00
Vitaly Provodin
60ce8b7256 updated JTreg exclude list 2020-07-17 10:10:23 +07:00
Vitaly Provodin
db4eb3fbc2 JBR-2566 parametrize paths to modules JCEF, JFX - fix for linux_fastdebug 2020-07-16 18:00:01 +07:00
Vitaly Provodin
109422a2de JBR-2566: parametrize paths to modules JCEF, JFX 2020-07-16 16:32:02 +07:00
Alexey Ushakov
a6f33217c4 JBR-1929 Improve rendering of San Francisco font of macOS Catalina
Implemented gamma correction (gamma=2.2) for grayscale rendering in shader (for font size <= 64). It is controlled by Mac rendering setting "Use font smoothing when available"
2020-07-14 23:02:05 +03:00
valeriep
7cd6ae51b8 8246613: Choose the default SecureRandom algo based on registration ordering
Summary: Fixed java.security.Provider and SecureRandom to use the 1st registered SecureRandom service
Reviewed-by: weijun, mullan
2020-07-14 18:25:43 +03:00
pkoppula
504dcf5a5e 8246031: SSLSocket.getSession() doesn't close connection for timeout/ interrupts
Reviewed-by: xuelei, coffeys
2020-07-14 18:25:42 +03:00
rhalade
54219be493 8225069: Remove Comodo root certificate that is expiring in May 2020
Reviewed-by: mullan
2020-07-14 18:25:41 +03:00
robm
d252dbfe54 8214440: ldap over a TLS connection negotiate failed with "javax.net.ssl.SSLPeerUnverifiedException: hostname of the server '' does not match the hostname in the server's certificate"
Reviewed-by: vtewari, xuelei
2020-07-14 18:25:40 +03:00
xuelei
130f7b7ae8 8242141: New System Properties to configure the TLS signature schemes
Reviewed-by: ascarpino, jnimeh, mullan
2020-07-14 18:25:39 +03:00
itakiguchi
c21000efc0 8242541: Small charset issues (ISO8859-16, x-eucJP-Open, x-IBM834 and x-IBM949C)
Summary: Modify ISO8859-16, x-eucJP-Open, x-IBM834 and x-IBM949C charset related files
Reviewed-by: naoto
2020-07-14 18:25:38 +03:00
xliu
d8e5df1778 8022574: remove HaltNode code after uncommon trap calls
Reviewed-by: thartmann, mdoerr, simonis
2020-07-14 18:25:36 +03:00
chagedorn
1995bf0bf3 8231720: Some perf regressions after 8225653
Summary: Fixed emitting of unused assembly code in 8225653​ which had a negative impact on performance in tight loops.
Reviewed-by: kvn, thartmann
2020-07-14 18:25:35 +03:00
chagedorn
e6126eeab5 8225653: Provide more information when hitting SIGILL from HaltNode
Summary: Add information string for each HaltNode which is printed if hit at runtime.
Reviewed-by: vlivanov, thartmann
2020-07-14 18:25:34 +03:00
erikj
3cf320fe7b 8244951: Missing entitlements for hardened runtime
Reviewed-by: ihse
2020-07-14 18:25:33 +03:00
mdoerr
2d6da4f86b 8245047: [PPC64] C2: ReverseBytes + Load always match to unordered Load (acquire semantics missing)
Summary: Introduce separate nodes with acquire semantics which match ReverseBytes + Load.acquire.
Reviewed-by: shade, lucy
2020-07-14 18:25:32 +03:00
eosterlund
089ca96153 8216541: CompiledICHolders of VM locked unloaded nmethods are released too late
Reviewed-by: kvn, thartmann
2020-07-14 18:25:31 +03:00
epavlova
3f3902cb8e 8225622: [AOT] runtime/SharedArchiveFile/TestInterpreterMethodEntries.java crashed with AOTed java.base
Reviewed-by: kvn
2020-07-14 18:25:30 +03:00
rhalade
a16dc710c3 8225068: Remove DocuSign root certificate that is expiring in May 2020
Reviewed-by: mullan
2020-07-14 18:25:29 +03:00
dtitov
dec592bc63 8206179: com/sun/management/OperatingSystemMXBean/GetCommittedVirtualMemorySize.java fails with Committed virtual memory size illegal value
Reviewed-by: sspitsyn, cjplummer
2020-07-14 18:25:28 +03:00
never
e88af15954 8191930: [Graal] emits unparseable XML into compile log
Reviewed-by: kvn
2020-07-14 18:25:27 +03:00
joehw
3923f17212 8242470: Update Xerces to Version 2.12.1
Reviewed-by: lancea, naoto
2020-07-14 18:25:26 +03:00
mbaesken
6508bfc82b 8210147: adjust some WSAGetLastError usages in windows network coding
Reviewed-by: clanger, stuefe
2020-07-14 18:25:25 +03:00
kvn
983b6a9135 8216151: [Graal] Module jdk.internal.vm.compiler.management has not been granted accessClassInPackage.org.graalvm.compiler.debug
Summary: update default.policy based on latest changes in jdk.internal.vm.compiler.management
Reviewed-by: thartmann, alanb, mchung
2020-07-14 18:25:24 +03:00
phh
9f4d3c61d1 8245649: Revert 8245397 backport of 8230591
Summary: Revert 8245397 backport of 8230591
Reviewed-by: clanger
2020-07-14 18:25:23 +03:00
never
308aa701d3 8241458: [JVMCI] add mark value to expose CodeOffsets::Frame_Complete
Reviewed-by: kvn
2020-07-14 18:25:22 +03:00
ihse
6c147f3202 8217404: --with-jvm-features doesn't work when multiple features are explicitly disabled
Reviewed-by: vlivanov, kbarrett
2020-07-14 18:25:21 +03:00
pli
0eb6d3d068 8230591: AArch64: Missing intrinsics for Math.ceil, floor, rint
Reviewed-by: aph
2020-07-14 18:25:20 +03:00
mneugschwand
8f175ec887 8235908: omit ThreadPriorityPolicy warning when value is set from image
Reviewed-by: dholmes, clanger, kvn
2020-07-14 18:25:19 +03:00
kbarrett
850fb572dc 8233364: Fix undefined behavior in Canonicalizer::do_ShiftOp
Summary: Add java_shift_xxx helpers and use them.
Reviewed-by: aph, kvn
2020-07-14 18:25:18 +03:00
erikj
7df7269780 8232134: Change to Visual Studio 2017 15.9.16 for building on Windows at Oracle
Reviewed-by: ihse
2020-07-14 18:25:17 +03:00
dlong
96adcfc0e6 8224931: disable JAOTC invokedynamic support until 8223533 is fixed
Reviewed-by: kvn, never
2020-07-14 18:25:16 +03:00
serb
1415d66d15 8239819: XToolkit: Misread of screen information memory
Reviewed-by: prr
2020-07-14 18:25:15 +03:00
pkoppula
4dd1c56feb 8237474: Default SSLEngine should create in server role
Reviewed-by: xuelei, coffeys
2020-07-14 18:25:14 +03:00
coleenp
2ee02a5ed7 8224847: gc/stress/TestReclaimStringsLeaksMemory.java fails with reserved greater than expected
Summary: Rehash threshold was too low for StringTable, and rehashed size table was too large.
Reviewed-by: rehn, gziemski
2020-07-14 18:25:13 +03:00
lmesnik
329ff5ce0b 8139876: Exclude hanging nsk/stress/stack from execution with deoptimization enabled
Reviewed-by: kvn, mseledtsov
2020-07-14 18:25:12 +03:00
thartmann
759f8d8557 8217447: Develop flag TraceICs is broken
Summary: Added NULL check and fixed output.
Reviewed-by: kvn
2020-07-14 18:25:10 +03:00
igerasim
a56d0c87a9 8210788: Javadoc for Thread.join(long, int) should specify that it waits forever when both arguments are zero
Reviewed-by: martin, rriggs
2020-07-14 18:25:09 +03:00
rehn
13be5a2e39 8212933: Thread-SMR: requesting a VM operation whilst holding a ThreadsListHandle can cause deadlocks
Reviewed-by: eosterlund, dcubed, sspitsyn, dholmes
2020-07-14 18:25:08 +03:00
lucy
73035bd402 8221482: Initialize VMRegImpl::regName[] earlier to prevent assert during PrintStubCode
Reviewed-by: kvn
2020-07-14 18:25:07 +03:00
bobv
1bd454ad99 8244853: The static build of libextnet is missing the JNI_OnLoad_extnet function
Reviewed-by: alanb
2020-07-14 18:25:06 +03:00
stuefe
928ed232a4 8244777: ClassLoaderStats VM Op uses constant hash value
Reviewed-by: coleenp, jbachorik
2020-07-14 18:25:05 +03:00
thartmann
ab62dfba6a 8156207: Resource allocated BitMaps are often cleared unnecessarily
Summary: Removed unnecessary clearing of BitMap.
Reviewed-by: kbarrett, kvn, thartmann
Contributed-by: Christian Hagedorn <christian.hagedorn@oracle.com>
2020-07-14 18:25:04 +03:00
kravikumar
37e74b13fc 8243541: (tz) Upgrade time-zone data to tzdata2020a
Reviewed-by: naoto, martin, andrew
2020-07-14 18:25:03 +03:00
kbarrett
27ffdd6fe9 8234779: Provide idiom for declaring classes noncopyable
Summary: Add NONCOPYABLE macro and uses.
Reviewed-by: dholmes, pliden, coleenp
2020-07-14 18:25:01 +03:00
bulasevich
da80c80707 8227632: Incorrect PrintCompilation message: made not compilable on levels 0 1 2 3 4
Summary: Fixing the message to print actual comp_level
Reviewed-by: dlong, kvn
2020-07-14 18:25:00 +03:00
rraghavan
3e853f2f4c 8226198: use of & instead of && in LibraryCallKit::arraycopy_restore_alloc_state
Summary: Used logical operator correctly
Reviewed-by: kvn, thartmann
2020-07-14 18:24:59 +03:00
thartmann
b28939a548 8226879: Memory leak in Type::hashcons
Summary: Call delete on xdual type.
Reviewed-by: kvn
2020-07-14 18:24:58 +03:00
dlong
820fbcbdf6 8211743: [AOT] crash in ScopeDesc::decode_body() when JVMTI walks AOT frames
Reviewed-by: kvn
2020-07-14 18:24:57 +03:00
kbarrett
fef8cb45fe 8204834: Fix confusing "allocate" naming in OopStorage
Summary: allocate_list => allocation_list and so on.
Reviewed-by: dholmes, tschatzl, coleenp
2020-07-14 18:24:56 +03:00
rehn
1c6eb891ef 8210303: VM_HandshakeAllThreads fails assert with "failed: blocked and not walkable"
Reviewed-by: dcubed, dholmes
2020-07-14 18:24:55 +03:00
fyang
ebef5bf7ec 8244407: JVM crashes after transformation in C2 IdealLoopTree::split_fall_in
Reviewed-by: thartmann, kvn
Contributed-by: zhouyong44@huawei.com
2020-07-14 18:24:54 +03:00
lucy
db9fc47477 8219214: Infinite Loop in CodeSection::dump()
Reviewed-by: kvn, thartmann
2020-07-14 18:24:53 +03:00
thartmann
52cbb297dc 8225783: Incorrect use of binary operators on booleans in type.cpp
Summary: Use logical operators instead.
Reviewed-by: roland
2020-07-14 18:24:52 +03:00
redestad
6c2bd656f1 8215555: TieredCompilation C2 threads can excessively block handshakes
Reviewed-by: kvn, neliasso, rehn
2020-07-14 18:24:51 +03:00
ysuenaga
31a0a57dee 8216154: C4819 warnings at HotSpot sources on Windows
Reviewed-by: kbarrett, tschatzl
2020-07-14 18:24:50 +03:00
serb
88c971be72 8221823: Requested JDialog width is ignored
Reviewed-by: aivanov
2020-07-14 18:24:49 +03:00
fweimer
085bed455d 8233880: Support compilers with multi-digit major version numbers
Reviewed-by: tbell
2020-07-14 18:24:48 +03:00
thartmann
9349638970 8242108: Performance regression after fix for JDK-8229496
Summary: Backed out the fix for 8229496.
Reviewed-by: kvn, roland
2020-07-14 18:24:47 +03:00
lmesnik
49aec1efde 8215369: Jcstress pollute /var/tmp with temporary files.
Reviewed-by: iignatyev, mseledtsov
2020-07-14 18:24:46 +03:00
kvn
6409588457 8211392: compiler/profiling/spectrapredefineclass_classloaders/Launcher.java times out in JDK12 CI
Summary: use default compile threshold for these tests
Reviewed-by: thartmann
2020-07-14 18:24:45 +03:00
mbaesken
41e1a5d6c1 8244520: problemlist java/awt/font/Rotate/RotatedFontTest.java on linux
Reviewed-by: clanger
2020-07-14 18:24:44 +03:00
serb
3862142d01 8242174: [macos] The NestedModelessDialogTest test make the macOS unstable
Reviewed-by: prr
2020-07-14 18:24:43 +03:00
dbuck
07be678e25 8234691: Potential double-free in ParallelSPCleanupTask constructor
Summary: Prevent extraneous constructor call
Reviewed-by: dholmes, stefank
2020-07-14 18:24:42 +03:00
serb
c72af0cee5 8196181: sun/java2d/GdiRendering/InsetClipping.java fails
Reviewed-by: jdv
2020-07-14 18:24:41 +03:00
alitvinov
5df643d04e 8242498: Invalid "sun.awt.TimedWindowEvent" object leads to JVM crash
Reviewed-by: prr, serb
2020-07-14 18:24:39 +03:00
weijun
0bc8232032 8243539: Copyright info (Year) should be updated for fix of 8241638
Reviewed-by: weijun
Contributed-by: Bin Liao <buddyliao@tencent.com>
2020-07-14 18:24:38 +03:00
henryjen
cde7b3f860 8241638: launcher time metrics always report 1 on Linux when _JAVA_LAUNCHER_DEBUG set
Reviewed-by: alanb, dholmes
Contributed-by: linzang@tencent.com
2020-07-14 18:24:37 +03:00
tnakamura
ea60706eff 8240518: Incorrect JNU_ReleaseStringPlatformChars in Windows Print
Reviewed-by: serb, pbansal, psadhukhan
2020-07-14 18:24:36 +03:00
afarley
a15ef6ed59 8239365: ProcessBuilder test modifications for AIX execution
Reviewed-by: rriggs, stuefe
2020-07-14 18:24:35 +03:00
tnakamura
224a2c43f7 8232846: ProcessHandle.Info command with non-English shows question marks
Reviewed-by: stuefe, ysuenaga, rriggs
2020-07-14 18:24:34 +03:00
bulasevich
6dc5e764b0 8213947: ARM32: failed check_simd should set UsePopCountInstruction to false
Reviewed-by: kvn
2020-07-14 18:24:33 +03:00
dtitov
a9dbc61644 8242239: [Graal] javax/management/generified/GenericTest.java fails: FAILED: queryMBeans sets same
Reviewed-by: cjplummer, sspitsyn
2020-07-14 18:24:32 +03:00
serb
5229cca547 8241808: [TESTBUG] The JDK-8039467 bug appeared on macOS
Reviewed-by: kizune, pbansal
2020-07-14 18:24:31 +03:00
serb
7ea0f008de 8240786: [TESTBUG] The test java/awt/Window/GetScreenLocation/GetScreenLocationTest.java fails on HiDPI screen
Reviewed-by: jdv, pbansal
2020-07-14 18:24:30 +03:00
serb
4cf5e2f0b0 8196019: java/awt/Window/Grab/GrabTest.java fails on Windows
Reviewed-by: prr, jdv
2020-07-14 18:24:29 +03:00
jiefu
80e71249e3 8242379: [TESTBUG] compiler/loopopts/TestLoopUnswitchingLostCastDependency.java fails with release VMs
Reviewed-by: roland, kvn
2020-07-14 18:24:28 +03:00
roland
d7b4371ce4 8241900: Loop unswitching may cause dependence on null check to be lost
Reviewed-by: thartmann, kvn
2020-07-14 18:24:27 +03:00
prr
a49cdc263a 8232634: Problem List ICMColorDataTest.java
Reviewed-by: serb, psadhukhan
2020-07-14 18:24:26 +03:00
sgehwolf
c1e0caa438 8243059: Build fails when --with-vendor-name contains a comma
Summary: Use $$(VERSION_CFLAGS) so as to avoid the variable getting evaluated early
Reviewed-by: ihse, erikj
2020-07-14 18:24:25 +03:00
mbaesken
d7224e65e9 8242626: enhance posix print_rlimit_info
Reviewed-by: mdoerr, gziemski
2020-07-14 18:24:24 +03:00
mbaesken
4288e6c1d2 8241948: enhance list of environment variables printed in hs_err file
Reviewed-by: dholmes, hseigel
2020-07-14 18:24:23 +03:00
mbaesken
1745ce9ad6 8228482: fix xlc16/xlclang comparison of distinct pointer types and string literal conversion warnings
Reviewed-by: clanger, mdoerr
2020-07-14 18:24:22 +03:00
serb
7855f376bd 8040630: Popup menus and tooltips flicker with previous popup contents when first shown
Reviewed-by: kizune, pbansal
2020-07-14 18:24:21 +03:00
serb
e6bbc1dabb 8238738: AudioSystem.getMixerInfo() takes about 30 sec to report a gone audio device
Reviewed-by: prr
2020-07-14 18:24:20 +03:00
serb
66a2ce65ca 8225126: Test SetBoundsPaintTest.html faild on Windows when desktop is scaled
Reviewed-by: jdv
2020-07-14 18:24:19 +03:00
lucy
96da61ce76 8215551: Missing case label in nmethod::reloc_string_for()
Reviewed-by: kvn, mbaesken
2020-07-14 18:24:18 +03:00
thartmann
ae119ccb19 8208277: Code cache heap (-XX:ReservedCodeCacheSize) doesn't work with 1GB LargePages
Summary: Use huge pages for code cache if ReservedCodeCacheSize == InitialCodeCacheSize
Reviewed-by: kvn
2020-07-14 18:24:17 +03:00
dchuyko
19b7a1709e 8214444: Wrong strncat limits in dfa.cpp
Reviewed-by: kvn
2020-07-14 18:24:16 +03:00
thartmann
0c7166bc86 8211332: Space for stub routines (code_size2) is too small on new Skylake CPUs
Summary: Increase code_size2 for new Skylake CPUs.
Reviewed-by: kvn, stuefe, thartmann
Contributed-by: ralf.schmelter@sap.com
2020-07-14 18:24:15 +03:00
phedlin
a82e688e2e 8210284: "assert((av & 0x00000001) == 0) failed: unsupported V8" on Solaris 11.4
Summary: Sanity checks on V8 legacy properties removed.
Reviewed-by: neliasso, eosterlund, kvn
2020-07-14 18:24:14 +03:00
dpochepk
68f1581b9d 8209439: C2 library_call can potentially ignore Math.pow intrinsic or use null pointer
Reviewed-by: kvn, thartmann
2020-07-14 18:24:12 +03:00
epavlova
415291c6f8 8236211: [Graal] compiler/graalunit/GraphTest.java is skipped in all testing
Reviewed-by: iignatyev
2020-07-14 18:24:11 +03:00
ccheung
85190f9fe4 8212154: [TESTBUG] CheckArchivedModuleApp fails with NPE when JVMCI is absent
Summary: added a null check on wb.getBooleanVMFlag("EnableJVMCI").
Reviewed-by: hseigel, jiangli
2020-07-14 18:24:10 +03:00
jiangli
818e27b601 8210515: [TESTBUG]CheckArchivedModuleApp.java needs to check if EnableJVMCI is set.
Summary: System module objects are not archived when EnableJVMCI is set to true.
Reviewed-by: iklam, ccheung
2020-07-14 18:24:09 +03:00
jiangli
7703e1a727 8209534: [TESTBUG]runtime/appcds/cacheObject/ArchivedModuleCompareTest.java fails with EnableJVMCI.
Summary: Use TestCommon.execOff().
Reviewed-by: ccheung
2020-07-14 18:24:08 +03:00
mbaesken
2bad2cacb1 8241996: on linux set full relro in the linker flags
Reviewed-by: erikj, redestad
2020-07-14 18:24:07 +03:00
mbaesken
174dd44035 8234968: check calloc rv in libinstrument InvocationAdapter
Reviewed-by: clanger, stuefe, sspitsyn
2020-07-14 18:24:06 +03:00
serb
7ac4d6f69d 8235620: Broken merge between JDK-8006406 and JDK-8003559
Reviewed-by: prr
2020-07-14 18:24:05 +03:00
serb
c6efef034d 7124307: JSpinner and changing value by mouse
Reviewed-by: prr, pbansal
2020-07-14 18:24:04 +03:00
xuelei
46f0f52488 8233621: Mismatch in jsse.enableMFLNExtension property name
Reviewed-by: mullan
2020-07-14 18:24:03 +03:00
dfuchs
1ff85bf395 8229421: The logic of java/net/ipv6tests/TcpTest.java is flawed
Summary: The test is fixed to ignore rogue client connection. However it remains succeptible to intermittent failures due to the use of the wildcad address.
Reviewed-by: dfuchs
Contributed-by: Patrick Concannon <patrick.concannon@oracle.com>
2020-07-14 18:24:02 +03:00
jnimeh
bcfce6efc6 8242294: JSSE Client does not throw SSLException when an alert occurs during handshaking
Reviewed-by: xuelei
2020-07-14 18:24:01 +03:00
mbalao
646bafff37 8241888: Mirror jdk.security.allowNonCaAnchor system property with a security one
Reviewed-by: mullan
2020-07-14 18:24:00 +03:00
clanger
3ebc9196f5 8241568: (fs) UserPrincipalLookupService.lookupXXX failure with IOE "Operation not permitted"
Reviewed-by: alanb
2020-07-14 18:23:59 +03:00
prr
bcd9451b67 8238721: Add failing client jtreg tests to the Problem List
Reviewed-by: serb
2020-07-14 18:23:58 +03:00
rrich
4677d5e443 8234146: compiler/jsr292/ContinuousCallSiteTargetChange.java times out on SPARC
Reviewed-by: vlivanov, thartmann
2020-07-14 18:23:57 +03:00
ihse
66489f122b 8231572: Use -lobjc instead of -fobjc-link-runtime in libosxsecurity
Reviewed-by: erikj
2020-07-14 18:23:56 +03:00
gadams
7f485ee001 8051349: nsk/jvmti/scenarios/sampling/SP06/sp06t003 fails in nightly
Reviewed-by: dholmes, sspitsyn, cjplummer, jcbeyler
2020-07-14 18:23:55 +03:00
ihse
df7acd9d39 8212986: Make Visual Studio compiler check less strict
Reviewed-by: erikj
2020-07-14 18:23:54 +03:00
xuelei
9d01f76bfb 8215711: Missing key_share extension for (EC)DHE key exchange should alert missing_extension
Reviewed-by: ascarpino
2020-07-14 18:23:53 +03:00
chagedorn
d9a329ec3c 8237859: C2: Crash when loads float above range check
Summary: Fix control edges of predicates to data nodes when creating pre/main/post loops.
Reviewed-by: neliasso, thartmann, roland
2020-07-14 18:23:52 +03:00
thartmann
50f9a84298 8240905: assert(mem == (Node*)1 || mem == mem2) failed: multiple Memories being matched at once?
Summary: Stop recursion if there are multiple loads with different memory inputs in the tree.
Reviewed-by: kvn, vlivanov
2020-07-14 18:23:51 +03:00
alanb
d297222ef2 8044365: (dc) MulticastSendReceiveTests.java failing with ENOMEM when joining group (OS X 10.9)
Reviewed-by: alanb, vtewari, dfuchs
2020-07-14 18:23:50 +03:00
chagedorn
ee10f53b5f 8240227: Loop predicates should be copied to unswitched loops
Summary: Copy loop range check predicates to unswitched loops and update their control edges.
Reviewed-by: kvn, neliasso, thartmann, roland
2020-07-14 18:23:49 +03:00
kvn
7821feec6e 8237045: JVM uses excessive memory with -XX:+EnableJVMCI -XX:JVMCICounterSize=2147483648
Summary: limit JVMCICounterSize flag's value range to 1M
Reviewed-by: thartmann, redestad
2020-07-14 18:23:48 +03:00
fmatte
5eb2fbf2b8 8239557: [TESTBUG] VeryEarlyAssertTest.java validating "END." marker at lastline is not always true
Reviewed-by: dholmes, mseledtsov
2020-07-14 18:23:47 +03:00
weijun
7978a32526 8236470: Deal with ECDSA using ecdsa-with-SHA2 plus hash algorithm as AlgorithmId
Reviewed-by: xuelei
2020-07-14 18:23:46 +03:00
cito
372e5ca453 8219904: ClassCastException when calling FlightRecorderMXBean#getRecordings()
Reviewed-by: egahlin, mseledtsov
2020-07-14 18:23:45 +03:00
hannesw
e90174abd2 8214571: -Xdoclint of array serialField gives "error: array type not allowed here"
Reviewed-by: jjg, sundar
2020-07-14 18:23:43 +03:00
ccheung
ca2aee9530 8228407: JVM crashes with shared archive file mismatch
Summary: Stop processing other header fields if initial header check has failed.
Reviewed-by: dholmes, jiangli
2020-07-14 18:23:42 +03:00
stefank
ce5a3f39a5 8240223: Use consistent predicate order in and with PhaseIdealLoop::find_predicate
Reviewed-by: thartmann, neliasso, chagedorn
2020-07-14 18:23:41 +03:00
chagedorn
af0ae4cc4f 8238765: PhaseCFG::schedule_pinned_nodes cannot handle precedence edges from unmatched CFG nodes correctly
Summary: Fix PhaseCFG::schedule_pinned_nodes to correctly handle precedence edges from unmatched CFG nodes.
Reviewed-by: roland, neliasso, kvn
2020-07-14 18:23:40 +03:00
prr
a9e8caa182 8238842: AIOOBE in GIFImageReader.initializeStringTable
Reviewed-by: serb, bpb
2020-07-14 18:23:39 +03:00
mdoerr
c74cf2f0c2 8232106: [x86] C2: SIGILL due to usage of SSSE3 instructions on processors which don't support it
Reviewed-by: kvn, thartmann
2020-07-14 18:23:38 +03:00
prr
db7fe94ad2 8239091: Reversed arguments in call to strstr in freetype "debug" code.
Reviewed-by: bpb
2020-07-14 18:23:37 +03:00
manc
b39b452039 8241556: Memory leak if -XX:CompileCommand is set
Reviewed-by: rasbold, thartmann, neliasso
2020-07-14 18:23:36 +03:00
ssahoo
5527b818e4 8235874: The ordering of Cipher Suites is not maintained provided through jdk.tls.client.cipherSuites and jdk.tls.server.cipherSuites system property.
Summary: Corrected Cipher Suites ordering through system properties
Reviewed-by: xuelei
2020-07-14 18:23:35 +03:00
ssahoo
abc6293c34 8234728: Some security tests should support TLSv1.3
Summary: Tests were updated to support TLSv1.3 and cipher suite order
Reviewed-by: xuelei
2020-07-14 18:23:34 +03:00
roland
b5ca899872 8237086: assert(is_MachReturn()) running CTW with fix for JDK-8231291
Reviewed-by: kvn, vlivanov
2020-07-14 18:23:33 +03:00
thartmann
8e086d5477 8217230: assert(t == t_no_spec) failure in NodeHash::check_no_speculative_types()
Summary: Remove dead node from C2 IR.
Reviewed-by: roland, neliasso
2020-07-14 18:23:32 +03:00
ascarpino
667fc27658 8211339: NPE during SSL handshake caused by HostnameChecker
Reviewed-by: xuelei
2020-07-14 18:23:31 +03:00
prappo
7c9b7e03a6 8236700: Upgrading JSZip from v3.1.5 to v3.2.2
Reviewed-by: hannesw, jjg
2020-07-14 18:23:30 +03:00
mbaesken
b3e9e81328 8241660: Add virtualization information output to hs_err file on macOS
Reviewed-by: clanger, mdoerr
2020-07-14 18:23:29 +03:00
mbaesken
337fbe0dae 8240824: enhance print_full_memory_info on Linux by THP related information
Reviewed-by: dholmes, stuefe
2020-07-14 18:23:28 +03:00
mbaesken
fd746c33e9 8241586: compiler/cpuflags/TestAESIntrinsicsOnUnsupportedConfig.java fails on aarch64
Reviewed-by: clanger
2020-07-14 18:23:27 +03:00
poonam
243d3e0f1c 8231779: crash HeapWord*ParallelScavengeHeap::failed_mem_allocate
Reviewed-by: dlong, tschatzl, pliden
2020-07-14 18:23:25 +03:00
dfuchs
825ff00812 8231631: sun/net/ftp/FtpURLConnectionLeak.java fails intermittently with NPE
Summary: sun/net/www/ftptest/FtpCommandHandler.java is modified to handle EOF properly
Reviewed-by: chegar, vtewari
2020-07-14 18:23:24 +03:00
yzhou
46d0403e15 8231213: Migrate SimpleDateFormatConstTest to JDK Repo
Reviewed-by: naoto
2020-07-14 18:23:23 +03:00
fyang
47d297b9a3 8235762: JVM crash in SWPointer during C2 compilation
Reviewed-by: thartmann, chagedorn, neliasso
2020-07-14 18:23:22 +03:00
arapte
099270a5c9 8226253: JAWS reports wrong number of radio buttons when buttons are hidden.
Reviewed-by: kizune, pbansal
2020-07-14 18:23:21 +03:00
bae
1aa0a01c91 8239798: SSLSocket closes socket both socket endpoints on a SocketTimeoutException
Reviewed-by: xuelei
Contributed-by: alexey@azul.com
2020-07-14 18:23:20 +03:00
valeriep
2bc1d98b06 8238898: Missing hash characters for header on license file
Summary: Fixed the typos and corrected the formatting
Reviewed-by: weijun
2020-07-14 18:23:19 +03:00
prr
d614975eff 8175984: ICC_Profile has un-needed, not-empty finalize method
Reviewed-by: jdv, serb
2020-07-14 18:23:18 +03:00
prr
6528621eb0 8223935: PIT: java/awt/font/WindowsIndicFonts.java fails on windows10
Reviewed-by: serb, jdv
2020-07-14 18:23:17 +03:00
lfoltan
f005c8ea62 8225325: Add tests for redefining a class' private method during resolution of the bootstrap specifier
Summary: Add new tests
Reviewed-by: dholmes, sspitsyn
2020-07-14 18:23:16 +03:00
dcubed
d82123f824 8224793: os::die() does not honor CreateCoredumpOnCrash option
Reviewed-by: kbarrett, dholmes, stuefe
2020-07-14 18:23:15 +03:00
zgu
571d28dbe5 8183369: RFC unconformity of HttpURLConnection with proxy
Summary: HttpURLConnection retried with proxy if the connection fails on first attempt as per RFC
Reviewed-by: chegar, dfuchs, vtewari
Contributed-by: ravi.k.reddy@oracle.com
2020-07-14 18:23:14 +03:00
rriggs
7f53812d25 8239893: Windows handle Leak when starting processes using ProcessBuilder
Reviewed-by: bpb, naoto
2020-07-14 18:23:13 +03:00
erikj
db88072d37 8240972: macOS codesign fail on macOS 10.13.5 or older
Reviewed-by: erikj, ihse
Contributed-by: junyuan.zheng@microsoft.com
2020-07-14 18:23:12 +03:00
henryjen
cf7e7e90c2 8231863: Crash if classpath is read from @argument file and the main gets option argument
Reviewed-by: alanb, mchung
Contributed-by: Mat Carter <matthew.carter@microsoft.com>
2020-07-14 18:23:11 +03:00
clanger
b8d31fd8c2 8237192: Generate stripped/public pdbs on Windows for jdk images
Reviewed-by: erikj, ihse
Contributed-by: christoph.langer@sap.com, matthias.baesken@sap.com
2020-07-14 18:23:10 +03:00
mdoerr
31f6a8aa3d 8241464: [11u] Backport: make rehashing be a needed guaranteed safepoint cleanup action
Summary: Backport part of JDK-8221967.
Reviewed-by: coleenp, lucy, clanger
2020-07-14 18:23:09 +03:00
shade
4445de16a5 8241445: Fix copyright in test/jdk/tools/launcher/ArgFileSyntax.java
Reviewed-by: psandoz
2020-07-14 18:23:08 +03:00
dfuchs
09b0950a9b 8191169: java/net/Authenticator/B4769350.java failed intermittently
Summary: fixed a race condition in AuthenticationInfo when serializeAuth=true
Reviewed-by: chegar, michaelm
2020-07-14 18:23:07 +03:00
itakiguchi
8cfa3cc5f0 8239965: XMLEncoder/Test4625418.java fails due to "Error: Cp943 - can't read properly"
Summary: Cp943 and x-IBM943 should skip on XMLEncoder/Test4625418.java
Reviewed-by: naoto
2020-07-14 18:23:05 +03:00
naoto
24b0efc7fd 8239976: Put JDK-8239965 on the ProblemList.txt
Reviewed-by: dcubed
2020-07-14 18:23:04 +03:00
itakiguchi
71558692bd 8235834: IBM-943 charset encoder needs updating
Summary: Apply 34B003AF.RPMAP130 definition into encoder
Reviewed-by: naoto
2020-07-14 18:23:03 +03:00
henryjen
dcd4e16ba0 8240629: argfiles parsing broken for argfiles with comment cross 4096 bytes chunk
Reviewed-by: alanb, mchung
2020-07-14 18:23:02 +03:00
mgronlun
b226b22d45 8221121: applications/microbenchmarks are encountering crashes in tier5
Reviewed-by: egahlin, dholmes
2020-07-14 18:23:01 +03:00
rehn
3c2c83194d 8207334: VM times out in VM_HandshakeAllThreads::doit() with RunThese30M
Summary: Handshakes did not consider external suspended threads safe for safepoint.
Reviewed-by: dcubed, dholmes
2020-07-14 18:23:00 +03:00
coffeys
680cf862d6 8233801: GCMEmptyIv.java test fails on Solaris 11.4
Reviewed-by: valeriep
2020-07-14 18:22:59 +03:00
aoqi
791ac89003 8233608: Minimal build broken after JDK-8233494
Reviewed-by: shade
2020-07-14 18:22:58 +03:00
iklam
4d70ec1f6d 8213250: CDS archive creation aborts due to metaspace object allocation failure
Reviewed-by: jiangli, ccheung
2020-07-14 18:22:57 +03:00
dtitov
e2321b4c98 8240711: TestJstatdPort.java failed due to "ExportException: Port already in use:"
Reviewed-by: amenkov
2020-07-14 18:22:56 +03:00
roland
d8722777b3 8236759: ShouldNotReachHere in PhaseIdealLoop::verify_strip_mined_scheduling
Reviewed-by: thartmann, neliasso
2020-07-14 18:22:55 +03:00
valeriep
860983aad9 8236897: Fix the copyright header for pkcs11gcm2.h
Summary: Add the "Classpath" exception to existing header
Reviewed-by: weijun
2020-07-14 18:22:54 +03:00
hseigel
969116c611 8225789: Empty method parameter type should generate ClassFormatError
Summary: Check for an empty name when verifying unqualified names
Reviewed-by: lfoltan, coleenp
2020-07-14 18:22:53 +03:00
rfield
e0751412e2 8200701: jdk/jshell/ExceptionsTest.java fails on Windows, after JDK-8198801
8159740: JShell: corralled declarations do not have correct source to wrapper mapping
8212167: JShell : Stack trace of exception has wrong line number
Summary: Build corralled (recoverable undeclared definitions) declarations from position translating wraps....
Reviewed-by: jlahoda
2020-07-14 18:22:52 +03:00
rfield
3f2396a35e 8080353: JShell: Better error message on attempting to add default method
Summary: Special handling for errors with "default" modifier
Reviewed-by: jlahoda
2020-07-14 18:22:51 +03:00
dnsimon
28719e7e95 8238190: [JVMCI] Fix single implementor speculation for diamond shapes.
Reviewed-by: kvn
Contributed-by: david.leopoldseder@oracle.com
2020-07-14 18:22:49 +03:00
chagedorn
639ce8fc97 8235332: TestInstanceCloneAsLoadsStores.java fails with -XX:+StressGCM
Summary: Account for GC barriers when skipping a cloned ArrayCopyNode in ConnectionGraph::find_inst_mem()
Reviewed-by: roland, neliasso
2020-07-14 18:22:48 +03:00
serb
78012defd0 8236953: [macos] JavaFX SwingNode is not rendered on macOS
Reviewed-by: kcr, prr
2020-07-14 18:22:47 +03:00
chagedorn
afa4131515 8235984: C2: assert(out->in(PhiNode::Region) == head || out->in(PhiNode::Region) == slow_head) failed: phi must be either part of the slow or the fast loop
Summary: Bailout from loop unswitching if loop predicates have a control dependency to partially peeled statements.
Reviewed-by: neliasso, thartmann
2020-07-14 18:22:46 +03:00
serb
b3cc2766f5 8236545: Compilation error in mach5 java/awt/FileDialog/MacOSGoToFolderCrash.java
Reviewed-by: dmarkov
2020-07-14 18:22:45 +03:00
jjiang
f0b35bada3 8234727: sun/security/ssl/X509TrustManagerImpl tests support TLSv1.3
Reviewed-by: xuelei
2020-07-14 18:22:44 +03:00
serb
3a38d8b0e8 8223108: Test java/awt/EventQueue/NonComponentSourcePost.java is unstable
Reviewed-by: prr
2020-07-14 18:22:43 +03:00
serb
9efb5e21cb 8235739: Rare NPE at WComponentPeer.getGraphics()
Reviewed-by: dmarkov, aivanov
2020-07-14 18:22:42 +03:00
redestad
640f5c214c 8233494: Avoid calling MallocTracker::record_malloc and record_free when NMT is off
Reviewed-by: mdoerr, zgu
2020-07-14 18:22:41 +03:00
mgronlun
76d4e3642d 8233197: Invert JvmtiExport::post_vm_initialized() and Jfr:on_vm_start() start-up order for correct option parsing
Reviewed-by: sspitsyn, egahlin
2020-07-14 18:22:40 +03:00
roland
c1996d3095 8235584: UseProfiledLoopPredicate fails with assert(_phase->get_loop(c) == loop) failed: have to be in the same loop
Reviewed-by: thartmann, neliasso
2020-07-14 18:22:39 +03:00
thartmann
5795534d86 8235452: Strip mined loop verification fails with assert(is_OuterStripMinedLoop()) failed: invalid node class
Summary: Do not try to verify strip mining if the strip mined loop is malformed.
Reviewed-by: roland, vlivanov
2020-07-14 18:22:38 +03:00
roland
d5b5fef68c 8231550: C2: ShouldNotReachHere() in verify_strip_mined_scheduling
Reviewed-by: vlivanov, thartmann
2020-07-14 18:22:37 +03:00
vtewari
cd230124b9 8203672: JNI exception pending in PlainSocketImpl.c
8203264: JNI exception pending in PlainDatagramSocketImpl.c:740
8203673: JNI exception pending in DualStackPlainDatagramSocketImpl.c:398
Reviewed-by: chegar, igerasim
2020-07-14 18:22:36 +03:00
coffeys
1aaadd93da 8238452: Keytool generates wrong expiration date if validity is set to 2050/01/01
Reviewed-by: pkoppula, weijun, coffeys
Contributed-by: ravi.k.reddy@oracle.com
2020-07-14 18:22:35 +03:00
jvernee
8173be0201 8233920: MethodHandles::tryFinally generates illegal bytecode for long/double return type
Reviewed-by: redestad, vlivanov, jrose
2020-07-14 18:22:34 +03:00
mbaesken
4e27f3d26a 8237962: give better error output for invalid OCSP response intervals in CertPathValidator checks
Reviewed-by: clanger, mullan
2020-07-14 18:22:33 +03:00
xuelei
cd7889a0f4 8214418: half-closed SSLEngine status may cause application dead loop
Reviewed-by: jnimeh, dfuchs, chegar
2020-07-14 18:22:31 +03:00
mbaesken
5c27fbd8ed 8239462: jdk.hotspot.agent misses some ReleaseStringUTFChars calls in case of early returns
Reviewed-by: clanger, amenkov, sspitsyn
2020-07-14 18:22:30 +03:00
mbaesken
287c328461 8239000: handle ContendedPaddingWidth in vm_version_ppc
Reviewed-by: clanger, lucy
2020-07-14 18:22:29 +03:00
serb
1a29c437f0 8235638: NPE in LWWindowPeer.getOnscreenGraphics()
Reviewed-by: dmarkov, aivanov
2020-07-14 18:22:28 +03:00
xuelei
d6810fe3e3 8235311: Tag mismatch may alert bad_record_mac
Reviewed-by: mullan
2020-07-14 18:22:27 +03:00
aivanov
00f9d0541a 8234398: Replace ID2D1Factory::GetDesktopDpi with GetDeviceCaps
Reviewed-by: serb, prr
2020-07-14 18:22:26 +03:00
xuelei
e0ecc0cfdd 8235263: Revert TLS 1.3 change that wrapped IOExceptions
Reviewed-by: mullan
2020-07-14 18:22:25 +03:00
xuelei
08f26a7609 8235183: Remove the "HACK CODE" in comment
Reviewed-by: jnimeh
2020-07-14 18:22:24 +03:00
bae
cf1912ea68 8239787: AArch64: String.indexOf may incorrectly handle empty strings
Reviewed-by: aph, lmesnik, yan
Contributed-by: alexey@azul.com
2020-07-14 18:22:23 +03:00
sgehwolf
ec79841749 8236921: Add build target to produce a JDK image suitable for a Graal/SVM build
Summary: make graal-builder-image will produce a suitable build JDK
Reviewed-by: neugens, adinn, andrew
2020-07-14 18:22:22 +03:00
simonis
af050b51b6 8240073: Fix 'test-make' build target in 11u
Reviewed-by: phh, clanger
2020-07-14 18:22:21 +03:00
mbaesken
417326f95a 8239224: libproc_impl.c previous_thr may be used uninitialized warning
Reviewed-by: clanger, dholmes
2020-07-14 18:22:20 +03:00
stefank
aa50bd3e06 8240529: CheckUnhandledOops breaks NULL check in Modules::define_module
Reviewed-by: coleenp, lfoltan, hseigel
2020-07-14 18:22:19 +03:00
pbansal
a01809a2cc 8238985: [TESTBUG] The arrow image is blue instead of green
Reviewed-by: serb, psadhukhan
2020-07-14 18:22:18 +03:00
stefank
2afbe66adb 8240220: IdealLoopTree::dump_head predicate printing is broken
Reviewed-by: thartmann, neliasso, chagedorn
2020-07-14 18:22:17 +03:00
xuelei
5ab4e8db10 8219991: New fix of the deadlock in sun.security.ssl.SSLSocketImpl
Reviewed-by: alanb, dfuchs
2020-07-14 18:22:16 +03:00
goetz
90ffebae8f 8240827: Downport SSLSocketImpl.java from "8221882: Use fiber-friendly java.util.concurrent.locks in JSSE"
Summary: This fosters downport of "8219991: New fix of the deadlock in sun.security.ssl.SSLSocketImpl"
Reviewed-by: clanger, mdoerr
2020-07-14 18:22:15 +03:00
xuelei
624adb11d7 8209333: Socket reset issue for TLS 1.3 socket close
Reviewed-by: jnimeh
2020-07-14 18:22:14 +03:00
serb
4a23523d3c 8232226: [macos 10.15] test/jdk/java/awt/color/EqualityTest/EqualityTest.java may fail
Reviewed-by: prr, pbansal
2020-07-14 18:22:12 +03:00
serb
4f325f13c3 8234137: The "AutoTestOnTop.java" test may run external applications
Reviewed-by: prr
2020-07-14 18:22:11 +03:00
erikj
adf17e859b 8235686: Add more custom hooks in Bundles.gmk
Reviewed-by: tbell
2020-07-14 18:22:10 +03:00
andrew
a8ed449621 8232748: Build static versions of certain JDK libraries
Reviewed-by: sgehwolf
2020-07-14 18:22:09 +03:00
jdv
2f85950163 8233696: [TESTBUG]Some jtreg tests fail when CAPS_LOCK is ON
Reviewed-by: serb, prr
2020-07-14 18:22:08 +03:00
erikj
62797397b9 8232572: Add hooks for custom output dir in Bundles.gmk
Reviewed-by: tbell
2020-07-14 18:22:07 +03:00
fyang
c9ec72480b 8240576: JVM crashes after transformation in C2 IdealLoopTree::merge_many_backedges
Reviewed-by: kvn
Contributed-by: hedongbo@huawei.com
2020-07-14 18:22:06 +03:00
serb
7d1af5ee29 8226653: [accessibility] Can edit text cell correctly, but Accessibility Tool reads nothing about editor
Reviewed-by: prr
2020-07-14 18:22:05 +03:00
jdv
38b5a08a5f 8234184: [TESTBUG] java/awt/Mouse/EnterExitEvents/ModalDialogEnterExitEventsTest.java fails in Windows
Reviewed-by: psadhukhan
2020-07-14 18:22:04 +03:00
serb
ea49ade0eb 8240202: A few client tests leave mouse buttons pressed
Reviewed-by: prr
2020-07-14 18:22:03 +03:00
roland
4b7f2de1e7 8214862: assert(proj != __null) at compile.cpp:3251
Reviewed-by: kvn, thartmann
2020-07-14 18:22:02 +03:00
mbaesken
af7a0ffc10 8239351: Give more meaningful InternalError messages in Deflater.c
Reviewed-by: stuefe, vtewari, lancea, martin
2020-07-14 18:22:01 +03:00
mbaesken
a16e91349f 8239457: call ReleaseStringUTFChars before early returns in Java_sun_security_pkcs11_wrapper_PKCS11_connect
Reviewed-by: alanb, clanger
2020-07-14 18:22:00 +03:00
bulasevich
d5309df76b 8231118: ARM32: Math tests failures
Reviewed-by: roland
2020-07-14 18:21:59 +03:00
njian
3d7b891e62 8240286: [TESTBUG] Test command error in hotspot/jtreg/compiler/loopopts/superword/SumRedAbsNeg_Float.java
Reviewed-by: kvn, thartmann
Contributed-by: qi.feng@arm.com
2020-07-14 18:21:58 +03:00
rsunderbabu
41fa83f047 8153430: jdk regression test MletParserLocaleTest, ParserInfiniteLoopTest reduce default timeout
Summary: Removed timeout=5 from the tests so that default timeout is used
Reviewed-by: cjplummer
Contributed-by: ramkumar.sunderbabu@oracle.com
2020-07-14 18:21:57 +03:00
weijun
68fd5cc6fe 8232357: Compare version info of Santuario to legal notice
Reviewed-by: mullan
2020-07-14 18:21:56 +03:00
lucy
ee82fd98e0 8239931: [win][x86] vtable stub generation: assert failure (code size estimate) follow-up
Reviewed-by: mdoerr
2020-07-14 18:21:55 +03:00
lucy
558933de80 8239456: vtable stub generation: assert failure (code size estimate)
Reviewed-by: thartmann
2020-07-14 18:21:54 +03:00
clanger
6a0d07d930 8221741: ClassCastException can happen when fontconfig.properties is used
Reviewed-by: mbaesken, itakiguchi
2020-07-14 18:21:53 +03:00
chagedorn
4b9738b5bb 8233033: C2 produces wrong result while unswitching a loop due to lost control dependencies
Summary: Adding missing control dependencies when cloning loop predicates at loop unswitching.
Reviewed-by: roland, vlivanov, thartmann
2020-07-14 18:21:51 +03:00
psadhukhan
cbf10d28a8 8234332: [TESTBUG] java/awt/Focus/DisposedWindow/DisposeDialogNotActivateOwnerTest/DisposeDialogNotActivateOwnerTest.java fails on linux-x64 nightly
Reviewed-by: serb
2020-07-14 18:21:50 +03:00
prr
5408d888a3 8231243: [TESTBUG] CustomFont.java cannot find font file
Reviewed-by: serb
2020-07-14 18:21:49 +03:00
serb
0fa3f55081 8213516: jck test api/javax_accessibility/AccessibleState/fields.html fails intermittent
Reviewed-by: prr
2020-07-14 18:21:48 +03:00
vlivanov
50afb69bf3 8146090: java/lang/ref/ReachabilityFenceTest.java fails with -XX:+DeoptimizeALot
Reviewed-by: dholmes, iignatyev
2020-07-14 18:21:47 +03:00
bchristi
6d14e4b5e8 8205399: Set node color on pinned HashMap.TreeNode deletion
Reviewed-by: martin
2020-07-14 18:21:46 +03:00
ysuenaga
09c5c519d8 8233707: systemScale.cpp could not compile with VS2019
Reviewed-by: serb, aivanov
2020-07-14 18:21:45 +03:00
lkorinth
3afadfa003 8231671: Fix copyright headers in hotspot (missing comma after year)
Reviewed-by: tschatzl, dholmes
2020-07-14 18:21:44 +03:00
prr
78d8e40ca3 8224632: testbug: java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java fails on MacOS
Reviewed-by: serb, psadhukhan
2020-07-14 18:21:43 +03:00
chagedorn
52bf44e728 8238756: C2: assert(((n) == __null || !VerifyIterativeGVN || !((n)->is_dead()))) failed: can not use dead node
Summary: Fix -XX:+VerifyIterativeGVN due to a dead node and add some basic flag testing.
Reviewed-by: roland, neliasso
2020-07-14 18:21:42 +03:00
chagedorn
7c59939116 8239852: java/util/concurrent tests fail with -XX:+VerifyGraphEdges: assert(!VerifyGraphEdges) failed: verification should have failed
Summary: Remove an assertion which was too strong for some valid IRs when running with -XX:+VerifyGraphEdges
Reviewed-by: neliasso, thartmann
2020-07-14 18:21:41 +03:00
jiefu
0a8e30c717 8237055: [TESTBUG] compiler/c2/TestJumpTable.java fails with release VMs
Reviewed-by: thartmann
2020-07-14 18:21:40 +03:00
thartmann
36cf6f0975 8229855: C2 fails with assert(false) failed: bad AD file
Summary: Strengthen the check to ensure that both control and data paths die consistently.
Reviewed-by: vlivanov, roland
2020-07-14 18:21:39 +03:00
zgu
a0d4441b62 8237396: JvmtiTagMap::weak_oops_do() should not trigger barriers
Reviewed-by: stefank, rkennke
2020-07-14 18:21:38 +03:00
mbalao
ca1df1b168 8238555: Allow Initialization of SunPKCS11 with NSS when there are external FIPS modules in the NSSDB
Reviewed-by: mullan, valeriep
2020-07-14 18:21:37 +03:00
chagedorn
fa8f258c90 8229158: make UseSwitchProfiling non-experimental or false by-default
Summary: Changed UseSwitchProfiling from experimental to diagnostic.
Reviewed-by: dholmes, shade, thartmann
2020-07-14 18:21:36 +03:00
xuelei
c9db1cc0f1 8228757: Fail fast if the handshake type is unknown
Reviewed-by: jnimeh
2020-07-14 18:21:34 +03:00
prappo
627d7976ac 8217606: LdapContext#reconnect always opens a new connection
Reviewed-by: lancea, vtewari, rriggs
Contributed-by: Chris Yin <xu.y.yin@oracle.com>
2020-07-14 18:21:33 +03:00
pmuthuswamy
52a169c393 8214856: Errors with JSZip in web console after upgrade to 3.1.5
Reviewed-by: hannesw
2020-07-14 18:21:32 +03:00
serb
d9785fb625 8198339: Test javax/swing/border/Test6981576.java is unstable
Reviewed-by: kaddepalli, psadhukhan
2020-07-14 18:21:31 +03:00
thartmann
7854cd4495 8239142: C2's UseUniqueSubclasses optimization is broken for array accesses
Summary: Avoid resetting the elemtype for array accesses.
Reviewed-by: vlivanov, eosterlund
2020-07-14 18:21:30 +03:00
fyang
ddd9ac0ee9 8239915: Zero VM crashes when handling dynamic constant
Reviewed-by: dholmes
Contributed-by: wangkun49@huawei.com
2020-07-14 18:21:29 +03:00
roland
d1b4b2438f 8237951: CTW: C2 compilation fails with "malformed control flow"
Reviewed-by: vlivanov, kvn
2020-07-14 18:21:28 +03:00
rraghavan
68790e7c79 8238356: CodeHeap::blob_count() overestimates the number of blobs
Summary: Decremented _blob_count on addition to the free list
Reviewed-by: lucy, shade, thartmann
2020-07-14 18:21:27 +03:00
dholmes
70fdf7b6e6 8048215: [TESTBUG] java/lang/management/ManagementFactory/ThreadMXBeanProxy.java Expected non-null LockInfo
Summary: ensure the target thread has reached wait() before inspecting it
Reviewed-by: mchung, dfuchs, jcbeyler
2020-07-14 18:21:26 +03:00
serb
3673a71f12 8039082: [TEST_BUG] Test java/awt/dnd/BadSerializationTest/BadSerializationTest.java fails
Reviewed-by: prr
2020-07-14 18:21:25 +03:00
ssahoo
53ada30aa3 8205653: test/jdk/sun/management/jmxremote/bootstrap/RmiRegistrySslTest.java and RmiSslBootstrapTest.sh fail with handshake_failure
Summary: Test failure due to unsupported DSA keys
Reviewed-by: dfuchs, xuelei
2020-07-14 18:21:24 +03:00
zgu
4dfc03e500 8234270: [REDO] JDK-8204128 NMT might report incorrect numbers for Compiler area
Reviewed-by: stuefe, minqi
2020-07-14 18:21:23 +03:00
dlong
0596d0ab64 8187078: -XX:+VerifyOops finds numerous problems when running JPRT
Reviewed-by: kvn
2020-07-14 18:21:22 +03:00
jnimeh
2265a2a470 8224997: ChaCha20-Poly1305 TLS cipher suite decryption throws ShortBufferException
Reviewed-by: xuelei
2020-07-14 18:21:20 +03:00
serb
4035179d26 8221445: FastSysexMessage constructor crashes MIDI receiption thread
Reviewed-by: prr
2020-07-14 18:21:19 +03:00
arapte
d975743a91 8198001: java/awt/Menu/WrongParentAfterRemoveMenu/WrongParentAfterRemoveMenu.java debug assert on Windows
Reviewed-by: prr, serb
2020-07-14 18:21:18 +03:00
arapte
fea4cc4922 8198000: java/awt/List/EmptyListEventTest/EmptyListEventTest.java debug assert on Windows
Reviewed-by: prr, serb
2020-07-14 18:21:17 +03:00
serb
712acec624 6933331: (d3d/ogl) java.lang.IllegalStateException: Buffers have not been created
Reviewed-by: prr
2020-07-14 18:21:16 +03:00
rwestberg
2752a7ef6f 8218807: Compilation database (compile_commands.json) may contain obsolete items
Reviewed-by: ihse, erikj
2020-07-14 18:21:14 +03:00
goetz
013381892c 8239792: Bump update version for OpenJDK: jdk-11.0.8
Reviewed-by: shade
2020-07-14 18:21:13 +03:00
serb
9841bda9ff 8238575: DragSourceEvent.getLocation() returns wrong value on HiDPI screens (Windows)
Reviewed-by: prr
2020-07-14 18:20:57 +03:00
dbatrak
2a892925b9 8236996: Incorrect Roboto font rendering on Windows with subpixel antialiasing
Reviewed-by: prr, serb
2020-07-14 18:20:56 +03:00
prr
adff077c30 8214481: freetype path does not disable TrueType hinting with AA+FM hints
Reviewed-by: serb, psadhukhan
2020-07-14 18:20:56 +03:00
serb
ba9def2d45 8233573: Toolkit.getScreenInsets(GraphicsConfiguration) may throw ClassCastException
Reviewed-by: prr, jdv
2020-07-14 18:20:54 +03:00
serb
09c6c67640 8176359: Frame#setMaximizedbounds not working properly in multi screen environments
8231564: setMaximizedBounds is broken with large display scale and multiple monitors
Reviewed-by: aivanov
2020-07-14 18:20:53 +03:00
serb
776e4e44a1 8231438: [macOS] Dark mode for the desktop is not supported
Reviewed-by: prr, psadhukhan
2020-07-14 18:20:52 +03:00
alans
af72873ce3 8211301: [macos] support full window content options
Reviewed-by: serb
2020-07-14 18:20:51 +03:00
azeller
4bc44c7ab8 8234696: tools/jlink/plugins/VendorInfoPluginsTest.java times out
Reviewed-by: mchung, clanger
2020-07-14 18:20:50 +03:00
jiefu
31e065dee2 8233291: [TESTBUG] tools/jlink/plugins/VendorInfoPluginsTest.java fails with debug or non-server VMs
Reviewed-by: mchung
2020-07-14 18:20:49 +03:00
mr
80606e79de 8233137: runtime/ErrorHandling/VeryEarlyAssertTest.java fails after 8232080
Reviewed-by: stuefe, iignatyev, mchung
2020-07-14 18:20:48 +03:00
mr
d62f8663e4 8232080: jlink plugins for vendor information and run-time options
Reviewed-by: ihse, alanb, kvn, bobv, mchung
2020-07-14 18:20:47 +03:00
clanger
5dd532c468 8242154: Backport parts of JDK-4947890 to OpenJDK 11u
Reviewed-by: sgehwolf
2020-07-14 18:20:45 +03:00
prr
88767d1951 8224109: Text spaced incorrectly by drawString under rotation with fractional metric
Reviewed-by: serb, kizune
2020-07-14 18:20:44 +03:00
mbaesken
cdfa6a995a 8240603: Windows 32bit compile error after 8238676
Reviewed-by: clanger, dholmes
2020-07-14 18:20:44 +03:00
prr
6c76c6b994 8209113: Use WeakReference for lastFontStrike for created Fonts
Reviewed-by: serb, jdv
2020-07-14 18:20:44 +03:00
dtitov
3b52f2b30e 8193879: Java debugger hangs on method invocation
Reviewed-by: sspitsyn, amenkov, gadams
2020-07-14 18:20:42 +03:00
Alexey Titov
8de16a2732 JBR-2479: moved new JIT API to com.jetbrains.management 2020-07-14 18:16:11 +07:00
Alexey Titov
34cd1b08f2 JBR-2479: removed public functions due to license restrictions 2020-07-14 18:16:11 +07:00
Alexey Titov
9357e9872c JBR-2479: API for getting JIT compiler state 2020-07-14 18:16:11 +07:00
Vitaly Provodin
a57ed60b88 updated JTreg exclude list 2020-07-14 10:03:29 +07:00
MonoBot
3f5ee10c34 Fonts release 2.001 2020-07-13 15:14:30 +03:00
Vitaly Provodin
4f17e1b965 dcevm: G1 Heap parallel iterate method "object_par_iterate" + dcevm timers 2020-07-10 12:19:35 +07:00
Vitaly Provodin
ab97d74692 updated JTreg exclude list 2020-07-09 18:10:36 +07:00
Anton Tarasov
e30a309f92 JBR-2557 use com.jetbrains.cef.JCefAppConfig in JCEF tests 2020-07-07 12:06:12 +03:00
Denis Konoplev
703d77a927 JBR-2554: Proper unicode values in KeyEvent.keyCode 2020-07-03 15:58:33 +03:00
Dmitry Batrak
2f1d317d87 JBR-2533 Popup is not focused on click when switching from another application on macOS
more reliable jtreg test
2020-07-03 10:55:31 +03:00
Vitaly Provodin
f7b4c42e1d JBR-2545 Clean up the list of ignored Render tests 2020-07-03 07:36:07 +07:00
Dmitry Batrak
21af1eba85 JBR-2533 Popup is not focused on click when switching from another application on macOS
makes sure jtreg test cleans up properly
2020-07-02 16:15:39 +03:00
Dmitry Batrak
72b0add80c JBR-2533 Popup is not focused on click when switching from another application on macOS
fix NPE
2020-07-02 15:43:52 +03:00
Dmitry Batrak
67b174dc8c JBR-2533 Popup is not focused on click when switching from another application on macOS
fix main menu activation logic
2020-07-01 19:33:41 +03:00
Anton Tarasov
a41a59a57b [followup] 8238676: jni crashes on accessing it from process exit hook 2020-06-30 20:29:13 +03:00
Anton Tarasov
9c8cffee50 8238676: jni crashes on accessing it from process exit hook 2020-06-30 18:54:09 +03:00
Dmitry Batrak
d9ff151211 JBR-2533 Popup is not focused on click when switching from another application on macOS 2020-06-30 12:37:22 +03:00
Anton Tarasov
0917d89523 JBR-2377 Native crash IU-202.3855 macOS 2020-06-29 17:41:17 +03:00
Konstantin Bulenkov
71e2a8d8ad Update FiraCode to 5.2 2020-06-28 22:20:58 +02:00
Denis Fokin
7d5ac56b6c IDEA-215477 Cursor disappears when PhpStorm loses focus (probably related to Synergy)
Revert of JDK-7150349. The fix was intended to fight popup/applet activation issues.
2020-06-26 18:12:45 +03:00
Dmitry Batrak
2ca834c18e Revert fix for JBR-2533
it causes failure of 6406264 regression test and wrong behaviour in IDEA ('Open Class' popup isn't closed on Esc)
2020-06-26 17:49:56 +03:00
Anton Tarasov
78bd1bbeae JBR-2489 Git branch operations (switch to another branch, rebase) sometimes crash WebStorm 202.5428.27 2020-06-26 15:54:48 +03:00
Denis Fokin
82e6ed7c0b IDEA-215477 Cursor disappears when PhpStorm loses focus (probably related to Synergy)
A flag to workaround Synergy issue. It is only part of the fix. The second part of the fix conflicts with a fix for "JBR-2533 Popup is not focused on click when switching from another application on macOS".
2020-06-26 15:54:11 +03:00
Vitaly Provodin
4c6aa2945a JBR-2531 return release debug level for dcevm bilds 2020-06-26 08:24:42 +07:00
Dmitry Batrak
dc85bb1eab JBR-2533 Popup is not focused on click when switching from another application on macOS
added jtreg test case
2020-06-25 19:16:52 +03:00
Dmitry Batrak
89c80c157c JBR-2533 Popup is not focused on click when switching from another application on macOS 2020-06-25 13:47:02 +03:00
Vitaly Provodin
b8e86892f2 dcevm: add support for G1 gc 2020-06-25 11:02:15 +07:00
Vitaly Provodin
5d97e2253c JBR-2531 add fastdebug level for dcevm bilds 2020-06-24 06:16:18 +07:00
Elena Sayapina
9c3912fe1f JBR-2475 Latency when accepting auto-completion
Revert "8223158: Docked MacBook cannot start any Java Swing applications Reviewed-by: prr, serb"

This reverts commit 7c870c0c from 11.0.7 merge
2020-06-23 12:38:23 +07:00
Alexey Ushakov
c1d644a004 JBR-1929 Improve rendering of San Francisco font of macOS Catalina
Reverting gamma correction because of rendering artifacts in the light theme

This reverts commit 5016db51
2020-06-19 17:43:09 +03:00
Dmitry Batrak
87ad6ac3a0 JBR-2478 java/awt/Modal/FileDialog/FileDialogNonModal7Test.java: DummyButton on Dialog did not gain focus when clicked
revert part of JBR-1271, that's related to 'old' file dialogs
2020-06-18 18:34:46 +03:00
Vitaly Provodin
f016970f5a JBR-2501 create jbr edition excluding any additional modules JFX and JCEF (fix misprint in module.info) 2020-06-18 08:47:25 +07:00
Vitaly Provodin
71dbebd5f5 JBR-2501 create jbr edition excluding any additional modules JFX and JCEF (fix misprint) 2020-06-18 06:45:33 +07:00
Anton Tarasov
ff2936c6fb [followup] JBR-2489 Git branch operations (switch to another branch, rebase) sometimes crash WebStorm 202.5428.27 2020-06-17 14:31:56 +03:00
Dmitry Batrak
8a789e04e9 JBR-2503 Prevent JVM stealing focus during startup on Linux 2020-06-17 12:43:19 +03:00
Vitaly Provodin
eaed7de6bb JBR-2501 create jbr edition excluding any additional modules JFX and JCEF 2020-06-17 09:30:51 +07:00
Jayathirth D V
803ee2f2b5 8241490: Add large text performance tests in RenderPerfTest 2020-06-17 09:30:02 +07:00
Alexey Ushakov
356121b18f 8230657: Create fine grained render perf test for metal pipeline
Converted gradle JUnit test to plain java for ant and gnumake

To run the tests:
cd src/demo/share/java2d/RenderPerfTest

ant run
or
java -jar dist/RenderPerfTest.jar
or
java -jar dist/RenderPerfTest.jar testWhiteTextBubblesGray
2020-06-17 09:30:02 +07:00
Alexey Ushakov
8bd8d2d132 8230657: Create fine grained render perf test for metal pipeline
To run the tests:
cd src/demo/share/java2d/RenderPerfTest

sh gradlew test -i
or
sh gradlew test --tests *testWiredBoxBubbles* -i
2020-06-17 09:30:02 +07:00
Denis Konoplev
9adf77a512 JBR-215: Remove SystemInfo 2020-06-16 15:45:29 +03:00
Dmitry Batrak
73b45fb899 JBR-2498 Fix unexpected window raising under Mutter WM 2020-06-16 13:18:15 +03:00
Dmitry Batrak
66381f0dec JBR-2499 Don't use CurrentTime in SetInputFocus requests to X server 2020-06-16 13:16:48 +03:00
Dmitry Batrak
87525d1d2a JBR-2497 Support _NET_WM_USER_TIME window property on Linux 2020-06-16 13:13:04 +03:00
Anton Tarasov
81d2156fb1 JBR-2489 Git branch operations (switch to another branch, rebase) sometimes crash WebStorm 202.5428.27 2020-06-15 19:29:06 +03:00
Alexey Ushakov
916e68b5b4 Added make target 2020-06-11 17:31:07 +03:00
Alexey Ushakov
5016db518a JBR-1929 Improve rendering of San Francisco font of macOS Catalina
Added gamma correction to match grayscale rendering with subpixel one
2020-06-11 17:28:26 +03:00
Erik Joelsson
9154a8faef JBR-2316 backport the fix for the AbsPathsInImage test from OpenJDK 15
8245401: AbsPathsInImage.java fails on Windows on jdwp.dll

Reviewed-by: mikael, ihse
2020-06-11 16:56:46 +07:00
Erik Joelsson
764ac0decb JBR-2316 backport the fix for the AbsPathsInImage test from OpenJDK 15
8244051: AbsPathsInImage.java still fails on Windows

Reviewed-by: ihse
2020-06-11 16:56:35 +07:00
Erik Joelsson
fe293f0126 JBR-2316 backport the fix for the AbsPathsInImage test from OpenJDK 15
8243510: AbsPathsInImage.java fails on Windows

Reviewed-by: ihse, tbell
2020-06-11 16:56:16 +07:00
Vitaly Provodin
2620c62848 JBR-2473 modify building scripts to add dcevm clauses, add git config to docker image 2020-06-11 14:15:44 +07:00
Vitaly Provodin
c0c0a96cf4 JBR-2473 add initial set of DCEVM patches 2020-06-11 14:14:00 +07:00
Alexey Ushakov
1af5dd4aae JBR-2463 Font rendering problem on macOS Mojave
Use adjusted advances for glyphs
2020-06-09 19:55:51 +03:00
Denis Konoplev
15c4ce1d3e JBR-2444: Turn on IM workaround by default 2020-06-09 16:41:05 +03:00
Nikita Gubarkov
be6895a20b JBR-410 New golden image for emoji test on Fedora 2020-06-02 20:11:28 +03:00
Mikhail Grishchenko
a367f18492 JBR-2259 [jcef] Fixed regression test
Changed EDT awaiting method
2020-06-02 21:13:18 +07:00
Mikhail Grishchenko
dc24658b31 JBR-2430 [jcef] Fixed regression test
Refactoring + changed EDT awaiting method
2020-06-02 16:52:52 +07:00
Vitaly Provodin
a80d45eb31 updated JTreg exclude list 2020-06-02 08:16:02 +07:00
Mikhail Grishchenko
404ff84565 JBR-2430 [jcef] Added Regression test
Checks that JS Query is handled in 2nd opened browser
2020-05-28 22:14:53 +07:00
Vyacheslav Moklev
2dea81a904 JBR-2442 fix memory leak of fileBuffer
fix was suggested by Nikita Gubarkov
2020-05-28 11:55:21 +07:00
Denis Konoplev
6974131eec IDEA-237231: Correct signarute mask 2020-05-27 19:20:43 +03:00
Denis Konoplev
33a8c95d39 IDEA-237231: Possible fix for pen interraction 2020-05-27 19:15:03 +03:00
Vitaly Provodin
5ef4cceb33 updated JTreg exclude list 2020-05-27 12:40:16 +07:00
Nikita Gubarkov
c64faba66e JBR-410 Skip emoji test if font is not available 2020-05-25 16:23:46 +03:00
Alexey Ushakov
c0fd2daf5c JBR-2419 Improve performance of CStrike.getNativeGlyphOutlineBounds
Fixed handling of null bounding box
2020-05-22 20:58:57 +03:00
Alexey Ushakov
2d164c9914 JBR-2417 Fonts with names started with dot does not work in IDEA launched from run configuration
Reverting our approach (commit 12a9361f) and replacing it with backport of OpenJDK fix JDK-8244621
2020-05-22 20:44:05 +03:00
Alexey Ushakov
9f91fe91f5 JBR-2419 Improve performance of CStrike.getNativeGlyphOutlineBounds
Do not pass the result via java object. Use more straight api.
2020-05-22 20:04:22 +03:00
Denis Konoplev
caf366f6f3 JBR-215: Separate LatinNonAlphaNumKeycodes option 2020-05-22 03:15:38 +03:00
Alexey Ushakov
12a9361f7c JBR-2417 Fonts with names started with dot does not work in IDEA launched from run configuration
Used cocoa api to create some .SFNS fonts
2020-05-21 20:22:40 +03:00
Alexey Ushakov
8904e07b7d Added build targets to CMake 2020-05-21 20:20:24 +03:00
Nikita Gubarkov
bf1b017af4 JBR-410 Linux compilation fix: get rid of loop initial declarations 2020-05-21 01:13:27 +03:00
Nikita Gubarkov
e67b5fb257 JBR-410 Linux x86 compilation fix: don't use FT_LONG_MIN 2020-05-20 20:25:01 +03:00
Nikita Gubarkov
7e7b5ccd13 JBR-410 Refactor 2020-05-20 18:32:03 +03:00
Nikita Gubarkov
28b0dbf18c JBR-410 Added emoji support for Linux 2020-05-20 18:32:03 +03:00
Phil Race
9de2d941ef JBR-410 Backport: fixed usage of uninitialized memory
8238942: Rendering artifacts with LCD text and fractional metrics

Reviewed-by: serb, jdv
2020-05-20 18:32:03 +03:00
Elena Sayapina
e9fa7a0882 JBR-2328 [followup] [TESTBUG] Regression test java/awt/keyboard/AllKeyCode/AllKeyCode.java is not correct
Try to increase the test stability during regular runs.
2020-05-20 12:51:24 +07:00
Denis Konoplev
4f60efebe2 JBR-215: Windows non-alphanumeric shortcuts 2020-05-19 17:02:38 +03:00
Vitaly Provodin
cfc3e87f2a updated JTreg exclude list 2020-05-13 16:41:35 +07:00
Alexey Ushakov
4c42f75021 JBR-2382 Provide detailed stack trace in crash dumps for unhandled ObjC exceptions
Generate jbr_err_pidXX.log file with detailed stack trace of the exception
2020-05-12 19:22:45 +03:00
Vitaly Provodin
79260bc482 JBR-2291 remove dubbled lines in release file 2020-05-10 18:31:00 +07:00
Vitaly Provodin
e03fb4aac0 JBR-2291 add vendor info into bundles 2020-05-08 16:39:27 +07:00
Vitaly Provodin
c5ec83e083 updated JTreg exclude list 2020-05-07 14:12:51 +07:00
Elena Sayapina
264802cf4b IDEA-165950 [TESTUPDATE] National keyboard layouts support
Update regression test after the following commits:

02fad83c: Remove public constants from KeyEvent
f4227faf: Impossible to assign cmd+ß shortcuts
2020-05-07 01:04:36 +07:00
Denis Konoplev
16ca839ed3 JBR-2347: Free memory on other exceptions, rethrow ThreadDead & log it 2020-05-06 20:34:28 +03:00
Denis Konoplev
afb3303db5 JBR-2347: Don't free memory when thread is dead 2020-05-06 15:17:45 +03:00
Denis Konoplev
9f77b65a52 Remove duplicate option from README 2020-04-30 15:42:01 +03:00
Elena Sayapina
08f9ba66f9 JBR-2340 Frequent IDEA 2020.2 crashes on macOS
Revert "8214578: [macos] Problem with backslashes on macOS/JIS keyboard: Java ignores system settings"
This reverts commit ecc31f2ca7.

Revert "8234786: Fix for JDK-8214578 breaks OS X 10.12 compatibility"
This reverts commit 41b4a291.
2020-04-30 14:51:43 +07:00
Vitaly Provodin
39c879f9ad JBR-2324 address new layout in mac jcef
remove Contents/Helpers from signing
2020-04-30 06:14:04 +07:00
Vitaly Provodin
aef29fa705 JBR-2320 update the patch excluding jfx module 2020-04-29 21:46:51 +07:00
Vitaly Provodin
ab073976c4 updated JTreg exclude list 2020-04-29 21:03:00 +07:00
Vitaly Provodin
2491078e1f JBR-2320 update the patch excluding jcef module 2020-04-29 21:02:27 +07:00
Vitaly Provodin
59bcae0bff updated JTreg exclude list 2020-04-29 21:02:27 +07:00
Artem Bochkarev
fc8d9c87d4 JBR-2253: fix compilation (under windows) 2020-04-29 14:48:18 +03:00
Artem Bochkarev
127a2deddf JBR-2253: unset LD_PRELOAD just after VM loaded
workaround for JBR-2253 Preload libjsig.so to fix JNA crashes
2020-04-28 22:42:23 +03:00
Vitaly Provodin
efc504f504 updated JTreg exclude list 2020-04-28 10:16:58 +07:00
Vitaly Provodin
25d3c699eb JBR-2324 address new layout in mac jcef 80.0.4+g74f7b0c+chromium-80.0.3987.122 2020-04-28 10:16:38 +07:00
Elena Sayapina
f4227faf12 JBR-2335 [forward port from jbr8 to jbr11] JBR-206 Mac OS X: Impossible to assign cmd+ß shortcuts
Forward port ddcb719a from jdk8u.
2020-04-25 12:40:49 +07:00
Anton Tarasov
a5adc725df JBR-2282 [jcef] update to JCEF/80.0.4+g74f7b0c+chromium-80.0.3987.122 2020-04-24 14:49:19 +03:00
Elena Sayapina
bfab6a9364 JBR-2328 [followup] [TESTBUG] Regression test java/awt/keyboard/AllKeyCode/AllKeyCode.java is not correct
Updated test comment.
2020-04-24 15:08:57 +07:00
Vitaly Provodin
38f396900c updated JTreg exclude list 2020-04-24 11:11:51 +07:00
Elena Sayapina
861f73c393 JBR-2328 [TESTBUG] Regression test java/awt/keyboard/AllKeyCode/AllKeyCode.java is not correct 2020-04-23 21:41:25 +07:00
Konstantin Aleev
561a7b8def fix memory leaks in AccessibleJTree 2020-04-23 16:38:17 +03:00
Vitaly Provodin
cf3a605a0e JBR-2320 add jdk.attach module into JBR 2020-04-23 06:28:58 +07:00
Prasanta Sadhukhan
7b9a7df27a 8236635: JTabbedPane preferred size calculation is wrong for SCROLL_TAB_LAYOUT
Reviewed-by: serb, pbansal
2020-04-22 21:29:07 +07:00
Prasanta Sadhukhan
eb40ba199b JBR-2207 TitledBorder leaks PropertyChangeListener
Backported:
8204963: javax.swing.border.TitledBorder has a memory leak
Reviewed-by: serb, kaddepalli
2020-04-21 15:18:46 +03:00
Anton Tarasov
f0385f01ec JBR-2305 jcef: jb/java/jcef/JCEFStartupTest.java throws java.lang.ExceptionInInitializerError 2020-04-18 16:01:56 +03:00
Anton Tarasov
ff7d7bd43c JBR-2306 jcef: jb/java/jcef/JCEFStartupTest.java unexpectedly exits with the exit code: 0 2020-04-18 14:32:41 +03:00
Alexey Ushakov
82f7e549ff Merge pull request #17 from bell-sw/update_11.0.7
jdk-11.0.7-ga update
2020-04-18 13:39:51 +03:00
andrew
f8cb5e054b Added tag jdk-11.0.7-ga for changeset 44ce940b344b 2020-04-17 14:49:28 +03:00
ihse
6ef9435c21 8237879: make 4.3 breaks build
Reviewed-by: erikj, tbell
2020-04-17 14:38:52 +03:00
mbalao
375a012a26 8226346: Build better binary builders
Reviewed-by: andrew
2020-04-17 14:38:51 +03:00
andrew
6511ecfac4 8220613: java/util/Arrays/TimSortStackSize2.java times out with fastdebug build
Reviewed-by: mbalao
2020-04-17 14:38:50 +03:00
andrew
723af168a0 8233383: Various minor fixes
Reviewed-by: mbalao
2020-04-17 14:38:48 +03:00
simonis
54565c619d 8223678: Add Visual Studio Code workspace generation support (for native code)
Reviewed-by: andrew, sgehwolf, clanger
2020-04-17 14:38:47 +03:00
clanger
8c42f06815 8189861: Refactor CacheFind
Reviewed-by: sgehwolf
2020-04-17 14:38:46 +03:00
rschmelter
7569fd0bcd 8222264: Windows incremental build is broken with JDK-8217728
Reviewed-by: erikj, clanger
2020-04-17 14:38:45 +03:00
erikj
e10b2a467e 8217728: Speed up incremental rerun of "make hotspot"
Reviewed-by: tbell
2020-04-17 14:38:44 +03:00
simonis
6f5abe0185 8210459: Add support for generating compile_commands.json
Reviewed-by: andrew
2020-04-17 14:38:43 +03:00
erikj
80333614e2 8221851: Use of THIS_FILE in hotspot invalidates precompiled header on Linux/GCC
Reviewed-by: tbell, ysuenaga, andrew
2020-04-17 14:38:42 +03:00
simonis
a8dd501fb2 8214534: Setting of THIS_FILE in the build is broken
Reviewed-by: erikj, ihse
2020-04-17 14:38:41 +03:00
ysuenaga
68231ced3f 8204551: Event descriptions are truncated in logs
Reviewed-by: coleenp, andrew
2020-04-17 14:38:40 +03:00
erikj
a1729c30d9 8160926: FLAGS_COMPILER_CHECK_ARGUMENTS doesn't handle cross-compilation
Reviewed-by: ihse, andrew
2020-04-17 14:38:39 +03:00
erikj
dde28c2dad 8238960: linux-i586 builds are inconsistent as the newly build jdk is not able to reserve enough space for object heap
Reviewed-by: ihse, tbell, ahgross, jwilhelm
2020-04-17 14:38:38 +03:00
igerasim
0dd7e6f7a8 8236201: Better Scanner conversions
Reviewed-by: ahgross, rhalade, rriggs, skoivu, smarks, andrew
2020-04-17 14:38:37 +03:00
xuelei
0ee4046adb 8235691: Enhance TLS connectivity
Reviewed-by: jnimeh, rhalade, ahgross
2020-04-17 14:38:36 +03:00
avoitylov
efb4f9926a 8235274: Enhance typing of methods
Reviewed-by: andrew
2020-04-17 14:38:35 +03:00
robm
89bac530b9 8234841: Enhance buffering of byte buffers
Reviewed-by: alanb, ahgross, rhalade, psandoz
2020-04-17 14:38:34 +03:00
bpb
3b2d324d98 8219597: (bf) Heap buffer state changes could provoke unexpected exceptions
Reviewed-by: alanb, rriggs
2020-04-17 14:38:33 +03:00
michaelm
0f41a5b833 8234825: Better Headings for HTTP Servers
Reviewed-by: chegar, dfuchs, igerasim
2020-04-17 14:38:32 +03:00
xuelei
c2835d836c 8234408: Improve TLS session handling
Reviewed-by: ascarpino, jjiang, ahgross, ssahoo, mullan, andrew
2020-04-17 14:38:31 +03:00
weijun
caf1c6347a 8234027: Better JCEKS key support
Reviewed-by: ahgross, mullan, rriggs, rhalade
2020-04-17 14:38:30 +03:00
erikj
b0443eb9c0 8233410: Better Build Scripting
Reviewed-by: tbell, jwilhelm, andrew
2020-04-17 14:38:29 +03:00
alitvinov
058208e16d 8233250: Better X11 rendering
Reviewed-by: prr, rhalade, mschoene, serb
2020-04-17 14:38:28 +03:00
jnimeh
b6f3bd8c8c 8232581: Improve TLS verification
Reviewed-by: xuelei, rhalade, mschoene
2020-04-17 14:38:27 +03:00
xuelei
acf804d20a 8232424: More constrained algorithms
Reviewed-by: jnimeh, rhalade, ahgross
2020-04-17 14:38:26 +03:00
igerasim
718e099e9d 8231785: Improved socket permissions
Reviewed-by: ahgross, chegar, mullan, rhalade
2020-04-17 14:38:25 +03:00
mullan
4af7092f83 8231415: Better signatures in XML
Reviewed-by: weijun, mschoene, rhalade
2020-04-17 14:38:24 +03:00
bae
2ff44a1671 8229733: TLS message handling improvements
Summary: Includes changes to TransportContext from JDK-8211018
Reviewed-by: andrew
2020-04-17 14:38:22 +03:00
amenkov
2990aa1964 8227542: Manifest improved jar headers
Reviewed-by: sspitsyn, mschoene
2020-04-17 14:38:21 +03:00
robm
add8cde7e9 8227467: Better class method invocations
Reviewed-by: thartmann, dholmes, ahgross, andrew
2020-04-17 14:38:20 +03:00
bpb
b59e5fc306 8225603: Enhancement for big integers
Reviewed-by: darcy, ahgross, rhalade
2020-04-17 14:38:19 +03:00
smarks
59c0a7b335 8224549: Less Blocking Array Queues
Reviewed-by: bchristi, rhalade, rriggs, mschoene, robm
2020-04-17 14:38:18 +03:00
bchristi
a2cfc31f4a 8224541: Better mapping of serial ENUMs
Reviewed-by: mschoene, rhalade, robm, rriggs, smarks, andrew
2020-04-17 14:38:17 +03:00
hannesw
0061c1a8b5 8223904: Improve Nashorn matching
Reviewed-by: jlaskey, sundar, mschoene, rhalade
2020-04-17 14:38:16 +03:00
hannesw
33addafe05 8223898: Forward references to Nashorn
Reviewed-by: sundar, mschoene, rhalade
2020-04-17 14:38:15 +03:00
aph
b696b0ffca 8241296: Segfault in JNIHandleBlock::oops_do()
Reviewed-by: stefank, shade
2020-04-17 14:38:14 +03:00
robm
2d9d8009c4 8223727: com/sun/jndi/ldap/privconn/RunTest.java failed due to hang in LdapRequest.getReplyBer
Reviewed-by: prappo
2020-04-17 14:38:13 +03:00
ccheung
11f4f1f151 8235563: [TESTBUG] appcds/CommandLineFlagComboNegative.java does not handle archive mapping failure
Summary: Use the assertAbnormalExit method of the CDSTestUtils.Result class to handle archive mapping failure.
Reviewed-by: iklam
2020-04-17 14:38:12 +03:00
jjiang
e943bb77d0 8231810: javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java fails intermittently with "java.lang.Exception: Unexpected EOF"
Reviewed-by: xuelei
2020-04-17 14:38:11 +03:00
ssahoo
fb9bc7adfb 8234723: javax/net/ssl/TLS tests support TLSv1.3
Summary: Missing TLSv1.3 test cases
Reviewed-by: xuelei
2020-04-17 14:38:10 +03:00
jjiang
560520877f 8234724: javax/net/ssl/templates/SSLSocketSSLEngineTemplate.java supports TLSv1.3
Reviewed-by: xuelei
2020-04-17 14:38:09 +03:00
dmarkov
d805574217 8232880: Update test documentation with additional settings for client UI tooltip tests
Reviewed-by: aivanov, serb, ihse
2020-04-17 14:38:08 +03:00
mbaesken
62490c7387 8240724: [test] jdk11 downport of 8224475 misses binary file test/jdk/javax/swing/JTextPane/arrow.png
Reviewed-by: sgehwolf
2020-04-17 14:38:07 +03:00
mdoerr
2008716692 8239856: [ntintel] asserts about copying unaligned array element
Reviewed-by: stuefe, sspitsyn
2020-04-17 14:38:06 +03:00
prr
ffb415143a 8233649: Update ProblemList.txt to exclude failing headful tests on macos
Reviewed-by: serb
2020-04-17 14:38:05 +03:00
chagedorn
4606544b93 8238438: SuperWord::co_locate_pack picks memory state of first instead of last load
Summary: Fix selection of first and last memory state in SuperWord::co_locate_pack
Reviewed-by: thartmann, kvn
2020-04-17 14:38:04 +03:00
lancea
2f9060fff7 8229888: (zipfs) Updating an existing zip file does not preserve original permissions
Reviewed-by: clanger, alanb, bpb
2020-04-17 14:38:03 +03:00
coffeys
47a59d4cf7 8223260: NamingManager should cache InitialContextFactory
Reviewed-by: alanb, plevart, dfuchs
2020-04-17 14:38:02 +03:00
serb
d620f89726 8230597: Update GIFlib library to the 5.2.1
Reviewed-by: prr, psadhukhan, jdv
2020-04-17 14:38:01 +03:00
arapte
0d5f4a45b6 4949105: Access Bridge lacks html tags parsing
Reviewed-by: serb, prr, pbansal
2020-04-17 14:38:00 +03:00
pbansal
33e207b792 8224475: JTextPane does not show images in HTML rendering
Reviewed-by: serb, psadhukhan
2020-04-17 14:37:59 +03:00
alitvinov
de3d9de26f 8230926: [macosx] Two apostrophes are entered instead of one with "U.S. International - PC" layout
Reviewed-by: serb, dmarkov
2020-04-17 14:37:58 +03:00
rhalade
cea6bd5d0b 8225130: Add exception for expiring Comodo roots to VerifyCACerts test
Reviewed-by: weijun
2020-04-17 14:37:57 +03:00
michaelm
5cebbb80d6 8234824: java/nio/channels/SocketChannel/AdaptSocket.java fails on Windows 10
Reviewed-by: alanb
2020-04-17 14:37:56 +03:00
prr
a5c225b3d4 8234769: Duplicate attribution in freetype.md
Reviewed-by: psadhukhan
2020-04-17 14:37:55 +03:00
prr
9075bfc468 8227324: Upgrade to freetype 2.10.1
Reviewed-by: serb, jdv
2020-04-17 14:37:54 +03:00
joehw
5aa2bdef67 8233548: Update CUP to v0.11b
Reviewed-by: lancea
2020-04-17 14:37:52 +03:00
serb
a0cfda673b 8232200: [macos 10.15] Windows in fullscreen tests jumps around the screen
Reviewed-by: prr
2020-04-17 14:37:51 +03:00
chagedorn
5a37107d90 8229994: assert(false) failed: Bad graph detected in get_early_ctrl_for_expensive
Summary: Fixes wrong idom information set in loop peeling when a loop strip mined loop is involved.
Reviewed-by: vlivanov, thartmann
2020-04-17 14:37:50 +03:00
stuefe
e86c694176 8220786: Create new switch to redirect error reporting output to stdout or stderr
Reviewed-by: dholmes, goetz
2020-04-17 14:37:49 +03:00
mbaesken
5eb55ccb7d 8201349: build broken when configured with --with-zlib=bundled on gcc 7.3
Reviewed-by: clanger, simonis
2020-04-17 14:37:48 +03:00
dfuchs
3be33c24eb 8193596: java/net/DatagramPacket/ReuseBuf.java failed due to timeout
Summary: The test is changed to bind to InetAddress.getLocalHost() instead of binding to the wildcard.
Reviewed-by: alanb, dfuchs, msheppar
Contributed-by: Patrick Concannon <catrick.concannon@oracle.com>
2020-04-17 14:37:47 +03:00
pconcannon
5e6ea5b7d3 8233018: Add a new test to verify that DatagramSocket is not interruptible
Summary: Test added to check the interruptability of DatagramSocket, MulticastSocket and DatagramSocketAdaptor.
Reviewed-by: chegar, dfuchs
2020-04-17 14:37:46 +03:00
rschuenemann
b170657293 8238534: Deep sign macOS bundles before bundle archive is being created
Reviewed-by: erikj, clanger
2020-04-17 14:37:45 +03:00
clanger
46c2608228 8239466: Loss of precision in counter decay calculation in 11u backport of JDK-8237375
Reviewed-by: mdoerr, simonis
2020-04-17 14:37:44 +03:00
chagedorn
62b96e3966 8238811: C2: assert(i >= req() || i == 0 || is_Region() || is_Phi()) with -XX:+VerifyGraphEdges
Summary: Fix -XX:+VerifyGraphEdges by additionally handling ArrayCopyNodes and UnlockNodes and add some basic flag testing.
Reviewed-by: roland, neliasso
2020-04-17 14:37:43 +03:00
rhalade
b2680a62ad 8225128: Add exception for expiring DocuSign root to VerifyCACerts test
Reviewed-by: clanger
2020-04-17 14:37:42 +03:00
xuelei
bae72e3a96 8221270: Duplicated synchronized keywords in SSLSocketImpl
Reviewed-by: mullan
2020-04-17 14:37:41 +03:00
chagedorn
bf43810d56 8237945: CTW: C2 compilation fails with assert(just_allocated_object(alloc_ctl) == ptr) failed: most recent allo
Summary: Removing too strong assertion about array allocation in LibraryCallKit::tightly_coupled_allocation().
Reviewed-by: thartmann, neliasso
2020-04-17 14:37:40 +03:00
rrich
25a8702317 8239005: [TESTBUG] test/hotspot/jtreg/runtime/StackGuardPages/TestStackGuardPages.java: exeinvoke.c: must initialize static state before calling do_overflow()
Reviewed-by: dholmes, clanger
2020-04-17 14:37:39 +03:00
igerasim
5fe3b55ef8 8163251: Hard coded loop limit prevents reading of smart card data greater than 8k
Reviewed-by: valeriep, rriggs
2020-04-17 14:37:38 +03:00
thartmann
2447ee6729 8230390: Problemlist SA tests with AOT
Summary: Putting tests on the problem list.
Reviewed-by: roland
2020-04-17 14:37:37 +03:00
arapte
97901fa909 8226892: ActionListeners on JRadioButtons don't get notified when selection is changed with arrow keys
Reviewed-by: serb, psadhukhan
2020-04-17 14:37:36 +03:00
gadams
245ea71185 8203364: Some serviceability/sa/ tests intermittently fail with java.io.IOException: LingeredApp terminated with non-zero exit code 3
Reviewed-by: cjplummer, jcbeyler
2020-04-17 14:37:35 +03:00
phh
c80dff1f12 8231387: java.security.Provider.getService returns random result due to race condition with mutating methods in the same class
Summary: Synchronize access to legacyMap in Provider.getService.
Reviewed-by: valeriep
Contributed-by: Tianmin Shi <tianshi@amazon.com>
2020-04-17 14:37:34 +03:00
valeriep
48fc7bfe4c 8228613: java.security.Provider#getServices order is no longer deterministic
Summary: Changed to use SunEntries.DEF_SECURE_RANDOM_ALGO instead of relying on ordering of SecureRandom services
Reviewed-by: weijun
2020-04-17 14:37:33 +03:00
xuelei
5569f3aeb6 4919790: Errors in alert ssl message does not reflect the actual certificate status
Reviewed-by: mullan
2020-04-17 14:37:32 +03:00
rraghavan
cc4ac7ee85 8225567: Wrong file headers with 8202414 fix changeset
Summary: Corrected source file headers
Reviewed-by: thartmann
2020-04-17 14:37:31 +03:00
mbaesken
0909fce097 8234525: enable link-time section-gc for linux s390x to remove unused code
Reviewed-by: erikj, mdoerr
2020-04-17 14:37:30 +03:00
dtitov
c38ea39bbe 8163083: SocketListeningConnector does not allow invocations with port 0
Reviewed-by: sspitsyn, amenkov, gadams, jcbeyler
2020-04-17 14:37:29 +03:00
mdoerr
81883294d8 8237375: SimpleThresholdPolicy misses CounterDecay timestamp initialization
Reviewed-by: simonis, dholmes
2020-04-17 14:37:27 +03:00
thartmann
fa8d9029fe 8226381: ProblemList java/lang/reflect/PublicMethods/PublicMethodsTest.java
Summary: Put test on AOT ProblemList.
Reviewed-by: iignatyev
2020-04-17 14:37:26 +03:00
mikael
a4bb2f47aa 8225305: ProblemList java/lang/invoke/VarHandles tests
Reviewed-by: kvn, iignatyev, mchung, alanb
2020-04-17 14:37:25 +03:00
xuelei
a9b9328252 8218889: Improperly use of the Optional API
Reviewed-by: jnimeh, wetmore
2020-04-17 14:37:24 +03:00
gadams
8d3941cbcb 8169718: nsk/jdb/locals/locals002: ERROR: Cannot find boolVar with expected value: false
Reviewed-by: cjplummer, amenkov
2020-04-17 14:37:23 +03:00
mhalder
96ac35d699 8207938: At step6,Click Add button,case failed automatically.
Reviewed-by: kaddepalli, psadhukhan
2020-04-17 14:37:22 +03:00
naoto
698ab6fe15 8225182: JNI exception pending in DestroyXIMCallback of awt_InputMethod.c:1327
Reviewed-by: serb
2020-04-17 14:37:21 +03:00
chegar
60fbf81d2b 8218662: Allow 204 responses with Content-Length:0
Reviewed-by: michaelm
2020-04-17 14:37:20 +03:00
shade
17346b61bb 8238591: CTW: Split applications/ctw/modules/jdk_localedata.java
Reviewed-by: iignatyev
2020-04-17 14:37:19 +03:00
shade
72434a30ed 8238247: CTW runner should sweep nmethods more aggressively
Reviewed-by: adinn, simonis, iignatyev
2020-04-17 14:37:17 +03:00
shade
98c20f5872 8238366: CTW runner closes standard output on exit
Reviewed-by: adinn, iignatyev
2020-04-17 14:37:16 +03:00
dbuck
f79d1b57f0 8238596: AVX enabled by default for Skylake even when unsupported
Summary: Only default to UseAVX=2 when support is detected
Reviewed-by: shade, vlivanov
2020-04-17 14:37:15 +03:00
erikj
9159f89dfa 8213906: Update arm devkits with libXrandr headers
Reviewed-by: tbell, prr
2020-04-17 14:37:14 +03:00
mgronlun
97de942a66 8230400: Missing constant pool entry for a method in stacktrace
Reviewed-by: egahlin
2020-04-17 14:37:13 +03:00
mbaesken
213614590f 8234501: remove obsolete NET_ReadV
Reviewed-by: alanb, vtewari
2020-04-17 14:37:12 +03:00
bpb
40d00cb735 8218882: NET_Writev is declared, NET_WriteV is defined
Reviewed-by: alanb, chegar
2020-04-17 14:37:11 +03:00
mbaesken
fd3a23d87d 8235671: enhance print_rlimit_info in os_posix
Reviewed-by: clanger, mdoerr
2020-04-17 14:37:10 +03:00
erikj
3585476b88 8238225: Issues reported after replacing symlink at Contents/MacOS/libjli.dylib with binary
Reviewed-by: clanger, alanb, ihse
2020-04-17 14:37:09 +03:00
clanger
bb0883fc21 8236488: Support for configure option --with-native-debug-symbols=internal is impossible on Windows
Reviewed-by: erikj
2020-04-17 14:37:08 +03:00
zgu
92362fa6b9 8216472: (se) Stack overflow during selection operation leads to crash (win)
Reviewed-by: alanb
Contributed-by: akashche@redhat.com
2020-04-17 14:37:07 +03:00
ceisserer
74e3269b24 8235904: Infinite loop when rendering huge lines
Reviewed-by: prr, kizune
2020-04-17 14:37:06 +03:00
redestad
91050d029e 8237508: Simplify JarFile.isInitializing
Reviewed-by: dfuchs, coffeys, lancea
2020-04-17 14:37:05 +03:00
coffeys
3635eebb17 8234466: Class loading deadlock involving X509Factory#commitEvent()
Reviewed-by: alanb, chegar, dfuchs
2020-04-17 14:37:04 +03:00
stuefe
1ea18f7c0f 8233019: java.lang.Class.isPrimitive() (C1) returns wrong result if Klass* is aligned to 32bit
Reviewed-by: mdoerr, dlong, aph
2020-04-17 14:37:03 +03:00
aefimov
2a0a212f9a 8232713: Update BCEL version to 6.3.1 in license file
Reviewed-by: joehw
2020-04-17 14:37:02 +03:00
mbalao
3904664dce 8237600: Test SunJSSEFIPSInit fails on Ubuntu
Reviewed-by: shade
2020-04-17 14:37:00 +03:00
iklam
3d730556e2 8210523: runtime/appcds/cacheObject/DifferentHeapSizes.java crash
Reviewed-by: jiangli, ccheung
2020-04-17 14:36:59 +03:00
mbaesken
009810646c 8237819: s390x - remove unused pd_zero_to_words_large
Reviewed-by: clanger, mdoerr
2020-04-17 14:36:58 +03:00
mbaesken
dc255c55b4 8236709: struct SwitchRange in HS violates C++ One Definition Rule
Reviewed-by: dholmes, kbarrett
2020-04-17 14:36:57 +03:00
roland
dd6f224327 8209686: cleanup arguments to PhaseIdealLoop() constructor
Reviewed-by: thartmann, kvn, pliden
2020-04-17 14:36:56 +03:00
weijun
3722df0853 8238502: sunmscapi.dll causing EXCEPTION_ACCESS_VIOLATION
Reviewed-by: wetmore, coffeys, mullan
2020-04-17 14:36:55 +03:00
mbaesken
6a6b32f053 8237869: exclude jtreg test security/infra/java/security/cert/CertPathValidator/certification/LuxTrustCA.java because of instabilities
Reviewed-by: clanger, mullan
2020-04-17 14:36:54 +03:00
gadams
86ca482b0b 8222741: jdi/EventQueue/remove/remove004 fails due to VMDisconnectedException
Reviewed-by: cjplummer, jcbeyler
2020-04-17 14:36:53 +03:00
ngasson
42be50924e 8220451: jdi/EventQueue/remove/remove004 failed due to "ERROR: thread2 is not alive"
8220456: jdi/EventQueue/remove_l/remove_l004 failed due to "TIMEOUT while waiting for event"
Reviewed-by: sspitsyn, dcubed, gadams
2020-04-17 14:36:52 +03:00
tnakamura
e04fef9581 8234386: [macos] NPE was thrown at expanding Choice from maximized frame
Reviewed-by: serb
2020-04-17 14:36:51 +03:00
sviswanathan
f60adac49c 8234610: MaxVectorSize set wrongly when UseAVX=3 is specified after JDK-8221092
Reviewed-by: kvn, vlivanov
2020-04-17 14:36:50 +03:00
roland
04f5ec40c3 8214344: C2: assert(con.basic_type() != T_ILLEGAL) failed: elembt=byte; loadbt=void; unsigned=0
Reviewed-by: kvn, thartmann
2020-04-17 14:36:49 +03:00
hannesw
edf377c204 8200432: javadoc fails with ClassCastException on {@link byte[]}
Reviewed-by: jjg, sundar
2020-04-17 14:36:48 +03:00
pchilanomate
22d64101b6 8227528: TestAbortVMOnSafepointTimeout.java failed due to "RuntimeException: 'Safepoint sync time longer than' missing from stdout/stderr"
Summary: Biased locking was disable for this test.
Reviewed-by: dcubed, mdoerr, dholmes
2020-04-17 14:36:47 +03:00
weijun
7fe46f7666 8228969: 2019-09-28 public suffix list update
Reviewed-by: mullan
2020-04-17 14:36:46 +03:00
ccheung
353624f1c2 8227646: [TESTBUG] appcds/SharedArchiveConsistency timed out
Summary: Remove the FileChannel.force() calls.
Reviewed-by: dcubed, iklam
2020-04-17 14:36:45 +03:00
ccheung
2a5f45c567 8226406: JVM fails to detect mismatched or corrupt CDS archive
Summary: Check important archive header fields such as _jvm_ident before processing other fields.
Reviewed-by: iklam, jiangli
2020-04-17 14:36:44 +03:00
andrew
1cb3bc25c6 8224851: AArch64: fix warnings and errors with Clang and GCC 8.3
Reviewed-by: shade, aph, sgehwolf
2020-04-17 14:36:43 +03:00
valeriep
5d20ec30d7 7092821: java.security.Provider.getService() is synchronized and became scalability bottleneck
Summary: Changed Provider class to use ConcurrentHashMap and default providers to use putService()
Reviewed-by: weijun, mullan
2020-04-17 14:36:42 +03:00
iklam
9773c4b786 8210289: ArchivedKlassSubGraphInfoRecord is incomplete
Reviewed-by: jiangli, ccheung
2020-04-17 14:36:40 +03:00
iklam
a25a446f84 8208658: Make CDS archived heap regions usable even if compressed oop encoding has changed
Summary: Relocate and patch archive regions if necessary
Reviewed-by: jiangli, tschatzl
2020-04-17 14:36:39 +03:00
hseigel
94ff4c8db5 8203911: Test runtime/modules/getModuleJNI/GetModule fails with -Xcheck:jni
Summary: Remove unneeded validate_class() check from  checked_jni_GetModule().
Reviewed-by: dholmes, coleenp
2020-04-17 14:36:38 +03:00
rriggs
60dcdc3edb 8237368: Problem with NullPointerException in RMI TCPEndpoint.read
Reviewed-by: mchung, alanb
2020-04-17 14:36:37 +03:00
mgronlun
fabb0ef729 8231081: TestMetadataRetention fails due to missing symbol id
Reviewed-by: egahlin
2020-04-17 14:36:36 +03:00
mgronlun
1afb13bb99 8231025: Incorrect method tag offset for big endian platform
Reviewed-by: egahlin
2020-04-17 14:36:35 +03:00
mgronlun
a27e1b1ee6 8225797: OldObjectSample event creates unexpected amount of checkpoint data
Reviewed-by: egahlin
2020-04-17 14:36:34 +03:00
lancea
338c006e28 7143743: Potential memory leak with zip provider
Reviewed-by: lancea, clanger, alanb
Contributed-by: Jaikiran Pai <jai.forums2013@gmail.com>
2020-04-17 14:36:33 +03:00
sviswanathan
4f15cc2fa6 8235288: AVX 512 instructions inadvertently used on Xeon for small vector width operations
Reviewed-by: kvn, vlivanov
2020-04-17 14:36:32 +03:00
valeriep
405eec558f 8232950: SUNPKCS11 Provider incorrectly check key length for PSS Signatures.
Summary: Fixed to treat the queried key size values as bits instead of bytes
Reviewed-by: ascarpino, xuelei
2020-04-17 14:36:31 +03:00
mbaesken
e73b9b0174 8235489: handle return values of sscanf calls in hotspot
Reviewed-by: clanger, kbarrett
2020-04-17 14:36:30 +03:00
thartmann
14a6a74c55 8223769: Assert triggers with -XX:+StressReflectiveCode
Summary: Fixed too strong assert.
Reviewed-by: kvn, thartmann
Contributed-by: Christian Hagedorn <christian.hagedorn@oracle.com>
2020-04-17 14:36:29 +03:00
sviswanathan
622562faa3 8235510: java.util.zip.CRC32 performance drop after 8200067
Summary: backout 8200067 optimization
Reviewed-by: kvn
2020-04-17 14:36:28 +03:00
chagedorn
a27bb38f53 8236140: assert(!VerifyHashTableKeys || _hash_lock == 0) failed: remove node from hash table before modifying it
Summary: Add missing rehashing for modified node in InitializeNode::complete_stores().
Reviewed-by: neliasso, thartmann
2020-04-17 14:36:27 +03:00
kbarrett
c94c48de71 8189633: Missing -Xcheck:jni checking for DeleteWeakGlobalRef
Summary: Added validity check on the handle before deleting it.
Reviewed-by: dholmes, dcubed
2020-04-17 14:36:26 +03:00
pbansal
1ddd82e7ae 8235744: PIT: test/jdk/javax/swing/text/html/TestJLabelWithHTMLText.java times out in linux-x64
Reviewed-by: psadhukhan, prr
2020-04-17 14:36:25 +03:00
pbansal
13eb920830 8230235: Rendering HTML with empty img attribute and documentBaseKey cause Exception
Reviewed-by: serb, aivanov
2020-04-17 14:36:24 +03:00
mli
55d001ae88 8209824: Improve the code coverage for ThreadLocal
Reviewed-by: dholmes, alanb
2020-04-17 14:36:23 +03:00
rriggs
c6a2df3514 8224905: java/lang/ProcessBuilder/Basic.java#id1 failed with stream closed
Reviewed-by: lancea, bpb, naoto
2020-04-17 14:36:22 +03:00
mchung
c690686d1d 8222448: java/lang/reflect/PublicMethods/PublicMethodsTest.java times out
Summary: Set empty class path for compilation to avoid unnecessary opening/scanning of JAR files
Reviewed-by: alanb, dholmes
2020-04-17 14:36:21 +03:00
sundar
7c9a9f0c42 8216535: tools/jimage/JImageExtractTest.java timed out
Reviewed-by: jlaskey
2020-04-17 14:36:20 +03:00
amlu
e8ec00f9b4 8230004: jdk/internal/jimage/JImageOpenTest.java runs no test
Reviewed-by: alanb
2020-04-17 14:36:19 +03:00
prr
226b019ca3 8232154: Update Mesa 3-D Headers to version 19.2.1
Reviewed-by: serb, kcr
2020-04-17 14:36:18 +03:00
smonteith
5697bbd861 8224187: Refactor arraycopy_prologue to allow ZGC read barriers on arraycopy
Reviewed-by: eosterlund
2020-04-17 14:36:17 +03:00
dtitov
d78caa00d9 8236873: Worker has a deadlock bug
Reviewed-by: dfuchs, dholmes, sspitsyn
2020-04-17 14:36:16 +03:00
clanger
0fa3015ff5 8236500: Windows ucrt.dll should be looked up in versioned WINSDK subdirectory
Reviewed-by: mdoerr
2020-04-17 14:36:15 +03:00
clanger
0b6789c231 8232370: Refactor some com.sun.jdi tests to enable IDE integration
Reviewed-by: amenkov, cjplummer, sspitsyn
2020-04-17 14:36:14 +03:00
jvernee
6d44395f78 8232167: Visual Studio install found through --with-tools-dir value is discarded
Reviewed-by: erikj, ihse
2020-04-17 14:36:13 +03:00
vagarwal
4f2b1cc1b0 8237540: Missing files in backport of JDK-8210910
Summary: Add missing graphic files
Reviewed-by: clanger
2020-04-17 14:36:11 +03:00
akolarkunnu
a7fd30518f 8237541: Missing files in backport of JDK-8236528
Summary: Add missing graphic files
Reviewed-by: clanger
2020-04-17 14:36:10 +03:00
chagedorn
32b14163ec 8233032: assert(in_bb(n)) failed: must be
Summary: Find first and last memory state of a load pack without relying on bb indices.
Reviewed-by: roland, kvn, thartmann
Contributed-by: Roland Westrelin <rwestrel@redhat.com>, Christian Hagedorn <christian.hagedorn@oracle.com>
2020-04-17 14:36:09 +03:00
thartmann
f25c10dcc6 8233656: assert(d->is_CFG() && n->is_CFG()) failed: must have CFG nodes
Summary: Explicitly handle ProjNodes with TOP input.
Reviewed-by: kvn, vlivanov
2020-04-17 14:36:08 +03:00
igerasim
2156f7d402 8234423: Modifying ArrayList.subList().subList() resets modCount of subList
Reviewed-by: rriggs
2020-04-17 14:36:07 +03:00
serb
957aea8d3e 8233657: Intermittent NPE in Component.validate()
Reviewed-by: prr
2020-04-17 14:36:06 +03:00
coleenp
bd6ce25302 8220688: [TESTBUG] runtime/NMT/MallocStressTest.java timed out
Summary: reduce number of threads and iterate rather than sleep.
Reviewed-by: zgu, dholmes
2020-04-17 14:36:05 +03:00
hseigel
f2cf0fd440 8214840: runtime/NMT/MallocStressTest.java timed out
Summary: Add volatile to declaration of static field shared by multiple threads
Reviewed-by: dcubed, dholmes, coleenp
2020-04-17 14:36:04 +03:00
zgu
a08b065749 8214124: [TESTBUG] Bugs in runtime/NMT/MallocStressTest.java
Summary: Fix possible negative size and index that can cause the test to fail
Reviewed-by: stuefe, shade
2020-04-17 14:36:03 +03:00
mdoerr
a297314933 8230459: Test failed to resume JVMCI CompilerThread
Reviewed-by: dholmes, kvn
2020-04-17 14:36:02 +03:00
mbalao
dcbbe655f5 8005819: Support cross-realm MSSFU
Reviewed-by: weijun
2020-04-17 14:36:01 +03:00
jnimeh
ab2fd95872 8236039: JSSE Client does not accept status_request extension in CertificateRequest messages for TLS 1.3
Reviewed-by: xuelei, clanger
2020-04-17 14:36:00 +03:00
prr
5f8f31cf0c 8227662: freetype seeks to index at the end of the font data
Reviewed-by: serb, psadhukhan
2020-04-17 14:35:59 +03:00
mdoerr
cf1112a1cb 8236179: C1 register allocation error with T_ADDRESS
Reviewed-by: rkennke, vlivanov, roland, mdoerr
Contributed-by: Aditya Mandaleeka <adityam@microsoft.com>
2020-04-17 14:35:58 +03:00
shade
b40236cf49 8237217: Incorrect G1StringDedupEntry type used in StringDedupTable destructor
Reviewed-by: kbarrett, zgu
2020-04-17 14:35:57 +03:00
egahlin
3db26f1f66 8219205: JFR file without license header
Reviewed-by: mgronlun
2020-04-17 14:35:56 +03:00
dbuck
728400c64e 8230611: infinite loop in LogOutputList::wait_until_no_readers()
Summary: Add copy constructor and copy assignment operator to ensure reader count remains accurate
Reviewed-by: kbarrett, dholmes
2020-04-17 14:35:55 +03:00
thartmann
20d7648a39 8233491: Crash in AdapterHandlerLibrary::get_adapter with CDS due to code cache exhaustion
Summary: Added null check.
Reviewed-by: kvn, iklam
2020-04-17 14:35:54 +03:00
thartmann
ef40e4826d 8233529: loopTransform.cpp:2984: Error: assert(p_f->Opcode() == Op_IfFalse) failed
Summary: Strengthened asserts in locate_pre_from_main() and added a check for is_main_no_pre_loop().
Reviewed-by: kvn, vlivanov
2020-04-17 14:35:53 +03:00
roland
c335c741c4 8234350: assert(mode == ControlAroundStripMined && (use == sfpt || !use->is_reachable_from_root())) failed: missed a node
Reviewed-by: thartmann, mdoerr
2020-04-17 14:35:52 +03:00
xliu
8e3868bb4d 8235383: C1 compilation fails with -XX:+PrintIRDuringConstruction -XX:+Verbose
Summary: Added check for printable bci.
Reviewed-by: thartmann
2020-04-17 14:35:51 +03:00
thartmann
45ed9508af 8234617: C1: Incorrect result of field load due to missing narrowing conversion
Summary: Emit an explicit conversion to get the correct field value after the write.
Reviewed-by: vlivanov, mdoerr
2020-04-17 14:35:50 +03:00
vlivanov
932e46f1bd 8231430: C2: Memory stomp in max_array_length() for T_ILLEGAL type
Reviewed-by: kvn, thartmann
2020-04-17 14:35:49 +03:00
mbaesken
96ce5882f4 8231753: use more Posix functionality in aix os::print_os_info
Reviewed-by: clanger, dholmes
2020-04-17 14:35:48 +03:00
mbaesken
999e4853c4 8232060: add some initializations using sigemptyset in os_aix.cpp
Reviewed-by: clanger, stuefe
2020-04-17 14:35:47 +03:00
dtitov
fc1c7db7bd 8185005: Improve performance of ThreadMXBean.getThreadInfo(long ids[], int maxDepth)
Reviewed-by: sspitsyn, dholmes, dcubed, rehn
2020-04-17 14:35:46 +03:00
redestad
0157853f41 8232207: Linux os::available_memory re-reads cgroup configuration on every invocation
Reviewed-by: bobv, sgehwolf
2020-04-17 14:35:45 +03:00
goetz
ef3e5297c6 8235998: [c2] Memory leaks during tracing after '8224193: stringStream should not use Resource Area'.
Reviewed-by: dholmes, kvn
2020-04-17 14:35:43 +03:00
pliden
96c4302c11 8217717: ZGC: Broken oop map in C1 load barrier stub
Reviewed-by: eosterlund, neliasso
Contributed-by: erik.osterlund@oracle.com, per.liden@oracle.com
2020-04-17 14:35:42 +03:00
aefimov
5c5c5b56dd 8225430: Replace wildcard address with loopback or local host in tests - part 14
Reviewed-by: dfuchs, chegar, vtewari
2020-04-17 14:35:41 +03:00
sgehwolf
07fb6c6451 8236848: [JDK 11u] make run-test-tier1 fails after backport of JDK-8232834
Summary: Remove extraneous closing brackets
Reviewed-by: neugens, goetz
2020-04-17 14:35:40 +03:00
vjovanovic
a488ed3a63 8232806: Introduce a system property to disable eager lambda initialization
Reviewed-by: briangoetz, mr, psandoz, forax
2020-04-17 14:35:39 +03:00
vagarwal
0815e38add 8216353: Use utility APIs introduced in org/netbeans/jemmy/util/LookAndFeel class in client sanity test cases
Reviewed-by: serb
2020-04-17 14:35:38 +03:00
akolarkunnu
93e146a9e2 8211322: Reduce the timeout of tooltip in SwingSet2DemoTest
Reviewed-by: serb, shurailine
Contributed-by: gauri.patil@oracle.com
2020-04-17 14:35:37 +03:00
mseledtsov
523d7bc43d 8232224: [TESTBUG] problemlist JFR TestLargeRootSet.java
Summary: Problem listed the test
Reviewed-by: egahlin, dcubed
2020-04-17 14:35:36 +03:00
mseledtsov
1991df3d93 8230624: [TESTBUG] Problemlist JFR compiler/TestCodeSweeper.java
Summary: Added the test to the problem list
Reviewed-by: egahlin
2020-04-17 14:35:35 +03:00
erikj
a6080be8fb 8232834: RunTest sometimes fails to produce valid exitcode.txt
Reviewed-by: ihse
2020-04-17 14:35:34 +03:00
dholmes
3b0b45c877 8232571: Add missing SIGINFO signal
Reviewed-by: dholmes, rriggs
Contributed-by: Benoit Daloze <benoit.daloze@oracle.com>
2020-04-17 14:35:33 +03:00
cjplummer
e2635baada 8227645: Some tests in serviceability/sa run with fixed -Xmx values and risk running out of memory
Summary: move tests to seprate directory
Reviewed-by: dtitov, jcbeyler, ctornqvi, sspitsyn
2020-04-17 14:35:32 +03:00
sgehwolf
afbee165de 8217338: [Containers] Improve systemd slice memory limit support
Summary: Use hierachical memory limit in addition to memory_limits_in_bytes
Reviewed-by: bobv, dholmes
2020-04-17 14:35:31 +03:00
pliden
b7d07956af 8232056: GetOwnedMonitorInfoWithEATest.java fails with ZGC: Heap too small
Reviewed-by: dholmes, rrich
2020-04-17 14:35:30 +03:00
rrich
99639a817f 8230677: Should disable Escape Analysis if JVMTI capability can_get_owned_monitor_info was taken
Reviewed-by: sspitsyn, dholmes, kvn
2020-04-17 14:35:29 +03:00
aefimov
9ac6ebb845 8223638: Replace wildcard address with loopback or local host in tests - part 6
Reviewed-by: dfuchs
2020-04-17 14:35:28 +03:00
weijun
cba51c4f2e 8223003: SunMSCAPI keys are not cleaned up
Reviewed-by: igerasim
2020-04-17 14:35:27 +03:00
akolarkunnu
208cc1efeb 8213168: Enable different look and feel tests in SwingSet3 demo test FileChooserDemoTest
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:35:26 +03:00
akolarkunnu
2f159022be 8211160: Handle different look and feels in JInternalFrameOperator
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:35:25 +03:00
jjg
f63195b311 8218268: Javac treats Manifest Class-Path entries as Paths instead of URLs
Reviewed-by: mchung, bchristi
2020-04-17 14:35:24 +03:00
jjg
fcf76b8dd5 8232170: FSInfo#getJarClassPath throws an exception not declared in its throws clause
Reviewed-by: jjg
Contributed-by: jai.forums2013@gmail.com
2020-04-17 14:35:23 +03:00
sjohanss
db73257689 8209802: Garbage collectors should register JFR types themselves to avoid build errors.
Reviewed-by: kbarrett, tschatzl
2020-04-17 14:35:22 +03:00
phh
98d37bf202 8234288: Turkey Time Zone returns incorrect time zone name
Summary: Add and use "Turkey Time" time zone.
Reviewed-by: naoto, martin, phh
Contributed-by: letuyang@amazon.com
2020-04-17 14:35:21 +03:00
fmatte
b11198ba11 8235637: jhsdb jmap from OpenJDK 11.0.5 doesn't work if prelink is enabled
Summary: error handling for "lib_base_diff == 0"
Reviewed-by: ysuenaga, cjplummer, kevinw
Contributed-by: suenaga@oss.nttdata.com
2020-04-17 14:35:20 +03:00
mbaesken
f2d5ae698a 8233328: fix minimal VM build on Linux s390x
Reviewed-by: lucy, mdoerr
2020-04-17 14:35:19 +03:00
mbaesken
38c89a5c53 8234809: set relro in linker flags when building with gcc
Reviewed-by: erikj, fweimer
2020-04-17 14:35:18 +03:00
martin
8056459611 8209817: stack is executable when building with Clang on Linux
Reviewed-by: dholmes, martin, mikael, ihse
Contributed-by: Arthur Eubanks <aeubanks@google.com>
2020-04-17 14:35:16 +03:00
tschatzl
41c4cca03f 8214850: Rename vm_operations.?pp files to vmOperations.?pp files
Reviewed-by: dholmes, coleenp
2020-04-17 14:35:15 +03:00
erikj
72821c3537 8223627: jdk-13+20 bundle name contains null instead of ea
Reviewed-by: dholmes, tbell
2020-04-17 14:35:14 +03:00
erikj
645795502d 8223464: Improve version string for Oracle CI builds
Reviewed-by: tbell
2020-04-17 14:35:13 +03:00
akolarkunnu
fc04378e18 8228479: Correct the format of ColorChooserDemoTest
Reviewed-by: serb, psadhukhan
2020-04-17 14:35:12 +03:00
xuelei
d0b371bf3d 8225766: Curve in certificate should not affect signature scheme when using TLSv1.3
Reviewed-by: ascarpino
2020-04-17 14:35:11 +03:00
ihse
d30ad7f4d5 8217634: RunTest documentation and usability update
Reviewed-by: erikj
2020-04-17 14:35:10 +03:00
jjiang
d2222b8e44 8210632: Add key exchange algorithm to javax/net/ssl/TLSCommon/CipherSuite.java
Summary: javax/net/ssl/TLSCommon/CipherSuite.java supports key exchange algorithms
Reviewed-by: xuelei
2020-04-17 14:35:09 +03:00
iignatyev
8260840c79 8227112: exclude compiler/intrinsics/sha/sanity tests from AOT runs
Reviewed-by: kvn
2020-04-17 14:35:08 +03:00
epavlova
6380c6732a 8225684: [AOT] vmTestbase/vm/oom/production/AlwaysOOMProduction tests fail with AOTed java.base
Reviewed-by: kvn
2020-04-17 14:35:07 +03:00
mgronlun
71c55d22f9 8210024: JFR calls virtual is_Java_thread from ~Thread()
Reviewed-by: kbarrett, dholmes, dcubed, egahlin
2020-04-17 14:35:06 +03:00
jiefu
4196fb6da5 8232692: [TESTBUG] compiler/aot/fingerprint/SelfChangedCDS.java fails when cds is disabled
Reviewed-by: kvn
2020-04-17 14:35:05 +03:00
weijun
fc0984d4a5 8225180: SignedObject with invalid Key not throwing the InvalidKeyException in Windows
Reviewed-by: mullan
2020-04-17 14:35:04 +03:00
prr
9f4f55fb95 8225487: giflib legal file is missing attribution for openbsd-reallocarray.c
Reviewed-by: serb, kcr
2020-04-17 14:35:03 +03:00
epavlova
2aa05bc998 8225199: [Graal] compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java fails with -XX:CompileThresholdScaling=0.1
Reviewed-by: kvn
2020-04-17 14:35:02 +03:00
prr
5807c3e00d 8224778: test/jdk/demo/jfc/J2Ddemo/J2DdemoTest.java cannot find J2Ddemo.jar
Reviewed-by: erikj, psadhukhan
2020-04-17 14:35:01 +03:00
prr
e7199d3e90 8224705: Tests that need to be problem-listed or have printer resources
Reviewed-by: serb, psadhukhan
2020-04-17 14:35:00 +03:00
psadhukhan
f3eb61391b 8211703: JInternalFrame : java.lang.AssertionError: cannot find the internal frame
Reviewed-by: prr, serb
2020-04-17 14:34:59 +03:00
weijun
4a3ba95063 8223063: Support CNG RSA keys
Reviewed-by: mullan
2020-04-17 14:34:58 +03:00
vagarwal
e311789396 8222519: ButtonDemoScreenshotTest fails randomly with "still state to be reached"
Reviewed-by: serb
2020-04-17 14:34:57 +03:00
jjiang
f57bc13d47 8222391: javax/net/ssl/compatibility/Compatibility.java should be more flexible
Reviewed-by: xuelei
2020-04-17 14:34:56 +03:00
serb
4d0b9d556d 8221885: Add intermittent test in the JavaSound to the ProblemList
Reviewed-by: prr
2020-04-17 14:34:55 +03:00
jjiang
a883c43f16 8219723: javax/net/ssl/compatibility/Compatibility.java failed on some SNI cases
Summary: Re-generates RSA and ECDSA certificates and set longer validity period
Reviewed-by: xuelei
2020-04-17 14:34:54 +03:00
iignatyev
abce4f395c 8178798: Two compiler/aot/verification/vmflags tests fail by timeout with UseAVX=3
Reviewed-by: kvn
2020-04-17 14:34:52 +03:00
akolarkunnu
5bd967a0b2 8217297: Add support for multiple look and feel for SwingSet SliderDemoTest
Reviewed-by: serb
Contributed-by: vikrant.v.agarwal@oracle.com
2020-04-17 14:34:51 +03:00
akolarkunnu
bcb6da2141 8214471: Enable different look and feel tests in SwingSet3 demo test ToolTipDemoTest
Reviewed-by: serb, shurailine
2020-04-17 14:34:50 +03:00
iignatyev
8462373f69 8215322: add @file support to jaotc
Reviewed-by: kvn
2020-04-17 14:34:49 +03:00
hseigel
2d8d999aae 8204525: [TESTBUG] runtime/NMT/MallocStressTest.java ran out of java heap
Summary: Handle OutOfMemoryError exception to prevent test aborting
Reviewed-by: zgu, dholmes
2020-04-17 14:34:48 +03:00
sveerabhadra
0200bb9844 8210057: Enable different look and feels in SwingSet3 demo test InternalFrameDemoTest
Reviewed-by: serb
Contributed-by: gauri.patil@oracle.com
2020-04-17 14:34:47 +03:00
sveerabhadra
bb3a29fd7a 8211443: Enable different look and feels in SwingSet3 demo test SplitPaneDemoTest
Reviewed-by: serb
Contributed-by: gauri.patil@oracle.com
2020-04-17 14:34:46 +03:00
kbarrett
7c3815fff5 8209976: Improve iteration over non-JavaThreads
Summary: Add NonJavaThread and move NamedThread iteration to new class.
Reviewed-by: eosterlund, coleenp, rkennke
2020-04-17 14:34:45 +03:00
akolarkunnu
03b7dc9398 8212897: Some improvements in the EditorPaneDemotest
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:44 +03:00
akolarkunnu
b84647c145 8209499: Create test for SwingSet EditorPaneDemo
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:43 +03:00
akolarkunnu
899fe1c183 8211139: Increase timeout value in all tests under jdk/sanity/client/SwingSet/src
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:42 +03:00
psadhukhan
030088a20f 8223158: Docked MacBook cannot start any Java Swing applications
Reviewed-by: prr, serb
2020-04-17 14:34:41 +03:00
eosterlund
cf2ffdb4ac 8229345: Memory leak due to vtable stubs not being shared on SPARC
Reviewed-by: mdoerr, dholmes, kvn
2020-04-17 14:34:40 +03:00
iignatyev
808948cdb5 8209807: improve handling exception in requires.VMProps
Reviewed-by: vlivanov, mseledtsov
2020-04-17 14:34:39 +03:00
weijun
d4f542f35a 8213010: Supporting keys created with certmgr.exe
Reviewed-by: valeriep
2020-04-17 14:34:38 +03:00
weijun
9a87eb6a46 8213009: Refactoring existing SunMSCAPI classes
Reviewed-by: valeriep
2020-04-17 14:34:37 +03:00
akolarkunnu
44068174b7 8210055: Enable different look and feel tests in SwingSet3 demo tests
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:36 +03:00
vagarwal
3f7790cec7 8210910: Create test for FileChooserDemo
Reviewed-by: serb
Contributed-by: vikrant.v.agarwal@oracle.com
2020-04-17 14:34:35 +03:00
akolarkunnu
a23921e59e 8210994: Create test for SwingSet3 FrameDemo
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:34 +03:00
vagarwal
7ff24343bc 8210052: Enable testing for all the available look and feels in SwingSet3 demo tests
Reviewed-by: shurailine, serb
2020-04-17 14:34:33 +03:00
akolarkunnu
890d41ea0d 8209993: Create a test for SwingSet3 ToolTipDemo
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:32 +03:00
akolarkunnu
cbfc1b3323 8209494: Create a test for SwingSet InternalFrameDemo
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:31 +03:00
akolarkunnu
428026ceed 8209789: Synchronize test/jdk/sanity/client/lib/jemmy with code-tools/jemmy/v2
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com
2020-04-17 14:34:30 +03:00
akolarkunnu
aa63381f2c 8209418: Synchronize test/jdk/sanity/client/lib/jemmy with code-tools/jemmy/v2
Reviewed-by: serb
Contributed-by: abdul.kolarkunnu@oracle.com, alexandre.iline@oracle.com
2020-04-17 14:34:29 +03:00
stooke
1c2ee43220 8216354: Syntax error in toolchain_windows.m4
Reviewed-by: erikj, dholmes, clanger
2020-04-17 14:34:28 +03:00
kbarrett
fd68e7b85b 8209850: Allow NamedThreads to use GlobalCounter critical sections
Summary: Add NamedThreads iterator and make GlobalCounter use it.
Reviewed-by: eosterlund, rehn
2020-04-17 14:34:27 +03:00
mbaesken
a8de4a9d70 8234397: add OS uptime information to os::print_os_info output
Reviewed-by: clanger, dholmes, lucy
2020-04-17 14:34:26 +03:00
mbaesken
366377f740 8231445: check ZALLOC return values in awt coding
Reviewed-by: clanger, prr
2020-04-17 14:34:25 +03:00
weijun
cca96f8bfd 8210476: sun/security/mscapi/PrngSlow.java fails with Still too slow
Reviewed-by: xuelei, igerasim, rriggs
2020-04-17 14:34:24 +03:00
jjiang
897c6aa15e 8203687: javax/net/ssl/compatibility/Compatibility.java supports TLS 1.3
Reviewed-by: xuelei
2020-04-17 14:34:22 +03:00
igerasim
5db557a43e 8201355: Avoid native memory allocation in sun.security.mscapi.PRNG.generateSeed
Reviewed-by: weijun
2020-04-17 14:34:21 +03:00
shurailine
332bfe57e9 8208157: requires.VMProps throws NPE for missing properties in "release" file
Reviewed-by: iignatyev, lancea
2020-04-17 14:34:20 +03:00
dlong
92cd17a819 8213348: jdk.internal.vm.compiler.management service providers missing in module descriptor
8211781: re-building fails after changing Graal sources
Reviewed-by: erikj, mchung
2020-04-17 14:34:19 +03:00
rriggs
01ca066b12 8208715: Conversion of milliseconds to nanoseconds in UNIXProcess contains bug
Reviewed-by: martin
2020-04-17 14:34:18 +03:00
psadhukhan
433d15d740 8215396: JTabbedPane preferred size calculation is wrong for SCROLL_TAB_LAYOUT
Reviewed-by: serb
2020-04-17 14:34:17 +03:00
rschmelter
64b5b301ac 8226608: Hide the onjcmd option from the help output
Reviewed-by: sspitsyn, clanger
2020-04-17 14:34:16 +03:00
rschmelter
278ed4e5c6 8224673: Adjust permission for delayed starting of debugging
Summary: Changed permission from monitor to control
Reviewed-by: sspitsyn, clanger
2020-04-17 14:34:15 +03:00
iklam
12a46a64f2 8207832: serviceability/sa/ClhsdbCDSCore.java failed with "Couldn't find core file location"
Summary: Handle %p in /proc/sys/kernel/core_pattern
Reviewed-by: dholmes, hseigel
2020-04-17 14:34:14 +03:00
weijun
be42f1e20d 8231507: Update Apache Santuario (XML Signature) to version 2.1.4
Reviewed-by: weijun
Contributed-by: fedor.burdun@azulsystems.com, weijun.wang@oracle.com
2020-04-17 14:34:13 +03:00
mbaesken
eebeef97c8 8235243: handle VS2017 15.9 and VS2019 in abstract_vm_version
8235325: build failure on Linux after 8235243
Reviewed-by: dholmes, mdoerr
2020-04-17 14:34:12 +03:00
mbaesken
f22f82c584 8234339: replace JLI_StrTok in java_md_solinux.c
Reviewed-by: clanger, rriggs
2020-04-17 14:34:11 +03:00
mbaesken
7c694806dd 8234323: NULL-check return value of SurfaceData_InitOps on macosx
Reviewed-by: clanger
2020-04-17 14:34:10 +03:00
mbaesken
d3c297850e 8233078: fix minimal VM build on Linux ppc64(le)
Reviewed-by: mdoerr, lucy
2020-04-17 14:34:09 +03:00
mbaesken
1a7d83d7ba 8234741: enhance os::get_core_path on macOS
Reviewed-by: clanger, gziemski
2020-04-17 14:34:08 +03:00
psadhukhan
350dfc1510 8224821: java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java fails linux-x64
Reviewed-by: jdv
2020-04-17 14:34:07 +03:00
psadhukhan
f3e2dc643b 8224830: test/jdk/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.java fails on linux-x64
Reviewed-by: jdv
2020-04-17 14:34:06 +03:00
prr
070697d518 8225007: java/awt/print/PrinterJob/LandscapeStackOverflow.java may hang
Reviewed-by: serb, jdv
2020-04-17 14:34:05 +03:00
jdv
355740f62e 8225105: java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java fails in Windows 10
Reviewed-by: prr, serb
2020-04-17 14:34:04 +03:00
bpb
748b0a69a8 8225117: java/math/BigInteger/SymmetricRangeTests.java fails with ParseException
Reviewed-by: darcy
2020-04-17 14:34:03 +03:00
serb
b7ff38e669 8225144: [macos] In Aqua L&F backspace key does not delete when Shift is pressed
Reviewed-by: psadhukhan
2020-04-17 14:34:02 +03:00
naoto
085c9feeca 8225435: Upgrade IANA Language Subtag Registry to the latest for JDK14
Reviewed-by: rriggs
2020-04-17 14:34:01 +03:00
kvn
5fca02ea0c 8225350: compiler/jvmci/compilerToVM/IsCompilableTest.java timed out
Reviewed-by: iignatyev
2020-04-17 14:34:00 +03:00
akolarkunnu
d8725e27d4 8221312: test/jdk/sanity/client/SwingSet/src/ColorChooserDemoTest.java failed
Reviewed-by: serb, psadhukhan
2020-04-17 14:33:59 +03:00
dholmes
4b9df72b42 8215355: Object monitor deadlock with no threads holding the monitor (using jemalloc 5.1)
Reviewed-by: rehn, stuefe, dcubed, sspitsyn
2020-04-17 14:33:57 +03:00
erikj
1aa4f75e8a 8217613: [AOT] TEST_OPTS_AOT_MODULES doesn't work on mac
Reviewed-by: tbell, kvn, iignatyev
2020-04-17 14:33:56 +03:00
epavlova
2315f46feb 8214557: Filter out VM flags which don't affect AOT code generation
Reviewed-by: kvn, erikj
2020-04-17 14:33:55 +03:00
epavlova
b641992810 8152988: [AOT] Update test batch definitions to include aot-ed java.base module mode into hs-comp testing
Reviewed-by: kvn, erikj, ihse
2020-04-17 14:33:54 +03:00
iignatyev
f583b1716c 8210699: Problem list tests which times out in Xcomp mode
Reviewed-by: kvn
2020-04-17 14:33:53 +03:00
mdoerr
9b9a4287ff 8220348: [ntintel] asserts about copying unaligned array
Reviewed-by: clanger, stuefe
2020-04-17 14:33:52 +03:00
bpb
5dc0f41370 8220479: java/nio/channels/Selector/SelectWithConsumer.java failed at testTwoChannels()
Reviewed-by: bpb
Contributed-by: alan.bateman@oracle.com
2020-04-17 14:33:51 +03:00
tschatzl
1558ec7ee9 8211211: vmTestbase/metaspace/stressDictionary/StressDictionary.java timeout
Summary: Disable CMS precleaning to avoid accumulating too many classloaders to unload.
Reviewed-by: kbarrett, sangheki
2020-04-17 14:33:50 +03:00
fyang
4e4eae71f5 8233466: aarch64: remove unnecessary load of mdo when profiling return and parameters type
Reviewed-by: adinn
2020-04-17 14:33:49 +03:00
bsrbnd
892277da5f 8214345: infinite recursion while checking super class
Reviewed-by: vromero
2020-04-17 14:33:48 +03:00
iklam
852c29fd21 8209826: Undefined reference to os::write after JDK-8209657 (filemap.hpp cleanup)
Summary: include os_inline.hpp instead
Reviewed-by: jiangli
2020-04-17 14:33:47 +03:00
jiangli
d59ff38178 8235509: Backport for JDK-8209657 Refactor filemap.hpp to simplify integration with Serviceability Agent.
Summary: Backport for JDK-8209657 Refactor filemap.hpp to simplify integration with Serviceability Agent.
Reviewed-by: clanger
2020-04-17 14:33:46 +03:00
ccheung
52c1608601 8209385: CDS runtime classpath checking is too strict when only classes from the system modules are archived
Summary: skip checking the path entries which are not being referenced during CDS dump time
Reviewed-by: jiangli, iklam
2020-04-17 14:33:45 +03:00
jiangli
5c708d5291 8209389: SIGSEGV in WalkOopAndArchiveClosure::do_oop_work.
Summary: Check the MetaspaceShared::archive_heap_object return value and handle failure accordingly.
Reviewed-by: iklam, coleenp
2020-04-17 14:33:44 +03:00
sgehwolf
a2a1c58ba5 8232003: (fs) Files.write can leak file descriptor in the exception case
Summary: Be sure to close the leaked OutputStream in all cases
Reviewed-by: alanb, bpb, clanger
2020-04-17 14:33:43 +03:00
dholmes
0db347ed3b 8210512: [Testbug] vmTestbase/nsk/jdi/ObjectReference/referringObjects/referringObjects002/referringObjects002.java fails with unexpected size of ClassLoaderReference.referringObjects
Summary: Account for the self-reference that every class has in the constant pool
Reviewed-by: sspitsyn, jcbeyler
2020-04-17 14:33:42 +03:00
cushon
d7e378c704 8213908: AssertionError in DeferredAttr at setOverloadKind
Reviewed-by: mcimadamore
2020-04-17 14:33:41 +03:00
akolarkunnu
179fcd7bba 8217235: Create automated test for SwingSet ColorChooserDemoTest
Reviewed-by: serb, shurailine
Contributed-by: vikrant.v.agarwal@oracle.com
2020-04-17 14:33:40 +03:00
iignatyev
7357529794 8216180: [AOT] compiler/intrinsics/bigInteger/TestMulAdd.java crashed with AOT enabled
Reviewed-by: kvn
2020-04-17 14:33:38 +03:00
iignatyev
d15790b1a2 8214904: Test8004741.java failed due to "Too few ThreadDeath hits; expected at least 6 but saw only 5"
Reviewed-by: kvn, epavlova
2020-04-17 14:33:37 +03:00
psadhukhan
41b4a291da 8234786: Fix for JDK-8214578 breaks OS X 10.12 compatibility
Reviewed-by: jdv
2020-04-17 14:33:36 +03:00
psadhukhan
ecc31f2ca7 8214578: [macos] Problem with backslashes on macOS/JIS keyboard: Java ignores system settings
Reviewed-by: serb, prr
2020-04-17 14:33:35 +03:00
pbansal
6d237ac653 8212903: [TestBug] Tests test/jdk/javax/swing/LookAndFeel/8145547/DemandGTK2.sh and DemandGTK3.sh fail on Ubuntu 18.04 LTS
Reviewed-by: prr, psadhukhan
2020-04-17 14:33:34 +03:00
akozlov
5b549c8bbb 8231584: Deadlock with ClassLoader.findLibrary and System.loadLibrary call
Reviewed-by: mchung
2020-04-17 14:33:33 +03:00
dnsimon
e87ef42ad5 8210793: [JVMCI] AllocateCompileIdTest.java failed to find DiagnosticCommand.class
Reviewed-by: thartmann, kvn
2020-04-17 14:33:32 +03:00
kvn
3da9c3e04d 8210220: [AOT] jdwp test cases are failing with error # ERROR: TEST FAILED: Cought IOException while receiving event packet
Summary: don't register AOT method if corresponding java method has breakpoints.
Reviewed-by: dlong
2020-04-17 14:33:31 +03:00
kvn
191513bdd5 8209574: [AOT] breakpoint events are generated in different threads does not meet expected count
Summary: Disable AOT when debugger is attached.
Reviewed-by: dlong
2020-04-17 14:33:30 +03:00
dlong
15cf6fc02a 8209361: [AOT] Unexpected number of references for JVMTI_HEAP_REFERENCE_CONSTANT_POOL [111-->111]: 0 (expected at least 1)
Reviewed-by: coleenp, dholmes
2020-04-17 14:33:29 +03:00
kvn
0eecd137b1 8208379: compiler/jvmci/events/JvmciNotifyInstallEventTest.java failed with "Got unexpected event count after 2nd install attempt: expected 9 to equal 2"
Reviewed-by: iignatyev
2020-04-17 14:33:28 +03:00
amenkov
0c64716eb5 8201513: nsk/jvmti/IterateThroughHeap/filter-* are broken
Reviewed-by: sspitsyn, cjplummer
2020-04-17 14:33:27 +03:00
valeriep
d314e22a0f 8183107: PKCS11 regression regarding checkKeySize
Summary: Changed key size check in PKCS11 provider to only enforce positive return values
Reviewed-by: jnimeh
2020-04-17 14:33:26 +03:00
dtitov
3a4d69f5f3 8207367: 10 vmTestbase/nsk/jdi tests timed out when running with jtreg
Reviewed-by: sspitsyn, cjplummer
2020-04-17 14:33:25 +03:00
kvn
b7f392bebf 8206963: [AOT] bug with multiple class loaders
Summary: AOT should not support custom class loaders.
Reviewed-by: dlong, iveresov
2020-04-17 14:33:24 +03:00
dcubed
cdfbf233ee 8204529: gc/TestAllocateHeapAtMultiple.java fail with Agent 7 timed out
Summary: Increase default timeout to 360 seconds.
Reviewed-by: erikj, dholmes
2020-04-17 14:33:23 +03:00
psadhukhan
ba7a4a4703 8203904: javax/swing/JSplitPane/4816114/bug4816114.java: The divider location is wrong
Reviewed-by: serb, kaddepalli
2020-04-17 14:33:21 +03:00
mbaesken
3b67eefd91 8230480: check malloc/calloc results in java.desktop
Reviewed-by: rriggs
2020-04-17 14:33:19 +03:00
serb
9ed054c277 8199072: Test javax/swing/GroupLayout/6613904/bug6613904.java is unstable
Reviewed-by: prr, psadhukhan
2020-04-17 14:33:18 +03:00
serb
93500e1787 8198398: Test javax/swing/JColorChooser/Test6199676.java fails in mach5
Reviewed-by: kaddepalli, prr
2020-04-17 14:33:17 +03:00
serb
467c36ad0a 8198321: javax/swing/JEditorPane/5076514/bug5076514.java fails
Reviewed-by: psadhukhan
2020-04-17 14:33:16 +03:00
pkbalakr
5f805555b8 8196467: javax/swing/JInternalFrame/Test6325652.java fails
Reviewed-by: jdv, psadhukhan
Contributed-by: tejpal.rebari@oracle.com
2020-04-17 14:33:15 +03:00
trebari
b3cd894715 8194944: Regression automated test 'open/test/jdk/javax/swing/JInternalFrame/8145896/TestJInternalFrameMaximize.java' fails
Reviewed-by: jdv, arapte
2020-04-17 14:33:14 +03:00
jdv
a37852ce5b 8176556: java/awt/dnd/ImageTransferTest/ImageTransferTest.java fails for JFIF
Reviewed-by: serb
2020-04-17 14:33:13 +03:00
iignatyev
4ef91e7719 8167276: jvmci/compilerToVM/MaterializeVirtualObjectTest.java fails with -XX:-EliminateAllocations
Reviewed-by: kvn
2020-04-17 14:33:12 +03:00
iignatyev
56a2bd226c 8145845: [AOT] NullPointerException in compiler/whitebox/GetCodeHeapEntriesTest.java
Reviewed-by: kvn, thartmann
2020-04-17 14:33:11 +03:00
pkbalakr
5c84c58d2e 8042383: [TEST_BUG] Test javax/swing/plaf/basic/BasicMenuUI/4983388/bug4983388.java fails with shortcuts on menus do not work
Reviewed-by: jdv, psadhukhan
Contributed-by: tejpal.rebari@oracle.com
2020-04-17 14:33:10 +03:00
sgehwolf
d88c26b3b6 8196969: JTreg Failure: serviceability/sa/ClhsdbJstack.java causes NPE
Summary: Account for serialized null scopes in NMethod
Reviewed-by: aph, never
2020-04-17 14:33:09 +03:00
mdoerr
84a3c800c9 8229236: CriticalJNINatives: dll handling should be done in native thread state
Summary: Temporarily switch thread state from _thread_in_vm to _thread_in_native to execute I/O.
Reviewed-by: dlong, dholmes
2020-04-17 14:33:06 +03:00
thartmann
e26685d09a 8193042: NativeLookup::lookup_critical_entry() should only load shared library once
Summary: Avoids repeated loads/unloads of the same shared library.
Reviewed-by: dholmes, dlong, thartmann
Contributed-by: Christian Hagedorn <christian.hagedorn@oracle.com>
2020-04-17 14:33:05 +03:00
alitvinov
cf8960ff4d 8068184: Fix for JDK-8032832 caused a deadlock
Reviewed-by: dfuchs, chegar
2020-04-17 14:33:04 +03:00
goetz
1f716d6c8d 8234340: Bump update version for OpenJDK: jdk-11.0.7
Reviewed-by: clanger
2020-04-17 14:32:48 +03:00
dbatrak
b4a552301a 8210058: Algorithmic Italic font leans opposite angle in Printing
Reviewed-by: prr, jdv, psadhukhan

Funtional fix already applied by JBR-1761: Printing a comment block in landscape mode results in oddly rotated italic letters.
Applying test only:
  http://github.com/JetBrains/JetBrainsRuntime/commit/5d35e720
  http://hg.openjdk.java.net/jdk-updates/jdk11u/rev/5242fe7dcf86
2020-04-17 14:32:47 +03:00
aivanov
33c882ecb9 8223558: Java does not render Myanmar script correctly
Reviewed-by: prr, serb

Already backported by 9b80ea79: JBR-1945 Backport JDK-8223558 from OpenJDK:
  http://github.com/JetBrains/JetBrainsRuntime/commit/9b80ea79
  http://hg.openjdk.java.net/jdk-updates/jdk11u/rev/df554438702e
2020-04-17 14:32:46 +03:00
Anton Tarasov
dd1334a352 JBR-2299 [mac] jcef requests for "chromium safe storage" keychain access 2020-04-17 11:29:59 +03:00
Vitaly Provodin
bab3f47f70 updated JTreg exclude list 2020-04-17 07:03:30 +07:00
Anton Tarasov
d0c367b31f JBR-2222 Crash during closing IDE 2020-04-16 23:43:43 +03:00
Mikhail Grishchenko
e875bf72c9 JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI
Added reproducer
2020-04-16 14:14:06 +07:00
Nikita Gubarkov
3c55329056 JBR-2288 Fixed build failing with "multiple exports" errors when building with JFX
Related to 44cf597dc9
See https://bugs.openjdk.java.net/browse/JDK-8167314?focusedCommentId=14025789
and https://bugs.openjdk.java.net/browse/JDK-8195798
2020-04-15 19:57:16 +03:00
Denis Konoplev
a3e3c23cb1 JBR-2280: Fix regression. Mode compatible with old option. 2020-04-15 17:26:06 +03:00
Anton Tarasov
fa961d1769 JBR-2287 [jcef] add CefBrowser wrapper to jtreg tests 2020-04-15 16:00:04 +03:00
Mandy Chung
44cf597dc9 8202941: GenModuleInfoSource build tool does not detect missing semicolons
Reviewed-by: erikj
2020-04-15 14:44:12 +03:00
Nikita Gubarkov
2e3d5300bd Added --disable-warnings-as-errors to ./configure and fixed typo in java-common.cmake 2020-04-15 14:43:49 +03:00
Sergey Bylokhov
cb80ce396b JBR-1583 Fight MAC OS X "Please call TIS/TSM in main thread!!!" message
Backported fix for JDK-8226806 from jdk15-b16:
8226806: [macOS 10.14] Methods of Java Robot should be called from appropriate thread

Reviewed-by: psadhukhan, prr
2020-04-14 16:24:41 +07:00
Alexey Ushakov
900ae19a31 JBR-2213 Clicking on pipette crashes IDE
Provide pixel buffer with right size for screen grabbing operation
2020-04-13 20:56:18 +03:00
Alexey Ushakov
72f742d99b JBR-2213 Clicking on pipette crashes IDE
Move CGWindowListCreateImage call to AppKit thread
2020-04-13 13:19:58 +03:00
Pengfei Li
d7dbec973c 8208623: [TESTBUG] runtime/LoadClass/LongBCP.java fails in AUFS file system
Limit the maximal file name length to 242 for AUFS file system

Reviewed-by: dholmes, redestad
2020-04-12 07:06:13 +07:00
Elena Sayapina
266309ea51 JBR-2235 JBR 11.0.6 doesn't start from a directory with a non-ASCII name
Changed CP_THREAD_ACP to CP_ACP to fix JDK-8242283: Can't start JVM when java home path includes non-ASCII character.

Complete fix for JBR-2235 includes the following commits:
- cherry-pick 3490262a: JDK-8240197: Cannot start JVM when $JAVA_HOME includes CJK characters
- cherry-pick 04e885b4: JDK-8232168: Fix non wide char canonicalization on Windows
- cherry-pick 77ae10cd: JDK-8218547: Simplify JLI_Open on Windows in native code (libjli)
- cherry-pick 99b28daf: JDK-8240725: Some functions might not work with CJK character
2020-04-11 13:34:31 +07:00
Yasumasa Suenaga
9dfc4da688 8240725: Some functions might not work with CJK character
Reviewed-by: naoto

Backported the fix to jbr11.
Resolved conflicts in src/java.base/windows/native/libjava/canonicalize_md.c.
2020-04-11 13:34:22 +07:00
Matthias Baesken
7f134e331a 8218547: Simplify JLI_Open on Windows in native code (libjli)
Reviewed-by: alanb, clanger
2020-04-11 13:34:16 +07:00
Ralf Schmelter
87f9c8a005 8232168: Fix non wide char canonicalization on Windows
Reviewed-by: clanger, alanb, ccheung
2020-04-11 13:34:10 +07:00
Denis Konoplev
d4faba8e34 JBR-216: National keyboards shortcuts 2020-04-09 04:00:35 +03:00
Denis Konoplev
727cb87c4d JBR-1108: Fix numpad keycodes 2020-04-07 06:40:01 +03:00
Vitaly Provodin
9d568c7811 JBR-2217 provide JCEF-only (no JavaFX) bundle for master/202 branches
modify checkout targets, repair TC remote runs
2020-04-07 06:33:47 +07:00
Mikhail Grishchenko
529a188b8b JBR-2256 JEditorPane with test/html type and zero margins is not shown
Updated reproducer
2020-04-06 16:33:07 +07:00
Denis Konoplev
02fad83ca3 Remove public constants from KeyEvent 2020-04-03 18:14:32 +03:00
Mikhail Grishchenko
41578a40b5 JBR-2256 JEditorPane with test/html type and zero margins is not shown
Added reproducer
2020-04-03 21:27:15 +07:00
Denis Konoplev
231315cd11 JBR-1559: Fix NumPad keycodes 2020-04-02 20:43:51 +03:00
Mikhail Grishchenko
4e1f5a43b3 JBR-2210 IDEA fails to start (JVM crashes) when using the -Dfile.encoding=UTF-8in IDEA's vmoptions file
Added regression test
2020-04-02 17:51:13 +07:00
Vitaly Provodin
45aae6f25c JBR-1611 Slow class loading when running JVM in debug mode
8241750: x86_32 build failure after JDK-8227269
2020-04-01 16:43:11 +07:00
Vitaly Provodin
9d0b715ddf JBR-1611 Slow class loading when running JVM in debug mode
backport of 8227269: Slow class loading when running with JDWP
2020-04-01 16:43:06 +07:00
Dmitry Batrak
ff2e915371 JBR-2248 Support text wrapping in a <pre> tag in JEditorPane 2020-04-01 11:54:06 +03:00
Elena Sayapina
f2ee9a2e2a JBR-2235 JBR 11.0.6 doesn't start from a directory with a non-ASCII name
Apply JDK-8240823 fix from 11.0.8 (which is a backport of JDK-8240197 to jdk11)
8240197: Cannot start JVM when $JAVA_HOME includes CJK characters
2020-03-31 18:54:54 +03:00
Alexey Ushakov
b51254a975 JBR-2210 IDEA fails to start (JVM crashes) when using the -Dfile.encoding=UTF-8in IDEA's vmoptions file
Returning devanagari subset back for ja.UTF-8 to get non-null font name from WFontConfiguration.getTextComponentFontName(). It is a regression from JDK-8208179.
2020-03-31 18:53:42 +03:00
Dmitry Batrak
6003abc15f JBR-2234 Support CSS setting overflow-wrap:anywhere in JEditorPane
simplify the code
2020-03-31 16:55:51 +03:00
Dmitry Batrak
b6583d0a71 JBR-2234 Support CSS setting overflow-wrap:anywhere in JEditorPane 2020-03-31 15:36:16 +03:00
Vitaly Provodin
d75142e9dc updated JTreg exclude list 2020-03-27 16:32:49 +07:00
Vitaly Provodin
ec88122f13 JBR-2212 fix misprint in linux_x86, linux_aarch64, osx_fastdebug scripts 2020-03-23 11:44:15 +07:00
Vitaly Provodin
59be7ec370 JBR-2217 provide JCEF-only (no JavaFX) bundle for master/202 branches 2020-03-19 20:39:01 +07:00
Vitaly Provodin
57ff1dba25 JBR-2212 add scripts for linux_x86, linux_aarch64, linux_x64_fastdebug, osx_fastdebug, windows_x86 2020-03-17 19:59:25 +07:00
Vitaly Provodin
f5fb718c86 updated JTreg exclude list 2020-03-16 16:00:22 +07:00
Vitaly Provodin
d1b5e75f13 updated JTreg exclude list 2020-03-16 15:22:22 +07:00
Ivan Gerasimov
b9d3ad70d7 JBR-2214 backport fix for CLion crashes on attempt to load Swift project
8213383: Wrap up pthread_cond_wait into a loop to workaround potential spurious wakeups
2020-03-16 11:28:39 +07:00
Vitaly Provodin
cb653e6a5d JBR-2212 add windows_x86 scripts 2020-03-13 15:44:47 +07:00
Vitaly Provodin
1c6c53eb2c JBR-1643 remove extra bash invocations 2020-03-12 21:36:17 +07:00
Vitaly Provodin
6d8d933e97 JBR-2181 fix windows test bundle 2020-03-12 16:04:04 +07:00
Vitaly Provodin
0dc2c5ca69 JBR-1643 set JOBS according to configure recommendations and add LOG info 2020-03-12 09:26:18 +07:00
Vitaly Provodin
586e2845dd reduce JOBS for make on Windows to 1 2020-03-11 16:53:48 +07:00
Vitaly Provodin
fdca477148 reduce JOBS for make on Windows to 4 2020-03-11 15:44:58 +07:00
Vitaly Provodin
49895b3e2f JBR-2209 backport fix for java/awt/Window/LocationAtScreenCorner/LocationAtScreenCorner.java
8232433: [macos 10.15] java/awt/Window/LocationAtScreenCorner/LocationAtScreenCorner.java may fail
2020-03-11 15:43:37 +07:00
Vitaly Provodin
5301d56ae2 JBR-2208 backport the fix for the test from OpenJDK 15
8235153: [TESTBUG] [macos 10.15] java/awt/Graphics/DrawImageBG/SystemBgColorTest.java fails
2020-03-11 15:09:02 +07:00
Vitaly Provodin
1eff1948a5 JBR-2181: create two separate JBR bundles with JFX and JFX+JCEF 2020-03-11 14:27:56 +07:00
Egor Ushakov
547aa5d178 8239055: Wrong implementation of VMState.hasListener
Correct the VMState.hasListener implementation to return WeakReference<VMListener> type

Reviewed-by: sspitsyn, poonam
2020-03-04 11:26:59 +03:00
Vitaly Provodin
0babe0f639 updated JTreg exclude list 2020-03-03 09:23:17 +07:00
Artem Bochkarev
8b027c4fbf JBR-2143: enable X11_DISABLE_OVERRIDE_FLAG by default only in KDE-desktop env
fixed "XFCE: No context menu or main menu popups from Full screen mode"
2020-03-02 13:39:00 +03:00
Mikhail Grishchenko
b46e74fe6f JBR-1414 [Test] downscale frames to run on low-dpi screens 2020-02-27 13:41:13 +03:00
Anton Tarasov
a855f3b835 JBR-2169 AWTThreading: remove tracked invocation event from completion listener 2020-02-25 10:20:24 +03:00
Anton Tarasov
10d38be7e7 [followup] JBR-2148 JCEF: JBR bundle has invalid app structure
Rename to ALT_CEF_BROWSER_SUBPROCESS in test.
2020-02-22 20:04:46 +03:00
Vitaly Provodin
08d1926f8b updated JTreg exclude list 2020-02-22 07:52:28 +07:00
Sergey Malenkov
bbdc159762 FractionalMetricsSupport 2020-02-21 19:00:52 +03:00
Anton Tarasov
bba297b4a4 JBR-2159 Native crash in thread AWT-EventQueue-0 when trying to push commit 2020-02-21 10:16:19 +03:00
Vitaly Provodin
671af4a48c JBR-2148: sign Frameworks & Helpers 2020-02-21 11:18:43 +07:00
Vitaly Provodin
27e287978d JBR-2148: modify signapp&build scripts to match to the new layout 2020-02-20 20:30:39 +07:00
Vitaly Provodin
7d79c451ab JBR-2162 move building scripts from TC to JBR repo
JBR-2150 add LW JBR executables
2020-02-20 20:27:53 +07:00
Anton Tarasov
f45f84d7ed JBR-2148 JCEF: JBR bundle has invalid app structure 2020-02-19 18:23:27 +03:00
Anton Tarasov
06b0d02208 JBR-2146 improve InvokeOnToolkitHelper to cover more generic case 2020-02-18 11:14:46 +03:00
Elena Sayapina
bc09aadadb JBR-1905 java/awt/TextArea/DisposeTest/TestDispose.java: frame is not disposed
- java/awt/TextArea/DisposeTest/TestDispose.java, java/awt/TextField/DisposeTest/TestDispose.java: decreased sub-process timeout
2020-02-17 12:50:54 +07:00
Elena Sayapina
dda7f3d871 JBR-1905 java/awt/TextArea/DisposeTest/TestDispose.java: frame is not disposed
- eliminate erroneously added JetBrains copyrights
2020-02-17 12:41:10 +07:00
Elena Sayapina
7f025f4e16 JBR-1905 java/awt/TextArea/DisposeTest/TestDispose.java: frame is not disposed
- java/awt/TextArea/DisposeTest/TestDispose.java, java/awt/TextField/DisposeTest/TestDispose.java: fixed test frame disposal
- java/awt/Frame/DisposeStressTest/DisposeStressTest.html: decreased test timeout from 2h to 10 min, added minor diagnostic logging
2020-02-17 12:33:44 +07:00
Denis Konoplev
1e904db3b0 JBR-2041: Project view tap fix, recovery? constants & logging 2020-02-14 14:42:36 +03:00
Alexey Ushakov
c013b03300 JBR-2142 Use newer compilers to get better performance and stability of JBR
New docker config is created (jetbrains/runtime:jbr11dev8env) with gcc8.3.1 on board
2020-02-12 16:36:48 +03:00
Elena Sayapina
08aa0852b7 JBR-2041 Update regression test on Linux so it does not need relogin to initialize the test environment 2020-02-12 19:29:19 +07:00
Alexey Ushakov
23f2c1c42d JBR-2135 Use CoreText api to select the font with the most recent version
Corrected java security, parsing issues and native allocations
2020-02-12 03:02:33 +03:00
Dmitry Batrak
53744bf65f JBR-2140 Backport JDK-8236996 from OpenJDK
apply corresponding change from OpenJDK
2020-02-11 13:03:30 +03:00
Dmitry Batrak
430fdb17a8 JBR-2140 Backport JDK-8236996 from OpenJDK
revert original JBR-1879 fix
2020-02-11 13:03:29 +03:00
Anton Tarasov
b37fdd89bf Merge remote-tracking branch 'origin/master' 2020-02-11 12:33:29 +03:00
Anton Tarasov
e57bae4f66 JBR-2139 Idea freeze on dynamic plugin unloading 2020-02-11 12:33:15 +03:00
Alexey Ushakov
0587074d61 Updated CMake projects 2020-02-10 17:49:06 +03:00
Alexey Ushakov
a6e441828a JBR-2137 JetBrainsMono fonts update to v1.0.3 2020-02-10 17:46:20 +03:00
Alexey Ushakov
cbb148dff4 JBR-2135 Use CoreText api to select the font with the most recent version
Added a property to force loading bundled fonts: -Djava2d.font.noVersionCheck=true
2020-02-10 17:36:57 +03:00
Mikhail Grishchenko
1f4ab12fbb JBR-1414: Added regression test for dnd with HiDPI scaling 2020-02-06 17:27:41 +07:00
Elena Sayapina
0f895bf1b2 JBR-2041 Update regression test so it continues to run after one test case fail 2020-02-06 08:35:51 +07:00
Elena Sayapina
05af375909 JBR-2041 Fix regression test compilation on Windows 2020-02-06 07:26:02 +07:00
Elena Sayapina
92606f2c7f JBR-2014 Fix regression test compilation on Linux
error: 'for' loop initial declarations are only allowed in C99 mode
2020-02-06 12:59:52 +07:00
Elena Sayapina
2d587b3728 JBR-2041 Added new regression test (Touchscreen devices support) 2020-02-05 18:37:20 +07:00
Vitaly Provodin
48468b08d0 updated JTreg exclude list 2020-02-05 14:44:07 +07:00
Artem Bochkarev
31b590c16c JBR-2111: enable X11_DISABLE_OVERRIDE_FLAG by default 2020-02-03 12:05:00 +03:00
Vitaly Provodin
78bdb2e198 updated JTreg exclude list 2020-02-03 14:40:59 +07:00
Vitaly Provodin
c64c10cbf0 updated JTreg exclude list 2020-02-01 07:05:37 +07:00
Dmitry Batrak
ae91e1d7f1 JBR-2050 Issue with keycap emojis 2020-01-30 17:33:57 +03:00
Denis Konoplev
ca2209dd48 README: Toolchain configuration on Windows 2020-01-30 10:04:31 +03:00
Vitaly Provodin
354855edc2 updated JTreg exclude list 2020-01-29 09:51:38 +07:00
Vitaly Provodin
98087b0773 updated JTreg exclude list 2020-01-29 09:49:02 +07:00
Anton Tarasov
3dfb0aa16a JBR-2099 jb/java/jcef/JCEFStartupTest.java fails on Windows, Linux 2020-01-28 19:31:30 +03:00
Vitaly Provodin
18b9bf5b0b updated JTreg exclude list 2020-01-28 15:31:09 +07:00
Konstantin Bulenkov
6f4a13e46f Update JetBrains Mono to 1.0.2 2020-01-27 11:47:28 +01:00
Vitaly Provodin
eacfb7f301 updated JTreg exclude list 2020-01-27 15:46:55 +07:00
Vitaly Provodin
42a8da52d1 updated JTreg exclude list 2020-01-25 07:14:07 +07:00
Anton Tarasov
e8c2761f5b JBR-2093 create reg test for JCEF startup 2020-01-24 19:01:04 +03:00
Ivan Migalev
0c911b6ffe Fix a possible resource leak in ColorizationColorAffectsBorders 2020-01-24 14:14:51 +07:00
Ivan Migalev
06086f4a7e Refresh desktop properties on WM_DWMCOLORIZATIONCOLORCHANGED (JBR-2070) 2020-01-24 14:14:49 +07:00
Ivan Migalev
0330cab60b Extract the DWM colorization parameters from registry (JBR-2070) 2020-01-24 14:14:47 +07:00
Elena Sayapina
a4b373e631 JBR-2086 JetBrainsMono fonts update to v1.0.1 2020-01-22 18:16:29 +07:00
Vitaly Provodin
1f6b342856 JBR-2084 modify scripts to sign Contents/MacOS/libjli.dylib as a a normal file 2020-01-22 12:00:49 +07:00
Anton Tarasov
175a0b3a13 Merge remote-tracking branch 'origin/master' 2020-01-21 22:02:36 +03:00
Anton Tarasov
b31a41fb2f JBR-2082 Revealing taskbar does not work when "Automatically hide the taskbar" 2020-01-21 22:02:14 +03:00
Dmitry Batrak
5e77712607 fix merge issues after merge from OpenJDK 11.0.6 2020-01-21 12:54:35 +03:00
Dmitry Batrak
95131842f1 JBR-2078 Backport JDK-8224109 fix from OpenJDK
apply fix from OpenJDK
2020-01-20 18:52:33 +03:00
Dmitry Batrak
1d8cd6505e JBR-2078 Backport JDK-8224109 fix from OpenJDK
revert part of JBR-363, equivalent to JDK-8224109 fix
2020-01-20 18:51:20 +03:00
Vitaly Provodin
dde8100af9 updated JTreg exclude list 2020-01-19 07:57:52 +07:00
Vitaly Provodin
1a8361f8d1 updated JTreg exclude list 2020-01-17 17:39:50 +07:00
Alexey Ushakov
4b21be5814 Merge pull request #15 from bell-sw/update_11.0.6
jdk-11.0.6-ga update
2020-01-16 23:38:40 +03:00
andrew
cde27e425b Added tag jdk-11.0.6-ga for changeset 837b7afec083 2020-01-16 11:38:11 +03:00
xuelei
71e46c4318 8234037: Improve Object Identifier Processing
Reviewed-by: weijun, mschoene, ssahoo
2020-01-16 11:11:00 +03:00
bae
ef559ffd56 8232419: Improve Registry registration
Reviewed-by: andrew
2020-01-16 11:10:59 +03:00
igerasim
71336b75f0 8231790: Provide better FileSystemProviders
Reviewed-by: alanb, skoivu, rhalade
2020-01-16 11:10:57 +03:00
jnimeh
2aa28b4ed4 8231780: Better TLS messaging support
Reviewed-by: ascarpino, rhalade, mschoene
2020-01-16 11:10:56 +03:00
phh
c5a210aaaf 8230318: Better trust store usage
Reviewed-by: andrew
Contributed-by: Clive Verghese <verghese@amazon.com>
2020-01-16 11:10:55 +03:00
weijun
43013180d6 8231139: Improved keystore support
Reviewed-by: mullan, ahgross
2020-01-16 11:10:54 +03:00
chegar
fbc4b4c665 8220598: Malformed copyright year range in a few files in java.base
Reviewed-by: dfuchs, lancea, rriggs, weijun
2020-01-16 11:10:53 +03:00
robm
b5bba8ea40 8231422: Better serial filter handling
Reviewed-by: rriggs
2020-01-16 11:10:52 +03:00
igerasim
f8aab69542 8230279: Improve Pack200 file reading
Reviewed-by: henryjen, jlaskey
2020-01-16 11:10:51 +03:00
weijun
bd0b23b658 8229951: Better Ticket Granting Services
Reviewed-by: ahgross, valeriep
2020-01-16 11:10:50 +03:00
rriggs
879773164f 8230967: Improve Registry support of clients
Reviewed-by: skoivu, smarks, rhalade
2020-01-16 11:10:48 +03:00
xuelei
0e71f74d71 8229728: Implement negotiation parameters
Reviewed-by: jnimeh, ahgross, rhalade
2020-01-16 11:10:47 +03:00
igerasim
d4ec5a832c 8228548: Normalize normalization for all
Reviewed-by: chegar, rhalade, igerasim
2020-01-16 11:10:46 +03:00
prr
27b2606b4d 8227816: More Colorful ICC profiles
Reviewed-by: serb, psadhukhan, mschoene, rhalade
2020-01-16 11:10:45 +03:00
mbalao
e650919a59 8227758: More valid PKIX processing
Reviewed-by: andrew
2020-01-16 11:10:44 +03:00
weijun
12191c9bce 8226352: Improve Kerberos interop capabilities
Reviewed-by: ahgross, mullan, valeriep
2020-01-16 11:10:43 +03:00
alitvinov
9084b24162 8225279: Better XRender interpolation
Reviewed-by: serb, prr, rhalade, ahgross
2020-01-16 11:10:42 +03:00
serb
7411ddf127 8224909: Unlink Set of LinkedHashSets
Reviewed-by: prr, mschoene, rhalade, psadhukhan
2020-01-16 11:10:41 +03:00
lfoltan
102d54732b 8225261: Better method resolutions
Reviewed-by: ahgross, dholmes, hseigel, jwilhelm, rhalade
Contributed-by: lois.foltan@oracle.com
2020-01-16 11:10:40 +03:00
erikj
276971e4fa 8235687: Contents/MacOS/libjli.dylib cannot be a symlink
Reviewed-by: tbell
2020-01-16 11:10:39 +03:00
clanger
7f6d996caf 8235585: Enable macOS codesigning for all libraries and executables
Reviewed-by: erikj, clanger
Contributed-by: rene.schuenemann@gmail.com
2020-01-16 11:10:38 +03:00
xuelei
d5ee71294d 8233954: UnsatisfiedLinkError or NoSuchAlgorithmException after removing sunec.dll
Reviewed-by: ascarpino
2020-01-16 11:10:37 +03:00
clanger
9901421af3 8235403: Further cleanup to test serviceability/sa/ClhsdbCDSCore.java
Reviewed-by: iklam, iignatyev
2020-01-16 11:10:36 +03:00
mbaesken
8cc97c6045 8234625: hs test serviceability/sa/ClhsdbCDSCore.java fails on macOS 10.15
Reviewed-by: clanger, iignatyev
2020-01-16 11:10:35 +03:00
rhalade
3f47742f62 8233223: Add Amazon Root CA certificates
Reviewed-by: mullan
2020-01-16 11:10:34 +03:00
cgo
ed4ae15cf8 8234906: [TESTBUG] TestDivZeroCheckControl fails for client VMs due to Unrecognized VM option LoopUnrollLimit
Reviewed-by: kvn
2020-01-16 11:10:33 +03:00
sgehwolf
0ab0134dd5 8235142: JDK-8193255 backport broke bootstrap with JDK 10
Summary: Use Paths.get() over Path.of()
Reviewed-by: goetz, martin, clanger
2020-01-16 11:10:31 +03:00
mdoerr
14f0820ea4 8234645: ARM32: C1: PatchingStub for field access: not enough bytes
Reviewed-by: cgo, goetz
2020-01-16 11:10:30 +03:00
apetcher
1158496e83 8221172: SunEC specific test is not limited to SunEC
Summary: Fixing a minor test bug in the SignatureDigestTruncate regression test
Reviewed-by: mullan
2020-01-16 11:10:29 +03:00
itakiguchi
24e6cfae03 8230873: [AIX] GUI app does not work with UTF-8 locale on minimum software requirements
Summary: Fix fontconfig.properties file for AIX UTF-8 locales
Reviewed-by: clanger
2020-01-16 11:10:27 +03:00
rpatil
61d09e90db 8231098: (tz) Upgrade time-zone data to tzdata2019c
Reviewed-by: martin, naoto
2020-01-16 11:10:26 +03:00
dmarkov
19ef68d422 8230782: Robot.createScreenCapture() fails if “awt.robot.gtk” is set to false
Reviewed-by: prr, serb
2020-01-16 11:10:25 +03:00
prr
c000469738 8233097: Fontmetrics for large Fonts has zero width
Reviewed-by: jdv, serb
2020-01-16 11:10:23 +03:00
mbalao
58c295fe50 8233404: System property to set the number of PBE iterations in JCEKS keystores
Reviewed-by: weijun
2020-01-16 11:10:22 +03:00
coffeys
c9b31e318f 8231124: Missing closedir call with JDK-8223490
Reviewed-by: naoto
2020-01-16 11:10:21 +03:00
valeriep
bae167a609 8225745: NoSuchAlgorithmException exception for SHA256withECDSA with RSASSA-PSS support
Summary: Fixed SignatureUtil and ECDSA signature impl to handle EC parameters
Reviewed-by: weijun
2020-01-16 11:10:20 +03:00
prr
1f3187a64e 8210776: Upgrade X Window System 6.8.2 to the latest XWD 1.0.7
Reviewed-by: serb
2020-01-16 11:10:19 +03:00
jiefu
a84c3e58fd 8234245: sun/security/lib/cacerts/VerifyCACerts.java fails due to wrong checksum
Reviewed-by: mullan
2020-01-16 11:10:18 +03:00
lancea
451349a83a 8234080: jdk/nio/zipfs/CRCWriteTest.java fails
Reviewed-by: clanger, amlu
2020-01-16 11:10:17 +03:00
rhalade
1191071c97 8232019: Add LuxTrust certificate updates to the existing root program
Reviewed-by: mullan
2020-01-16 11:10:16 +03:00
weijun
845abd8827 8225392: Comparison builds are failing due to cacerts file
Reviewed-by: erikj, martin, mullan
2020-01-16 11:10:14 +03:00
weijun
5c10bb898c 8193255: Root Certificates should be stored in text format and assembled at build time
Reviewed-by: clanger, erikj, mullan
2020-01-16 11:10:13 +03:00
roland
fc58e2f9f5 8232539: SIGSEGV in C2 Node::unique_ctrl_out
Reviewed-by: thartmann, kvn
2020-01-16 11:10:12 +03:00
mdoerr
a05e19384d 8234591: [11u] Build with old C compiler broken by 8223490
Reviewed-by: phh
2020-01-16 11:10:11 +03:00
xgong
96071d26df 8234321: Call cache flush after generating trampoline.
Reviewed-by: adinn, iklam
2020-01-16 11:10:10 +03:00
coffeys
30fc90d18b 8232984: Upgrading Joni License version to 2.1.16
Reviewed-by: coffeys
Contributed-by: kiran.sidhartha.ravikumar@oracle.com
2020-01-16 11:10:09 +03:00
neugens
8066115162 8234107: Several AWT modal dialog tests failing on Linux after JDK-8231991
Summary: Fix off by one in wheel detection logic
Reviewed-by: prr
2020-01-16 11:10:08 +03:00
neugens
84efcadaef 8231991: Mouse wheel change focus on awt/swing windows
Summary: Avoid focus logic when only mouse wheel is moved up/down.
Reviewed-by: serb, dmarkov
2020-01-16 11:10:07 +03:00
mdoerr
f549b9e6e1 8233820: Test crashed with assert(phi->operand_count() != 1 || phi->subst() != phi) failed: missed trivial simplification
Summary: Verification code needs to skip illegal phi functions.
Reviewed-by: thartmann, vlivanov
2020-01-16 11:10:05 +03:00
mdoerr
a639457de2 8233081: C1: PatchingStub for field access copies too much
Reviewed-by: thartmann, dlong
2020-01-16 11:10:04 +03:00
mdoerr
ee06dfa001 8231949: [PPC64, s390]: Make async profiling more reliable
Summary: Better checks if method from interpreter frame is valid.
Reviewed-by: rrich, ghaug, goetz
2020-01-16 11:10:03 +03:00
mdoerr
50a2759494 8230669: [s390] C1: assert(is_bound() || is_unused()) failed: Label was never bound to a location, but it was used as a jmp target
Reviewed-by: phh, xliu
2020-01-16 11:10:02 +03:00
serb
fa52b57aaf 8229810: [macos] NullPointerException getting bounds of GraphicsConfiguration
Reviewed-by: jdv
2020-01-16 11:10:01 +03:00
serb
6e93c2ff06 8229515: [macos] access to window property of NSView on wrong thread
Reviewed-by: prr, dmarkov
2020-01-16 11:10:00 +03:00
coffeys
934b08f5cd 8228645: Don't run sun/security/pkcs11/Cipher/TestKATForGCM.java on buggy NSS solaris versions
Reviewed-by: valeriep
2020-01-16 11:09:59 +03:00
valeriep
cf808f7f30 8226651: Setting the mgfHash in CK_RSA_PKCS_PSS_PARAMS has no effect
Summary: Fixed to get the MGF digest algorithm from MGF1ParameterSpec
Reviewed-by: xuelei
2020-01-16 11:09:58 +03:00
naoto
073273e07b 8228465: HOST locale provider holds wrong era name for GregorianCalendar in US locale
Reviewed-by: lancea
2020-01-16 11:09:56 +03:00
coffeys
8830a96a5b 8223490: Optimize search algorithm for determining default time zone
Reviewed-by: naoto, rriggs
2020-01-16 11:09:55 +03:00
hannesw
3a638115eb 8227391: Update double-conversion to version 3.1.5
Reviewed-by: attila
2020-01-16 11:09:53 +03:00
mbalao
e30e3208ea 8227437: S4U2proxy cannot continue because server's TGT cannot be found
Reviewed-by: weijun, clanger
2020-01-16 11:09:52 +03:00
serb
5d41473916 8224152: [macOS] ProblemList tests that leave rubbish on the screen
Reviewed-by: prr
2020-01-16 11:09:51 +03:00
joehw
41f9b781b3 8224157: BCEL: update to version 6.3.1
Reviewed-by: dfuchs, lancea
2020-01-16 11:09:50 +03:00
xuelei
0b4e78a254 8217610: TLSv1.3 fail with ClassException when EC keys are stored in PKCS11
Reviewed-by: valeriep
2020-01-16 11:09:49 +03:00
xyin
d36b532d81 8198882: Add 10 JNDI tests to com/sun/jndi/dns/AttributeTests/
Reviewed-by: vtewari, rriggs
2020-01-16 11:09:48 +03:00
stuefe
84d66f3db3 8221539: [metaspace] Improve MetaspaceObj::is_metaspace_obj() and friends
Reviewed-by: adinn, coleenp, mdoerr
2020-01-16 11:09:47 +03:00
jjiang
4c3a88527b 8215524: Finished message validation failure should be decrypt_error alert
Reviewed-by: xuelei
2020-01-16 11:09:46 +03:00
serb
1613d1c3d6 8215200: IllegalArgumentException in sun.lwawt.macosx.CPlatformWindow
Reviewed-by: dmarkov, kaddepalli
2020-01-16 11:09:45 +03:00
xuelei
d88f30eb3d 8214321: Misleading code in SSLCipher
Reviewed-by: ascarpino
2020-01-16 11:09:43 +03:00
serb
d1a6f6e0cb 8214046: [macosx] Undecorated Frame does not Iconify when set to
Reviewed-by: dmarkov
2020-01-16 11:09:42 +03:00
valeriep
5a67563b9c 8213008: Cipher with UNWRAP_MODE should support the generation of an AES key type
Summary: Replaced CKK_GENERIC_SECRET with alorithm-specific key type in P11RSACipher unwrap impl
Reviewed-by: ascarpino
2020-01-16 11:09:41 +03:00
rraghavan
632ecffb12 8227439: Turn off AOT by default
Summary: Made UseAOT, AOTLibrary experimental and UseAOT false by default
Reviewed-by: iignatyev, kvn
2020-01-16 11:09:40 +03:00
clanger
2d8557b92e 8226869: Test java/util/Locale/LocaleProvidersRun.java should enable assertions
Reviewed-by: naoto
2020-01-16 11:09:39 +03:00
mli
a2d358d896 8210403: Refactor java.util.Locale:i18n shell tests to plain java tests
Reviewed-by: naoto
Contributed-by: ying.z.zhou@oracle.com
2020-01-16 11:09:38 +03:00
mbaesken
06f2989b91 8233202: exclude javax/swing/plaf/basic/BasicGraphicsUtils/8132119/bug8132119.java
Reviewed-by: clanger
2020-01-16 11:09:37 +03:00
bpb
b3a8ec4cd6 8232178: MacVolumesTest failed after upgrade to MacOS Catalina
Reviewed-by: lancea
2020-01-16 11:09:35 +03:00
mbaesken
a01f2b150a 8232052: use string literal for format string when handling PauseAtStartupFile
Reviewed-by: clanger, stuefe
2020-01-16 11:09:34 +03:00
bpb
e7de300e73 8231254: (fs) Add test for macOS Catalina changes to protect system software
Reviewed-by: alanb
2020-01-16 11:09:33 +03:00
valeriep
8ed35599f3 8229243: SunPKCS11-Solaris provider tests failing on Solaris 11.4
Summary: For CK_GCM_PARAMS, try the spec definition first before falling back to the header file definition
Reviewed-by: xuelei
2020-01-16 11:09:32 +03:00
mbaesken
32fdadd613 8231222: fix pkcs11 P11_DEBUG guarded native traces
Reviewed-by: clanger
2020-01-16 11:09:31 +03:00
valeriep
abd2afe1f5 8228835: Memory leak in PKCS11 provider when using AES GCM
Summary: updated freeCKMechanismPtr to free mechanism-specific memories
Reviewed-by: jnimeh
2020-01-16 11:09:30 +03:00
shade
789cde0a48 8225695: 32-bit build failures after JDK-8080462 (Update SunPKCS11 provider with PKCS11 v2.40 support)
Reviewed-by: alanb
2020-01-16 11:09:29 +03:00
valeriep
4a716e2bd5 8176837: SunPKCS11 provider needs to check more details on PKCS11 Mechanism
Summary: Disable mechanisms with partial support, e.g. can decrypt but cannot encrypt
Reviewed-by: xuelei
2020-01-16 11:09:28 +03:00
valeriep
3426afe277 8080462: Update SunPKCS11 provider with PKCS11 v2.40 support
Summary: Added support for GCM, PSS, and other mechanisms
Reviewed-by: jnimeh
2020-01-16 11:09:27 +03:00
jboes
2c2a107579 8209178: Proxied HttpsURLConnection doesn't send BODY when retrying POST request
Summary: Preserve BODY in poster output stream before sending CONNECT request
Reviewed-by: bae
2020-01-16 11:09:26 +03:00
coffeys
0e5f9c8398 8212752: Typo in SSL log message related to inactive/disabled signature scheme
Reviewed-by: coffeys
Contributed-by: jai.forums2013@gmail.com
2020-01-16 11:09:24 +03:00
xuelei
e01762e302 8212738: Incorrectly named signature scheme ecdsa_secp512r1_sha512
Reviewed-by: ascarpino
2020-01-16 11:09:22 +03:00
iignatyev
7e6d43f2e0 8208236: [TESTBUG] vmTestbase/nsk/stress/stack tests fail by timeout
Reviewed-by: dholmes
2020-01-16 11:09:21 +03:00
bobv
4feb1771cd 8211740: [AOT] -XX:AOTLibrary doesn't accept windows path
Reviewed-by: kvn, iignatyev
2020-01-16 11:09:20 +03:00
vdeshpande
ad589e3b4c 8221092: UseAVX=3 has performance degredation on Skylake (X7) processors
Summary: Fix for UseAVX=3 has performance degredation on Skylake (X7) processors
Reviewed-by: kvn
2020-01-16 11:09:19 +03:00
weijun
b19e4e7e32 8227381: GSS login fails with PREAUTH_FAILED
Reviewed-by: xuelei
2020-01-16 11:09:18 +03:00
weijun
31b44bf445 8227061: KDC.java test behaves incorrectly when AS-REQ contains a PAData not PA-ENC-TS-ENC
Reviewed-by: mullan
2020-01-16 11:09:17 +03:00
weijun
faa4d7370d 8226719: Kerberos login to Windows 2000 failed with "Inappropriate type of checksum in message"
Reviewed-by: xuelei
2020-01-16 11:09:16 +03:00
mseledtsov
8104d8dd82 8230115: Problemlist JFR TestNetworkUtilization test
Summary: Added test to the problem list
Reviewed-by: dcubed
2020-01-16 11:09:15 +03:00
azeller
5b11fae577 8231457: Asserts on AIX because os::elapsed_counter() is not monotonic
Summary: replace gettimeofday with javaTimeNanos
Reviewed-by: dholmes, stuefe
2020-01-16 11:09:14 +03:00
mbalao
1b1ee81b21 8233944: Make KerberosPrincipal.KRB_NT_ENTERPRISE field package private
Reviewed-by: clanger
2020-01-16 11:09:13 +03:00
fyang
87efc9126a 8233839: aarch64: missing memory barrier in NewObjectArrayStub and NewTypeArrayStub
Reviewed-by: adinn
2020-01-16 11:09:12 +03:00
lmesnik
d7c34d2bcc 8230881: serviceability/sa/TestJmapCore tests fail with java.lang.RuntimeException: Could not find dump file
Reviewed-by: dholmes, cjplummer
2020-01-16 11:09:10 +03:00
cjplummer
a7cf6a8277 8228625: [TESTBUG] sun/tools/jhsdb/JShellHeapDumpTest.java fails with RuntimeException 'JShellToolProvider' missing from stdout/stderr
Summary: Give jshell process time to fully startup and stablize before requesting heap dump
Reviewed-by: sspitsyn, amenkov
2020-01-16 11:09:09 +03:00
thartmann
8e94d9247e 8230388: Problemlist additional compiler/rtm tests
Summary: Putting tests on the problem list.
Reviewed-by: roland
2020-01-16 11:09:08 +03:00
dcubed
e76ae699d3 8226899: Problemlist compiler/rtm tests
Reviewed-by: kvn
2020-01-16 11:09:07 +03:00
igerasim
5a324e6eae 8233886: TEST_BUG jdk/java/net/CookieHandler/B6791927.java hit hardcoded expiration date
Reviewed-by: chegar, vtewari
2020-01-16 11:09:06 +03:00
rriggs
10e4cc830d 8224505: TestQuotedLogOutput failure after ProcessBuilder changes
Reviewed-by: alanb
2020-01-16 11:09:05 +03:00
dfuchs
59ae671635 8216363: NullPointerException in java.util.logging.Handler#isLoggable
Summary: The implementation is changed to match the spec: isLoggable(null) returns false.
Reviewed-by: mchung, lancea
2020-01-16 11:09:04 +03:00
jnimeh
980886ace9 8211866: TLS 1.3 CertificateRequest message sometimes offers disallowed signature algorithms
Reviewed-by: xuelei
2020-01-16 11:09:03 +03:00
serb
74e6b1d499 8211147: Incorrect comparator com.sun.beans.introspect.MethodInfo.MethodOrder
Reviewed-by: prr
2020-01-16 11:09:02 +03:00
weijun
171853966e 8209771: jdk.test.lib.Utils::runAndCheckException error
Reviewed-by: dholmes
2020-01-16 11:09:01 +03:00
kvn
9082655773 8202359: [GRAAL] compiler/uncommontrap/TestDeoptOOM.java failed with OutOfMemoryError
Summary: exclude this test from running with Java Graal
Reviewed-by: iveresov
2020-01-16 11:09:00 +03:00
igerasim
b46b385c97 8200381: Typos in javadoc - missing verb "be" and alike
Reviewed-by: lancea, darcy, wetmore
2020-01-16 11:08:59 +03:00
michaelm
c415d45310 8185898: setRequestProperty(key, null) results in HTTP header without colon in request
Reviewed-by: chegar, dfuchs
2020-01-16 11:08:58 +03:00
serb
5c26690e26 8144125: [macOS] java/awt/event/ComponentEvent/MovedResizedTwiceTest/MovedResizedTwiceTest.java failed automatically
Reviewed-by: dmarkov
2020-01-16 11:08:57 +03:00
jpai
9f4825e253 8232879: Writing out data with the Zip File System leads to a CRC failure
Reviewed-by: lancea, clanger
Contributed-by: Jaikiran Pai <jai.forums2013@gmail.com>
2020-01-16 11:08:55 +03:00
mbaesken
32ac71c499 8233203: fix non-product build on AIX when compiling with xlc16/legacy-xlc
Reviewed-by: clanger, mdoerr
2020-01-16 11:08:54 +03:00
dmarkov
101cd5996c 8225505: ctrl-F1 does not show the tooltip of a menu item (JMenuItems)
Reviewed-by: psadhukhan, serb
2020-01-16 11:08:53 +03:00
serb
0359fc6005 8221246: NullPointerException within Win32ShellFolder2
Reviewed-by: prr
2020-01-16 11:08:52 +03:00
lucy
1064cda1bd 8231403: [ppc]: Align ReservedCodeCacheSize default value with other platforms
Reviewed-by: goetz
2020-01-16 11:08:51 +03:00
mbaesken
33465f55e9 8232381: add result NULL-checking to freetypeScaler.c
Reviewed-by: clanger, prr
2020-01-16 11:08:50 +03:00
ecaspole
0e0762b050 8233075: JFR - nmetods - misspelled in several places
Reviewed-by: hseigel, mseledtsov
2020-01-16 11:08:49 +03:00
roland
262666e870 8231620: assert(bol->is_Bool()) crash during split if due to FastLockNode
Reviewed-by: vlivanov, thartmann
2020-01-16 11:08:47 +03:00
mbalao
88be2910ce 8215032: Support Kerberos cross-realm referrals (RFC 6806)
Reviewed-by: weijun
2020-01-16 11:08:46 +03:00
neliasso
c75fb10878 8214773: Replace use of thread unsafe strtok
Reviewed-by: thartmann, dholmes
2020-01-16 11:08:45 +03:00
mdoerr
20ed2bda8e 8216426: Usage of array placement new may lead to memory corruption
Reviewed-by: rehn, kbarrett, rkennke, eosterlund
2020-01-16 11:08:43 +03:00
bobv
0300ab165a 8220476: Incorrect GPL header in src/jdk.internal.jvmstat/share/classes/sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile.java
Reviewed-by: lancea
2020-01-16 11:08:42 +03:00
gadams
8fe3161d7e 8220474: Incorrect GPL header in src/java.instrument/share/classes/java/lang/instrument/package-info.java
Reviewed-by: dholmes
2020-01-16 11:08:41 +03:00
dtitov
610d83566b 8221532: Incorrect copyright header in FileSystemSupport_md.c
Reviewed-by: cjplummer, gadams
2020-01-16 11:08:40 +03:00
prr
620deb17d4 8212071: Need to set the FreeType LCD Filter to reduce fringing.
Reviewed-by: prr, lbourges
Contributed-by: John Neffenger <john@status6.com>
2020-01-16 11:08:39 +03:00
gromero
c781a9f263 8209972: [GRAAL] Don't run RTM tests with Graal
Reviewed-by: kvn, goetz
2020-01-16 11:08:38 +03:00
ihse
ff3df98fdf 8214311: dtrace gensrc has missing dependencies
Reviewed-by: tbell, erikj, clanger
2020-01-16 11:08:37 +03:00
cito
976cf67f3f 8223697: jfr tool can't format duration values greater than 1 minute
Reviewed-by: egahlin
2020-01-16 11:08:36 +03:00
egahlin
cd2cea1e6f 8215771: The jfr tool should pretty print reference chains
Reviewed-by: mgronlun
2020-01-16 11:08:35 +03:00
mdoerr
49820156ad 8232005: [s390, PPC64] More exception checks missing in interpreter
Reviewed-by: rrich, goetz
2020-01-16 11:08:34 +03:00
xuelei
cafadfe2fc 8218580: endpoint identification algorithm should be case-insensitive
Reviewed-by: jnimeh
2020-01-16 11:08:33 +03:00
rkennke
0bd132ffb4 8231085: C2/GC: Better GC-interface for expanding clone
Reviewed-by: eosterlund
2020-01-16 11:08:32 +03:00
jiefu
09c387dd3a 8229169: False failure of GenericTaskQueue::pop_local on architectures with weak memory model
Reviewed-by: mdoerr, kbarrett, tschatzl
2020-01-16 11:08:30 +03:00
iignatyev
b6284527df 8207922: ctw of jdk.security.auth failed with "Unexpected zero exit codebefore finishing all compilations"
Reviewed-by: roland, thartmann
2020-01-16 11:08:29 +03:00
fyang
1fa5608196 8231988: Unexpected test result caused by C2 IdealLoopTree::do_remove_empty_loop
Summary: Duplicate cmp node in empty loop if it has other users
Reviewed-by: neliasso, thartmann
Contributed-by: wanghuang3@huawei.com, xietuo@huawei.com
2020-01-16 11:08:28 +03:00
jwilhelm
f83757e077 8214052: [testbug] vmTestbase/vm/compiler/CodeCacheInfoOnCompilation - wrong shell used
Reviewed-by: jwilhelm
Contributed-by: merkel05@gmail.com
2020-01-16 11:08:27 +03:00
shade
7ba305cd72 8232051: Epsilon should warn about Xms/Xmx/AlwaysPreTouch configuration
Reviewed-by: zgu
2020-01-16 11:08:26 +03:00
chagedorn
fd33162fc5 8232874: Add missing test for 8230062
Summary: Adds a missing test which verifies the bug fix of 8230062.
Reviewed-by: roland, thartmann
2020-01-16 11:08:25 +03:00
dfuchs
7194705ba6 8221395: HttpClient leaving connections in CLOSE_WAIT state until Java process ends
Summary: When a non WebSocket connection is not returned to the pool, it needs to be closed even if HttpConnection::isOpen yields false.
Reviewed-by: chegar, michaelm
2020-01-16 11:08:24 +03:00
mbaesken
1bef94548a 8215411: some GetByteArrayElements calls miss corresponding Release
Reviewed-by: dholmes, jcbeyler
2020-01-16 11:08:23 +03:00
kbarrett
e6ceb0fe6a 8229156: ProblemList gc/stress/gclocker/TestExcessGCLockerCollections.java
Reviewed-by: shade
2020-01-16 11:08:21 +03:00
mbaesken
2f52b1143b 8231751: on aix handle Power 9 in os::get_summary_cpu_info
Reviewed-by: clanger, mdoerr
2020-01-16 11:08:20 +03:00
ysuenaga
d4798270c1 8232592: <Unknown compiled code> is shown in jstack mixed mode
Reviewed-by: cjplummer, phh
2020-01-16 11:08:19 +03:00
rschmelter
e6ecc6977e 8191521: handle long relative path specified in -Xbootclasspath/a on windows
8231885: Fix/remove malformed assert in os_windows.cpp
8231930: Windows build fails after JDK-8191521
Reviewed-by: ccheung, clanger
2020-01-16 11:08:18 +03:00
cito
54594a3a5a 8225694: Destination option missing in FlightRecorderMXBeanImpl
Reviewed-by: egahlin
2020-01-16 11:08:17 +03:00
serb
c9ae2287e7 8134672: [TEST_BUG] Some tests should check isDisplayChangeSupported
Reviewed-by: prr
2020-01-16 11:08:16 +03:00
serb
6a0075a0d9 8215105: java/awt/Robot/HiDPIScreenCapture/ScreenCaptureTest.java: Wrong Pixel Color
Reviewed-by: prr
2020-01-16 11:08:15 +03:00
serb
131c15e84a 8225101: Crash at sun.awt.X11.XlibWrapper.XkbGetUpdatedMap when change keybord map
Reviewed-by: prr, pbansal
2020-01-16 11:08:14 +03:00
poonam
139cef3f71 8229420: [Redo] jstat reports incorrect values for OU for CMS GC
Reviewed-by: tschatzl, sgehwolf
2020-01-16 11:08:12 +03:00
vkempik
29dcde44a9 8229872: (fs) Increase buffer size used with getmntent
Summary: Dynamically allocate memory for getmntent
Reviewed-by: alanb
2020-01-16 11:08:10 +03:00
rhalade
0be3a3d510 8231887: ComodoCA.java fails because certificate was revoked
Reviewed-by: mullan, clanger
2020-01-16 11:08:09 +03:00
dfuchs
41f7f7ec92 8216561: HttpClient: The logic of retry on connect exception is inverted
Summary: Allows retry on connect exception by default, ensuring that the second attempt takes into account the time spent in the first attempt in order to honor the connect timeout value (if present).
Reviewed-by: chegar
2020-01-16 11:08:07 +03:00
erikj
194ff2a76c 8213005: Missing symbols in hs_err files on Windows after JDK-8212028
Reviewed-by: ctornqvi
2020-01-16 11:08:06 +03:00
erikj
6c6ebdfe5c 8212028: Use run-test makefile framework for testing in Oracle's Mach5
Reviewed-by: ihse
2020-01-16 11:08:05 +03:00
erikj
6153b10950 8211037: Load jib jars dynamically from JibArtifactManager
Reviewed-by: ihse
2020-01-16 11:08:04 +03:00
ccheung
530914ca89 8190737: use unicode version of the canonicalize() function to handle long path on windows
Summary: also calling CreateFileW in zip_util.c to handle long path
Reviewed-by: sherman, iklam
2020-01-16 11:08:02 +03:00
igerasim
e5113d0e43 8230303: JDB hangs when running monitor command
Reviewed-by: sspitsyn
2020-01-16 11:08:01 +03:00
chagedorn
0d8c2743b8 8230062: assert(i == p->size()-1) failed: must be last element of the pack
Summary: Avoids vectorization of reduction chain in which an intermediate result is used.
Reviewed-by: roland, thartmann
2020-01-16 11:08:00 +03:00
shade
be9046a53e 8231503: [TESTBUG] compiler/{jvmci,aot} tests should not run with GCs that do not support JVMCI/AOT
Reviewed-by: kvn, dlong, stefank
2020-01-16 11:07:59 +03:00
stefank
e65e644a0f 8221913: Add GC.selected() jtreg-ext function
Reviewed-by: kbarrett, pliden
2020-01-16 11:07:58 +03:00
joehw
f8d10b4428 8016914: CoreDocumentImpl.setXmlVersion NPE
Reviewed-by: lancea
2020-01-16 11:07:57 +03:00
coffeys
c775ddc60a 8231770: Test java/util/zip/FlaterTest.java fails with -Xcheck:jni
Reviewed-by: alanb, coffeys, chegar
Contributed-by: kiran.sidhartha.ravikumar@oracle.com
2020-01-16 11:07:56 +03:00
jiefu
4aef972c9f 8229020: Failure on CPUs allowing loads reordering: assert(_tasks[t] == 1) failed: What else?
Reviewed-by: tschatzl, kbarrett
2020-01-16 11:07:55 +03:00
serb
0c2b9693a2 8213568: Typo in java/awt/GraphicsEnvironment/LoadLock/GE_init5.java
Reviewed-by: prr
2020-01-16 11:07:53 +03:00
dtitov
e1391531d8 8220175: serviceability/dcmd/framework/VMVersionTest.java fails with a timeout
Reviewed-by: sspitsyn, cjplummer
2020-01-16 11:07:52 +03:00
serb
d6b010d653 8219504: Test for JDK-8211435 can be run on all platforms
Reviewed-by: kaddepalli, dmarkov, sveerabhadra
2020-01-16 11:07:51 +03:00
kbarrett
eaf5d37349 8048556: Unnecessary GCLocker-initiated young GCs
Summary: Fixed recognition of unnecessary GCLocker collections.
Reviewed-by: pliden, tschatzl
2020-01-16 11:07:50 +03:00
egahlin
5c230b3b50 8224217: RecordingInfo should use textual representation of path
Reviewed-by: mgronlun
2020-01-16 11:07:49 +03:00
shade
2adb57d11e 8231201: hs_err should print coalesced safepoint operations in Events section
Reviewed-by: phh, dholmes
2020-01-16 11:07:48 +03:00
pliden
47f5eccb68 8221456: nmethod::make_unloaded() clears _method member too early
Reviewed-by: eosterlund, thartmann
2020-01-16 11:07:47 +03:00
prr
e80dcbc58d 8229800: WindowsServerCore 1809 does not provide d2d1.dll library required by awt.dll
Reviewed-by: jdv, serb, aaivanov
2020-01-16 11:07:46 +03:00
mbaesken
7864dbf77b 8228368: avoid incompatible pointer to integer conversion initializing gint in gtk2_interface
Reviewed-by: prr
2020-01-16 11:07:45 +03:00
dzhou
57add311ce 8215913: [Test_bug]java/util/Locale/LocaleProvidersRun.java failed on de_DE and ja_JP locale.
Reviewed-by: naoto, rgoel, rriggs
2020-01-16 11:07:43 +03:00
pliden
ccdec15cf8 8231294: ZGC: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted002 fails
Reviewed-by: shade, dholmes
2020-01-16 11:07:42 +03:00
pliden
78a3117309 8231296: ZGC: vmTestbase/nsk/jvmti/Allocate/alloc001/ fails
Reviewed-by: sspitsyn, dcubed, iignatyev
2020-01-16 11:07:41 +03:00
bpb
934b31bb1f 8229022: BufferedReader performance can be improved by using StringBuilder
Reviewed-by: igerasim, vtewari, dfuchs
2020-01-16 11:07:40 +03:00
aeubanks
7dfb4e1422 8229899: Make java.io.File.isInvalid() less racy
Reviewed-by: alanb, martin, shade
2020-01-16 11:07:39 +03:00
thartmann
849ccb0f71 8231223: C2's conditional move optimization fails with assert(bol->Opcode() == Op_Bool) failed
Summary: Bail out if the range check If has an Opaque4Node input instead of a BoolNode.
Reviewed-by: roland, kvn
2020-01-16 11:07:38 +03:00
roland
23635b2c44 8230061: # assert(mode == ControlAroundStripMined && use == sfpt) failed: missed a node
Reviewed-by: thartmann, neliasso
2020-01-16 11:07:37 +03:00
shade
0da8b2e292 8230671: x86_32 build failures after JDK-8229496
Reviewed-by: thartmann
2020-01-16 11:07:36 +03:00
thartmann
fd962940f0 8229496: SIGFPE (division by zero) in C2 OSR compiled method
Summary: Adding a CastNode to keep the dependency between the div/mod operation and the zero check.
Reviewed-by: roland, mdoerr
2020-01-16 11:07:34 +03:00
rrich
d44fd1fc25 8230363: C2: Let ConnectionGraph::not_global_escape(Node* n) return false if n is not in the CG
Reviewed-by: thartmann, mdoerr
2020-01-16 11:07:32 +03:00
roland
c6e27a2803 8231665: 8231055 broke escapeAnalysis/TestSelfArrayCopy.java
Reviewed-by: thartmann
2020-01-16 11:07:31 +03:00
roland
f8d3ac276a 8231055: C2: arraycopy with same non escaping src and dest but different positions causes wrong execution
Reviewed-by: thartmann, vlivanov
2020-01-16 11:07:30 +03:00
clanger
2963e93679 8223869: Problem list java/awt/FontMetrics/MaxAdvanceIsMax.java on more platforms
Reviewed-by: goetz
2020-01-16 11:07:29 +03:00
roland
e8f49f1c08 8229483: Sinking load out of loop may trigger: assert(found_sfpt) failed: no node in loop that's not input to safepoint
Reviewed-by: thartmann, neliasso
2020-01-16 11:07:28 +03:00
mbaesken
27ebcae325 8229284: jdk/internal/platform/cgroup/TestCgroupMetrics.java fails for - memory:getMemoryUsage
Reviewed-by: mseledtsov, sgehwolf
2020-01-16 11:07:27 +03:00
clanger
eff0d1b71b 8231318: Several compiler/aot tests fail for JDK11 on Windows when only MSVC 2017 is installed
Reviewed-by: kvn
2020-01-16 11:07:26 +03:00
sgehwolf
56c966e762 8228434: jdk/net/Sockets/Test.java fails after JDK-8227642
Summary: Move container constant to separate test lib class
Reviewed-by: alanb
2020-01-16 11:07:24 +03:00
sgehwolf
63e4311f2e 8227642: [TESTBUG] Make docker tests podman compatible
Reviewed-by: mseledtsov, iignatyev
2020-01-16 11:07:23 +03:00
bobv
ae26ba75f9 8224502: [TESTBUG] JDK docker test TestSystemMetrics.java fails with access issues and OOM
Reviewed-by: sgehwolf, mseledtsov
2020-01-16 11:07:22 +03:00
simonis
8b929de8d4 8220528: [AIX] Fix basic Xinerama and Xrender functionality
Reviewed-by: clanger, stuefe, serb
2020-01-16 11:07:21 +03:00
mgronlun
5839e78f3e 8227605: Kitchensink fails "assert((((klass)->trace_id() & (JfrTraceIdEpoch::leakp_in_use_this_epoch_bit())) != 0)) failed: invariant"
Reviewed-by: dholmes, dcubed, egahlin
2020-01-16 11:07:20 +03:00
mgronlun
549fdb70a7 8227411: TestTimeMultiple.java failed "assert(!lease()) failed: invariant"
Reviewed-by: egahlin
2020-01-16 11:07:19 +03:00
mgronlun
07d0133874 8217362: Emergency dump does not work when disk=false is set
Reviewed-by: egahlin, ysuenaga
Contributed-by: yasuenag@gmail.com
2020-01-16 11:07:18 +03:00
alanb
61a4546299 8215449: Several tests failing when jtreg run with -vmoption:--illegal-access=deny
Reviewed-by: redestad, mchung, jjg, adinn, clanger
2020-01-16 11:07:17 +03:00
mseledtsov
f90998904e 8228687: [TESTBUG] exclude Container tests from hotspot_misc group
Summary: Excluded hotspot_containers from hotspot_misc
Reviewed-by: dcubed, adinn
2020-01-16 11:07:16 +03:00
vromero
72b5b8fe0b 8210789: langtools/tools/javac/T8152616.java missing @modules
Reviewed-by: jjg
2020-01-16 11:07:14 +03:00
shurailine
1e549d3f92 8208364: java/lang/reflect/callerCache/ReflectionCallerCacheTest.java missing module dependencies declaration
Reviewed-by: mchung
2020-01-16 11:07:13 +03:00
mbaesken
b1a2d8708a 8228902: add os::dll_load to the unified logging os category
Reviewed-by: coleenp, mdoerr
2020-01-16 11:07:12 +03:00
mbaesken
f1c036af5f 8230861: missing ReleaseStringUTFChars in Java_sun_security_pkcs11_wrapper_PKCS11_connect
Reviewed-by: alanb, stuefe
2020-01-16 11:07:11 +03:00
mbaesken
ac5e1d600c 8230856: Java_java_net_NetworkInterface_getByName0 on unix misses ReleaseStringUTFChars in early return
Reviewed-by: dfuchs, stuefe, vtewari
2020-01-16 11:07:10 +03:00
mbaesken
a6d9a208f2 8230900: missing ReleaseStringUTFChars in java.desktop native code
Reviewed-by: clanger, prr
2020-01-16 11:07:09 +03:00
mbaesken
4e995ce9d1 8230901: missing ReleaseStringUTFChars in serviceability native code
Reviewed-by: stuefe, sspitsyn
2020-01-16 11:07:08 +03:00
jiefu
9dee330c79 8230943: False deadlock detection with -XX:+CIPrintCompileQueue after JDK-8163511
Reviewed-by: dholmes, thartmann
2020-01-16 11:07:07 +03:00
azeller
fdc03195eb 8230110: TestLinkageErrorInGenerateOopMap times out
Reviewed-by: stuefe, clanger, thartmann
2020-01-16 11:07:06 +03:00
mgronlun
67ed8faeec 8224172: assert(jfr_is_event_enabled(id)) failed: invariant
Reviewed-by: dcubed, dholmes
2020-01-16 11:07:05 +03:00
egahlin
536200abd3 8216064: -XX:StartFlightRecording:settings= doesn't work properly
Reviewed-by: mgronlun
2020-01-16 11:07:03 +03:00
stuefe
37fa50ad95 8227035: JVM::printFlags fails in native OOM situations
Reviewed-by: goetz, gziemski
2020-01-16 11:07:02 +03:00
stuefe
9c5d154d85 8227032: MetaspaceUtils::print_report crashes when called before initialization
Reviewed-by: tschatzl, goetz
2020-01-16 11:07:01 +03:00
stuefe
1dbb83d6ec 8227031: Print NMT statistics on fatal errors
Reviewed-by: mbaesken, mdoerr
2020-01-16 11:07:00 +03:00
mbalao
896fe14e07 8230923: SunJSSE is not properly initialized in FIPS mode from a configuration file
Reviewed-by: andrew
2020-01-16 11:06:58 +03:00
clanger
3574794cea 8231247: (zipfs) Test failure in jdk/nio/zipfs/InvalidZipHeaderTests.java after backport of JDK-8222807
Reviewed-by: goetz
2020-01-16 11:06:57 +03:00
mseledtsov
ba91288a28 8226779: [TESTBUG] Test JFR API from Java agent
Summary: Created new tests for JFR plus Java Agent
Reviewed-by: egahlin
2020-01-16 11:06:56 +03:00
egahlin
ed44eb9758 8214750: Unnecessary <p> tags in jfr classes
Reviewed-by: mgronlun
2020-01-16 11:06:55 +03:00
rschmelter
5f32cecaf1 8227435: Perf::attach() should not throw a java.lang.Exception
Reviewed-by: sspitsyn, clanger, dholmes
2020-01-16 11:06:54 +03:00
dcubed
cca764cceb 8227338: templateInterpreter.cpp: copy_table() needs to be safer
Reviewed-by: dholmes, eosterlund, sspitsyn, kbarrett
2020-01-16 11:06:53 +03:00
mbaesken
fd530693a7 8223438: add VirtualizationInformation JFR event
Reviewed-by: clanger, egahlin
2020-01-16 11:06:51 +03:00
lancea
ed6fba57ee 8222807: Address iteration with invalid ZIP header entries
Reviewed-by: redestad, clanger
2020-01-16 11:06:50 +03:00
rschmelter
d0b47d84dd 8222529: sun.jdwp.listenerAddress agent property uses wrong encoding
Reviewed-by: sspitsyn, amenkov, clanger, erikj
2020-01-16 11:06:49 +03:00
clanger
23bcfb1622 8222440: (zipfs) JarFileSystem does not correctly handle versioned entries if no root entry is present
Reviewed-by: lancea
2020-01-16 11:06:48 +03:00
lancea
b8fca4849f 8211919: ZipDirectoryStream should provide a stream of paths that are relative to the directory
Reviewed-by: alanb, clanger
2020-01-16 11:06:47 +03:00
sherman
f3610a5923 8211385: (zipfs) ZipDirectoryStream yields a stream of absolute paths when directory is relative
Reviewed-by: alanb, lancea
2020-01-16 11:06:46 +03:00
stuefe
aa0e1862af 8214975: No hs-err file if fatal error is raised during dynamic initialization
Reviewed-by: dholmes, dcubed, clanger
2020-01-16 11:06:44 +03:00
sgehwolf
cae492bf2c 8227397: Add --with-extra-asflags configure option
Reviewed-by: phh
2020-01-16 11:06:43 +03:00
roland
9ce169d3f0 8229701: aarch64: C2 OSR compilation fails with "shouldn't process one node several times" in final graph reshaping
Reviewed-by: thartmann, kvn
2020-01-16 11:06:42 +03:00
jiefu
958579aa25 8230376: [TESTBUG] runtime/StackTrace/HiddenFrameTest.java fails with release VM
Reviewed-by: dholmes
2020-01-16 11:06:41 +03:00
coleenp
1d9f47e5b1 8216977: ShowHiddenFrames use in java_lang_StackTraceElement::fill_in appears broken
Summary: Return NULL source file and negative line number for hidden frames.
Reviewed-by: dholmes, hseigel
2020-01-16 11:06:40 +03:00
roland
c3d8700c8c 8209835: Aarch64: elide barriers on all volatile operations
Reviewed-by: aph, adinn
2020-01-16 11:06:39 +03:00
mbaesken
f5d33c65a9 8229182: runtime/containers/docker/TestMemoryAwareness.java test fails on SLES12
Reviewed-by: clanger, mseledtsov
2020-01-16 11:06:37 +03:00
mbaesken
8b940e1571 8230769: BufImg_SetupICM add ReleasePrimitiveArrayCritical call in early return
Reviewed-by: prr, stuefe
2020-01-16 11:06:36 +03:00
mbaesken
b39decf7e5 8230711: ConnectionGraph::unique_java_object(Node* N) return NULL if n is not in the CG
Reviewed-by: mdoerr
2020-01-16 11:06:35 +03:00
mbaesken
8064329207 8230466: check malloc/calloc results in jdk.hotspot.agent
Reviewed-by: cjplummer, ysuenaga, sspitsyn
2020-01-16 11:06:34 +03:00
coleenp
9af589e612 8210559: ClassLoaderData Symbols can leak
Summary: unrefcount the symbol names when the CLD is destroyed
Reviewed-by: lfoltan, jiangli, iklam
2020-01-16 11:06:33 +03:00
shade
2edd846525 8230813: Add JDK-8010500 to compiler/loopopts/superword/TestFuzzPreLoop.java bug list
Reviewed-by: zgu
2020-01-16 11:06:32 +03:00
shade
4f861ec281 8230238: Add another regression test for JDK-8134739
Reviewed-by: kvn
2020-01-16 11:06:30 +03:00
thartmann
b698664672 8213014: Crash in CompileBroker::make_thread due to OOM
Summary: Added missing null checks and checks for pending exception.
Reviewed-by: kvn, dholmes, mdoerr
2020-01-16 11:06:29 +03:00
smarks
9acfc97d0a 8227368: EnumSet.class serialization broken in JDK 9+
Reviewed-by: plevart, clanger
2020-01-16 11:06:28 +03:00
mdoerr
9ee5c461a3 8213604: Fix missing includes after JDK-8212673
Reviewed-by: tschatzl, roland
2020-01-16 11:06:27 +03:00
egahlin
afc75a9be5 8216283: Allow shorter method sampling interval than 10 ms
Reviewed-by: mgronlun
2020-01-16 11:06:26 +03:00
cito
4c3cd262eb 8221569: JFR tool produces incorrect output when both --categories and --events are specified
Reviewed-by: mgronlun
Contributed-by: chihiro.ito@oracle.com, erik.gahlin@oracle.com
2020-01-16 11:06:24 +03:00
mseledtsov
d58f2786e0 8222888: [TESTBUG] docker/TestJFREvents.java fails due to "RuntimeException: JAVA_MAIN_CLASS_ is not defined"
Summary: Introduced unique environment variable
Reviewed-by: egahlin, lmesnik, sgehwolf
2020-01-16 11:06:22 +03:00
mseledtsov
07f40b07fe 8221711: [TESTBUG] create more tests for JFR in container environment
Summary: Added test cases for environment and network events
Reviewed-by: egahlin
2020-01-16 11:06:21 +03:00
ysuenaga
05fa67b8aa 8220555: JFR tool shows potentially misleading message when it cannot access a file
Reviewed-by: egahlin, mseledtsov
2020-01-16 11:06:20 +03:00
thartmann
bb0a118507 8229016: C2 scalarization crashes with assert(node->Opcode() == Op_CastP2X) failed: ConvP2XNode required
Summary: Detect array copy to self to avoid emitting another load to the to-be-removed allocation.
Reviewed-by: kvn
2020-01-16 11:06:19 +03:00
rkennke
b440240952 8212673: jtreg/applications/runthese/RunThese30M.java fails in C2 with "assert(!had_error) failed: bad dominance"
Reviewed-by: thartmann, kvn, shade
2020-01-16 11:06:17 +03:00
neliasso
f593eedf20 8218468: Load barrier slow path node should be MachTypeNode
Reviewed-by: shade, pliden, kvn
2020-01-16 11:06:16 +03:00
cjplummer
38ca7f71fa 8220352: Crash with assert(external_guard || result != __null) failed: Invalid JNI handle
Summary: Don't delete globalrefs that might still be referenced
Reviewed-by: gadams, jcbeyler, sspitsyn
2020-01-16 11:06:15 +03:00
hseigel
00b69ecc81 8215699: -Xlog::file cannot be used with named pipe
Summary: If the log file is a named pipe then change the default file_count to zero so no log file rotation is attempted.
Reviewed-by: lfoltan, coleenp
2020-01-16 11:06:14 +03:00
shade
d7590fb32f 8230646: Epsilon does not extend TLABs to max size
Reviewed-by: tschatzl, zgu
2020-01-16 11:06:13 +03:00
mikael
c61023ee9d 8218935: Make jfr strncpy uses GCC 8.x friendly
Reviewed-by: clanger
2020-01-16 11:06:12 +03:00
mgronlun
f47afca78a 8229437: assert(is_aligned(ref, HeapWordSize)) failed: invariant
Reviewed-by: egahlin
2020-01-16 11:06:10 +03:00
mgronlun
d9ddb3e20b 8228834: Regression caused by JDK-8214542 not installing complete checkpoint data to candidates
Reviewed-by: egahlin
2020-01-16 11:06:09 +03:00
mgronlun
6f692c140d 8214542: JFR: Old Object Sample event slow on a deep heap in debug builds
Reviewed-by: egahlin, rwestberg
2020-01-16 11:06:08 +03:00
xliu
905d073f20 8229450: C2 compilation fails with assert(found_sfpt) failed
Reviewed-by: roland, thartmann
2020-01-16 11:06:07 +03:00
eosterlund
64a8947f2c 8210158: Accessorize JFR getEventWriter() intrinsics
Reviewed-by: kvn, neliasso, roland, rbackman
2020-01-16 11:06:05 +03:00
eosterlund
9257edcd56 8208601: Introduce native oop barriers in C2 for OopHandle
Reviewed-by: neliasso, kvn
2020-01-16 11:06:04 +03:00
naoto
a04e50c329 8227127: Era designator not displayed correctly using the COMPAT provider
Reviewed-by: rriggs
2020-01-16 11:06:03 +03:00
eosterlund
84bfbbb5c9 8208582: Introduce native oop barriers in C1 for OopHandle
Reviewed-by: coleenp, kvn
2020-01-16 11:06:02 +03:00
ctornqvi
c16692d216 8212627: [TESTBUG] runtime/CreateMirror/ArraysNewInstanceBug.java timed out
Reviewed-by: coleenp, dcubed, hseigel
2020-01-16 11:06:01 +03:00
thartmann
63803b0322 8210387: C2 compilation fails with "assert(node->_last_del == _last) failed: must have deleted the edge just produced"
Summary: Refresh iterator and start from the beginning while there is progress when removing dead regions.
Reviewed-by: kvn
2020-01-16 11:06:00 +03:00
ascarpino
58d18a3f0e 8214098: sun.security.ssl.HandshakeHash.T12HandshakeHash constructor check backwards.
Reviewed-by: xuelei
2020-01-16 11:05:58 +03:00
neliasso
d988aa4291 8224538: LoadBarrierNode::common_barrier must check address
Reviewed-by: thartmann, kvn
2020-01-16 11:05:57 +03:00
thartmann
cf1d91b771 8228772: C2 compilation fails due to unschedulable graph if DominatorSearchLimit is reached
Summary: Ignore membar if the load is already control dependent on it.
Reviewed-by: neliasso, kvn
2020-01-16 11:05:56 +03:00
neliasso
ed6dd0063c 8215755: ZGC: split_barrier_thru_phi: check number of inputs of phi
Reviewed-by: pliden, thartmann
2020-01-16 11:05:55 +03:00
pliden
2485fd3607 8215708: ZGC: Add missing LoadBarrierNode::size_of()
Reviewed-by: eosterlund, neliasso
2020-01-16 11:05:54 +03:00
roland
4e678448cc 8209691: Allow MemBar on single memory slice
Reviewed-by: kvn, vlivanov
2020-01-16 11:05:52 +03:00
stuefe
e47b5a7cce 8225225: stringStream internal buffer should always be zero terminated
Reviewed-by: coleenp, dholmes
2020-01-16 11:05:51 +03:00
stuefe
11525a9f35 8220394: bufferedStream does not honor size limit
Reviewed-by: dholmes, clanger
2020-01-16 11:05:49 +03:00
mseledtsov
cb6a1b8ab4 8213448: [TESTBUG] enhance jfr/jvm/TestDumpOnCrash
Summary: added 2 more crash scenarios, removed dumponexit, and more
Reviewed-by: egahlin
2020-01-16 11:05:48 +03:00
iklam
6b97023215 8209647: constantPoolHandle::constantPoolHandle(ConstantPool*) when precompiled header is disabled
Summary: Added fieldDescriptor.inline.hpp
Reviewed-by: coleenp, shade
2020-01-16 11:05:47 +03:00
iklam
d5af21716b 8209545: Simplify HeapShared::archive_module_graph_objects
Summary: Added archivable_static_fields array in heapShared.cpp
Reviewed-by: jiangli
2020-01-16 11:05:45 +03:00
iklam
069a255c6b 8206115: Use shared macros for JavaClasses::compute_offsets and MetaspaceShared::serialize_well_known_classes
Summary: Added BASIC_JAVA_CLASSES_DO in javaClasses.hpp
Reviewed-by: jiangli, redestad, coleenp
2020-01-16 11:05:44 +03:00
redestad
8d20f0cbcf 8209120: Archive the Integer.IntegerCache
Reviewed-by: jiangli, alanb, plevart, iklam, mchung
2020-01-16 11:05:43 +03:00
jiangli
cb086a6016 8207263: Store the Configuration for system modules into CDS archive.
Summary: Archive boot layer Configuration.
Reviewed-by: redestad, iklam, ccheung
2020-01-16 11:05:42 +03:00
redestad
3c65b74093 8209003: Consolidate use of empty collections in java.lang.module
Reviewed-by: alanb, mchung
2020-01-16 11:05:40 +03:00
rkennke
7892c95c0b 8213381: Hook to allow GC to inject Node::Ideal() calls
Reviewed-by: kvn, eosterlund, roland
2020-01-16 11:05:39 +03:00
thartmann
8865a01155 8228888: C2 compilation fails with assert "m has strange control"
Summary: Weakened too strong assert.
Reviewed-by: kvn, roland
2020-01-16 11:05:37 +03:00
thartmann
2b7bea7f17 8209833: C2 compilation fails with "assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place"
Summary: Deoptimize if exception is thrown in _clone intrinsic.
Reviewed-by: kvn
2020-01-16 11:05:36 +03:00
roland
481b87fbfa 8216135: C2 assert(!had_error) failed: bad dominance
Reviewed-by: thartmann, kvn
2020-01-16 11:05:35 +03:00
stefank
292eb6d30b 8227086: Use AS_NO_KEEPALIVE loads in HeapDumper
Reviewed-by: kbarrett, sspitsyn
2020-01-16 11:05:34 +03:00
mchung
0183200122 8193325: StackFrameInfo::getByteCodeIndex returns wrong value if bci > 32767
Reviewed-by: coleenp, fparain, shade, plevart
2020-01-16 11:05:33 +03:00
stuefe
25c9571a16 8221406: Windows 32bit build error in NetworkInterface_winXP.c
Reviewed-by: clanger
2020-01-16 11:05:31 +03:00
egahlin
f2cef3852a 8214925: JFR tool fails to execute
Reviewed-by: mgronlun, mseledtsov
2020-01-16 11:05:30 +03:00
egahlin
2699b817ca 8214896: JFR Tool left files behind
Reviewed-by: mgronlun
2020-01-16 11:05:29 +03:00
egahlin
ba1180e7a8 8205516: JFR tool
Reviewed-by: mgronlun
2020-01-16 11:05:28 +03:00
ysuenaga
eefbab5cbd 8209790: SA tools not providing option to connect to debug server
Reviewed-by: sspitsyn, cjplummer
2020-01-16 11:05:26 +03:00
mbaesken
be146bff04 8224958: add os::dll_load calls to event log
Reviewed-by: dholmes, mdoerr, stuefe
2020-01-16 11:05:25 +03:00
stuefe
820f0b9976 8224193: stringStream should not use Resouce Area
Reviewed-by: goetz, coleenp, dholmes
2020-01-16 11:05:24 +03:00
stuefe
12d30d9e28 8222015: Small VM.metaspace improvements
Reviewed-by: jiangli, coleenp
2020-01-16 11:05:23 +03:00
kbarrett
bd821c49f8 8214315: G1: fatal error: acquiring lock SATB_Q_FL_lock/1 out of order with lock tty_lock/0
Summary: Add new 'tty' lock rank.
Reviewed-by: eosterlund, tschatzl
2020-01-16 11:05:22 +03:00
goetz
882499cc66 8229408: Bump update version for OpenJDK: jdk-11.0.6
Reviewed-by: shade
2020-01-16 11:05:21 +03:00
bell-sw
9bfe5d8b56 Merge SunLayoutEngine.java: upstream version:
https://github.com/bell-sw/jdk11u-openjdk/commit/27522184
    https://github.com/JetBrains/JetBrainsRuntime/commit/1e1b932a
    https://github.com/JetBrains/JetBrainsRuntime/commit/bac12d45
2020-01-16 11:05:04 +03:00
prr
a0ac78c60f 8210384: SunLayoutEngine.isAAT() font is expensive on MacOS
Reviewed-by: dmarkov, kaddepalli

Conflicts:
    src/java.desktop/share/classes/sun/font/SunLayoutEngine.java
2020-01-16 11:05:03 +03:00
lbourges
5d6fcc8939 8230728: Thin stroked shapes are not rendered if affine transform has flip bit
Summary: use abs(at.getDeterminant()) in userSpaceLineWidth() to ensure positive value
Reviewed-by: prr, jdv
2020-01-16 11:05:02 +03:00
lbourges
4b9128c444 8231693: Backout "8230728: Thin stroked shapes are not rendered if affine transform has flip bit" from jdk11u
Summary: revert push to jdk11u
Reviewed-by: sgehwolf
2020-01-16 11:05:00 +03:00
lbourges
d448321ce9 8230728: Thin stroked shapes are not rendered if affine transform has flip bit
Summary: use abs(at.getDeterminant()) in userSpaceLineWidth() to ensure positive value
Reviewed-by: prr, jdv
2020-01-16 11:04:59 +03:00
prr
680dadbbe8 8217731: Font rendering and glyph spacing changed from jdk-8 to jdk-11
Summary: Prefer the older v35 freetype byte code interpreter.
Reviewed-by: serb, neugens
Contributed-by: alvdavi@amazon.com

Empty commit! The change is already in place:
    https://github.com/bell-sw/jdk11u-openjdk/commit/a6b7d778
    https://github.com/JetBrains/JetBrainsRuntime/commit/fa160d2d
2020-01-16 11:04:58 +03:00
dbatrak
6c0d706cd9 8220231: Cache HarfBuzz face object for same font's text layout calls
Reviewed-by: prr, avu, serb
Empty commit! The change is already in place:
    https://github.com/bell-sw/jdk11u-openjdk/commit/0300d574
    https://github.com/JetBrains/JetBrainsRuntime/commit/1e1b932a
2020-01-16 11:04:57 +03:00
bell-sw
fe75742083 Simple merge: windows.fontconfig.properties:
https://github.com/bell-sw/jdk11u-openjdk/commit/40094fc9
    https://github.com/JetBrains/JetBrainsRuntime/commit/85065319
    https://github.com/JetBrains/JetBrainsRuntime/commit/9b80ea79
2020-01-16 11:04:57 +03:00
prr
ba595302f4 8208179: Devanagari not shown with logical fonts on Windows after removal of Lucida Sans from JDK
Reviewed-by: jdv, naoto

Conflicts:
    make/data/fontconfig/windows.fontconfig.properties
2020-01-16 11:04:55 +03:00
serb
7de747cf61 8213119: [macos] java/awt/GraphicsDevice/CheckDisplayModes.java fails
Reviewed-by: prr, jdv
2020-01-16 11:04:54 +03:00
bell-sw
539b211b99 Manual merge: the change from upstream: https://github.com/bell-sw/jdk11u-openjdk/commit/e410e72f vs
CGraphicsEnvironment.java: JRE-359 CGraphicsEnvironment.getDefaultScreenDevice() returns null: https://github.com/JetBrains/JetBrainsRuntime/commit/6d73b251
  CGLGraphicsConfig.java: JRE-238 [736] java.awt.AWTError: access denied: https://github.com/JetBrains/JetBrainsRuntime/commit/5d98c94e
  CGraphicsDevice.m: JRE-907 macOS: add ability to check for scaled display mode: https://github.com/JetBrains/JetBrainsRuntime/commit/e496262a
2020-01-16 11:04:53 +03:00
serb
e776046f66 8211992: GraphicsConfiguration.getDevice().getDisplayMode() causes JVM crash on Mac
Reviewed-by: prr

Conflicts:
    src/java.desktop/macosx/classes/sun/awt/CGraphicsEnvironment.java
    src/java.desktop/macosx/classes/sun/java2d/opengl/CGLGraphicsConfig.java
    src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsDevice.m
2020-01-16 11:04:51 +03:00
serb
837953074c 8146238: [macosx] Java2D Queue Flusher crash on OSX after switching between user accounts
Reviewed-by: prr, avu
2020-01-16 11:04:50 +03:00
bell-sw
45cb20c9e8 Revert "IDEA-148133 [IU-143.382] [MacOS] IDEA crashes regularly"
Reverting JB fix: 7262736e7e
    New fix: 5e55c482b4
    Bug ID: https://bugs.openjdk.java.net/browse/JDK-8146238
    (the new fix comes in the next commit)
2020-01-16 11:04:48 +03:00
psadhukhan
426d5f0163 8231084: Large performance regression in SwingMark TextArea in 14-b13
8231336: Corrupted option dialog in JTHarness with JDK14b13
Reviewed-by: serb, prr
2020-01-16 11:04:47 +03:00
psadhukhan
e8927ecf51 8226513: JEditorPane is shown with incorrect size
Reviewed-by: prr, psadhukhan
Contributed-by: semyon.sadetsky@oracle.com

(the change is already in place. empty commit)
2020-01-16 11:04:45 +03:00
bell-sw
14d9cd0813 Revert "JBR-1875 Modal dialogs text partly lost"
Reverting this change: https://github.com/JetBrains/JetBrainsRuntime/commit/598452f0
- going to get fresh one from the upstream (next two commits)
2020-01-16 11:04:45 +03:00
Vitaly Provodin
63841c1861 updated JTreg exclude list 2020-01-15 16:32:51 +07:00
Konstantin Bulenkov
d514f7a982 JetBrains Mono 1.0 2020-01-10 14:30:12 +01:00
Vitaly Provodin
1e9497ddc3 updated JTreg exclude list 2020-01-09 14:22:23 +07:00
Konstantin Bulenkov
dcea5e874d Fix download badges 2020-01-07 11:16:46 +01:00
Anton Tarasov
7354925566 JBR-2051 heavyweight components wrong bounds on per-monitor dpi 2019-12-27 15:33:55 +03:00
Alexey Ushakov
3368768244 JBR-1110 [JDK11] java/awt/font/Outline/OutlineInvarianceTest.java: Failed for font java.awt.Font[family=Dialog,name=MS Gothic,style=bold,size=30]
Replaced FT_LOAD_NO_HINTING mode for non AA rendering with FT_LOAD_TARGET_LIGHT
2019-12-26 22:13:59 +03:00
Vitaly Provodin
bd56abc4c3 updated JTreg exclude list 2019-12-26 10:25:34 +07:00
Vitaly Provodin
7be5045cbb updated JTreg exclude list 2019-12-25 17:56:11 +07:00
Artem Bochkarev
5e0a9f5993 JBR-1089: allow to create FileDialog without parent
was broken in 8fd21b3746
fixed test FileDialogModalFocusTest.java
2019-12-22 13:12:05 +03:00
Denis Fokin
915d369d98 JBR-1928 NullPointerException from Swing on IDE startup 2019-12-20 14:09:14 +03:00
Denis Fokin
7d65accaf6 JBR-2037 EA-219827 - NPE: DialogWrapperPeerImpl$MyDialog.addNotify 2019-12-20 12:18:53 +03:00
Artem Bochkarev
78363232b3 JBR-1680: allow to disable 'override-redirect' logic of XWindowPeer
with fixed fail of: javax/swing/JOptionPane/8081019/bug8081019.java

(cherry picked from commit 9094054cdc)
2019-12-20 11:55:45 +03:00
Vitaly.Provodin
8fb2341ea8 add dockerfile for x86 2019-12-19 06:30:59 +03:00
Vitaly.Provodin
3a79870da8 add 32-sizes for native data types 2019-12-19 06:29:08 +03:00
Artem Bochkarev
2adf5275f1 JBR-2005: don't set appearance of file chooser if OSX version < 10.14 2019-12-18 23:45:34 +03:00
Anton Tarasov
bfa2d814f8 Merge remote-tracking branch 'origin/master' 2019-12-18 15:33:05 +03:00
Anton Tarasov
4f44b37f08 JBR-2031 [mac] jcef deadlocks with a11y on start 2019-12-18 15:32:49 +03:00
Alexey Ushakov
36e8544049 JBR-2023 PhpStorm/Webstorm 2019.3 crashes on start on MacOS 10.14.6 on libfreetype.6.dylib
Corrected compile time check to disable fontconfig on Mac
2019-12-17 18:44:14 +03:00
Alexey Ushakov
bc0d725f0e JDK CMake project update 2019-12-17 16:54:33 +03:00
Vitaly.Provodin
4858f29ec5 updated JTreg exclude list 2019-12-17 15:11:29 +03:00
Vitaly Provodin
31d8ae741b Revert "JBR-1680: allow to disable 'override-redirect' logic of XWindowPeer"
This reverts commit 9094054c
2019-12-14 06:23:06 +07:00
Denis Konoplev
7ce0f79561 IDEA-229135: Fling animation stop on tap 2019-12-13 17:24:57 +03:00
Denis Fokin
18d2a918c0 JBR-2021 Focus is nowhere after a modal progress and a popup 2019-12-13 16:43:23 +03:00
Anton Tarasov
7ae706b629 JBR-2019 provide getWindowHandle method for jcef 2019-12-13 15:14:17 +03:00
Anton Tarasov
cf997f71c6 JBR-2016 [followup] add jcef module and export packages to it 2019-12-13 15:13:12 +03:00
Anton Tarasov
308f7ecb12 JBR-2016 add jcef module and export some sun.* packages to it 2019-12-13 10:30:54 +03:00
Vitaly Provodin
418d5fd97e JBR-2014 Add jdk.hotspot.agent module to jbr 2019-12-13 10:17:18 +07:00
Alexey Ushakov
788e078f64 JBR-2000 RM 2019.3.1 font rendering regression, normal text is heavier
Added -Djava2d.font.loadFontConfig=bundled to force loading bundled font.conf
2019-12-12 16:35:08 +03:00
Artem Bochkarev
9094054cdc JBR-1680: allow to disable 'override-redirect' logic of XWindowPeer 2019-12-11 17:04:55 +03:00
Artem Bochkarev
09eabbd567 JBR-1794: backport 8234522: [macos] Crash with use of native file dialog
cherry-picked from hg changeset (Node ID e07a60855a7631b5eac32da1f1e71d72986a2c06, Parent  221a47a6f6d335560d9dd532a1ac593e316b5954)
2019-12-11 13:59:31 +03:00
Anton Tarasov
a00074a86c Comment assertion (originally JRE-965)
The assert line crashes debug hotspot.
2019-12-11 11:45:40 +03:00
Vitaly Provodin
7852ae4321 updated JTreg exclude list 2019-12-11 10:47:04 +07:00
Vitaly Provodin
7546a15bf6 updated JTreg exclude list 2019-12-11 09:12:10 +07:00
Vitaly Provodin
c00e904304 JBR-1996 exclude JCEF binaries from notarization 2019-12-07 06:04:07 +07:00
Denis Fokin
c8ad353f45 JBR-1991 Focus problems in Windows with X-Mouse style focus 2019-12-06 12:37:53 +03:00
Vitaly Provodin
57162c91c3 updated JTreg exclude list 2019-12-06 10:04:05 +07:00
Denis Konoplev
cab3f28907 Windows touch screen support 2019-12-04 13:48:56 +03:00
Alexey Ushakov
5d7fd2e1e5 JBR-1997 JetBrainsMono fonts update to v0.22 2019-12-04 12:03:44 +03:00
Vitaly Provodin
623a029e3b updated JTreg exclude list 2019-12-04 10:51:00 +07:00
4279 changed files with 248039 additions and 80705 deletions

1
.gitignore vendored
View File

@@ -24,3 +24,4 @@ test/nashorn/lib
NashornProfile.txt
**/JTreport/**
**/JTwork/**
/jb/project/java-gradle/.idea/workspace.xml

48
.hgtags
View File

@@ -565,3 +565,51 @@ deaef57bf366fdab908b97a9760d0fa6e273abcd jdk-11.0.5+6
ee7128cf507a670ae84841b202a7a06711608359 jdk-11.0.5+9
6385eb06af947d8ec5fd51a4733bc8187efb88b5 jdk-11.0.5+10
6385eb06af947d8ec5fd51a4733bc8187efb88b5 jdk-11.0.5-ga
6eb89e59a06a2f83f7fe0399da4bf4ca638d46f3 jdk-11.0.6+1
8d3e0c2c009815cae59ad3c9bf9e4b1f090efc8b jdk-11.0.6+2
f8b2e95a1d41585a757729ed28ce35d43aba1b3f jdk-11.0.6+3
577a1fc440666e3c0724e07f6a8d736b2c7905cf jdk-11.0.6+4
bfce7426e091127450a70b7d07941c0f9e02d347 jdk-11.0.6+5
aa260c24480a2bd7d21ad1c863e6fe9a3973011e jdk-11.0.6+6
42500af9232ed5b2990ff618a1e92ef6ccc0b9af jdk-11.0.6+7
0c54fb645a7388cb7e3d587b4df75a2edd7826e2 jdk-11.0.6+8
1859de77ee6cd7e10ac0b9e71027d9f974a6e481 jdk-11.0.6+9
837b7afec083aaddeef0a6c3e6501b2200eaf1d4 jdk-11.0.6+10
837b7afec083aaddeef0a6c3e6501b2200eaf1d4 jdk-11.0.6-ga
8cdfd6139b1efc9064b10f24a82848b1bb4a0550 jdk-11.0.7+1
15cc1c8a63718c394e9cd1f35d735bb74a850084 jdk-11.0.7+2
f2d8162261ae3c1e50eb0667b3c9669caa67c652 jdk-11.0.7+3
d3d1f7f67de13fd5c227424b9ddc514c0ca32aff jdk-11.0.7+4
f03574cfc0d728ca7b5146ca22c707717f9f899f jdk-11.0.7+5
17d2e0c27889a00a3df7de9bcea0e8caf0d1771a jdk-11.0.7+6
f56b853d452bd339e3f4360cf4be42cc90f9284c jdk-11.0.7+7
3c570d183ab2afc0b204a8e980be69e7fbe761ef jdk-11.0.7+8
7201cd0c64776aa574d252b03a4c92b25d0a7d7f jdk-11.0.7+9
44ce940b344b9f240be4807f5b8f06e178e3aecd jdk-11.0.7+10
44ce940b344b9f240be4807f5b8f06e178e3aecd jdk-11.0.7-ga
2eb415c82056bdc308d23ee6761f422de46dc5e5 jdk-11.0.8+1
88eaa453331e9aeca979d58509538ebb74831ce4 jdk-11.0.8+2
2c0c9cfe2a4e1340f7db106e2220dbd0d5b86092 jdk-11.0.8+3
aa6c93b4f1acf4166d74d0252b35c53ad71d8540 jdk-11.0.8+4
8df1a601187c0b4cb9e525075bd7b85ee3d72595 jdk-11.0.8+5
e42c6d1a1993c720a4643140190bb1ba6f1bbf9f jdk-11.0.8+6
46d4984bb3c6dd1b0f5135505b77921d23c69841 jdk-11.0.8+7
40b646e9d8fbb2d70992b61e4f4b08ca5652c907 jdk-11.0.8+8
59f8565ee5e224697a9e09ee2c557836733bc579 jdk-11.0.8+9
0b0d55cb09b29360ab254edeef32a3b386e9713e jdk-11.0.8+10
0b0d55cb09b29360ab254edeef32a3b386e9713e jdk-11.0.8-ga
5cc275af8419178813299cc0ed81a2a85dadfdcd jdk-11.0.9+1
3112657edde9491fb83f098f1a8b7e9275bcb2f7 jdk-11.0.9+2
d8a0513b92ee262d4e64c1e13d43e1b3f3e5c5d5 jdk-11.0.9+3
cb299db4a5698b814f6b3ba1f3d73d01f6a0e1f6 jdk-11.0.9+4
55237fa85afb404bc0dc0f4948a6459d8d3e5dac jdk-11.0.9+5
c07e785e36f587b95e151de382844cea3d1a5868 jdk-11.0.9+6
1ba4c16a8afa3f5aaa7830fc1f14a0137cc2553b jdk-11.0.9+7
8711e8554e15ae2fa38718d5c7dc858da10e8a4a jdk-11.0.9+8
e872676174c7f171a9864becba83cb783cfec9d0 jdk-11.0.9+9
6ac1b68e7c0034e08a96d7d37e93e5075a6e8d61 jdk-11.0.9+10
4397fa4529b2794ddcdf3445c0611fe383243fb4 jdk-11.0.9+11
4397fa4529b2794ddcdf3445c0611fe383243fb4 jdk-11.0.9-ga
4fd46d208f0a4b55924af8e0c2fb6bcf46e18ec6 jdk-11.0.9.1+0
27723943c0dd65a191cbefe031cec001521e4b13 jdk-11.0.9.1+1
31affc22b3b5f5d43783ffadf57f22848bad9db8 jdk-11.0.9.1-ga

14
.idea/vcs.xml generated
View File

@@ -1,5 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="IssueNavigationConfiguration">
<option name="links">
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="[A-Z]+\-\d+" />
<option name="linkRegexp" value="http://youtrack.jetbrains.com/issue/$0" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="^(\d+)\:" />
<option name="linkRegexp" value="https://bugs.openjdk.java.net/browse/JDK-$1" />
</IssueNavigationLink>
</list>
</option>
</component>
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>

View File

@@ -4,7 +4,7 @@
|Windows-x64 |macOS |Linux-x64 |
|-------------|-------------|-------------|
|<a href="https://bintray.com/jetbrains/intellij-jdk/openjdk9-windows-x64/_latestVersion"> <img src="https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk9-windows-x64/images/download.svg"/></a>|<a href="https://bintray.com/jetbrains/intellij-jdk/openjdk9-osx-x64/_latestVersion"> <img src="https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk9-osx-x64/images/download.svg"/></a>|<a href="https://bintray.com/jetbrains/intellij-jdk/openjdk9-linux-x64/_latestVersion"><img src="https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk9-linux-x64/images/download.svg"/></a>|
|[ ![Download](https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk11-windows-x64/images/download.svg) ](https://bintray.com/jetbrains/intellij-jdk/openjdk11-windows-x64/_latestVersion)|[ ![Download](https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk11-osx-x64/images/download.svg) ](https://bintray.com/jetbrains/intellij-jdk/openjdk11-osx-x64/_latestVersion)|[ ![Download](https://api.bintray.com/packages/jetbrains/intellij-jdk/openjdk11-linux-x64/images/download.svg) ](https://bintray.com/jetbrains/intellij-jdk/openjdk11-linux-x64/_latestVersion)|
# How JetBrains Runtime is organised
@@ -13,7 +13,7 @@
[github.com/JetBrains/JetBrainsRuntime](https://github.com/JetBrains/JetBrainsRuntime)
## Getting sources
__OSX, Linux:__
__macOS, Linux:__
```
git config --global core.autocrlf input
git clone git@github.com:JetBrains/JetBrainsRuntime.git
@@ -25,12 +25,12 @@ git config --global core.autocrlf false
git clone git@github.com:JetBrains/JetBrainsRuntime.git
```
# Configure Local Build Environment
# Configure local build environment
[OpenJDK build docs](http://hg.openjdk.java.net/jdk/jdk11/raw-file/tip/doc/building.html)
Tip for all platforms: run ./configure and check output.
Tip for all platforms: run `./configure` and check output.
Usually, it has meaningful advice how to solve your problem.
## Linux (docker)
## Linux (Docker)
```
$ cd jb/project/docker
$ docker build .
@@ -42,7 +42,6 @@ $ docker run -v `pwd`../../../../:/JetBrainsRuntime -it 942ea9900054
# cd /JetBrainsRuntime
# sh ./configure
# make images CONF=linux-x86_64-normal-server-release
```
## Linux (Ubuntu 18.10 desktop)
@@ -56,35 +55,33 @@ $ make images
## Windows
Install:
* [Cygwin x64](http://www.cygwin.com/)
Required packages: autoconf, binutils, cpio, diffutils, file, gawk, gcc-core, make, m4, unzip, zip.
**Install them while installing cygwin**.
**Install them while installing Cygwin**.
* Visual Studio compiler toolset [Download](https://visualstudio.microsoft.com/downloads/)
Visual Studio 2015 has support by default.
**Install with desktop development kit, it includes Windows SDK and compilers**.
* [Java 11](http://www.oracle.com/technetwork/java/javase/downloads/index.html)
If you have problems while configuring [read java tips on cygwin](http://horstmann.com/articles/cygwin-tips.html)
If you have problems while configuring [read Java tips on Cygwin](http://horstmann.com/articles/cygwin-tips.html)
From command line
From command line:
```
"c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
"c:\Program_Files\cygwin64\bin\mintty.exe" /bin/bash -l
```
First command will set env vars, the second will run cygwin shell with proper environment.
In cygwin shell
First command will set env vars, the second will run Cygwin shell with proper environment.
In Cygwin shell:
```
cd JetBrainsRuntime
./configure --disable-warnings-as-errors
bash configure --enable-option-checking=fatal --with-toolchain-version=2015 --with-boot-jdk="/cygdrive/c/Program Files/Java/jdk-11.0.5" --disable-warnings-as-errors
make images
```
## OSX
install Xcode console tools, autoconf (via homebrew)
run
## macOS
Install Xcode command line developer tools, autoconf (via Homebrew).
Run:
```
sh ./configure --prefix=$(pwd)/build --disable-warnings-as-errors
make images

View File

@@ -277,7 +277,7 @@
</tr>
<tr class="even">
<td style="text-align: left;">Windows</td>
<td style="text-align: left;">Microsoft Visual Studio 2017 update 15.5.5</td>
<td style="text-align: left;">Microsoft Visual Studio 2017 update 15.9.16</td>
</tr>
</tbody>
</table>
@@ -369,10 +369,10 @@ CC: Sun C++ 5.13 SunOS_i386 151846-10 2015/10/30</code></pre>
<p>On Linux you can also get a JDK from the Linux distribution. On apt-based distros (like Debian and Ubuntu), <code>sudo apt-get install openjdk-&lt;VERSION&gt;-jdk</code> is typically enough to install a JDK &lt;VERSION&gt;. On rpm-based distros (like Fedora and Red Hat), try <code>sudo yum install java-&lt;VERSION&gt;-openjdk-devel</code>.</p>
<h2 id="external-library-requirements">External Library Requirements</h2>
<p>Different platforms require different external libraries. In general, libraries are not optional - that is, they are either required or not used.</p>
<p>If a required library is not detected by <code>configure</code>, you need to provide the path to it. There are two forms of the <code>configure</code> arguments to point to an external library: <code>--with-&lt;LIB&gt;=&lt;path&gt;</code> or <code>--with-&lt;LIB&gt;-include=&lt;path to include&gt; --with-&lt;LIB&gt;-lib=&lt;path to lib&gt;</code>. The first variant is more concise, but require the include files an library files to reside in a default hierarchy under this directory. In most cases, it works fine.</p>
<p>If a required library is not detected by <code>configure</code>, you need to provide the path to it. There are two forms of the <code>configure</code> arguments to point to an external library: <code>--with-&lt;LIB&gt;=&lt;path&gt;</code> or <code>--with-&lt;LIB&gt;-include=&lt;path to include&gt; --with-&lt;LIB&gt;-lib=&lt;path to lib&gt;</code>. The first variant is more concise, but require the include files and library files to reside in a default hierarchy under this directory. In most cases, it works fine.</p>
<p>As a fallback, the second version allows you to point to the include directory and the lib directory separately.</p>
<h3 id="freetype">FreeType</h3>
<p>FreeType2 from <a href="http://www.freetype.org/">The FreeType Project</a> is not required on any platform. The exception is on Unix-based platforms when configuring such that the build artifacts will reference a system installed library, rather than bundling the JDKs own copy.</p>
<p>FreeType2 from <a href="http://www.freetype.org/">The FreeType Project</a> is not required on any platform. The exception is on Unix-based platforms when configuring such that the build artifacts will reference a system installed library, rather than bundling the JDK's own copy.</p>
<ul>
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libfreetype6-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install freetype-devel</code>.</li>
@@ -433,7 +433,7 @@ CC: Sun C++ 5.13 SunOS_i386 151846-10 2015/10/30</code></pre>
<p>To build the JDK, you need a &quot;configuration&quot;, which consists of a directory where to store the build output, coupled with information about the platform, the specific build machine, and choices that affect how the JDK is built.</p>
<p>The configuration is created by the <code>configure</code> script. The basic invocation of the <code>configure</code> script looks like this:</p>
<pre><code>bash configure [options]</code></pre>
<p>This will create an output directory containing the configuration and setup an area for the build result. This directory typically looks like <code>build/linux-x64-normal-server-release</code>, but the actual name depends on your specific configuration. (It can also be set directly, see <a href="#using-multiple-configurations">Using Multiple Configurations</a>). This directory is referred to as <code>$BUILD</code> in this documentation.</p>
<p>This will create an output directory containing the configuration and setup an area for the build result. This directory typically looks like <code>build/linux-x64-server-release</code>, but the actual name depends on your specific configuration. (It can also be set directly, see <a href="#using-multiple-configurations">Using Multiple Configurations</a>). This directory is referred to as <code>$BUILD</code> in this documentation.</p>
<p><code>configure</code> will try to figure out what system you are running on and where all necessary build components are. If you have all prerequisites for building installed, it should find everything. If it fails to detect any component automatically, it will exit and inform you about the problem.</p>
<p>Some command line examples:</p>
<ul>

View File

@@ -293,7 +293,7 @@ issues.
Linux gcc 7.3.0
macOS Apple Xcode 9.4 (using clang 9.1.0)
Solaris Oracle Solaris Studio 12.4 (with compiler version 5.13)
Windows Microsoft Visual Studio 2017 update 15.5.5
Windows Microsoft Visual Studio 2017 update 15.9.16
### gcc
@@ -436,8 +436,8 @@ If a required library is not detected by `configure`, you need to provide the
path to it. There are two forms of the `configure` arguments to point to an
external library: `--with-<LIB>=<path>` or `--with-<LIB>-include=<path to
include> --with-<LIB>-lib=<path to lib>`. The first variant is more concise,
but require the include files an library files to reside in a default hierarchy
under this directory. In most cases, it works fine.
but require the include files and library files to reside in a default
hierarchy under this directory. In most cases, it works fine.
As a fallback, the second version allows you to point to the include directory
and the lib directory separately.
@@ -447,7 +447,7 @@ and the lib directory separately.
FreeType2 from [The FreeType Project](http://www.freetype.org/) is not required
on any platform. The exception is on Unix-based platforms when configuring such
that the build artifacts will reference a system installed library,
rather than bundling the JDKs own copy.
rather than bundling the JDK's own copy.
* To install on an apt-based Linux, try running `sudo apt-get install
libfreetype6-dev`.
@@ -586,8 +586,8 @@ bash configure [options]
This will create an output directory containing the configuration and setup an
area for the build result. This directory typically looks like
`build/linux-x64-normal-server-release`, but the actual name depends on your
specific configuration. (It can also be set directly, see [Using Multiple
`build/linux-x64-server-release`, but the actual name depends on your specific
configuration. (It can also be set directly, see [Using Multiple
Configurations](#using-multiple-configurations)). This directory is referred to
as `$BUILD` in this documentation.

54
doc/ide.html Normal file
View File

@@ -0,0 +1,54 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>IDE support in the JDK</title>
<style type="text/css">
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
</style>
<link rel="stylesheet" href="../make/data/docs-resources/resources/jdk-default.css" />
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<header id="title-block-header">
<h1 class="title">IDE support in the JDK</h1>
</header>
<nav id="TOC">
<ul>
<li><a href="#introduction">Introduction</a><ul>
<li><a href="#ide-support-for-native-code">IDE support for native code</a></li>
<li><a href="#ide-support-for-java-code">IDE support for Java code</a></li>
</ul></li>
</ul>
</nav>
<h2 id="introduction">Introduction</h2>
<p>When you are familiar with building and testing the JDK, you may want to configure an IDE to work with the source code. The instructions differ a bit depending on whether you are interested in working with the native (C/C++) or the Java code.</p>
<h3 id="ide-support-for-native-code">IDE support for native code</h3>
<p>There are a few ways to generate IDE configuration for the native sources, depending on which IDE to use.</p>
<h4 id="visual-studio-code">Visual Studio Code</h4>
<p>The make system can generate a <a href="https://code.visualstudio.com">Visual Studio Code</a> workspace that has C/C++ source indexing configured correctly, as well as launcher targets for tests and the Java launcher. After configuring, a workspace for the configuration can be generated using:</p>
<pre class="shell"><code>make vscode-project</code></pre>
<p>This creates a file called <code>jdk.code-workspace</code> in the build output folder. The full location will be printed after the workspace has been generated. To use it, choose <code>File -&gt; Open Workspace...</code> in Visual Studio Code.</p>
<h5 id="alternative-indexers">Alternative indexers</h5>
<p>The main <code>vscode-project</code> target configures the default C++ support in Visual Studio Code. There are also other source indexers that can be installed, that may provide additional features. It's currently possible to generate configuration for two such indexers, <a href="https://clang.llvm.org/extra/clangd/">clangd</a> and <a href="https://github.com/Andersbakken/rtags">rtags</a>. These can be configured by appending the name of the indexer to the make target, such as:</p>
<pre class="shell"><code>make vscode-project-clangd</code></pre>
<p>Additional instructions for configuring the given indexer will be displayed after the workspace has been generated.</p>
<h4 id="visual-studio">Visual Studio</h4>
<p>This section is a work in progress.</p>
<pre class="shell"><code>make ide-project</code></pre>
<h4 id="compilation-database">Compilation Database</h4>
<p>The make system can generate generic native code indexing support in the form of a <a href="https://clang.llvm.org/docs/JSONCompilationDatabase.html">Compilation Database</a> that can be used by many different IDEs and source code indexers.</p>
<pre class="shell"><code>make compile-commands</code></pre>
<p>It's also possible to generate the Compilation Database for the HotSpot source code only, which is a bit faster as it includes less information.</p>
<pre class="shell"><code>make compile-commands-hotspot</code></pre>
<h3 id="ide-support-for-java-code">IDE support for Java code</h3>
<p>This section is a work in progress.</p>
</body>
</html>

73
doc/ide.md Normal file
View File

@@ -0,0 +1,73 @@
% IDE support in the JDK
## Introduction
When you are familiar with building and testing the JDK, you may want to
configure an IDE to work with the source code. The instructions differ a bit
depending on whether you are interested in working with the native (C/C++) or
the Java code.
### IDE support for native code
There are a few ways to generate IDE configuration for the native sources,
depending on which IDE to use.
#### Visual Studio Code
The make system can generate a [Visual Studio Code](https://code.visualstudio.com)
workspace that has C/C++ source indexing configured correctly, as well as
launcher targets for tests and the Java launcher. After configuring, a workspace
for the configuration can be generated using:
```shell
make vscode-project
```
This creates a file called `jdk.code-workspace` in the build output folder. The
full location will be printed after the workspace has been generated. To use it,
choose `File -> Open Workspace...` in Visual Studio Code.
##### Alternative indexers
The main `vscode-project` target configures the default C++ support in Visual
Studio Code. There are also other source indexers that can be installed, that
may provide additional features. It's currently possible to generate
configuration for two such indexers, [clangd](https://clang.llvm.org/extra/clangd/)
and [rtags](https://github.com/Andersbakken/rtags). These can be configured by
appending the name of the indexer to the make target, such as:
```shell
make vscode-project-clangd
```
Additional instructions for configuring the given indexer will be displayed
after the workspace has been generated.
#### Visual Studio
This section is a work in progress.
```shell
make ide-project
```
#### Compilation Database
The make system can generate generic native code indexing support in the form of
a [Compilation Database](https://clang.llvm.org/docs/JSONCompilationDatabase.html)
that can be used by many different IDEs and source code indexers.
```shell
make compile-commands
```
It's also possible to generate the Compilation Database for the HotSpot source
code only, which is a bit faster as it includes less information.
```shell
make compile-commands-hotspot
```
### IDE support for Java code
This section is a work in progress.

View File

@@ -11,14 +11,14 @@
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
</style>
<link rel="stylesheet" href="../make/data/docs-resources/resources/jdk-default.css">
<link rel="stylesheet" href="../make/data/docs-resources/resources/jdk-default.css" />
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
<style type="text/css">pre, code, tt { color: #1d6ae5; }</style>
</head>
<body>
<header>
<header id="title-block-header">
<h1 class="title">Testing the JDK</h1>
</header>
<nav id="TOC">
@@ -32,11 +32,13 @@
</ul></li>
<li><a href="#test-results-and-summary">Test results and summary</a></li>
<li><a href="#test-suite-control">Test suite control</a><ul>
<li><a href="#general-keywords-test_opts">General keywords (TEST_OPTS)</a></li>
<li><a href="#jtreg-keywords">JTReg keywords</a></li>
<li><a href="#gtest-keywords">Gtest keywords</a></li>
</ul></li>
<li><a href="#notes-for-specific-tests">Notes for Specific Tests</a><ul>
<li><a href="#docker-tests">Docker Tests</a></li>
<li><a href="#client-ui-tests">Client UI Tests</a></li>
</ul></li>
</ul>
</nav>
@@ -89,11 +91,24 @@ TEST FAILURE</code></pre>
<p>To separate multiple keyword=value pairs, use <code>;</code> (semicolon). Since the shell normally eats <code>;</code>, the recommended usage is to write the assignment inside qoutes, e.g. <code>JTREG=&quot;...;...&quot;</code>. This will also make sure spaces are preserved, as in <code>JTREG=&quot;VM_OPTIONS=-XshowSettings -Xlog:gc+ref=debug&quot;</code>.</p>
<p>(Other ways are possible, e.g. using backslash: <code>JTREG=JOBS=1\;TIMEOUT=8</code>. Also, as a special technique, the string <code>%20</code> will be replaced with space for certain options, e.g. <code>JTREG=VM_OPTIONS=-XshowSettings%20-Xlog:gc+ref=debug</code>. This can be useful if you have layers of scripts and have trouble getting proper quoting of command line arguments through.)</p>
<p>As far as possible, the names of the keywords have been standardized between test suites.</p>
<h3 id="jtreg-keywords">JTReg keywords</h3>
<h3 id="general-keywords-test_opts">General keywords (TEST_OPTS)</h3>
<p>Some keywords are valid across different test suites. If you want to run tests from multiple test suites, or just dont want to care which test suite specific control variable to use, then you can use the general TEST_OPTS control variable.</p>
<p>There are also some keywords that applies globally to the test runner system, not to any specific test suites. These are also available as TEST_OPTS keywords.</p>
<h4 id="jobs">JOBS</h4>
<p>Currently only applies to JTReg.</p>
<h4 id="timeout_factor">TIMEOUT_FACTOR</h4>
<p>Currently only applies to JTReg.</p>
<h4 id="vm_options">VM_OPTIONS</h4>
<p>Applies to JTReg, GTest and Micro.</p>
<h4 id="java_options">JAVA_OPTIONS</h4>
<p>Applies to JTReg, GTest and Micro.</p>
<h4 id="aot_modules">AOT_MODULES</h4>
<p>Applies to JTReg and GTest.</p>
<h3 id="jtreg-keywords">JTReg keywords</h3>
<h4 id="jobs-1">JOBS</h4>
<p>The test concurrency (<code>-concurrency</code>).</p>
<p>Defaults to TEST_JOBS (if set by <code>--with-test-jobs=</code>), otherwise it defaults to JOBS, except for Hotspot, where the default is <em>number of CPU cores/2</em>, but never more than 12.</p>
<h4 id="timeout">TIMEOUT</h4>
<h4 id="timeout_factor-1">TIMEOUT_FACTOR</h4>
<p>The timeout factor (<code>-timeoutFactor</code>).</p>
<p>Defaults to 4.</p>
<h4 id="test_mode">TEST_MODE</h4>
@@ -112,13 +127,21 @@ TEST FAILURE</code></pre>
<p>Limit memory consumption (<code>-Xmx</code> and <code>-vmoption:-Xmx</code>, or none).</p>
<p>Limit memory consumption for JTReg test framework and VM under test. Set to 0 to disable the limits.</p>
<p>Defaults to 512m, except for hotspot, where it defaults to 0 (no limit).</p>
<h4 id="keywords">KEYWORDS</h4>
<p>JTReg kewords sent to JTReg using <code>-k</code>. Please be careful in making sure that spaces and special characters (like <code>!</code>) are properly quoted. To avoid some issues, the special value <code>%20</code> can be used instead of space.</p>
<h4 id="extra_problem_lists">EXTRA_PROBLEM_LISTS</h4>
<p>Use additional problem lists file or files, in addition to the default ProblemList.txt located at the JTReg test roots.</p>
<p>If multiple file names are specified, they should be separated by space (or, to help avoid quoting issues, the special value <code>%20</code>).</p>
<p>The file names should be either absolute, or relative to the JTReg test root of the tests to be run.</p>
<h4 id="options">OPTIONS</h4>
<p>Additional options to the JTReg test framework.</p>
<p>Use <code>JTREG=&quot;OPTIONS=--help all&quot;</code> to see all available JTReg options.</p>
<h4 id="java_options">JAVA_OPTIONS</h4>
<h4 id="java_options-1">JAVA_OPTIONS</h4>
<p>Additional Java options to JTReg (<code>-javaoption</code>).</p>
<h4 id="vm_options">VM_OPTIONS</h4>
<h4 id="vm_options-1">VM_OPTIONS</h4>
<p>Additional VM options to JTReg (<code>-vmoption</code>).</p>
<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>
<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>
@@ -126,11 +149,23 @@ TEST FAILURE</code></pre>
<h4 id="options-1">OPTIONS</h4>
<p>Additional options to the Gtest test framework.</p>
<p>Use <code>GTEST=&quot;OPTIONS=--help&quot;</code> to see all available Gtest options.</p>
<h4 id="aot_modules-2">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>
<h2 id="notes-for-specific-tests">Notes for Specific Tests</h2>
<h3 id="docker-tests">Docker Tests</h3>
<p>Docker tests with default parameters may fail on systems with glibc versions not compatible with the one used in the default docker image (e.g., Oracle Linux 7.6 for x86). For example, they pass on Ubuntu 16.04 but fail on Ubuntu 18.04 if run like this on x86:</p>
<pre><code>$ make run-test TEST=&quot;jtreg:test/hotspot/jtreg/containers/docker&quot;</code></pre>
<p>To run these tests correctly, additional parameters for the correct docker image are required on Ubuntu 18.04 by using <code>JAVA_OPTIONS</code>.</p>
<pre><code>$ make run-test TEST=&quot;jtreg:test/hotspot/jtreg/containers/docker&quot; JTREG=&quot;JAVA_OPTIONS=-Djdk.test.docker.image.name=ubuntu -Djdk.test.docker.image.version=latest&quot;</code></pre>
<h3 id="client-ui-tests">Client UI Tests</h3>
<p>Some Client UI tests use key sequences which may be reserved by the operating system. Usually that causes the test failure. So it is highly recommended to disable system key shortcuts prior testing. The steps to access and disable system key shortcuts for various platforms are provided below.</p>
<h4 id="macos">MacOS</h4>
<p>Choose Apple menu; System Preferences, click Keyboard, then click Shortcuts; select or deselect desired shortcut.</p>
<p>For example, test/jdk/javax/swing/TooltipManager/JMenuItemToolTipKeyBindingsTest/JMenuItemToolTipKeyBindingsTest.java fails on MacOS because it uses <code>CTRL + F1</code> key sequence to show or hide tooltip message but the key combination is reserved by the operating system. To run the test correctly the default global key shortcut should be disabled using the steps described above, and then deselect “Turn keyboard access on or off” option which is responsible for <code>CTRL + F1</code> combination.</p>
<h4 id="linux">Linux</h4>
<p>Open the Activities overview and start typing Settings; Choose Settings, click Devices, then click Keyboard; set or override desired shortcut.</p>
<h4 id="windows">Windows</h4>
<p>Type <code>gpedit</code> in the Search and then click Edit group policy; navigate to User Configuration -&gt; Administrative Templates -&gt; Windows Components -&gt; File Explorer; in the right-side pane look for “Turn off Windows key hotkeys” and double click on it; enable or disable hotkeys.</p>
<p>Note: restart is required to make the settings take effect.</p>
</body>
</html>

View File

@@ -162,6 +162,35 @@ proper quoting of command line arguments through.)
As far as possible, the names of the keywords have been standardized between
test suites.
### General keywords (TEST_OPTS)
Some keywords are valid across different test suites. If you want to run
tests from multiple test suites, or just don't want to care which test suite specific
control variable to use, then you can use the general TEST_OPTS control variable.
There are also some keywords that applies globally to the test runner system,
not to any specific test suites. These are also available as TEST_OPTS keywords.
#### JOBS
Currently only applies to JTReg.
#### TIMEOUT_FACTOR
Currently only applies to JTReg.
#### VM_OPTIONS
Applies to JTReg, GTest and Micro.
#### JAVA_OPTIONS
Applies to JTReg, GTest and Micro.
#### AOT_MODULES
Applies to JTReg and GTest.
### JTReg keywords
#### JOBS
@@ -171,7 +200,7 @@ Defaults to TEST_JOBS (if set by `--with-test-jobs=`), otherwise it defaults to
JOBS, except for Hotspot, where the default is *number of CPU cores/2*, but
never more than 12.
#### TIMEOUT
#### TIMEOUT_FACTOR
The timeout factor (`-timeoutFactor`).
Defaults to 4.
@@ -205,6 +234,24 @@ to disable the limits.
Defaults to 512m, except for hotspot, where it defaults to 0 (no limit).
#### KEYWORDS
JTReg kewords sent to JTReg using `-k`. Please be careful in making sure that
spaces and special characters (like `!`) are properly quoted. To avoid some
issues, the special value `%20` can be used instead of space.
#### EXTRA_PROBLEM_LISTS
Use additional problem lists file or files, in addition to the default
ProblemList.txt located at the JTReg test roots.
If multiple file names are specified, they should be separated by space (or, to
help avoid quoting issues, the special value `%20`).
The file names should be either absolute, or relative to the JTReg test root of
the tests to be run.
#### OPTIONS
Additional options to the JTReg test framework.
@@ -216,6 +263,12 @@ Additional Java options to JTReg (`-javaoption`).
#### VM_OPTIONS
Additional VM options to JTReg (`-vmoption`).
#### AOT_MODULES
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 `%20`).
### Gtest keywords
#### REPEAT
@@ -230,6 +283,12 @@ Additional options to the Gtest test framework.
Use `GTEST="OPTIONS=--help"` to see all available Gtest options.
#### AOT_MODULES
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 `%20`).
## Notes for Specific Tests
### Docker Tests
@@ -245,6 +304,35 @@ required on Ubuntu 18.04 by using `JAVA_OPTIONS`.
$ make run-test TEST="jtreg:test/hotspot/jtreg/containers/docker" JTREG="JAVA_OPTIONS=-Djdk.test.docker.image.name=ubuntu -Djdk.test.docker.image.version=latest"
### Client UI Tests
Some Client UI tests use key sequences which may be reserved by the operating
system. Usually that causes the test failure. So it is highly recommended to disable
system key shortcuts prior testing. The steps to access and disable system key shortcuts
for various platforms are provided below.
#### MacOS
Choose Apple menu; System Preferences, click Keyboard, then click Shortcuts;
select or deselect desired shortcut.
For example, test/jdk/javax/swing/TooltipManager/JMenuItemToolTipKeyBindingsTest/JMenuItemToolTipKeyBindingsTest.java fails
on MacOS because it uses `CTRL + F1` key sequence to show or hide tooltip message
but the key combination is reserved by the operating system. To run the test correctly
the default global key shortcut should be disabled using the steps described above, and then deselect
"Turn keyboard access on or off" option which is responsible for `CTRL + F1` combination.
#### Linux
Open the Activities overview and start typing Settings; Choose Settings, click Devices,
then click Keyboard; set or override desired shortcut.
#### Windows
Type `gpedit` in the Search and then click Edit group policy; navigate to
User Configuration -> Administrative Templates -> Windows Components -> File Explorer;
in the right-side pane look for "Turn off Windows key hotkeys" and double click on it;
enable or disable hotkeys.
Note: restart is required to make the settings take effect.
---
# Override some definitions in the global css file that are not optimal for
# this document.

View File

@@ -1,9 +1,12 @@
# jetbrains/runtime:jbr11env
# jetbrains/runtime:jbr11dev8env
FROM centos:7
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool gcc gcc-c++ libstdc++-devel alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel
RUN yum -y install centos-release-scl
RUN yum -y install devtoolset-8
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel git
# Install Java 11
RUN wget https://bintray.com/jetbrains/intellij-jbr/download_file?file_path=jbrsdk-11_0_3-linux-x64-b360.2.tar.gz \
-O - | tar xz -C /
ENV JAVA_HOME /jbrsdk
ENV PATH $JAVA_HOME/bin:$PATH
ENV PATH $JAVA_HOME/bin:/opt/rh/devtoolset-8/root/usr/bin:$PATH
RUN git config --global user.email "teamcity@buildserver.intellij.net"
RUN git config --global user.name "builduser"

View File

@@ -0,0 +1,7 @@
FROM i386/ubuntu:xenial
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

View File

@@ -495,7 +495,6 @@ set(SOURCE_FILES
../../../src/hotspot/cpu/aarch64/vtableStubs_aarch64.cpp
../../../src/hotspot/cpu/aarch64/relocInfo_aarch64.hpp
../../../src/hotspot/cpu/aarch64/vm_version_aarch64.hpp
../../../src/hotspot/cpu/aarch64/cpustate_aarch64.hpp
../../../src/hotspot/cpu/aarch64/immediate_aarch64.cpp
../../../src/hotspot/cpu/aarch64/vmreg_aarch64.cpp
../../../src/hotspot/cpu/aarch64/jniFastGetField_aarch64.cpp
@@ -520,7 +519,6 @@ set(SOURCE_FILES
../../../src/hotspot/cpu/aarch64/c1_FrameMap_aarch64.hpp
../../../src/hotspot/cpu/aarch64/templateTable_aarch64.cpp
../../../src/hotspot/cpu/aarch64/vmStructs_aarch64.hpp
../../../src/hotspot/cpu/aarch64/decode_aarch64.hpp
../../../src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp
../../../src/hotspot/cpu/aarch64/nativeInst_aarch64.hpp
../../../src/hotspot/cpu/aarch64/codeBuffer_aarch64.hpp
@@ -529,7 +527,6 @@ set(SOURCE_FILES
../../../src/hotspot/cpu/aarch64/assembler_aarch64.cpp
../../../src/hotspot/cpu/aarch64/register_aarch64.cpp
../../../src/hotspot/cpu/aarch64/vm_version_ext_aarch64.cpp
../../../src/hotspot/cpu/aarch64/aarch64_call.cpp
../../../src/hotspot/cpu/aarch64/macroAssembler_aarch64.hpp
../../../src/hotspot/cpu/aarch64/bytecodes_aarch64.hpp
../../../src/hotspot/cpu/aarch64/c1_MacroAssembler_aarch64.hpp
@@ -1175,13 +1172,11 @@ set(SOURCE_FILES
../../../src/hotspot/share/jfr/recorder/stringpool/jfrStringPoolBuffer.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkWriter.cpp
../../../src/hotspot/share/jfr/recorder/repository/jfrEmergencyDump.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkSizeNotifier.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkState.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrRepository.cpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkState.cpp
../../../src/hotspot/share/jfr/recorder/repository/jfrRepository.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkWriter.hpp
../../../src/hotspot/share/jfr/recorder/repository/jfrChunkSizeNotifier.cpp
../../../src/hotspot/share/jfr/recorder/repository/jfrEmergencyDump.cpp
../../../src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointBlob.hpp
../../../src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointWriter.cpp
@@ -1254,7 +1249,6 @@ set(SOURCE_FILES
../../../src/hotspot/share/jfr/leakprofiler/checkpoint/objectSampleDescription.hpp
../../../src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.hpp
../../../src/hotspot/share/jfr/leakprofiler/leakProfiler.hpp
../../../src/hotspot/share/jfr/leakprofiler/emitEventOperation.hpp
../../../src/hotspot/share/jfr/leakprofiler/sampling/objectSample.hpp
../../../src/hotspot/share/jfr/leakprofiler/sampling/objectSampler.hpp
../../../src/hotspot/share/jfr/leakprofiler/sampling/sampleList.cpp
@@ -1270,7 +1264,6 @@ set(SOURCE_FILES
../../../src/hotspot/share/jfr/leakprofiler/utilities/rootType.hpp
../../../src/hotspot/share/jfr/leakprofiler/utilities/unifiedOop.hpp
../../../src/hotspot/share/jfr/leakprofiler/startOperation.hpp
../../../src/hotspot/share/jfr/leakprofiler/emitEventOperation.cpp
../../../src/hotspot/share/jfr/leakprofiler/chains/edgeUtils.cpp
../../../src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp
../../../src/hotspot/share/jfr/leakprofiler/chains/edge.hpp
@@ -1481,7 +1474,6 @@ set(SOURCE_FILES
../../../src/hotspot/share/runtime/basicLock.hpp
../../../src/hotspot/share/runtime/compilationPolicy.cpp
../../../src/hotspot/share/runtime/java.hpp
../../../src/hotspot/share/runtime/simpleThresholdPolicy.cpp
../../../src/hotspot/share/runtime/objectMonitor.inline.hpp
../../../src/hotspot/share/runtime/mutexLocker.cpp
../../../src/hotspot/share/runtime/serviceThread.cpp
@@ -1524,7 +1516,6 @@ set(SOURCE_FILES
../../../src/hotspot/share/runtime/compilationPolicy.hpp
../../../src/hotspot/share/runtime/basicLock.cpp
../../../src/hotspot/share/runtime/java.cpp
../../../src/hotspot/share/runtime/simpleThresholdPolicy.hpp
../../../src/hotspot/share/runtime/perfData.inline.hpp
../../../src/hotspot/share/runtime/statSampler.hpp
../../../src/hotspot/share/runtime/vm_operations.cpp
@@ -1557,7 +1548,6 @@ set(SOURCE_FILES
../../../src/hotspot/share/runtime/handshake.hpp
../../../src/hotspot/share/runtime/thread.inline.hpp
../../../src/hotspot/share/runtime/perfMemory.hpp
../../../src/hotspot/share/runtime/simpleThresholdPolicy.inline.hpp
../../../src/hotspot/share/runtime/javaCalls.cpp
../../../src/hotspot/share/runtime/reflection.cpp
../../../src/hotspot/share/runtime/icache.cpp

View File

@@ -2,6 +2,7 @@
set(CMAKE_CXX_STANDARD 98)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GNU_SOURCE -D_REENTRANT -DVM_LITTLE_ENDIAN -D_LP64 -DTARGET_ARCH_x86 ")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DINCLUDE_SUFFIX_CPU=_x86 -DAMD64 -DHOTSPOT_LIB_ARCH='amd64' -DCOMPILER1 -DCOMPILER2")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DFT2_BUILD_LIBRARY")
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DTARGET_COMPILER_gcc")
@@ -16,15 +17,55 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_ALLBSD_SOURCE -DTARGET_OS_FAMILY_bsd")
endif ()
if ("${CMAKE_SYSTEM_NAME}" MATCHES "CYGWIN") #not shure about TARGET_COMPILER
if ("${CMAKE_SYSTEM_NAME}" MATCHES "CYGWIN") #not sure about TARGET_COMPILER
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DTARGET_COMPILER_visCPP -DWIN64 -D_WINDOWS -DTARGET_OS_FAMILY_windows")
endif ()
add_custom_target(configure
COMMAND bash configure
COMMAND bash configure --disable-warnings-as-errors
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../)
add_custom_target(build_images
COMMAND make COMPILER_WARNINGS_FATAL=false images
add_custom_target(configure_debug
COMMAND bash configure --disable-warnings-as-errors --enable-debug
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../)
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(JDK_RELEASE_TARGET "linux-x86_64-normal-server-release")
set(JDK_DEBUG_TARGET "linux-x86_64-normal-server-fastdebug")
endif ()
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(JDK_RELEASE_TARGET "macosx-x86_64-normal-server-release")
set(JDK_DEBUG_TARGET "macosx-x86_64-normal-server-fastdebug")
add_compile_definitions(MACOSX)
endif ()
add_custom_target(build
COMMAND make CONF=${JDK_RELEASE_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})
DEPENDS ${SOURCE_FILES})
add_custom_target(build_images
COMMAND make images CONF=${JDK_RELEASE_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})
add_custom_target(build_debug
COMMAND make CONF=${JDK_DEBUG_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})
add_custom_target(build_images_debug
COMMAND make images CONF=${JDK_DEBUG_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})
add_custom_target(make_clean
COMMAND make clean CONF=${JDK_RELEASE_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})
add_custom_target(make_clean_debug
COMMAND make clean CONF=${JDK_DEBUG_TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../../
DEPENDS ${SOURCE_FILES})

View File

@@ -6,6 +6,7 @@ include(../java-common.cmake)
include_directories(
../../../src/java.base/share/native/include
../../../src/java.base/share/native/libjava
../../../src/java.base/share/native/libzip/zlib
../../../src/java.desktop/share/native/common
../../../src/java.desktop/share/native/common/awt/debug
../../../src/java.desktop/share/native/common/font
@@ -58,6 +59,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux"
../../../src/java.desktop/unix/native/common/font
../../../src/java.desktop/unix/native/common/java2d/opengl
../../../src/java.desktop/unix/native/common/java2d/opengl/J2D_GL
../../../src/java.desktop/unix/native/common/java2d/x11
../../../src/java.desktop/unix/native/common
../../../src/java.desktop/unix/native/include
../../../src/java.desktop/unix/native/libawt/java2d
@@ -192,16 +194,19 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/include/freetype/fttypes.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftparams.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftmm.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/config
../../../src/java.desktop/share/native/libfreetype/include/freetype/config/ftstdlib.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/config/ftheader.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/config/ftconfig.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/config/ftoption.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/config/ftmodule.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftcolor.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftmodapi.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/fttrigon.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftbbox.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftgzip.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftdriver.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/sfnt.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/internal.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftdrv.h
@@ -216,13 +221,13 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/tttypes.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftvalid.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftobjs.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftpic.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/fttrace.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftmemory.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/fthash.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftgloadr.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftpsprop.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/ftserv.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/services
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/services/svprop.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/services/svmm.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/internal/services/svcfftl.h
@@ -272,6 +277,8 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftbdf.h
../../../src/java.desktop/share/native/libfreetype/include/freetype/ftrender.h
../../../src/java.desktop/share/native/libfreetype/include/ft2build.h
../../../src/java.desktop/share/native/libfreetype/src
../../../src/java.desktop/share/native/libfreetype/src/type1
../../../src/java.desktop/share/native/libfreetype/src/type1/t1objs.c
../../../src/java.desktop/share/native/libfreetype/src/type1/t1load.h
../../../src/java.desktop/share/native/libfreetype/src/type1/t1afm.h
@@ -286,40 +293,42 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/type1/t1driver.c
../../../src/java.desktop/share/native/libfreetype/src/type1/t1parse.c
../../../src/java.desktop/share/native/libfreetype/src/type1/t1gload.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfobjs.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcmap.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttpost.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfntpic.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttkern.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcolr.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/pngshim.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttmtx.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttload.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfdriver.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttsbit.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcmapc.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcpal.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttkern.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttpost.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfntpic.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfobjs.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcmap.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttmtx.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/pngshim.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcolr.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttsbit.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sfdriver.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttload.c
../../../src/java.desktop/share/native/libfreetype/src/sfnt/sferrors.h
../../../src/java.desktop/share/native/libfreetype/src/sfnt/ttcpal.h
../../../src/java.desktop/share/native/libfreetype/src/smooth
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftgrays.c
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftsmooth.h
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftspic.h
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftsmerrs.h
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftgrays.h
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftspic.c
../../../src/java.desktop/share/native/libfreetype/src/smooth/ftsmooth.c
../../../src/java.desktop/share/native/libfreetype/src/cff
../../../src/java.desktop/share/native/libfreetype/src/cff/cffload.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffgload.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cffobjs.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cffparse.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffpic.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffcmap.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffdrivr.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cffparse.c
@@ -327,10 +336,10 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/cff/cffobjs.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffgload.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffload.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cffpic.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cffdrivr.h
../../../src/java.desktop/share/native/libfreetype/src/cff/cffcmap.c
../../../src/java.desktop/share/native/libfreetype/src/cff/cfferrs.h
../../../src/java.desktop/share/native/libfreetype/src/psaux
../../../src/java.desktop/share/native/libfreetype/src/psaux/psarrst.h
../../../src/java.desktop/share/native/libfreetype/src/psaux/psstack.h
../../../src/java.desktop/share/native/libfreetype/src/psaux/cffdecode.h
@@ -367,6 +376,7 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/psaux/afmparse.c
../../../src/java.desktop/share/native/libfreetype/src/psaux/psauxmod.h
../../../src/java.desktop/share/native/libfreetype/src/psaux/psread.h
../../../src/java.desktop/share/native/libfreetype/src/cid
../../../src/java.desktop/share/native/libfreetype/src/cid/cidtoken.h
../../../src/java.desktop/share/native/libfreetype/src/cid/cidriver.c
../../../src/java.desktop/share/native/libfreetype/src/cid/cidparse.c
@@ -379,11 +389,12 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/cid/cidparse.h
../../../src/java.desktop/share/native/libfreetype/src/cid/cidobjs.c
../../../src/java.desktop/share/native/libfreetype/src/cid/cidload.h
../../../src/java.desktop/share/native/libfreetype/src/autofit
../../../src/java.desktop/share/native/libfreetype/src/autofit/afindic.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afdummy.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afmodule.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afwarp.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afpic.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afblue.cin
../../../src/java.desktop/share/native/libfreetype/src/autofit/afglobal.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afcover.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afwrtsys.h
@@ -396,10 +407,10 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/autofit/afranges.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afcjk.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afstyles.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afblue.dat
../../../src/java.desktop/share/native/libfreetype/src/autofit/aferrors.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afdummy.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afindic.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/afpic.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afglobal.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afwarp.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afmodule.c
@@ -409,64 +420,58 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/autofit/aftypes.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afcjk.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afranges.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afblue.hin
../../../src/java.desktop/share/native/libfreetype/src/autofit/afloader.c
../../../src/java.desktop/share/native/libfreetype/src/autofit/aflatin.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afangles.h
../../../src/java.desktop/share/native/libfreetype/src/autofit/afhints.c
../../../src/java.desktop/share/native/libfreetype/src/pshinter
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshmod.c
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshrec.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshpic.c
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshglob.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshalgo.c
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshmod.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshnterr.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshpic.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshrec.c
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshalgo.h
../../../src/java.desktop/share/native/libfreetype/src/pshinter/pshglob.c
../../../src/java.desktop/share/native/libfreetype/src/truetype
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttinterp.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttpload.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttgxvar.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttsubpix.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/tterrors.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttdriver.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttpic.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttobjs.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttgload.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttgxvar.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttpload.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttinterp.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttpic.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttdriver.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttsubpix.c
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttobjs.h
../../../src/java.desktop/share/native/libfreetype/src/truetype/ttgload.c
../../../src/java.desktop/share/native/libfreetype/src/raster
../../../src/java.desktop/share/native/libfreetype/src/raster/ftmisc.h
../../../src/java.desktop/share/native/libfreetype/src/raster/rasterrs.h
../../../src/java.desktop/share/native/libfreetype/src/raster/rastpic.c
../../../src/java.desktop/share/native/libfreetype/src/raster/ftrend1.h
../../../src/java.desktop/share/native/libfreetype/src/raster/ftraster.h
../../../src/java.desktop/share/native/libfreetype/src/raster/rastpic.h
../../../src/java.desktop/share/native/libfreetype/src/raster/ftraster.c
../../../src/java.desktop/share/native/libfreetype/src/raster/ftrend1.c
../../../src/java.desktop/share/native/libfreetype/src/psnames
../../../src/java.desktop/share/native/libfreetype/src/psnames/psnamerr.h
../../../src/java.desktop/share/native/libfreetype/src/psnames/psmodule.c
../../../src/java.desktop/share/native/libfreetype/src/psnames/pspic.h
../../../src/java.desktop/share/native/libfreetype/src/psnames/pstables.h
../../../src/java.desktop/share/native/libfreetype/src/psnames/psmodule.h
../../../src/java.desktop/share/native/libfreetype/src/psnames/pspic.c
../../../src/java.desktop/share/native/libfreetype/src/base
../../../src/java.desktop/share/native/libfreetype/src/base/ftobjs.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftfntfmt.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftinit.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftapi.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftdbgmem.c
../../../src/java.desktop/share/native/libfreetype/src/base/fthash.c
../../../src/java.desktop/share/native/libfreetype/src/base/basepic.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftpic.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftbitmap.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftpsprop.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftcid.c
../../../src/java.desktop/share/native/libfreetype/src/base/md5.h
../../../src/java.desktop/share/native/libfreetype/src/base/ftglyph.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftgloadr.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftsystem.c
@@ -480,11 +485,9 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libfreetype/src/base/ftsnames.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftdebug.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftmm.c
../../../src/java.desktop/share/native/libfreetype/src/base/basepic.h
../../../src/java.desktop/share/native/libfreetype/src/base/ftbase.h
../../../src/java.desktop/share/native/libfreetype/src/base/ftfstype.c
../../../src/java.desktop/share/native/libfreetype/src/base/fttrigon.c
../../../src/java.desktop/share/native/libfreetype/src/base/md5.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftbbox.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftstroke.c
../../../src/java.desktop/share/native/libfreetype/src/base/ftgasp.c
@@ -742,38 +745,214 @@ set(SOURCE_FILES
../../../src/java.desktop/share/native/libjavajpeg/jidctred.c
../../../src/java.desktop/share/native/libjavajpeg/jpegint.h
../../../src/java.desktop/share/native/libjavajpeg/jdpostct.c
../../../src/java.desktop/share/native/libfontmanager
../../../src/java.desktop/share/native/libfontmanager/DrawGlyphList.c
../../../src/java.desktop/share/native/libfontmanager/HBShaper.c
../../../src/java.desktop/share/native/libfontmanager/scriptMapping.c
../../../src/java.desktop/share/native/libfontmanager/harfbuzz
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-fdsc-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-post-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic-machine.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-open-type.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-plan.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use-machine.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-base-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-head-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-coretext.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-win1256.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-khmer.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper-list.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-face.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-cff-interp-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-map.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-post-macroman.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-fallback.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-common.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-deprecated.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-blob.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-normalize.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-version.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-stat-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name-language.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-ltag-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-font.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-cff-interp-cs-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-kern.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-default.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-face.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-coretext.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-tag.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cff1-table.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-just-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color-colr-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-deprecated.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff1.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-kerx-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-vorg-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-blob.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-font.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic-table.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-kern-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-normalize.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-common.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-serialize.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name-language.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gpos-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var-avar-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff-common.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-fallback-shape.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cff1-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-face.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-string-array.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff1.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-lcar-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var-hvar-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gsubgpos.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-atomic.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-static.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn/ucdn.c
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn/ucdn.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn/ucdn_db.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-morx-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-cff2-interp-cs.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-khmer-machine.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-thai.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-hhea-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var-mvar-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-tag.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-plan.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-os2-unicode-ranges.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-warning.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-hdmx-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-khmer.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ft.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cff-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gdef-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-glyf-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-fallback.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-map.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-glyf.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cff2-table.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-font.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color-sbix-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-unicode-emoji-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-feat-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-object.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-myanmar.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-gasp-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-deserialize-json.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-vector.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-myanmar-machine.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic-fallback.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-debug.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-tag-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-vowel-constraints.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-iter.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-blob.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-face.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-trak-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-cff1-interp-cs.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-hmtx-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-ankr-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-cff-interp-dict-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-map.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-common.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-input.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color-cbdt-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color-cpal-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff2.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-utf.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-hebrew.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-map.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var-fvar-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-font.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-map.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-jstf-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-mutex.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-os2-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-face.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-layout-gsub-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-input.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-math-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cmap-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-layout-bsln-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-aat-map.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-font.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-maxp-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-buffer-deserialize-text.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-map.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-cff2.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-array.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape-plan.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-hangul.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-null.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-cff2-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-name.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset-glyf.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-set-digest.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-indic.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-open-file.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-machinery.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-myanmar.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-subset.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-color-svg-table.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-dsalgs.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-use-table.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-math.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-math.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ft.h
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-arabic.hh
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-shape-complex-vowel-constraints.cc
../../../src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shaper-impl.hh
../../../src/java.desktop/share/native/libfontmanager/glyphblitting.h
../../../src/java.desktop/share/native/libfontmanager/hb-jdk.h
../../../src/java.desktop/share/native/libfontmanager/fontconfig.h
../../../src/java.desktop/share/native/libfontmanager/hb-jdk-font.cc
../../../src/java.desktop/share/native/libfontmanager/freetypeScaler.c
../../../src/java.desktop/share/native/libfontmanager/scriptMapping.h
../../../src/java.desktop/share/native/libfontmanager/ColorGlyphSurfaceData.c
@@ -849,7 +1028,10 @@ set(SOURCE_FILES
../../../src/jdk.jdwp.agent/share/native/include/jdwpTransport.h
../../../src/hotspot/share/include/jmm.h
../../../src/java.base/share/native/include/jni.h
../../../src/java.base/share/native/include/jvmticmlr.h)
../../../src/java.base/share/native/include/jvmticmlr.h
../../../src/java.base/share/native/libzip/zlib/zutil.c
../../../src/java.base/share/native/libzip/zlib/inflate.c)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(SOURCE_FILES
@@ -911,7 +1093,6 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/CFileDialog.h
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.h
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/LWCToolkit.h
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/CGraphicsConfig.m
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/CDesktopPeer.m
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/PrintModel.h
../../../src/java.desktop/macosx/native/libawt_lwawt/awt/CTrayIcon.m
@@ -1149,10 +1330,8 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux"
../../../src/java.desktop/unix/native/libawt/awt/awt_Mlib.c
../../../src/java.desktop/unix/native/libawt/awt/awt_LoadLibrary.c
../../../src/java.desktop/unix/native/libawt/awt/initIDs.c
../../../src/java.desktop/unix/native/libawt_xawt/java2d/x11/XRBackendNative.c
../../../src/java.desktop/unix/native/libawt_xawt/java2d/x11/XRSurfaceData.c
../../../src/java.desktop/unix/native/libawt_xawt/awt
../../../src/java.desktop/unix/native/libawt_xawt/awt/gtk2_interface.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/randr.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/list.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_DrawingSurface.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/swing_GTKStyle.c
@@ -1167,8 +1346,6 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux"
../../../src/java.desktop/unix/native/libawt_xawt/awt/multi_font.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/multiVis.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_Event.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/Xrandr.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/robot_common.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_util.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/list.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/gtk2_interface.h
@@ -1176,24 +1353,15 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR ${CMAKE_SYSTEM_NAME} MATCHES "Linux"
../../../src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/gtk_interface.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_Robot.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/HPkeysym.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_Event.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/multiVis.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/canvas.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_AWTEvent.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/multi_font.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/robot_common.h
../../../src/java.desktop/unix/native/libawt_xawt/awt/sun_awt_X11_GtkFileDialogPeer.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_GraphicsEnv.c
../../../src/java.desktop/unix/native/libawt_xawt/awt/awt_InputMethod.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/awt_Desktop.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/XToolkit.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/awt_Taskbar.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/gnome_interface.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/XlibWrapper.c
../../../src/java.desktop/unix/native/libawt_xawt/xawt/gnome_interface.h
../../../src/java.desktop/unix/native/libawt_xawt/xawt/awt_Taskbar.h
../../../src/java.desktop/unix/native/libawt_xawt/xawt/XWindow.c
../../../src/java.desktop/unix/native/libawt_xawt/java2d/x11/XRBackendNative.c
../../../src/java.desktop/unix/native/libfontmanager/X11FontScaler.c
../../../src/java.desktop/unix/native/libfontmanager/X11TextRenderer.c
../../../src/java.desktop/unix/native/libsplashscreen/splashscreen_config.h

View File

@@ -0,0 +1,16 @@
VENDOR_NAME="JetBrains s.r.o."
VENDOR_VERSION_STRING="JBR-${JBSDK_VERSION_WITH_DOTS}.${JDK_BUILD_NUMBER}-${build_number}"
[ -z ${bundle_type} ] || VENDOR_VERSION_STRING="${VENDOR_VERSION_STRING}-${bundle_type}"
do_reset_changes=0
do_reset_dcevm=0
HEAD_REVISION=0
function do_exit() {
exit_code=$1
[ $do_reset_changes -eq 1 ] && git checkout HEAD modules.list src/java.desktop/share/classes/module-info.java
if [ $do_reset_dcevm -eq 1 ]; then
[ ! -z $HEAD_REVISION ] && git reset --hard $HEAD_REVISION
fi
exit $exit_code
}

View File

@@ -0,0 +1,87 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to bu built; possible values:
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
# jfx - the bundle 1) jbr with javafx only will be created
#
# 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.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
sh configure \
--disable-warnings-as-errors \
--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-import-modules=./modular-sdk \
--with-boot-jdk=amazon-corretto-11.0.5.10.1-linux-aarch64 \
--enable-cds=yes || exit $?
make clean CONF=linux-aarch64-normal-server-release || exit $?
make images CONF=linux-aarch64-normal-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-aarch64-b${build_number}
BASE_DIR=build/linux-aarch64-normal-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
tar -pcf $JBSDK.tar \
--exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
-C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
gzip $JBSDK.tar || exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
JBR=$JBR_BASE_NAME-linux-aarch64-b$build_number
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.aarch64
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.aarch64 | sed s/" "//g | sed s/,$//g) \
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar -pcf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-aarch64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?

View File

@@ -0,0 +1,168 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# jcef - the release bundles with jcef
# jfx - the release bundles with javafx
# jcef_jfx - the release bundles with jcef and javafx
# dcevm - the release bundles with dcevm patches
# nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# MODULAR_SDK_PATH - specifies the path to the directory where imported modules are located.
# By default imported modules should be located in ./modular-sdk
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
WITH_IMPORT_MODULES="--with-import-modules=${MODULAR_SDK_PATH:=./modular-sdk}"
JCEF_PATH=${JCEF_PATH:=./jcef_linux_x64}
source jb/project/tools/common.sh
function create_jbr {
JBR_BUNDLE=jbr_${bundle_type}
case "${bundle_type}" in
"jfx" | "jcef" | "dcevm" | "nomod" | "fd")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
cat modules.list > modules_tmp.list
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
JBR=${JBR_BASE_NAME}-linux-x64-b${build_number}
echo Running jlink....
$JSDK/bin/jlink \
--module-path $JSDK/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output $BASE_DIR/$JBR_BUNDLE || do_exit $?
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]; then
cp -R $BASE_DIR/$JBR_BUNDLE $BASE_DIR/jbr
rsync -av ${JCEF_PATH}/ $BASE_DIR/$JBR_BUNDLE/lib --exclude="modular-sdk" || do_exit $?
fi
grep -v "^JAVA_VERSION" $JSDK/release | grep -v "^MODULES" >> $BASE_DIR/$JBR_BUNDLE/release
echo Creating ${JBR}.tar.gz ...
rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
tar -pcf ${JBR}.tar -C ${BASE_DIR} jbr || do_exit $?
gzip -f ${JBR}.tar || do_exit $?
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86_64-normal-server-release
JBSDK=${JBRSDK_BASE_NAME}-linux-x64-b${build_number}
case "$bundle_type" in
"jfx")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
do_reset_changes=1
;;
"jcef")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"jfx_jcef")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"nomod")
WITH_IMPORT_MODULES=""
;;
"fd")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86_64-normal-server-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-linux-x64-fastdebug-b${build_number}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
sh configure \
--disable-warnings-as-errors \
$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_IMPORT_MODULES \
--enable-cds=yes || do_exit $?
make clean images CONF=$RELEASE_NAME || do_exit $?
JSDK=build/${RELEASE_NAME}/images/jdk
echo Fixing permissions
chmod -R a+r $JSDK
BASE_DIR=build/${RELEASE_NAME}/images
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE}
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || do_exit $?
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]; then
rsync -av ${JCEF_PATH}/ $BASE_DIR/$JBRSDK_BUNDLE/lib --exclude="modular-sdk" || do_exit $?
fi
if [ "${bundle_type}" == "jcef" ] || [ "${bundle_type}" == "fd" ]; then
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
tar -pcf ${JBSDK}.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
-C ${BASE_DIR} ${JBRSDK_BUNDLE} || do_exit $?
gzip -f ${JBSDK}.tar || do_exit $?
fi
create_jbr || do_exit $?
if [ "$bundle_type" == "jcef" ]; then
make test-image CONF=$RELEASE_NAME || do_exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x64-b$build_number
echo Creating $JBSDK_TEST.tar.gz ...
tar -pcf ${JBRSDK_TEST}.tar -C ${BASE_DIR} --exclude='test/jdk/demos' test || do_exit $?
gzip -f ${JBRSDK_TEST}.tar || do_exit $?
fi
do_exit 0

View File

@@ -0,0 +1,83 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to bu built; possible values:
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
# jfx - the bundle 1) jbr with javafx only will be created
#
# 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.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
linux32 bash configure \
--disable-warnings-as-errors \
--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=/jbrsdk-11.0.5-b1 \
--enable-cds=yes || exit $?
make clean CONF=linux-x86-normal-server-release || exit $?
make images CONF=linux-x86-normal-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-x86-b${build_number}
BASE_DIR=build/linux-x86-normal-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
echo Creating $JBSDK.tar.gz ...
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/release
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man -C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
gzip $JBSDK.tar || exit $?
JBR_BUNDLE=jbr
JBR_BASE_NAME=jbr-$JBSDK_VERSION
rm -rf $BASE_DIR/$JBR_BUNDLE
JBR=$JBR_BASE_NAME-linux-x86-b$build_number
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g | sed s/,$//g) --output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
echo Creating $JBR.tar.gz ...
tar -pcf $JBR.tar -C $BASE_DIR $JBR_BUNDLE || exit $?
gzip $JBR.tar || exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x86-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' --exclude='test/hotspot/gtest' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?

View File

@@ -0,0 +1,239 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# jcef - the release bundles with jcef
# jfx - the release bundles with javafx
# jcef_jfx - the release bundles with jcef and javafx
# dcevm - the release bundles with dcevm patches
# nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# MODULAR_SDK_PATH - specifies the path to the directory where imported modules are located.
# By default imported modules should be located in ./modular-sdk
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_mac
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
architecture=$5 # aarch64 or x64
enable_aot=$6 # temporary param for building test jre with aot under aarch64
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
WITH_IMPORT_MODULES="--with-import-modules=${MODULAR_SDK_PATH:=./modular-sdk}"
JCEF_PATH=${JCEF_PATH:=./jcef_mac}
architecture=${architecture:=x64}
source jb/project/tools/common.sh
function copyJNF {
__contents_dir=$1
# we can't notarize this library as usual framework (with headers and tbd-file)
# but single library notarizes correctly
mkdir -p ${__contents_dir}/Frameworks/JavaNativeFoundation.framework/Resources
cp -p Frameworks/JavaNativeFoundation.framework/JavaNativeFoundation \
${__contents_dir}/Frameworks/JavaNativeFoundation.framework || do_exit $?
cp -p Frameworks/JavaNativeFoundation.framework/Resources/Info.plist \
${__contents_dir}/Frameworks/JavaNativeFoundation.framework/Resources || do_exit $?
# unsign JavaNativeFoundation binary (otherwise notarization will fail)
codesign --remove-signature ${__contents_dir}/Frameworks/JavaNativeFoundation.framework/JavaNativeFoundation || do_exit $?
}
function create_jbr {
JBR_BUNDLE=jbr_${bundle_type}
case "${bundle_type}" in
"jfx" | "jcef" | "dcevm" | "nomod" | "fd")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
if [[ "${architecture}" == *aarch64* ]] && [[ "${enable_aot}" != *enable_aot* ]]; then
# aot isn't supported yet, so remove dependent modules
echo "Exclude jdk.internal.vm.compiler and jdk.aot (because aot not supported yet)"
cat modules.list | \
grep -v "jdk.internal.vm.compiler\|jdk.aot" \
> modules_tmp.list
else
cat modules.list > modules_tmp.list
fi
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
JRE_CONTENTS=${BASE_DIR}/${JBR_BUNDLE}/Contents
JRE_HOME=${JRE_CONTENTS}/Home
if [ -d "${JRE_CONTENTS}" ]; then
rm -rf ${JRE_CONTENTS}
fi
mkdir -p ${JRE_CONTENTS}
JBR=${JBR_BASE_NAME}-osx-${architecture}-b${build_number}
echo Running jlink....
${BASE_DIR}/$JBRSDK_BUNDLE/Contents/Home/bin/jlink \
--module-path ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output ${JRE_HOME} || do_exit $?
grep -v "^JAVA_VERSION" ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/release | grep -v "^MODULES" >> ${JRE_HOME}/release
cp -R ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/MacOS ${JRE_CONTENTS}
cp ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Info.plist ${JRE_CONTENTS}
rm -rf ${JRE_CONTENTS}/Frameworks || do_exit $?
if [[ "${architecture}" == *aarch64* ]]; then
# we can't notarize this library as usual framework (with headers and tbd-file)
# but single library notarizes correctly
copyJNF ${JRE_CONTENTS}
fi
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]; then
cp -a ${JCEF_PATH}/Frameworks ${JRE_CONTENTS} || do_exit $?
fi
echo Creating ${JBR}.tar.gz ...
rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
COPYFILE_DISABLE=1 tar -pczf ${JBR}.tar.gz --exclude='*.dSYM' --exclude='man' -C ${BASE_DIR} jbr || do_exit $?
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WITH_DEBUG_LEVEL="--with-debug-level=release"
CONF_ARCHITECTURE=x86_64
if [[ "${architecture}" == *aarch64* ]]; then
CONF_ARCHITECTURE=aarch64
fi
CONF_NAME=macosx-${CONF_ARCHITECTURE}-normal-server-release
JBSDK=${JBRSDK_BASE_NAME}-osx-${architecture}-b${build_number}
case "$bundle_type" in
"jfx")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
do_reset_changes=1
;;
"jcef")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"jfx_jcef")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"nomod")
WITH_IMPORT_MODULES=""
;;
"fd")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
CONF_NAME=macosx-${CONF_ARCHITECTURE}-normal-server-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-osx-${architecture}-fastdebug-b${build_number}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
if [[ "${architecture}" == *aarch64* ]]; then
# NOTE: aot, cds aren't supported yet
WITH_JVM_FEATURES="--with-jvm-features=-aot"
if [[ "${enable_aot}" == *enable_aot* ]]; then
echo "Enable unstable jvm feature: AOT"
WITH_JVM_FEATURES=""
fi
sh configure \
--disable-warnings-as-errors \
$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_IMPORT_MODULES \
--with-boot-jdk=`/usr/libexec/java_home -v 11` \
--disable-hotspot-gtest --disable-javac-server --disable-full-docs --disable-manpages \
--enable-cds=no \
$WITH_JVM_FEATURES \
--with-extra-cflags="-F$(pwd)/Frameworks" \
--with-extra-cxxflags="-F$(pwd)/Frameworks" \
--with-extra-ldflags="-F$(pwd)/Frameworks" || do_exit $?
else
sh configure \
--disable-warnings-as-errors \
$WITH_DEBUG_LEVEL \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
$WITH_IMPORT_MODULES \
--with-boot-jdk=`/usr/libexec/java_home -v 11` \
--enable-cds=yes || do_exit $?
fi
make clean CONF=$CONF_NAME || do_exit $?
make images CONF=$CONF_NAME || do_exit $?
JSDK=build/${CONF_NAME}/images/jdk-bundle
BASE_DIR=jre
JBRSDK_BUNDLE=jbrsdk
rm -rf $BASE_DIR
mkdir $BASE_DIR || do_exit $?
cp -a $JSDK/jdk-$JBSDK_VERSION_WITH_DOTS.jdk $BASE_DIR/$JBRSDK_BUNDLE || do_exit $?
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]; then
cp -a ${JCEF_PATH}/Frameworks $BASE_DIR/$JBRSDK_BUNDLE/Contents/
fi
if [ "${bundle_type}" == "jcef" ] || [ "${bundle_type}" == "fd" ]; then
echo Creating $JBSDK.tar.gz ...
if [[ "${architecture}" == *aarch64* ]]; then
copyJNF $BASE_DIR/$JBRSDK_BUNDLE/Contents
fi
sed 's/JBR/JBRSDK/g' ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/release > release
mv release ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/release
[ -f "${JBSDK}.tar.gz" ] && rm "${JBSDK}.tar.gz"
COPYFILE_DISABLE=1 tar -pczf ${JBSDK}.tar.gz -C ${BASE_DIR} \
--exclude='.DS_Store' --exclude='*~' \
--exclude='Home/demo' --exclude='Home/man' --exclude='Home/sample' \
${JBRSDK_BUNDLE} || do_exit $?
fi
create_jbr || do_exit $?
if [ "$bundle_type" == "jcef" ]; then
make test-image CONF=$CONF_NAME || do_exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-osx-test-${architecture}-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
[ -f "${JBRSDK_TEST}.tar.gz" ] && rm "${JBRSDK_TEST}.tar.gz"
COPYFILE_DISABLE=1 tar -pczf ${JBRSDK_TEST}.tar.gz -C build/${CONF_NAME}/images \
--exclude='test/jdk/demos' test || do_exit $?
fi
do_exit 0

View File

@@ -58,7 +58,7 @@ file="$APP_NAME.zip"
log "Zipping $file..."
rm -rf "$file"
ditto -c -k --sequesterRsrc --keepParent "$APP_DIRECTORY/Contents" "$file"
ditto -c -k --sequesterRsrc --keepParent "$APP_DIRECTORY" "$file"
log "Notarizing $file..."
rm -rf "altool.init.out" "altool.check.out"

View File

@@ -26,11 +26,12 @@ log "Signing libraries and executables..."
# -perm +111 searches for executables
for f in \
"Contents/Home/bin" \
"Contents/Home/lib"; do
"Contents/Home/lib" \
"Contents/Frameworks"; do
if [ -d "$APP_DIRECTORY/$f" ]; then
find "$APP_DIRECTORY/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
-exec codesign --timestamp \
-exec codesign --timestamp --force \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
fi
@@ -54,7 +55,7 @@ find "$APP_DIRECTORY" -name '*.jar' \
find jarfolder \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "jattach" \) \
-exec codesign --timestamp \
-exec codesign --timestamp --force \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
@@ -70,7 +71,7 @@ for f in \
if [ -d "$APP_DIRECTORY/$f" ]; then
find "$APP_DIRECTORY/$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
-exec codesign --timestamp \
-exec codesign --timestamp --force \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml {} \;
fi

View File

@@ -1,4 +1,4 @@
#!/bin/bash
#!/bin/bash -x
#immediately exit script with an error if a command fails
set -euo pipefail
@@ -32,16 +32,14 @@ mkdir "$BACKUP_JMODS"
log "Unzipping $INPUT_FILE to $EXPLODED ..."
tar -xzvf "$INPUT_FILE" --directory $EXPLODED
rm "$INPUT_FILE"
BUILD_NAME="$(ls "$EXPLODED")"
sed -i '' s/BNDL/APPL/ $EXPLODED/$BUILD_NAME/Contents/Info.plist
rm -f $EXPLODED/$BUILD_NAME/Contents/CodeResources
rm "$INPUT_FILE"
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/jmods; then
mv $EXPLODED/$BUILD_NAME/Contents/Home/jmods $BACKUP_JMODS
fi
if test -f $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib; then
mv $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib $BACKUP_JMODS
fi
#log "$INPUT_FILE unzipped and removed"
log "$INPUT_FILE extracted and removed"
APPLICATION_PATH="$EXPLODED/$BUILD_NAME"
@@ -125,15 +123,12 @@ log "Zipping $BUILD_NAME to $INPUT_FILE ..."
(
#cd "$EXPLODED"
#ditto -c -k --sequesterRsrc --keepParent "$BUILD_NAME" "../$INPUT_FILE"
if test ! -z $(ls $BACKUP_JMODS/libjli.dylib); then
mv $BACKUP_JMODS/libjli.dylib $EXPLODED/$BUILD_NAME/Contents/MacOS
fi
if test -d $BACKUP_JMODS/jmods; then
mv $BACKUP_JMODS/jmods $EXPLODED/$BUILD_NAME/Contents/Home
fi
COPYFILE_DISABLE=1 tar -pczf $INPUT_FILE --exclude='*.dSYM' --exclude='man' -C $EXPLODED $BUILD_NAME
tar -pczvf $INPUT_FILE --exclude='*.dSYM' --exclude='man' -C $EXPLODED $BUILD_NAME
log "Finished zipping"
)
rm -rf "$EXPLODED"
log "Done"
log "Done"

View File

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

View File

@@ -0,0 +1,18 @@
diff --git modules.list modules.list
index e23d793ca61..14b9a6c8e50 100644
--- modules.list
+++ modules.list
@@ -20,6 +20,13 @@ java.sql.rowset,
java.transaction.xa,
java.xml,
java.xml.crypto,
+javafx.base,
+javafx.controls,
+javafx.fxml,
+javafx.graphics,
+javafx.media,
+javafx.swing,
+javafx.web,
jdk.accessibility,
jdk.aot,
jdk.attach,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,488 @@
From dcf2c02f9ce950170b0e448b8ef3aceb19732a86 Mon Sep 17 00:00:00 2001
From: skybber <lada.dvorak7@gmail.com>
Date: Wed, 12 Dec 2018 19:38:28 +0100
Subject: [PATCH 03/17] Support for Concurrent Mark Sweep (CMS) collector
---
.../share/gc/cms/compactibleFreeListSpace.cpp | 139 ++++++++++++------
.../share/gc/cms/compactibleFreeListSpace.hpp | 5 +-
.../gc/cms/concurrentMarkSweepThread.cpp | 10 +-
src/hotspot/share/gc/serial/markSweep.cpp | 2 +-
src/hotspot/share/gc/shared/gcConfig.cpp | 2 +-
src/hotspot/share/gc/shared/space.cpp | 16 +-
src/hotspot/share/gc/shared/space.hpp | 6 +-
src/hotspot/share/gc/shared/space.inline.hpp | 16 +-
.../prims/jvmtiEnhancedRedefineClasses.cpp | 12 +-
src/hotspot/share/runtime/arguments.cpp | 6 +-
10 files changed, 135 insertions(+), 79 deletions(-)
diff --git a/src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp b/src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp
index 4c9918627a2..f335173576f 100644
--- a/src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp
+++ b/src/hotspot/share/gc/cms/compactibleFreeListSpace.cpp
@@ -376,55 +376,58 @@ CompactibleFreeListSpace::CompactibleFreeListSpace(BlockOffsetSharedArray* bs, M
_used_stable = 0;
}
+#define forward_compact_top_DEFN() \
+ assert(this == cp->space, "'this' should be current compaction space."); \
+ size_t compaction_max_size = pointer_delta(end(), compact_top); \
+ assert(adjustObjectSize(size) == cp->space->adjust_object_size_v(size), \
+ "virtual adjustObjectSize_v() method is not correct"); \
+ size_t adjusted_size = adjustObjectSize(size); \
+ assert(compaction_max_size >= MinChunkSize || compaction_max_size == 0, \
+ "no small fragments allowed"); \
+ assert(minimum_free_block_size() == MinChunkSize, \
+ "for de-virtualized reference below"); \
+ /* Can't leave a nonzero size, residual fragment smaller than MinChunkSize */ \
+ if (adjusted_size + MinChunkSize > compaction_max_size && \
+ adjusted_size != compaction_max_size) { \
+ do { \
+ /* switch to next compaction space*/ \
+ cp->space->set_compaction_top(compact_top); \
+ cp->space = cp->space->next_compaction_space(); \
+ if (cp->space == NULL) { \
+ cp->gen = CMSHeap::heap()->young_gen(); \
+ assert(cp->gen != NULL, "compaction must succeed"); \
+ cp->space = cp->gen->first_compaction_space(); \
+ assert(cp->space != NULL, "generation must have a first compaction space"); \
+ } \
+ compact_top = cp->space->bottom(); \
+ cp->space->set_compaction_top(compact_top); \
+ /* The correct adjusted_size may not be the same as that for this method */ \
+ /* (i.e., cp->space may no longer be "this" so adjust the size again. */ \
+ /* Use the virtual method which is not used above to save the virtual */ \
+ /* dispatch. */ \
+ adjusted_size = cp->space->adjust_object_size_v(size); \
+ compaction_max_size = pointer_delta(cp->space->end(), compact_top); \
+ assert(cp->space->minimum_free_block_size() == 0, "just checking"); \
+ } while (adjusted_size > compaction_max_size); \
+ }
+
+
HeapWord* CompactibleFreeListSpace::forward_compact_top(size_t size,
CompactPoint* cp, HeapWord* compact_top) {
- ShouldNotReachHere();
- return NULL;
+ forward_compact_top_DEFN()
+ return compact_top;
}
// Like CompactibleSpace forward() but always calls cross_threshold() to
// update the block offset table. Removed initialize_threshold call because
// CFLS does not use a block offset array for contiguous spaces.
HeapWord* CompactibleFreeListSpace::forward(oop q, size_t size,
- CompactPoint* cp, HeapWord* compact_top) {
- // q is alive
- // First check if we should switch compaction space
- assert(this == cp->space, "'this' should be current compaction space.");
- size_t compaction_max_size = pointer_delta(end(), compact_top);
- assert(adjustObjectSize(size) == cp->space->adjust_object_size_v(size),
- "virtual adjustObjectSize_v() method is not correct");
- size_t adjusted_size = adjustObjectSize(size);
- assert(compaction_max_size >= MinChunkSize || compaction_max_size == 0,
- "no small fragments allowed");
- assert(minimum_free_block_size() == MinChunkSize,
- "for de-virtualized reference below");
- // Can't leave a nonzero size, residual fragment smaller than MinChunkSize
- if (adjusted_size + MinChunkSize > compaction_max_size &&
- adjusted_size != compaction_max_size) {
- do {
- // switch to next compaction space
- cp->space->set_compaction_top(compact_top);
- cp->space = cp->space->next_compaction_space();
- if (cp->space == NULL) {
- cp->gen = CMSHeap::heap()->young_gen();
- assert(cp->gen != NULL, "compaction must succeed");
- cp->space = cp->gen->first_compaction_space();
- assert(cp->space != NULL, "generation must have a first compaction space");
- }
- compact_top = cp->space->bottom();
- cp->space->set_compaction_top(compact_top);
- // The correct adjusted_size may not be the same as that for this method
- // (i.e., cp->space may no longer be "this" so adjust the size again.
- // Use the virtual method which is not used above to save the virtual
- // dispatch.
- adjusted_size = cp->space->adjust_object_size_v(size);
- compaction_max_size = pointer_delta(cp->space->end(), compact_top);
- assert(cp->space->minimum_free_block_size() == 0, "just checking");
- } while (adjusted_size > compaction_max_size);
- }
+ CompactPoint* cp, HeapWord* compact_top, bool force_forward) {
+ forward_compact_top_DEFN()
// store the forwarding pointer into the mark word
- if ((HeapWord*)q != compact_top) {
+ // the size of object changed for: new_version() != NULL
+ if (force_forward || (HeapWord*)q != compact_top || q->klass()->new_version() != NULL) {
q->forward_to(oop(compact_top));
assert(q->is_gc_marked(), "encoding the pointer should preserve the mark");
} else {
@@ -2209,13 +2212,60 @@ CompactibleFreeListSpace::refillLinearAllocBlock(LinearAllocBlock* blk) {
// Support for compaction
void CompactibleFreeListSpace::prepare_for_compaction(CompactPoint* cp) {
- scan_and_forward(this, cp, false);
- // of the free lists doesn't work after.
+ if (!Universe::is_redefining_gc_run()) {
+ scan_and_forward(this, cp, false);
+ } else {
+ // Redefinition run
+ scan_and_forward(this, cp, true);
+ }
// Prepare_for_compaction() uses the space between live objects
// so that later phase can skip dead space quickly. So verification
// of the free lists doesn't work after.
}
+bool CompactibleFreeListSpace::must_rescue(oop old_obj, oop new_obj) {
+ // Only redefined objects can have the need to be rescued.
+ if (oop(old_obj)->klass()->new_version() == NULL) return false;
+
+ int new_size = adjustObjectSize(old_obj->size_given_klass(oop(old_obj)->klass()->new_version()));
+ int original_size = adjustObjectSize(old_obj->size());
+
+ Generation* tenured_gen = CMSHeap::heap()->old_gen();
+ bool old_in_tenured = tenured_gen->is_in_reserved(old_obj);
+ bool new_in_tenured = tenured_gen->is_in_reserved(new_obj);
+ if (old_in_tenured == new_in_tenured) {
+ // Rescue if object may overlap with a higher memory address.
+ bool overlap = ((HeapWord*)old_obj + original_size < (HeapWord*)new_obj + new_size);
+ if (old_in_tenured) {
+ // Old and new address are in same space, so just compare the address.
+ // Must rescue if object moves towards the top of the space.
+ assert(space_index(old_obj) == space_index(new_obj), "old_obj and new_obj must be in same space");
+ } else {
+ // In the new generation, eden is located before the from space, so a
+ // simple pointer comparison is sufficient.
+ assert(CMSHeap::heap()->young_gen()->is_in_reserved(old_obj), "old_obj must be in DefNewGeneration");
+ assert(CMSHeap::heap()->young_gen()->is_in_reserved(new_obj), "new_obj must be in DefNewGeneration");
+ assert(overlap == (space_index(old_obj) < space_index(new_obj)), "slow and fast computation must yield same result");
+ }
+ return overlap;
+
+ } else {
+ assert(space_index(old_obj) != space_index(new_obj), "old_obj and new_obj must be in different spaces");
+ if (new_in_tenured) {
+ // Must never rescue when moving from the new into the old generation.
+ assert(CMSHeap::heap()->young_gen()->is_in_reserved(old_obj), "old_obj must be in DefNewGeneration");
+ assert(space_index(old_obj) > space_index(new_obj), "must be");
+ return false;
+
+ } else /* if (tenured_gen->is_in_reserved(old_obj)) */ {
+ // Must always rescue when moving from the old into the new generation.
+ assert(CMSHeap::heap()->young_gen()->is_in_reserved(new_obj), "new_obj must be in DefNewGeneration");
+ assert(space_index(old_obj) < space_index(new_obj), "must be");
+ return true;
+ }
+ }
+}
+
void CompactibleFreeListSpace::adjust_pointers() {
// In other versions of adjust_pointers(), a bail out
// based on the amount of live data in the generation
@@ -2228,7 +2278,12 @@ void CompactibleFreeListSpace::adjust_pointers() {
}
void CompactibleFreeListSpace::compact() {
- scan_and_compact(this, false);
+ if(!Universe::is_redefining_gc_run()) {
+ scan_and_compact(this, false);
+ } else {
+ // Redefinition run
+ scan_and_compact(this, true);
+ }
}
// Fragmentation metric = 1 - [sum of (fbs**2) / (sum of fbs)**2]
diff --git a/src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp b/src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp
index 9fd2ea58320..d29b81f6fca 100644
--- a/src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp
+++ b/src/hotspot/share/gc/cms/compactibleFreeListSpace.hpp
@@ -201,7 +201,7 @@ class CompactibleFreeListSpace: public CompactibleSpace {
// Support for compacting cms
HeapWord* cross_threshold(HeapWord* start, HeapWord* end);
HeapWord* forward_compact_top(size_t size, CompactPoint* cp, HeapWord* compact_top);
- HeapWord* forward(oop q, size_t size, CompactPoint* cp, HeapWord* compact_top);
+ HeapWord* forward(oop q, size_t size, CompactPoint* cp, HeapWord* compact_top, bool force_forward);
// Initialization helpers.
void initializeIndexedFreeListArray();
@@ -576,6 +576,9 @@ class CompactibleFreeListSpace: public CompactibleSpace {
// Support for compaction.
void prepare_for_compaction(CompactPoint* cp);
+
+ bool must_rescue(oop old_obj, oop new_obj);
+
void adjust_pointers();
void compact();
// Reset the space to reflect the fact that a compaction of the
diff --git a/src/hotspot/share/gc/cms/concurrentMarkSweepThread.cpp b/src/hotspot/share/gc/cms/concurrentMarkSweepThread.cpp
index 3ada5755875..b6e930922d7 100644
--- a/src/hotspot/share/gc/cms/concurrentMarkSweepThread.cpp
+++ b/src/hotspot/share/gc/cms/concurrentMarkSweepThread.cpp
@@ -78,10 +78,12 @@ void ConcurrentMarkSweepThread::run_service() {
while (!should_terminate()) {
sleepBeforeNextCycle();
if (should_terminate()) break;
- GCIdMark gc_id_mark;
- GCCause::Cause cause = _collector->_full_gc_requested ?
- _collector->_full_gc_cause : GCCause::_cms_concurrent_mark;
- _collector->collect_in_background(cause);
+ if (!Universe::is_redefining_gc_run()) {
+ GCIdMark gc_id_mark;
+ GCCause::Cause cause = _collector->_full_gc_requested ?
+ _collector->_full_gc_cause : GCCause::_cms_concurrent_mark;
+ _collector->collect_in_background(cause);
+ }
}
// Check that the state of any protocol for synchronization
diff --git a/src/hotspot/share/gc/serial/markSweep.cpp b/src/hotspot/share/gc/serial/markSweep.cpp
index d0ff86c8215..b4ed59f020c 100644
--- a/src/hotspot/share/gc/serial/markSweep.cpp
+++ b/src/hotspot/share/gc/serial/markSweep.cpp
@@ -247,7 +247,7 @@ void MarkSweep::copy_rescued_objects_back() {
FREE_RESOURCE_ARRAY(HeapWord, rescued_ptr, size);
- new_obj->init_mark();
+ new_obj->init_mark_raw();
assert(oopDesc::is_oop(new_obj), "must be a valid oop");
}
_rescued_oops->clear();
diff --git a/src/hotspot/share/gc/shared/gcConfig.cpp b/src/hotspot/share/gc/shared/gcConfig.cpp
index 9779df92447..adb0f5dd25c 100644
--- a/src/hotspot/share/gc/shared/gcConfig.cpp
+++ b/src/hotspot/share/gc/shared/gcConfig.cpp
@@ -106,7 +106,7 @@ void GCConfig::fail_if_unsupported_gc_is_selected() {
}
void GCConfig::select_gc_ergonomically() {
- if (AllowEnhancedClassRedefinition) {
+ if (AllowEnhancedClassRedefinition && !UseConcMarkSweepGC) {
// Enhanced class redefinition only supports serial GC at the moment
FLAG_SET_ERGO(bool, UseSerialGC, true);
} else if (os::is_server_class_machine()) {
diff --git a/src/hotspot/share/gc/shared/space.cpp b/src/hotspot/share/gc/shared/space.cpp
index bc0dd1980db..56b144b46f1 100644
--- a/src/hotspot/share/gc/shared/space.cpp
+++ b/src/hotspot/share/gc/shared/space.cpp
@@ -388,11 +388,11 @@ HeapWord* CompactibleSpace::forward_compact_top(size_t size, CompactPoint* cp, H
}
HeapWord* CompactibleSpace::forward(oop q, size_t size,
- CompactPoint* cp, HeapWord* compact_top) {
+ CompactPoint* cp, HeapWord* compact_top, bool force_forward) {
compact_top = forward_compact_top(size, cp, compact_top);
// store the forwarding pointer into the mark word
- if ((HeapWord*)q != compact_top || (size_t)q->size() != size) {
+ if (force_forward || (HeapWord*)q != compact_top || (size_t)q->size() != size) {
q->forward_to(oop(compact_top));
assert(q->is_gc_marked(), "encoding the pointer should preserve the mark");
} else {
@@ -514,7 +514,7 @@ bool CompactibleSpace::must_rescue(oop old_obj, oop new_obj) {
} else {
assert(space_index(old_obj) != space_index(new_obj), "old_obj and new_obj must be in different spaces");
- if (tenured_gen->is_in_reserved(new_obj)) {
+ if (new_in_tenured) {
// Must never rescue when moving from the new into the old generation.
assert(GenCollectedHeap::heap()->young_gen()->is_in_reserved(old_obj), "old_obj must be in DefNewGeneration");
assert(space_index(old_obj) > space_index(new_obj), "must be");
@@ -858,14 +858,14 @@ void OffsetTableContigSpace::verify() const {
// Compute the forward sizes and leave out objects whose position could
// possibly overlap other objects.
HeapWord* CompactibleSpace::forward_with_rescue(HeapWord* q, size_t size,
- CompactPoint* cp, HeapWord* compact_top) {
+ CompactPoint* cp, HeapWord* compact_top, bool force_forward) {
size_t forward_size = size;
// (DCEVM) There is a new version of the class of q => different size
if (oop(q)->klass()->new_version() != NULL) {
size_t new_size = oop(q)->size_given_klass(oop(q)->klass()->new_version());
- assert(size != new_size, "instances without changed size have to be updated prior to GC run");
+ // assert(size != new_size, "instances without changed size have to be updated prior to GC run");
forward_size = new_size;
}
@@ -879,7 +879,7 @@ HeapWord* CompactibleSpace::forward_with_rescue(HeapWord* q, size_t size,
return compact_top;
}
- return forward(oop(q), forward_size, cp, compact_top);
+ return forward(oop(q), forward_size, cp, compact_top, force_forward);
}
// Compute the forwarding addresses for the objects that need to be rescued.
@@ -895,11 +895,11 @@ HeapWord* CompactibleSpace::forward_rescued(CompactPoint* cp, HeapWord* compact_
// (DCEVM) There is a new version of the class of q => different size
if (oop(q)->klass()->new_version() != NULL) {
size_t new_size = oop(q)->size_given_klass(oop(q)->klass()->new_version());
- assert(size != new_size, "instances without changed size have to be updated prior to GC run");
+ // assert(size != new_size, "instances without changed size have to be updated prior to GC run");
size = new_size;
}
- compact_top = cp->space->forward(oop(q), size, cp, compact_top);
+ compact_top = cp->space->forward(oop(q), size, cp, compact_top, true);
assert(compact_top <= end(), "must not write over end of space!");
}
MarkSweep::_rescued_oops->clear();
diff --git a/src/hotspot/share/gc/shared/space.hpp b/src/hotspot/share/gc/shared/space.hpp
index 8eb5669fb79..901c89d8a30 100644
--- a/src/hotspot/share/gc/shared/space.hpp
+++ b/src/hotspot/share/gc/shared/space.hpp
@@ -421,7 +421,7 @@ public:
virtual void prepare_for_compaction(CompactPoint* cp) = 0;
// MarkSweep support phase3
DEBUG_ONLY(int space_index(oop obj));
- bool must_rescue(oop old_obj, oop new_obj);
+ virtual bool must_rescue(oop old_obj, oop new_obj);
HeapWord* rescue(HeapWord* old_obj);
virtual void adjust_pointers();
// MarkSweep support phase4
@@ -452,11 +452,11 @@ public:
// function of the then-current compaction space, and updates "cp->threshold
// accordingly".
virtual HeapWord* forward(oop q, size_t size, CompactPoint* cp,
- HeapWord* compact_top);
+ HeapWord* compact_top, bool force_forward);
// (DCEVM) same as forwad, but can rescue objects. Invoked only during
// redefinition runs
HeapWord* forward_with_rescue(HeapWord* q, size_t size, CompactPoint* cp,
- HeapWord* compact_top);
+ HeapWord* compact_top, bool force_forward);
HeapWord* forward_rescued(CompactPoint* cp, HeapWord* compact_top);
diff --git a/src/hotspot/share/gc/shared/space.inline.hpp b/src/hotspot/share/gc/shared/space.inline.hpp
index 6b109fcd2e5..8c255d6d428 100644
--- a/src/hotspot/share/gc/shared/space.inline.hpp
+++ b/src/hotspot/share/gc/shared/space.inline.hpp
@@ -163,6 +163,8 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
HeapWord* cur_obj = space->bottom();
HeapWord* scan_limit = space->scan_limit();
+ bool force_forward = false;
+
while (cur_obj < scan_limit) {
assert(!space->scanned_block_is_obj(cur_obj) ||
oop(cur_obj)->mark_raw()->is_marked() || oop(cur_obj)->mark_raw()->is_unlocked() ||
@@ -174,14 +176,15 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
size_t size = space->scanned_block_size(cur_obj);
if (redefinition_run) {
- compact_top = cp->space->forward_with_rescue(cur_obj, size, cp, compact_top);
+ compact_top = cp->space->forward_with_rescue(cur_obj, size, cp, compact_top, force_forward);
if (first_dead == NULL && oop(cur_obj)->is_gc_marked()) {
/* Was moved (otherwise, forward would reset mark),
set first_dead to here */
first_dead = cur_obj;
+ force_forward = true;
}
} else {
- compact_top = cp->space->forward(oop(cur_obj), size, cp, compact_top);
+ compact_top = cp->space->forward(oop(cur_obj), size, cp, compact_top, false);
}
cur_obj += size;
@@ -197,9 +200,9 @@ inline void CompactibleSpace::scan_and_forward(SpaceType* space, CompactPoint* c
// see if we might want to pretend this object is alive so that
// we don't have to compact quite as often.
- if (cur_obj == compact_top && dead_spacer.insert_deadspace(cur_obj, end)) {
+ if (!redefinition_run && cur_obj == compact_top && dead_spacer.insert_deadspace(cur_obj, end)) {
oop obj = oop(cur_obj);
- compact_top = cp->space->forward(obj, obj->size(), cp, compact_top);
+ compact_top = cp->space->forward(obj, obj->size(), cp, compact_top, force_forward);
end_of_live = end;
} else {
// otherwise, it really is a free region.
@@ -352,7 +355,7 @@ inline void CompactibleSpace::scan_and_compact(SpaceType* space, bool redefiniti
HeapWord* compaction_top = (HeapWord*)oop(cur_obj)->forwardee();
if (redefinition_run && space->must_rescue(oop(cur_obj), oop(cur_obj)->forwardee())) {
- space->rescue(cur_obj);
+ space->rescue(cur_obj);
debug_only(Copy::fill_to_words(cur_obj, size, 0));
cur_obj += size;
continue;
@@ -362,8 +365,7 @@ inline void CompactibleSpace::scan_and_compact(SpaceType* space, bool redefiniti
Prefetch::write(compaction_top, copy_interval);
// copy object and reinit its mark
- assert(cur_obj != compaction_top || oop(cur_obj)->klass()->new_version() != NULL,
- "everything in this pass should be moving");
+ assert(redefinition_run || cur_obj != compaction_top, "everything in this pass should be moving");
if (redefinition_run && oop(cur_obj)->klass()->new_version() != NULL) {
Klass* new_version = oop(cur_obj)->klass()->new_version();
if (new_version->update_information() == NULL) {
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 43d761cdbb2..14af1aad21b 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -54,6 +54,7 @@
#include "prims/jvmtiThreadState.inline.hpp"
#include "utilities/events.hpp"
#include "oops/constantPool.inline.hpp"
+#include "gc/cms/cmsHeap.hpp"
Array<Method*>* VM_EnhancedRedefineClasses::_old_methods = NULL;
Array<Method*>* VM_EnhancedRedefineClasses::_new_methods = NULL;
@@ -416,13 +417,11 @@ public:
Klass* new_klass = obj->klass()->new_version();
if (new_klass->update_information() != NULL) {
- int size_diff = obj->size() - obj->size_given_klass(new_klass);
-
- // Either new size is bigger or gap is to small to be filled
- if (size_diff < 0 || (size_diff > 0 && (size_t) size_diff < CollectedHeap::min_fill_size())) {
+ if (obj->size() - obj->size_given_klass(new_klass) != 0) {
// We need an instance update => set back to old klass
_needs_instance_update = true;
} else {
+ // Either new size is bigger or gap is to small to be filled
oop src = obj;
if (new_klass->is_copying_backwards()) {
copy_to_tmp(obj);
@@ -432,11 +431,6 @@ public:
// FIXME: instance updates...
//guarantee(false, "instance updates!");
MarkSweep::update_fields(obj, src, new_klass->update_information());
-
- if (size_diff > 0) {
- HeapWord* dead_space = ((HeapWord *)obj) + obj->size();
- CollectedHeap::fill_with_object(dead_space, size_diff);
- }
}
} else {
obj->set_klass(obj->klass()->new_version());
diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp
index a11dfe48dd6..013ba213c00 100644
--- a/src/hotspot/share/runtime/arguments.cpp
+++ b/src/hotspot/share/runtime/arguments.cpp
@@ -2045,14 +2045,14 @@ bool Arguments::check_gc_consistency() {
if (AllowEnhancedClassRedefinition) {
// Must use serial GC. This limitation applies because the instance size changing GC modifications
// are only built into the mark and compact algorithm.
- if (!UseSerialGC && i >= 1) {
+ if ((!UseSerialGC && !UseConcMarkSweepGC) && i >= 1) {
jio_fprintf(defaultStream::error_stream(),
- "Must use the serial GC with enhanced class redefinition\n");
+ "Must use the serial or concurrent mark sweep GC with enhanced class redefinition.\n");
return false;
}
}
- if (i > 1) {
+ if (i > 2) {
jio_fprintf(defaultStream::error_stream(),
"Conflicting collector combinations in option list; "
"please refer to the release notes for the combinations "
--
2.23.0

View File

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

View File

@@ -0,0 +1,657 @@
From 25cb9b5fa97749d3bc13dc6c848c7eb9cc1b66bb Mon Sep 17 00:00:00 2001
From: skybber <lada.dvorak7@gmail.com>
Date: Wed, 14 Nov 2018 21:20:08 +0100
Subject: [PATCH 05/17] HotswapAgent integration
It include:
- option to compile DCEVM only version with -DDCEVM_ONLY added
to CFLAGS (bash configure --with-extra-cflags="-DDCEVM_ONLY"), by
default compilation goes with HotswapAgent
Allow ha class initializer calls
Add --add-opens for necessary modules/packages
- java.base/java.lang - for reflection access to Proxy.proxyCache
- java.base/jdk.internal.loader - for access proxyCache class
- java.desktop/java.beans - for reflection access to Introspector
- java.desktop/com.sun.beans
- java.base/java.io
- com.sun.beans.util
Open jdk module to access ClassInfo.CACHE
- be quiet if HotswapAgent is not found in lib/, it is compatible with
old DCEVM
- disable HotswapAgent for -Xshare:dump
- disable HotswapAgent in jvm tools
- disable HotswapAgent in keytool
---
make/launcher/Launcher-java.base.gmk | 1 +
make/launcher/Launcher-java.rmi.gmk | 2 +
make/launcher/Launcher-java.scripting.gmk | 3 +-
make/launcher/Launcher-java.security.jgss.gmk | 3 +
make/launcher/Launcher-jdk.aot.gmk | 2 +
make/launcher/Launcher-jdk.compiler.gmk | 5 +-
make/launcher/Launcher-jdk.hotspot.agent.gmk | 1 +
make/launcher/Launcher-jdk.jartool.gmk | 2 +
make/launcher/Launcher-jdk.javadoc.gmk | 3 +-
make/launcher/Launcher-jdk.jcmd.gmk | 13 +++-
make/launcher/Launcher-jdk.jconsole.gmk | 3 +-
make/launcher/Launcher-jdk.jdeps.gmk | 3 +
make/launcher/Launcher-jdk.jdi.gmk | 1 +
make/launcher/Launcher-jdk.jlink.gmk | 5 +-
make/launcher/Launcher-jdk.jshell.gmk | 1 +
make/launcher/Launcher-jdk.jstatd.gmk | 1 +
make/launcher/Launcher-jdk.pack.gmk | 1 +
make/launcher/Launcher-jdk.rmic.gmk | 1 +
.../Launcher-jdk.scripting.nashorn.shell.gmk | 3 +-
src/hotspot/share/classfile/vmSymbols.hpp | 1 +
.../share/interpreter/linkResolver.cpp | 2 +-
src/hotspot/share/runtime/arguments.cpp | 67 +++++++++++++++++++
src/hotspot/share/runtime/arguments.hpp | 3 +
src/hotspot/share/runtime/globals.hpp | 12 +++-
.../sun/beans/introspect/package-info.java | 26 +++++++
.../classes/com/sun/beans/package-info.java | 26 +++++++
.../com/sun/beans/util/package-info.java | 26 +++++++
.../share/classes/module-info.java | 3 +
28 files changed, 209 insertions(+), 11 deletions(-)
create mode 100644 src/java.desktop/share/classes/com/sun/beans/introspect/package-info.java
create mode 100644 src/java.desktop/share/classes/com/sun/beans/package-info.java
create mode 100644 src/java.desktop/share/classes/com/sun/beans/util/package-info.java
diff --git a/make/launcher/Launcher-java.base.gmk b/make/launcher/Launcher-java.base.gmk
index f6d4aa28fe6..38ba29530d8 100644
--- a/make/launcher/Launcher-java.base.gmk
+++ b/make/launcher/Launcher-java.base.gmk
@@ -52,6 +52,7 @@ endif
$(eval $(call SetupBuildLauncher, keytool, \
MAIN_CLASS := sun.security.tools.keytool.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
################################################################################
diff --git a/make/launcher/Launcher-java.rmi.gmk b/make/launcher/Launcher-java.rmi.gmk
index a69a90bcc81..07046232275 100644
--- a/make/launcher/Launcher-java.rmi.gmk
+++ b/make/launcher/Launcher-java.rmi.gmk
@@ -27,8 +27,10 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, rmid, \
MAIN_CLASS := sun.rmi.server.Activation, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, rmiregistry, \
MAIN_CLASS := sun.rmi.registry.RegistryImpl, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
diff --git a/make/launcher/Launcher-java.scripting.gmk b/make/launcher/Launcher-java.scripting.gmk
index 057d2bf3aca..cf100e20789 100644
--- a/make/launcher/Launcher-java.scripting.gmk
+++ b/make/launcher/Launcher-java.scripting.gmk
@@ -27,5 +27,6 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jrunscript, \
MAIN_CLASS := com.sun.tools.script.shell.Main, \
- JAVA_ARGS := --add-modules ALL-DEFAULT, \
+ JAVA_ARGS := --add-modules ALL-DEFAULT \
+ -XX:+DisableHotswapAgent, \
))
diff --git a/make/launcher/Launcher-java.security.jgss.gmk b/make/launcher/Launcher-java.security.jgss.gmk
index 7411e1a21c4..2b856bfccb4 100644
--- a/make/launcher/Launcher-java.security.jgss.gmk
+++ b/make/launcher/Launcher-java.security.jgss.gmk
@@ -28,13 +28,16 @@ include LauncherCommon.gmk
ifeq ($(OPENJDK_TARGET_OS), windows)
$(eval $(call SetupBuildLauncher, kinit, \
MAIN_CLASS := sun.security.krb5.internal.tools.Kinit, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, klist, \
MAIN_CLASS := sun.security.krb5.internal.tools.Klist, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, ktab, \
MAIN_CLASS := sun.security.krb5.internal.tools.Ktab, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
endif
diff --git a/make/launcher/Launcher-jdk.aot.gmk b/make/launcher/Launcher-jdk.aot.gmk
index 10717a5e1c5..2c52c31a555 100644
--- a/make/launcher/Launcher-jdk.aot.gmk
+++ b/make/launcher/Launcher-jdk.aot.gmk
@@ -31,6 +31,7 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jaotc, \
MAIN_CLASS := jdk.tools.jaotc.Main, \
EXTRA_JAVA_ARGS := -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI \
+ -XX:+DisableHotswapAgent \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.aarch64=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.amd64=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
@@ -40,6 +41,7 @@ $(eval $(call SetupBuildLauncher, jaotc, \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
, \
JAVA_ARGS := --add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
+ -XX:+DisableHotswapAgent \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.sparc=$(call CommaList, jdk.internal.vm.compiler jdk.aot) \
diff --git a/make/launcher/Launcher-jdk.compiler.gmk b/make/launcher/Launcher-jdk.compiler.gmk
index f71c37adf74..744969546de 100644
--- a/make/launcher/Launcher-jdk.compiler.gmk
+++ b/make/launcher/Launcher-jdk.compiler.gmk
@@ -27,12 +27,14 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, javac, \
MAIN_CLASS := com.sun.tools.javac.Main, \
- JAVA_ARGS := --add-modules ALL-DEFAULT, \
+ JAVA_ARGS := --add-modules ALL-DEFAULT \
+ -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
$(eval $(call SetupBuildLauncher, serialver, \
MAIN_CLASS := sun.tools.serialver.SerialVer, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
@@ -41,6 +43,7 @@ ifeq ($(ENABLE_SJAVAC), yes)
# into any real images
$(eval $(call SetupBuildLauncher, sjavac, \
MAIN_CLASS := com.sun.tools.sjavac.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
OUTPUT_DIR := $(JDK_OUTPUTDIR)/bin, \
))
diff --git a/make/launcher/Launcher-jdk.hotspot.agent.gmk b/make/launcher/Launcher-jdk.hotspot.agent.gmk
index 76da3600368..9f12b05b172 100644
--- a/make/launcher/Launcher-jdk.hotspot.agent.gmk
+++ b/make/launcher/Launcher-jdk.hotspot.agent.gmk
@@ -27,5 +27,6 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jhsdb, \
MAIN_CLASS := sun.jvm.hotspot.SALauncher, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
MACOSX_PRIVILEGED := true, \
))
diff --git a/make/launcher/Launcher-jdk.jartool.gmk b/make/launcher/Launcher-jdk.jartool.gmk
index f74e82bfdae..647d82b65b1 100644
--- a/make/launcher/Launcher-jdk.jartool.gmk
+++ b/make/launcher/Launcher-jdk.jartool.gmk
@@ -27,8 +27,10 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jar, \
MAIN_CLASS := sun.tools.jar.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, jarsigner, \
MAIN_CLASS := sun.security.tools.jarsigner.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
diff --git a/make/launcher/Launcher-jdk.javadoc.gmk b/make/launcher/Launcher-jdk.javadoc.gmk
index 889028a2b17..c3d2093be04 100644
--- a/make/launcher/Launcher-jdk.javadoc.gmk
+++ b/make/launcher/Launcher-jdk.javadoc.gmk
@@ -27,6 +27,7 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, javadoc, \
MAIN_CLASS := jdk.javadoc.internal.tool.Main, \
- JAVA_ARGS := --add-modules ALL-DEFAULT, \
+ JAVA_ARGS := --add-modules ALL-DEFAULT \
+ -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
diff --git a/make/launcher/Launcher-jdk.jcmd.gmk b/make/launcher/Launcher-jdk.jcmd.gmk
index 7117fa78059..761a52d8466 100644
--- a/make/launcher/Launcher-jdk.jcmd.gmk
+++ b/make/launcher/Launcher-jdk.jcmd.gmk
@@ -30,6 +30,7 @@ $(eval $(call SetupBuildLauncher, jinfo, \
JAVA_ARGS := \
-Dsun.jvm.hotspot.debugger.useProcDebugger \
-Dsun.jvm.hotspot.debugger.useWindbgDebugger, \
+ -XX:+DisableHotswapAgent, \
MACOSX_PRIVILEGED := true, \
))
@@ -37,28 +38,36 @@ $(eval $(call SetupBuildLauncher, jmap, \
MAIN_CLASS := sun.tools.jmap.JMap, \
JAVA_ARGS := \
-Dsun.jvm.hotspot.debugger.useProcDebugger \
- -Dsun.jvm.hotspot.debugger.useWindbgDebugger, \
+ -Dsun.jvm.hotspot.debugger.useWindbgDebugger \
+ -XX:+DisableHotswapAgent, \
MACOSX_PRIVILEGED := true, \
))
$(eval $(call SetupBuildLauncher, jps, \
MAIN_CLASS := sun.tools.jps.Jps, \
+ JAVA_ARGS := \
+ -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, jstack, \
MAIN_CLASS := sun.tools.jstack.JStack, \
JAVA_ARGS := \
-Dsun.jvm.hotspot.debugger.useProcDebugger \
- -Dsun.jvm.hotspot.debugger.useWindbgDebugger, \
+ -Dsun.jvm.hotspot.debugger.useWindbgDebugger \
+ -XX:+DisableHotswapAgent, \
MACOSX_PRIVILEGED := true, \
))
$(eval $(call SetupBuildLauncher, jstat, \
MAIN_CLASS := sun.tools.jstat.Jstat, \
+ JAVA_ARGS := \
+ -XX:+DisableHotswapAgent, \
))
$(eval $(call SetupBuildLauncher, jcmd, \
MAIN_CLASS := sun.tools.jcmd.JCmd, \
+ JAVA_ARGS := \
+ -XX:+DisableHotswapAgent, \
))
# Hook to include the corresponding custom file, if present.
diff --git a/make/launcher/Launcher-jdk.jconsole.gmk b/make/launcher/Launcher-jdk.jconsole.gmk
index 575b9e0595b..9b38683a489 100644
--- a/make/launcher/Launcher-jdk.jconsole.gmk
+++ b/make/launcher/Launcher-jdk.jconsole.gmk
@@ -29,7 +29,8 @@ $(eval $(call SetupBuildLauncher, jconsole, \
MAIN_CLASS := sun.tools.jconsole.JConsole, \
JAVA_ARGS := --add-opens java.base/java.io=jdk.jconsole \
-Djconsole.showOutputViewer \
- -Djdk.attach.allowAttachSelf=true, \
+ -Djdk.attach.allowAttachSelf=true \
+ -XX:+DisableHotswapAgent, \
CFLAGS_windows := -DJAVAW, \
LIBS_windows := user32.lib, \
))
diff --git a/make/launcher/Launcher-jdk.jdeps.gmk b/make/launcher/Launcher-jdk.jdeps.gmk
index 217523c48cc..5448278dae7 100644
--- a/make/launcher/Launcher-jdk.jdeps.gmk
+++ b/make/launcher/Launcher-jdk.jdeps.gmk
@@ -27,15 +27,18 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, javap, \
MAIN_CLASS := com.sun.tools.javap.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
$(eval $(call SetupBuildLauncher, jdeps, \
MAIN_CLASS := com.sun.tools.jdeps.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
$(eval $(call SetupBuildLauncher, jdeprscan, \
MAIN_CLASS := com.sun.tools.jdeprscan.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
diff --git a/make/launcher/Launcher-jdk.jdi.gmk b/make/launcher/Launcher-jdk.jdi.gmk
index fcce98cf430..27bd448e3ae 100644
--- a/make/launcher/Launcher-jdk.jdi.gmk
+++ b/make/launcher/Launcher-jdk.jdi.gmk
@@ -27,4 +27,5 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jdb, \
MAIN_CLASS := com.sun.tools.example.debug.tty.TTY, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
diff --git a/make/launcher/Launcher-jdk.jlink.gmk b/make/launcher/Launcher-jdk.jlink.gmk
index df2173996d7..9e61edeb2c8 100644
--- a/make/launcher/Launcher-jdk.jlink.gmk
+++ b/make/launcher/Launcher-jdk.jlink.gmk
@@ -27,18 +27,21 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jimage,\
MAIN_CLASS := jdk.tools.jimage.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DENABLE_ARG_FILES, \
))
$(eval $(call SetupBuildLauncher, jlink,\
MAIN_CLASS := jdk.tools.jlink.internal.Main, \
- JAVA_ARGS := --add-modules ALL-DEFAULT, \
+ JAVA_ARGS := --add-modules ALL-DEFAULT \
+ -XX:+DisableHotswapAgent, \
CFLAGS := -DENABLE_ARG_FILES \
-DEXPAND_CLASSPATH_WILDCARDS, \
))
$(eval $(call SetupBuildLauncher, jmod,\
MAIN_CLASS := jdk.tools.jmod.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DENABLE_ARG_FILES \
-DEXPAND_CLASSPATH_WILDCARDS, \
))
diff --git a/make/launcher/Launcher-jdk.jshell.gmk b/make/launcher/Launcher-jdk.jshell.gmk
index 349eb88e9eb..7287f8f998a 100644
--- a/make/launcher/Launcher-jdk.jshell.gmk
+++ b/make/launcher/Launcher-jdk.jshell.gmk
@@ -27,5 +27,6 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jshell, \
MAIN_CLASS := jdk.internal.jshell.tool.JShellToolProvider, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
diff --git a/make/launcher/Launcher-jdk.jstatd.gmk b/make/launcher/Launcher-jdk.jstatd.gmk
index e9286d63094..e1657910c67 100644
--- a/make/launcher/Launcher-jdk.jstatd.gmk
+++ b/make/launcher/Launcher-jdk.jstatd.gmk
@@ -27,6 +27,7 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jstatd, \
MAIN_CLASS := sun.tools.jstatd.Jstatd, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
# Hook to include the corresponding custom file, if present.
diff --git a/make/launcher/Launcher-jdk.pack.gmk b/make/launcher/Launcher-jdk.pack.gmk
index a93fd2a9017..64bbbb7c949 100644
--- a/make/launcher/Launcher-jdk.pack.gmk
+++ b/make/launcher/Launcher-jdk.pack.gmk
@@ -28,6 +28,7 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, pack200, \
MAIN_MODULE := java.base, \
MAIN_CLASS := com.sun.java.util.jar.pack.Driver, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
))
################################################################################
diff --git a/make/launcher/Launcher-jdk.rmic.gmk b/make/launcher/Launcher-jdk.rmic.gmk
index d60c3d9b60b..b8a55900b0e 100644
--- a/make/launcher/Launcher-jdk.rmic.gmk
+++ b/make/launcher/Launcher-jdk.rmic.gmk
@@ -27,5 +27,6 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, rmic, \
MAIN_CLASS := sun.rmi.rmic.Main, \
+ JAVA_ARGS := -XX:+DisableHotswapAgent, \
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
))
diff --git a/make/launcher/Launcher-jdk.scripting.nashorn.shell.gmk b/make/launcher/Launcher-jdk.scripting.nashorn.shell.gmk
index 82311e69fd6..bd39f8595b2 100644
--- a/make/launcher/Launcher-jdk.scripting.nashorn.shell.gmk
+++ b/make/launcher/Launcher-jdk.scripting.nashorn.shell.gmk
@@ -27,6 +27,7 @@ include LauncherCommon.gmk
$(eval $(call SetupBuildLauncher, jjs, \
MAIN_CLASS := jdk.nashorn.tools.jjs.Main, \
- JAVA_ARGS := --add-modules ALL-DEFAULT, \
+ JAVA_ARGS := --add-modules ALL-DEFAULT \
+ -XX:+DisableHotswapAgent, \
CFLAGS := -DENABLE_ARG_FILES, \
))
diff --git a/src/hotspot/share/classfile/vmSymbols.hpp b/src/hotspot/share/classfile/vmSymbols.hpp
index 41e9a84cd69..1f67eb202b5 100644
--- a/src/hotspot/share/classfile/vmSymbols.hpp
+++ b/src/hotspot/share/classfile/vmSymbols.hpp
@@ -342,6 +342,7 @@
/* common method and field names */ \
template(object_initializer_name, "<init>") \
template(class_initializer_name, "<clinit>") \
+ template(ha_class_initializer_name, "$$ha$clinit") \
template(println_name, "println") \
template(printStackTrace_name, "printStackTrace") \
template(main_name, "main") \
diff --git a/src/hotspot/share/interpreter/linkResolver.cpp b/src/hotspot/share/interpreter/linkResolver.cpp
index 0c24146ff00..9dc184d02f5 100644
--- a/src/hotspot/share/interpreter/linkResolver.cpp
+++ b/src/hotspot/share/interpreter/linkResolver.cpp
@@ -1009,7 +1009,7 @@ void LinkResolver::resolve_field(fieldDescriptor& fd,
assert(!m.is_null(), "information about the current method must be available for 'put' bytecodes");
bool is_initialized_static_final_update = (byte == Bytecodes::_putstatic &&
fd.is_static() &&
- !m()->is_static_initializer());
+ !(m()->is_static_initializer() || m()->name() == vmSymbols::ha_class_initializer_name()));
bool is_initialized_instance_final_update = ((byte == Bytecodes::_putfield || byte == Bytecodes::_nofast_putfield) &&
!fd.is_static() &&
!m->is_object_initializer());
diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp
index 013ba213c00..2b5ba619f43 100644
--- a/src/hotspot/share/runtime/arguments.cpp
+++ b/src/hotspot/share/runtime/arguments.cpp
@@ -3962,6 +3962,8 @@ jint Arguments::parse(const JavaVMInitArgs* initial_cmd_args) {
// Set object alignment values.
set_object_alignment();
+ setup_hotswap_agent();
+
#if !INCLUDE_CDS
if (DumpSharedSpaces || RequireSharedSpaces) {
jio_fprintf(defaultStream::error_stream(),
@@ -4295,3 +4297,68 @@ bool Arguments::copy_expand_pid(const char* src, size_t srclen,
*b = '\0';
return (p == src_end); // return false if not all of the source was copied
}
+
+void Arguments::setup_hotswap_agent() {
+
+ if (DumpSharedSpaces)
+ return;
+
+ if (!AllowEnhancedClassRedefinition)
+ return;
+
+ // Set HotswapAgent
+ if (!DisableHotswapAgent) {
+
+ char ext_path_str[JVM_MAXPATHLEN];
+
+ os::jvm_path(ext_path_str, sizeof(ext_path_str));
+ for (int i = 0; i < 3; i++) {
+ char *end = strrchr(ext_path_str, *os::file_separator());
+ if (end != NULL) *end = '\0';
+ }
+ size_t ext_path_length = strlen(ext_path_str);
+ if (ext_path_length >= 3) {
+ if (strcmp(ext_path_str + ext_path_length - 3, "lib") != 0) {
+ if (ext_path_length < JVM_MAXPATHLEN - 4) {
+ jio_snprintf(ext_path_str + ext_path_length, sizeof(ext_path_str) - ext_path_length, "%slib", os::file_separator());
+ ext_path_length += 4;
+ }
+ }
+ }
+ if (ext_path_length < JVM_MAXPATHLEN - 10) {
+ jio_snprintf(ext_path_str + ext_path_length, sizeof(ext_path_str) - ext_path_length,
+ "%shotswap%shotswap-agent.jar", os::file_separator(), os::file_separator());
+ }
+
+ int fd = ::open(ext_path_str, O_RDONLY);
+ if (fd >= 0) {
+ os::close(fd);
+ size_t length = strlen(ext_path_str) + 1;
+ char *options = NEW_C_HEAP_ARRAY(char, length, mtArguments);
+ jio_snprintf(options, length, "%s", ext_path_str);
+ add_init_agent("instrument", ext_path_str, false);
+ jio_fprintf(defaultStream::output_stream(), "Starting HotswapAgent '%s'\n", ext_path_str);
+ }
+// else
+// {
+// jio_fprintf(defaultStream::error_stream(), "HotswapAgent not found on path:'%s'\n", ext_path_str);
+// }
+ }
+
+ // TODO: open it only for org.hotswap.agent module
+ // Use to access java.lang.reflect.Proxy/proxyCache
+ create_numbered_property("jdk.module.addopens", "java.base/java.lang=ALL-UNNAMED", addopens_count++);
+ // Class of field java.lang.reflect.Proxy/proxyCache
+ create_numbered_property("jdk.module.addopens", "java.base/jdk.internal.loader=ALL-UNNAMED", addopens_count++);
+ // Use to access java.io.Reader, java.io.InputStream, java.io.FileInputStream
+ create_numbered_property("jdk.module.addopens", "java.base/java.io=ALL-UNNAMED", addopens_count++);
+ // java.beans.Introspector access
+ create_numbered_property("jdk.module.addopens", "java.desktop/java.beans=ALL-UNNAMED", addopens_count++);
+ // java.beans.Introspector access
+ create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans=ALL-UNNAMED", addopens_count++);
+ // com.sun.beans.introspect.ClassInfo access
+ create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans.introspect=ALL-UNNAMED", addopens_count++);
+ // com.sun.beans.introspect.util.Cache access
+ create_numbered_property("jdk.module.addopens", "java.desktop/com.sun.beans.util=ALL-UNNAMED", addopens_count++);
+
+}
diff --git a/src/hotspot/share/runtime/arguments.hpp b/src/hotspot/share/runtime/arguments.hpp
index cc7f71a4404..b2bab2e1f44 100644
--- a/src/hotspot/share/runtime/arguments.hpp
+++ b/src/hotspot/share/runtime/arguments.hpp
@@ -507,6 +507,9 @@ class Arguments : AllStatic {
static size_t conservative_max_heap_alignment() { return _conservative_max_heap_alignment; }
+ // Initialize HotswapAgent
+ static void setup_hotswap_agent();
+
// Return the maximum size a heap with compressed oops can take
static size_t max_heap_for_compressed_oops();
diff --git a/src/hotspot/share/runtime/globals.hpp b/src/hotspot/share/runtime/globals.hpp
index 7b061359c1d..fc0405b5df2 100644
--- a/src/hotspot/share/runtime/globals.hpp
+++ b/src/hotspot/share/runtime/globals.hpp
@@ -32,6 +32,12 @@
#include <float.h> // for DBL_MAX
+#ifdef DCEVM_ONLY
+#define DISABLED_HOTSWAP_AGENT true
+#else
+#define DISABLED_HOTSWAP_AGENT false
+#endif
+
// The larger HeapWordSize for 64bit requires larger heaps
// for the same application running in 64bit. See bug 4967770.
// The minimum alignment to a heap word size is done. Other
@@ -2678,8 +2684,10 @@ define_pd_global(uint64_t,MaxRAM, 1ULL*G);
\
product(bool, AllowEnhancedClassRedefinition, true, \
"Allow enhanced class redefinition beyond swapping method " \
- "bodies")
-
+ "bodies") \
+ \
+ product(bool, DisableHotswapAgent, DISABLED_HOTSWAP_AGENT, \
+ "Disable integrated Hotswap Agent (HotswapVM only)")
#define VM_FLAGS(develop, \
develop_pd, \
product, \
diff --git a/src/java.desktop/share/classes/com/sun/beans/introspect/package-info.java b/src/java.desktop/share/classes/com/sun/beans/introspect/package-info.java
new file mode 100644
index 00000000000..6636e4dd62a
--- /dev/null
+++ b/src/java.desktop/share/classes/com/sun/beans/introspect/package-info.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.beans.introspect;
diff --git a/src/java.desktop/share/classes/com/sun/beans/package-info.java b/src/java.desktop/share/classes/com/sun/beans/package-info.java
new file mode 100644
index 00000000000..5c097eeaa53
--- /dev/null
+++ b/src/java.desktop/share/classes/com/sun/beans/package-info.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.beans;
diff --git a/src/java.desktop/share/classes/com/sun/beans/util/package-info.java b/src/java.desktop/share/classes/com/sun/beans/util/package-info.java
new file mode 100644
index 00000000000..2d5d735ffa8
--- /dev/null
+++ b/src/java.desktop/share/classes/com/sun/beans/util/package-info.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package com.sun.beans.util;
diff --git a/src/java.desktop/share/classes/module-info.java b/src/java.desktop/share/classes/module-info.java
index b663b382f52..2a8f0a67d52 100644
--- a/src/java.desktop/share/classes/module-info.java
+++ b/src/java.desktop/share/classes/module-info.java
@@ -104,6 +104,9 @@ module java.desktop {
exports javax.swing.text.rtf;
exports javax.swing.tree;
exports javax.swing.undo;
+ exports com.sun.beans;
+ exports com.sun.beans.introspect;
+ exports com.sun.beans.util;
// qualified exports may be inserted at build time
// see make/GensrcModuleInfo.gmk
--
2.23.0

View File

@@ -0,0 +1,258 @@
From 28d352b4b7cda96a37f95d75cf576570271157e3 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <lada.dvorak7@gmail.com>
Date: Sun, 4 Oct 2020 21:12:12 +0200
Subject: [PATCH 06/17] Support for Lambda class redefinition
---
.../share/classfile/classLoaderData.cpp | 9 +++
.../share/classfile/classLoaderData.hpp | 1 +
.../share/classfile/systemDictionary.cpp | 12 +++-
.../share/classfile/systemDictionary.hpp | 2 +
.../prims/jvmtiEnhancedRedefineClasses.cpp | 65 +++++++++++++++++--
.../prims/jvmtiEnhancedRedefineClasses.hpp | 1 +
.../share/prims/resolvedMethodTable.cpp | 4 +-
src/hotspot/share/prims/unsafe.cpp | 1 +
8 files changed, 85 insertions(+), 10 deletions(-)
diff --git a/src/hotspot/share/classfile/classLoaderData.cpp b/src/hotspot/share/classfile/classLoaderData.cpp
index ab2615da0ed..1bc67adf5a7 100644
--- a/src/hotspot/share/classfile/classLoaderData.cpp
+++ b/src/hotspot/share/classfile/classLoaderData.cpp
@@ -663,6 +663,15 @@ Dictionary* ClassLoaderData::create_dictionary() {
return new Dictionary(this, size, resizable);
}
+void ClassLoaderData::exchange_holders(ClassLoaderData* cld) {
+ oop holder_oop = _holder.peek();
+ _holder.replace(cld->_holder.peek());
+ cld->_holder.replace(holder_oop);
+ WeakHandle<vm_class_loader_data> exchange = _holder;
+ _holder = cld->_holder;
+ cld->_holder = exchange;
+}
+
// Tell the GC to keep this klass alive while iterating ClassLoaderDataGraph
oop ClassLoaderData::holder_phantom() const {
// A klass that was previously considered dead can be looked up in the
diff --git a/src/hotspot/share/classfile/classLoaderData.hpp b/src/hotspot/share/classfile/classLoaderData.hpp
index 7e357929971..00a84610b43 100644
--- a/src/hotspot/share/classfile/classLoaderData.hpp
+++ b/src/hotspot/share/classfile/classLoaderData.hpp
@@ -292,6 +292,7 @@ class ClassLoaderData : public CHeapObj<mtClass> {
void accumulate_modified_oops() { if (has_modified_oops()) _accumulated_modified_oops = true; }
void clear_accumulated_modified_oops() { _accumulated_modified_oops = false; }
bool has_accumulated_modified_oops() { return _accumulated_modified_oops; }
+ void exchange_holders(ClassLoaderData* cld);
private:
void unload();
diff --git a/src/hotspot/share/classfile/systemDictionary.cpp b/src/hotspot/share/classfile/systemDictionary.cpp
index e464b94b420..791b49c68ad 100644
--- a/src/hotspot/share/classfile/systemDictionary.cpp
+++ b/src/hotspot/share/classfile/systemDictionary.cpp
@@ -971,12 +971,16 @@ InstanceKlass* SystemDictionary::parse_stream(Symbol* class_name,
Handle protection_domain,
ClassFileStream* st,
const InstanceKlass* host_klass,
+ InstanceKlass* old_klass,
GrowableArray<Handle>* cp_patches,
TRAPS) {
EventClassLoad class_load_start_event;
ClassLoaderData* loader_data;
+
+ bool is_redefining = (old_klass != NULL);
+
if (host_klass != NULL) {
// Create a new CLD for anonymous class, that uses the same class loader
// as the host_klass
@@ -1000,8 +1004,12 @@ InstanceKlass* SystemDictionary::parse_stream(Symbol* class_name,
protection_domain,
host_klass,
cp_patches,
- false, // pick_newest
+ is_redefining, // pick_newest
CHECK_NULL);
+ if (is_redefining && k != NULL) {
+ k->set_redefining(true);
+ k->set_old_version(old_klass);
+ }
if (host_klass != NULL && k != NULL) {
// Anonymous classes must update ClassLoaderData holder (was host_klass loader)
@@ -1844,7 +1852,7 @@ void SystemDictionary::remove_from_hierarchy(InstanceKlass* k) {
k->remove_from_sibling_list();
}
-// (DCEVM)
+// (DCEVM)
void SystemDictionary::update_constraints_after_redefinition() {
constraints()->update_after_redefinition();
}
diff --git a/src/hotspot/share/classfile/systemDictionary.hpp b/src/hotspot/share/classfile/systemDictionary.hpp
index 06f6c869d63..1dbbffa197f 100644
--- a/src/hotspot/share/classfile/systemDictionary.hpp
+++ b/src/hotspot/share/classfile/systemDictionary.hpp
@@ -304,6 +304,7 @@ public:
protection_domain,
st,
NULL, // host klass
+ NULL, // old class
NULL, // cp_patches
THREAD);
}
@@ -312,6 +313,7 @@ public:
Handle protection_domain,
ClassFileStream* st,
const InstanceKlass* host_klass,
+ InstanceKlass* old_klass,
GrowableArray<Handle>* cp_patches,
TRAPS);
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
index 14af1aad21b..0b239b2ff6d 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
@@ -488,6 +488,8 @@ void VM_EnhancedRedefineClasses::doit() {
ClassLoaderDataGraph::classes_do(&clear_cpool_cache);
+ // SystemDictionary::methods_do(fix_invoke_method);
+
// JSR-292 support
if (_any_class_has_resolved_methods) {
bool trace_name_printed = false;
@@ -750,12 +752,34 @@ jvmtiError VM_EnhancedRedefineClasses::load_new_class_versions(TRAPS) {
// load hook event.
state->set_class_being_redefined(the_class, _class_load_kind);
- InstanceKlass* k = SystemDictionary::resolve_from_stream(the_class_sym,
- the_class_loader,
- protection_domain,
- &st,
- the_class,
- THREAD);
+ InstanceKlass* k;
+
+ if (InstanceKlass::cast(the_class)->is_anonymous()) {
+ const InstanceKlass* host_class = the_class->host_klass();
+
+ // Make sure it's the real host class, not another anonymous class.
+ while (host_class != NULL && host_class->is_anonymous()) {
+ host_class = host_class->host_klass();
+ }
+
+ k = SystemDictionary::parse_stream(the_class_sym,
+ the_class_loader,
+ protection_domain,
+ &st,
+ host_class,
+ the_class,
+ NULL,
+ THREAD);
+ k->class_loader_data()->exchange_holders(the_class->class_loader_data());
+ the_class->class_loader_data()->inc_keep_alive();
+ } else {
+ k = SystemDictionary::resolve_from_stream(the_class_sym,
+ the_class_loader,
+ protection_domain,
+ &st,
+ the_class,
+ THREAD);
+ }
// Clear class_being_redefined just to be sure.
state->clear_class_being_redefined();
@@ -1436,6 +1460,30 @@ void VM_EnhancedRedefineClasses::MethodDataCleaner::do_klass(Klass* k) {
}
}
+void VM_EnhancedRedefineClasses::fix_invoke_method(Method* method) {
+
+ constantPoolHandle other_cp = constantPoolHandle(method->constants());
+
+ for (int i = 0; i < other_cp->length(); i++) {
+ if (other_cp->tag_at(i).is_klass()) {
+ Klass* klass = other_cp->resolved_klass_at(i);
+ if (klass->new_version() != NULL) {
+ // Constant pool entry points to redefined class -- update to the new version
+ other_cp->klass_at_put(i, klass->newest_version());
+ }
+ assert(other_cp->resolved_klass_at(i)->new_version() == NULL, "Must be new klass!");
+ }
+ }
+
+ ConstantPoolCache* cp_cache = other_cp->cache();
+ if (cp_cache != NULL) {
+ cp_cache->clear_entries();
+ }
+
+}
+
+
+
void VM_EnhancedRedefineClasses::update_jmethod_ids() {
for (int j = 0; j < _matching_methods_length; ++j) {
Method* old_method = _matching_old_methods[j];
@@ -1973,7 +2021,10 @@ jvmtiError VM_EnhancedRedefineClasses::find_sorted_affected_classes(TRAPS) {
// Find classes not directly redefined, but affected by a redefinition (because one of its supertypes is redefined)
AffectedKlassClosure closure(_affected_klasses);
// Updated in j10, from original SystemDictionary::classes_do
- ClassLoaderDataGraph::dictionary_classes_do(&closure);
+
+ ClassLoaderDataGraph::classes_do(&closure);
+ //ClassLoaderDataGraph::dictionary_classes_do(&closure);
+
log_trace(redefine, class, load)("%d classes affected", _affected_klasses->length());
// Sort the affected klasses such that a supertype is always on a smaller array index than its subtype.
diff --git a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
index a48e07e3a6a..3551b06ecde 100644
--- a/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
+++ b/src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
@@ -116,6 +116,7 @@ class VM_EnhancedRedefineClasses: public VM_GC_Operation {
void rollback();
static void mark_as_scavengable(nmethod* nm);
static void unpatch_bytecode(Method* method);
+ static void fix_invoke_method(Method* method);
// Figure out which new methods match old methods in name and signature,
// which methods have been added, and which are no longer present
diff --git a/src/hotspot/share/prims/resolvedMethodTable.cpp b/src/hotspot/share/prims/resolvedMethodTable.cpp
index af2ec48c2e1..7741328979f 100644
--- a/src/hotspot/share/prims/resolvedMethodTable.cpp
+++ b/src/hotspot/share/prims/resolvedMethodTable.cpp
@@ -200,7 +200,7 @@ void ResolvedMethodTable::print() {
void ResolvedMethodTable::adjust_method_entries(bool * trace_name_printed) {
assert(SafepointSynchronize::is_at_safepoint(), "only called at safepoint");
- // For each entry in RMT, change to new method
+ // For each entry in RMT, change to new methodadjust_method_entries_dcevm
for (int i = 0; i < _the_table->table_size(); ++i) {
for (ResolvedMethodEntry* entry = _the_table->bucket(i);
entry != NULL;
@@ -271,6 +271,8 @@ void ResolvedMethodTable::adjust_method_entries_dcevm(bool * trace_name_printed)
InstanceKlass* newer_klass = InstanceKlass::cast(old_method->method_holder()->new_version());
Method* newer_method = newer_klass->method_with_idnum(old_method->orig_method_idnum());
+ log_info(redefine, class, load, exceptions)("Adjusting method: '%s' of new class %s", newer_method->name_and_sig_as_C_string(), newer_klass->name()->as_C_string());
+
assert(newer_klass == newer_method->method_holder(), "call after swapping redefined guts");
assert(newer_method != NULL, "method_with_idnum() should not be NULL");
assert(old_method != newer_method, "sanity check");
diff --git a/src/hotspot/share/prims/unsafe.cpp b/src/hotspot/share/prims/unsafe.cpp
index 2f14e01ce0d..d0e0367d8eb 100644
--- a/src/hotspot/share/prims/unsafe.cpp
+++ b/src/hotspot/share/prims/unsafe.cpp
@@ -818,6 +818,7 @@ Unsafe_DefineAnonymousClass_impl(JNIEnv *env,
host_domain,
&st,
InstanceKlass::cast(host_klass),
+ NULL,
cp_patches,
CHECK_NULL);
if (anonk == NULL) {
--
2.23.0

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

@@ -0,0 +1,26 @@
From 9c8d44a088bfd73f9be3678110a67a5ed8954c8a Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <lada.dvorak7@gmail.com>
Date: Tue, 6 Oct 2020 22:15:31 +0200
Subject: [PATCH 11/17] AllowEnhancedClassRedefinition is false (disabled) by
default
---
src/hotspot/share/runtime/globals.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/runtime/globals.hpp b/src/hotspot/share/runtime/globals.hpp
index fc0405b5df2..607a39449dc 100644
--- a/src/hotspot/share/runtime/globals.hpp
+++ b/src/hotspot/share/runtime/globals.hpp
@@ -2682,7 +2682,7 @@ define_pd_global(uint64_t,MaxRAM, 1ULL*G);
experimental(bool, UseFastUnorderedTimeStamps, false, \
"Use platform unstable time where supported for timestamps only") \
\
- product(bool, AllowEnhancedClassRedefinition, true, \
+ product(bool, AllowEnhancedClassRedefinition, false, \
"Allow enhanced class redefinition beyond swapping method " \
"bodies") \
\
--
2.23.0

View File

@@ -0,0 +1,32 @@
From 69bc6c03ad25d485182d1b17f265a59ff98e3352 Mon Sep 17 00:00:00 2001
From: Artem Khvastunov <artem.khvastunov@jetbrains.com>
Date: Tue, 14 Apr 2020 19:11:35 +0200
Subject: [PATCH 12/17] add jvmtiEnhancedRedefineClasses.* to CMakeLists.txt
---
jb/project/hotspot-cmake/CMakeLists.txt | 2 ++
1 file changed, 2 insertions(+)
diff --git a/jb/project/hotspot-cmake/CMakeLists.txt b/jb/project/hotspot-cmake/CMakeLists.txt
index 8b552c27206..6516e39058f 100644
--- a/jb/project/hotspot-cmake/CMakeLists.txt
+++ b/jb/project/hotspot-cmake/CMakeLists.txt
@@ -1663,6 +1663,7 @@ set(SOURCE_FILES
../../../src/hotspot/share/prims/jvmtiGetLoadedClasses.hpp
../../../src/hotspot/share/prims/jvmtiAgentThread.hpp
../../../src/hotspot/share/prims/jvmtiCodeBlobEvents.cpp
+../../../src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.cpp
../../../src/hotspot/share/prims/stackwalk.cpp
../../../src/hotspot/share/prims/privilegedStack.hpp
../../../src/hotspot/share/prims/jvmtiUtil.hpp
@@ -1684,6 +1685,7 @@ set(SOURCE_FILES
../../../src/hotspot/share/prims/stackwalk.hpp
../../../src/hotspot/share/prims/privilegedStack.cpp
../../../src/hotspot/share/prims/jvmtiCodeBlobEvents.hpp
+../../../src/hotspot/share/prims/jvmtiEnhancedRedefineClasses.hpp
../../../src/hotspot/share/prims/jvmtiUtil.cpp
../../../src/hotspot/share/prims/jvmtiEnvBase.cpp
../../../src/hotspot/share/prims/methodHandles.cpp
--
2.23.0

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,191 @@
From 5504812403a0673c428fc5589cd94f2c3fea7616 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <lada.dvorak7@gmail.com>
Date: Fri, 23 Oct 2020 10:20:26 +0200
Subject: [PATCH 16/17] Clear dcevm code separation
---
src/hotspot/share/classfile/systemDictionary.cpp | 4 ++--
src/hotspot/share/gc/serial/genMarkSweep.cpp | 8 +++++---
src/hotspot/share/interpreter/linkResolver.cpp | 14 ++++++++++----
.../instrumentation/jfrEventClassTransformer.cpp | 2 +-
src/hotspot/share/oops/instanceKlass.cpp | 10 ++++++----
src/hotspot/share/oops/method.cpp | 2 +-
src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp | 2 +-
src/hotspot/share/runtime/reflection.cpp | 2 +-
8 files changed, 27 insertions(+), 17 deletions(-)
diff --git a/src/hotspot/share/classfile/systemDictionary.cpp b/src/hotspot/share/classfile/systemDictionary.cpp
index 791b49c68ad..011a14eab32 100644
--- a/src/hotspot/share/classfile/systemDictionary.cpp
+++ b/src/hotspot/share/classfile/systemDictionary.cpp
@@ -1152,7 +1152,7 @@ InstanceKlass* SystemDictionary::resolve_from_stream(Symbol* class_name,
MutexLocker mu(SystemDictionary_lock, THREAD);
Klass* check = find_class(h_name, k->class_loader_data());
- assert((check == k && !k->is_redefining()) || (k->is_redefining() && check == k->old_version()), "should be present in the dictionary");
+ assert(check == k && !k->is_redefining() || k->is_redefining() && check == k->old_version(), "should be present in the dictionary");
} );
return k;
@@ -2153,7 +2153,7 @@ void SystemDictionary::check_constraints(unsigned int d_hash,
// also hold array classes.
assert(check->is_instance_klass(), "noninstance in systemdictionary");
- if ((defining == true) || ((k != check) && k->old_version() != check)) {
+ if ((defining == true) || (k != check && (!AllowEnhancedClassRedefinition || k->old_version() != check))) {
throwException = true;
ss.print("loader %s", loader_data->loader_name_and_id());
ss.print(" attempted duplicate %s definition for %s. (%s)",
diff --git a/src/hotspot/share/gc/serial/genMarkSweep.cpp b/src/hotspot/share/gc/serial/genMarkSweep.cpp
index b18682f9a12..590b5389b4d 100644
--- a/src/hotspot/share/gc/serial/genMarkSweep.cpp
+++ b/src/hotspot/share/gc/serial/genMarkSweep.cpp
@@ -343,7 +343,9 @@ void GenMarkSweep::mark_sweep_phase4() {
GenCompactClosure blk;
gch->generation_iterate(&blk, true);
- DcevmSharedGC::copy_rescued_objects_back(MarkSweep::_rescued_oops, true);
- DcevmSharedGC::clear_rescued_objects_resource(MarkSweep::_rescued_oops);
- MarkSweep::_rescued_oops = NULL;
+ if (AllowEnhancedClassRedefinition) {
+ DcevmSharedGC::copy_rescued_objects_back(MarkSweep::_rescued_oops, true);
+ DcevmSharedGC::clear_rescued_objects_resource(MarkSweep::_rescued_oops);
+ MarkSweep::_rescued_oops = NULL;
+ }
}
diff --git a/src/hotspot/share/interpreter/linkResolver.cpp b/src/hotspot/share/interpreter/linkResolver.cpp
index 9dc184d02f5..bff1c3627b0 100644
--- a/src/hotspot/share/interpreter/linkResolver.cpp
+++ b/src/hotspot/share/interpreter/linkResolver.cpp
@@ -295,8 +295,13 @@ void LinkResolver::check_klass_accessability(Klass* ref_klass, Klass* sel_klass,
return; // no relevant check to do
}
}
- Reflection::VerifyClassAccessResults vca_result =
- Reflection::verify_class_access(ref_klass->newest_version(), InstanceKlass::cast(base_klass->newest_version()), true);
+ Klass* refKlassNewest = ref_klass;
+ Klass* baseKlassNewest = base_klass;
+ if (AllowEnhancedClassRedefinition) {
+ refKlassNewest = ref_klass->newest_version();
+ baseKlassNewest = base_klass->newest_version();
+ }
+ Reflection::VerifyClassAccessResults vca_result = Reflection::verify_class_access(refKlassNewest, InstanceKlass::cast(baseKlassNewest), true);
if (vca_result != Reflection::ACCESS_OK) {
ResourceMark rm(THREAD);
char* msg = Reflection::verify_class_access_msg(ref_klass,
@@ -572,7 +577,8 @@ void LinkResolver::check_method_accessability(Klass* ref_klass,
// We'll check for the method name first, as that's most likely
// to be false (so we'll short-circuit out of these tests).
if (sel_method->name() == vmSymbols::clone_name() &&
- sel_klass->newest_version() == SystemDictionary::Object_klass()->newest_version() &&
+ ( !AllowEnhancedClassRedefinition && sel_klass == SystemDictionary::Object_klass() ||
+ AllowEnhancedClassRedefinition && sel_klass->newest_version() == SystemDictionary::Object_klass()->newest_version()) &&
resolved_klass->is_array_klass()) {
// We need to change "protected" to "public".
assert(flags.is_protected(), "clone not protected?");
@@ -997,7 +1003,7 @@ void LinkResolver::resolve_field(fieldDescriptor& fd,
ResourceMark rm(THREAD);
stringStream ss;
- if (sel_klass != current_klass && sel_klass != current_klass->active_version()) {
+ if (sel_klass != current_klass && (!AllowEnhancedClassRedefinition || sel_klass != current_klass->active_version())) {
ss.print("Update to %s final field %s.%s attempted from a different class (%s) than the field's declaring class",
is_static ? "static" : "non-static", resolved_klass->external_name(), fd.name()->as_C_string(),
current_klass->external_name());
diff --git a/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp b/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
index 8afe8985026..4e7b39406fa 100644
--- a/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
+++ b/src/hotspot/share/jfr/instrumentation/jfrEventClassTransformer.cpp
@@ -1467,7 +1467,7 @@ static InstanceKlass* create_new_instance_klass(InstanceKlass* ik, ClassFileStre
NULL, // host klass
NULL, // cp_patches
ClassFileParser::INTERNAL, // internal visibility
- false,
+ false,
THREAD);
if (HAS_PENDING_EXCEPTION) {
log_pending_exception(PENDING_EXCEPTION);
diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp
index 4312c2c4ca9..7335f0cffc9 100644
--- a/src/hotspot/share/oops/instanceKlass.cpp
+++ b/src/hotspot/share/oops/instanceKlass.cpp
@@ -178,7 +178,9 @@ bool InstanceKlass::has_nest_member(InstanceKlass* k, TRAPS) const {
}
Klass* k2 = _constants->klass_at(cp_index, CHECK_false);
- k2 = k2->newest_version();
+ if (AllowEnhancedClassRedefinition) {
+ k2 = k2->newest_version();
+ }
if (k2 == k) {
log_trace(class, nestmates)("- class is listed as a nest member");
return true;
@@ -837,7 +839,7 @@ bool InstanceKlass::link_class_impl(bool throw_verifyerror, TRAPS) {
#endif
set_init_state(linked);
// (DCEVM) Must check for old version in order to prevent infinite loops.
- if (JvmtiExport::should_post_class_prepare() && old_version() == NULL /* JVMTI deadlock otherwise */) {
+ if (JvmtiExport::should_post_class_prepare() && (!AllowEnhancedClassRedefinition || old_version() == NULL) /* JVMTI deadlock otherwise */) {
Thread *thread = THREAD;
assert(thread->is_Java_thread(), "thread->is_Java_thread()");
JvmtiExport::post_class_prepare((JavaThread *) thread, this);
@@ -919,7 +921,7 @@ void InstanceKlass::initialize_impl(TRAPS) {
// that aren't expected to throw. This would wreak havoc. See 6320309.
// (DCEVM) Wait also for the old class version to be fully initialized.
while((is_being_initialized() && !is_reentrant_initialization(self))
- || (old_version() != NULL && InstanceKlass::cast(old_version())->is_being_initialized())) {
+ || (AllowEnhancedClassRedefinition && old_version() != NULL && InstanceKlass::cast(old_version())->is_being_initialized())) {
wait = true;
ol.waitUninterruptibly(CHECK);
}
@@ -3617,7 +3619,7 @@ void InstanceKlass::verify_on(outputStream* st) {
guarantee(sib->is_klass(), "should be klass");
// TODO: (DCEVM) explain
- guarantee(sib->super() == super || super->newest_version() == SystemDictionary::Object_klass(), "siblings should have same superklass");
+ guarantee(sib->super() == super || AllowEnhancedClassRedefinition && super->newest_version() == SystemDictionary::Object_klass(), "siblings should have same superklass");
}
// Verify implementor fields requires the Compile_lock, but this is sometimes
diff --git a/src/hotspot/share/oops/method.cpp b/src/hotspot/share/oops/method.cpp
index a9556ecf0c4..6c7edaca67e 100644
--- a/src/hotspot/share/oops/method.cpp
+++ b/src/hotspot/share/oops/method.cpp
@@ -2100,7 +2100,7 @@ void Method::ensure_jmethod_ids(ClassLoaderData* loader_data, int capacity) {
// Add a method id to the jmethod_ids
jmethodID Method::make_jmethod_id(ClassLoaderData* loader_data, Method* m) {
// FIXME: (DCEVM) ???
- if (m != m->newest_version()) {
+ if (AllowEnhancedClassRedefinition && m != m->newest_version()) {
m = m->newest_version();
}
ClassLoaderData* cld = loader_data;
diff --git a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
index 60604c645ff..325bffb7ad0 100644
--- a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
@@ -51,7 +51,7 @@ public:
// the new version (SystemDictionary stores only new versions). But the LoadedClassesClosure's functionality was
// changed in java8 where jvmtiLoadedClasses collects all classes from all classloaders, therefore we
// must use new versions only.
- if (k->new_version()==NULL) {
+ if (AllowEnhancedClassRedefinition && k->new_version()==NULL) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
}
}
diff --git a/src/hotspot/share/runtime/reflection.cpp b/src/hotspot/share/runtime/reflection.cpp
index ed789b0bc2b..06f60855655 100644
--- a/src/hotspot/share/runtime/reflection.cpp
+++ b/src/hotspot/share/runtime/reflection.cpp
@@ -660,7 +660,7 @@ bool Reflection::verify_member_access(const Klass* current_class,
TRAPS) {
// (DCEVM) Decide accessibility based on active version
- if (current_class != NULL) {
+ if (AllowEnhancedClassRedefinition && current_class != NULL) {
current_class = current_class->active_version();
}
--
2.23.0

View File

@@ -0,0 +1,160 @@
From a9bc3c0b7acfe8432f4f50362df3d8f95d7b5d9d Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <lada.dvorak7@gmail.com>
Date: Fri, 23 Oct 2020 11:07:40 +0200
Subject: [PATCH 17/17] Fix metadataOnStack bug
---
.../share/classfile/classLoaderData.cpp | 7 +-
.../share/classfile/metadataOnStackMark.cpp | 67 ++++++++++---------
.../share/classfile/metadataOnStackMark.hpp | 3 +-
.../share/prims/jvmtiRedefineClasses.cpp | 2 +-
4 files changed, 41 insertions(+), 38 deletions(-)
diff --git a/src/hotspot/share/classfile/classLoaderData.cpp b/src/hotspot/share/classfile/classLoaderData.cpp
index 1bc67adf5a7..bba5ce0511f 100644
--- a/src/hotspot/share/classfile/classLoaderData.cpp
+++ b/src/hotspot/share/classfile/classLoaderData.cpp
@@ -1398,13 +1398,10 @@ bool ClassLoaderDataGraph::do_unloading(bool clean_previous_versions) {
// Klassesoto delete.
// FIXME: dcevm - block asserts in MetadataOnStackMark
- bool walk_all_metadata = false;
- if (!AllowEnhancedClassRedefinition) {
- walk_all_metadata = clean_previous_versions &&
+ bool walk_all_metadata = clean_previous_versions &&
JvmtiExport::has_redefined_a_class() &&
InstanceKlass::has_previous_versions_and_reset();
- MetadataOnStackMark md_on_stack(walk_all_metadata);
- }
+ MetadataOnStackMark md_on_stack(walk_all_metadata, AllowEnhancedClassRedefinition);
// Save previous _unloading pointer for CMS which may add to unloading list before
// purging and we don't want to rewalk the previously unloaded class loader data.
diff --git a/src/hotspot/share/classfile/metadataOnStackMark.cpp b/src/hotspot/share/classfile/metadataOnStackMark.cpp
index 3a62c789702..9d7bdbde74b 100644
--- a/src/hotspot/share/classfile/metadataOnStackMark.cpp
+++ b/src/hotspot/share/classfile/metadataOnStackMark.cpp
@@ -46,23 +46,25 @@ NOT_PRODUCT(bool MetadataOnStackMark::_is_active = false;)
// it. Class unloading only deletes in-error class files, methods created by
// the relocator and dummy constant pools. None of these appear anywhere except
// in metadata Handles.
-MetadataOnStackMark::MetadataOnStackMark(bool redefinition_walk) {
+MetadataOnStackMark::MetadataOnStackMark(bool redefinition_walk, bool ignore) : _ignore(ignore) {
assert(SafepointSynchronize::is_at_safepoint(), "sanity check");
assert(_used_buffers == NULL, "sanity check");
assert(!_is_active, "MetadataOnStackMarks do not nest");
NOT_PRODUCT(_is_active = true;)
- Threads::metadata_handles_do(Metadata::mark_on_stack);
+ if (!ignore) {
+ Threads::metadata_handles_do(Metadata::mark_on_stack);
- if (redefinition_walk) {
- Threads::metadata_do(Metadata::mark_on_stack);
- CodeCache::metadata_do(Metadata::mark_on_stack);
- CompileBroker::mark_on_stack();
- JvmtiCurrentBreakpoints::metadata_do(Metadata::mark_on_stack);
- ThreadService::metadata_do(Metadata::mark_on_stack);
+ if (redefinition_walk) {
+ Threads::metadata_do(Metadata::mark_on_stack);
+ CodeCache::metadata_do(Metadata::mark_on_stack);
+ CompileBroker::mark_on_stack();
+ JvmtiCurrentBreakpoints::metadata_do(Metadata::mark_on_stack);
+ ThreadService::metadata_do(Metadata::mark_on_stack);
#if INCLUDE_JVMCI
- JVMCIRuntime::metadata_do(Metadata::mark_on_stack);
+ JVMCIRuntime::metadata_do(Metadata::mark_on_stack);
#endif
+ }
}
}
@@ -71,32 +73,35 @@ MetadataOnStackMark::~MetadataOnStackMark() {
// Unmark everything that was marked. Can't do the same walk because
// redefine classes messes up the code cache so the set of methods
// might not be the same.
- retire_current_buffer();
-
- MetadataOnStackBuffer* buffer = _used_buffers;
- while (buffer != NULL) {
- // Clear on stack state for all metadata.
- size_t size = buffer->size();
- for (size_t i = 0; i < size; i++) {
- Metadata* md = buffer->at(i);
- md->set_on_stack(false);
+ if (!_ignore)
+ {
+ retire_current_buffer();
+
+ MetadataOnStackBuffer* buffer = _used_buffers;
+ while (buffer != NULL) {
+ // Clear on stack state for all metadata.
+ size_t size = buffer->size();
+ for (size_t i = 0; i < size; i++) {
+ Metadata* md = buffer->at(i);
+ md->set_on_stack(false);
+ }
+
+ MetadataOnStackBuffer* next = buffer->next_used();
+
+ // Move the buffer to the free list.
+ buffer->clear();
+ buffer->set_next_used(NULL);
+ buffer->set_next_free(_free_buffers);
+ _free_buffers = buffer;
+
+ // Step to next used buffer.
+ buffer = next;
}
- MetadataOnStackBuffer* next = buffer->next_used();
-
- // Move the buffer to the free list.
- buffer->clear();
- buffer->set_next_used(NULL);
- buffer->set_next_free(_free_buffers);
- _free_buffers = buffer;
+ _used_buffers = NULL;
- // Step to next used buffer.
- buffer = next;
+ NOT_PRODUCT(_is_active = false;)
}
-
- _used_buffers = NULL;
-
- NOT_PRODUCT(_is_active = false;)
}
void MetadataOnStackMark::retire_buffer(MetadataOnStackBuffer* buffer) {
diff --git a/src/hotspot/share/classfile/metadataOnStackMark.hpp b/src/hotspot/share/classfile/metadataOnStackMark.hpp
index 8da4ac6f92b..6d327ab98f2 100644
--- a/src/hotspot/share/classfile/metadataOnStackMark.hpp
+++ b/src/hotspot/share/classfile/metadataOnStackMark.hpp
@@ -47,8 +47,9 @@ class MetadataOnStackMark : public StackObj {
static MetadataOnStackBuffer* allocate_buffer();
static void retire_buffer(MetadataOnStackBuffer* buffer);
+ bool _ignore;
public:
- MetadataOnStackMark(bool redefinition_walk);
+ MetadataOnStackMark(bool redefinition_walk, bool ignore);
~MetadataOnStackMark();
static void record(Metadata* m);
diff --git a/src/hotspot/share/prims/jvmtiRedefineClasses.cpp b/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
index 1b2070d686f..1178c863c30 100644
--- a/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiRedefineClasses.cpp
@@ -199,7 +199,7 @@ void VM_RedefineClasses::doit() {
// Mark methods seen on stack and everywhere else so old methods are not
// cleaned up if they're on the stack.
- MetadataOnStackMark md_on_stack(true);
+ MetadataOnStackMark md_on_stack(true, false);
HandleMark hm(thread); // make sure any handles created are deleted
// before the stack walk again.
--
2.23.0

View File

@@ -0,0 +1,26 @@
From dbce1c2db6bcb28327fd715d389c824805174690 Mon Sep 17 00:00:00 2001
From: Vladimir Dvorak <lada.dvorak7@gmail.com>
Date: Wed, 11 Nov 2020 18:45:15 +0100
Subject: [PATCH 18/18] Fix LoadedClassesClosure - fixes problems with remote
debugging
---
src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
index 325bffb7ad0..30752e37f1c 100644
--- a/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
+++ b/src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
@@ -51,7 +51,7 @@ public:
// the new version (SystemDictionary stores only new versions). But the LoadedClassesClosure's functionality was
// changed in java8 where jvmtiLoadedClasses collects all classes from all classloaders, therefore we
// must use new versions only.
- if (AllowEnhancedClassRedefinition && k->new_version()==NULL) {
+ if (!AllowEnhancedClassRedefinition || k->new_version()==NULL) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
}
}
--
2.23.0

View File

@@ -0,0 +1,147 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# jcef - the release bundles with jcef
# jfx - the release bundles with javafx
# jcef_jfx - the release bundles with jcef and javafx
# dcevm - the release bundles with dcevm patches
# nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# MODULAR_SDK_PATH - specifies the path to the directory where imported modules are located.
# By default imported modules should be located in ./modular-sdk
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
WORK_DIR=$(pwd)
WITH_IMPORT_MODULES="--with-import-modules=${MODULAR_SDK_PATH:=${WORK_DIR}/modular-sdk}"
JCEF_PATH=${JCEF_PATH:=${WORK_DIR}/jcef_win_x64}
TOOLCHAIN_VERSION=${TOOLCHAIN_VERSION:=2015}
source jb/project/tools/common.sh
function create_jbr {
JBR_BUNDLE=jbr_${bundle_type}
case "${bundle_type}" in
"jfx" | "jcef" | "dcevm" | "nomod" | "fd")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
cat modules.list > modules_tmp.list
rm -rf ${JBR_BUNDLE}
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output ${JBR_BUNDLE} || do_exit $?
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]
then
rsync -av ${JCEF_PATH}/ ${JBR_BUNDLE}/bin --exclude="modular-sdk" || do_exit $?
fi
echo Modifying release info ...
cat ${JSDK}/release | tr -d '\r' | grep -v 'JAVA_VERSION' | grep -v 'MODULES' >> ${JBR_BUNDLE}/release
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-normal-server-release
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-b${build_number}
case "$bundle_type" in
"jfx")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
do_reset_changes=1
;;
"jcef")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"jfx_jcef")
git apply -p0 < jb/project/tools/patches/add_jfx_module.patch || do_exit $?
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
;;
"nomod")
WITH_IMPORT_MODULES=""
;;
"fd")
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-normal-server-fastdebug
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-fastdebug-b${build_number}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
sh ./configure \
--disable-warnings-as-errors \
$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_IMPORT_MODULES \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || do_exit $?
if [ "${bundle_type}" == "jcef" ]; then
make LOG=info clean images test-image CONF=$RELEASE_NAME || do_exit $?
else
make LOG=info clean images CONF=$RELEASE_NAME || do_exit $?
fi
JSDK=build/$RELEASE_NAME/images/jdk
BASE_DIR=build/$RELEASE_NAME/images
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || do_exit $?
if [[ "${bundle_type}" == *jcef* ]] || [[ "${bundle_type}" == *dcevm* ]] || [[ "${bundle_type}" == fd ]]
then
rsync -av ${JCEF_PATH}/ ${JBRSDK_BUNDLE}/bin --exclude='modular-sdk' || do_exit $?
sed 's/JBR/JBRSDK/g' ${JSDK}/release > release
mv release ${JBRSDK_BUNDLE}/release
fi
create_jbr || do_exit $?
do_exit 0

View File

@@ -0,0 +1,66 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to bu built; possible values:
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
# jfx - the bundle 1) jbr with javafx only will be created
#
# 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.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WORK_DIR=$(pwd)
PATH="/usr/local/bin:/usr/bin:${PATH}"
./configure \
--disable-warnings-as-errors \
--disable-debug-symbols \
--with-target-bits=32 \
--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=2015 \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || exit 1
make clean CONF=windows-x86-normal-server-release || exit 1
make LOG=info images CONF=windows-x86-normal-server-release test-image || exit 1
JBSDK=${JBRSDK_BASE_NAME}-windows-x86-b${build_number}
BASE_DIR=build/windows-x86-normal-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
sed 's/JBR/JBRSDK/g' ${JSDK}/release > release
mv release ${JBRSDK_BUNDLE}/release
JBR_BUNDLE=jbr
rm -rf ${JBR_BUNDLE}
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list.x86 | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
echo Modifying release info ...
#grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release

View File

@@ -0,0 +1,88 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# jcef - the release bundles with jcef
# jfx - the release bundles with javafx
# jcef_jfx - the release bundles with jcef and javafx
# dcevm - the release bundles with dcevm patches
# nomod - the release bundles without any additional modules (jcef)
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# MODULAR_SDK_PATH - specifies the path to the directory where imported modules are located.
# By default imported modules should be located in ./modular-sdk
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
source jb/project/tools/common.sh
function pack_jbr {
JBR_BUNDLE=jbr_${bundle_type}
case "${bundle_type}" in
"jfx" | "jcef" | "dcevm" | "nomod" | "fd")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
;;
*)
echo "***ERR*** bundle was not specified" && do_exit 1
;;
esac
JBR=$JBR_BASE_NAME-windows-x64-b$build_number
echo Creating $JBR.tar.gz ...
chmod -R ug+rwx,o+rx ${BASE_DIR}/${JBR_BUNDLE}
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR jbr || do_exit $?
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-normal-server-release
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-b${build_number}
case "$bundle_type" in
"fd")
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-normal-server-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-fastdebug-b${build_number}
;;
esac
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
BASE_DIR=.
if [ "${bundle_type}" == "jcef" ] || [ "${bundle_type}" == "fd" ]; then
JBRSDK_BUNDLE=jbrsdk
echo Creating $JBSDK.tar.gz ...
[ -f "$JBSDK.tar.gz" ] && rm "$JBSDK.tar.gz"
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || do_exit $?
fi
pack_jbr $bundle_type
if [ "$bundle_type" == "jcef" ]; then
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

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

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -50,6 +50,7 @@ $(eval $(call IncludeCustomExtension, Bundles-pre.gmk))
# files or directories may contain spaces.
# BASE_DIRS : Base directories for the root dir in the bundle.
# SUBDIR : Optional name of root dir in bundle.
# OUTPUTDIR : Optionally override output dir
SetupBundleFile = $(NamedParamsMacroTemplate)
define SetupBundleFileBody
@@ -70,8 +71,11 @@ define SetupBundleFileBody
$$(call SetIfEmpty, $1_UNZIP_DEBUGINFO, false)
$(BUNDLES_OUTPUTDIR)/$$($1_BUNDLE_NAME): $$($1_FILES)
# If any of the files contain a space in the file name, CacheFind
$$(call SetIfEmpty, $1_OUTPUTDIR, $$(BUNDLES_OUTPUTDIR))
$$($1_OUTPUTDIR)/$$($1_BUNDLE_NAME): $$($1_FILES)
$$(call LogWarn, Creating $$($1_BUNDLE_NAME))
# If any of the files contain a space in the file name, FindFiles
# will have replaced it with ?. Tar does not accept that so need to
# switch it back.
$$(foreach d, $$($1_BASE_DIRS), \
@@ -121,6 +125,13 @@ define SetupBundleFileBody
&& $(TAR) cf - -$(TAR_INCLUDE_PARAM) $$($1_$$d_LIST_FILE) \
$(TAR_IGNORE_EXIT_VALUE) ) \
| ( $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) && $(TAR) xf - )$$(NEWLINE) )
# Rename stripped pdb files
ifeq ($(OPENJDK_TARGET_OS)+$(SHIP_DEBUG_SYMBOLS), windows+public)
for f in `$(FIND) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) -name "*.stripped.pdb"`; do \
$(ECHO) Renaming $$$${f} to $$$${f%stripped.pdb}pdb $(LOG_INFO); \
$(MV) $$$${f} $$$${f%stripped.pdb}pdb; \
done
endif
# Unzip any zipped debuginfo files
ifeq ($$($1_UNZIP_DEBUGINFO), true)
for f in `$(FIND) $(SUPPORT_OUTPUTDIR)/bundles/$1/$$($1_SUBDIR) -name "*.diz"`; do \
@@ -137,7 +148,7 @@ define SetupBundleFileBody
endif
endif
$1 += $(BUNDLES_OUTPUTDIR)/$$($1_BUNDLE_NAME)
$1 += $$($1_OUTPUTDIR)/$$($1_BUNDLE_NAME)
endef
@@ -152,6 +163,12 @@ ifeq ($(OPENJDK_TARGET_OS)-$(DEBUG_LEVEL), macosx-release)
JRE_IMAGE_HOMEDIR := $(JRE_MACOSX_CONTENTS_DIR)/Home
JDK_BUNDLE_SUBDIR :=
JRE_BUNDLE_SUBDIR :=
# In certain situations, the JDK_IMAGE_DIR points to an image without the
# the symbols and demos. If so, the symobls and demos can be found in a
# separate image. These variables allow for overriding from a custom makefile.
JDK_SYMBOLS_IMAGE_DIR ?= $(JDK_IMAGE_DIR)
JDK_DEMOS_IMAGE_DIR ?= $(JDK_IMAGE_DIR)
JDK_DEMOS_IMAGE_HOMEDIR ?= $(JDK_DEMOS_IMAGE_DIR)/$(JDK_MACOSX_CONTENTS_SUBDIR)/Home
else
JDK_IMAGE_HOMEDIR := $(JDK_IMAGE_DIR)
JRE_IMAGE_HOMEDIR := $(JRE_IMAGE_DIR)
@@ -161,23 +178,56 @@ else
JDK_BUNDLE_SUBDIR := $(JDK_BUNDLE_SUBDIR)/$(DEBUG_LEVEL)
JRE_BUNDLE_SUBDIR := $(JRE_BUNDLE_SUBDIR)/$(DEBUG_LEVEL)
endif
# In certain situations, the JDK_IMAGE_DIR points to an image without the
# the symbols and demos. If so, the symobls and demos can be found in a
# separate image. These variables allow for overriding from a custom makefile.
JDK_SYMBOLS_IMAGE_DIR ?= $(JDK_IMAGE_DIR)
JDK_DEMOS_IMAGE_DIR ?= $(JDK_IMAGE_DIR)
JDK_DEMOS_IMAGE_HOMEDIR ?= $(JDK_DEMOS_IMAGE_DIR)
endif
################################################################################
ifneq ($(filter product-bundles legacy-bundles, $(MAKECMDGOALS)), )
$(eval $(call FillCacheFind, $(IMAGES_OUTPUTDIR)))
ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.pdb %.map
SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.map
ALL_JDK_FILES := $(call CacheFind, $(JDK_IMAGE_DIR))
# There may be files with spaces in the names, so use ShellFindFiles
# explicitly.
ALL_JDK_FILES := $(call ShellFindFiles, $(JDK_IMAGE_DIR))
ifneq ($(JDK_IMAGE_DIR), $(JDK_SYMBOLS_IMAGE_DIR))
ALL_JDK_SYMBOLS_FILES := $(call ShellFindFiles, $(JDK_SYMBOLS_IMAGE_DIR))
else
ALL_JDK_SYMBOLS_FILES := $(ALL_JDK_FILES)
endif
ifneq ($(JDK_IMAGE_DIR), $(JDK_DEMOS_IMAGE_DIR))
ALL_JDK_DEMOS_FILES := $(call ShellFindFiles, $(JDK_DEMOS_IMAGE_DIR))
else
ALL_JDK_DEMOS_FILES := $(ALL_JDK_FILES)
endif
# Create special filter rules when dealing with unzipped .dSYM directories on
# macosx
ifeq ($(OPENJDK_TARGET_OS), macosx)
ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), false)
JDK_SYMBOLS_EXCLUDE_PATTERN := $(addprefix %, \
$(call containing, .dSYM/, $(patsubst $(JDK_IMAGE_DIR)/%, %, $(ALL_JDK_FILES))))
$(call containing, .dSYM/, $(patsubst $(JDK_IMAGE_DIR)/%, %, \
$(ALL_JDK_SYMBOLS_FILES))))
endif
endif
# Create special filter rules when dealing with debug symbols on windows
ifeq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(SHIP_DEBUG_SYMBOLS), )
JDK_SYMBOLS_EXCLUDE_PATTERN := %.pdb
else
ifeq ($(SHIP_DEBUG_SYMBOLS), public)
JDK_SYMBOLS_EXCLUDE_PATTERN := \
$(filter-out \
%.stripped.pdb, \
$(filter %.pdb, $(ALL_JDK_FILES)) \
)
endif
endif
endif
@@ -190,22 +240,24 @@ ifneq ($(filter product-bundles legacy-bundles, $(MAKECMDGOALS)), )
, \
$(ALL_JDK_FILES) \
)
JDK_SYMBOLS_BUNDLE_FILES := \
$(filter \
$(JDK_SYMBOLS_EXCLUDE_PATTERN) \
$(SYMBOLS_EXCLUDE_PATTERN) \
, \
$(filter-out \
$(JDK_IMAGE_HOMEDIR)/demo/% \
$(JDK_IMAGE_HOMEDIR)/demo/% %.stripped.pdb \
, \
$(ALL_JDK_FILES) \
$(ALL_JDK_SYMBOLS_FILES) \
) \
) \
$(call CacheFind, $(SYMBOLS_IMAGE_DIR))
$(call FindFiles, $(SYMBOLS_IMAGE_DIR))
TEST_DEMOS_BUNDLE_FILES := $(filter $(JDK_IMAGE_HOMEDIR)/demo/%, $(ALL_JDK_FILES))
TEST_DEMOS_BUNDLE_FILES := $(filter $(JDK_DEMOS_IMAGE_HOMEDIR)/demo/%, \
$(ALL_JDK_DEMOS_FILES))
ALL_JRE_FILES := $(call CacheFind, $(JRE_IMAGE_DIR))
ALL_JRE_FILES := $(call ShellFindFiles, $(JRE_IMAGE_DIR))
# Create special filter rules when dealing with unzipped .dSYM directories on
# macosx
@@ -216,39 +268,128 @@ ifneq ($(filter product-bundles legacy-bundles, $(MAKECMDGOALS)), )
endif
endif
# Create special filter rules when dealing with debug symbols on windows
ifeq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(SHIP_DEBUG_SYMBOLS), )
JRE_SYMBOLS_EXCLUDE_PATTERN := %.pdb
else
ifeq ($(SHIP_DEBUG_SYMBOLS), public)
JRE_SYMBOLS_EXCLUDE_PATTERN := \
$(filter-out \
%.stripped.pdb, \
$(filter %.pdb, $(ALL_JRE_FILES)) \
)
endif
endif
endif
JRE_BUNDLE_FILES := $(filter-out \
$(JRE_SYMBOLS_EXCLUDE_PATTERN) \
$(SYMBOLS_EXCLUDE_PATTERN), \
$(ALL_JRE_FILES))
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
FILES := $(JDK_BUNDLE_FILES), \
SPECIAL_INCLUDES := $(JDK_SPECIAL_INCLUDES), \
BASE_DIRS := $(JDK_IMAGE_DIR), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
))
# On Macosx release builds, when there is a code signing certificate available,
# the final bundle layout can be signed.
SIGN_BUNDLE := false
ifeq ($(OPENJDK_TARGET_OS)-$(DEBUG_LEVEL), macosx-release)
ifneq ($(CODESIGN), )
SIGN_BUNDLE := true
endif
endif
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
ifeq ($(SIGN_BUNDLE), true)
# Macosx release build and code signing available.
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
FILES := $(JRE_BUNDLE_FILES), \
BASE_DIRS := $(JRE_IMAGE_DIR), \
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
))
################################################################################
# JDK bundle
$(eval $(call SetupCopyFiles, CREATE_JDK_BUNDLE_DIR_SIGNED, \
SRC := $(JDK_IMAGE_DIR), \
FILES := $(JDK_BUNDLE_FILES), \
DEST := $(JDK_MACOSX_BUNDLE_DIR_SIGNED), \
))
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
JDK_SIGNED_CODE_RESOURCES := \
$(JDK_MACOSX_BUNDLE_DIR_SIGNED)/$(JDK_MACOSX_CONTENTS_SUBDIR)/_CodeSignature/CodeResources
$(eval $(call SetupBundleFile, BUILD_JDK_SYMBOLS_BUNDLE, \
BUNDLE_NAME := $(JDK_SYMBOLS_BUNDLE_NAME), \
FILES := $(JDK_SYMBOLS_BUNDLE_FILES), \
BASE_DIRS := $(JDK_IMAGE_DIR) $(wildcard $(SYMBOLS_IMAGE_DIR)), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
UNZIP_DEBUGINFO := true, \
))
$(JDK_SIGNED_CODE_RESOURCES): $(CREATE_JDK_BUNDLE_DIR_SIGNED)
$(call LogWarn, Signing $(JDK_BUNDLE_NAME))
$(CODESIGN) -s "$(MACOSX_CODESIGN_IDENTITY)" \
--timestamp --options runtime --deep --force \
$(JDK_MACOSX_BUNDLE_DIR_SIGNED)/$(JDK_MACOSX_BUNDLE_TOP_DIR) $(LOG_DEBUG)
$(TOUCH) $@
PRODUCT_TARGETS += $(BUILD_JDK_SYMBOLS_BUNDLE)
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
FILES := \
$(CREATE_JDK_BUNDLE_DIR_SIGNED) \
$(JDK_SIGNED_CODE_RESOURCES), \
BASE_DIRS := $(JDK_MACOSX_BUNDLE_DIR_SIGNED), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
))
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
################################################################################
# JRE bundle
$(eval $(call SetupCopyFiles, CREATE_JRE_BUNDLE_DIR_SIGNED, \
SRC := $(JRE_IMAGE_DIR), \
FILES := $(JRE_BUNDLE_FILES), \
DEST := $(JRE_MACOSX_BUNDLE_DIR_SIGNED), \
))
JRE_SIGNED_CODE_RESOURCES := \
$(JRE_MACOSX_BUNDLE_DIR_SIGNED)/$(JRE_MACOSX_CONTENTS_SUBDIR)/_CodeSignature/CodeResources
$(JRE_SIGNED_CODE_RESOURCES): $(CREATE_JRE_BUNDLE_DIR_SIGNED)
$(call LogWarn, Signing $(JRE_BUNDLE_NAME))
$(CODESIGN) -s "$(MACOSX_CODESIGN_IDENTITY)" \
--timestamp --options runtime --deep --force \
$(JRE_MACOSX_BUNDLE_DIR_SIGNED)/$(JRE_MACOSX_BUNDLE_TOP_DIR) $(LOG_DEBUG)
$(TOUCH) $@
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
FILES := \
$(CREATE_JRE_BUNDLE_DIR_SIGNED) \
$(JRE_SIGNED_CODE_RESOURCES), \
BASE_DIRS := $(JRE_MACOSX_BUNDLE_DIR_SIGNED), \
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
))
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
else
# Not a Macosx release build or code signing not available.
$(eval $(call SetupBundleFile, BUILD_JDK_BUNDLE, \
BUNDLE_NAME := $(JDK_BUNDLE_NAME), \
FILES := $(JDK_BUNDLE_FILES), \
SPECIAL_INCLUDES := $(JDK_SPECIAL_INCLUDES), \
BASE_DIRS := $(JDK_IMAGE_DIR), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
))
PRODUCT_TARGETS += $(BUILD_JDK_BUNDLE)
$(eval $(call SetupBundleFile, BUILD_JRE_BUNDLE, \
BUNDLE_NAME := $(JRE_BUNDLE_NAME), \
FILES := $(JRE_BUNDLE_FILES), \
BASE_DIRS := $(JRE_IMAGE_DIR), \
SUBDIR := $(JRE_BUNDLE_SUBDIR), \
))
LEGACY_TARGETS += $(BUILD_JRE_BUNDLE)
endif
ifeq ($(COPY_DEBUG_SYMBOLS), true)
$(eval $(call SetupBundleFile, BUILD_JDK_SYMBOLS_BUNDLE, \
BUNDLE_NAME := $(JDK_SYMBOLS_BUNDLE_NAME), \
FILES := $(JDK_SYMBOLS_BUNDLE_FILES), \
BASE_DIRS := $(JDK_SYMBOLS_IMAGE_DIR) $(wildcard $(SYMBOLS_IMAGE_DIR)), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
UNZIP_DEBUGINFO := true, \
))
PRODUCT_TARGETS += $(BUILD_JDK_SYMBOLS_BUNDLE)
endif
# The demo bundle is only created to support client tests. Ideally it should
# be built with the main test bundle, but since the prerequisites match
@@ -256,7 +397,7 @@ ifneq ($(filter product-bundles legacy-bundles, $(MAKECMDGOALS)), )
$(eval $(call SetupBundleFile, BUILD_TEST_DEMOS_BUNDLE, \
BUNDLE_NAME := $(TEST_DEMOS_BUNDLE_NAME), \
FILES := $(TEST_DEMOS_BUNDLE_FILES), \
BASE_DIRS := $(JDK_IMAGE_DIR), \
BASE_DIRS := $(JDK_DEMOS_IMAGE_DIR), \
SUBDIR := $(JDK_BUNDLE_SUBDIR), \
))
@@ -266,7 +407,7 @@ endif
################################################################################
ifneq ($(filter test-bundles, $(MAKECMDGOALS)), )
TEST_BUNDLE_FILES := $(call CacheFind, $(TEST_IMAGE_DIR))
TEST_BUNDLE_FILES := $(call FindFiles, $(TEST_IMAGE_DIR))
$(eval $(call SetupBundleFile, BUILD_TEST_BUNDLE, \
BUNDLE_NAME := $(TEST_BUNDLE_NAME), \
@@ -280,7 +421,7 @@ endif
################################################################################
ifneq ($(filter docs-bundles, $(MAKECMDGOALS)), )
DOCS_BUNDLE_FILES := $(call CacheFind, $(DOCS_IMAGE_DIR))
DOCS_BUNDLE_FILES := $(call FindFiles, $(DOCS_IMAGE_DIR))
$(eval $(call SetupBundleFile, BUILD_DOCS_BUNDLE, \
BUNDLE_NAME := $(DOCS_BUNDLE_NAME), \
@@ -294,6 +435,27 @@ endif
################################################################################
ifneq ($(filter static-libs-bundles, $(MAKECMDGOALS)), )
STATIC_LIBS_BUNDLE_FILES := $(call FindFiles, $(STATIC_LIBS_IMAGE_DIR))
ifeq ($(OPENJDK_TARGET_OS)-$(DEBUG_LEVEL), macosx-release)
STATIC_LIBS_BUNDLE_SUBDIR := $(JDK_MACOSX_CONTENTS_SUBDIR)/Home
else
STATIC_LIBS_BUNDLE_SUBDIR := $(JDK_BUNDLE_SUBDIR)
endif
$(eval $(call SetupBundleFile, BUILD_STATIC_LIBS_BUNDLE, \
BUNDLE_NAME := $(STATIC_LIBS_BUNDLE_NAME), \
FILES := $(STATIC_LIBS_BUNDLE_FILES), \
BASE_DIRS := $(STATIC_LIBS_IMAGE_DIR), \
SUBDIR := $(STATIC_LIBS_BUNDLE_SUBDIR), \
))
STATIC_LIBS_TARGETS += $(BUILD_STATIC_LIBS_BUNDLE)
endif
################################################################################
# Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, Bundles.gmk))
@@ -303,5 +465,7 @@ product-bundles: $(PRODUCT_TARGETS)
legacy-bundles: $(LEGACY_TARGETS)
test-bundles: $(TEST_TARGETS)
docs-bundles: $(DOCS_TARGETS)
static-libs-bundles: $(STATIC_LIBS_TARGETS)
.PHONY: all default product-bundles test-bundles docs-bundles
.PHONY: all default product-bundles test-bundles docs-bundles \
static-libs-bundles

60
make/CompileCommands.gmk Normal file
View File

@@ -0,0 +1,60 @@
#
# Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# 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: all
include $(SPEC)
include MakeBase.gmk
# When FIXPATH is set, let it process the file to make sure all paths are usable
# by system native tools. The FIXPATH tool assumes arguments preceeded by an @
# character points to a text file containing further arguments (similar to a
# linker). It replaces any such arguments with a different temporary filename,
# whose contents has been processed to make any paths native. To obtain a
# properly processed compile_commands.json, FIXPATH is then made to invoke an
# AWK script with the unprocessed json file as the only argument, prepended with
# an @ character. The AWK script simply copies the contents of this processed
# file.
#
# The sed command encloses the fragments inside brackets and removes the final
# trailing comma.
$(OUTPUTDIR)/compile_commands.json: $(wildcard $(MAKESUPPORT_OUTPUTDIR)/compile-commands/*.json)
$(call LogWarn, Updating compile_commands.json)
$(RM) $@
$(FIND) $(MAKESUPPORT_OUTPUTDIR)/compile-commands/ -name \*.json | \
$(SORT) | $(XARGS) $(CAT) >> $@.tmp
$(if $(FIXPATH),$(FIXPATH) $(AWK) 'BEGIN { \
tmpfile = substr(ARGV[2],2); \
cmd = "$(CP) " "\047" tmpfile "\047" " $@.tmp"; \
system(cmd); \
}' -- @$@.tmp)
$(SED) -e '1s/^/[\$(NEWLINE)/' -e '$(DOLLAR)s/,\s\{0,\}$(DOLLAR)/\$(NEWLINE)]/' $@.tmp > $@
$(RM) $@.tmp
TARGETS += $(OUTPUTDIR)/compile_commands.json
all: $(TARGETS)
.PHONY: all

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -43,7 +43,7 @@ $(eval $(call IncludeCustomExtension, CompileDemos-pre.gmk))
# Prepare the find cache.
DEMO_SRC_DIRS += $(TOPDIR)/src/demo
$(eval $(call FillCacheFind, $(wildcard $(DEMO_SRC_DIRS))))
$(call FillFindCache, $(DEMO_SRC_DIRS))
# Append demo goals to this variable.
TARGETS =
@@ -237,11 +237,11 @@ $(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%: $(DEMO_SHARE_SRC)/nbproject/%
ifeq ($(OPENJDK_TARGET_OS), solaris)
TARGETS += $(patsubst $(DEMO_SHARE_SRC)/nbproject/%, \
$(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%, \
$(call CacheFind, $(DEMO_SHARE_SRC)/nbproject))
$(call FindFiles, $(DEMO_SHARE_SRC)/nbproject))
else
TARGETS += $(patsubst $(DEMO_SHARE_SRC)/nbproject/%, \
$(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%, \
$(call CacheFind, $(DEMO_SHARE_SRC)/nbproject))
$(call FindFiles, $(DEMO_SHARE_SRC)/nbproject))
endif
################################################################################
@@ -250,7 +250,7 @@ ifneq ($(filter images, $(MAKECMDGOALS)), )
$(eval $(call SetupCopyFiles, COPY_TO_TEST_IMAGE, \
SRC := $(SUPPORT_OUTPUTDIR)/demos/image, \
DEST := $(TEST_IMAGE_DIR)/jdk/demos, \
FILES := $(call CacheFind, $(SUPPORT_OUTPUTDIR)/demos/image), \
FILES := $(call FindFiles, $(SUPPORT_OUTPUTDIR)/demos/image), \
))
IMAGES_TARGETS := $(COPY_TO_TEST_IMAGE)

View File

@@ -321,7 +321,7 @@ jdk.jshell_COPY += .jsh .properties
################################################################################
jdk.internal.le_COPY += .properties
jdk.internal.le_COPY += .properties .caps .txt
################################################################################
@@ -644,7 +644,7 @@ endif
ifneq ($(wildcard $(IMPORT_MODULES_CLASSES)/$(MODULE)), )
$(JDK_OUTPUTDIR)/modules/$(MODULE)/_imported.marker: \
$(call CacheFind, $(IMPORT_MODULES_CLASSES)/$(MODULE))
$(call FindFiles, $(IMPORT_MODULES_CLASSES)/$(MODULE))
$(call MakeDir, $(@D))
# Do not delete marker and build meta data files
$(RM) -r $(filter-out $(@D)/_%, $(wildcard $(@D)/*))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -39,7 +39,6 @@ $(eval $(call IncludeCustomExtension, CompileTools.gmk))
# Use += to be able to add to this from a custom extension
BUILD_TOOLS_SRC_DIRS += \
$(TOPDIR)/make/jdk/src/classes \
$(BUILDTOOLS_OUTPUTDIR)/interim_cldrconverter_classes \
$(BUILDTOOLS_OUTPUTDIR)/interim_tzdb_classes \
#
@@ -56,6 +55,7 @@ $(eval $(call SetupJavaCompilation,BUILD_TOOLS_JDK, \
ADD_JAVAC_FLAGS := \
--add-exports java.desktop/sun.awt=ALL-UNNAMED \
--add-exports java.base/sun.text=ALL-UNNAMED \
--add-exports java.base/sun.security.util=ALL-UNNAMED \
, \
))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2015, 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
@@ -35,7 +35,7 @@ LIBS_DIR := $(wildcard $(addsuffix /$(MODULE), $(IMPORT_MODULES_LIBS)))
CMDS_DIR := $(wildcard $(addsuffix /$(MODULE), $(IMPORT_MODULES_CMDS)))
CONF_DIR := $(wildcard $(addsuffix /$(MODULE), $(IMPORT_MODULES_CONF)))
$(eval $(call FillCacheFind, $(LIBS_DIR) $(CMDS_DIR) $(CONF_DIR)))
$(call FillFindCache, $(LIBS_DIR) $(CMDS_DIR) $(CONF_DIR))
ifneq ($(LIBS_DIR), )
ifeq ($(OPENJDK_TARGET_OS), windows)
@@ -45,21 +45,21 @@ ifneq ($(LIBS_DIR), )
SRC := $(LIBS_DIR), \
DEST := $(JDK_OUTPUTDIR)/bin, \
FILES := $(filter $(TO_BIN_FILTER), \
$(call CacheFind, $(LIBS_DIR))) \
$(call FindFiles, $(LIBS_DIR))) \
))
$(eval $(call SetupCopyFiles, COPY_LIBS_TO_LIB, \
SRC := $(LIBS_DIR), \
DEST := $(JDK_OUTPUTDIR)/lib, \
FILES := $(filter-out $(TO_BIN_FILTER), \
$(call CacheFind, $(LIBS_DIR))) \
$(call FindFiles, $(LIBS_DIR))) \
))
TARGETS += $(COPY_LIBS_TO_BIN) $(COPY_LIBS_TO_LIB)
else
$(eval $(call SetupCopyFiles, COPY_LIBS, \
SRC := $(LIBS_DIR), \
DEST := $(JDK_OUTPUTDIR)/lib, \
FILES := $(filter %$(SHARED_LIBRARY_SUFFIX), $(call CacheFind, $(LIBS_DIR))), \
FILES := $(filter %$(SHARED_LIBRARY_SUFFIX), $(call FindFiles, $(LIBS_DIR))), \
))
# Use relative links if the import dir is inside the OUTPUTDIR, otherwise
@@ -75,7 +75,7 @@ ifneq ($(LIBS_DIR), )
$(eval $(call SetupCopyFiles, LINK_LIBS, \
SRC := $(LIBS_DIR), \
DEST := $(JDK_OUTPUTDIR)/lib, \
FILES := $(filter-out %$(SHARED_LIBRARY_SUFFIX), $(call CacheFind, $(LIBS_DIR))), \
FILES := $(filter-out %$(SHARED_LIBRARY_SUFFIX), $(call FindFiles, $(LIBS_DIR))), \
MACRO := $(LINK_MACRO), \
LOG_ACTION := $(LOG_ACTION), \
))
@@ -87,7 +87,7 @@ ifneq ($(CMDS_DIR), )
$(eval $(call SetupCopyFiles, COPY_CMDS, \
SRC := $(CMDS_DIR), \
DEST := $(JDK_OUTPUTDIR)/bin, \
FILES := $(call CacheFind, $(CMDS_DIR)), \
FILES := $(call FindFiles, $(CMDS_DIR)), \
))
TARGETS += $(COPY_CMDS)
endif
@@ -96,7 +96,7 @@ ifneq ($(CONF_DIR), )
$(eval $(call SetupCopyFiles, COPY_CONF, \
SRC := $(CONF_DIR), \
DEST := $(JDK_OUTPUTDIR)/lib, \
FILES := $(call CacheFind, $(CONF_DIR)), \
FILES := $(call FindFiles, $(CONF_DIR)), \
))
TARGETS += $(COPY_CONF)
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2015, 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
@@ -39,7 +39,7 @@ MODULES_TO_COPY := $(sort \
COPY_CLASSES_TARGET := $(BUILDJDK_OUTPUTDIR)/jdk/modules/java.base/_the.buildjdk-copy-marker
$(COPY_CLASSES_TARGET): $(call CacheFind, $(wildcard \
$(COPY_CLASSES_TARGET): $(call FindFiles, $(wildcard \
$(addprefix $(JDK_OUTPUTDIR)/modules/, $(MODULES_TO_COPY))))
$(ECHO) $(LOG_INFO) "Copying java modules to buildjdk: $(MODULES_TO_COPY)"
$(RM) -r $(BUILDJDK_OUTPUTDIR)/jdk/modules
@@ -56,7 +56,7 @@ TARGETS += $(COPY_CLASSES_TARGET)
$(eval $(call SetupCopyFiles, COPY_SUPPORT_HEADERS, \
SRC := $(OUTPUTDIR), \
DEST := $(BUILDJDK_OUTPUTDIR), \
FILES := $(call CacheFind, $(wildcard \
FILES := $(call FindFiles, $(wildcard \
$(addprefix $(SUPPORT_OUTPUTDIR)/headers/, $(MODULES_TO_COPY)))), \
))

View File

@@ -1,4 +1,5 @@
# Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -51,33 +52,79 @@ INCLUDE_HEADERS_DIR ?= $(firstword $(wildcard $(addsuffix /$(MODULE), \
MAN_DIR ?= $(firstword $(wildcard $(addsuffix /$(MODULE), \
$(SUPPORT_OUTPUTDIR)/modules_man $(IMPORT_MODULES_MAN))))
$(eval $(call FillCacheFind, \
$(call FillFindCache, \
$(LIBS_DIR) $(CMDS_DIR) $(CONF_DIR) $(CLASSES_DIR) \
))
)
ifneq ($(LIBS_DIR), )
JMOD_FLAGS += --libs $(LIBS_DIR)
DEPS += $(call CacheFind, $(LIBS_DIR))
DEPS += $(call FindFiles, $(LIBS_DIR))
ifeq ($(OPENJDK_TARGET_OS)+$(SHIP_DEBUG_SYMBOLS), windows+public)
# For public debug symbols on Windows, we have to use stripped pdbs and rename them
rename_stripped = $(patsubst %.stripped.pdb,%.pdb,$1)
LIBS_DIR_FILTERED := $(subst modules_libs,modules_libs_filtered, $(LIBS_DIR))
FILES_LIBS := $(filter-out %.pdb, $(call FindFiles, $(LIBS_DIR))) \
$(filter %.stripped.pdb, $(call FindFiles, $(LIBS_DIR)))
$(eval $(call SetupCopyFiles, COPY_FILTERED_LIBS, \
SRC := $(LIBS_DIR), \
DEST := $(LIBS_DIR_FILTERED), \
FILES := $(FILES_LIBS), \
NAME_MACRO := rename_stripped, \
))
DEPS += $(COPY_FILTERED_LIBS)
JMOD_FLAGS += --libs $(LIBS_DIR_FILTERED)
else
JMOD_FLAGS += --libs $(LIBS_DIR)
endif
endif
ifneq ($(CMDS_DIR), )
JMOD_FLAGS += --cmds $(CMDS_DIR)
DEPS += $(call CacheFind, $(CMDS_DIR))
DEPS += $(call FindFiles, $(CMDS_DIR))
ifeq ($(OPENJDK_TARGET_OS)+$(SHIP_DEBUG_SYMBOLS), windows+public)
# For public debug symbols on Windows, we have to use stripped pdbs, rename them
# and filter out a few launcher pdbs where there's a lib that goes by the same name
rename_stripped = $(patsubst %.stripped.pdb,%.pdb,$1)
CMDS_DIR_FILTERED := $(subst modules_cmds,modules_cmds_filtered, $(CMDS_DIR))
FILES_CMDS := $(filter-out %.pdb, $(call FindFiles, $(CMDS_DIR))) \
$(filter-out %jimage.stripped.pdb %jpackage.stripped.pdb %java.stripped.pdb, \
$(filter %.stripped.pdb, $(call FindFiles, $(CMDS_DIR))))
$(eval $(call SetupCopyFiles, COPY_FILTERED_CMDS, \
SRC := $(CMDS_DIR), \
DEST := $(CMDS_DIR_FILTERED), \
FILES := $(FILES_CMDS), \
NAME_MACRO := rename_stripped, \
))
DEPS += $(COPY_FILTERED_CMDS)
JMOD_FLAGS += --cmds $(CMDS_DIR_FILTERED)
else ifeq ($(OPENJDK_TARGET_OS)+$(SHIP_DEBUG_SYMBOLS), windows+full)
# For full debug symbols on Windows, we have to filter out a few launcher pdbs
# where there's a lib that goes by the same name
CMDS_DIR_FILTERED := $(subst modules_cmds,modules_cmds_filtered, $(CMDS_DIR))
$(eval $(call SetupCopyFiles, COPY_FILTERED_CMDS, \
SRC := $(CMDS_DIR), \
DEST := $(CMDS_DIR_FILTERED), \
FILES := $(filter-out %jimage.pdb %jpackage.pdb %java.pdb, \
$(call FindFiles, $(CMDS_DIR))), \
))
DEPS += $(COPY_FILTERED_CMDS)
JMOD_FLAGS += --cmds $(CMDS_DIR_FILTERED)
else
JMOD_FLAGS += --cmds $(CMDS_DIR)
endif
endif
ifneq ($(CONF_DIR), )
JMOD_FLAGS += --config $(CONF_DIR)
DEPS += $(call CacheFind, $(CONF_DIR))
DEPS += $(call FindFiles, $(CONF_DIR))
endif
ifneq ($(CLASSES_DIR), )
JMOD_FLAGS += --class-path $(CLASSES_DIR)
DEPS += $(call CacheFind, $(CLASSES_DIR))
DEPS += $(call FindFiles, $(CLASSES_DIR))
endif
ifneq ($(INCLUDE_HEADERS_DIR), )
JMOD_FLAGS += --header-files $(INCLUDE_HEADERS_DIR)
DEPS += $(call CacheFind, $(INCLUDE_HEADERS_DIR))
DEPS += $(call FindFiles, $(INCLUDE_HEADERS_DIR))
endif
ifneq ($(MAN_DIR), )
JMOD_FLAGS += --man-pages $(MAN_DIR)
DEPS += $(call CacheFind, $(MAN_DIR))
DEPS += $(call FindFiles, $(MAN_DIR))
endif
# If a specific modules_legal dir exists for this module, only pick up files
@@ -91,7 +138,7 @@ LEGAL_NOTICES := \
)
LEGAL_NOTICES_PATH := $(call PathList, $(LEGAL_NOTICES))
DEPS += $(call CacheFind, $(LEGAL_NOTICES))
DEPS += $(call FindFiles, $(LEGAL_NOTICES))
JMOD_FLAGS += --legal-notices $(LEGAL_NOTICES_PATH)
@@ -145,7 +192,7 @@ endif
# the actual command. Filter that out using wildcard before adding to DEPS.
DEPS += $(wildcard $(JMOD_CMD))
ifeq ($(EXTERNAL_BUILDJDK), false)
DEPS += $(call CacheFind, $(JDK_OUTPUTDIR)/modules/jdk.jlink/jdk/tools/jmod)
DEPS += $(call FindFiles, $(JDK_OUTPUTDIR)/modules/jdk.jlink/jdk/tools/jmod)
endif
# If creating interim versions of jmods, certain files need to be filtered out
@@ -154,7 +201,15 @@ ifeq ($(INTERIM_JMOD), true)
DEPS := $(filter-out $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/classlist, $(DEPS))
endif
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.debuginfo,*.dSYM/**,*.dSYM,*.pdb,*.map}'
ifeq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(SHIP_DEBUG_SYMBOLS), )
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.pdb,*.map}'
else
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.map}'
endif
else
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.debuginfo,*.dSYM/**,*.dSYM}'
endif
# Create jmods in a temp dir and then move them into place to keep the
# module path in $(IMAGES_OUTPUTDIR)/jmods valid at all times.

View File

@@ -341,7 +341,7 @@ define SetupApiDocsGenerationBody
$$(SUPPORT_OUTPUTDIR)/docs/$1.vardeps)
# Get a list of all files in all the source dirs for all included modules
$1_SOURCE_DEPS := $$(call CacheFind, $$(wildcard $$(foreach module, \
$1_SOURCE_DEPS := $$(call FindFiles, $$(wildcard $$(foreach module, \
$$($1_ALL_MODULES), $$(call FindModuleSrcDirs, $$(module)))))
# Javadoc creates a lot of files but use index.html as a marker
@@ -496,7 +496,7 @@ JDK_INDEX_TARGETS += $(JDK_INDEX_HTML)
GLOBAL_SPECS_RESOURCES_DIR := $(TOPDIR)/make/data/docs-resources/
$(eval $(call SetupCopyFiles, COPY_GLOBAL_RESOURCES, \
SRC := $(GLOBAL_SPECS_RESOURCES_DIR), \
FILES := $(call CacheFind, $(GLOBAL_SPECS_RESOURCES_DIR)), \
FILES := $(call FindFiles, $(GLOBAL_SPECS_RESOURCES_DIR)), \
DEST := $(DOCS_OUTPUTDIR), \
))
JDK_INDEX_TARGETS += $(COPY_GLOBAL_RESOURCES)
@@ -521,10 +521,10 @@ COPY_SPEC_FILTER := %.html %.gif %.jpg %.mib %.css
$(foreach m, $(ALL_MODULES), \
$(eval SPECS_$m := $(call FindModuleSpecsDirs, $m)) \
$(foreach d, $(SPECS_$m), \
$(if $(filter $(COPY_SPEC_FILTER), $(call CacheFind, $d)), \
$(if $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d)), \
$(eval $(call SetupCopyFiles, COPY_$m, \
SRC := $d, \
FILES := $(filter $(COPY_SPEC_FILTER), $(call CacheFind, $d)), \
FILES := $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d)), \
DEST := $(DOCS_OUTPUTDIR)/specs/, \
)) \
$(eval JDK_SPECS_TARGETS += $(COPY_$m)) \
@@ -541,11 +541,11 @@ ifeq ($(ENABLE_FULL_DOCS), true)
$(foreach m, $(ALL_MODULES), \
$(eval SPECS_$m := $(call FindModuleSpecsDirs, $m)) \
$(foreach d, $(SPECS_$m), \
$(if $(filter %.md, $(call CacheFind, $d)), \
$(if $(filter %.md, $(call FindFiles, $d)), \
$(eval $m_$d_NAME := CONVERT_MARKDOWN_$m_$(strip $(call RelativePath, $d, $(TOPDIR)))) \
$(eval $(call SetupProcessMarkdown, $($m_$d_NAME), \
SRC := $d, \
FILES := $(filter %.md, $(call CacheFind, $d)), \
FILES := $(filter %.md, $(call FindFiles, $d)), \
DEST := $(DOCS_OUTPUTDIR)/specs/, \
CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
)) \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -84,6 +84,17 @@ $(eval $(call SetupCopyFiles, COPY_CLASSLIST, \
TARGETS += $(COPY_CLASSLIST)
# In case of shipping public debug symbols on windows, there is another temporary
# location from where jmods are compiled - need to deploy classlist there, too.
ifeq ($(OPENJDK_TARGET_OS)+$(SHIP_DEBUG_SYMBOLS), windows+public)
$(eval $(call SetupCopyFiles, COPY_CLASSLIST_TO_FILTERED, \
FILES := $(CLASSLIST_FILE), \
DEST := $(SUPPORT_OUTPUTDIR)/modules_libs_filtered/java.base, \
))
TARGETS += $(COPY_CLASSLIST_TO_FILTERED)
endif
# Copy the default_jli_trace.txt file into jdk.jlink
$(eval $(call SetupCopyFiles, COPY_JLI_TRACE, \
FILES := $(JLI_TRACE_FILE), \

View File

@@ -0,0 +1,57 @@
#
# Copyright (c) 2020, Red Hat Inc.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# This makefile creates a jdk image overlayed with statically linked core
# libraries.
default: all
include $(SPEC)
include MakeBase.gmk
################################################################################
TARGETS :=
$(eval $(call SetupCopyFiles, COPY_JDK_IMG, \
SRC := $(JDK_IMAGE_DIR)/, \
DEST := $(GRAAL_BUILDER_IMAGE_DIR)/, \
FILES := $(call FindFiles, $(JDK_IMAGE_DIR)/), \
))
TARGETS += $(COPY_JDK_IMG)
$(eval $(call SetupCopyFiles, COPY_STATIC_LIBS, \
SRC := $(STATIC_LIBS_IMAGE_DIR)/lib, \
DEST := $(GRAAL_BUILDER_IMAGE_DIR)/lib, \
FILES := $(filter %$(STATIC_LIBRARY_SUFFIX), \
$(call FindFiles, $(STATIC_LIBS_IMAGE_DIR)/lib)), \
))
TARGETS += $(COPY_STATIC_LIBS)
################################################################################
all: $(TARGETS)
.PHONY: all

View File

@@ -43,7 +43,7 @@ help:
$(info $(_) make images # Create a complete jdk image)
$(info $(_) # (alias for product-images))
$(info $(_) make <name>-image # Build just the image for any of: )
$(info $(_) # jdk, test, docs, symbols, legacy-jre)
$(info $(_) # jdk, test, docs, symbols, legacy-jre, static-libs)
$(info $(_) make <phase> # Build the specified phase and everything it depends on)
$(info $(_) # (gensrc, java, copy, libs, launchers, gendata, rmic))
$(info $(_) make *-only # Applies to most targets and disables building the)
@@ -119,7 +119,7 @@ print-configurations:
run-test-prebuilt:
@( cd $(topdir) && \
$(MAKE) --no-print-directory -r -R -I make/common/ -f make/RunTestsPrebuilt.gmk \
run-test-prebuilt TEST="$(TEST)" )
run-test-prebuilt CUSTOM_MAKE_DIR=$(CUSTOM_MAKE_DIR) TEST="$(TEST)" )
ALL_GLOBAL_TARGETS := help print-configurations run-test-prebuilt

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -276,21 +276,14 @@ endif
ifeq ($(GCOV_ENABLED), true)
GCOV_FIND_EXPR := -type f -name "*.gcno"
$(eval $(call SetupCopyFiles,COPY_HOTSPOT_GCOV_GCNO, \
$(eval $(call SetupCopyFiles,COPY_GCOV_GCNO, \
SRC := $(OUTPUTDIR), \
DEST := $(SYMBOLS_IMAGE_DIR)/gcov, \
FILES := $(shell $(FIND) $(HOTSPOT_OUTPUTDIR) $(GCOV_FIND_EXPR))))
FILES := $(call FindFiles, $(HOTSPOT_OUTPUTDIR) \
$(SUPPORT_OUTPUTDIR)/native, *.gcno) \
))
SYMBOLS_TARGETS += $(COPY_HOTSPOT_GCOV_GCNO)
$(eval $(call SetupCopyFiles,COPY_JDK_GCOV_GCNO, \
SRC := $(OUTPUTDIR), \
DEST := $(SYMBOLS_IMAGE_DIR)/gcov, \
FILES := $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/native $(GCOV_FIND_EXPR))))
SYMBOLS_TARGETS += $(COPY_JDK_GCOV_GCNO)
SYMBOLS_TARGETS += $(COPY_GCOV_GCNO)
endif
@@ -308,6 +301,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
else
LIBS_TARGET_SUBDIR := lib
endif
CMDS_TARGET_SUBDIR := bin
# Param 1 - dir to find debuginfo files in
FindDebuginfoFiles = \
@@ -323,13 +317,16 @@ else
# On Macosx, if debug symbols have not been zipped, find all files inside *.dSYM
# dirs.
ifeq ($(OPENJDK_TARGET_OS), macosx)
$(eval $(call FillCacheFind, \
$(SUPPORT_OUTPUTDIR)/modules_cmds $(SUPPORT_OUTPUTDIR)/modules_libs))
$(call FillFindCache, \
$(SUPPORT_OUTPUTDIR)/modules_libs $(SUPPORT_OUTPUTDIR)/modules_cmds)
FindDebuginfoFiles = \
$(if $(wildcard $1), $(call containing, .dSYM/, $(call CacheFind, $1)))
$(if $(wildcard $1), $(call containing, .dSYM/, $(call FindFiles, $1)))
endif
endif
FILTERED_PDBS := %jimage.stripped.pdb %jpackage.stripped.pdb %java.stripped.pdb \
%jimage.pdb %jpackage.pdb %java.pdb %jimage.map %jpackage.map %java.map
# Param 1 - either JDK or JRE
SetupCopyDebuginfo = \
$(foreach m, $(ALL_$1_MODULES), \
@@ -340,6 +337,13 @@ SetupCopyDebuginfo = \
$(SUPPORT_OUTPUTDIR)/modules_libs/$m), \
)) \
$(eval $1_TARGETS += $$(COPY_$1_LIBS_DEBUGINFO_$m)) \
$(eval $(call SetupCopyFiles, COPY_$1_CMDS_DEBUGINFO_$m, \
SRC := $(SUPPORT_OUTPUTDIR)/modules_cmds/$m, \
DEST := $($1_IMAGE_DIR)/$(CMDS_TARGET_SUBDIR), \
FILES := $(filter-out $(FILTERED_PDBS), $(call FindDebuginfoFiles, \
$(SUPPORT_OUTPUTDIR)/modules_cmds/$m)), \
)) \
$(eval $1_TARGETS += $$(COPY_$1_CMDS_DEBUGINFO_$m)) \
)
# No space before argument to avoid having to put $(strip ) everywhere in

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -52,26 +52,24 @@ ifeq ($(OPENJDK_TARGET_OS), macosx)
$(eval $(call SetupCopyFiles, COPY_JDK_IMAGE, \
SRC := $(JDK_IMAGE_DIR), \
DEST := $(JDK_MACOSX_CONTENTS_DIR)/Home, \
FILES := $(call CacheFind, $(JDK_IMAGE_DIR)), \
FILES := $(call FindFiles, $(JDK_IMAGE_DIR)), \
))
$(eval $(call SetupCopyFiles, COPY_JRE_IMAGE, \
SRC := $(JRE_IMAGE_DIR), \
DEST := $(JRE_MACOSX_CONTENTS_DIR)/Home, \
FILES := $(call CacheFind, $(JRE_IMAGE_DIR)), \
FILES := $(call FindFiles, $(JRE_IMAGE_DIR)), \
))
$(JDK_MACOSX_CONTENTS_DIR)/MacOS/libjli.dylib:
$(call LogInfo, Creating link $(patsubst $(OUTPUTDIR)/%,%,$@))
$(MKDIR) -p $(@D)
$(RM) $@
$(LN) -s ../Home/lib/jli/libjli.dylib $@
$(eval $(call SetupCopyFiles, COPY_LIBJLI_JDK, \
FILES := $(JDK_IMAGE_DIR)/lib/jli/libjli.dylib, \
DEST := $(JDK_MACOSX_CONTENTS_DIR)/MacOS, \
))
$(JRE_MACOSX_CONTENTS_DIR)/MacOS/libjli.dylib:
$(call LogInfo, Creating link $(patsubst $(OUTPUTDIR)/%,%,$@))
$(MKDIR) -p $(@D)
$(RM) $@
$(LN) -s ../Home/lib/jli/libjli.dylib $@
$(eval $(call SetupCopyFiles, COPY_LIBJLI_JRE, \
FILES := $(JRE_IMAGE_DIR)/lib/jli/libjli.dylib, \
DEST := $(JRE_MACOSX_CONTENTS_DIR)/MacOS, \
))
$(eval $(call SetupTextFileProcessing, BUILD_JDK_PLIST, \
SOURCE_FILES := $(MACOSX_PLIST_SRC)/JDK-Info.plist, \
@@ -97,13 +95,19 @@ ifeq ($(OPENJDK_TARGET_OS), macosx)
@@VENDOR@@ => $(BUNDLE_VENDOR) , \
))
jdk-bundle: $(COPY_JDK_IMAGE) $(JDK_MACOSX_CONTENTS_DIR)/MacOS/libjli.dylib \
$(BUILD_JDK_PLIST)
$(SUPPORT_OUTPUTDIR)/images/_jdk_bundle_attribute_set: $(COPY_JDK_IMAGE)
$(SETFILE) -a B $(dir $(JDK_MACOSX_CONTENTS_DIR))
$(TOUCH) $@
jre-bundle: $(COPY_JRE_IMAGE) $(JRE_MACOSX_CONTENTS_DIR)/MacOS/libjli.dylib \
$(BUILD_JRE_PLIST)
$(SUPPORT_OUTPUTDIR)/images/_jre_bundle_attribute_set: $(COPY_JRE_IMAGE)
$(SETFILE) -a B $(dir $(JRE_MACOSX_CONTENTS_DIR))
$(TOUCH) $@
jdk-bundle: $(COPY_JDK_IMAGE) $(COPY_LIBJLI_JDK) \
$(BUILD_JDK_PLIST) $(SUPPORT_OUTPUTDIR)/images/_jdk_bundle_attribute_set
jre-bundle: $(COPY_JRE_IMAGE) $(COPY_LIBJLI_JRE) \
$(BUILD_JRE_PLIST) $(SUPPORT_OUTPUTDIR)/images/_jre_bundle_attribute_set
else # Not macosx

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -78,13 +78,9 @@ ifneq ($(CREATING_BUILDJDK), true)
interim-rmic:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterimRmic.gmk)
interim-cldrconverter:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopyInterimCLDRConverter.gmk)
interim-tzdb:
interim-tzdb:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopyInterimTZDB.gmk)
buildtools-jdk:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileToolsJdk.gmk)
@@ -96,7 +92,7 @@ interim-tzdb:
endif
ALL_TARGETS += buildtools-langtools interim-langtools \
interim-rmic interim-cldrconverter interim-tzdb buildtools-jdk buildtools-modules \
interim-rmic interim-tzdb buildtools-jdk buildtools-modules \
buildtools-hotspot
################################################################################
@@ -140,7 +136,7 @@ ifneq ($(CREATING_BUILDJDK), true)
define DeclareModuleInfoRecipe
$1-gensrc-moduleinfo:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) \
-f GensrcModuleInfo.gmk MODULE=$1)
-f gensrc/GensrcModuleInfo.gmk MODULE=$1)
$1-gensrc: $1-gensrc-moduleinfo
endef
@@ -225,6 +221,21 @@ $(eval $(call DeclareRecipesForPhase, LIBS, \
ALL_TARGETS += $(LIBS_TARGETS)
################################################################################
# Targets for compiling static versions of certain native libraries. These do
# not end up in the jmods or the normal JDK image, but are instead bundled into
# a special deliverable.
$(eval $(call DeclareRecipesForPhase, STATIC_LIBS, \
TARGET_SUFFIX := static-libs, \
FILE_PREFIX := Lib, \
MAKE_SUBDIR := lib, \
CHECK_MODULES := $(ALL_MODULES), \
USE_WRAPPER := true, \
EXTRA_ARGS := STATIC_LIBS=true, \
))
ALL_TARGETS += $(STATIC_LIBS_TARGETS)
################################################################################
# Targets for compiling native executables
$(eval $(call DeclareRecipesForPhase, LAUNCHER, \
@@ -266,6 +277,52 @@ hotspot-ide-project:
ALL_TARGETS += $(HOTSPOT_VARIANT_TARGETS) $(HOTSPOT_VARIANT_GENSRC_TARGETS) \
$(HOTSPOT_VARIANT_LIBS_TARGETS) hotspot-ide-project
################################################################################
# Generate libs and launcher targets for creating compile_commands.json fragments
define DeclareCompileCommandsRecipe
$1-compile-commands:
$$(call LogInfo, Generating compile_commands.json fragments for $1)
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Main.gmk $1-only \
GENERATE_COMPILE_COMMANDS_ONLY=true)
COMPILE_COMMANDS_TARGETS_$2 += $1-compile-commands
endef
$(foreach t, $(HOTSPOT_VARIANT_LIBS_TARGETS), \
$(eval $(call DeclareCompileCommandsRecipe,$t,HOTSPOT)) \
)
$(foreach t, $(LIBS_TARGETS) $(LAUNCHER_TARGETS), \
$(eval $(call DeclareCompileCommandsRecipe,$t,JDK)) \
)
compile-commands compile-commands-hotspot:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileCommands.gmk)
ALL_TARGETS += $(COMPILE_COMMANDS_TARGETS_HOTSPOT) $(COMPILE_COMMANDS_TARGETS_JDK)
ALL_TARGETS += compile-commands compile-commands-hotspot
################################################################################
# VS Code projects
vscode-project:
+($(CD) $(TOPDIR)/make/vscode && $(MAKE) $(MAKE_ARGS) -f CreateVSCodeProject.gmk \
VSCODE_INDEXER=cpptools)
vscode-project-clangd:
+($(CD) $(TOPDIR)/make/vscode && $(MAKE) $(MAKE_ARGS) -f CreateVSCodeProject.gmk \
VSCODE_INDEXER=clangd)
vscode-project-rtags:
+($(CD) $(TOPDIR)/make/vscode && $(MAKE) $(MAKE_ARGS) -f CreateVSCodeProject.gmk \
VSCODE_INDEXER=rtags)
vscode-project-ccls:
+($(CD) $(TOPDIR)/make/vscode && $(MAKE) $(MAKE_ARGS) -f CreateVSCodeProject.gmk \
VSCODE_INDEXER=ccls)
ALL_TARGETS += vscode-project vscode-project-clangd vscode-project-rtags \
vscode-project-ccls
################################################################################
# Build demos targets
@@ -338,6 +395,9 @@ legacy-jre-image:
symbols-image:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Images.gmk symbols)
static-libs-image:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f StaticLibsImage.gmk)
mac-jdk-bundle:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f MacBundles.gmk jdk-bundle)
@@ -350,10 +410,13 @@ release-file:
exploded-image-optimize:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f ExplodedImageOptimize.gmk)
graal-builder-image:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f GraalBuilderImage.gmk)
ALL_TARGETS += store-source-revision create-source-revision-tracker bootcycle-images zip-security \
zip-source jrtfs-jar jdk-image legacy-jre-image \
symbols-image mac-jdk-bundle mac-legacy-jre-bundle \
release-file exploded-image-optimize
symbols-image static-libs-image mac-jdk-bundle mac-legacy-jre-bundle \
release-file exploded-image-optimize graal-builder-image
################################################################################
# Docs targets
@@ -563,8 +626,12 @@ test-jdk-jtreg-native:
test-make:
($(CD) $(TOPDIR)/test/make && $(MAKE) $(MAKE_ARGS) -f TestMake.gmk $(TEST_TARGET))
test-compile-commands:
($(CD) $(TOPDIR)/test/make && $(MAKE) $(MAKE_ARGS) -f TestMake.gmk test-compile-commands)
ALL_TARGETS += test test-hotspot-jtreg test-hotspot-jtreg-native \
test-hotspot-internal test-hotspot-gtest test-jdk-jtreg-native test-make
test-hotspot-internal test-hotspot-gtest test-jdk-jtreg-native test-make \
test-compile-commands
################################################################################
# Bundles
@@ -581,7 +648,11 @@ test-bundles:
docs-bundles:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Bundles.gmk docs-bundles)
ALL_TARGETS += product-bundles legacy-bundles test-bundles docs-bundles
static-libs-bundles:
+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Bundles.gmk static-libs-bundles)
ALL_TARGETS += product-bundles legacy-bundles test-bundles docs-bundles \
static-libs-bundles
################################################################################
# Install targets
@@ -614,7 +685,7 @@ else
interim-langtools: $(INTERIM_LANGTOOLS_GENSRC_TARGETS)
buildtools-jdk: interim-langtools interim-cldrconverter interim-tzdb
buildtools-jdk: interim-langtools interim-tzdb
buildtools-hotspot: interim-langtools
@@ -636,7 +707,7 @@ else
# Declare dependencies between hotspot-<variant>* targets
$(foreach v, $(JVM_VARIANTS), \
$(eval hotspot-$v: hotspot-$v-gensrc hotspot-$v-libs) \
$(eval hotspot-$v-gensrc: java.base-copy) \
$(eval hotspot-$v-libs: hotspot-$v-gensrc java.base-copy) \
)
@@ -646,10 +717,14 @@ else
# If not already set, set the JVM variant target so that the JVM will be built.
JVM_MAIN_LIB_TARGETS ?= hotspot-$(JVM_VARIANT_MAIN)-libs
JVM_MAIN_GENSRC_TARGETS ?= hotspot-$(JVM_VARIANT_MAIN)-gensrc
# Building one JVM variant is enough to start building the other libs
$(LIBS_TARGETS): $(JVM_MAIN_LIB_TARGETS)
# Static libs depend on hotspot gensrc
$(STATIC_LIBS_TARGETS): $(JVM_MAIN_GENSRC_TARGETS)
$(LAUNCHER_TARGETS): java.base-libs
ifeq ($(STATIC_BUILD), true)
@@ -698,16 +773,17 @@ else
# copied and processed.
java.desktop-gensrc-src: java.base-gensrc java.base-copy
# The annotation processing for jdk.internal.vm.ci and jdk.internal.vm.compiler
# needs classes from the current JDK.
jdk.internal.vm.ci-gensrc-src: $(addsuffix -java, \
$(call FindTransitiveDepsForModule, jdk.internal.vm.ci))
# The annotation processing for jdk.internal.vm.compiler
# and jdk.internal.vm.compiler.management needs classes from the current JDK.
jdk.internal.vm.compiler-gensrc-src: $(addsuffix -java, \
$(call FindTransitiveDepsForModule, jdk.internal.vm.compiler))
jdk.internal.vm.compiler.management-gensrc-src: $(addsuffix -java, \
$(call FindTransitiveDepsForModule, jdk.internal.vm.compiler.management))
# For jdk.internal.vm.compiler, the gensrc step is generating a module-info.java.extra
# For these modules, the gensrc step is generating a module-info.java.extra
# file to be processed by the gensrc-moduleinfo target.
jdk.internal.vm.compiler-gensrc-moduleinfo: jdk.internal.vm.compiler-gensrc-src
jdk.internal.vm.compiler.management-gensrc-moduleinfo: jdk.internal.vm.compiler.management-gensrc-src
jdk.jdeps-gendata: java rmic
@@ -742,6 +818,31 @@ else
$(foreach m, $(ALL_MODULES), $(eval $m-jmod: $($(m)_JMOD_DEPS)))
$(foreach m, $(INTERIM_IMAGE_MODULES), $(eval $m-interim-jmod: $($(m)_JMOD_DEPS)))
# Setup the minimal set of generated native source dependencies for hotspot
$(foreach v, $(JVM_VARIANTS), \
$(eval hotspot-$v-libs-compile-commands: hotspot-$v-gensrc) \
$(foreach m, $(filter java.desktop jdk.hotspot.agent, $(GENSRC_MODULES)), \
$(eval hotspot-$v-libs-compile-commands: $m-gensrc)) \
)
# For the full JDK compile commands, create all possible generated sources
$(foreach m, $(GENSRC_MODULES), $(eval $m-libs-compile-commands: $m-gensrc))
$(foreach m, $(filter $(JAVA_MODULES), $(LIBS_MODULES)), $(eval $m-libs-compile-commands: $m-java))
$(COMPILE_COMMANDS_TARGETS_HOTSPOT): clean-compile-commands
$(COMPILE_COMMANDS_TARGETS_JDK): clean-compile-commands
compile-commands-hotspot: $(COMPILE_COMMANDS_TARGETS_HOTSPOT)
compile-commands: $(COMPILE_COMMANDS_TARGETS_HOTSPOT) $(COMPILE_COMMANDS_TARGETS_JDK)
# The -static-libs targets depend on -java as well as java.base-copy.
$(foreach m, $(filter $(JAVA_MODULES), $(STATIC_LIBS_MODULES)), \
$(eval $m-static-libs: $m-java java.base-copy))
vscode-project: compile-commands
vscode-project-clangd: compile-commands
vscode-project-rtags: compile-commands
vscode-project-ccls: compile-commands
# Jmods cannot be created until we have the jmod tool ready to run. During
# a normal build we run it from the exploded image, but when cross compiling
# it's run from the buildjdk, which is either created at build time or user
@@ -804,6 +905,10 @@ else
legacy-jre-image: jmods release-file
symbols-image: $(LIBS_TARGETS) $(LAUNCHER_TARGETS)
static-libs-image: $(STATIC_LIBS_TARGETS)
graal-builder-image: jdk-image static-libs-image
mac-jdk-bundle: jdk-image
mac-legacy-jre-bundle: legacy-jre-image
@@ -856,6 +961,8 @@ else
test-make: clean-test-make
test-compile-commands: compile-commands
build-test-lib: exploded-image-optimize
build-test-failure-handler: interim-langtools
@@ -895,6 +1002,8 @@ else
docs-bundles: docs-image
static-libs-bundles: static-libs-image
generate-summary: jmods buildtools-modules
update-x11wrappers: java.base-copy buildtools-jdk
@@ -909,6 +1018,10 @@ JVM_TOOLS_TARGETS ?= buildtools-hotspot
buildtools: buildtools-langtools interim-langtools interim-rmic \
buildtools-jdk $(JVM_TOOLS_TARGETS)
# Declare dependencies from hotspot-<variant> targets
$(foreach v, $(JVM_VARIANTS), \
$(eval hotspot-$v: hotspot-$v-gensrc hotspot-$v-libs) \
)
hotspot: $(HOTSPOT_VARIANT_TARGETS)
# Create targets hotspot-libs and hotspot-gensrc.
@@ -929,6 +1042,8 @@ rmic: $(RMIC_TARGETS)
libs: $(LIBS_TARGETS)
static-libs: $(STATIC_LIBS_TARGETS)
launchers: $(LAUNCHER_TARGETS)
jmods: $(JMOD_TARGETS)
@@ -1035,10 +1150,10 @@ test-image: prepare-test-image \
all-images: product-images test-image docs-image
# all-bundles packages all our deliverables as tar.gz bundles.
all-bundles: product-bundles test-bundles docs-bundles
all-bundles: product-bundles test-bundles docs-bundles static-libs-bundles
ALL_TARGETS += buildtools hotspot hotspot-libs hotspot-gensrc gensrc gendata \
copy java rmic libs launchers jmods \
copy java rmic libs static-libs launchers jmods \
jdk.jdwp.agent-gensrc $(ALL_MODULES) demos \
exploded-image-base exploded-image \
create-buildjdk docs-jdk-api docs-javase-api docs-reference-api docs-jdk \
@@ -1085,12 +1200,15 @@ CLEAN_MODULE_PHASE_TARGETS := $(addprefix clean-, $(foreach m, $(ALL_MODULES), \
# Remove everything, except the output from configure.
clean: $(CLEAN_DIR_TARGETS)
($(CD) $(OUTPUTDIR) && $(RM) -r build*.log*)
($(CD) $(OUTPUTDIR) && $(RM) -r build*.log* compile_commands.json)
$(ECHO) Cleaned all build artifacts.
clean-docs:
$(call CleanDocs)
clean-compile-commands:
$(call CleanMakeSupportDir,compile-commands)
$(CLEAN_DIR_TARGETS):
$(call CleanDir,$(patsubst clean-%, %, $@))
@@ -1132,9 +1250,9 @@ dist-clean: clean
)
$(ECHO) Cleaned everything, you will have to re-run configure.
ALL_TARGETS += clean clean-docs dist-clean $(CLEAN_DIR_TARGETS) $(CLEAN_SUPPORT_DIR_TARGETS) \
$(CLEAN_TEST_TARGETS) $(CLEAN_PHASE_TARGETS) $(CLEAN_MODULE_TARGETS) \
$(CLEAN_MODULE_PHASE_TARGETS)
ALL_TARGETS += clean clean-docs clean-compile-commands dist-clean $(CLEAN_DIR_TARGETS) \
$(CLEAN_SUPPORT_DIR_TARGETS) $(CLEAN_TEST_TARGETS) $(CLEAN_PHASE_TARGETS) \
$(CLEAN_MODULE_TARGETS) $(CLEAN_MODULE_PHASE_TARGETS)
################################################################################
# Declare *-only targets for each normal target

View File

@@ -65,6 +65,13 @@ define CleanSupportDir
@$(PRINTF) " done\n"
endef
define CleanMakeSupportDir
@$(PRINTF) "Cleaning $(strip $1) make support artifacts ..."
@$(PRINTF) "\n" $(LOG_DEBUG)
$(RM) -r $(MAKESUPPORT_OUTPUTDIR)/$(strip $1)
@$(PRINTF) " done\n"
endef
define CleanTest
@$(PRINTF) "Cleaning test $(strip $1) ..."
@$(PRINTF) "\n" $(LOG_DEBUG)
@@ -137,7 +144,7 @@ define DeclareRecipeForModuleMakefile
$$(addprefix -I, $$(PHASE_MAKEDIRS) \
$$(addsuffix /$$($1_MAKE_SUBDIR), $$(PHASE_MAKEDIRS)) \
) \
MODULE=$2 MAKEFILE_PREFIX=$$($1_FILE_PREFIX))
MODULE=$2 MAKEFILE_PREFIX=$$($1_FILE_PREFIX) $$($1_EXTRA_ARGS))
else
+($(CD) $$(dir $$(firstword $$(wildcard $$(addsuffix \
/$$($1_MAKE_SUBDIR)/$$($1_FILE_PREFIX)-$2.gmk, $$(PHASE_MAKEDIRS))))) \
@@ -146,7 +153,7 @@ define DeclareRecipeForModuleMakefile
$$(addprefix -I, $$(PHASE_MAKEDIRS) \
$$(addsuffix /$$($1_MAKE_SUBDIR), $$(PHASE_MAKEDIRS)) \
) \
MODULE=$2 \
MODULE=$2 $$($1_EXTRA_ARGS) \
)
endif
@@ -186,12 +193,13 @@ endef
# CHECK_MODULES : List of modules to try
# MULTIPLE_MAKEFILES : Set to true to handle makefiles for the same module and
# phase in multiple repos
# EXTRA_ARGS : Add extra make args to each makefile call
# Exported variables:
# $1_MODULES : All modules that had rules generated
# $1_TARGETS : All targets generated
define DeclareRecipesForPhase
$(foreach i,2 3 4 5 6 7, $(if $(strip $($i)),$(strip $1)_$(strip $($i)))$(NEWLINE))
$(if $(8),$(error Internal makefile error: Too many arguments to \
$(foreach i,2 3 4 5 6 7 8, $(if $(strip $($i)),$(strip $1)_$(strip $($i)))$(NEWLINE))
$(if $(9),$(error Internal makefile error: Too many arguments to \
DeclareRecipesForPhase, please update MakeHelper.gmk))
$$(foreach m, $$($(strip $1)_CHECK_MODULES), \

View File

@@ -100,5 +100,9 @@ $(eval $(call SetupCopyFiles, COPY_CONF, \
$(TARGETS)), \
))
all: $(TARGETS) $(COPY_LIBS_TO_BIN) $(COPY_LIBS_TO_LIB) \
$(COPY_INCLUDE) $(COPY_CMDS) $(COPY_CONF) $(LINK_LIBS_TO_LIB)
ifeq ($(GENERATE_COMPILE_COMMANDS_ONLY), true)
all: $(filter $(MAKESUPPORT_OUTPUTDIR)/compile-commands/%, $(TARGETS))
else
all: $(TARGETS) $(COPY_LIBS_TO_BIN) $(COPY_LIBS_TO_LIB) \
$(COPY_INCLUDE) $(COPY_CMDS) $(COPY_CONF) $(LINK_LIBS_TO_LIB)
endif

View File

@@ -82,8 +82,8 @@ ifneq ($(TEST_VM_OPTS), )
endif
$(eval $(call ParseKeywordVariable, TEST_OPTS, \
KEYWORDS := JOBS TIMEOUT, \
STRING_KEYWORDS := VM_OPTIONS, \
SINGLE_KEYWORDS := JOBS TIMEOUT_FACTOR, \
STRING_KEYWORDS := VM_OPTIONS JAVA_OPTIONS AOT_MODULES, \
))
# Helper function to propagate TEST_OPTS values.
@@ -102,10 +102,14 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
ifndef _NT_SYMBOL_PATH
# Can't use PathList here as it adds quotes around the value.
_NT_SYMBOL_PATH := \
$(subst $(SPACE),;, $(foreach p, $(sort $(dir $(wildcard \
$(addprefix $(SYMBOLS_IMAGE_DIR)/bin/, *.pdb */*.pdb)))), $(call FixPath, $p)))
$(subst $(SPACE),;,$(strip \
$(foreach p, $(sort $(dir $(wildcard \
$(addprefix $(SYMBOLS_IMAGE_DIR)/bin/, *.pdb */*.pdb)))), \
$(call FixPath, $p) \
) \
))
export _NT_SYMBOL_PATH
$(info _NT_SYMBOL_PATH $(_NT_SYMBOL_PATH))
$(info _NT_SYMBOL_PATH=$(_NT_SYMBOL_PATH))
endif
endif
@@ -137,8 +141,118 @@ ifneq ($(wildcard $(JTREG_FAILURE_HANDLER)), )
-timeoutHandlerTimeout:0
endif
GTEST_LAUNCHER_DIRS := $(patsubst %/gtestLauncher, %, $(wildcard $(TEST_IMAGE_DIR)/hotspot/gtest/*/gtestLauncher))
GTEST_VARIANTS := $(strip $(patsubst $(TEST_IMAGE_DIR)/hotspot/gtest/%, %, $(GTEST_LAUNCHER_DIRS)))
GTEST_LAUNCHER_DIRS := $(patsubst %/gtestLauncher, %, \
$(wildcard $(TEST_IMAGE_DIR)/hotspot/gtest/*/gtestLauncher))
GTEST_VARIANTS := $(strip $(patsubst $(TEST_IMAGE_DIR)/hotspot/gtest/%, %, \
$(GTEST_LAUNCHER_DIRS)))
################################################################################
# Optionally create AOT libraries for specified modules before running tests.
# Note, this could not be done during JDK build time.
################################################################################
# Note, this could not be done during JDK build time.
# Parameter 1 is the name of the rule.
#
# Remaining parameters are named arguments.
# MODULE The module to generate a library for
# BIN Output directory in which to put the library
# VM_OPTIONS List of JVM arguments to use when creating library
# OPTIONS_VAR Name of variable to put AOT java options in
# PREREQS_VAR Name of variable to put all AOT prerequisite rule targets in
# for test rules to depend on
#
SetupAotModule = $(NamedParamsMacroTemplate)
define SetupAotModuleBody
$1_AOT_LIB := $$($1_BIN)/$$(call SHARED_LIBRARY,$$($1_MODULE))
$1_AOT_CCLIST := $$(wildcard $$(TOPDIR)/test/hotspot/jtreg/compiler/aot/scripts/$$($1_MODULE)-list.txt)
# Create jaotc flags.
# VM flags which don't affect AOT code generation are filtered out:
# -Xcomp, -XX:+-TieredCompilation
$1_JAOTC_OPTS := \
-J-Xmx4g --info \
$$(addprefix -J, $$(filter-out -Xcomp %TieredCompilation, $$($1_VM_OPTIONS))) \
$$(addprefix --compile-commands$(SPACE), $$($1_AOT_CCLIST)) \
--linker-path $$(LD_JAOTC) \
#
ifneq ($$(filter -ea, $$($1_VM_OPTIONS)), )
$1_JAOTC_OPTS += --compile-with-assertions
endif
$$($1_AOT_LIB): $$(JDK_IMAGE_DIR)/release \
$$(call DependOnVariable, $1_JAOTC_OPTS) \
$$(call DependOnVariable, JDK_IMAGE_DIR)
$$(call LogWarn, Generating $$(patsubst $$(OUTPUTDIR)/%, %, $$@))
$$(call MakeTargetDir)
$$(call ExecuteWithLog, $$@, ( \
$$(FIXPATH) $$(JDK_IMAGE_DIR)/bin/jaotc \
$$($1_JAOTC_OPTS) --output $$@ --module $$($1_MODULE) \
))
$$(call ExecuteWithLog, $$@.check, ( \
$$(FIXPATH) $$(JDK_IMAGE_DIR)/bin/java \
$$($1_VM_OPTIONS) -XX:+UnlockDiagnosticVMOptions \
-XX:+PrintAOT -XX:+UseAOTStrictLoading \
-XX:AOTLibrary=$$@ -version \
> $$@.verify-aot \
))
$1_AOT_OPTIONS += -XX:AOTLibrary=$$($1_AOT_LIB)
$1_AOT_TARGETS += $$($1_AOT_LIB)
endef
# Parameter 1 is the name of the rule.
#
# Remaining parameters are named arguments.
# MODULES The modules to generate a library for
# VM_OPTIONS List of JVM arguments to use when creating libraries
#
# After calling this, the following variables are defined
# $1_AOT_OPTIONS List of all java options needed to use the AOT libraries
# $1_AOT_TARGETS List of all targets that the test rule will need to depend on
#
SetupAot = $(NamedParamsMacroTemplate)
define SetupAotBody
$$(info Running with AOTd libraries for $$($1_MODULES))
# Put aot libraries in a separate directory so they are not deleted between
# test runs and may be reused between make invocations.
$$(foreach m, $$($1_MODULES), \
$$(eval $$(call SetupAotModule, $1_$$m, \
MODULE := $$m, \
BIN := $$(TEST_SUPPORT_DIR)/aot/$1, \
VM_OPTIONS := $$($1_VM_OPTIONS), \
)) \
$$(eval $1_AOT_OPTIONS += $$($1_$$m_AOT_OPTIONS)) \
$$(eval $1_AOT_TARGETS += $$($1_$$m_AOT_TARGETS)) \
)
endef
################################################################################
# Setup global test running parameters
################################################################################
# Each factor variable comes in 3 variants. The first one is reserved for users
# to use on command line. The other two are for predifined configurations in JDL
# and for machine specific configurations respectively.
TEST_JOBS_FACTOR ?= 1
TEST_JOBS_FACTOR_JDL ?= 1
TEST_JOBS_FACTOR_MACHINE ?= 1
ifeq ($(TEST_JOBS), 0)
# Concurrency based on min(cores / 2, 12) * TEST_JOBS_FACTOR
TEST_JOBS := $(shell $(AWK) \
'BEGIN { \
c = $(NUM_CORES) / 2; \
if (c > 12) c = 12; \
c = c * $(TEST_JOBS_FACTOR); \
c = c * $(TEST_JOBS_FACTOR_JDL); \
c = c * $(TEST_JOBS_FACTOR_MACHINE); \
if (c < 1) c = 1; \
printf "%.0f", c; \
}')
endif
################################################################################
# Parse control variables
@@ -147,17 +261,24 @@ GTEST_VARIANTS := $(strip $(patsubst $(TEST_IMAGE_DIR)/hotspot/gtest/%, %, $(GTE
ifneq ($(TEST_OPTS), )
# Inform the user
$(info Running tests using TEST_OPTS control variable '$(TEST_OPTS)')
$(eval $(call SetTestOpt,VM_OPTIONS,JTREG))
$(eval $(call SetTestOpt,VM_OPTIONS,GTEST))
$(eval $(call SetTestOpt,JOBS,JTREG))
$(eval $(call SetTestOpt,TIMEOUT,JTREG))
endif
$(eval $(call SetTestOpt,VM_OPTIONS,JTREG))
$(eval $(call SetTestOpt,JAVA_OPTIONS,JTREG))
$(eval $(call SetTestOpt,VM_OPTIONS,GTEST))
$(eval $(call SetTestOpt,JAVA_OPTIONS,GTEST))
$(eval $(call SetTestOpt,AOT_MODULES,JTREG))
$(eval $(call SetTestOpt,AOT_MODULES,GTEST))
$(eval $(call SetTestOpt,JOBS,JTREG))
$(eval $(call SetTestOpt,TIMEOUT_FACTOR,JTREG))
$(eval $(call ParseKeywordVariable, JTREG, \
KEYWORDS := JOBS TIMEOUT TEST_MODE ASSERT VERBOSE RETAIN MAX_MEM, \
STRING_KEYWORDS := OPTIONS JAVA_OPTIONS VM_OPTIONS, \
SINGLE_KEYWORDS := JOBS TIMEOUT_FACTOR TEST_MODE ASSERT VERBOSE RETAIN \
MAX_MEM, \
STRING_KEYWORDS := OPTIONS JAVA_OPTIONS VM_OPTIONS KEYWORDS \
EXTRA_PROBLEM_LISTS AOT_MODULES, \
))
ifneq ($(JTREG), )
@@ -166,8 +287,8 @@ ifneq ($(JTREG), )
endif
$(eval $(call ParseKeywordVariable, GTEST, \
KEYWORDS := REPEAT, \
STRING_KEYWORDS := OPTIONS VM_OPTIONS, \
SINGLE_KEYWORDS := REPEAT, \
STRING_KEYWORDS := OPTIONS VM_OPTIONS JAVA_OPTIONS AOT_MODULES, \
))
ifneq ($(GTEST), )
@@ -305,7 +426,7 @@ endef
# Helper function to determine if a test specification is a special test
#
# It is a special test if it is "special:" followed by a test name.
# It is a special test if it is "special:" followed by a test name,
define ParseSpecialTestSelection
$(if $(filter special:%, $1), \
$1 \
@@ -396,19 +517,27 @@ define SetupRunGtestTestBody
$1_GTEST_REPEAT :=--gtest_repeat=$$(GTEST_REPEAT)
endif
run-test-$1:
ifneq ($$(GTEST_AOT_MODULES), )
$$(eval $$(call SetupAot, $1, \
MODULES := $$(GTEST_AOT_MODULES), \
VM_OPTIONS := $$(GTEST_VM_OPTIONS) $$(GTEST_JAVA_OPTIONS), \
))
endif
run-test-$1: $$($1_AOT_TARGETS)
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/gtest, \
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/gtest, ( \
$$(FIXPATH) $$(TEST_IMAGE_DIR)/hotspot/gtest/$$($1_VARIANT)/gtestLauncher \
-jdk $(JDK_IMAGE_DIR) $$($1_GTEST_FILTER) \
--gtest_output=xml:$$($1_TEST_RESULTS_DIR)/gtest.xml \
$$($1_GTEST_REPEAT) $$(GTEST_OPTIONS) $$(GTEST_VM_OPTIONS) \
-jdk $(JDK_IMAGE_DIR) $$($1_GTEST_FILTER) \
--gtest_output=xml:$$($1_TEST_RESULTS_DIR)/gtest.xml \
$$($1_GTEST_REPEAT) $$(GTEST_OPTIONS) $$(GTEST_VM_OPTIONS) \
$$(GTEST_JAVA_OPTIONS) $$($1_AOT_OPTIONS) \
> >($(TEE) $$($1_TEST_RESULTS_DIR)/gtest.txt) \
&& $$(ECHO) $$$$? > $$($1_EXITCODE) \
|| $$(ECHO) $$$$? > $$($1_EXITCODE) \
)
))
$1_RESULT_FILE := $$($1_TEST_RESULTS_DIR)/gtest.txt
@@ -475,12 +604,11 @@ define SetupRunJtregTestBody
$1_TEST_NAME := $$(strip $$(patsubst jtreg:%, %, $$($1_TEST)))
$1_COMPONENT := \
$1_TEST_ROOT := \
$$(strip $$(foreach root, $$(JTREG_TESTROOTS), \
$$(if $$(filter $$(root)%, $$(JTREG_TOPDIR)/$$($1_TEST_NAME)), \
$$(lastword $$(subst /, $$(SPACE), $$(root))) \
) \
$$(if $$(filter $$(root)%, $$(JTREG_TOPDIR)/$$($1_TEST_NAME)), $$(root)) \
))
$1_COMPONENT := $$(lastword $$(subst /, $$(SPACE), $$($1_TEST_ROOT)))
# This will work only as long as just hotspot has the additional "jtreg" directory
ifeq ($$($1_COMPONENT), jtreg)
$1_COMPONENT := hotspot
@@ -503,6 +631,9 @@ define SetupRunJtregTestBody
$$(eval $$(call SetJtregValue,$1,JTREG_BASIC_OPTIONS))
$$(eval $$(call SetJtregValue,$1,JTREG_PROBLEM_LIST))
# Only the problem list for the current test root should be used.
$1_JTREG_PROBLEM_LIST := $$(filter $$($1_TEST_ROOT)%, $$($1_JTREG_PROBLEM_LIST))
ifneq ($(TEST_JOBS), 0)
$$(eval $$(call SetJtregValue,$1,JTREG_JOBS,$$(TEST_JOBS)))
else
@@ -515,9 +646,9 @@ define SetupRunJtregTestBody
# SPARC is in general slower per core so need to scale up timeouts a bit.
ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc)
JTREG_TIMEOUT ?= 8
JTREG_TIMEOUT_FACTOR ?= 8
else
JTREG_TIMEOUT ?= 4
JTREG_TIMEOUT_FACTOR ?= 4
endif
JTREG_VERBOSE ?= fail,error,summary
JTREG_RETAIN ?= fail,error
@@ -527,12 +658,16 @@ define SetupRunJtregTestBody
$1_JTREG_LAUNCHER_OPTIONS += -Xmx$$($1_JTREG_MAX_MEM)
endif
# Make sure the tmp dir is normalized as some tests will react badly otherwise
$1_TEST_TMP_DIR := $$(abspath $$($1_TEST_SUPPORT_DIR)/tmp)
$1_JTREG_BASIC_OPTIONS += -$$($1_JTREG_TEST_MODE) \
-verbose:$$(JTREG_VERBOSE) -retain:$$(JTREG_RETAIN) \
-concurrency:$$($1_JTREG_JOBS) -timeoutFactor:$$(JTREG_TIMEOUT) \
-vmoption:-XX:MaxRAMPercentage=$$($1_JTREG_MAX_RAM_PERCENTAGE)
-concurrency:$$($1_JTREG_JOBS) -timeoutFactor:$$(JTREG_TIMEOUT_FACTOR) \
-vmoption:-XX:MaxRAMPercentage=$$($1_JTREG_MAX_RAM_PERCENTAGE) \
-vmoption:-Djava.io.tmpdir="$$($1_TEST_TMP_DIR)"
$1_JTREG_BASIC_OPTIONS += -automatic -keywords:\!ignore -ignore:quiet
$1_JTREG_BASIC_OPTIONS += -automatic -ignore:quiet
# Make it possible to specify the JIB_DATA_DIR for tests using the
# JIB Artifact resolver
@@ -562,24 +697,56 @@ define SetupRunJtregTestBody
$1_JTREG_BASIC_OPTIONS += $$(addprefix -exclude:, $$($1_JTREG_PROBLEM_LIST))
endif
ifneq ($$(JIB_JAR), )
$1_JTREG_BASIC_OPTIONS += -cpa:$$(JIB_JAR)
ifneq ($$(JTREG_EXTRA_PROBLEM_LISTS), )
# Accept both absolute paths as well as relative to the current test root.
$1_JTREG_BASIC_OPTIONS += $$(addprefix -exclude:, $$(wildcard \
$$(JTREG_EXTRA_PROBLEM_LISTS) \
$$(addprefix $$($1_TEST_ROOT)/, $$(JTREG_EXTRA_PROBLEM_LISTS)) \
))
endif
$1_JTREG_BASIC_OPTIONS += -e:TEST_IMAGE_GRAAL_DIR=${TEST_IMAGE_DIR}/hotspot/jtreg/graal
ifneq ($$(JIB_HOME), )
$1_JTREG_BASIC_OPTIONS += -e:JIB_HOME=$$(JIB_HOME)
endif
$1_JTREG_BASIC_OPTIONS += -e:TEST_IMAGE_DIR=$(TEST_IMAGE_DIR)
$1_JTREG_BASIC_OPTIONS += -e:TEST_IMAGE_GRAAL_DIR=$(TEST_IMAGE_DIR)/hotspot/jtreg/graal
ifneq ($$(JTREG_FAILURE_HANDLER_OPTIONS), )
$1_JTREG_LAUNCHER_OPTIONS += -Djava.library.path="$(JTREG_FAILURE_HANDLER_DIR)"
endif
ifneq ($$(JTREG_KEYWORDS), )
# The keywords string may contain problematic characters and may be quoted
# already when it arrives here. Remove any existing quotes and replace them
# with one set of single quotes.
$1_JTREG_KEYWORDS := \
$$(strip $$(subst $$(SQUOTE),,$$(subst $$(DQUOTE),,$$(JTREG_KEYWORDS))))
ifneq ($$($1_JTREG_KEYWORDS), )
$1_JTREG_BASIC_OPTIONS += -k:'$$($1_JTREG_KEYWORDS)'
endif
endif
ifneq ($$(JTREG_AOT_MODULES), )
$$(eval $$(call SetupAot, $1, \
MODULES := $$(JTREG_AOT_MODULES), \
VM_OPTIONS := $$(JTREG_VM_OPTIONS) $$(JTREG_JAVA_OPTIONS), \
))
endif
ifneq ($$($1_AOT_OPTIONS), )
$1_JTREG_BASIC_OPTIONS += -vmoptions:"$$($1_AOT_OPTIONS)"
endif
clean-workdir-$1:
$$(RM) -r $$($1_TEST_SUPPORT_DIR)
run-test-$1: clean-workdir-$1
run-test-$1: clean-workdir-$1 $$($1_AOT_TARGETS)
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/jtreg, \
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR) \
$$($1_TEST_TMP_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/jtreg, ( \
$$(JAVA) $$($1_JTREG_LAUNCHER_OPTIONS) \
-Dprogram=jtreg -jar $$(JT_HOME)/lib/jtreg.jar \
$$($1_JTREG_BASIC_OPTIONS) \
@@ -592,7 +759,7 @@ define SetupRunJtregTestBody
$$($1_TEST_NAME) \
&& $$(ECHO) $$$$? > $$($1_EXITCODE) \
|| $$(ECHO) $$$$? > $$($1_EXITCODE) \
)
))
$1_RESULT_FILE := $$($1_TEST_RESULTS_DIR)/text/stats.txt
@@ -662,16 +829,16 @@ define SetupRunSpecialTestBody
$$(error Invalid special test specification: $$($1_TEST_NAME))
endif
run-test-$1:
run-test-$1: $(TEST_PREREQS)
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/test-execution, \
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/test-execution, ( \
$$($1_TEST_COMMAND_LINE) \
> >($(TEE) $$($1_TEST_RESULTS_DIR)/test-output.txt) \
&& $$(ECHO) $$$$? > $$($1_EXITCODE) \
|| $$(ECHO) $$$$? > $$($1_EXITCODE) \
)
))
$1_RESULT_FILE := $$($1_TEST_RESULTS_DIR)/gtest.txt

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2017, 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
@@ -49,10 +49,11 @@ TOPDIR := $(strip $(patsubst %/make/, %, $(dir $(makefile_path))))
# given.
# Note: No spaces are allowed around the arguments.
#
# $1: The name of the argument
# $1: The name of the variable
# $2: The default value, if any, or OPTIONAL (do not provide a default but
# do not exit if it is missing)
# $3: If NO_CHECK, disable checking for target file/directory existence
# If MKDIR, create the default directory
define SetupVariable
ifeq ($$($1), )
ifeq ($2, )
@@ -75,10 +76,17 @@ define SetupVariable
endif
# If $1 has a value (is not optional), and $3 is not set (to NO_CHECK),
# and if wildcard is empty, then complain that the file is missing.
ifeq ($$(strip $$(if $$($1), , OPTIONAL) $$(wildcard $$($1)) $3), )
$$(info Error: Prebuilt variable $1 points to missing file/directory:)
$$(info '$$($1)')
$$(error Cannot continue.)
ifeq ($3, MKDIR)
ifneq ($$(findstring $$(LOG), info debug trace), )
$$(info Creating directory for $1)
endif
$$(shell mkdir -p $$($1))
else ifneq ($3, NO_CHECK)
ifeq ($$(strip $$(if $$($1), , OPTIONAL) $$(wildcard $$($1))), )
$$(info Error: Prebuilt variable $1 points to missing file/directory:)
$$(info '$$($1)')
$$(error Cannot continue.)
endif
endif
endef
@@ -87,12 +95,12 @@ endef
# $1: The output file name
# $2..$N: The lines to output to the file
define CreateNewSpec
$(if $(strip $(27)), \
$(if $(strip $(31)), \
$(error Internal makefile error: \
Too many arguments to macro, please update CreateNewSpec in RunTestsPrebuilt.gmk) \
) \
$(shell $(RM) $1) \
$(foreach i, $(call sequence, 2, 26), \
$(foreach i, $(call sequence, 2, 30), \
$(if $(strip $($i)), \
$(call AppendFile, $(strip $($i)), $1) \
) \
@@ -106,14 +114,14 @@ endef
# Verify that user has given correct additional input.
# These variables are absolutely necessary
$(eval $(call SetupVariable,OUTPUTDIR))
$(eval $(call SetupVariable,OUTPUTDIR,$(TOPDIR)/build/run-test-prebuilt,MKDIR))
$(eval $(call SetupVariable,BOOT_JDK))
$(eval $(call SetupVariable,JT_HOME))
# These can have default values based on the ones above
$(eval $(call SetupVariable,JDK_IMAGE_DIR,$(OUTPUTDIR)/images/jdk))
$(eval $(call SetupVariable,TEST_IMAGE_DIR,$(OUTPUTDIR)/images/test))
$(eval $(call SetupVariable,SYMBOLS_IMAGE_DIR,$(OUTPUTDIR)/images/symbols))
$(eval $(call SetupVariable,SYMBOLS_IMAGE_DIR,$(OUTPUTDIR)/images/symbols,NO_CHECK))
# Provide default values for tools that we need
$(eval $(call SetupVariable,MAKE,make,NO_CHECK))
@@ -202,8 +210,8 @@ endif
ifeq ($(OPENJDK_TARGET_OS), windows)
ifeq ($(wildcard $(TEST_IMAGE_DIR)/bin/fixpath.exe), )
$$(info Error: fixpath is missing from test image '$(TEST_IMAGE_DIR)')
$$(error Cannot continue.)
$(info Error: fixpath is missing from test image '$(TEST_IMAGE_DIR)')
$(error Cannot continue.)
endif
FIXPATH := $(TEST_IMAGE_DIR)/bin/fixpath.exe -c
PATH_SEP:=;
@@ -214,27 +222,57 @@ endif
# Check number of cores and memory in MB
ifeq ($(OPENJDK_TARGET_OS), linux)
NUM_CORES := $(shell $(CAT) /proc/cpuinfo | $(GREP) -c processor)
MEMORY_SIZE := $(shell \
NUM_CORES := $(shell $(CAT) /proc/cpuinfo | $(GREP) -c processor)
MEMORY_SIZE := $(shell \
$(EXPR) `$(CAT) /proc/meminfo | $(GREP) MemTotal | $(AWK) '{print $$2}'` / 1024 \
)
)
else ifeq ($(OPENJDK_TARGET_OS), macosx)
NUM_CORES := $(shell /usr/sbin/sysctl -n hw.ncpu)
MEMORY_SIZE := $(shell $(EXPR) `/usr/sbin/sysctl -n hw.memsize` / 1024 / 1024)
NUM_CORES := $(shell /usr/sbin/sysctl -n hw.ncpu)
MEMORY_SIZE := $(shell $(EXPR) `/usr/sbin/sysctl -n hw.memsize` / 1024 / 1024)
else ifeq ($(OPENJDK_TARGET_OS), solaris)
NUM_CORES := $(shell LC_MESSAGES=C /usr/sbin/psrinfo -v | $(GREP) -c on-line)
MEMORY_SIZE := $(shell \
NUM_CORES := $(shell LC_MESSAGES=C /usr/sbin/psrinfo -v | $(GREP) -c on-line)
MEMORY_SIZE := $(shell \
/usr/sbin/prtconf 2> /dev/null | $(GREP) "^Memory [Ss]ize" | $(AWK) '{print $$3}' \
)
)
else ifeq ($(OPENJDK_TARGET_OS), windows)
NUM_CORES := $(NUMBER_OF_PROCESSORS)
MEMORY_SIZE := $(shell \
$(EXPR) `wmic computersystem get totalphysicalmemory -value | $(GREP) = \
NUM_CORES := $(NUMBER_OF_PROCESSORS)
MEMORY_SIZE := $(shell \
$(EXPR) `wmic computersystem get totalphysicalmemory -value \
| $(GREP) = | $(SED) 's/\\r//g' \
| $(CUT) -d "=" -f 2-` / 1024 / 1024 \
)
)
endif
ifeq ($(NUM_CORES), )
$(warn Could not find number of CPUs, assuming 1)
NUM_CORES := 1
endif
ifeq ($(MEMORY_SIZE), )
$(warn Could not find memory size, assuming 1024 MB)
MEMORY_SIZE := 1024
endif
# Setup LD for AOT support
ifneq ($(DEVKIT_HOME), )
ifeq ($(OPENJDK_TARGET_OS), windows)
LD_JAOTC := $(DEVKIT_HOME)/VC/bin/x64/link.exe
LIBRARY_PREFIX :=
SHARED_LIBRARY_SUFFIX := .dll
else ifeq ($(OPENJDK_TARGET_OS), linux)
LD_JAOTC := $(DEVKIT_HOME)/bin/ld
LIBRARY_PREFIX := lib
SHARED_LIBRARY_SUFFIX := .so
else ifeq ($(OPENJDK_TARGET_OS), macosx)
LD_JAOTC := $(DEVKIT_HOME)/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
LIBRARY_PREFIX := lib
SHARED_LIBRARY_SUFFIX := .dylib
else ifeq ($(OPENJDK_TARGET_OS), solaris)
# Prefer system linker for AOT on Solaris.
LD_JAOTC := ld
LIBRARY_PREFIX := lib
SHARED_LIBRARY_SUFFIX := .so
endif
else
NUM_CORES := 1
MEMORY_SIZE := 1024
LD := ld
endif
################################################################################
@@ -273,6 +311,9 @@ $(call CreateNewSpec, $(NEW_SPEC), \
OPENJDK_TARGET_CPU_ENDIAN := $(OPENJDK_TARGET_CPU_ENDIAN), \
NUM_CORES := $(NUM_CORES), \
MEMORY_SIZE := $(MEMORY_SIZE), \
LD_JAOTC := $(LD_JAOTC), \
LIBRARY_PREFIX := $(LIBRARY_PREFIX), \
SHARED_LIBRARY_SUFFIX := $(SHARED_LIBRARY_SUFFIX), \
include $(TOPDIR)/make/RunTestsPrebuiltSpec.gmk, \
$(CUSTOM_NEW_SPEC_LINE), \
)
@@ -289,9 +330,6 @@ run-test-prebuilt:
@$(RM) -f $(MAKESUPPORT_OUTPUTDIR)/exit-with-error
@cd $(TOPDIR) && $(MAKE) $(MAKE_ARGS) -f make/RunTests.gmk run-test \
TEST="$(TEST)"
@if test -f $(MAKESUPPORT_OUTPUTDIR)/exit-with-error ; then \
exit 1 ; \
fi
all: run-test-prebuilt

View File

@@ -124,7 +124,7 @@ JLINK := $(FIXPATH) $(JLINK_CMD)
JMOD := $(FIXPATH) $(JMOD_CMD)
JARSIGNER := $(FIXPATH) $(JARSIGNER_CMD)
BUILD_JAVA := $(JAVA)
BUILD_JAVA := $(JDK_IMAGE_DIR)/bin/JAVA
################################################################################
# Some common tools. Assume most common name and no path.
AWK := awk
@@ -172,3 +172,21 @@ UNZIP := unzip
EXPR := expr
FILE := file
HG := hg
# On Solaris gnu versions of some tools are required.
ifeq ($(OPENJDK_BUILD_OS), solaris)
AWK := gawk
GREP := ggrep
EGREP := ggrep -E
FGREP := grep -F
SED := gsed
TAR := gtar
endif
ifeq ($(OPENJDK_BUILD_OS), windows)
CYGPATH := cygpath
endif
################################################################################
# Simple macros from spec.gmk.in
SHARED_LIBRARY=$(LIBRARY_PREFIX)$1$(SHARED_LIBRARY_SUFFIX)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 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
@@ -23,30 +23,34 @@
# questions.
#
# This makefile creates an image of the optional static versions of certain JDK
# libraries.
default: all
include $(SPEC)
include MakeBase.gmk
include Modules.gmk
##########################################################################################
ALL_MODULES = $(call FindAllModules)
### CLDRConverter needs the JRE time zone names from the java.base source.
################################################################################
define cldrconverter_copytznames
$(MKDIR) -p '$(@D)'
$(RM) '$@'
$(SED) -e "s/package sun.util.resources/package build.tools.cldrconverter/" \
-e "s/extends TimeZoneNamesBundle//" \
-e "s/protected final/static final/" \
< $(<) > $@
endef
TARGETS :=
$(eval $(call SetupCopyFiles,COPY_INTERIM_CLDRCONVERTER, \
SRC := $(TOPDIR)/src/java.base/share/classes/sun/util/resources, \
DEST := $(BUILDTOOLS_OUTPUTDIR)/interim_cldrconverter_classes/build/tools/cldrconverter, \
FILES := TimeZoneNames.java, \
MACRO := cldrconverter_copytznames))
##########################################################################################
$(foreach m, $(ALL_MODULES), \
$(eval $(call SetupCopyFiles, COPY_STATIC_LIBS_$m, \
FLATTEN := true, \
SRC := $(SUPPORT_OUTPUTDIR)/native/$m, \
DEST := $(STATIC_LIBS_IMAGE_DIR)/lib, \
FILES := $(filter %$(STATIC_LIBRARY_SUFFIX), \
$(call FindFiles, $(SUPPORT_OUTPUTDIR)/native/$m/*/static)), \
)) \
$(eval TARGETS += $$(COPY_STATIC_LIBS_$m)) \
)
all: $(COPY_INTERIM_CLDRCONVERTER)
################################################################################
all: $(TARGETS)
.PHONY: all

View File

@@ -37,10 +37,22 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
$(call install-file)
endif
prepare-test-image: $(FIXPATH_COPY)
BUILD_INFO_PROPERTIES := $(TEST_IMAGE_DIR)/build-info.properties
FIXPATH_ECHO := $(FIXPATH) $(call FixPath, $(ECHO))
$(BUILD_INFO_PROPERTIES):
$(call MakeTargetDir)
$(ECHO) "# Build info properties for JDK tests" > $@
$(FIXPATH_ECHO) "build.workspace.root=$(WORKSPACE_ROOT)" >> $@
$(FIXPATH_ECHO) "build.output.root=$(OUTPUTDIR)" >> $@
prepare-test-image: $(FIXPATH_COPY) $(BUILD_INFO_PROPERTIES)
$(call MakeDir, $(TEST_IMAGE_DIR))
$(ECHO) > $(TEST_IMAGE_DIR)/Readme.txt 'JDK test image'
################################################################################
all: prepare-test-image
.PHONY: default all prepare-test-image

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -74,11 +74,15 @@ TOOL_TZDB = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.tzdb.TzdbZoneRulesCompiler
TOOL_BLACKLISTED_CERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
--add-exports java.base/sun.security.util=ALL-UNNAMED \
build.tools.blacklistedcertsconverter.BlacklistedCertsConverter
TOOL_MAKEJAVASECURITY = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.makejavasecurity.MakeJavaSecurity
TOOL_GENERATECACERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.generatecacerts.GenerateCacerts
# TODO: There are references to the jdwpgen.jar in jdk/make/netbeans/jdwpgen/build.xml
# and nbproject/project.properties in the same dir. Needs to be looked at.

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2017, 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
@@ -45,21 +45,13 @@ GLOBAL_SPECS_DEFAULT_CSS_FILE := $(TOPDIR)/make/data/docs-resources/resources/jd
DOCS_DIR := $(TOPDIR)/doc
$(eval $(call SetupProcessMarkdown, building, \
FILES := $(DOCS_DIR)/building.md, \
$(eval $(call SetupProcessMarkdown, md_docs, \
FILES := $(call FindFiles, $(DOCS_DIR), *.md), \
DEST := $(DOCS_DIR), \
CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
OPTIONS := --toc, \
))
TARGETS += $(building)
$(eval $(call SetupProcessMarkdown, testing, \
FILES := $(DOCS_DIR)/testing.md, \
DEST := $(DOCS_DIR), \
CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
OPTIONS := --toc, \
))
TARGETS += $(testing)
TARGETS += $(md_docs)
################################################################################

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 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
@@ -87,6 +87,7 @@ ifeq ($(SRC_GENERATED), true)
EXCLUDE_FILES := $(SRC_ZIP_EXCLUDE_FILES), \
SUFFIXES := .java, \
ZIP := $(SUPPORT_OUTPUTDIR)/src.zip, \
FOLLOW_SYMLINKS := true, \
))
do-zip: $(BUILD_SRC_ZIP)

View File

@@ -645,6 +645,14 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
BASIC_FIXUP_PATH(CURDIR)
BASIC_FIXUP_PATH(TOPDIR)
if test "x$CUSTOM_ROOT" != x; then
BASIC_FIXUP_PATH(CUSTOM_ROOT)
WORKSPACE_ROOT="${CUSTOM_ROOT}"
else
WORKSPACE_ROOT="${TOPDIR}"
fi
AC_SUBST(WORKSPACE_ROOT)
# Locate the directory of this script.
AUTOCONF_DIR=$TOPDIR/make/autoconf
@@ -867,11 +875,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
AC_MSG_RESULT([in build directory with custom name])
fi
if test "x$CUSTOM_ROOT" != x; then
OUTPUTDIR="${CUSTOM_ROOT}/build/${CONF_NAME}"
else
OUTPUTDIR="${TOPDIR}/build/${CONF_NAME}"
fi
OUTPUTDIR="${WORKSPACE_ROOT}/build/${CONF_NAME}"
$MKDIR -p "$OUTPUTDIR"
if test ! -d "$OUTPUTDIR"; then
AC_MSG_ERROR([Could not create build directory $OUTPUTDIR])
@@ -1212,17 +1216,41 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
BASIC_REQUIRE_PROGS(MIG, mig)
BASIC_REQUIRE_PROGS(XATTR, xattr)
BASIC_PATH_PROGS(CODESIGN, codesign)
if test "x$CODESIGN" != "x"; then
# Verify that the openjdk_codesign certificate is present
AC_MSG_CHECKING([if openjdk_codesign certificate is present])
# Check for user provided code signing identity.
# If no identity was provided, fall back to "openjdk_codesign".
AC_ARG_WITH([macosx-codesign-identity], [AS_HELP_STRING([--with-macosx-codesign-identity],
[specify the code signing identity])],
[MACOSX_CODESIGN_IDENTITY=$with_macosx_codesign_identity],
[MACOSX_CODESIGN_IDENTITY=openjdk_codesign]
)
AC_SUBST(MACOSX_CODESIGN_IDENTITY)
# Verify that the codesign certificate is present
AC_MSG_CHECKING([if codesign certificate is present])
$RM codesign-testfile
$TOUCH codesign-testfile
$CODESIGN -s openjdk_codesign codesign-testfile 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD || CODESIGN=
$CODESIGN -s "$MACOSX_CODESIGN_IDENTITY" codesign-testfile 2>&AS_MESSAGE_LOG_FD \
>&AS_MESSAGE_LOG_FD || CODESIGN=
$RM codesign-testfile
if test "x$CODESIGN" = x; then
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
# Verify that the codesign has --option runtime
AC_MSG_CHECKING([if codesign has --option runtime])
$RM codesign-testfile
$TOUCH codesign-testfile
$CODESIGN --option runtime -s "$MACOSX_CODESIGN_IDENTITY" codesign-testfile \
2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD || CODESIGN=
$RM codesign-testfile
if test "x$CODESIGN" = x; then
AC_MSG_ERROR([codesign does not have --option runtime. macOS 10.13.6 and above is required.])
else
AC_MSG_RESULT([yes])
fi
fi
fi
BASIC_REQUIRE_PROGS(SETFILE, SetFile)

View File

@@ -75,6 +75,8 @@ JVM_LDFLAGS := @OPENJDK_BUILD_JVM_LDFLAGS@
JVM_ASFLAGS := @OPENJDK_BUILD_JVM_ASFLAGS@
JVM_LIBS := @OPENJDK_BUILD_JVM_LIBS@
FDLIBM_CFLAGS := @OPENJDK_BUILD_FDLIBM_CFLAGS@
# The compiler for the build platform is likely not warning compatible with the official
# compiler.
WARNINGS_AS_ERRORS := false

View File

@@ -1,5 +1,5 @@
SRC#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
#
# 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
@@ -98,6 +98,9 @@ HOTSPOT_SETUP_JVM_VARIANTS
# With basic setup done, call the custom early hook.
CUSTOM_EARLY_HOOK
# This only needs debug level to be setup
JDKOPT_ALLOW_ABSOLUTE_PATHS_IN_OUTPUT
# Check if we have devkits, extra paths or sysroot set.
BASIC_SETUP_DEVKIT

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -169,19 +169,7 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
gcc)
DISABLE_WARNING_PREFIX="-Wno-"
CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
# Repeate the check for the BUILD_CC and BUILD_CXX. Need to also reset
# CFLAGS since any target specific flags will likely not work with the
# build compiler
CC_OLD="$CC"
CXX_OLD="$CXX"
CC="$BUILD_CC"
CXX="$BUILD_CXX"
CFLAGS_OLD="$CFLAGS"
CFLAGS=""
BUILD_CC_DISABLE_WARNING_PREFIX="-Wno-"
CC="$CC_OLD"
CXX="$CXX_OLD"
CFLAGS="$CFLAGS_OLD"
;;
clang)
DISABLE_WARNING_PREFIX="-Wno-"
@@ -221,6 +209,20 @@ AC_DEFUN([FLAGS_SETUP_QUALITY_CHECKS],
;;
esac
fi
# Extra flags needed when building optional static versions of certain
# JDK libraries.
STATIC_LIBS_CFLAGS="-DSTATIC_BUILD=1"
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
STATIC_LIBS_CFLAGS="$STATIC_LIBS_CFLAGS -ffunction-sections -fdata-sections"
fi
if test "x$TOOLCHAIN_TYPE" = xgcc; then
# Disable relax-relocation to enable compatibility with older linkers
RELAX_RELOCATIONS_FLAG="-Xassembler -mrelax-relocations=no"
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${RELAX_RELOCATIONS_FLAG}],
IF_TRUE: [STATIC_LIBS_CFLAGS="$STATIC_LIBS_CFLAGS ${RELAX_RELOCATIONS_FLAG}"])
fi
AC_SUBST(STATIC_LIBS_CFLAGS)
])
AC_DEFUN([FLAGS_SETUP_OPTIMIZATION],
@@ -362,6 +364,17 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS],
FLAGS_SETUP_CFLAGS_CPU_DEP([TARGET])
# Repeat the check for the BUILD_CC and BUILD_CXX. Need to also reset CFLAGS
# since any target specific flags will likely not work with the build compiler.
CC_OLD="$CC"
CXX_OLD="$CXX"
CFLAGS_OLD="$CFLAGS"
CXXFLAGS_OLD="$CXXFLAGS"
CC="$BUILD_CC"
CXX="$BUILD_CXX"
CFLAGS=""
CXXFLAGS=""
FLAGS_OS=$OPENJDK_BUILD_OS
FLAGS_OS_TYPE=$OPENJDK_BUILD_OS_TYPE
FLAGS_CPU=$OPENJDK_BUILD_CPU
@@ -371,21 +384,12 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS],
FLAGS_CPU_LEGACY=$OPENJDK_BUILD_CPU_LEGACY
FLAGS_CPU_LEGACY_LIB=$OPENJDK_BUILD_CPU_LEGACY_LIB
FLAGS_SETUP_CFLAGS_CPU_DEP([BUILD], [OPENJDK_BUILD_])
FLAGS_SETUP_CFLAGS_CPU_DEP([BUILD], [OPENJDK_BUILD_], [BUILD_])
COMPILER_FP_CONTRACT_OFF_FLAG="-ffp-contract=off"
# Check that the compiler supports -ffp-contract=off flag
# Set FDLIBM_CFLAGS to -ffp-contract=off if it does. Empty
# otherwise.
# These flags are required for GCC-based builds of
# fdlibm with optimization without losing precision.
# Notably, -ffp-contract=off needs to be added for GCC >= 4.6.
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${COMPILER_FP_CONTRACT_OFF_FLAG}],
IF_TRUE: [FDLIBM_CFLAGS=${COMPILER_FP_CONTRACT_OFF_FLAG}],
IF_FALSE: [FDLIBM_CFLAGS=""])
fi
AC_SUBST(FDLIBM_CFLAGS)
CC="$CC_OLD"
CXX="$CXX_OLD"
CFLAGS="$CFLAGS_OLD"
CXXFLAGS="$CXXFLAGS_OLD"
# Tests are only ever compiled for TARGET
CFLAGS_TESTLIB="$CFLAGS_JDKLIB"
@@ -496,15 +500,14 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
if test "x$TOOLCHAIN_TYPE" = xgcc; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -fcheck-new -fstack-protector"
TOOLCHAIN_CFLAGS_JDK="-pipe -fstack-protector"
TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing" # technically NOT for CXX (but since this gives *worse* performance, use no-strict-aliasing everywhere!)
CXXSTD_CXXFLAG="-std=gnu++98"
FLAGS_CXX_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$CXXSTD_CXXFLAG -Werror],
IF_FALSE: [CXXSTD_CXXFLAG=""])
TOOLCHAIN_CFLAGS_JDK_CXXONLY="$CXXSTD_CXXFLAG"
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM $CXXSTD_CXXFLAG"
ADLC_CXXFLAG="$CXXSTD_CXXFLAG"
# reduce lib size on s390x in link step, this needs also special compile flags
if test "x$OPENJDK_TARGET_CPU" = xs390x; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -ffunction-sections -fdata-sections"
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -ffunction-sections -fdata-sections"
fi
# technically NOT for CXX (but since this gives *worse* performance, use
# no-strict-aliasing everywhere!)
TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
# Restrict the debug information created by Clang to avoid
@@ -595,6 +598,7 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
# Where does this really belong??
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
PICFLAG="-fPIC"
PIEFLAG="-fPIE"
elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
PICFLAG="-KPIC"
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
@@ -646,15 +650,13 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
OS_CFLAGS_JVM="$OS_CFLAGS_JVM -DNEEDS_LIBRT"
fi
fi
# EXPORT
AC_SUBST(ADLC_CXXFLAG)
])
################################################################################
# $1 - Either BUILD or TARGET to pick the correct OS/CPU variables to check
# conditionals against.
# $2 - Optional prefix for each variable defined.
# $3 - Optional prefix for compiler variables (either BUILD_ or nothing).
AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
[
#### CPU DEFINES, these should (in theory) be independent on toolchain
@@ -748,6 +750,13 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_CFLAGS_CPU_JDK="${$1_CFLAGS_CPU_JDK} -fno-omit-frame-pointer"
fi
$1_CXXSTD_CXXFLAG="-std=gnu++98"
FLAGS_CXX_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${$1_CXXSTD_CXXFLAG} -Werror],
PREFIX: $3, IF_FALSE: [$1_CXXSTD_CXXFLAG=""])
$1_TOOLCHAIN_CFLAGS_JDK_CXXONLY="${$1_CXXSTD_CXXFLAG}"
$1_TOOLCHAIN_CFLAGS_JVM="${$1_TOOLCHAIN_CFLAGS_JVM} ${$1_CXXSTD_CXXFLAG}"
$2ADLC_CXXFLAG="${$1_CXXSTD_CXXFLAG}"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
if test "x$FLAGS_OS" = xlinux; then
# ppc test not really needed for clang
@@ -784,20 +793,44 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
fi
if test "x$TOOLCHAIN_TYPE" = xgcc; then
TOOLCHAIN_CHECK_COMPILER_VERSION(VERSION: 6, PREFIX: $2, IF_AT_LEAST: FLAGS_SETUP_GCC6_COMPILER_FLAGS($1))
FLAGS_SETUP_GCC6_COMPILER_FLAGS($1, $3)
$1_TOOLCHAIN_CFLAGS="${$1_GCC6_CFLAGS}"
$1_WARNING_CFLAGS_JVM="-Wno-format-zero-length -Wtype-limits -Wuninitialized"
fi
# Prevent the __FILE__ macro from generating absolute paths into the built
# binaries. Depending on toolchain, different mitigations are possible.
# * GCC and Clang of new enough versions have -fmacro-prefix-map.
# * For most other toolchains, supplying all source files and -I flags as
# relative paths fixes the issue.
FILE_MACRO_CFLAGS=
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
# Check if compiler supports -fmacro-prefix-map. If so, use that to make
# the __FILE__ macro resolve to paths relative to the workspace root.
workspace_root_trailing_slash="${WORKSPACE_ROOT%/}/"
FILE_MACRO_CFLAGS="-fmacro-prefix-map=${workspace_root_trailing_slash}="
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${FILE_MACRO_CFLAGS}],
PREFIX: $3,
IF_FALSE: [
FILE_MACRO_CFLAGS=
]
)
fi
fi
AC_SUBST(FILE_MACRO_CFLAGS)
# EXPORT to API
CFLAGS_JVM_COMMON="$ALWAYS_CFLAGS_JVM $ALWAYS_DEFINES_JVM $TOOLCHAIN_CFLAGS_JVM \
CFLAGS_JVM_COMMON="$ALWAYS_CFLAGS_JVM $ALWAYS_DEFINES_JVM \
$TOOLCHAIN_CFLAGS_JVM ${$1_TOOLCHAIN_CFLAGS_JVM} \
$OS_CFLAGS $OS_CFLAGS_JVM $CFLAGS_OS_DEF_JVM $DEBUG_CFLAGS_JVM \
$WARNING_CFLAGS $WARNING_CFLAGS_JVM $JVM_PICFLAG"
$WARNING_CFLAGS $WARNING_CFLAGS_JVM $JVM_PICFLAG $FILE_MACRO_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"
$WARNING_CFLAGS $WARNING_CFLAGS_JDK $DEBUG_SYMBOLS_CFLAGS_JDK \
$FILE_MACRO_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
@@ -805,7 +838,9 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
CFLAGS_JDK_COMMON_CONLY="$TOOLCHAIN_CFLAGS_JDK_CONLY \
$WARNING_CFLAGS_JDK_CONLY ${$2EXTRA_CFLAGS}"
CFLAGS_JDK_COMMON_CXXONLY="$ALWAYS_DEFINES_JDK_CXXONLY $TOOLCHAIN_CFLAGS_JDK_CXXONLY \
CFLAGS_JDK_COMMON_CXXONLY="$ALWAYS_DEFINES_JDK_CXXONLY \
$TOOLCHAIN_CFLAGS_JDK_CXXONLY \
${$1_TOOLCHAIN_CFLAGS_JDK_CXXONLY} \
$WARNING_CFLAGS_JDK_CXXONLY ${$2EXTRA_CXXFLAGS}"
$1_CFLAGS_JVM="${$1_DEFINES_CPU_JVM} ${$1_CFLAGS_CPU} ${$1_CFLAGS_CPU_JVM} ${$1_TOOLCHAIN_CFLAGS} ${$1_WARNING_CFLAGS_JVM}"
@@ -813,21 +848,40 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$2JVM_CFLAGS="$CFLAGS_JVM_COMMON ${$1_CFLAGS_JVM} ${$2EXTRA_CXXFLAGS}"
$2CFLAGS_JDKEXE="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CONLY ${$1_CFLAGS_JDK}"
$2CXXFLAGS_JDKEXE="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CXXONLY ${$1_CFLAGS_JDK}"
$2CFLAGS_JDKLIB="${$2CFLAGS_JDKEXE} $JDK_PICFLAG ${$1_CFLAGS_CPU_JDK_LIBONLY}"
$2CXXFLAGS_JDKLIB="${$2CXXFLAGS_JDKEXE} $JDK_PICFLAG ${$1_CFLAGS_CPU_JDK_LIBONLY}"
$2CFLAGS_JDKEXE="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CONLY ${$1_CFLAGS_JDK} $PIEFLAG"
$2CXXFLAGS_JDKEXE="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CXXONLY ${$1_CFLAGS_JDK} $PIEFLAG"
$2CFLAGS_JDKLIB="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CONLY ${$1_CFLAGS_JDK} \
$JDK_PICFLAG ${$1_CFLAGS_CPU_JDK_LIBONLY}"
$2CXXFLAGS_JDKLIB="$CFLAGS_JDK_COMMON $CFLAGS_JDK_COMMON_CXXONLY ${$1_CFLAGS_JDK} \
$JDK_PICFLAG ${$1_CFLAGS_CPU_JDK_LIBONLY}"
AC_SUBST($2JVM_CFLAGS)
AC_SUBST($2CFLAGS_JDKLIB)
AC_SUBST($2CFLAGS_JDKEXE)
AC_SUBST($2CXXFLAGS_JDKLIB)
AC_SUBST($2CXXFLAGS_JDKEXE)
AC_SUBST($2ADLC_CXXFLAG)
COMPILER_FP_CONTRACT_OFF_FLAG="-ffp-contract=off"
# Check that the compiler supports -ffp-contract=off flag
# Set FDLIBM_CFLAGS to -ffp-contract=off if it does. Empty
# otherwise.
# These flags are required for GCC-based builds of
# fdlibm with optimization without losing precision.
# Notably, -ffp-contract=off needs to be added for GCC >= 4.6.
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [${COMPILER_FP_CONTRACT_OFF_FLAG}],
PREFIX: $3,
IF_TRUE: [$2FDLIBM_CFLAGS=${COMPILER_FP_CONTRACT_OFF_FLAG}],
IF_FALSE: [$2FDLIBM_CFLAGS=""])
fi
AC_SUBST($2FDLIBM_CFLAGS)
])
# FLAGS_SETUP_GCC6_COMPILER_FLAGS([PREFIX])
# Arguments:
# $1 - Prefix for each variable defined.
# $2 - Prefix for compiler variables (either BUILD_ or nothing).
AC_DEFUN([FLAGS_SETUP_GCC6_COMPILER_FLAGS],
[
# These flags are required for GCC 6 builds as undefined behaviour in OpenJDK code
@@ -835,14 +889,11 @@ AC_DEFUN([FLAGS_SETUP_GCC6_COMPILER_FLAGS],
# Notably, value range propagation now assumes that the this pointer of C++
# member functions is non-null.
NO_DELETE_NULL_POINTER_CHECKS_CFLAG="-fno-delete-null-pointer-checks"
dnl Argument check is disabled until FLAGS_COMPILER_CHECK_ARGUMENTS handles cross-compilation
dnl FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$NO_DELETE_NULL_POINTER_CHECKS_CFLAG -Werror],
dnl IF_FALSE: [NO_DELETE_NULL_POINTER_CHECKS_CFLAG=""])
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$NO_DELETE_NULL_POINTER_CHECKS_CFLAG -Werror],
PREFIX: $2, IF_FALSE: [NO_DELETE_NULL_POINTER_CHECKS_CFLAG=""])
NO_LIFETIME_DSE_CFLAG="-fno-lifetime-dse"
dnl Argument check is disabled until FLAGS_COMPILER_CHECK_ARGUMENTS handles cross-compilation
dnl FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$NO_LIFETIME_DSE_CFLAG -Werror],
dnl IF_FALSE: [NO_LIFETIME_DSE_CFLAG=""])
AC_MSG_NOTICE([GCC >= 6 detected; adding ${NO_DELETE_NULL_POINTER_CHECKS_CFLAG} and ${NO_LIFETIME_DSE_CFLAG}])
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$NO_LIFETIME_DSE_CFLAG -Werror],
PREFIX: $2, IF_FALSE: [NO_LIFETIME_DSE_CFLAG=""])
$1_GCC6_CFLAGS="${NO_DELETE_NULL_POINTER_CHECKS_CFLAG} ${NO_LIFETIME_DSE_CFLAG}"
])

View File

@@ -72,12 +72,15 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
fi
# Add -z defs, to forbid undefined symbols in object files.
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,-z,defs"
# add -z,relro (mark relocations read only) for all libs
# add -z,now ("full relro" - more of the Global Offset Table GOT is marked read only)
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,-z,defs -Wl,-z,relro -Wl,-z,now"
# s390x : remove unused code+data in link step
if test "x$OPENJDK_TARGET_CPU" = xs390x; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,--gc-sections -Wl,--print-gc-sections"
fi
BASIC_LDFLAGS_JVM_ONLY="-Wl,-z,noexecstack -Wl,-O1 -Wl,-z,relro"
BASIC_LDFLAGS_JDK_LIB_ONLY="-Wl,-z,noexecstack"
LIBJSIG_NOEXECSTACK_LDFLAGS="-Wl,-z,noexecstack"
BASIC_LDFLAGS_JVM_ONLY="-Wl,-O1"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
BASIC_LDFLAGS_JVM_ONLY="-mno-omit-leaf-frame-pointer -mstack-alignment=16 \
@@ -103,6 +106,12 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
BASIC_LDFLAGS_JVM_ONLY="-opt:icf,8 -subsystem:windows"
fi
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
if test -n "$HAS_NOEXECSTACK"; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -Wl,-z,noexecstack"
fi
fi
# Setup OS-dependent LDFLAGS
if test "x$TOOLCHAIN_TYPE" = xclang || test "x$TOOLCHAIN_TYPE" = xgcc; then
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
@@ -118,13 +127,6 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
if test "x$OPENJDK_TARGET_OS" = xlinux; then
if test x$DEBUG_LEVEL = xrelease; then
DEBUGLEVEL_LDFLAGS_JDK_ONLY="$DEBUGLEVEL_LDFLAGS_JDK_ONLY -Wl,-O1"
else
# mark relocations read only on (fast/slow) debug builds
DEBUGLEVEL_LDFLAGS_JDK_ONLY="-Wl,-z,relro"
fi
if test x$DEBUG_LEVEL = xslowdebug; then
# do relocations at load
DEBUGLEVEL_LDFLAGS="-Wl,-z,now"
fi
fi
@@ -140,6 +142,17 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
# Setup LDFLAGS for linking executables
if test "x$TOOLCHAIN_TYPE" = xgcc; then
EXECUTABLE_LDFLAGS="$EXECUTABLE_LDFLAGS -Wl,--allow-shlib-undefined"
# Enabling pie on 32 bit builds prevents the JVM from allocating a continuous
# java heap.
if test "x$OPENJDK_TARGET_CPU_BITS" != "x32"; then
EXECUTABLE_LDFLAGS="$EXECUTABLE_LDFLAGS -pie"
fi
fi
if test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = "xfalse"; then
if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
BASIC_LDFLAGS="$BASIC_LDFLAGS -pdbaltpath:%_PDB%"
fi
fi
# Export some intermediate variables for compatibility

View File

@@ -162,6 +162,10 @@ AC_DEFUN_ONCE([FLAGS_SETUP_USER_SUPPLIED_FLAGS],
AC_MSG_WARN([Ignoring LDFLAGS($LDFLAGS) found in environment. Use --with-extra-ldflags])
fi
if test "x$ASFLAGS" != "x"; then
AC_MSG_WARN([Ignoring ASFLAGS($ASFLAGS) found in environment. Use --with-extra-asflags])
fi
AC_ARG_WITH(extra-cflags, [AS_HELP_STRING([--with-extra-cflags],
[extra flags to be used when compiling jdk c-files])])
@@ -171,9 +175,13 @@ AC_DEFUN_ONCE([FLAGS_SETUP_USER_SUPPLIED_FLAGS],
AC_ARG_WITH(extra-ldflags, [AS_HELP_STRING([--with-extra-ldflags],
[extra flags to be used when linking jdk])])
AC_ARG_WITH(extra-asflags, [AS_HELP_STRING([--with-extra-asflags],
[extra flags to be passed to the assembler])])
USER_CFLAGS="$with_extra_cflags"
USER_CXXFLAGS="$with_extra_cxxflags"
USER_LDFLAGS="$with_extra_ldflags"
USER_ASFLAGS="$with_extra_asflags"
])
# Setup the sysroot flags and add them to global CFLAGS and LDFLAGS so
@@ -216,10 +224,12 @@ AC_DEFUN([FLAGS_SETUP_SYSROOT_FLAGS],
# We also need -iframework<path>/System/Library/Frameworks
$1SYSROOT_CFLAGS="[$]$1SYSROOT_CFLAGS -iframework [$]$1SYSROOT/System/Library/Frameworks"
$1SYSROOT_LDFLAGS="[$]$1SYSROOT_LDFLAGS -iframework [$]$1SYSROOT/System/Library/Frameworks"
# These always need to be set, or we can't find the frameworks embedded in JavaVM.framework
# set this here so it doesn't have to be peppered throughout the forest
$1SYSROOT_CFLAGS="[$]$1SYSROOT_CFLAGS -F [$]$1SYSROOT/System/Library/Frameworks/JavaVM.framework/Frameworks"
$1SYSROOT_LDFLAGS="[$]$1SYSROOT_LDFLAGS -F [$]$1SYSROOT/System/Library/Frameworks/JavaVM.framework/Frameworks"
if test -d "[$]$1SYSROOT/System/Library/Frameworks/JavaVM.framework/Frameworks" ; then
# These always need to be set on macOS 10.X, or we can't find the frameworks embedded in JavaVM.framework
# set this here so it doesn't have to be peppered throughout the forest
$1SYSROOT_CFLAGS="[$]$1SYSROOT_CFLAGS -F [$]$1SYSROOT/System/Library/Frameworks/JavaVM.framework/Frameworks"
$1SYSROOT_LDFLAGS="[$]$1SYSROOT_LDFLAGS -F [$]$1SYSROOT/System/Library/Frameworks/JavaVM.framework/Frameworks"
fi
fi
AC_SUBST($1SYSROOT_CFLAGS)
@@ -265,10 +275,12 @@ AC_DEFUN_ONCE([FLAGS_PRE_TOOLCHAIN],
EXTRA_CFLAGS="$MACHINE_FLAG $USER_CFLAGS"
EXTRA_CXXFLAGS="$MACHINE_FLAG $USER_CXXFLAGS"
EXTRA_LDFLAGS="$MACHINE_FLAG $USER_LDFLAGS"
EXTRA_ASFLAGS="$USER_ASFLAGS"
AC_SUBST(EXTRA_CFLAGS)
AC_SUBST(EXTRA_CXXFLAGS)
AC_SUBST(EXTRA_LDFLAGS)
AC_SUBST(EXTRA_ASFLAGS)
# For autoconf testing to work, the global flags must also be stored in the
# "unnamed" CFLAGS etc.
@@ -406,17 +418,20 @@ AC_DEFUN([FLAGS_SETUP_FLAGS],
# ------------------------------------------------------------
# Check that the C compiler supports an argument
BASIC_DEFUN_NAMED([FLAGS_C_COMPILER_CHECK_ARGUMENTS],
[*ARGUMENT IF_TRUE IF_FALSE], [$@],
[*ARGUMENT IF_TRUE IF_FALSE PREFIX], [$@],
[
AC_MSG_CHECKING([if the C compiler supports "ARG_ARGUMENT"])
AC_MSG_CHECKING([if ARG_PREFIX[CC] supports "ARG_ARGUMENT"])
supports=yes
saved_cflags="$CFLAGS"
saved_cc="$CC"
CFLAGS="$CFLAGS ARG_ARGUMENT"
CC="$ARG_PREFIX[CC]"
AC_LANG_PUSH([C])
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int i;]])], [],
[supports=no])
AC_LANG_POP([C])
CC="$saved_cc"
CFLAGS="$saved_cflags"
AC_MSG_RESULT([$supports])
@@ -434,17 +449,20 @@ BASIC_DEFUN_NAMED([FLAGS_C_COMPILER_CHECK_ARGUMENTS],
# ------------------------------------------------------------
# Check that the C++ compiler supports an argument
BASIC_DEFUN_NAMED([FLAGS_CXX_COMPILER_CHECK_ARGUMENTS],
[*ARGUMENT IF_TRUE IF_FALSE], [$@],
[*ARGUMENT IF_TRUE IF_FALSE PREFIX], [$@],
[
AC_MSG_CHECKING([if the C++ compiler supports "ARG_ARGUMENT"])
AC_MSG_CHECKING([if ARG_PREFIX[CXX] supports "ARG_ARGUMENT"])
supports=yes
saved_cxxflags="$CXXFLAGS"
saved_cxx="$CXX"
CXXFLAGS="$CXXFLAG ARG_ARGUMENT"
CXX="$ARG_PREFIX[CXX]"
AC_LANG_PUSH([C++])
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int i;]])], [],
[supports=no])
AC_LANG_POP([C++])
CXX="$saved_cxx"
CXXFLAGS="$saved_cxxflags"
AC_MSG_RESULT([$supports])
@@ -462,18 +480,22 @@ BASIC_DEFUN_NAMED([FLAGS_CXX_COMPILER_CHECK_ARGUMENTS],
# ------------------------------------------------------------
# Check that the C and C++ compilers support an argument
BASIC_DEFUN_NAMED([FLAGS_COMPILER_CHECK_ARGUMENTS],
[*ARGUMENT IF_TRUE IF_FALSE], [$@],
[*ARGUMENT IF_TRUE IF_FALSE PREFIX], [$@],
[
FLAGS_C_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [ARG_ARGUMENT],
IF_TRUE: [C_COMP_SUPPORTS="yes"],
IF_FALSE: [C_COMP_SUPPORTS="no"])
IF_TRUE: [C_COMP_SUPPORTS="yes"],
IF_FALSE: [C_COMP_SUPPORTS="no"],
PREFIX: [ARG_PREFIX])
FLAGS_CXX_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [ARG_ARGUMENT],
IF_TRUE: [CXX_COMP_SUPPORTS="yes"],
IF_FALSE: [CXX_COMP_SUPPORTS="no"])
IF_TRUE: [CXX_COMP_SUPPORTS="yes"],
IF_FALSE: [CXX_COMP_SUPPORTS="no"],
PREFIX: [ARG_PREFIX])
AC_MSG_CHECKING([if both compilers support "ARG_ARGUMENT"])
AC_MSG_CHECKING([if both ARG_PREFIX[CC] and ARG_PREFIX[CXX] support "ARG_ARGUMENT"])
supports=no
if test "x$C_COMP_SUPPORTS" = "xyes" -a "x$CXX_COMP_SUPPORTS" = "xyes"; then supports=yes; fi
if test "x$C_COMP_SUPPORTS" = "xyes" -a "x$CXX_COMP_SUPPORTS" = "xyes"; then
supports=yes;
fi
AC_MSG_RESULT([$supports])
if test "x$supports" = "xyes" ; then

View File

@@ -25,7 +25,7 @@
# All valid JVM features, regardless of platform
VALID_JVM_FEATURES="compiler1 compiler2 zero minimal dtrace jvmti jvmci \
graal vm-structs jni-check services management cmsgc epsilongc g1gc parallelgc serialgc zgc nmt cds \
graal vm-structs jni-check services management cmsgc epsilongc g1gc parallelgc serialgc shenandoahgc zgc nmt cds \
static-build link-time-opt aot jfr"
# Deprecated JVM features (these are ignored, but with a warning)
@@ -47,8 +47,8 @@ AC_DEFUN([HOTSPOT_CHECK_JVM_VARIANT],
[ [ [[ " $JVM_VARIANTS " =~ " $1 " ]] ] ])
###############################################################################
# Check if the specified JVM features are explicitly enabled. To be used in
# shell if constructs, like this:
# Check if the specified JVM feature is enabled. To be used in shell if
# constructs, like this:
# if HOTSPOT_CHECK_JVM_FEATURE(jvmti); then
#
# Only valid to use after HOTSPOT_SETUP_JVM_FEATURES has setup features.
@@ -58,6 +58,20 @@ AC_DEFUN([HOTSPOT_CHECK_JVM_VARIANT],
AC_DEFUN([HOTSPOT_CHECK_JVM_FEATURE],
[ [ [[ " $JVM_FEATURES " =~ " $1 " ]] ] ])
###############################################################################
# Check if the specified JVM feature is explicitly disabled. To be used in
# shell if constructs, like this:
# if HOTSPOT_IS_JVM_FEATURE_DISABLED(jvmci); then
#
# This function is internal to hotspot.m4, and is only used when constructing
# the valid set of enabled JVM features. Users outside of hotspot.m4 should just
# use HOTSPOT_CHECK_JVM_FEATURE to check if a feature is enabled or not.
# Definition kept in one line to allow inlining in if statements.
# Additional [] needed to keep m4 from mangling shell constructs.
AC_DEFUN([HOTSPOT_IS_JVM_FEATURE_DISABLED],
[ [ [[ " $DISABLED_JVM_FEATURES " =~ " $1 " ]] ] ])
###############################################################################
# Check which variants of the JVM that we want to build. Available variants are:
# server: normal interpreter, and a tiered C1/C2 compiler
@@ -260,6 +274,14 @@ AC_DEFUN_ONCE([HOTSPOT_ENABLE_DISABLE_CDS],
fi
fi
# Disable CDS on macos-aarch64
if test "x$OPENJDK_TARGET_OS" = "xmacosx" && test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
ENABLE_CDS="false"
if test "x$enable_cds" = "xyes"; then
AC_MSG_ERROR([CDS is currently not supported on AIX. Remove --enable-cds.])
fi
fi
AC_SUBST(ENABLE_CDS)
])
@@ -338,6 +360,19 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
fi
fi
# Only enable Shenandoah on supported arches, and only if requested
AC_MSG_CHECKING([if shenandoah can be built])
if HOTSPOT_CHECK_JVM_FEATURE(shenandoahgc); then
if test "x$OPENJDK_TARGET_CPU_ARCH" = "xx86" || test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then
AC_MSG_RESULT([yes])
else
DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES shenandoahgc"
AC_MSG_RESULT([no, platform not supported])
fi
else
DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES shenandoahgc"
fi
# Only enable ZGC on supported platforms
AC_MSG_CHECKING([if zgc can be built])
if test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
@@ -349,7 +384,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
# Disable unsupported GCs for Zero
if HOTSPOT_CHECK_JVM_VARIANT(zero); then
DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES epsilongc g1gc zgc"
DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES epsilongc g1gc shenandoahgc zgc"
fi
# Turn on additional features based on other parts of configure
@@ -377,8 +412,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
AC_MSG_CHECKING([if jvmci module jdk.internal.vm.ci should be built])
# Check if jvmci is diabled
DISABLE_JVMCI=`$ECHO $DISABLED_JVM_FEATURES | $GREP jvmci`
if test "x$DISABLE_JVMCI" = "xjvmci"; then
if HOTSPOT_IS_JVM_FEATURE_DISABLED(jvmci); then
AC_MSG_RESULT([no, forced])
JVM_FEATURES_jvmci=""
INCLUDE_JVMCI="false"
@@ -404,8 +438,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
AC_MSG_CHECKING([if graal module jdk.internal.vm.compiler should be built])
# Check if graal is diabled
DISABLE_GRAAL=`$ECHO $DISABLED_JVM_FEATURES | $GREP graal`
if test "x$DISABLE_GRAAL" = "xgraal"; then
if HOTSPOT_IS_JVM_FEATURE_DISABLED(graal); then
AC_MSG_RESULT([no, forced])
JVM_FEATURES_graal=""
INCLUDE_GRAAL="false"
@@ -437,8 +470,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
AC_SUBST(INCLUDE_GRAAL)
# Disable aot with '--with-jvm-features=-aot'
DISABLE_AOT=`$ECHO $DISABLED_JVM_FEATURES | $GREP aot`
if test "x$DISABLE_AOT" = "xaot"; then
if HOTSPOT_IS_JVM_FEATURE_DISABLED(aot); then
ENABLE_AOT="false"
fi
@@ -462,7 +494,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
JVM_FEATURES_aot="aot"
fi
else
if test "x$enable_aot" = "xno" || test "x$DISABLE_AOT" = "xaot"; then
if test "x$enable_aot" = "xno" || HOTSPOT_IS_JVM_FEATURE_DISABLED(aot); then
AC_MSG_RESULT([no, forced])
else
AC_MSG_RESULT([no])
@@ -483,7 +515,7 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES],
fi
# All variants but minimal (and custom) get these features
NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES cmsgc g1gc parallelgc serialgc epsilongc jni-check jvmti management nmt services vm-structs zgc"
NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES cmsgc g1gc parallelgc serialgc epsilongc shenandoahgc jni-check jvmti management nmt services vm-structs zgc"
AC_MSG_CHECKING([if cds should be enabled])
if test "x$ENABLE_CDS" = "xtrue"; then

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -283,7 +283,7 @@ AC_DEFUN_ONCE([JDKOPT_DETECT_INTREE_EC],
AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
[
#
# NATIVE_DEBUG_SYMBOLS
# Native debug symbols.
# This must be done after the toolchain is setup, since we're looking at objcopy.
#
AC_MSG_CHECKING([what type of native debug symbols to use])
@@ -295,24 +295,48 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
if test "x$withval" = xexternal || test "x$withval" = xzipped; then
AC_MSG_ERROR([AIX only supports the parameters 'none' and 'internal' for --with-native-debug-symbols])
fi
elif test "x$OPENJDK_TARGET_OS" = xwindows; then
if test "x$withval" = xinternal; then
AC_MSG_ERROR([Windows does not support the parameter 'internal' for --with-native-debug-symbols])
fi
fi
],
[
if test "x$OPENJDK_TARGET_OS" = xaix; then
# AIX doesn't support 'external' so use 'internal' as default
with_native_debug_symbols="internal"
if test "x$STATIC_BUILD" = xtrue; then
with_native_debug_symbols="none"
else
if test "x$STATIC_BUILD" = xtrue; then
with_native_debug_symbols="none"
if test "x$OPENJDK_TARGET_OS" = xaix; then
# AIX doesn't support 'external' so use 'internal' as default
with_native_debug_symbols="internal"
else
with_native_debug_symbols="external"
fi
fi
])
NATIVE_DEBUG_SYMBOLS=$with_native_debug_symbols
AC_MSG_RESULT([$NATIVE_DEBUG_SYMBOLS])
AC_MSG_RESULT([$with_native_debug_symbols])
if test "x$NATIVE_DEBUG_SYMBOLS" = xzipped; then
if test "x$with_native_debug_symbols" = xnone; then
COMPILE_WITH_DEBUG_SYMBOLS=false
COPY_DEBUG_SYMBOLS=false
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
elif test "x$with_native_debug_symbols" = xinternal; then
COMPILE_WITH_DEBUG_SYMBOLS=true
COPY_DEBUG_SYMBOLS=false
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
elif test "x$with_native_debug_symbols" = xexternal; then
if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux; then
if test "x$OBJCOPY" = x; then
# enabling of enable-debug-symbols and can't find objcopy
# this is an error
AC_MSG_ERROR([Unable to find objcopy, cannot enable native debug symbols])
fi
fi
COMPILE_WITH_DEBUG_SYMBOLS=true
COPY_DEBUG_SYMBOLS=true
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
elif test "x$with_native_debug_symbols" = xzipped; then
if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux; then
if test "x$OBJCOPY" = x; then
@@ -325,27 +349,6 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
COMPILE_WITH_DEBUG_SYMBOLS=true
COPY_DEBUG_SYMBOLS=true
ZIP_EXTERNAL_DEBUG_SYMBOLS=true
elif test "x$NATIVE_DEBUG_SYMBOLS" = xnone; then
COMPILE_WITH_DEBUG_SYMBOLS=false
COPY_DEBUG_SYMBOLS=false
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
elif test "x$NATIVE_DEBUG_SYMBOLS" = xinternal; then
COMPILE_WITH_DEBUG_SYMBOLS=true
COPY_DEBUG_SYMBOLS=false
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
elif test "x$NATIVE_DEBUG_SYMBOLS" = xexternal; then
if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux; then
if test "x$OBJCOPY" = x; then
# enabling of enable-debug-symbols and can't find objcopy
# this is an error
AC_MSG_ERROR([Unable to find objcopy, cannot enable native debug symbols])
fi
fi
COMPILE_WITH_DEBUG_SYMBOLS=true
COPY_DEBUG_SYMBOLS=true
ZIP_EXTERNAL_DEBUG_SYMBOLS=false
else
AC_MSG_ERROR([Allowed native debug symbols are: none, internal, external, zipped])
fi
@@ -363,6 +366,33 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
AC_SUBST(COMPILE_WITH_DEBUG_SYMBOLS)
AC_SUBST(COPY_DEBUG_SYMBOLS)
AC_SUBST(ZIP_EXTERNAL_DEBUG_SYMBOLS)
# Should we add external native debug symbols to the shipped bundles?
AC_MSG_CHECKING([if we should add external native debug symbols to the shipped bundles])
AC_ARG_WITH([external-symbols-in-bundles],
[AS_HELP_STRING([--with-external-symbols-in-bundles],
[which type of external native debug symbol information shall be shipped in product bundles (none, public, full)
(e.g. ship full/stripped pdbs on Windows) @<:@none@:>@])])
if test "x$with_external_symbols_in_bundles" = x || test "x$with_external_symbols_in_bundles" = xnone ; then
AC_MSG_RESULT([no])
elif test "x$with_external_symbols_in_bundles" = xfull || test "x$with_external_symbols_in_bundles" = xpublic ; then
if test "x$OPENJDK_TARGET_OS" != xwindows ; then
AC_MSG_ERROR([--with-external-symbols-in-bundles currently only works on windows!])
elif test "x$COPY_DEBUG_SYMBOLS" != xtrue ; then
AC_MSG_ERROR([--with-external-symbols-in-bundles only works when --with-native-debug-symbols=external is used!])
elif test "x$with_external_symbols_in_bundles" = xfull ; then
AC_MSG_RESULT([full])
SHIP_DEBUG_SYMBOLS=full
else
AC_MSG_RESULT([public])
SHIP_DEBUG_SYMBOLS=public
fi
else
AC_MSG_ERROR([$with_external_symbols_in_bundles is an unknown value for --with-external-symbols-in-bundles])
fi
AC_SUBST(SHIP_DEBUG_SYMBOLS)
])
################################################################################
@@ -630,3 +660,35 @@ AC_DEFUN([JDKOPT_ENABLE_DISABLE_MANPAGES],
AC_SUBST(BUILD_MANPAGES)
])
################################################################################
#
# Disallow any output from containing absolute paths from the build system.
# This setting defaults to allowed on debug builds and not allowed on release
# builds.
#
AC_DEFUN([JDKOPT_ALLOW_ABSOLUTE_PATHS_IN_OUTPUT],
[
AC_ARG_ENABLE([absolute-paths-in-output],
[AS_HELP_STRING([--disable-absolute-paths-in-output],
[Set to disable to prevent any absolute paths from the build to end up in
any of the build output. @<:@disabled in release builds, otherwise enabled@:>@])
])
AC_MSG_CHECKING([if absolute paths should be allowed in the build output])
if test "x$enable_absolute_paths_in_output" = "xno"; then
AC_MSG_RESULT([no, forced])
ALLOW_ABSOLUTE_PATHS_IN_OUTPUT="false"
elif test "x$enable_absolute_paths_in_output" = "xyes"; then
AC_MSG_RESULT([yes, forced])
ALLOW_ABSOLUTE_PATHS_IN_OUTPUT="true"
elif test "x$DEBUG_LEVEL" = "xrelease"; then
AC_MSG_RESULT([no, release build])
ALLOW_ABSOLUTE_PATHS_IN_OUTPUT="false"
else
AC_MSG_RESULT([yes, debug build])
ALLOW_ABSOLUTE_PATHS_IN_OUTPUT="true"
fi
AC_SUBST(ALLOW_ABSOLUTE_PATHS_IN_OUTPUT)
])

View File

@@ -143,7 +143,9 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-url must have a value])
elif [ ! [[ $with_vendor_url =~ ^[[:print:]]*$ ]] ]; then
AC_MSG_ERROR([--with-vendor-url contains non-printing characters: $with_vendor_url])
else
elif test "x$with_vendor_url" != x; then
# Only set VENDOR_URL if '--with-vendor-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
VENDOR_URL="$with_vendor_url"
fi
AC_SUBST(VENDOR_URL)
@@ -155,7 +157,9 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-bug-url must have a value])
elif [ ! [[ $with_vendor_bug_url =~ ^[[:print:]]*$ ]] ]; then
AC_MSG_ERROR([--with-vendor-bug-url contains non-printing characters: $with_vendor_bug_url])
else
elif test "x$with_vendor_bug_url" != x; then
# Only set VENDOR_URL_BUG if '--with-vendor-bug-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
VENDOR_URL_BUG="$with_vendor_bug_url"
fi
AC_SUBST(VENDOR_URL_BUG)
@@ -167,7 +171,9 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_MSG_ERROR([--with-vendor-vm-bug-url must have a value])
elif [ ! [[ $with_vendor_vm_bug_url =~ ^[[:print:]]*$ ]] ]; then
AC_MSG_ERROR([--with-vendor-vm-bug-url contains non-printing characters: $with_vendor_vm_bug_url])
else
elif test "x$with_vendor_vm_bug_url" != x; then
# Only set VENDOR_URL_VM_BUG if '--with-vendor-vm-bug-url' was used and is not empty.
# Otherwise we will use the value from "version-numbers" included above.
VENDOR_URL_VM_BUG="$with_vendor_vm_bug_url"
fi
AC_SUBST(VENDOR_URL_VM_BUG)

View File

@@ -85,6 +85,20 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBFFI],
[LIBFFI_FOUND=no]
)
fi
# on macos we need a special case for system's libffi as
# headers are located only in sdk in $SYSROOT and in ffi subfolder
if test "x$LIBFFI_FOUND" = xno; then
if test "x$SYSROOT" != "x"; then
AC_CHECK_HEADER([$SYSROOT/usr/include/ffi/ffi.h],
[
LIBFFI_FOUND=yes
LIBFFI_CFLAGS="-I${SYSROOT}/usr/include/ffi"
LIBFFI_LIBS=-lffi
],
[LIBFFI_FOUND=no]
)
fi
fi
if test "x$LIBFFI_FOUND" = xno; then
HELP_MSG_MISSING_DEPENDENCY([ffi])
AC_MSG_ERROR([Could not find libffi! $HELP_MSG])

View File

@@ -49,10 +49,23 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU],
VAR_CPU_ENDIAN=little
;;
arm*)
VAR_CPU=arm
VAR_CPU_ARCH=arm
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=little
# Second argument is the os name from the trip/quad.
# on macos-aarch64, triplet returned by autoconf is
# arm-darwin*, but on darwin only aarch64 is present.
case "$2" in
*darwin*)
VAR_CPU=aarch64
VAR_CPU_ARCH=aarch64
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=little
;;
*)
VAR_CPU=arm
VAR_CPU_ARCH=arm
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=little
;;
esac
;;
aarch64)
VAR_CPU=aarch64
@@ -215,7 +228,7 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
PLATFORM_EXTRACT_VARS_FROM_OS($build_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($build_cpu)
PLATFORM_EXTRACT_VARS_FROM_CPU($build_cpu, $build_os)
# ..and setup our own variables. (Do this explicitly to facilitate searching)
OPENJDK_BUILD_OS="$VAR_OS"
if test "x$VAR_OS_TYPE" != x; then
@@ -245,7 +258,7 @@ AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
PLATFORM_EXTRACT_VARS_FROM_OS($host_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($host_cpu)
PLATFORM_EXTRACT_VARS_FROM_CPU($host_cpu, $host_os)
# ... and setup our own variables. (Do this explicitly to facilitate searching)
OPENJDK_TARGET_OS="$VAR_OS"
if test "x$VAR_OS_TYPE" != x; then

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -130,8 +130,9 @@ SYSROOT_LDFLAGS := @SYSROOT_LDFLAGS@
# The top-level directory of the source repository
TOPDIR:=@TOPDIR@
# Usually the top level directory, but could be something else if a custom
# root is defined.
WORKSPACE_ROOT:=@WORKSPACE_ROOT@
IMPORT_MODULES_CLASSES:=@IMPORT_MODULES_CLASSES@
IMPORT_MODULES_CMDS:=@IMPORT_MODULES_CMDS@
IMPORT_MODULES_LIBS:=@IMPORT_MODULES_LIBS@
@@ -229,7 +230,8 @@ ifneq ($(COMPANY_NAME),)
# Only export "VENDOR" to the build if COMPANY_NAME contains a real value.
# Otherwise the default value for VENDOR, which is used to set the "java.vendor"
# and "java.vm.vendor" properties is hard-coded into the source code (i.e. in
# System.c in the jdk for "vm.vendor" and vm_version.cpp in the VM for "java.vm.vendor")
# VersionProps.java.template in the jdk for "java.vendor" and
# vm_version.cpp in the VM for "java.vm.vendor")
ifneq ($(COMPANY_NAME), N/A)
VERSION_CFLAGS += -DVENDOR='"$(COMPANY_NAME)"'
endif
@@ -285,6 +287,9 @@ USE_PRECOMPILED_HEADER := @USE_PRECOMPILED_HEADER@
# Only build headless support or not
ENABLE_HEADLESS_ONLY := @ENABLE_HEADLESS_ONLY@
# Ship debug symbols (e.g. pdbs on Windows)
SHIP_DEBUG_SYMBOLS := @SHIP_DEBUG_SYMBOLS@
ENABLE_FULL_DOCS := @ENABLE_FULL_DOCS@
# JDK_OUTPUTDIR specifies where a working jvm is built.
@@ -314,6 +319,8 @@ EXCLUDE_TRANSLATIONS := @EXCLUDE_TRANSLATIONS@
BUILD_MANPAGES := @BUILD_MANPAGES@
ALLOW_ABSOLUTE_PATHS_IN_OUTPUT := @ALLOW_ABSOLUTE_PATHS_IN_OUTPUT@
# The boot jdk to use. This is overridden in bootcycle-spec.gmk. Make sure to keep
# it in sync.
BOOT_JDK:=@BOOT_JDK@
@@ -357,6 +364,9 @@ LIBFFI_CFLAGS:=@LIBFFI_CFLAGS@
ENABLE_LIBFFI_BUNDLING:=@ENABLE_LIBFFI_BUNDLING@
LIBFFI_LIB_FILE:=@LIBFFI_LIB_FILE@
GRAALUNIT_LIB := @GRAALUNIT_LIB@
FILE_MACRO_CFLAGS := @FILE_MACRO_CFLAGS@
STATIC_LIBS_CFLAGS := @STATIC_LIBS_CFLAGS@
PACKAGE_PATH=@PACKAGE_PATH@
@@ -387,6 +397,9 @@ MACOSX_VERSION_MIN=@MACOSX_VERSION_MIN@
# The highest allowed version of macosx
MACOSX_VERSION_MAX=@MACOSX_VERSION_MAX@
# The macosx code signing identity to use
MACOSX_CODESIGN_IDENTITY=@MACOSX_CODESIGN_IDENTITY@
# Toolchain type: gcc, clang, solstudio, lxc, microsoft...
TOOLCHAIN_TYPE:=@TOOLCHAIN_TYPE@
TOOLCHAIN_VERSION := @TOOLCHAIN_VERSION@
@@ -462,6 +475,7 @@ JVM_RCFLAGS := @JVM_RCFLAGS@
EXTRA_CFLAGS = @EXTRA_CFLAGS@
EXTRA_CXXFLAGS = @EXTRA_CXXFLAGS@
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
EXTRA_ASFLAGS = @EXTRA_ASFLAGS@
CXX:=@FIXPATH@ @CCACHE@ @ICECC@ @CXX@
@@ -470,6 +484,9 @@ CPP:=@FIXPATH@ @CPP@
# The linker can be gcc or ld on unix systems, or link.exe on windows systems.
LD:=@FIXPATH@ @LD@
# Linker used by the jaotc tool for AOT compilation.
LD_JAOTC:=@LD_JAOTC@
# Xcode SDK path
SDKROOT:=@SDKROOT@
@@ -731,7 +748,7 @@ SETFILE:=@SETFILE@
XATTR:=@XATTR@
JT_HOME:=@JT_HOME@
JTREGEXE:=@JTREGEXE@
JIB_JAR:=@JIB_JAR@
JIB_HOME:=@JIB_HOME@
XCODEBUILD=@XCODEBUILD@
DTRACE := @DTRACE@
FIXPATH:=@FIXPATH@
@@ -858,13 +875,27 @@ DOCS_IMAGE_DIR = $(IMAGES_OUTPUTDIR)/$(DOCS_IMAGE_SUBDIR)
# Output docs directly into image
DOCS_OUTPUTDIR := $(DOCS_IMAGE_DIR)
# Static libs image
STATIC_LIBS_IMAGE_SUBDIR := static-libs
STATIC_LIBS_IMAGE_DIR := $(IMAGES_OUTPUTDIR)/$(STATIC_LIBS_IMAGE_SUBDIR)
# Graal builder image
GRAAL_BUILDER_IMAGE_SUBDIR := graal-builder-jdk
GRAAL_BUILDER_IMAGE_DIR := $(IMAGES_OUTPUTDIR)/$(GRAAL_BUILDER_IMAGE_SUBDIR)
# Macosx bundles directory definitions
JDK_MACOSX_BUNDLE_SUBDIR=jdk-bundle
JRE_MACOSX_BUNDLE_SUBDIR=jre-bundle
JDK_MACOSX_BUNDLE_SUBDIR_SIGNED=jdk-bundle-signed
JRE_MACOSX_BUNDLE_SUBDIR_SIGNED=jre-bundle-signed
JDK_MACOSX_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_MACOSX_BUNDLE_SUBDIR)
JRE_MACOSX_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_MACOSX_BUNDLE_SUBDIR)
JDK_MACOSX_CONTENTS_SUBDIR=jdk-$(VERSION_NUMBER).jdk/Contents
JRE_MACOSX_CONTENTS_SUBDIR=jre-$(VERSION_NUMBER).jre/Contents
JDK_MACOSX_BUNDLE_DIR_SIGNED=$(IMAGES_OUTPUTDIR)/$(JDK_MACOSX_BUNDLE_SUBDIR_SIGNED)
JRE_MACOSX_BUNDLE_DIR_SIGNED=$(IMAGES_OUTPUTDIR)/$(JRE_MACOSX_BUNDLE_SUBDIR_SIGNED)
JDK_MACOSX_BUNDLE_TOP_DIR=jdk-$(VERSION_NUMBER).jdk
JRE_MACOSX_BUNDLE_TOP_DIR=jre-$(VERSION_NUMBER).jre
JDK_MACOSX_CONTENTS_SUBDIR=$(JDK_MACOSX_BUNDLE_TOP_DIR)/Contents
JRE_MACOSX_CONTENTS_SUBDIR=$(JRE_MACOSX_BUNDLE_TOP_DIR)/Contents
JDK_MACOSX_CONTENTS_DIR=$(JDK_MACOSX_BUNDLE_DIR)/$(JDK_MACOSX_CONTENTS_SUBDIR)
JRE_MACOSX_CONTENTS_DIR=$(JRE_MACOSX_BUNDLE_DIR)/$(JRE_MACOSX_CONTENTS_SUBDIR)
@@ -886,6 +917,7 @@ JDK_SYMBOLS_BUNDLE_NAME := jdk-$(BASE_NAME)_bin$(DEBUG_PART)-symbols.tar.gz
TEST_DEMOS_BUNDLE_NAME := jdk-$(BASE_NAME)_bin-tests-demos$(DEBUG_PART).tar.gz
TEST_BUNDLE_NAME := jdk-$(BASE_NAME)_bin-tests$(DEBUG_PART).tar.gz
DOCS_BUNDLE_NAME := jdk-$(BASE_NAME)_doc-api-spec$(DEBUG_PART).tar.gz
STATIC_LIBS_BUNDLE_NAME := jdk-$(BASE_NAME)_bin-static-libs$(DEBUG_PART).tar.gz
JDK_BUNDLE := $(BUNDLES_OUTPUTDIR)/$(JDK_BUNDLE_NAME)
JRE_BUNDLE := $(BUNDLES_OUTPUTDIR)/$(JRE_BUNDLE_NAME)

View File

@@ -429,9 +429,10 @@ AC_DEFUN([TOOLCHAIN_EXTRACT_COMPILER_VERSION],
# There is no specific version flag, but all output starts with a version string.
# First line typically looks something like:
# Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86
# but the compiler name may vary depending on locale.
COMPILER_VERSION_OUTPUT=`$COMPILER 2>&1 | $HEAD -n 1 | $TR -d '\r'`
# Check that this is likely to be Microsoft CL.EXE.
$ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Microsoft.*Compiler" > /dev/null
$ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Microsoft" > /dev/null
if test $? -ne 0; then
AC_MSG_NOTICE([The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler.])
AC_MSG_NOTICE([The result from running it was: "$COMPILER_VERSION_OUTPUT"])
@@ -460,7 +461,7 @@ AC_DEFUN([TOOLCHAIN_EXTRACT_COMPILER_VERSION],
COMPILER_VERSION_STRING=`$ECHO $COMPILER_VERSION_OUTPUT | \
$SED -e 's/ *Copyright .*//'`
COMPILER_VERSION_NUMBER=`$ECHO $COMPILER_VERSION_OUTPUT | \
$SED -e 's/^.* \(@<:@1-9@:>@\.@<:@0-9.@:>@*\)@<:@^0-9.@:>@.*$/\1/'`
$SED -e 's/^.* \(@<:@1-9@:>@<:@0-9@:>@*\.@<:@0-9.@:>@*\)@<:@^0-9.@:>@.*$/\1/'`
elif test "x$TOOLCHAIN_TYPE" = xclang; then
# clang --version output typically looks like
# Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
@@ -589,7 +590,7 @@ AC_DEFUN([TOOLCHAIN_FIND_COMPILER],
AC_DEFUN([TOOLCHAIN_EXTRACT_LD_VERSION],
[
LINKER=[$]$1
LINKER_NAME=$2
LINKER_NAME="$2"
if test "x$TOOLCHAIN_TYPE" = xsolstudio; then
# cc -Wl,-V output typically looks like
@@ -709,12 +710,18 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETECT_TOOLCHAIN_CORE],
AC_MSG_RESULT([yes])
fi
LDCXX="$LD"
# jaotc being a windows program expects the linker to be supplied with exe suffix.
LD_JAOTC="$LD$EXE_SUFFIX"
else
# All other toolchains use the compiler to link.
LD="$CC"
LDCXX="$CXX"
# jaotc expects 'ld' as the linker rather than the compiler.
BASIC_CHECK_TOOLS([LD_JAOTC], ld)
BASIC_FIXUP_EXECUTABLE(LD_JAOTC)
fi
AC_SUBST(LD)
AC_SUBST(LD_JAOTC)
# FIXME: it should be CXXLD, according to standard (cf CXXCPP)
AC_SUBST(LDCXX)
@@ -941,9 +948,14 @@ AC_DEFUN_ONCE([TOOLCHAIN_SETUP_BUILD_COMPILERS],
# FIXME: we should list the discovered compilers as an exclude pattern!
# If we do that, we can do this detection before POST_DETECTION, and still
# find the build compilers in the tools dir, if needed.
BASIC_REQUIRE_PROGS(BUILD_CC, [cl cc gcc])
if test "x$OPENJDK_BUILD_OS" = xmacosx; then
BASIC_REQUIRE_PROGS(BUILD_CC, [clang cl cc gcc])
BASIC_REQUIRE_PROGS(BUILD_CXX, [clang++ cl CC g++])
else
BASIC_REQUIRE_PROGS(BUILD_CC, [cl cc gcc])
BASIC_REQUIRE_PROGS(BUILD_CXX, [cl CC g++])
fi
BASIC_FIXUP_EXECUTABLE(BUILD_CC)
BASIC_REQUIRE_PROGS(BUILD_CXX, [cl CC g++])
BASIC_FIXUP_EXECUTABLE(BUILD_CXX)
BASIC_PATH_PROGS(BUILD_NM, nm gcc-nm)
BASIC_FIXUP_EXECUTABLE(BUILD_NM)
@@ -1022,6 +1034,12 @@ AC_DEFUN_ONCE([TOOLCHAIN_MISC_CHECKS],
# This is later checked when setting flags.
fi
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
# Check if linker has -z noexecstack.
HAS_NOEXECSTACK=`$CC -Wl,--help 2>/dev/null | $GREP 'z noexecstack'`
# This is later checked when setting flags.
fi
# Setup hotspot lecagy names for toolchains
HOTSPOT_TOOLCHAIN_TYPE=$TOOLCHAIN_TYPE
if test "x$TOOLCHAIN_TYPE" = xclang; then
@@ -1144,5 +1162,5 @@ AC_DEFUN_ONCE([TOOLCHAIN_SETUP_JIB],
fi
fi
AC_SUBST(JIB_JAR)
AC_SUBST(JIB_HOME)
])

View File

@@ -185,6 +185,8 @@ AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
eval SDK_INSTALL_DIR="\${VS_SDK_INSTALLDIR_${VS_VERSION}}"
eval VS_ENV_ARGS="\${VS_ENV_ARGS_${VS_VERSION}}"
VS_ENV_CMD=""
# When using --with-tools-dir, assume it points to the correct and default
# version of Visual Studio or that --with-toolchain-version was also set.
if test "x$with_tools_dir" != x; then
@@ -202,8 +204,6 @@ AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
fi
fi
VS_ENV_CMD=""
if test "x$VS_COMNTOOLS" != x; then
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([${VS_VERSION}],
[$VS_COMNTOOLS/../..], [$VS_COMNTOOLS_VAR variable])
@@ -693,7 +693,7 @@ AC_DEFUN([TOOLCHAIN_SETUP_VS_RUNTIME_DLLS],
if test "x$USE_UCRT" = "xtrue"; then
AC_MSG_CHECKING([for UCRT DLL dir])
if test "x$with_ucrt_dll_dir" != x; then
if test -z "$(ls -d "$with_ucrt_dll_dir/*.dll" 2> /dev/null)"; then
if test -z "$(ls -d "$with_ucrt_dll_dir/"*.dll 2> /dev/null)"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Could not find any dlls in $with_ucrt_dll_dir])
else
@@ -713,8 +713,16 @@ AC_DEFUN([TOOLCHAIN_SETUP_VS_RUNTIME_DLLS],
fi
UCRT_DLL_DIR="$CYGWIN_WINDOWSSDKDIR/Redist/ucrt/DLLs/$dll_subdir"
if test -z "$(ls -d "$UCRT_DLL_DIR/"*.dll 2> /dev/null)"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Could not find any dlls in $UCRT_DLL_DIR])
# Try with version subdir
UCRT_DLL_DIR="`ls -d $CYGWIN_WINDOWSSDKDIR/Redist/*/ucrt/DLLs/$dll_subdir \
2> /dev/null | $SORT -d | $HEAD -n1`"
if test -z "$UCRT_DLL_DIR" \
|| test -z "$(ls -d "$UCRT_DLL_DIR/"*.dll 2> /dev/null)"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Could not find any dlls in $UCRT_DLL_DIR])
else
AC_MSG_RESULT($UCRT_DLL_DIR)
fi
else
AC_MSG_RESULT($UCRT_DLL_DIR)
fi

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -23,19 +23,21 @@
# questions.
#
# Default version numbers to use unless overridden by configure
# Default version, product, and vendor information to use,
# unless overridden by configure
DEFAULT_VERSION_FEATURE=11
DEFAULT_VERSION_INTERIM=0
DEFAULT_VERSION_UPDATE=5
DEFAULT_VERSION_PATCH=0
DEFAULT_VERSION_UPDATE=9
DEFAULT_VERSION_PATCH=1
DEFAULT_VERSION_EXTRA1=0
DEFAULT_VERSION_EXTRA2=0
DEFAULT_VERSION_EXTRA3=0
DEFAULT_VERSION_DATE=2019-10-15
DEFAULT_VERSION_DATE=2020-11-04
DEFAULT_VERSION_CLASSFILE_MAJOR=55 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="10 11"
DEFAULT_PROMOTED_VERSION_PRE=ea
LAUNCHER_NAME=openjdk
PRODUCT_NAME=OpenJDK
@@ -43,6 +45,9 @@ PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A
HOTSPOT_VM_DISTRO="OpenJDK"
VENDOR_URL=https://openjdk.java.net/
VENDOR_URL_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"

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -122,9 +122,9 @@ define SetupJarArchiveBody
ifeq ($$($1_DEPENDENCIES), )
# Add all source roots to the find cache since we are likely going to run find
# on these more than once. The cache will only be updated if necessary.
$$(eval $$(call FillCacheFind, $$($1_FIND_LIST)))
$$(call FillFindCache, $$($1_FIND_LIST))
$1_DEPENDENCIES:=$$(filter $$(addprefix %,$$($1_SUFFIXES)), \
$$(call CacheFind,$$($1_SRCS)))
$$(call FindFiles,$$($1_SRCS)))
ifneq (,$$($1_GREP_INCLUDE_PATTERNS))
$1_DEPENDENCIES:=$$(filter $$(addsuffix %,$$($1_GREP_INCLUDE_PATTERNS)),$$($1_DEPENDENCIES))
endif
@@ -135,7 +135,7 @@ define SetupJarArchiveBody
$1_DEPENDENCIES+=$$(wildcard $$(foreach src, $$($1_SRCS), \
$$(addprefix $$(src)/, $$($1_EXTRA_FILES))) $$($1_EXTRA_FILES))
ifeq (,$$($1_SKIP_METAINF))
$1_DEPENDENCIES+=$$(call CacheFind,$$(wildcard $$(addsuffix /META-INF,$$($1_SRCS))))
$1_DEPENDENCIES+=$$(call FindFiles,$$(wildcard $$(addsuffix /META-INF,$$($1_SRCS))))
endif
endif
# The dependency list should never be empty

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -221,13 +221,12 @@ define SetupJavaCompilationBody
) \
)
$$(call MakeDir,$$($1_BIN))
# Add all source roots to the find cache since we are likely going to run find
# on these more than once. The cache will only be updated if necessary.
$$(eval $$(call FillCacheFind, $$($1_SRC)))
# Find all files in the source trees. Preserve order of source roots so that
# the first version in case of multiple instances of the same file is selected.
# CacheFind does not preserve order so need to call it for each root.
$1_ALL_SRCS += $$($1_EXTRA_FILES) $$(foreach s, $$($1_SRC), $$(call CacheFind, $$s))
# Order src files according to the order of the src dirs. Correct ordering is
# needed for correct overriding between different source roots.
$1_ALL_SRC_RAW := $$(call FindFiles, $$($1_SRC))
$1_ALL_SRCS := $$($1_EXTRA_FILES) \
$$(foreach d, $$($1_SRC), $$(filter $$d%, $$($1_ALL_SRC_RAW)))
# Extract the java files.
$1_SRCS := $$(filter %.java, $$($1_ALL_SRCS))

View File

@@ -47,6 +47,36 @@ FindSrcDirsForComponent += \
$(TOPDIR)/src/$(strip $1)/$(OPENJDK_TARGET_OS_TYPE)/native/$(strip $2) \
$(TOPDIR)/src/$(strip $1)/share/native/$(strip $2)))
# Find a library. Used for declaring dependencies on libraries in different
# modules.
# Param 1 - module name
# Param 2 - library name
# Param 3 - optional subdir for library
FindLib = \
$(call FindLibDirForModule, \
$(strip $1))$(strip $3)/$(LIBRARY_PREFIX)$(strip $2)$(SHARED_LIBRARY_SUFFIX)
# Find a static library
# Param 1 - module name
# Param 2 - library name
# Param 3 - optional subdir for library
FindStaticLib = \
$(addprefix $(SUPPORT_OUTPUTDIR)/native/, \
$(strip $1)$(strip $3)/$(LIBRARY_PREFIX)$(strip $2)$(STATIC_LIBRARY_SUFFIX))
# If only generating compile_commands.json, make these return empty to avoid
# declaring dependencies.
ifeq ($(GENERATE_COMPILE_COMMANDS_ONLY), true)
FindLib =
FindStaticLib =
endif
# If building static versions of libraries, make these return empty to avoid
# declaring dependencies.
ifeq ($(STATIC_LIBS), true)
FindLib =
FindStaticLib =
endif
GetJavaHeaderDir = \
$(wildcard $(SUPPORT_OUTPUTDIR)/headers/$(strip $1))

View File

@@ -64,10 +64,12 @@ define NEWLINE
endef
# In GNU Make 4.0 and higher, there is a file function for writing to files.
# Certain features only work in newer version of GNU Make. The build will still
# function in 3.81, but will be less performant.
ifeq (4.0, $(firstword $(sort 4.0 $(MAKE_VERSION))))
HAS_FILE_FUNCTION := true
CORRECT_FUNCTION_IN_RECIPE_EVALUATION := true
RWILDCARD_WORKS := true
endif
##############################
@@ -466,8 +468,8 @@ endef
################################################################################
# Replace question marks with space in string. This macro needs to be called on
# files from CacheFind in case any of them contains space in their file name,
# since CacheFind replaces space with ?.
# files from FindFiles in case any of them contains space in their file name,
# since FindFiles replaces space with ?.
# Param 1 - String to replace in
DecodeSpace = \
$(subst ?,$(SPACE),$(strip $1))
@@ -611,7 +613,8 @@ DirToDotDot = \
# $2 - Directory to compute the relative path from
RelativePath = \
$(eval $1_prefix := $(call FindCommonPathPrefix, $1, $2)) \
$(eval $1_dotdots := $(call DirToDotDot, $(patsubst $($(strip $1)_prefix)/%, %, $2))) \
$(eval $1_dotdots := $(call DirToDotDot, $(patsubst $($(strip $1)_prefix)%, %, $2))) \
$(eval $1_dotdots := $(if $($(strip $1)_dotdots),$($(strip $1)_dotdots),.)) \
$(eval $1_suffix := $(patsubst $($(strip $1)_prefix)/%, %, $1)) \
$($(strip $1)_dotdots)/$($(strip $1)_suffix)
@@ -685,73 +688,116 @@ uppercase = \
################################################################################
ifneq ($(DISABLE_CACHE_FIND), true)
# In Cygwin, finds are very costly, both because of expensive forks and because
# of bad file system caching. Find is used extensively in $(shell) commands to
# find source files. This makes rerunning make with no or few changes rather
# expensive. To speed this up, these two macros are used to cache the results
# of simple find commands for reuse.
#
# Runs a find and stores both the directories where it was run and the results.
# This macro can be called multiple times to add to the cache. Only finds files
# with no filters.
#
# Files containing space will get spaces replaced with ? because GNU Make
# cannot handle lists of files with space in them. By using ?, make will match
# the wildcard to space in many situations so we don't need to replace back
# to space on every use. While not a complete solution it does allow some uses
# of CacheFind to function with spaces in file names, including for
# SetupCopyFiles.
#
# Needs to be called with $(eval )
#
# Even if the performance benifit is negligible on other platforms, keep the
# functionality active unless explicitly disabled to exercise it more.
#
# Initialize FIND_CACHE_DIRS with := to make it a non recursively-expanded variable
FIND_CACHE_DIRS :=
# Param 1 - Dirs to find in
# Param 2 - (optional) specialization. Normally "-a \( ... \)" expression.
define FillCacheFind
# Filter out already cached dirs. The - is needed when FIND_CACHE_DIRS is empty
# since filter out will then return empty.
FIND_CACHE_NEW_DIRS := $$(filter-out $$(addsuffix /%,\
- $(FIND_CACHE_DIRS)) $(FIND_CACHE_DIRS), $1)
ifneq ($$(FIND_CACHE_NEW_DIRS), )
# Remove any trailing slash from dirs in the cache dir list
FIND_CACHE_DIRS += $$(patsubst %/,%, $$(FIND_CACHE_NEW_DIRS))
FIND_CACHE := $$(sort $$(FIND_CACHE) \
$$(shell $(FIND) $$(wildcard $$(FIND_CACHE_NEW_DIRS)) \
\( -type f -o -type l \) $2 | $(TR) ' ' '?'))
endif
endef
# Mimics find by looking in the cache if all of the directories have been cached.
# Otherwise reverts to shell find. This is safe to call on all platforms, even if
# cache is deactivated.
#
# $1 can be either a directory or a file. If it's a directory, make
# sure we have exactly one trailing slash before the wildcard.
# The extra - is needed when FIND_CACHE_DIRS is empty but should be harmless.
#
# Param 1 - Dirs to find in
# Param 2 - (optional) specialization. Normally "-a \( ... \)" expression.
define CacheFind
$(if $(filter-out $(addsuffix /%,- $(FIND_CACHE_DIRS)) $(FIND_CACHE_DIRS),$1), \
$(if $(wildcard $1), $(shell $(FIND) $(wildcard $1) \( -type f -o -type l \) $2 \
| $(TR) ' ' '?')), \
$(filter $(addsuffix /%,$(patsubst %/,%,$1)) $1,$(FIND_CACHE)))
endef
else
# If CacheFind is disabled, just run the find command.
# Param 1 - Dirs to find in
# Param 2 - (optional) specialization. Normally "-a \( ... \)" expression.
define CacheFind
$(if $(wildcard $1, \
$(shell $(FIND) $(wildcard $1) \( -type f -o -type l \) $2 | $(TR) ' ' '?') \
# Recursive wildcard function. Walks down directories recursively and matches
# files with the search patterns. Patterns use standard file wildcards (* and
# ?).
#
# $1 - Directories to start search in
# $2 - Search patterns
rwildcard = \
$(strip \
$(foreach d, \
$(patsubst %/,%,$(sort $(dir $(wildcard $(addsuffix /*/*, $(strip $1)))))), \
$(call rwildcard,$d,$2) \
) \
$(call DoubleDollar, $(wildcard $(foreach p, $2, $(addsuffix /$(strip $p), $(strip $1))))) \
)
endef
# Find non directories using recursive wildcard function. This function may
# be used directly when a small amount of directories is expected to be
# searched and caching is not expected to be of use.
#
# $1 - Directory to start search in
# $2 - Optional search patterns, defaults to '*'.
WildcardFindFiles = \
$(sort $(strip \
$(eval WildcardFindFiles_result := $(call rwildcard,$(patsubst %/,%,$1),$(if $(strip $2),$2,*))) \
$(filter-out $(patsubst %/,%,$(sort $(dir $(WildcardFindFiles_result)))), \
$(WildcardFindFiles_result) \
) \
))
# Find non directories using the find utility in the shell. Safe to call for
# non existing directories, or directories containing wildcards.
#
# Files containing space will get spaces replaced with ? because GNU Make
# cannot handle lists of files with space in them. By using ?, make will match
# the wildcard to space in many situations so we don't need to replace back
# to space on every use. While not a complete solution it does allow some uses
# of FindFiles to function with spaces in file names, including for
# SetupCopyFiles. Unfortunately this does not work for WildcardFindFiles so
# if files with spaces are anticipated, use ShellFindFiles directly.
#
# $1 - Directories to start search in.
# $2 - Optional search patterns, empty means find everything. Patterns use
# standard file wildcards (* and ?) and should not be quoted.
# $3 - Optional options to find.
ShellFindFiles = \
$(if $(wildcard $1), \
$(sort \
$(shell $(FIND) $3 $(patsubst %/,%,$(wildcard $1)) \( -type f -o -type l \) \
$(if $(strip $2), -a \( -name "$(firstword $2)" \
$(foreach p, $(filter-out $(firstword $2), $2), -o -name "$(p)") \)) \
| $(TR) ' ' '?' \
) \
) \
)
# Find non directories using the method most likely to work best for the
# current build host
#
# $1 - Directory to start search in
# $2 - Optional search patterns, defaults to '*'.
ifeq ($(OPENJDK_BUILD_OS)-$(RWILDCARD_WORKS), windows-true)
DirectFindFiles = $(WildcardFindFiles)
else
DirectFindFiles = $(ShellFindFiles)
endif
# Finds files using a cache that is populated by FillFindCache below. If any of
# the directories given have not been cached, DirectFindFiles is used for
# everything. Caching is especially useful in Cygwin, where file finds are very
# costly.
#
# $1 - Directories to start search in.
# $2 - Optional search patterns. If used, no caching is done.
CacheFindFiles_CACHED_DIRS :=
CacheFindFiles_CACHED_FILES :=
CacheFindFiles = \
$(if $2, \
$(call DirectFindFiles, $1, $2) \
, \
$(if $(filter-out $(addsuffix /%, $(CacheFindFiles_CACHED_DIRS)) \
$(CacheFindFiles_CACHED_DIRS), $1), \
$(call DirectFindFiles, $1) \
, \
$(filter $(addsuffix /%,$(patsubst %/,%,$1)) $1,$(CacheFindFiles_CACHED_FILES)) \
) \
)
# Explicitly adds files to the find cache used by CacheFindFiles.
#
# $1 - Directories to start search in
FillFindCache = \
$(eval CacheFindFiles_NEW_DIRS := $$(filter-out $$(addsuffix /%,\
$$(CacheFindFiles_CACHED_DIRS)) $$(CacheFindFiles_CACHED_DIRS), $1)) \
$(if $(CacheFindFiles_NEW_DIRS), \
$(eval CacheFindFiles_CACHED_DIRS += $$(patsubst %/,%,$$(CacheFindFiles_NEW_DIRS))) \
$(eval CacheFindFiles_CACHED_FILES := $$(sort $$(CacheFindFiles_CACHED_FILES) \
$$(call DirectFindFiles, $$(CacheFindFiles_NEW_DIRS)))) \
)
# Findfiles is the default macro that should be used to find files in the file
# system. This function does not always support files with spaces in the names.
# If files with spaces are anticipated, use ShellFindFiles directly.
#
# $1 - Directories to start search in.
# $2 - Optional search patterns, empty means find everything. Patterns use
# standard file wildcards (* and ?) and should not be quoted.
ifeq ($(DISABLE_CACHE_FIND), true)
FindFiles = $(DirectFindFiles)
else
FindFiles = $(CacheFindFiles)
endif
################################################################################
@@ -842,7 +888,7 @@ endef
# Parameter 1 is the name of the rule, and is also the name of the variable.
#
# Remaining parameters are named arguments. These include:
# KEYWORDS A list of valid keywords
# SINGLE_KEYWORDS A list of valid keywords with single string values
# STRING_KEYWORDS A list of valid keywords, processed as string. This means
# that '%20' will be replaced by ' ' to allow for multi-word strings.
#
@@ -856,7 +902,7 @@ define ParseKeywordVariableBody
$$(eval mangled_part_eval := $$(call DoubleDollar, $$(mangled_part))) \
$$(eval part := $$$$(subst ||||,$$$$(SPACE),$$$$(mangled_part_eval))) \
$$(eval $1_NO_MATCH := true) \
$$(foreach keyword, $$($1_KEYWORDS), \
$$(foreach keyword, $$($1_SINGLE_KEYWORDS), \
$$(eval keyword_eval := $$(call DoubleDollar, $$(keyword))) \
$$(if $$(filter $$(keyword)=%, $$(part)), \
$$(eval $(strip $1)_$$$$(keyword_eval) := $$$$(strip $$$$(patsubst $$$$(keyword_eval)=%, %, $$$$(part)))) \
@@ -871,11 +917,11 @@ define ParseKeywordVariableBody
) \
) \
$$(if $$($1_NO_MATCH), \
$$(if $$(filter $$(part), $$($1_KEYWORDS) $$($1_STRING_KEYWORDS)), \
$$(if $$(filter $$(part), $$($1_SINGLE_KEYWORDS) $$($1_STRING_KEYWORDS)), \
$$(info Keyword $$(part) for $1 needs to be assigned a value.) \
, \
$$(info $$(part) is not a valid keyword for $1.) \
$$(info Valid keywords: $$($1_KEYWORDS) $$($1_STRING_KEYWORDS).) \
$$(info Valid keywords: $$($1_SINGLE_KEYWORDS) $$($1_STRING_KEYWORDS).) \
) \
$$(error Cannot continue) \
) \
@@ -937,6 +983,22 @@ else
$(shell $(PRINTF) "%s" $(call ShellQuote, $1) >> $2)
endif
################################################################################
# FixPathList
#
# On Windows, converts a cygwin/unix style path list (colon-separated) into
# the native format (mixed mode, semicolon-separated). On other platforms,
# return the path list unchanged.
################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows)
FixPathList = \
$(subst @,$(SPACE),$(subst $(SPACE),;,$(foreach entry,$(subst :,$(SPACE),\
$(subst $(SPACE),@,$(strip $1))),$(call FixPath, $(entry)))))
else
FixPathList = \
$1
endif
################################################################################
# DependOnVariable
#
@@ -974,15 +1036,16 @@ DependOnVariableFileName = \
# Param 2 - (optional) name of file to store value in
DependOnVariableHelper = \
$(strip \
$(eval -include $(call DependOnVariableFileName, $1, $2)) \
$(eval $1_filename := $(call DependOnVariableFileName, $1, $2)) \
$(if $(wildcard $($1_filename)), $(eval include $($1_filename))) \
$(if $(call equals, $(strip $($1)), $(strip $($1_old))),,\
$(call MakeDir, $(dir $(call DependOnVariableFileName, $1, $2))) \
$(call MakeDir, $(dir $($1_filename))) \
$(if $(findstring $(LOG_LEVEL), trace), \
$(info NewVariable $1: >$(strip $($1))<) \
$(info OldVariable $1: >$(strip $($1_old))<)) \
$(call WriteFile, $1_old:=$(call DoubleDollar,$(call EscapeHash,$($1))), \
$(call DependOnVariableFileName, $1, $2))) \
$(call DependOnVariableFileName, $1, $2) \
$($1_filename))) \
$($1_filename) \
)
# Main macro

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -63,6 +63,7 @@ BOOT_MODULES += \
jdk.management \
jdk.management.jfr \
jdk.management.agent \
jdk.naming.ldap \
jdk.net \
jdk.sctp \
jdk.unsupported \
@@ -165,6 +166,7 @@ DOCS_MODULES += \
jdk.management.agent \
jdk.management.jfr \
jdk.naming.dns \
jdk.naming.ldap \
jdk.naming.rmi \
jdk.net \
jdk.pack \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -59,6 +59,29 @@ define GetSymbols
fi
endef
################################################################################
# Creates a recipe that creates a compile_commands.json fragment. Remove any
# occurences of FIXPATH programs from the command to show the actual invocation.
#
# Param 1: Name of file to create
# Param 2: Working directory
# Param 3: Source file
# Param 4: Compile command
# Param 5: Object name
################################################################################
define WriteCompileCommandsFragment
$(call LogInfo, Creating compile commands fragment for $(notdir $3))
$(call MakeDir, $(dir $1))
$(call WriteFile,{ \
"directory": "$(strip $2)"$(COMMA) \
"file": "$(strip $3)"$(COMMA) \
"command": "$(strip $(subst $(DQUOTE),\$(DQUOTE),$(subst \,\\,\
$(subst $(FIXPATH),,$4))))"$(COMMA) \
"output": "$(strip $5)" \
}$(COMMA), \
$1)
endef
################################################################################
# Define a native toolchain configuration that can be used by
# SetupNativeCompilation calls
@@ -183,6 +206,81 @@ DEPENDENCY_TARGET_SED_PATTERN := \
-e 's/$$$$/ :/' \
#
################################################################################
# When absolute paths are not allowed in the output, and the compiler does not
# support any options to avoid it, we need to rewrite compile commands to use
# relative paths. By doing this, the __FILE__ macro will resolve to relative
# paths. The relevant input paths on the command line are the -I flags and the
# path to the source file itself.
#
# The macro MakeCommandRelative is used to rewrite the command line like this:
# 'CD $(WORKSPACE_ROOT) && <cmd>'
# and changes all paths in cmd to be relative to the workspace root. This only
# works properly if the build dir is inside the workspace root. If it's not,
# relative paths are still calculated, but depending on the distance between the
# dirs, paths in the build dir may end up as essentially absolute anyway.
#
# The fix-deps-file macro is used to adjust the contents of the generated make
# dependency files to contain paths compatible with make.
#
ifeq ($(ALLOW_ABSOLUTE_PATHS_IN_OUTPUT)-$(FILE_MACRO_CFLAGS), false-)
# Need to handle -I flags as both '-Ifoo' and '-I foo'.
MakeCommandRelative = \
$(CD) $(WORKSPACE_ROOT) && \
$(foreach o, $1, \
$(if $(filter $(WORKSPACE_ROOT)/% $(OUTPUTDIR)/%, $o), \
$(call RelativePath, $o, $(WORKSPACE_ROOT)) \
, \
$(if $(filter -I$(WORKSPACE_ROOT)/%, $o), \
-I$(call RelativePath, $(patsubst -I%, %, $o), $(WORKSPACE_ROOT)) \
, \
$o \
) \
) \
)
# When compiling with relative paths, the deps file comes out with relative
# paths.
ifeq ($(TOOLCHAIN_TYPE), solstudio)
define fix-deps-file
$(SED) -e 's|\./|$(WORKSPACE_ROOT)/|g' $1.tmp > $1
endef
else
define fix-deps-file
$(SED) -e 's|^\([ ]*\)|\1$(WORKSPACE_ROOT)|' $1.tmp > $1
endef
endif
else
# By default the MakeCommandRelative macro does nothing.
MakeCommandRelative = $1
# Even with absolute paths on the command line, the Solaris studio compiler
# doesn't output the full path to the object file in the generated deps files.
# For other toolchains, no adjustment is needed.
ifeq ($(TOOLCHAIN_TYPE), solstudio)
define fix-deps-file
$(SED) 's|^$$(@F):|$$@:|' $1.tmp > $1
endef
else
define fix-deps-file
$(MV) $1.tmp $1
endef
endif
endif
################################################################################
# GetEntitlementsFile
# Find entitlements file for executable when signing on macosx. If no
# specialized file is found, returns the default file.
# $1 Executable to find entitlements file for.
ENTITLEMENTS_DIR := $(TOPDIR)/make/data/macosxsigning
DEFAULT_ENTITLEMENTS_FILE := $(ENTITLEMENTS_DIR)/default.plist
GetEntitlementsFile = \
$(foreach f, $(ENTITLEMENTS_DIR)/$(strip $(notdir $1)).plist, \
$(if $(wildcard $f), $f, $(DEFAULT_ENTITLEMENTS_FILE)) \
)
################################################################################
# Create the recipe needed to compile a single native source file.
#
@@ -193,7 +291,6 @@ DEPENDENCY_TARGET_SED_PATTERN := \
# Remaining parameters are named arguments:
# FILE - The full path of the source file to compiler
# BASE - The name of the rule for the entire binary to build ($1)
# DISABLE_THIS_FILE_DEFINE - Set to true to disable the THIS_FILE define.
#
SetupCompileNativeFile = $(NamedParamsMacroTemplate)
define SetupCompileNativeFileBody
@@ -203,17 +300,18 @@ define SetupCompileNativeFileBody
$1_OBJ := $$($$($1_BASE)_OBJECT_DIR)/$$(call replace_with_obj_extension, \
$$($1_FILENAME))
# Generate the corresponding compile_commands.json fragment.
$1_OBJ_JSON = $$(MAKESUPPORT_OUTPUTDIR)/compile-commands/$$(subst /,_,$$(subst \
$$(OUTPUTDIR)/,,$$($1_OBJ))).json
$$($1_BASE)_ALL_OBJS_JSON += $$($1_OBJ_JSON)
# Only continue if this object file hasn't been processed already. This lets
# the first found source file override any other with the same name.
ifeq ($$(findstring $$($1_OBJ), $$($$($1_BASE)_OBJS_SO_FAR)), )
$$($1_BASE)_OBJS_SO_FAR += $$($1_OBJ)
ifeq ($$($1_OBJ_PROCESSED), )
$1_OBJ_PROCESSED := true
# This is the definite source file to use for $1_FILENAME.
$1_SRC_FILE := $$($1_FILE)
ifneq ($$($1_DISABLE_THIS_FILE_DEFINE), true)
$1_THIS_FILE = -DTHIS_FILE='"$$(<F)"'
endif
ifeq ($$($1_OPTIMIZATION), )
$1_OPT_CFLAGS := $$($$($1_BASE)_OPT_CFLAGS)
$1_OPT_CXXFLAGS := $$($$($1_BASE)_OPT_CXXFLAGS)
@@ -256,13 +354,13 @@ define SetupCompileNativeFileBody
ifneq ($$(filter %.c, $$($1_FILENAME)), )
# Compile as a C file
$1_FLAGS := $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) $$($1_BASE_CFLAGS) \
$$($1_OPT_CFLAGS) $$($1_CFLAGS) $$($1_THIS_FILE) -c
$$($1_OPT_CFLAGS) $$($1_CFLAGS) -c
$1_COMPILER := $$($$($1_BASE)_CC)
$1_DEP_FLAG := $(C_FLAG_DEPS)
else ifneq ($$(filter %.m, $$($1_FILENAME)), )
# Compile as an Objective-C file
$1_FLAGS := -x objective-c $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) \
$$($1_BASE_CFLAGS) $$($1_OPT_CFLAGS) $$($1_CFLAGS) $$($1_THIS_FILE) -c
$$($1_BASE_CFLAGS) $$($1_OPT_CFLAGS) $$($1_CFLAGS) -c
$1_COMPILER := $$($$($1_BASE)_CC)
$1_DEP_FLAG := $(C_FLAG_DEPS)
else ifneq ($$(filter %.s %.S, $$($1_FILENAME)), )
@@ -273,7 +371,7 @@ define SetupCompileNativeFileBody
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) \
$$($1_OPT_CXXFLAGS) $$($1_CXXFLAGS) $$($1_THIS_FILE) -c
$$($1_OPT_CXXFLAGS) $$($1_CXXFLAGS) -c
$1_COMPILER := $$($$($1_BASE)_CXX)
$1_DEP_FLAG := $(CXX_FLAG_DEPS)
else
@@ -282,14 +380,18 @@ define SetupCompileNativeFileBody
ifeq ($$(filter %.s %.S, $$($1_FILENAME)), )
# And this is the dependency file for this obj file.
$1_DEP := $$(patsubst %$(OBJ_SUFFIX),%.d,$$($1_OBJ))
$1_DEPS_FILE := $$(patsubst %$(OBJ_SUFFIX),%.d,$$($1_OBJ))
# The dependency target file lists all dependencies as empty targets to
# avoid make error "No rule to make target" for removed files
$1_DEP_TARGETS := $$(patsubst %$(OBJ_SUFFIX),%.d.targets,$$($1_OBJ))
$1_DEPS_TARGETS_FILE := $$(patsubst %$(OBJ_SUFFIX),%.d.targets,$$($1_OBJ))
# Include previously generated dependency information. (if it exists)
-include $$($1_DEP)
-include $$($1_DEP_TARGETS)
# Only try to load individual dependency information files if the global
# file hasn't been loaded (could happen if make was interrupted).
ifneq ($$($$($1_BASE)_DEPS_FILE_LOADED), true)
# Include previously generated dependency information. (if it exists)
-include $$($1_DEPS_FILE)
-include $$($1_DEPS_TARGETS_FILE)
endif
endif
ifneq ($$(strip $$($1_CFLAGS) $$($1_CXXFLAGS) $$($1_OPTIMIZATION)), )
@@ -297,28 +399,29 @@ define SetupCompileNativeFileBody
$1_VARDEPS_FILE := $$(call DependOnVariable, $1_VARDEPS, $$($1_OBJ).vardeps)
endif
$$($1_OBJ): $$($1_SRC_FILE) $$($$($1_BASE)_COMPILE_VARDEPS_FILE) \
$$($$($1_BASE)_EXTRA_DEPS) $$($1_VARDEPS_FILE) | $$($$($1_BASE)_BUILD_INFO)
$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)
$$($1_OBJ_JSON): $$($1_OBJ_DEPS)
$$(call WriteCompileCommandsFragment, $$@, $$(PWD), $$($1_SRC_FILE), \
$$($1_COMPILER) $$($1_COMPILE_OPTIONS), $$($1_OBJ))
$$($1_OBJ): $$($1_OBJ_DEPS) | $$($$($1_BASE)_BUILD_INFO)
$$(call LogInfo, Compiling $$($1_FILENAME) (for $$($$($1_BASE)_BASENAME)))
$$(call MakeDir, $$(@D))
ifneq ($(TOOLCHAIN_TYPE), microsoft)
ifeq ($(TOOLCHAIN_TYPE)$$(filter %.s, $$($1_FILENAME)), solstudio)
# The Solaris studio compiler doesn't output the full path to the
# object file in the generated deps files. Fixing it with sed. If
# compiling assembly, don't try this.
$$(call ExecuteWithLog, $$@, \
$$($1_COMPILER) $$($1_FLAGS) $$($1_DEP_FLAG) $$($1_DEP).tmp \
$(CC_OUT_OPTION)$$($1_OBJ) $$($1_SRC_FILE))
$(SED) 's|^$$(@F):|$$@:|' $$($1_DEP).tmp > $$($1_DEP)
else
$$(call ExecuteWithLog, $$@, \
$$($1_COMPILER) $$($1_FLAGS) $$($1_DEP_FLAG) $$($1_DEP) \
$(CC_OUT_OPTION)$$($1_OBJ) $$($1_SRC_FILE))
endif
# Create a dependency target file from the dependency file.
# Solution suggested by http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/
ifneq ($$($1_DEP), )
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEP) > $$($1_DEP_TARGETS)
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_COMPILER) $$($1_DEP_FLAG) \
$$(addsuffix .tmp, $$($1_DEPS_FILE)) \
$$($1_COMPILE_OPTIONS)))
ifneq ($$($1_DEPS_FILE), )
$$(call fix-deps-file, $$($1_DEPS_FILE))
# Create a dependency target file from the dependency file.
# Solution suggested by:
# http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEPS_FILE) \
> $$($1_DEPS_TARGETS_FILE)
endif
else
# The Visual Studio compiler lacks a feature for generating make
@@ -328,15 +431,15 @@ define SetupCompileNativeFileBody
# Keep as much as possible on one execution line for best performance
# on Windows. No need to save exit code from compilation since
# pipefail is always active on Windows.
$$(call ExecuteWithLog, $$@, \
$$($1_COMPILER) $$($1_FLAGS) -showIncludes \
$(CC_OUT_OPTION)$$($1_OBJ) $$($1_SRC_FILE)) \
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_COMPILER) -showIncludes $$($1_COMPILE_OPTIONS))) \
| $(TR) -d '\r' | $(GREP) -v -e "^Note: including file:" \
-e "^$$($1_FILENAME)$$$$" || test "$$$$?" = "1" ; \
$(ECHO) $$@: \\ > $$($1_DEP) ; \
$(ECHO) $$@: \\ > $$($1_DEPS_FILE) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_OBJ).log \
| $(SORT) -u >> $$($1_DEP) ; \
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEP) > $$($1_DEP_TARGETS)
| $(SORT) -u >> $$($1_DEPS_FILE) ; \
$(ECHO) >> $$($1_DEPS_FILE) ; \
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEPS_FILE) > $$($1_DEPS_TARGETS_FILE)
endif
endif
endef
@@ -415,6 +518,28 @@ define SetupNativeCompilationBody
endif
endif
$$(call SetIfEmpty, $1_COMPILE_WITH_DEBUG_SYMBOLS, $$(COMPILE_WITH_DEBUG_SYMBOLS))
# STATIC_LIBS is set from Main.gmk when building static versions of certain
# native libraries.
ifeq ($(STATIC_LIBS), true)
$1_TYPE := STATIC_LIBRARY
# The static versions need to be redirected to different output dirs, both
# to not interfere with the main build as well as to not end up inside the
# jmods.
$1_OBJECT_DIR := $$($1_OBJECT_DIR)/static
$1_OUTPUT_DIR := $$($1_OBJECT_DIR)
# For release builds where debug symbols are configured to be moved to
# separate debuginfo files, disable debug symbols for static libs instead.
# We don't currently support this configuration and we don't want symbol
# information in release builds unless explicitly asked to provide it.
ifeq ($(DEBUG_LEVEL), release)
ifeq ($(COPY_DEBUG_SYMBOLS), true)
$1_COMPILE_WITH_DEBUG_SYMBOLS := false
endif
endif
endif
ifeq ($$($1_TYPE), EXECUTABLE)
$1_PREFIX :=
ifeq ($$($1_SUFFIX), )
@@ -456,6 +581,9 @@ define SetupNativeCompilationBody
$1_NOSUFFIX := $$($1_PREFIX)$$($1_NAME)
$1_SAFE_NAME := $$(strip $$(subst /,_, $1))
# Need to make sure TARGET is first on list
$1 := $$($1_TARGET)
# Setup the toolchain to be used
$$(call SetIfEmpty, $1_TOOLCHAIN, TOOLCHAIN_DEFAULT)
$$(call SetIfEmpty, $1_CC, $$($$($1_TOOLCHAIN)_CC))
@@ -476,7 +604,7 @@ define SetupNativeCompilationBody
$$(error SRC specified to SetupNativeCompilation $1 contains missing directory $$d)))
# Find all files in the source trees. Preserve order.
$1_SRCS := $$(foreach s, $$($1_SRC), $$(call CacheFind, $$(s)))
$1_SRCS := $$(foreach s, $$($1_SRC), $$(call FindFiles, $$(s)))
$1_SRCS := $$(filter $$(NATIVE_SOURCE_EXTENSIONS), $$($1_SRCS))
# Extract the C/C++ files.
ifneq ($$($1_EXCLUDE_PATTERNS), )
@@ -550,6 +678,9 @@ define SetupNativeCompilationBody
$1_EXTRA_CFLAGS += $$($1_CFLAGS_$(OPENJDK_TARGET_OS)_release)
$1_EXTRA_CFLAGS += $$($1_CFLAGS_$(OPENJDK_TARGET_OS)_$(OPENJDK_TARGET_CPU)_release)
endif
ifeq ($(STATIC_LIBS), true)
$1_EXTRA_CFLAGS += $$(STATIC_LIBS_CFLAGS)
endif
# Pickup extra OPENJDK_TARGET_OS_TYPE and/or OPENJDK_TARGET_OS dependent variables for CXXFLAGS.
$1_EXTRA_CXXFLAGS := $$($1_CXXFLAGS_$(OPENJDK_TARGET_OS_TYPE)) $$($1_CXXFLAGS_$(OPENJDK_TARGET_OS))
@@ -563,6 +694,9 @@ define SetupNativeCompilationBody
$1_EXTRA_CXXFLAGS += $$($1_CXXFLAGS_$(OPENJDK_TARGET_OS_TYPE)_release)
$1_EXTRA_CXXFLAGS += $$($1_CXXFLAGS_$(OPENJDK_TARGET_OS)_release)
endif
ifeq ($(STATIC_LIBS), true)
$1_EXTRA_CXXFLAGS += $$(STATIC_LIB_CFLAGS)
endif
# If no C++ flags are explicitly set, default to using the C flags.
# After that, we can set additional C++ flags that should not interfere
@@ -574,7 +708,7 @@ define SetupNativeCompilationBody
$1_EXTRA_CXXFLAGS := $$($1_EXTRA_CFLAGS)
endif
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true)
ifeq ($$($1_COMPILE_WITH_DEBUG_SYMBOLS), true)
$1_EXTRA_CFLAGS += $$(CFLAGS_DEBUG_SYMBOLS)
$1_EXTRA_CXXFLAGS += $$(CFLAGS_DEBUG_SYMBOLS)
$1_EXTRA_ASFLAGS += $$(ASFLAGS_DEBUG_SYMBOLS)
@@ -660,7 +794,6 @@ define SetupNativeCompilationBody
FILE := $$($1_GENERATED_PCH_SRC), \
BASE := $1, \
EXTRA_CXXFLAGS := -Fp$$($1_PCH_FILE) -Yc$$(notdir $$($1_PRECOMPILED_HEADER)), \
DISABLE_THIS_FILE_DEFINE := true, \
))
$1_USE_PCH_FLAGS := \
@@ -683,27 +816,65 @@ define SetupNativeCompilationBody
$1_PCH_FILE := $$($1_OBJECT_DIR)/precompiled/$$(notdir $$($1_PRECOMPILED_HEADER)).pch
$1_USE_PCH_FLAGS := -include-pch $$($1_PCH_FILE)
endif
$1_PCH_DEP := $$($1_PCH_FILE).d
$1_PCH_DEP_TARGETS := $$($1_PCH_FILE).d.targets
$1_PCH_DEPS_FILE := $$($1_PCH_FILE).d
$1_PCH_DEPS_TARGETS_FILE := $$($1_PCH_FILE).d.targets
-include $$($1_PCH_DEP)
-include $$($1_PCH_DEP_TARGETS)
-include $$($1_PCH_DEPS_FILE)
-include $$($1_PCH_DEPS_TARGETS_FILE)
$1_PCH_COMMAND := $$($1_CC) $$($1_CFLAGS) $$($1_EXTRA_CFLAGS) $$($1_SYSROOT_CFLAGS) \
$$($1_OPT_CFLAGS) -x c++-header -c $(C_FLAG_DEPS) $$($1_PCH_DEPS_FILE)
$$($1_PCH_FILE): $$($1_PRECOMPILED_HEADER) $$($1_COMPILE_VARDEPS_FILE)
$$(call LogInfo, Generating precompiled header)
$$(call MakeDir, $$(@D))
$$(call ExecuteWithLog, $$@, \
$$($1_CC) $$($1_CFLAGS) $$($1_EXTRA_CFLAGS) $$($1_SYSROOT_CFLAGS) \
$$($1_OPT_CFLAGS) \
-x c++-header -c $(C_FLAG_DEPS) $$($1_PCH_DEP) $$< -o $$@)
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_PCH_DEP) > $$($1_PCH_DEP_TARGETS)
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_PCH_COMMAND) $$< -o $$@))
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_PCH_DEPS_FILE) \
> $$($1_PCH_DEPS_TARGETS_FILE)
$$($1_ALL_OBJS): $$($1_PCH_FILE)
# Generate the corresponding compile_commands.json fragment.
$1_PCH_FILE_JSON := $$(MAKESUPPORT_OUTPUTDIR)/compile-commands/$$(subst /,_,$$(subst \
$$(OUTPUTDIR)/,,$$($1_PCH_FILE))).json
$1_ALL_OBJS_JSON += $$($1_PCH_FILE_JSON)
$$($1_PCH_FILE_JSON): $$($1_PRECOMPILED_HEADER) $$($1_COMPILE_VARDEPS_FILE)
$$(call WriteCompileCommandsFragment, $$@, $$(PWD), $$<, \
$$($1_PCH_COMMAND) $$< -o $$($1_PCH_FILE), $$($1_PCH_FILE))
endif
endif
endif
# Create a rule to collect all the individual make dependency files into a
# single makefile.
$1_DEPS_FILE := $$($1_OBJECT_DIR)/$1.d
$$($1_DEPS_FILE): $$($1_ALL_OBJS)
$(RM) $$@
# CD into dir to reduce risk of hitting command length limits, which
# could otherwise happen if TOPDIR is a very long path.
$(CD) $$($1_OBJECT_DIR) && $(CAT) *.d > $$@.tmp
$(CD) $$($1_OBJECT_DIR) && $(CAT) *.d.targets | $(SORT) -u >> $$@.tmp
# After generating the file, which happens after all objects have been
# compiled, copy it to .old extension. On the next make invocation, this
# .old file will be included by make.
$(CP) $$@.tmp $$@.old
$(MV) $$@.tmp $$@
$1 += $$($1_DEPS_FILE)
# The include must be on the .old file, which represents the state from the
# previous invocation of make. The file being included must not have a rule
# defined for it as otherwise make will think it has to run the rule before
# being able to include the file, which would be wrong since we specifically
# need the file as it was generated by a previous make invocation.
ifneq ($$(wildcard $$($1_DEPS_FILE).old), )
$1_DEPS_FILE_LOADED := true
-include $$($1_DEPS_FILE).old
endif
# Now call SetupCompileNativeFile for each source file we are going to compile.
$$(foreach file, $$($1_SRCS), \
$$(eval $$(call SetupCompileNativeFile, $1_$$(notdir $$(file)),\
@@ -730,10 +901,10 @@ define SetupNativeCompilationBody
ifeq ($(OPENJDK_TARGET_OS), windows)
ifneq ($$($1_VERSIONINFO_RESOURCE), )
$1_RES := $$($1_OBJECT_DIR)/$$($1_BASENAME).res
$1_RES_DEP := $$($1_RES).d
$1_RES_DEP_TARGETS := $$($1_RES).d.targets
-include $$($1_RES_DEP)
-include $$($1_RES_DEP_TARGETS)
$1_RES_DEPS_FILE := $$($1_RES).d
$1_RES_DEPS_TARGETS_FILE := $$($1_RES).d.targets
-include $$($1_RES_DEPS_FILE)
-include $$($1_RES_DEPS_TARGETS_FILE)
$1_RES_VARDEPS := $$($1_RC) $$($1_RC_FLAGS)
$1_RES_VARDEPS_FILE := $$(call DependOnVariable, $1_RES_VARDEPS, \
@@ -742,24 +913,27 @@ define SetupNativeCompilationBody
$$($1_RES): $$($1_VERSIONINFO_RESOURCE) $$($1_RES_VARDEPS_FILE)
$$(call LogInfo, Compiling resource $$(notdir $$($1_VERSIONINFO_RESOURCE)) (for $$($1_BASENAME)))
$$(call MakeDir, $$(@D) $$($1_OBJECT_DIR))
$$(call ExecuteWithLog, $$@, \
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_RC) $$($1_RC_FLAGS) $$($1_SYSROOT_CFLAGS) $(CC_OUT_OPTION)$$@ \
$$($1_VERSIONINFO_RESOURCE) 2>&1 )
$$($1_VERSIONINFO_RESOURCE) 2>&1 ))
# Windows RC compiler does not support -showIncludes, so we mis-use CL
# for this. Filter out RC specific arguments that are unknown to CL.
# For some unknown reason, in this case CL actually outputs the show
# includes to stderr so need to redirect it to hide the output from the
# main log.
$$(call ExecuteWithLog, $$($1_RES_DEP).obj, \
$$(call ExecuteWithLog, $$($1_RES_DEPS_FILE).obj, \
$$($1_CC) $$(filter-out -l%, $$($1_RC_FLAGS)) \
$$($1_SYSROOT_CFLAGS) -showIncludes -nologo -TC \
$(CC_OUT_OPTION)$$($1_RES_DEP).obj -P -Fi$$($1_RES_DEP).pp \
$(CC_OUT_OPTION)$$($1_RES_DEPS_FILE).obj -P -Fi$$($1_RES_DEPS_FILE).pp \
$$($1_VERSIONINFO_RESOURCE)) 2>&1 \
| $(TR) -d '\r' | $(GREP) -v -e "^Note: including file:" \
-e "^$$(notdir $$($1_VERSIONINFO_RESOURCE))$$$$" || test "$$$$?" = "1" ; \
$(ECHO) $$($1_RES): \\ > $$($1_RES_DEP) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_RES_DEP).obj.log >> $$($1_RES_DEP) ; \
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_RES_DEP) > $$($1_RES_DEP_TARGETS)
$(ECHO) $$($1_RES): \\ > $$($1_RES_DEPS_FILE) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_RES_DEPS_FILE).obj.log \
>> $$($1_RES_DEPS_FILE) ; \
$(ECHO) >> $$($1_RES_DEPS_FILE) ;\
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_RES_DEPS_FILE) \
> $$($1_RES_DEPS_TARGETS_FILE)
endif
endif
@@ -786,9 +960,6 @@ define SetupNativeCompilationBody
$1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE))
endif
# Need to make sure TARGET is first on list
$1 := $$($1_TARGET)
ifneq ($$($1_COPY_DEBUG_SYMBOLS), false)
$1_COPY_DEBUG_SYMBOLS := $(COPY_DEBUG_SYMBOLS)
endif
@@ -805,6 +976,9 @@ define SetupNativeCompilationBody
ifeq ($(OPENJDK_TARGET_OS), windows)
$1_EXTRA_LDFLAGS += -debug "-pdb:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb" \
"-map:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map"
ifeq ($(SHIP_DEBUG_SYMBOLS), public)
$1_EXTRA_LDFLAGS += "-pdbstripped:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).stripped.pdb"
endif
$1_DEBUGINFO_FILES := $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb \
$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map
@@ -936,7 +1110,7 @@ define SetupNativeCompilationBody
$1_VARDEPS := $$($1_LD) $$($1_SYSROOT_LDFLAGS) $$($1_LDFLAGS) $$($1_EXTRA_LDFLAGS) \
$$(GLOBAL_LIBS) $$($1_LIBS) $$($1_EXTRA_LIBS) $$($1_MT) \
$$($1_CODESIGN) $$($1_CREATE_DEBUGINFO_CMDS) $$($1_MANIFEST_VERSION) \
$$($1_CREATE_DEBUGINFO_CMDS) $$($1_MANIFEST_VERSION) \
$$($1_STRIP_CMD)
$1_VARDEPS_FILE := $$(call DependOnVariable, $1_VARDEPS, \
$$($1_OBJECT_DIR)/$$($1_NOSUFFIX).vardeps)
@@ -1015,11 +1189,14 @@ define SetupNativeCompilationBody
# This only works if the openjdk_codesign identity is present on the system. Let
# silently fail otherwise.
ifneq ($(CODESIGN), )
ifneq ($$($1_CODESIGN), )
$(CODESIGN) -s openjdk_codesign $$@
endif
$(CODESIGN) -f -s "$(MACOSX_CODESIGN_IDENTITY)" --timestamp --options runtime \
--entitlements $$(call GetEntitlementsFile, $$@) $$@
endif
endif
ifeq ($(GENERATE_COMPILE_COMMANDS_ONLY), true)
$1 := $$($1_ALL_OBJS_JSON)
endif
endef
endif # _NATIVE_COMPILATION_GMK

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2015, 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
@@ -75,7 +75,7 @@ define SetupTestFilesCompilationBody
# Locate all files with the matching prefix
$1_FILE_LIST := \
$$(shell $$(FIND) $$($1_SOURCE_DIRS) -type f -name "$$($1_PREFIX)*.c")
$$(call FindFiles, $$($1_SOURCE_DIRS), $$($1_PREFIX)*.c)
$1_EXCLUDE_PATTERN := $$(addprefix %/, $$($1_EXCLUDE))
$1_FILTERED_FILE_LIST := $$(filter-out $$($1_EXCLUDE_PATTERN), $$($1_FILE_LIST))

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2013, 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
@@ -103,7 +103,7 @@ define SetupTextFileProcessingBody
$$(error SOURCE_DIRS contains directory $$(src) outside \
SOURCE_BASE_DIR $$($1_SOURCE_BASE_DIR) (in $1))))
endif
$1_SOURCE_FILES := $$(sort $$(call CacheFind,$$($1_SOURCE_DIRS)))
$1_SOURCE_FILES := $$(sort $$(call FindFiles,$$($1_SOURCE_DIRS)))
$1_EXCLUDE_FILES:=$$(foreach i,$$($1_SOURCE_DIRS),$$(addprefix $$i/,$$($1_EXCLUDE_FILES)))
$1_INCLUDE_FILES:=$$(foreach i,$$($1_SOURCE_DIRS),$$(addprefix $$i/,$$($1_INCLUDE_FILES)))
$1_SOURCE_FILES := $$(filter-out $$($1_EXCLUDE_FILES),$$($1_SOURCE_FILES))
@@ -155,9 +155,10 @@ define SetupTextFileProcessingBody
# Convert the REPLACEMENTS syntax ( A => B ; C => D ; ...) to a sed command
# line (-e "s/A/B/g" -e "s/C/D/g" ...), basically by replacing '=>' with '/'
# and ';' with '/g" -e "s/', and adjusting for edge cases.
# '&' has special meaning in sed so needs to be escaped.
$1_REPLACEMENTS_COMMAND_LINE := $(SED) -e 's$$($1_SEP)$$(subst $$(SPACE);$$(SPACE),$$($1_SEP)g' \
-e 's$$($1_SEP),$$(subst $$(SPACE)=>$$(SPACE),$$($1_SEP),$$(subst $$(SPACE)=>$$(SPACE);$$(SPACE),$$($1_SEP)$$($1_SEP)g' \
-e 's$$($1_SEP),$$(strip $$($1_REPLACEMENTS)))))$$($1_SEP)g'
-e 's$$($1_SEP),$$(subst &,\&,$$(strip $$($1_REPLACEMENTS))))))$$($1_SEP)g'
else
# We don't have any replacements, just pipe the file through cat.
$1_REPLACEMENTS_COMMAND_LINE := $(CAT)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -48,6 +48,8 @@ endif
# src dir
# SUFFIXES
# EXTRA_DEPS
# FOLLOW_SYMLINKS - Set to explicitly follow symlinks. Affects performance of
# finding files.
# ZIP_OPTIONS extra options to pass to zip
SetupZipArchive = $(NamedParamsMacroTemplate)
define SetupZipArchiveBody
@@ -63,7 +65,13 @@ define SetupZipArchiveBody
endif
# Find all files in the source tree.
$1_ALL_SRCS := $$(call not-containing,_the.,$$(call CacheFind,$$($1_FIND_LIST)))
# If asked to, follow symlinks in this find since that is what zip does. To do
# this, we need to call ShellFindFiles directly.
ifeq ($$($1_FOLLOW_SYMLINKS), true)
$1_ALL_SRCS := $$(call not-containing,_the.,$$(call ShellFindFiles,$$($1_FIND_LIST), , -L))
else
$1_ALL_SRCS := $$(call not-containing,_the.,$$(call FindFiles,$$($1_FIND_LIST)))
endif
# Filter on suffixes if set
ifneq ($$($1_SUFFIXES),)

View File

@@ -240,7 +240,7 @@ var getJibProfilesCommon = function (input, data) {
// These are the base setttings for all the main build profiles.
common.main_profile_base = {
dependencies: ["boot_jdk", "gnumake", "jtreg", "jib", "autoconf"],
default_make_targets: ["product-bundles", "test-bundles"],
default_make_targets: ["product-bundles", "test-bundles", "static-libs-bundles"],
configure_args: concat(["--enable-jtreg-failure-handler"],
"--with-exclude-translations=de,es,fr,it,ko,pt_BR,sv,ca,tr,cs,sk,ja_JP_A,ja_JP_HA,ja_JP_HI,ja_JP_I,zh_TW,zh_HK",
"--disable-manpages",
@@ -312,6 +312,14 @@ var getJibProfilesCommon = function (input, data) {
subdir: jdk_subdir,
exploded: "images/jdk"
},
static_libs: {
local: "bundles/\\(jdk.*bin-static-libs.tar.gz\\)",
remote: [
"bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-static-libs.tar.gz",
"bundles/" + pf + "/\\1"
],
subdir: jdk_subdir,
},
}
};
};
@@ -353,6 +361,14 @@ var getJibProfilesCommon = function (input, data) {
subdir: jdk_subdir,
exploded: "images/jdk"
},
static_libs: {
local: "bundles/\\(jdk.*bin-static-libs-debug.tar.gz\\)",
remote: [
"bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-static-libs-debug.tar.gz",
"bundles/" + pf + "/\\1"
],
subdir: jdk_subdir,
},
}
};
};
@@ -522,7 +538,7 @@ var getJibProfilesProfiles = function (input, common, data) {
.forEach(function (name) {
var maketestName = name + "-testmake";
profiles[maketestName] = concatObjects(profiles[name], testmakeBase);
profiles[maketestName].default_make_targets = [ "test-make" ];
profiles[maketestName].default_make_targets = [ "test-make", "test-compile-commands" ];
});
// Profiles for building the zero jvm variant. These are used for verification.
@@ -747,16 +763,16 @@ var getJibProfilesProfiles = function (input, common, data) {
"run-test-prebuilt": {
target_os: input.build_os,
target_cpu: input.build_cpu,
src: "src.conf",
dependencies: [ "jtreg", "gnumake", "boot_jdk", "jib", testedProfile + ".jdk",
testedProfile + ".test", "src.full"
dependencies: [
"jtreg", "gnumake", "boot_jdk", "devkit", "jib", testedProfile + ".jdk",
testedProfile + ".test"
],
work_dir: input.get("src.full", "install_path") + "/test",
src: "src.conf",
make_args: [ "run-test-prebuilt", "LOG_CMDLINES=true" ],
environment: {
"JT_JAVA": common.boot_jdk_home,
"PRODUCT_HOME": input.get(testedProfile + ".jdk", "home_path"),
"TEST_IMAGE_DIR": input.get(testedProfile + ".test", "home_path"),
"TEST_OUTPUT_DIR": input.src_top_dir
"BOOT_JDK": common.boot_jdk_home,
"JDK_IMAGE_DIR": input.get(testedProfile + ".jdk", "home_path"),
"TEST_IMAGE_DIR": input.get(testedProfile + ".test", "home_path")
},
labels: "test"
}
@@ -782,7 +798,6 @@ var getJibProfilesProfiles = function (input, common, data) {
// This gives us a guaranteed working version of lldb for the jtreg failure handler.
if (input.build_os == "macosx") {
macosxRunTestExtra = {
dependencies: [ "devkit" ],
environment_path: input.get("devkit", "install_path")
+ "/Xcode.app/Contents/Developer/usr/bin"
};
@@ -794,13 +809,34 @@ var getJibProfilesProfiles = function (input, common, data) {
windowsRunTestPrebuiltExtra = {
dependencies: [ testedProfile + ".jdk_symbols" ],
environment: {
"PRODUCT_SYMBOLS_HOME": input.get(testedProfile + ".jdk_symbols", "home_path"),
"SYMBOLS_IMAGE_DIR": input.get(testedProfile + ".jdk_symbols", "home_path"),
}
};
profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"],
windowsRunTestPrebuiltExtra);
}
// The profile run-test-prebuilt defines src.conf as the src bundle. When
// running in Mach 5, this reduces the time it takes to populate the
// considerably. But with just src.conf, we cannot actually run any tests,
// so if running from a workspace with just src.conf in it, we need to also
// get src.full as a dependency, and define the work_dir (where make gets
// run) to be in the src.full install path. By running in the install path,
// the same cached installation of the full src can be reused for multiple
// test tasks. Care must however be taken not to polute that work dir by
// setting the appropriate make variables to control output directories.
//
// Use the existance of the top level README as indication of if this is
// the full source or just src.conf.
if (!new java.io.File(__DIR__, "../../README").exists()) {
var runTestPrebuiltSrcFullExtra = {
dependencies: "src.full",
work_dir: input.get("src.full", "install_path"),
}
profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"],
runTestPrebuiltSrcFullExtra);
}
// Generate the missing platform attributes
profiles = generatePlatformAttributes(profiles);
profiles = generateDefaultMakeTargetsConfigureArg(common, profiles);
@@ -821,14 +857,14 @@ var getJibProfilesDependencies = function (input, common) {
macosx_x64: "Xcode9.4-MacOSX10.13+1.0",
solaris_x64: "SS12u4-Solaris11u1+1.0",
solaris_sparcv9: "SS12u4-Solaris11u1+1.1",
windows_x64: "VS2017-15.5.5+1.0",
windows_x64: "VS2017-15.9.16+1.0",
linux_aarch64: (input.profile != null && input.profile.indexOf("arm64") >= 0
? "gcc-linaro-aarch64-linux-gnu-4.8-2013.11_linux+1.0"
: "gcc7.3.0-Fedora27+1.0"),
: "gcc7.3.0-Fedora27+1.1"),
linux_arm: (input.profile != null && input.profile.indexOf("hflt") >= 0
? "gcc-linaro-arm-linux-gnueabihf-raspbian-2012.09-20120921_linux+1.0"
: (input.profile.indexOf("arm32") >= 0
? "gcc7.3.0-Fedora27+1.0"
: (input.profile != null && input.profile.indexOf("arm32") >= 0
? "gcc7.3.0-Fedora27+1.1"
: "arm-linaro-4.7+1.0"
)
)
@@ -862,7 +898,10 @@ var getJibProfilesDependencies = function (input, common) {
organization: common.organization,
ext: "tar.gz",
module: "devkit-" + devkit_platform,
revision: devkit_platform_revisions[devkit_platform]
revision: devkit_platform_revisions[devkit_platform],
environment: {
"DEVKIT_HOME": input.get("devkit", "home_path"),
}
},
build_devkit: {
@@ -941,9 +980,9 @@ var getJibProfilesDependencies = function (input, common) {
ext: "zip",
classifier: "distribution",
revision: "3.0-SNAPSHOT",
environment_name: "JIB_JAR",
environment_name: "JIB_HOME",
environment_value: input.get("jib", "install_path")
+ "/jib-3.0-SNAPSHOT-distribution/lib/jib-3.0-SNAPSHOT.jar"
+ "/jib-3.0-SNAPSHOT-distribution"
},
ant: {
@@ -963,14 +1002,6 @@ var getJibProfilesDependencies = function (input, common) {
},
};
// Need to add a value for the Visual Studio tools variable to make
// jaot be able to pick up the Visual Studio linker in testing.
if (input.target_os == "windows") {
dependencies.devkit.environment = {
VS120COMNTOOLS: input.get("devkit", "install_path") + "/Common7/Tools"
};
}
return dependencies;
};
@@ -1152,10 +1183,16 @@ var versionArgs = function(input, common) {
var args = ["--with-version-build=" + common.build_number];
if (input.build_type == "promoted") {
args = concat(args,
// This needs to be changed when we start building release candidates
// with-version-pre must be set to ea for 'ea' and empty for fcs build
"--with-version-pre=",
"--with-version-pre=" + version_numbers.get("DEFAULT_PROMOTED_VERSION_PRE"),
"--without-version-opt");
} else if (input.build_type == "ci") {
var optString = input.build_id_data.ciBuildNumber;
var preString = input.build_id_data.projectName;
if (preString == "jdk") {
preString = version_numbers.get("DEFAULT_PROMOTED_VERSION_PRE");
}
args = concat(args, "--with-version-pre=" + preString,
"--with-version-opt=" + optString);
} else {
args = concat(args, "--with-version-opt=" + common.build_id);
}

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 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
@@ -162,17 +162,17 @@ TARGETS += $(DEF_POLICY_DST)
################################################################################
ifeq ($(CACERTS_FILE), )
CACERTS_FILE := $(TOPDIR)/src/java.base/share/lib/security/cacerts
endif
# CACERTS_FILE is optionally set in configure to override the default cacerts
# which is otherwise generated in Gendata-java.base.gmk
CACERTS_DST := $(LIB_DST_DIR)/security/cacerts
$(CACERTS_DST): $(CACERTS_FILE)
$(call LogInfo, Copying $(patsubst $(OUTPUTDIR)/%, %, $@))
$(call install-file)
TARGETS += $(CACERTS_DST)
ifneq ($(CACERTS_FILE), )
TARGETS += $(CACERTS_DST)
endif
################################################################################

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved.
# 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
@@ -40,7 +40,7 @@ ifneq ($(wildcard $(INCLUDE_SOURCE_DIR)/*), )
$(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE, \
SRC := $(INCLUDE_SOURCE_DIR), \
DEST := $(INCLUDE_TARGET_DIR), \
FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_DIR))), \
FILES := $(filter %.h, $(call FindFiles, $(INCLUDE_SOURCE_DIR))), \
))
TARGETS += $(COPY_EXPORTED_INCLUDE)
@@ -56,7 +56,7 @@ ifneq ($(wildcard $(INCLUDE_SOURCE_OS_DIR)/*), )
$(eval $(call SetupCopyFiles, COPY_EXPORTED_INCLUDE_OS, \
SRC := $(INCLUDE_SOURCE_OS_DIR), \
DEST := $(INCLUDE_TARGET_DIR)/$(OPENJDK_TARGET_OS_INCLUDE_SUBDIR), \
FILES := $(filter %.h, $(call CacheFind, $(INCLUDE_SOURCE_OS_DIR))), \
FILES := $(filter %.h, $(call FindFiles, $(INCLUDE_SOURCE_OS_DIR))), \
))
TARGETS += $(COPY_EXPORTED_INCLUDE_OS)

View File

@@ -1,8 +1,7 @@
#! java BlacklistedCertsConverter SHA-256
# The line above must be the first line of the blacklisted.certs.pem
# file inside src/share/lib/security/. It will be ignored if added in
# src/closed/share/lib/security/blacklisted.certs.pem.
# The line above must be the first line of this file. Do not
# remove it.
// Subject: CN=Digisign Server ID (Enrich),
// OU=457608-K,

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