Compare commits

..

1891 Commits

Author SHA1 Message Date
Anton Tarasov
ac7c8f9e1a JBR-3413 use timeout in CAccessibility.invokeAndWait 2021-06-22 16:01:57 +03:00
Anton Tarasov
c3d4a025c2 revert: JBR-1434 "New file dialog" popup remains above all windows on switching application
java.awt.peer.WindowPeer.isLightweightDialog() method does not exist.

(cherry picked from commit 7d8aeaf7de)
2021-06-22 12:24:06 +03:00
Anton Tarasov
31d1975698 JBR-2872 improve: JBR-2866 JCEF: Markdown editor steals focus from a different frame
(cherry picked from commit bad748e3d0)
2021-06-22 12:24:05 +03:00
Anton Tarasov
dabeac2f2b JBR-2866 JCEF: Markdown editor steals focus from a different frame 2021-06-22 12:24:04 +03:00
Anton Tarasov
917bd8d7a0 JBR-2645 enable CefBrowser.close(true) in jcef reg tests
(cherry picked from commit 492c217125)
2021-06-22 12:24:03 +03:00
Anton Tarasov
fb082283f7 JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI
(cherry picked from commit 57bbddf071)
2021-06-22 12:24:02 +03:00
Anton Tarasov
92e60d45e7 JBR-2557 use com.jetbrains.cef.JCefAppConfig in JCEF tests
(cherry picked from commit e30a309f92)
2021-06-22 12:24:01 +03:00
Anton Tarasov
ac52411e43 JBR-2489 Git branch operations (switch to another branch, rebase) sometimes crash WebStorm 202.5428.27
(cherry picked from commit 81d2156fb1)
2021-06-22 12:24:00 +03:00
Anton Tarasov
31a10f7fd2 JBR-2282 [jcef] update to JCEF/80.0.4+g74f7b0c+chromium-80.0.3987.122
(cherry picked from commit a5adc725df)
2021-06-22 12:23:59 +03:00
Anton Tarasov
2a0d448dfe JBR-2305 jcef: jb/java/jcef/JCEFStartupTest.java throws java.lang.ExceptionInInitializerError
(cherry picked from commit f0385f01ec)
2021-06-22 12:23:58 +03:00
Anton Tarasov
d950b20e8e JBR-2306 jcef: jb/java/jcef/JCEFStartupTest.java unexpectedly exits with the exit code: 0
(cherry picked from commit ff7d7bd43c)
2021-06-22 12:23:58 +03:00
Anton Tarasov
028f07c602 JBR-2299 [mac] jcef requests for "chromium safe storage" keychain access
(cherry picked from commit dd1334a352)
2021-06-22 12:23:57 +03:00
Anton Tarasov
4d53c5c088 JBR-2222 Crash during closing IDE
(cherry picked from commit d0c367b31f)
2021-06-22 12:23:56 +03:00
Anton Tarasov
80e73ab764 JBR-2287 [jcef] add CefBrowser wrapper to jtreg tests
(cherry picked from commit fa961d1769)
2021-06-22 12:23:55 +03:00
Anton Tarasov
dc05876817 JBR-2169 AWTThreading: remove tracked invocation event from completion listener
(cherry picked from commit a855f3b835)
2021-06-22 12:23:54 +03:00
Anton Tarasov
a919eeb209 JBR-2159 Native crash in thread AWT-EventQueue-0 when trying to push commit
(cherry picked from commit bba297b4a4)
2021-06-22 12:23:53 +03:00
Anton Tarasov
c004fa0d40 JBR-2148 JCEF: JBR bundle has invalid app structure
(cherry picked from commit f45f84d7ed)
2021-06-22 12:23:52 +03:00
Anton Tarasov
643b5d9de3 JBR-2146 improve InvokeOnToolkitHelper to cover more generic case 2021-06-22 12:23:51 +03:00
Anton Tarasov
2d54aed52b JBR-2139 Idea freeze on dynamic plugin unloading
(cherry picked from commit e57bae4f66)
2021-06-18 22:02:14 +03:00
Anton Tarasov
0fae697d22 JBR-2099 jb/java/jcef/JCEFStartupTest.java fails on Windows, Linux
(cherry picked from commit 3dfb0aa16a)
2021-06-18 22:01:42 +03:00
Anton Tarasov
258a85c681 JBR-2093 create reg test for JCEF startup
(cherry picked from commit e8c2761f5b)
2021-06-18 22:01:17 +03:00
Anton Tarasov
1ac4a803b6 JBR-2082 Revealing taskbar does not work when "Automatically hide the taskbar"
(cherry picked from commit b31a41fb2f)
2021-06-18 22:00:48 +03:00
Maxim Kartashev
5f43886d2d fixup! JBR-1430 (8195129) Windows: use UTF16 version of Win32 API to load DLL 2021-06-18 18:03:18 +03:00
Alexey Ushakov
49dd17a4e6 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

(cherry picked from commit 2c8cdb221b)

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

(cherry picked from commit 95a47810d5)

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

(cherry picked from commit 4c42f75021)
2021-06-18 11:40:34 +07:00
Artem Bochkarev
116eead3b9 JBR-2253: unset LD_PRELOAD just after VM loaded
workaround for JBR-2253 Preload libjsig.so to fix JNA crashes

(cherry picked from commit 127a2deddf)
2021-06-18 07:06:58 +03:00
Kirill Kirichenko
061267777c JBR-1874 Cursor not changing from 'default' to 'text'. Additional fix after reopening.
(cherry picked from commit 5a29d4ade9)
2021-06-18 07:06:57 +03:00
Nikita Gubarkov
36f7b30e39 Add JBR-specific .idea project files 2021-06-18 07:06:55 +03:00
Nikita Gubarkov
203695b2ee Added Clion project setup 2021-06-18 07:06:54 +03:00
Nikita Gubarkov
4b07674296 Updated IDEA project setup 2021-06-18 07:06:53 +03:00
Elena Sayapina
bf05a32fc6 JBR-1388 [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java fails on macOS Mojave
(cherry picked from commit 50b24a147b)
2021-06-18 07:06:51 +03:00
Elena Sayapina
eaaefbe1c1 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

(cherry picked from commit 4deb3bbe61)
2021-06-18 07:06:50 +03:00
Alexey Ushakov
31a581155b 8266079: Lanai: AlphaComposite shows differences on Metal compared to OpenGL
Implemented blit via compute kernel
2021-06-18 07:06:49 +03:00
Denis Konoplev
79541f23be fixup! macOS national keyboard support
Remove unused import that broke compilation
2021-06-18 07:06:48 +03:00
Elena Sayapina
4e6a98cca4 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
(cherry picked from commit 264802cf4b)
2021-06-18 07:06:47 +03:00
Konstantin Aleev
f7335df557 fix memory leaks in AccessibleJTree
(cherry picked from commit 561a7b8def)
2021-06-18 07:06:46 +03:00
Elena Sayapina
3fc77cb4c8 JBR-2328 [TESTBUG] Regression test java/awt/keyboard/AllKeyCode/AllKeyCode.java is not correct
(cherry picked from commit 861f73c393)
(cherry picked from commit bfab6a9364)
(cherry picked from commit e9fa7a0882)
2021-06-18 07:06:45 +03:00
Mikhail Grishchenko
98bc748080 JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI
Added reproducer

(cherry picked from commit e875bf72c9)
2021-06-18 07:06:44 +03:00
Denis Konoplev
7a8979c91d JBR-2490 Add option to work with Surface Pen
(cherry picked from commit 5acc7680a1)
2021-06-18 07:06:43 +03:00
Denis Konoplev
98a23d141d JBR-2669: set unicode for both keyCode and extendedKeyCode
(cherry picked from commit ba3f14c83a)
2021-06-18 07:06:42 +03:00
Denis Konoplev
22063f0c17 JBR-2554: Proper unicode values in KeyEvent.keyCode
(cherry picked from commit 703d77a927)
2021-06-18 07:06:40 +03:00
Denis Konoplev
ee4557383d JBR-215: Remove SystemInfo
(cherry picked from commit 9adf77a512)
2021-06-18 07:06:39 +03:00
Denis Konoplev
30c852cda0 JBR-215: Separate LatinNonAlphaNumKeycodes option
(cherry picked from commit caf366f6f3)
2021-06-18 07:06:38 +03:00
Denis Konoplev
24f745fa2b JBR-215: Windows non-alphanumeric shortcuts
(cherry picked from commit 4f60efebe2)
2021-06-18 07:06:37 +03:00
Denis Konoplev
a71fd1ad71 JBR-2280: Fix regression. Mode compatible with old option.
(cherry picked from commit a3e3c23cb1)
2021-06-18 07:06:36 +03:00
Denis Fokin
ac4040685c macOS national keyboard support 2021-06-18 07:06:35 +03:00
Sergey Malenkov
a131b36216 JBR-1929 FractionalMetricsSupport
(cherry picked from commit bbdc159762)
2021-06-18 07:06:34 +03:00
Mikhail Grishchenko
36683ee07f JBR-2256 JEditorPane with test/html type and zero margins is not shown
Updated reproducer

(cherry picked from commit 529a188b8b)

JBR-2256 JEditorPane with test/html type and zero margins is not shown

Added reproducer

(cherry picked from commit 41578a40b5)
2021-06-18 07:06:33 +03:00
Mikhail Grishchenko
13cb4cc84b JBR-2210 IDEA fails to start (JVM crashes) when using the -Dfile.encoding=UTF-8in IDEA's vmoptions file
Added regression test

(cherry picked from commit 4e1f5a43b3)
2021-06-18 07:06:32 +03:00
Alexey Ushakov
e324c2d800 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.

(cherry picked from commit b51254a975)
2021-06-18 07:06:31 +03:00
Mikhail Grishchenko
a54a1bd9b0 JBR-1414 [Test] downscale frames to run on low-dpi screens
(cherry picked from commit b46e74fe6f)
2021-06-18 07:06:30 +03:00
Elena Sayapina
23276462b4 JBR-1905 [TESBUG] 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.java: decreased test timeout from 2h to 10 min, added minor diagnostic logging

(cherry picked from commit 7f025f4e16)
(cherry picked from commit dda7f3d871)
(cherry picked from commit bc09aadadb)
2021-06-18 07:06:29 +03:00
Alexey Ushakov
ead6ba7c3c 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

(cherry picked from commit cbb148dff4)
2021-06-18 07:06:28 +03:00
Alexey Ushakov
fee24cb87d JBR-2137 JetBrainsMono fonts update to v1.0.3
(cherry picked from commit a6e441828a)
2021-06-18 07:06:27 +03:00
Mikhail Grishchenko
614a62d0a6 JBR-1414: Added regression test for dnd with HiDPI scaling
(cherry picked from commit 1f4ab12fbb)
2021-06-18 07:06:26 +03:00
Elena Sayapina
98e17cdc53 JBR-2041 [TEST] Added new regression test (Touchscreen devices support)
(cherry picked from commit 2d587b3728)
(cherry picked from commit 92606f2c7f)
(cherry picked from commit 05af375909)
(cherry picked from commit 0f895bf1b2)
(cherry picked from commit 08aa0852b7)
2021-06-18 07:06:25 +03:00
Konstantin Bulenkov
821902e031 Update JetBrains Mono to 1.0.2
(cherry picked from commit 6f4a13e46f)
2021-06-18 07:06:24 +03:00
Ivan Migalev
7907ee81a2 Extract the DWM colorization parameters from registry (JBR-2070)
(cherry picked from commit 0330cab60b)
2021-06-18 07:06:22 +03:00
Ivan Migalev
905d9b1faf Refresh desktop properties on WM_DWMCOLORIZATIONCOLORCHANGED (JBR-2070)
(cherry picked from commit 06086f4a7e)
2021-06-18 07:06:21 +03:00
Ivan Migalev
2700bc2fe5 Fix a possible resource leak in ColorizationColorAffectsBorders
(cherry picked from commit 0c911b6ffe)
2021-06-18 07:06:20 +03:00
Elena Sayapina
9983233f3f JBR-2086 JetBrainsMono fonts update to v1.0.1
(cherry picked from commit a4b373e631)
2021-06-18 07:06:19 +03:00
Konstantin Bulenkov
f4808da480 JetBrains Mono 1.0
(cherry picked from commit d514f7a982)
2021-06-18 07:06:18 +03:00
Alexey Ushakov
1f86292168 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

(cherry picked from commit 3368768244)
2021-06-18 07:06:17 +03:00
Denis Konoplev
0b4f613ff3 JBR-3444: Return NullSurfaceData when gc == null
(cherry picked from commit 01ad15e61c)
2021-06-18 07:06:16 +03:00
Denis Konoplev
8b0002b42f JBR-1995: Last character issue with korean
Fix for JTextComponent

(cherry picked from commit a7c8b0b535)
2021-06-18 07:06:15 +03:00
Denis Konoplev
97f52e2e78 JBR-2891: Post PhaseEvents in the begin and end of Magnify and Rotate
(cherry picked from commit c811c295c2)
2021-06-18 07:06:14 +03:00
Denis Konoplev
23fd660232 JBR-2444: Turn on IM workaround by default
(cherry picked from commit 15c4ce1d3e)
2021-06-18 07:06:13 +03:00
Denis Konoplev
41d0b11161 Fix build: add import & fix jwhen 2021-06-18 07:06:12 +03:00
Denis Konoplev
bfa7056529 JBR-2795: Add explicit conversion
(cherry picked from commit bf3e1c0c31)
2021-06-18 07:06:11 +03:00
Denis Konoplev
07ede667ca IDEA-237231: Correct signarute mask
(cherry picked from commit 6974131eec)
2021-06-18 07:06:10 +03:00
Denis Konoplev
c1322f6b1c IDEA-237231: Possible fix for pen interraction
(cherry picked from commit 33a8c95d39)
2021-06-18 07:06:09 +03:00
Denis Konoplev
a505cdc201 JBR-2347: Free memory on other exceptions, rethrow ThreadDead & log it
(cherry picked from commit 16ca839ed3)
2021-06-18 07:06:08 +03:00
Denis Konoplev
f42354c383 JBR-2347: Don't free memory when thread is dead
(cherry picked from commit afb3303db5)
2021-06-18 07:06:07 +03:00
Denis Konoplev
5d87caa45d JBR-2041: Project view tap fix, recovery? constants & logging
(cherry picked from commit 1e904db3b0)
2021-06-18 07:06:05 +03:00
Denis Konoplev
1983d8526d IDEA-229135: Fling animation stop on tap
(cherry picked from commit 7ce0f79561)
2021-06-18 07:06:04 +03:00
Denis Konoplev
75aee6cd58 Windows touch screen support
(cherry picked from commit cab3f28907)
2021-06-18 07:06:03 +03:00
Denis Konoplev
18a7d3daa2 Turn off multitouch
(cherry picked from commit a2576ffa9a)
2021-06-18 07:06:02 +03:00
Denis Konoplev
596510aa82 Check XInput extension && touch inertia
(cherry picked from commit cca7fb97f4)
2021-06-18 07:06:01 +03:00
Denis Konoplev
2a950bdba9 Touch scroll handling
(cherry picked from commit 6dcec3dc31)
2021-06-18 07:06:00 +03:00
Denis Konoplev
709db73e79 XI2 Constants
(cherry picked from commit 588cd6ee73)
2021-06-18 07:05:59 +03:00
Denis Konoplev
1a8991079a XLibWrapper XI2 functions
(cherry picked from commit d6bd1bfa2b)
2021-06-18 07:05:58 +03:00
Denis Konoplev
1be8176c41 X11 native get put double
(cherry picked from commit f101bc1108)
2021-06-18 07:05:57 +03:00
Denis Konoplev
06a79fd91f Native data types
(cherry picked from commit 9504574dbb)
2021-06-18 07:05:56 +03:00
Denis Konoplev
1fa104bacb XI2 headers in xlib wrapper generator
(cherry picked from commit ef108067a1)
2021-06-18 07:05:55 +03:00
Denis Konoplev
11f3c0bb10 Revert "Turn off multitouch"
This reverts commit 90ea3bf57e4c687e9d9bf0a37f2f64c82a81f4eb.
2021-06-18 07:05:54 +03:00
Denis Konoplev
a18060b4e1 Turn off multitouch
(cherry picked from commit a2576ffa9a)
2021-06-18 07:05:53 +03:00
Alexey Ushakov
b1c8e5a0eb JBR-2000 RM 2019.3.1 font rendering regression, normal text is heavier
Added -Djava2d.font.loadFontConfig=bundled to force loading bundled font.conf

(cherry picked from commit 788e078f64)
2021-06-18 07:05:52 +03:00
Alexey Ushakov
166b1b27a4 JBR-1962 Allow to change font config
Replaced several privileged blocks with just one

(cherry picked from commit faa8d3d258)
2021-06-18 07:05:50 +03:00
Vitaly Provodin
5440375c66 JBR-572: Regression test on the crash caused by the fix
(cherry picked from commit 6cc380ffb5)
(cherry picked from commit 958e25ed21)
(cherry picked from commit a7de601d5f)
2021-06-18 07:05:49 +03:00
Dennis Ushakov
2e656563d5 JBR-1863, JBR-1868 correct advances on Catalina 2021-06-18 07:05:48 +03:00
Dennis Ushakov
d87e4e900c JBR-1850: on macOS fonts should be sorted by weight to ensure proper population of the families 2021-06-18 07:05:47 +03:00
Dennis Ushakov
479a96cab7 faster font family loading & lazy font family population
1. NSFont.familyName is faster than loading allFamilyNames
2. Prebuilt list of system fonts
3. Cleanup San Francisco family loading
4. Avoid calling expensive native getWidth on font when creating font family, load styles only when they would be used.
2021-06-18 07:05:46 +03:00
Dennis Ushakov
2af6dcd7dd JBR-1756 use CoreText for all font rendering on Catalina 2021-06-18 07:05:45 +03:00
Nikita Gubarkov
bd1b5ed5ea JBR-410 Added emoji support for Linux 2021-06-18 07:05:44 +03:00
Alexey Ushakov
0245cb524c JBR-1997 JetBrainsMono fonts update to v0.22
(cherry picked from commit 41f4fddd34)
(cherry picked from commit f5302a02f4)
(cherry picked from commit 5d7fd2e1e5)
2021-06-18 07:05:43 +03:00
Anton Tarasov
397175e30d JRE-729 [windows] unreasonable IME activity consumes CPU 2021-06-18 07:05:42 +03:00
Dmitry Batrak
cacd7fa9a6 JBR-3119 Application's panel in KDE taskbar blinks when popup window is shown
this re-fixes JBR-2934 in a different way

(cherry picked from commit 63134e091b)
2021-06-18 07:05:41 +03:00
Dmitry Batrak
597352ee8e JBR-3038 Unexpected windows z-order change on workspace switch
(cherry picked from commit ddda860f42)
2021-06-18 07:05:40 +03:00
Dmitry Batrak
13b0d241c4 JBR-3035 The Confirm Exit pop-up window remains hidden behind a window of another application
(cherry picked from commit 470c3bd1b5)
2021-06-18 07:05:39 +03:00
Dmitry Batrak
64dbc858b6 JBR-2934 Serious usability issue with GoLand 2020.3 caused by JBR
(cherry picked from commit 95be4351d4)
2021-06-18 07:05:38 +03:00
Dmitry Batrak
5a7b8d67d3 JBR-2977 Opening a recent project in a new window doesn't bring this window to the front
(cherry picked from commit 2d9fb9e7b8)
2021-06-18 07:05:37 +03:00
Dmitry Batrak
a178b56d47 JBR-2698 setAutoRequestFocus(false) breaks focus logic under i3 window manager on Linux
(cherry picked from commit ebcdeb7d80)
2021-06-18 07:05:36 +03:00
Dmitry Batrak
34bbd68d59 JBR-2696 Log focus API invocations with stack traces
(cherry picked from commits 0f038754e5, a507cab6d3)
2021-06-18 07:05:35 +03:00
Dmitry Batrak
65d70133bd JBR-2496 Prevent JVM stealing focus from other applications on Linux (JBR-2497, JBR-2499, JBR-2503, JBR-2652)
(cherry picked from commits 87525d1d2a, 66381f0dec, 8a789e04e9, 665ebc5d47, 98a9219c23)
2021-06-18 07:05:34 +03:00
Alexey Ushakov
6e04ec7065 JBR-3509 Extend JDK-8267521 (Post JEP 411 refactoring: maximum covering > 50K) to JBR specific changes
Marked all the usages of SecurityManager related api
2021-06-18 07:05:32 +03:00
Artem Bochkarev
ef4cdadfe9 JBR-1851: check NSArray length
and make more exception-safe
and minor optimization for logging (cache jobjects)

(cherry picked from commit 5839539379)
2021-06-18 07:05:31 +03:00
Artem Bochkarev
30bc9dd5a0 JBR-1841: allow deferred disabling of InputMethods-support
(cherry picked from commit 969255904b)
2021-06-18 07:05:30 +03:00
Artem Bochkarev
e6e210a999 JBR-1762: request focus of immediate parent when dispose popup
because requesting focus for frame-parent causes to close whole popup chain

(cherry picked from commit 7a2ccfc521)

JBR-1762: fixed review comments

(cherry picked from commit 0efbe5d9b9)
2021-06-18 07:05:29 +03:00
Artem Bochkarev
62760c5cc7 JBR-1668: add hardcoded default values for preferences node NSServicesStatus
(cherry picked from commit 8445f53d85)
2021-06-18 07:05:28 +03:00
Artem Bochkarev
016dc2f234 JBR-1515: obtain shortcut from OS to check inside AWTView.performKeyEquivalent
(cherry picked from commit 30d479fbd4)
2021-06-18 07:05:27 +03:00
Artem Bochkarev
aba9385fa0 JBR-1668: add hardcoded descriptions of system actions
and minor fixes

fix memory management

(cherry picked from commit 15f7368309)
2021-06-18 07:05:26 +03:00
Elena Sayapina
c8a2ee888d JBR-1417 [TEST] Added new regression test (JBR 11 does not support chain of popups)
(cherry picked from commit 41e89505be)
(cherry picked from commit 9fe5c778d9)
(cherry picked from commit 6ea9530d9f)
(cherry picked from commit d757108517)
(cherry picked from commit b99c1e7b5c)
2021-06-18 07:05:25 +03:00
Alexey Ushakov
1abae60146 JBR-1690 Bundle new fonts
Test correction
Restored RenderUtil.java
Removed obsolete golden images
(cherry picked from commits:
aa13c8b4ea
943b1472c7
cab6dd5087
7997c7a5ee
cab6dd5087
7997c7a5ee
d3731df79d)
2021-06-18 07:05:24 +03:00
Dmitry Batrak
97bf0a5fd5 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.

(cherry picked from commits 9b7113a6cf, 92b00d50b5, 53489fab27)
2021-06-18 07:05:23 +03:00
Dmitry Batrak
fc9950107a JRE-469 Console with emoji output becomes slow
The fix consists of two parts:
* Making CCharToGlyphMapper remember that a particular character cannot be displayed (isn't mapped to glyph with given font). Checking this repeatedly in native code is very slow.
* Make CCompositeGlyphMapper remember the results of char-to-glyph mapping, this was missing in previous implementation. This reuses caching code in CompositeGlyphMapper, extending the range of characters for which the results are cached to include Supplementary Multilingual Plane (most emoji characters belong to it).

port commit 4e0ccde2 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 394e055ae6)

cherry picked from commit 0db7e948af
2021-06-18 07:05:22 +03:00
Dmitry Batrak
b7229ccc1c reimplement JDK-7162125 to fix JDK-8147002
port commit ba38e5c4 from JBR 9

port from JBR 11 to JBR 15(cherry picked from commit a949f9d220)

cherry-picked from commit f309844f75
2021-06-18 07:05:21 +03:00
Artem Bochkarev
1d1c49d3fe JBR-1771: fixed compilation errors (macosx-x86_64-normal-server-fastdebug)
(cherry picked from commit 1acada7cac)
2021-06-18 07:05:20 +03:00
Artem Bochkarev
dd1b624fb3 JBR-1668: minor fixes
fixed review comments

(cherry picked from commit 9dbcf194c9)
2021-06-18 07:05:19 +03:00
Vitaly Provodin
fcb4e51120 JBR-1618: fixed misprint, added saving screenshots in case of failure
(cherry picked from commit e4a3889cf0)
2021-06-18 07:05:18 +03:00
Alexey Ushakov
d22b4fb018 JBR-1624 Fonts rendering is broken in the 2019.2 EAP (Fira Code)
Corrected lookup for bold fonts

(cherry picked from commit 114b8af38f)
2021-06-18 07:05:17 +03:00
Alexey Ushakov
3facfe7147 JBR-1399 Improve font discovery and loading by introducing font cache
Added unit test

(cherry picked from commit b4f5bf8bd3)
2021-06-18 07:05:16 +03:00
Elena Sayapina
af3cee542b IDEA-165950 [TEST] Added new regression test (National keyboard layouts support)
(cherry picked from commit 0900a705bc)
2021-06-18 07:05:15 +03:00
Artem Bochkarev
46fd71dbf6 JBR-1668: read system keyboard shortcuts
initial support for OS X

(cherry picked from commit 6bbe7102e2)
2021-06-18 07:05:14 +03:00
Artem Bochkarev
c6e3bdb52c JBR-1573: restore current input context after cleanup
(cherry picked from commit b7acd7f6f6)
2021-06-18 07:05:12 +03:00
Alexey Ushakov
c3f9293ce0 JBR-1624 Fonts rendering is broken in the 2019.2 EAP (Fira Code)
Restored old behaviour of registerFontsInDir as it does not affect idea bundled fonts

(cherry picked from commit cef29e8100)
2021-06-18 07:05:11 +03:00
Alexey Ushakov
24c12cc70a JBR-1874 Cursor not changing from 'default' to 'text'
Prevent OS from changing cursor

(cherry picked from commit 94a4eb7002)
2021-06-18 07:05:10 +03:00
Alexey Ushakov
7f0952122d JBR-1778 Font in editor incorrect (always italics)
Added -it pattern into italic detection code
Added some more patterns to bold and italic detection code
'Anka/Coder' font support

(cherry picked from commit 5119eeee12)
(cherry picked from commit ec241e4a0a)
(cherry picked from commit 251068294e)
(cherry picked from commit 08ae9ff034)
2021-06-18 07:05:09 +03:00
Alexey Ushakov
f25b8a4638 JBR-1699 Use platform font rendering for bundled fonts on MacOS
Use different family for specific font faces. Refactoring

(cherry picked from commit c423003bd4)
2021-06-18 07:05:08 +03:00
Alexey Ushakov
9f328e3aab JBR-1624 Fonts rendering is broken in the 2019.2 EAP (Fira Code)
Lower priority for idea bundled fonts to pickup platform ones
(if installed)

(cherry picked from commit e838103a24)
2021-06-18 07:05:07 +03:00
Alexey Ushakov
ab3313dced JBR-1885 JetBrainsMono fonts update to v0.19
Updated the fonts to v0.19. Bundled italic fonts

(cherry picked from commit 7f032e3fe7)
(cherry picked from commit a7b4c9449a)
2021-06-18 07:05:06 +03:00
Alexey Ushakov
76ae60dfdd JBR-1624 Fonts rendering is broken in the 2019.2 EAP (Fira Code)
Lower priority for idea bundled fonts to pickup platform ones
(if installed)

(cherry picked from commit e838103a24)
2021-06-18 07:05:05 +03:00
Alexey Ushakov
6e065eaa4f JBR-1699 Use platform font rendering for bundled fonts on MacOS
Used CFont instead of TrueTypeFont for bundled fonts on mac
Use different family for specific font faces. Refactoring

(cherry picked from commit 8c86ad3e96)
(cherry picked from commit c423003bd4)
(cherry picked from commit bcae402dc8)
2021-06-18 07:05:04 +03:00
Alexey Ushakov
33cc229deb JBR-1690 Bundle new fonts
Update family name for JetBrainsMono-Thin

(cherry picked from commit 0d2326ff34)
(cherry picked from commit 83843f9124)
(cherry picked from commit 2a2e1cfb36)
(cherry picked from commit 76abb69262)
2021-06-18 07:05:03 +03:00
Alexey Ushakov
9542ac063e JBR-1645 javax/swing/JTextArea/TestTabSize.java: Tab width calculation wrong
Corrected idea font filter

(cherry picked from commit 62f9d1f46a)
2021-06-18 07:05:02 +03:00
Artem Bochkarev
dfc76ce0c6 JBR-1573: workaround for 'Sudden keyboard death on Ubuntu 18'
recreate instance of system InputMethod when starts filter all events

(cherry picked from commit 3ad94911af)

(cherry picked from commit c8533a1219)
2021-06-18 07:05:01 +03:00
Alexey Ushakov
4f366d675a JBR-1399 Improve font discovery and loading by introducing font cache
Bundle IDEA fonts to improve startup performance

(cherry picked from commit 350a3fdef3)
2021-06-18 07:05:00 +03:00
Artem Bochkarev
5cd6022055 JBR-1541: activate menu in completion handler of modal dialog
(cherry picked from commit e57384c1d6)
2021-06-18 07:04:59 +03:00
Alexey Ushakov
4092c2efb6 JBR-1314 Font difference in pycharm 2019.1 on Ubuntu
Removed disabling hints on MAX_FCSIZE_LTL_DISABLED font size

(cherry picked from commit 2b99dfed40)
2021-06-18 07:04:58 +03:00
Alexey Ushakov
f755bc3fe8 JBR-1412 [fwp to JBR11] JBR-1393 RubyMine is hanging after log in (macOS)
Modified version of JBR8 fix

(cherry picked from commit 434166fe63)
2021-06-18 07:04:57 +03:00
Alexey Ushakov
b8de146ec0 JBR-1394 JBR11 does not support LCD text on Mac
Enable LCD rendering for transparent destinations

(cherry picked from commit 207c6b92ff)
2021-06-18 07:04:55 +03:00
Elena Sayapina
c6d2170d51 JBR-1380: [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java works incorrectly
(cherry picked from commit 95df9908f4)
2021-06-18 07:04:54 +03:00
Elena Sayapina
7cf8c25f64 JBR-1372: [TESTBUG] JDialog1054.java, MoveFocusShortcutTest.java regression tests need update
(cherry picked from commit a5948894bf)
2021-06-18 07:04:53 +03:00
Maxim Kartashev
e157fc2a75 JBR-2755 IDE UI became slow via remote X Server connection from Windows
When XGetImage() calls become slow in a remote X11 session, fake
XGetImage() with client-side XCreateImage() that is filled with some
background color. The color is chosen from several top left corner
pixels of the "slow" images obtained with XGetImage().

This feature activates in a remote X11 session only and is
controlled with -Dremote.x11.workaround={true|false|auto}.
2021-06-18 07:04:52 +03:00
Vyacheslav Moklev
95356915d0 Fix const pointer after JDK-8225032 fix 2021-06-18 07:04:51 +03:00
Vyacheslav Moklev
2bd3a12994 Fix compilation on windows platform: awt_ole.h must be included before awt.h 2021-06-18 07:04:50 +03:00
Vyacheslav Moklev
7cbe358971 JBR-1269 Common Item Dialog does not appear on Alt+Tab or click in windows toolbar
JBR-1270 Common Item Dialog does not have an icon

Select a proper window handle
2021-06-18 07:04:49 +03:00
Vyacheslav Moklev
546e639f9f JBR-1271 Wrong parent of native windows dialogs
Set a proper parent to a dialog window
2021-06-18 07:04:48 +03:00
Vyacheslav Moklev
571a08209c JBR-1273 Common Item Dialog does not open when wrong path to directory is passed
Handle set directory / set file properly
2021-06-18 07:04:47 +03:00
Vyacheslav Moklev
794a1758cf JBR-1274 Common Item Dialog sometimes crash the process
Prevent from freeing memory with CoTaskMemFree twice
2021-06-18 07:04:46 +03:00
Vyacheslav Moklev
8a324d1bbf JBR-1257 CommonItemDialog modal window has no owner
Fix modality for Common Item Dialog
2021-06-18 07:04:45 +03:00
Vyacheslav Moklev
7d1b3cf82f JBR-1258 CommonItemDialog ignores directory to open
Fix parsing of directory path / file path
2021-06-18 07:04:44 +03:00
Vyacheslav Moklev
dff54840bf JRE-1216 Implement Windows native file dialogs with the new Common Item Dialog API
Add implementation of file dialogs with the new Common Items Dialog API
2021-06-18 07:04:43 +03:00
Alexey Ushakov
95a10cc6fa JBR-1144 [JDK11] [macos] Held down key is not deleted when press backspace after accent menu popup (Mojave)
Handled both Delete and ForwardDelete keys

(cherry picked from commit e3ba0bd651)
2021-06-18 07:04:42 +03:00
Alexey Ushakov
90439280c6 JBR-1144 [JDK11] [macos] Held down key is not deleted when press backspace after accent menu popup (Mojave)
Handled backspace separately

(cherry picked from commit 81916a92af)
2021-06-18 07:04:41 +03:00
Elena Sayapina
709b2197f9 JBR-1102: [TESTBUG] java/awt/Paint/ComponentIsNotDrawnAfterRemoveAddTest/ComponentIsNotDrawnAfterRemoveAddTest.java: 'paint' method of 60 components was not called
(cherry picked from commit dc7abebe17)
(cherry picked from commit c8d631a142)
2021-06-18 07:04:40 +03:00
Elena Sayapina
a3de746ad4 JBR-998: [TEST] Added new regression test (Input freezes after MacOS key-selector on Mojave)
(cherry picked from commit 3d898a8024)
(cherry picked from commit f368f0f101)
2021-06-18 07:04:39 +03:00
Elena Sayapina
63a9ff9483 JBR-318: [TEST] Added new regression test (Cmd+` doesn't work after update to JDK 152_*)
(cherry picked from commit 0be0a018b5)
(cherry picked from commit 5bb4c2a1d6)
2021-06-18 07:04:38 +03:00
Elena Sayapina
96bd2bb454 JBR-1054: [TEST] Added new regression test (Weird non-modal dialog above modal dialog behaviour)
(cherry picked from commit b808be6a6a)
(cherry picked from commit 48b7dd874f)
2021-06-18 07:04:37 +03:00
Vitaly Provodin
501c2e16f3 JRE-1117 J2DBench: introduced result reader for TC's charts (follow up)
separated printing values fo TC charts and values for comparisons

(cherry picked from commit bbdbe17e2a)
2021-06-18 07:04:35 +03:00
Vitaly Provodin
e979b2531c JRE-1117 J2DBench: introduced result reader for TC's charts
(cherry picked from commit 422fa59643)
2021-06-18 07:04:34 +03:00
Alexey Ushakov
2d65a0ae4e JRE-60 Editor font is distorted on Kubuntu Linux 16.04 with HiDPI
Override FC_HINT_SLIGHT only for small font sizes

(cherry picked from commit 0e1d23c807)
2021-06-18 07:04:33 +03:00
Alexey Ushakov
fd0cb244a9 JRE-471 Crash on macOS Sierra after Sleep
Replaced [NSScreen screens] 'objectAtIndex' with 'firstObject' to get nil instead of NSRangeException. Added nil checks

(cherry picked from commit d6b98511262055c01522d9ec8024253af7e91564)
(cherry picked from commit cef970e1ba)
2021-06-18 07:04:32 +03:00
Alexey Ushakov
d50591f48c JRE-608 J2DBench metrics: up to 20x degradation
Increased rendering queue buffer up to 6.4 MB

(cherry picked from commit 9ef00f00a7fb6e14835393f8d3944157c6800727)
(cherry picked from commit 2a61e9e997a880a60c5acb361849205170501b91)
(cherry picked from commit 68ca9f00ded004c970b94bd047a04b9f09237047)
(cherry picked from commit 2fe5289178)
2021-06-18 07:04:31 +03:00
Maxim Kartashev
c697330c84 JBR-3416 Introduce new client property for Linux: linux.awt.windowTitleVisible 2021-06-18 07:04:30 +03:00
Alexey Ushakov
d39ab014f6 JRE-1028 fwport(9): JRE-1008 Do not use LCD shader on macOS 10.14+ in font rendering
Disable LCD text shader on macOS 10.14+ if LCD rendering is not explicitly specified

(cherry picked from commit dffea9d701)
2021-06-18 07:04:29 +03:00
Konstantin Bulenkov
e3b7adfc8a update icons
(cherry picked from commit dfe387ff5037deda29d8d522cba6cc5370796ff4)
(cherry picked from commit de1e4a9d71)
2021-06-18 07:04:28 +03:00
Konstantin Bulenkov
eeff4c20de add workspace.xml to gitignore
(cherry picked from commit bd5b9403fdca779ecc76f0b3af2918fe772f7ed1)

(cherry picked from commit 37e7661f85)
2021-06-18 07:04:27 +03:00
Vitaly Provodin
5a4cfd73c8 Update README.md 2021-06-18 07:04:26 +03:00
Vitaly Provodin
43bf447b24 Regression test on https://bugs.openjdk.java.net/browse/JDK-8139176
(cherry picked from commit 6f1c0a6)
(cherry picked from commit 63130fd461)

add regression test on https://bugs.openjdk.java.net/browse/JDK-8139176

(cherry picked from commit 380c17456c)

(cherry picked from commit 6f1c0a6)
(cherry picked from commit 63130fd461)
2021-06-18 07:04:25 +03:00
Vitaly Provodin
ddebd6ea5d not for upstream: added disposing frames in order to provide the test with the chance on the second run
(cherry picked from commit 8170635)
(cherry picked from commit 7fc924f065)
2021-06-18 07:04:24 +03:00
Vitaly Provodin
71d42a533e JRE-9: added regression test
(cherry picked from commit 4ffb665)
(cherry picked from commit 00a29ad129)
2021-06-18 07:04:23 +03:00
Sergey Malenkov
609a565599 JRE-100 Scroll with inertia (Mac os) should only work in the initial component
(cherry picked from commit e79502c708)
2021-06-18 07:04:22 +03:00
Sergey Malenkov
f600196b25 IDEA-161965 ignore dragged event that does not change mouse location Sierra is more sensit
(cherry picked from commit ef490fa465)
2021-06-18 07:04:21 +03:00
Stanislav Dombrovsky
0e628d08a4 Fix rendering of HTML list dots + better vertical align for them.
(cherry picked from commit fa4a404533ba1ef638fe523adc74391aee8a3ebf)

(cherry picked from commit 9f079c66e9)
2021-06-18 07:04:20 +03:00
Vitaly Provodin
27468ccaff configure BOOT_JDK to use JDK 16 2021-06-18 07:04:19 +03:00
Maxim Kartashev
a2bcfb8d49 JBR-1430 (8195129) Windows: use UTF16 version of Win32 API to load DLL
Also correct library name encoding in exception messages.
2021-06-18 07:04:18 +03:00
Dmitry Batrak
16e20230d3 JBR-3353 Sibling popup window is shown below dialog on macOS
(cherry picked from commit 4c6f3e4510)
2021-06-18 07:04:17 +03:00
Dmitry Batrak
37fc46cc05 JBR-3339 Window requests focus on horizontal scroll (on Linux)
(cherry picked from commit 8d74e8e30b)
2021-06-18 07:04:16 +03:00
Alexey Ushakov
c8541dff58 JRE-202 Deadlock in CGLGraphicsConfig.getCGLConfigInfo
Added processing system events while waiting for OGLRenderQueue.lock
Moved getCGLConfigInfo logic execution to AppKit thread so, awt lock is
 taken on one thread

(cherry picked from commit d1c8bf03e1bd41cb075aa73cc39558103af7fe1a)
(cherry picked from commit 6bf9f31986be64acf3755b34568802f9960a66ec)
(cherry picked from commit 4e21d67e0369bffac45662c63699b39946218a7a)
2021-06-18 07:04:14 +03:00
Anton Tarasov
abd7c3d6fb JRE-166 [macOS] deadlock with JFXPanel
(cherry picked from commit a9dbb6990fac0c659297487a261ba9170e5fb3ad)

(cherry picked from commit 8a44e1bb37)
2021-06-18 07:04:13 +03:00
Alexey Ushakov
67714809e5 8265445: Introduce the new client property for mac: apple.awt.windowAppearance
Implemented apple.awt.windowAppearance client property
2021-06-18 07:04:12 +03:00
Anton Tarasov
c6350712bb JBR-3306 jbr-dev warnings: incompatible pointer to integer conversion returning 'void *' from a function with result type 'jlong' 2021-06-18 07:04:11 +03:00
Dmitry Batrak
b4b83de06f JBR-2498 Fix unexpected window raising under Mutter WM
re-implement the fix, so that ChildAlwaysOnTopTest isn't failing
2021-06-18 07:04:10 +03:00
Maxim Kartashev
2d5efaa55d JBR-3323 Exclude parts of VM code from sanitizer checks
Exclude VM error-reporting code that treats memory as a raw sequence of
bytes from address sanitizer checks. This is needed to only get true
reports when running tests against the --enable-asan build.
2021-06-18 07:04:09 +03:00
Maxim Kartashev
a347a81c6b JBR-3323 Improve sanitizer-enabled builds
Improve usability of builds with --enable-asan.
Add the --enable-usan option to build with Undefined Behavior Sanitizer.
2021-06-18 07:04:08 +03:00
Alexey Ushakov
44f26be631 JBR-3327 [jbr-dev] Adjust mac window appearance according to AppleInterfaceStyle property
Set window appearance according to AppleInterfaceStyle default
2021-06-18 07:04:07 +03:00
Alexey Ushakov
3680f7f0f4 JRE-238 [736] java.awt.AWTError: access denied ("java.lang.RuntimePermission" "canInvokeInSystemThreadGroup")
Moved task execution on AppKit to the privileged block. Minor refactoring

(cherry picked from commit 5dbb88471115c9e4a536ae37d0e6794de9e5ac9c)
2021-06-18 07:04:06 +03:00
Alexey Ushakov
eff5d54f5d JRE-359 CGraphicsEnvironment.getDefaultScreenDevice() returns null
Moved CG api calls to AppKit thread

(cherry picked from commit fd0210f035199e8612097a2c1d42b90cfd2111f8)
(cherry picked from commit 5e99e376d9dfe477401121878704630c3c13f9f7)

(cherry picked from commit 6d73b25130)
2021-06-18 07:04:05 +03:00
Dmitry Batrak
9912c524f8 JBR-2973 Copy/Move dialog not in the focus on drag-n-drop to Project Tool window from external application
(cherry picked from commit 20fe78b650)
2021-06-18 07:04:04 +03:00
Dmitry Batrak
ce7b7a9e0c JBR-2759 Typeahead issue on Linux
(cherry picked from commits 76bdaf1131, b20c56ff3e)
2021-06-18 07:04:03 +03:00
Denis Fokin
273ab18234 JBR-1362 Multiple child windows opened and closed in sequence result in a focus loss
(cherry picked from commit 3c9c599a2d)
2021-06-18 07:04:02 +03:00
Dmitry Batrak
fb591cc16a JBR-3307 First character is dropped when editing a table cell
(cherry picked from commit 2ccf6b65a7)
2021-06-18 07:04:01 +03:00
Dmitry Batrak
c4585ca494 JBR-3291 Input of characters using Alt+<NumPad> stopped working on Windows
(cherry picked from commit ba6b9c085e)
2021-06-18 07:04:00 +03:00
Alexey Ushakov
e9ca82e0f2 JRE-444 CPlatformWindow.nativeGetTopmostPlatformWindowUnderMouse is slow
Replaced number of CGWindowListCopyWindowInfo for each window layer with [NSWindow windowNumberAtPoint: belowWindowWithWindowNumber:]

(cherry picked from commit 2a143af4d62340acdfd9c94d876f684385febbc8)
(cherry picked from commit 6fc369e8bf)
2021-06-18 07:03:59 +03:00
Alexey Ushakov
7d0ed1202b JRE-482 Java_sun_font_CStrike_getNativeGlyphOutline takes too much time in scrolling
Replaced glyph outlines with bounding boxes for glyph boundaries calculation for most common usages. Also, skipped unnecessary OGL flushes in OGL rendering queue

(cherry picked from commit c58dc052af48887338a38beb0c721eddca3af481)
(cherry picked from commit 7f6be7cfb907bbf1c3572b911df5690fa3039fde)
(cherry picked from commit c68913d82c0ba4b4c509179123f0a4bf7971f857)
(cherry picked from commit 9cfa04c93ad416a8177d9e7ca410850bd3ff880f)
(cherry picked from commit 0e930841704e4e98ecc0c888b144245e74218799)
(cherry picked from commit 8ffc190fbdb059d5a24842115c0bc3ade8b351b9)
(cherry picked from commit 0f7c26186a)
2021-06-18 07:03:58 +03:00
Alexey Ushakov
668cf53ed5 JRE-193 UI freeze and 12/second thread dumps
Moved CStrikeDisposer dispose code to AppKit

(cherry picked from commit 28774d6878)
2021-06-18 07:03:57 +03:00
Alexey Ushakov
7639777115 JBR-3316 Reimplement CThreading functionality on top of OpenJDK17 sourcebase
Adopted CThreading related code to OpenJDK17 source base

(cherry picked from commit 5dfb30ae68b2c54d58c98a9195709c031f823581)
(cherry picked from commit 94163bd69f64616836523e81567aa1141480d841)
2021-06-18 07:03:56 +03:00
Alexey Ushakov
31c847c86f JBR-3304 jbr-dev warnings: 'getPhysFontName' defined but not used [-Werror=unused-function]
Removed unused code
2021-06-18 07:03:55 +03:00
Vitaly Provodin
bf637a1760 exclude javax/swing/JTabbedPane/4624207/bug4624207.java failing on windows due to 8197552 2021-06-18 07:03:54 +03:00
Alexey Ushakov
f38bec3b31 JRE-366 Add support for Awesome WM
Added detection of Awesome WM and handled similar to Sawfish WM

(cherry picked from commit 6742077ed198975949af567e8ef543f853397351)
(cherry picked from commit 2847be73c6)
2021-06-18 07:03:52 +03:00
Alexey Ushakov
8f704fc7a9 JRE-353 Fedora 25 + XMonad rendering issues
Added support for Xmonad WM

(cherry picked from commit c690c3c7fdf1390e6b1a8d388ff752a09391ae3c)
(cherry picked from commit 6851dc3441)
2021-06-18 07:03:51 +03:00
Denis Konoplev
6174d6c909 8264143: Change uint8_t to unsigned char 2021-06-18 07:03:50 +03:00
Dmitry Batrak
de22f45c9b JBR-3255 Applying 'incline' transform might change character's advance
(cherry picked from commit b37f7cfdb1)
2021-06-18 07:03:49 +03:00
Dmitry Batrak
8dca4f0aed JBR-3215 'deriveFont(float)' can return a different font (not just change the size)
(cherry picked from commit 8eafcaab24)
2021-06-18 07:03:48 +03:00
Dmitry Batrak
807919104b JBR-3157 Maximized window with custom decorations isn't focused on showing
(cherry picked from commit 62b04983f2)
2021-06-18 07:03:47 +03:00
Dmitry Batrak
948803f106 make AwtListGarbageCollectionTest pass reliably
(cherry picked from commit 304eb7f919)
2021-06-18 07:03:45 +03:00
Dmitry Batrak
0347ac8f0d JBR-1752 Floating windows overlap modal dialogs
(cherry picked from commit 0161050077)
2021-06-18 07:03:44 +03:00
Dmitry Batrak
0b33c38ea2 JBR-3054 Focus is not returned to frame after closing of second-level popup on Windows
(cherry picked from commit 0c2b6e1c04)
2021-06-18 07:03:43 +03:00
Dmitry Batrak
6024616b08 JBR-2702 Tooltips display through other applications on hover
(cherry picked from commits 11732c2469, 0ed7deabaa)
2021-06-18 07:03:42 +03:00
Dmitry Batrak
b3179cafa9 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

(cherry picked from commit 1d525a2d2f)
2021-06-18 07:03:41 +03:00
Dmitry Batrak
7b3719d9db JBR-2847 Always dispatch KEY_TYPED event to the same component as KEY_PRESSED event
also fixes JBR-2834, IDEA-254466, IDEA-254466

(cherry picked from commit e94f6057a4)
2021-06-18 07:03:40 +03:00
Dmitry Batrak
f935acced6 JBR-2712 Typeahead mechanism doesn't work on Windows
(cherry picked from commits 1a9838082e, f5b6222835, acd7e3b2da, cd6dd5c3cf8556f97f3113cb7d615a92393b57bf(partially), e8bbd8ffdd90f57cd12d7d7e89188be97ee4be0b(partially))
2021-06-18 07:03:39 +03:00
Denis Konoplev
78a624d00e 8264143: Lanai: RenderPerfTest.BgrSwBlitImage has artefacts on apple M1
Add stdint include to fix x64 build
2021-06-18 07:03:38 +03:00
Dmitry Batrak
5163f19c04 JBR-2498 Fix unexpected window raising under Mutter WM
(cherry picked from commit 73b45fb899)
2021-06-18 07:03:37 +03:00
Dmitry Batrak
ffee0695f2 JBR-2248 Support text wrapping in a <pre> tag in JEditorPane
port from JBR 11 to JBR 15 (cherry picked from commit ff2e915371)

cherry picked from commit 6a30c56138
2021-06-18 07:03:36 +03:00
Dmitry Batrak
4db07b860c JBR-2234 Support CSS setting overflow-wrap:anywhere in JEditorPane
port from JBR 11 to JBR 15 (cherry picked from commits b6583d0a71, 6003abc15f)

cherry picked from commit 93ad4f06dd
2021-06-18 07:03:35 +03:00
Dmitry Batrak
867f404eea JBR-2050 Issue with keycap emojis
port from JBR 11 to JBR 15 (cherry picked from commit ae91e1d7f1)

cherry picked from commit d3018a1837
2021-06-18 07:03:34 +03:00
Dmitry Batrak
6c0db687ab JBR-1987 Korean/Thai characters not printed properly in annotation tooltip (e.g. spellchecker)
This changes the fonts JDK uses for font fallback on Windows. These used to be DokChampa (for Thai) and Batang/Gulim/Gulim (for Korean).
Those fonts are not available by default on Windows 10, user needs to install supplementary font language packs to get them.
Now the following fonts will be used - Tahoma (for Thai) and Malgun Gothic (for Korean). They are available by default
on Windows 7, 8 and 10.

port from JBR 11 to JBR 15 (cherry picked from commit 850653192b)

cherry picked from commit 2bf43a57ab
2021-06-18 07:03:33 +03:00
Dmitry Batrak
e84c003eb6 JBR-1714 Italic text is displayed using incorrect glyphs on Windows
port from JBR 11 to JBR 15 (cherry picked from commits 46e4cdfcbd, 9cc5cbc99b)

cherry picked from commit 6769b27e53
2021-06-18 07:03:32 +03:00
Dmitry Batrak
ae710843df JBR-1689 Incorrect painting of long strings on linux
port from JBR 11 to JBR 15 (cherry picked from commits e12c1d6f0d, 0429e74e9d)

cherry picked from commit e43cfd198f
2021-06-18 07:03:31 +03:00
Dmitry Batrak
0753450eaa JBR-1248 Exception caused by broken font
port from JBR 11 to JBR 15 (cherry picked from commit 4efa7eab3e)

cherry picked from commit 6e1c514c6c
2021-06-18 07:03:29 +03:00
Alexey Ushakov
b4efb71003 JRE-18 CCE in XRMaskFill.MaskFill
Throwing InvalidPipeException for incompatible surfaces

(cherry picked from commit 55dab103c24bf86cf025b9ce02b67e72508d41ba)
(cherry picked from commit 0a4fdad0f2)
2021-06-18 07:03:28 +03:00
Dmitry Batrak
e5a8c59db1 JBR-1245 [JDK 11] There are different letter spacings in some controls
port from JBR 11 to JBR 15 (cherry picked from commit a26b70568a)

cherry picked from commit e2637199e9
2021-06-18 07:03:27 +03:00
Dmitry Batrak
5d12b731bd JRE-927 Unexpected wrapping of bidirectional text in JEditorPane on HiDPI screens
port commit 11a5a4a2 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 65a5e450d5)

cherry picked from commit 47ff31ae82
2021-06-18 07:03:26 +03:00
Dmitry Batrak
59ab61270f JRE-774 Don't paste BOM from clipboard on Mac
port commit ea9b75b3 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit c6fed2cf58)

cherry picked from commit a5e25d1ef9
2021-06-18 07:03:25 +03:00
Dmitry Batrak
a0eebb7f0b JRE-847 Box drawing characters have different widths with Monospaced font on Windows
port commit 778cef18 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 9caaac4a5a)

cherry picked from commit eea293f4a4
2021-06-18 07:03:24 +03:00
Dmitry Batrak
cf9df07661 JRE-748 Strange dots with fractional metrics turned on
port commit 82e7c82d from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit e9bd5f5dad)

cherry picked from commit e0475e9ba2
2021-06-18 07:03:23 +03:00
Dmitry Batrak
42344e3423 JRE-593 Wrong italic font rendering for Source Code Pro
port commit 1f6bd200 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 32ce109355)

cherry picked from commit 087ff34c2e
2021-06-18 07:03:22 +03:00
Dmitry Batrak
720bfcf41b JRE-430 Font fallback sometimes doesn't work in Swing text components
port commit fc8003ad from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 5b814d6b34)

cherry picked from commits b871188f44, 0a9f16dc90
2021-06-18 07:03:21 +03:00
Dmitry Batrak
c096d68d10 JRE-372 IntelliJ editors silently precompose diacritics
port commit f7facf1b from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 67b1e552d8)

cherry picked from commit 51ce1d6427
2021-06-18 07:03:20 +03:00
Alexey Ushakov
ac8277ddd7 JRE-303 2017.1.1 update breaks linux fonts
Corrected rendering hints for Non-AA text rendering

(cherry picked from commit b923aa7a0729a10ea47d3438622d659fbead44c9)
(cherry picked from commit b6bdd04e41)
2021-06-18 07:03:19 +03:00
Alexey Ushakov
1efe9ebef2 JRE-205 Font is wrong and without anti aliasing in 2017.1 EAP
Added property to disable bundled font config:
  java2d.font.loadFontConf=false
Do not load custom font.conf by default

Moved hints adjusting logic from code to bundled font.conf file
Applied correction only for regular fonts with platform sizes less than 12
Some fonts are not corrected at all: Consolas, Noto Sans Mono
Used family name instead of physical one in requests to Fontconfig
Removed redundant call to FcConfigBuildFonts
Added privileged access to the properties (JRE-235,JRE-235)

(cherry picked from commit 4d4c915047077ebd966b0e3be056566d56ba11a4)
(cherry picked from commit 9d6f325f72482405264852f3ee2636f5fedaeaf0)
(cherry picked from commit e7e3372bf8db539c0f6bc85db9f1093f8fa4c380)
(cherry picked from commit 3e724caed2f199be50d25d1ecb20b7819c86be2e)
(cherry picked from commit d372b35963c096a32331b05b257e26841ace5d94)
(cherry picked from commit 18a5f5de03eb107f89dca138a44b9aab2151235c)
(cherry picked from commit 9ba320efef0539f75aa93fd1b5dd80266c954d0a)
(cherry picked from commit b8c38f419972af61291953f7f452c1698f7a1624)
(cherry picked from commit debba0128e200be60adc9a339d5985590ef4e230)
(cherry picked from commit 2fa17b1bd7d6524e4b5fa4d0b3ce2bf02a8fcc78)
(cherry picked from commit 09b4f61db0d4f5beea0e16ce9136c99e2185c10b)
(cherry picked from commit 3b6782dd742f9c74a9535145db2f9f7ffaccf7c8)
(cherry picked from commit f1b68149528c13a22fa64468c130b1405bf3d081)
(cherry picked from commit db5cf5a2b9cb454630fb86783c2d58cd5446cba6)
(cherry picked from commit 32140948578bc3c2a0c5f8adb537660421efe5e7)
(cherry picked from commit b978e3d0b131ed642774c5a14a649e13f764c20b)

(cherry picked from commit c75c1ef8b2)

(cherry picked from commit a29f19e6a2)
2021-06-18 07:03:18 +03:00
Dmitry Batrak
f489fab795 fix direction of vertical glyph offsets (regression introduced by backporting JDK 9 changes for JRE-33)
port commit 9b98eaf0 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit cbf4d301ee)

cherry picked from commit e6752600a5
2021-06-18 07:03:17 +03:00
Dmitry Batrak
23bebeb98f an option to disable native rendering for rotated text (following JRE-19)
port commit ccc1ded6 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 72fb9ff7c4)

cherry picked from commit a5bd092449
2021-06-18 07:03:16 +03:00
Dmitry Batrak
e2d8d8ba36 JRE-11 Support text rendering via DirectWrite API on Windows
port commits 7b180f8d, cccbcab4 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit 030f15834c)

cherry picked from commit b16ee45915
2021-06-18 07:03:15 +03:00
Dmitry Batrak
fc2f86172a JRE-10 Ligatures are not working sometimes when characters from multiple scripts are present
ports commit 18b3f575 from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commit c30407cb87)

cherry picked from commit 8c9402b60b
2021-06-18 07:03:14 +03:00
Dmitry Batrak
c0d497490a IDEA-150876 OpenJDK fonts for toolwindow names look worse than Oracles's
don't apply FreeType-returned glyph advance for rotated glyphs rendered by GDI

This seems to produce a better looking text (more evenly spaced). Fractional metrics won't be respected by this code, but we can address this later if needed.

port commits c9debd5e, ed78cd00, 4c7e1619, 7aa0429c, 7bd6c17c from JBR 9

port from JBR 11 to JBR 15 (cherry picked from commits d6b588bdab, dbc15fb84e)

cherry picked from commit 2c0d6150d0
2021-06-18 07:03:13 +03:00
Vitaly Provodin
896b9736b1 JRE-186 added regression test (Modal dialogs (Messages) shouldn't popup IDEA when another application is active)
(cherry picked from commit 236bd38d1b)
2021-06-18 07:03:12 +03:00
Vitaly Provodin
01acfac44a JRE-269 added regression (JLabel doesn't scale <code>text</code> HTML fragments.)
(cherry picked from commit 1f4ad38d23)
2021-06-18 07:03:11 +03:00
Alexey Ushakov
df37263007 JRE-307 Wrong dpi reported on Wayland
(cherry picked from commit 15693661cc)
2021-06-18 07:03:10 +03:00
Vitaly Provodin
be4bafdc74 JRE-392 added regression (Tip of the day is not hidden while another modal window is shown)
(cherry picked from commit c7b0ac686f)
2021-06-18 07:03:09 +03:00
Vitaly Provodin
bdd5d394c8 JRE-394 added regression test (System getenv doesn't return env var set in JNI code)
(cherry picked from commit 3a7b3c67b0)
2021-06-18 07:03:07 +03:00
Vitaly Provodin
775239d881 JRE-401 added regression test (AppCode freezes during autocomplete and other operations)
(cherry picked from commit cb4453b1d1)
2021-06-18 07:03:06 +03:00
Vitaly Provodin
dca0db418d JRE-422 added new regression test (AWTView deliverJavaMouseEvent leaks jEvent)
(cherry picked from commit 37dc13c603)
2021-06-18 07:03:05 +03:00
Vitaly Provodin
bef950bd78 JRE-430 added new regression test (Font fallback sometimes doesn't work in Swing text components)
(cherry picked from commit d04debc847)
2021-06-18 07:03:04 +03:00
Vitaly Provodin
932ea73f1b JRE-457 added new regression test (OGLTR_DisableGlyphModeState is slow)
(cherry picked from commit 3a43f4557f)
2021-06-18 07:03:03 +03:00
Vitaly Provodin
391c1d7468 JRE-458 added new regression test (Insufficient and inconsistent permissions on some files in Linux build)
(cherry picked from commit 82adbe9c25)
2021-06-18 07:03:02 +03:00
Vitaly Provodin
23f924bf1d JRE-467 added new regression test (Wrong rendering of variation sequences)
(cherry picked from commit 0026095202)
2021-06-18 07:03:01 +03:00
Vitaly Provodin
9abfdfd2e1 JRE-468 added new regression test (Idea freezes on project loading)
(cherry picked from commit 1ce8c3ce82)
2021-06-18 07:03:00 +03:00
Vitaly Provodin
62466a9865 JRE-501 added new regression test (Live resize is jerky for heavy java applications on Mac)
(cherry picked from commit c4a1277c1b)
2021-06-18 07:02:59 +03:00
Vitaly Provodin
c59c58096a JRE-638 added new regression test (enable unlimited cryptographic policy by default)
(cherry picked from commit 4a14c6f15a)
2021-06-18 07:02:58 +03:00
Vitaly Provodin
5c08a31b50 JRE-705 added new regression test (Z-order of child windows is broken on Mac OS)
(cherry picked from commit 82cd480619)
2021-06-18 07:02:57 +03:00
Vitaly Provodin
6ac5a9df4b JRE-741 added new regression test (Modal dialog stays above other process windows)
(cherry picked from commit 9ea664c299)
2021-06-18 07:02:56 +03:00
Vitaly Provodin
03b32933f7 JRE-624 CThreading isAppKit() fails to detect main app thread if it was renamed
(cherry picked from commit c8f248a936)
2021-06-18 07:02:55 +03:00
Alexey Ushakov
7e236a57ea IDEA-166173 IntelliJ freezes when returning from sleep
Fixed deadlock by removing unnecessary getScreenResolution call

(cherry picked from commit cec93cf1fd)
2021-06-18 07:02:54 +03:00
Alexey Ushakov
4a4b553b14 Added missing fontconfig defines
(cherry picked from commit 2ac273a456)
2021-06-18 07:02:53 +03:00
Alexey Ushakov
77d3593fc1 JRE-12 CCE: XRTextRenderer.drawGlyphList (sun.java2d.NullSurfaceData cannot be cast to sun.java2d.xr.XRSurfaceData)
Throwing InvalidPipeException for incompatible surfaces

(cherry picked from commit f98f34c)
(cherry picked from commit fb2bbc47fe)
2021-06-18 07:02:52 +03:00
Alexey Ushakov
9383df9a46 JRE-43 Font.getFamily() does not work in headless mode
Removed unused code

(cherry picked from commit 5b523f049e)
2021-06-18 07:02:51 +03:00
Alexey Ushakov
8bc8e5580e JRE-43 Font.getFamily() does not work in headless mode
Bundled Droid fonts to fallback in headless mode

(cherry picked from commit 5b523f049e)
2021-06-18 07:02:50 +03:00
Alexey Ushakov
110851d901 JRE-15 Greyscale text is too dark comparing with subpixel AA
Adjusted default value for greyscale text rendering in freetype

(cherry picked from commit f80497c4f0)
2021-06-18 07:02:49 +03:00
Alexey Ushakov
bd9dc77d84 IDEA-155347 On Ubuntu with High DPI tooltip font is too thick when the tooltip is fading in and out
Handled missing FC_RGBA_NONE value

(cherry picked from commit 44fcbdabf8)
2021-06-18 07:02:48 +03:00
Alexey Ushakov
1392fe7223 IDEA-149882 Issue with fonts in Ubuntu 12.04
Provided fallback to default font rendering settings if libfontconfig unable to
match font pattern

(cherry picked from commit d93a5f1598)
2021-06-18 07:02:47 +03:00
Alexey Ushakov
95faee38d3 IDEA-151619 CLion EAP fails to start with missing symbol: FT_Library_setLcdFilter
Skip FT_Library_setLcdFilter call if the symbol is not there
Cache negative FT_Library_setLcdFilter symbol lookup result
Used RTLD_DEFAULT handler for process symbols lookup

(cherry picked from commit e6f0055704)
2021-06-18 07:02:46 +03:00
Alexey Ushakov
75858032bf JRE-29 fontconfig lib crashes CLion on OSX
Disabled fontconfig usage on OSX

(cherry picked from commit 431e14429c)
2021-06-18 07:02:45 +03:00
Vitaly Provodin
1fb3472065 exclude tests spontaneously creating windows during test execution 2021-06-18 07:02:44 +03:00
Alexey Ushakov
daf9cd861e JRE-48 built-in jre renders fonts abnormally heavier (normal text looks bold) than the oracle jre
Disable FT_LOAD_TARGET_LIGHT for fonts with FC_AUTOHINT=false (this target implicitly enables  FC_AUTOHINT)
Reused setupLoadRenderFlags for all rendering cases

(cherry picked from commit f3f2667a4c)
2021-06-18 07:02:43 +03:00
Alexey Ushakov
cfe1aadf15 Added logging for freetypeScaler via env variable OPENJDK_LOG_FFS=yes
and for screen resolution in freetypeScaler

(cherry picked from commit 091d74a791)
2021-06-18 07:02:41 +03:00
Alexey Ushakov
dda5cdd437 JRE-34 IDE Crashes During Startup
Added validation of dpi settings coming from xserver

(cherry picked from commit b1c49c3b27)
2021-06-18 07:02:40 +03:00
Anton Tarasov
bf5ae96736 Add build.gradle 2021-06-18 07:02:39 +03:00
Anton Tarasov
80752cbac1 JBR-2031 [mac] jcef deadlocks with a11y on start
(cherry picked from commit 4f44b37f08)
2021-06-18 07:02:38 +03:00
Alexey Ushakov
3e5d9c3ba4 JRE-1083 [JDK11] Test com/sun/java/accessibility/util/8051626/Bug8051626.java fails on macOS on JB JDK11b
Wrapped SelectorPerformer invocation into privileged action

(cherry picked from commit 48e7b547ae)
2021-06-18 07:02:37 +03:00
Anton Tarasov
d79e8e61d4 JBR-2019 provide getWindowHandle method for jcef
(cherry picked from commit 7ae706b629)
2021-06-18 07:02:36 +03:00
Anton Tarasov
3bbd6b9a4f Comment assertion (originally JRE-965)
The assert line crashes debug hotspot.

(cherry picked from commit a00074a86c)
2021-06-18 07:02:35 +03:00
Anton Tarasov
1b9ad73edb JBR-1976 [jcef] need mouse-transparent window on Windows
(cherry picked from commit b60fac96b4)
2021-06-18 07:02:34 +03:00
Anton Tarasov
8b69e96c27 JBR-1834 [linux] runtime hidpi switch is broken
(cherry picked from commit eaa04303a7)
2021-06-18 07:02:33 +03:00
Anton Tarasov
ffe4819421 JBR-1824 export NSWindow::setIgnoresMouseEvents to java internal API
(cherry picked from commit 4399dc382c)
2021-06-18 07:02:32 +03:00
Anton Tarasov
e34609337a JBR-1802 com/sun/java/accessibility/util/8051626/Bug8051626.java: access denied ("java.lang.RuntimePermission" "getClassLoader")
(cherry picked from commit eae772aca9)
2021-06-18 07:02:31 +03:00
Anton Tarasov
423931953f JBR-1795 Project opened from Welcome screen goes to backgound after loading
(cherry picked from commit 322526458a)
2021-06-18 07:02:30 +03:00
Anton Tarasov
2a17202fd9 JBR-1609 Jupyter Notebook eventually causes IDEA to become unresponsive on Mac OSX
(cherry picked from commit 8ae0be8eb6)
2021-06-18 07:02:29 +03:00
Anton Tarasov
d7bd4a0688 JBR-1786 Weird white border for IDE window
(cherry picked from commit 4b09614a0e)
2021-06-18 07:02:28 +03:00
Vyacheslav Moklev
1697bfe33a JBR-1552 Invalid screen bounds in full screen mode
Check is window is not in undecorated state

(cherry picked from commit 5547701e2c)
2021-06-18 07:02:27 +03:00
Vyacheslav Moklev
cdd1d03d44 JBR-1509 Client area size is wrong in Borderless mode
Fix client area size

(cherry picked from commit 00d32e58dc)
2021-06-18 07:02:26 +03:00
Anton Tarasov
ce7a473777 JBR-1770 [windows] frame does not open as maximized
(cherry picked from commit d9dfc3c6c5)
2021-06-18 07:02:25 +03:00
Anton Tarasov
50a6f90883 JBR-1693 difficult to input Japanese text with "Fast" Key Repeat
(cherry picked from commit 12de3e287e)
2021-06-18 07:02:24 +03:00
Anton Tarasov
3a899cfab9 JBR-1429 Scale is huge due to GDK_SCALE
(cherry picked from commit 1c3477df2e)
2021-06-18 07:02:23 +03:00
Anton Tarasov
bdeb56d93e JBR-1669 IDE-managed HiDPI mode is broken
(cherry picked from commit 461b0b5cd4)
2021-06-18 07:02:22 +03:00
Anton Tarasov
2443130b36 JBR-1650 propagate custom decoration title bar height to native
(cherry picked from commit f6fc65d014)
2021-06-18 07:02:21 +03:00
Anton Tarasov
5f286a45fb JBR-1629 Maximized window cut at the right and bottom
(cherry picked from commit 9e768377db)
2021-06-18 07:02:19 +03:00
Anton Tarasov
65ad9dbfd2 JBR-1492 Not able to start Intellij Idea 2017.2.5 with modified vmoptions
(cherry picked from commit e7ca6db66b)
2021-06-18 07:02:18 +03:00
Anton Tarasov
a6465c89a2 JBR-1427 pycharm jupyter preview stuck and no response when click on preview.
(cherry picked from commit 1746b04686)
2021-06-18 07:02:17 +03:00
Anton Tarasov
1766a8d6c3 IDEA-210154 Borderless UI: Top frame of IDEA window is blue
(cherry picked from commit 2dd4163bc4)
2021-06-18 07:02:16 +03:00
Anton Tarasov
88d01ca7a0 JBR-1365 force IDE-managed HiDPI on Linux for fractional scales
(cherry picked from commit f092ff3962)
2021-06-18 07:02:15 +03:00
Anton Tarasov
a1e3b224b5 JBR-1351 Borderless UI: Bold frame around IDEA window appears on non-HiDPI display
(cherry picked from commit 06d35de069)
2021-06-18 07:02:14 +03:00
Anton Tarasov
c37d5b917a JBR-1313 wrong insets for non-resizable custom-decorated frame
(cherry picked from commit 9179718cb6)
2021-06-18 07:02:13 +03:00
Anton Tarasov
833f9efa09 JBR-1293 do not modify client bounds when custom-decorated frame is set undecorated
(cherry picked from commit cb188edaab)
2021-06-18 07:02:12 +03:00
Anton Tarasov
c004cc885f JBR-1278 allow native border and shadow for custom decoration mode
(cherry picked from commit a879ad5739)
2021-06-18 07:02:11 +03:00
Anton Tarasov
a4aff6cd0b JRE-1232 forwardport: JRE-1228 support custom frame decoration
(cherry picked from commit d2820524a1)
2021-06-18 07:02:10 +03:00
Anton Tarasov
e329c372ce JRE-1162 [jdk11] support on-the-fly DPI change on linux
(cherry picked from commit c06c4c69d3)
2021-06-18 07:02:09 +03:00
Anton Tarasov
c16a04ff4d JRE-1142 [jdk11] hidpi is not detected since Ubuntu 18.04
(cherry picked from commit be4f8c0d9d)
2021-06-18 07:02:08 +03:00
Anton Tarasov
36cd30a341 JRE-1111 [JDK11] java/beans/Beans/TypoInBeanDescription.java crashes at libawt_xawt.so+0x4a30d
(cherry picked from commit b89e6aed0b)
2021-06-18 07:02:07 +03:00
Anton Tarasov
77e0cfb468 fix JNI_OnUnload definition
(cherry picked from the commit  3571e39071)

(cherry picked from commit 1019d8f0f2)
2021-06-18 07:02:06 +03:00
Anton Tarasov
405d37f58e JRE-981 IM workaround does not work anymore
forward port of 2d7c29b in JetBrains/jdk8u_jdk

(cherry picked from commit f3ccc53e02)
2021-06-18 07:02:05 +03:00
Anton Tarasov
6efcd17c63 JRE-938 [windows] Frame.setMaximizedBounds not hidpi-aware
(cherry picked from commit cc97899923320e1fa17f5e44975c4a0f0ba51014)
(cherry picked from commit ccfe65be7f)
2021-06-18 07:02:04 +03:00
Anton Tarasov
7df9173504 JRE-907 macOS: add ability to check for scaled display mode
(cherry picked from commit e496262aa1)
2021-06-18 07:02:03 +03:00
Anton Tarasov
eb74762123 JRE-934 Diff viewer errors are not visible on HiDPI Linux
(cherry picked from commit 641a09dd52)
2021-06-18 07:02:02 +03:00
Anton Tarasov
118870b319 [jdk9] HiDPI scale is not detected on some linux desktops
(cherry picked from commit 9279d80110)
2021-06-18 07:02:01 +03:00
Anton Tarasov
8ca137edb9 JRE-681 [windows] direct drawing into frame graphics may have wrong translate
(cherry picked from commit 6ea1d45fd1)
2021-06-18 07:02:00 +03:00
Anton Tarasov
bae13c07c5 Read org.gnome.desktop.interface/scaling-factor
(cherry picked from commit 277357ae73)
2021-06-18 07:01:59 +03:00
Anton Tarasov
f60a46cdf0 Revert "8239894: Xserver crashes when the wrong high refresh rate is used"
This code is needed for "Read org.gnome.desktop.interface/scaling-factor".
Keep it until "JDK-8260270 Implement the HiDPI scale factor reading" is fixed.

This reverts commit a7c2ebc7
2021-06-18 07:01:58 +03:00
Anton Tarasov
ad27479214 Do not scale base font in HiDPI mode on Linux
(cherry picked from commit 6fb2c36529)
2021-06-18 07:01:57 +03:00
Anton Tarasov
adc2600e1c Allow HiDPI mode on Linux
(cherry picked from commit 34234263fb)
2021-06-18 07:01:55 +03:00
Anton Tarasov
6e2c787752 JRE-772 swing returns incorrect FRC when AA is off
(cherry picked from commit a161897d908aa10da6306c06452c5d6317fed2f0)
(cherry picked from commit 2bf5a7ca5c)
2021-06-18 07:01:54 +03:00
Anton Tarasov
ed0a1b279e JRE-711 Horizontal grey lines appear in every window in IntelliJ Idea
(cherry picked from commit 62000130d86e5831d81cfb24659386c6930f84cf)

(cherry picked from commit e2d1655703)
2021-06-18 07:01:53 +03:00
Anton Tarasov
5860aa0e44 JRE-681 [windows] direct drawing into frame graphics may have wrong translate
(cherry picked from commit ab6dee4c1fc453ad3cb5adb69fc243e550d184ae)

(cherry picked from commit 6ea1d45fd1)
2021-06-18 07:01:52 +03:00
Anton Tarasov
dff1b757b0 JRE-665 Navigate Class/File/Symbol, Find in Path popup windows don't pick characters from input method
(cherry picked from commit 676f305b2b3b278e305bd4d9bde4269f27b3d676)
(cherry picked from commit 6ce31e0a32)
2021-06-18 07:01:51 +03:00
Anton Tarasov
54ebb0d07e JRE-616 [linux] notify when dpi correction factor is applied to fonts
(cherry picked from commit f57d41f3118bfd773c99ce32d58cfae16931be6a)
(cherry picked from commit 6246abc72f)
2021-06-18 07:01:50 +03:00
Anton Tarasov
e7f6e37f06 JRE-612 [windows] icon in frame title is not dpi-aware
(cherry picked from commit dec04385177a2abb677add909d3b94f94c62a14e)

(cherry picked from commit 38466cbab0)
2021-06-18 07:01:49 +03:00
Anton Tarasov
b62f17070f JRE-604 [fps] frame's client area is one pixel beneath frame's borders
Adopted.

(cherry picked from commit ef2870ee38)
2021-06-18 07:01:48 +03:00
Anton Tarasov
cb12e694ab JRE-596 [windows] popup positioning is broken with JRE-573
Adopted: moved to AwtWindow::Reshape

(cherry picked from commit c5cc28d85d)
2021-06-18 07:01:47 +03:00
Anton Tarasov
a0afd553a7 JRE-577 Goland 18 displays out of memory
(cherry picked from commit 2daaf21e420d4af15d3b1bfeb3f896074bea1e61)

(cherry picked from commit 9ea2011948)
2021-06-18 07:01:46 +03:00
Anton Tarasov
cc33172852 JRE-573 [windows] window client area bounds mismatch
Apply only WmEraseBkgnd

(cherry picked from commit afa68f7ad6440303c6417be3f675b1c4644b6014)

(cherry picked from commit 0651b45e13)
2021-06-18 07:01:45 +03:00
Anton Tarasov
6891eb5827 JRE-489 -Dswing.bufferPerWindow is fractional scale unfriendly
(cherry picked from commit 5e183c397b)
2021-06-18 07:01:44 +03:00
Anton Tarasov
d74c443456 JRE-310 check for Windows8.1 when enabling ui scale
Was "don't fallback on fractional scale" in JBSDK9.

(cherry picked from commit 263d8641974d263075c93f11c4db6208754d7325)

(cherry picked from commit deeda6fada)
2021-06-18 07:01:43 +03:00
Anton Tarasov
b985ac9b74 JRE-382 Three AWT-tests become hanging starting since master-875
(cherry picked from commit 7d492101db8fcbb3d285fd8e9669f74b0e0fce8f)
(cherry picked from commit b965f85c1b)
2021-06-18 07:01:42 +03:00
Anton Tarasov
0f30d55981 JRE-373 [macos] nativeCreateNSWindow deadlocks with a11y
(cherry picked from commit 72c77a992bbf1b95b82ffc08cb2f4f3bc36b3657)

(cherry picked from commit aa09fa2c85)
2021-06-18 07:01:41 +03:00
Anton Tarasov
b5da90bfe7 IDEA-172422 Popup at the wrong place on the second monitor (new hidpi)
Adopted: moved to AwtWindow::Reshape

(cherry picked from commit 11a0911d65)
2021-06-18 07:01:40 +03:00
Anton Tarasov
24ca47f63a JRE-309 [windows] on-screen position of a component is not pixel-perfect in user space in JRE-HiDPI mode
Adopted: moved to AwtWindow::Reshape

(cherry picked from commit 985908cf10)
2021-06-18 07:01:39 +03:00
Anton Tarasov
12f8dffe41 JRE-269 JLabel doesn't scale <code>text</code> HTML fragments.
(cherry picked from commit 9ef72b6c3a477e4225f9b98e30fa9190613520e4)
(cherry picked from commit c17bc728ee)
2021-06-18 07:01:38 +03:00
Anton Tarasov
1801fef225 JRE-225 [macos] IDEA hangs on attempt to call getDefaultScreenDevice() from EDT
(cherry picked from commit 76aba25)

(cherry picked from commit df11dcc97bb5556ac5d0299b773a512b4f0bb5bb)
(cherry picked from commit aeea6c1ca3)
2021-06-18 07:01:37 +03:00
Anton Tarasov
7f9635230e JRE-210 JEditorPane may return wrong preferred size as it moves b/w monitors of different scale
(cherry picked from commit 6c3087e6bda32ae9b095e069d8bea614502f5c03)
(cherry picked from commit adb3a4be16)
2021-06-18 07:01:36 +03:00
Anton Tarasov
219c5cbc01 JRE-119 [suppress updateGC() for WFileDialogPeer/WPrintDialogPeer]
updateGC() is called from WWindowPeer.<init> though it's not applicable to the named dialogs
as they don't have native AwtWindow peer required for the method.

(cherry picked from commit 72ed9f653177e273b811cfe70c2dba102a8636e4)
(cherry picked from commit cec49aaa38)
2021-06-18 07:01:35 +03:00
Anton Tarasov
52171d4bbf JRE-119 [use default "sun.java2d.dpiaware=true" to be dpi-aware on Window 7]
This lets awt_Win32GraphicsEnv.cpp SetProcessDPIAwareProperty() call Win7 specific ::SetProcessDPIAware() API func.

(cherry picked from commit 5e7a766090810d839f4352d06fc2812499d766f8)
(cherry picked from commit 7d1d43bfa1)
2021-06-18 07:01:34 +03:00
Anton Tarasov
a285c0c5a8 JRE-119 [Dynamically set DPI-awareness level to enable backward compatible HiDPI behavior]
Adopted: rely on java.manifest

(cherry picked from commit d00cfa4dc62a14a4cf89df9d4c4899970c9fc9e8)

Adopted

(cherry picked from commit 60be76b725)
2021-06-18 07:01:32 +03:00
Anton Tarasov
16267fc6c5 JRE-119 [ask if ui scale is enabled natively]
(cherry picked from commit 801f45875fd8699edcbda5896210cec191062261)
(cherry picked from commit 20edebdefa)
2021-06-18 07:01:30 +03:00
Anton Tarasov
53453402dd IDEA-153474 let JDK detect Xft.dpi value on non-GTK Linux DEs
Use the GTK method:

https://developer.gnome.org/gobject/stable/gobject-The-Base-Object-Type.html#g-object-get

to retrieve "gtk-xft-dpi" integer property of the X settings.

Add the property to JDK's GtkEngine & gtk2-interface.
Then read the property via GtkEngine from GTK LaF when "gnome.Xft/dpi" is undefined. It's assumed GTK LaF is forcedly installed.

(cherry picked from commit e05fc391ae0a3cc389e836441f882c0cf6ab3b99)
(cherry picked from commit fd615a5b45)
2021-06-18 07:01:29 +03:00
Anton Tarasov
5823129592 IDEA-148854: AppCode crashes randomly every 15 mins or so
(cherry picked from commit 02f9a5fbb4924ff67c8a04c15e490acfcc750003)
(cherry picked from commit b8f4b4a9ed)
2021-06-18 07:01:28 +03:00
Vitaly Provodin
354d1a819e updated JTreg exclude list 2021-06-18 07:01:27 +03:00
Alexey Ushakov
27ea833193 Resolve merge compile problems on mac
(cherry picked from commit d1ed8ab118)
2021-06-18 07:01:26 +03:00
Anton Tarasov
3ce88aba4c IDEA-152524 can't compile fontconfig changes on Windows
(cherry picked from commit 4c8351fecf)

(cherry picked from commit 5faebc73d5)
2021-06-18 07:01:25 +03:00
Alexey Ushakov
08c9bb5338 IDEA-57233 Editor font antialising/appearance problems on Linux
Used desktop DPI instead of hard-coded 72
Compensated increased glyph bitmap size by adjusting font size
Added LCD filter for sub-pixel rendering
Use fontconfig library to provide right rendering options for fonts
Corrected sizes passed to fontconfig library and hinting disabling policy
Added logging and versioned fontconfig lib loading
Resolved font rendering problem in lenses

(cherry picked from commit 0456745afb)

IDEA-152816, IDEA-152454 fix text rendering issues (text cutoff and incorrect rendering in editor fragment components)

FcMatchFont-type pattern substitutions shouldn't be invoked before specific font is selected - it can apply unrelated rules

port commit e21cd635 from JBR 9

(cherry picked from commit 5d704a963b)

partially rollback JBR-363 fix, to apply corresponding change from OpenJDK 12

(cherry picked from commit 3d7ac30072)
2021-06-18 07:01:23 +03:00
Vitaly Provodin
eb423b9af0 JBR-3401 enable macos-aarhc64 builds 2021-06-18 07:01:22 +03:00
Vitaly Provodin
b060c5f809 JBR-3305 remove the option --disable-warnings-as-errors from configure 2021-06-18 07:01:21 +03:00
Vitaly Provodin
9b6ea07556 JBR-3398 remove the Experimental AOT and JIT Compiler (JEP 410) 2021-06-18 07:01:20 +03:00
Alexey Ushakov
e96d04180f JBR-2807: JDK15: update modules.list to resolve jbr build failure
removed nashorn modules
2021-06-18 07:01:19 +03:00
Vitaly Provodin
0b02bde580 JBR-2130 remove module jdk.pack 2021-06-18 07:01:18 +03:00
Vitaly Provodin
ab3551bdbc JBR-2922 add JCEF to jbrsdk binaries
& fix a misprint in get_mods_list

JBR-2922 add JCEF to jbrsdk binaries

& fix a misprint in get_mods_list
2021-06-18 07:01:17 +03:00
Vitaly Provodin
b5c77fb964 JBR-2912 add JBR 15 builds with DCEVM 2021-06-18 07:01:16 +03:00
Vitaly Provodin
37f417fd8c JBR-2864 initial commit of DCEVM patches reworked for 15 2021-06-18 07:01:15 +03:00
Vitaly Provodin
73bf97bd20 JBR-2812 remove --with-import-modules from configure for aarch64 2021-06-18 07:01:14 +03:00
Anton Tarasov
e32706f9b1 JBR-2812 bundle jcef in jmod format instead of modular-sdk
Build test-image with non-jcef build target
2021-06-18 07:01:13 +03:00
Vitaly Provodin
a6f29f4867 JBR-2787 fix copying jcef files into jbr/jbrsdk binaries 2021-06-18 07:01:11 +03:00
Vitaly Provodin
4f68c82fd7 JBR-2758 refactor building scripts to apply patches adding required modules instead of excluding
Add jogl and gluegen modules to support jcef osr mode
2021-06-18 07:01:10 +03:00
Anton Tarasov
2f07166948 JBR-2016 add jcef module and export packages to it
(cherry picked from commit cf997f71c6)
2021-06-18 07:01:09 +03:00
Vitaly Provodin
008d7eee43 JBR-2473 modify building scripts to add dcevm clauses, add git config to docker image
(cherry picked from commit 2620c62848)
2021-06-18 07:01:08 +03:00
Vitaly Provodin
11713185dc JBR-2473 add initial set of DCEVM patches
(cherry picked from commit c0c0a96cf4)
2021-06-18 07:01:07 +03:00
Vitaly Provodin
4e17fa64f4 JBR-2395 eliminate JavaFX from JBR 2021-06-18 07:01:06 +03:00
Vitaly Provodin
d2a7ea87c0 JBR-2409 fix prameters for configure 2021-06-18 07:01:05 +03:00
Vitaly Provodin
7f42f40db4 JDK14: exclude dependencies on jcef in x86, fastdebug builds 2021-06-18 07:01:04 +03:00
Vitaly Provodin
817f70bdff JBR-2396 fix CONF names 2021-06-18 07:01:03 +03:00
Vitaly Provodin
68f84ba2e0 JBR-2394 replace --disable-debug-symbols with --with-native-debug-symbols=none 2021-06-18 07:01:02 +03:00
Vitaly Provodin
0939a236e4 add exec permitions to configure 2021-06-18 07:01:01 +03:00
Vitaly Provodin
827d1ff80a split checkout before building JBR+JFX or JBR+JCEF on two separate commands 2021-06-18 07:01:00 +03:00
Vitaly Provodin
405515f60f change BOOT_JDK, fix target names 2021-06-18 07:00:58 +03:00
Vitaly Provodin
3e57380f85 JBR-2291 add vendor info into bundles 2021-06-18 07:00:57 +03:00
Vitaly Provodin
db84a1051d JBR-2324 address new layout in mac jcef 80.0.4+g74f7b0c+chromium-80.0.3987.122 2021-06-18 07:00:56 +03:00
Vitaly Provodin
5dc064ab58 JBR-2320 add jdk.attach module into JBR 2021-06-18 07:00:55 +03:00
Vitaly Provodin
908e5cf3fc JBR-2217 provide JCEF-only (no JavaFX) bundle for master/202 branches 2021-06-18 07:00:54 +03:00
Vitaly Provodin
6f2292fe29 JBR-2212 add scripts for linux_x86, linux_aarch64, linux_x64_fastdebug, osx_fastdebug, windows_x86 2021-06-18 07:00:53 +03:00
Vitaly Provodin
ff7a904f37 JBR-1643 fix intermittent fialures of Windows builds at make/Init.gmk:304
combine images and test-image into one make invocation
2021-06-18 07:00:52 +03:00
Vitaly Provodin
a2549d1caf JBR-2181 create two separate JBR bundles with JFX and JFX+JCEF 2021-06-18 07:00:50 +03:00
Vitaly Provodin
1e8510b482 JBR-2148 modify signapp&build scripts to match to the new layout 2021-06-18 07:00:49 +03:00
Vitaly Provodin
1e24fd96b5 JBR-2084 modify scripts to sign Contents/MacOS/libjli.dylib as a a normal file 2021-06-18 07:00:48 +03:00
Vitaly Provodin
4eeb0e9c48 JBR-1821 notarize JBR bundles as a standalone app 2021-06-18 07:00:47 +03:00
Vitaly Provodin
7e541072b8 JBR-2162 move building scripts from TC to JBR repo 2021-06-18 07:00:46 +03:00
Anton Tarasov
ce9acd21c9 JBR-2016 add jcef module and export some sun.* packages to it 2021-06-18 07:00:45 +03:00
Vitaly Provodin
f3f16efcfc JBR-2014 add jdk.hotspot.agent module to jbr 2021-06-18 07:00:44 +03:00
Vitaly Provodin
d3f6573f6b JBR-1286 add jdk.compiler into JBR 2021-06-18 07:00:43 +03:00
Vitaly Provodin
145a7ebe91 JBR-1199 add JBR modules list for jlink 2021-06-18 07:00:42 +03:00
Vitaly Provodin
87f50b5e0c Update docker script to create jdk15 build env 2021-06-18 07:00:41 +03:00
Vitaly Provodin
352d574213 JBR-3045 add pressing ESC to close the dialog after test completion
(cherry picked from commit 44d8b28b0b)
2021-06-18 07:00:40 +03:00
Vitaly Provodin
c869cb05f8 JBR-3040 press the button END at the beggining in order to avoid text selection
(cherry picked from commit 1c2bf33db2)
2021-06-18 07:00:39 +03:00
Vitaly.Provodin
4ce0eeba46 updated JTreg exclude list 2021-06-18 07:00:38 +03:00
Jesper Wilhelmsson
a051e735cd Merge 2021-06-18 00:53:09 +00:00
Rajan Halade
58e6e6d919 8268678: LetsEncryptCA.java test fails as Let’s Encrypt Authority X3 is retired
Reviewed-by: xuelei
2021-06-18 00:49:40 +00:00
Ioi Lam
bb24fa652a 8267189: Remove duplicated unregistered classes from dynamic archive
Reviewed-by: ccheung, minqi
2021-06-17 22:19:23 +00:00
Vladimir Ivanov
9130b8a9d7 8268371: C2: assert(_gvn.type(obj)->higher_equal(tjp)) failed: cast_up is no longer needed
Reviewed-by: roland, kvn
2021-06-17 21:25:46 +00:00
Vladimir Ivanov
8545269268 8268676: assert(!ik->is_interface() && !ik->has_subklass()) failed: inconsistent klass hierarchy
Reviewed-by: kvn, roland, neliasso
2021-06-17 21:17:48 +00:00
Xin Liu
fa3b44d438 8268638: semaphores of AsyncLogWriter may be broken when JVM is exiting.
Reviewed-by: dholmes, phh
2021-06-17 20:27:14 +00:00
Kim Barrett
c98d50848b 8268265: MutableSpaceUsedHelper::take_sample() hits assert(left >= right) failed: avoid overflow
Reviewed-by: tschatzl, iwalulya
2021-06-17 19:05:10 +00:00
Thomas Schatzl
f2afe0a513 8268556: Use bitmap for storing regions that failed evacuation
Reviewed-by: kbarrett, iwalulya, sjohanss
2021-06-17 17:22:09 +00:00
Daniel D. Daugherty
b66001a594 8268971: ProblemList tools/jpackage/windows/WinInstallerIconTest.java on win-x64
Reviewed-by: herrick
2021-06-17 16:53:22 +00:00
Jonathan Gibbons
0011b52ee8 8264843: Javac crashes with NullPointerException when finding unencoded XML in <pre> tag
Reviewed-by: hannesw
2021-06-17 16:37:35 +00:00
Fernando Guallini
2047da7dcc 8265297: javax/net/ssl/SSLSession/TestEnabledProtocols.java failed with "RuntimeException: java.net.SocketException: Connection reset"
Reviewed-by: xuelei, rhalade
2021-06-17 16:23:56 +00:00
Paul Sandoz
091bc4a1a6 8268353: Test libsvml.so is and is not present in jdk image
Reviewed-by: sviswanathan, jiefu
2021-06-17 14:55:18 +00:00
Jonathan Gibbons
69d01b6bca 8249899: jdk/javadoc/tool/InlineTagsWithBraces.java uses @ignore w/o bug-id
8249897: jdk/javadoc/tool/LangVers.java uses @ignore w/o bug-id
8249898: jdk/javadoc/tool/6176978/T6176978.java uses @ignore w/o bug-id

Reviewed-by: hannesw
2021-06-17 14:09:11 +00:00
Patrick Concannon
7d7bdbe135 8268776: Test ADatagramSocket.java missing /othervm from @run tag
Reviewed-by: dfuchs
2021-06-17 09:35:08 +00:00
Julia Boes
344e3edf76 8268080: java/util/concurrent/forkjoin/AsyncShutdownNow.java fails with java.util.concurrent.RejectedExecutionException
Co-authored-by: Doug Lea <dl@openjdk.org>
Reviewed-by: chegar, dfuchs
2021-06-17 09:10:27 +00:00
Michael McMahon
2d088fa91d 8268294: Reusing HttpClient in a WebSocket.Listener hangs.
Reviewed-by: dfuchs
2021-06-17 07:13:59 +00:00
David Holmes
e84461072a 8268927: Windows: link error: unresolved external symbol "int __cdecl convert_to_unicode(char const *,wchar_t * *)"
Reviewed-by: stuefe
2021-06-17 07:02:47 +00:00
Eric Liu
4c9aefdb61 8268739: AArch64: Build failure after JDK-8267663
Reviewed-by: aph, dholmes
2021-06-17 02:47:00 +00:00
Jie Fu
112ddb7633 8268641: [foreign] assert(allocates2(pc)) failed: not in CodeBuffer memory with ShenandoahGC
Reviewed-by: rbackman, kvn
2021-06-17 02:10:52 +00:00
Jesper Wilhelmsson
3637e50b30 Merge 2021-06-17 01:05:54 +00:00
David Holmes
9f7851b5f5 8260194: Update the documentation for -Xcheck:jni
Reviewed-by: coleenp, hseigel
2021-06-16 23:58:24 +00:00
Xin Liu
02c9bf087e 8268852: AsyncLogWriter should not overide is_Named_thread()
Reviewed-by: dholmes, ysuenaga
2021-06-16 23:54:21 +00:00
Yasumasa Suenaga
ee03bc6d0a 8268863: ProblemList serviceability/sa/TestJmapCoreMetaspace.java on linux-x64 with ZGC
Reviewed-by: dcubed
2021-06-16 23:21:51 +00:00
Daniel D. Daugherty
f0f2178876 8268909: ProblemList jdk/jfr/api/consumer/streaming/TestLatestEvent.java on win-x64
Reviewed-by: mikael, dfuchs
2021-06-16 19:19:00 +00:00
Rajan Halade
54f5ffeaad 8259338: Add expiry exception for identrustdstx3 alias to VerifyCACerts.java test
Backport-of: b836b83b2a
2021-06-16 18:53:37 +00:00
Jonathan Gibbons
2c7e47e12b 8268774: Residual logging output written to STDOUT, not STDERR
Reviewed-by: prappo, hannesw
2021-06-16 18:03:48 +00:00
Daniel Fuchs
8ea0606aba 8268714: [macos-aarch64] 7 java/net/httpclient/websocket tests failed
Reviewed-by: chegar, michaelm
2021-06-16 17:24:06 +00:00
Rajan Halade
b836b83b2a 8259338: Add expiry exception for identrustdstx3 alias to VerifyCACerts.java test
Reviewed-by: xuelei
2021-06-16 17:10:40 +00:00
Bradford Wetmore
38dbe05e00 8268901: JDK-8268768 missed removing two files
Reviewed-by: mcimadamore
2021-06-16 16:59:02 +00:00
Coleen Phillimore
c20f80a4d2 8259066: Obsolete -XX:+AlwaysLockClassLoader
Reviewed-by: hseigel
2021-06-16 16:34:08 +00:00
Ioi Lam
e4908a439a 8268778: CDS check_excluded_classes needs DumpTimeTable_lock
Reviewed-by: ccheung, minqi
2021-06-16 16:05:19 +00:00
Christian Hagedorn
9ad19f7838 8256934: C2: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
Reviewed-by: roland, vlivanov
2021-06-16 13:02:51 +00:00
Coleen Phillimore
72b3b0af08 8267752: KVHashtable doesn't deallocate entries
Reviewed-by: iklam, stuefe
2021-06-16 12:43:11 +00:00
Coleen Phillimore
af13fe1107 8267870: Remove unnecessary char_converter during class loading
Reviewed-by: dholmes, iklam
2021-06-16 12:41:51 +00:00
David Holmes
19f5fab175 8268861: Disable Windows-Aarch64 build in GitHub Actions
Reviewed-by: mikael, sjohanss
2021-06-16 11:59:43 +00:00
Stefan Johansson
59de99d119 8267271: Fix gc/arguments/TestNewRatioFlag.java expectedNewSize calculation
Reviewed-by: tschatzl, kbarrett
2021-06-16 08:59:07 +00:00
Roland Westrelin
4d545a1f86 8267988: C2: assert(!addp->is_AddP() || addp->in(AddPNode::Base)->is_top() || addp->in(AddPNode::Base) == n->in(AddPNode::Base)) failed: Base pointers must match (addp 1301)
Reviewed-by: chagedorn, vlivanov, kvn
2021-06-16 07:36:07 +00:00
Calvin Cheung
3ad658677b 8268078: ClassListParser::_interfaces should be freed
Reviewed-by: minqi, iklam, coleenp
2021-06-16 02:17:41 +00:00
Denghui Dong
48d456281e 8268780: Use 'print_cr' instead of 'print' for the message 'eliminated <owner is scalar replaced>'
Reviewed-by: cjplummer, zgu, dcubed
2021-06-16 02:08:37 +00:00
Daniel D. Daugherty
b18de6cf79 8268851: ProblemList jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java on linux-X64
Reviewed-by: bpb
2021-06-15 23:50:08 +00:00
Jesper Wilhelmsson
e0f6f70d3f Merge 2021-06-15 22:45:28 +00:00
Kim Barrett
00e33a45fe 8268647: Generation::expand_and_allocate has unused "parallel" argument
Reviewed-by: ayang, tschatzl
2021-06-15 22:05:15 +00:00
Daniel D. Daugherty
10068c1bac 8268830: ProblemList 3 serviceability/dcmd/framework tests with ZGC on win-x64
Reviewed-by: kbarrett
2021-06-15 21:48:36 +00:00
Maurizio Cimadamore
788b309563 8268768: idea.sh has been updated in surprising and incompatible ways
Reviewed-by: erikj
2021-06-15 20:37:20 +00:00
Daniel D. Daugherty
9ac0609ed1 8268828: ProblemList compiler/intrinsics/VectorizedMismatchTest.java on win-x64
Reviewed-by: ccheung
2021-06-15 20:36:38 +00:00
Chris Plummer
fe7a44de63 8268723: Problem list SA core file tests on OSX when using ZGC
Reviewed-by: dholmes, dcubed, sspitsyn
2021-06-15 18:59:04 +00:00
Joe Darcy
31a055e67a 8268736: Use apiNote in AutoCloseable.close javadoc
Reviewed-by: bpb, naoto
2021-06-15 18:52:54 +00:00
Hannes Wallnöfer
76cad4b1ae 8263321: Regression 8% in javadoc-steady in 17-b11
Reviewed-by: prappo, vromero
2021-06-15 15:56:28 +00:00
Sergey Bylokhov
0b09129fae 8268620: InfiniteLoopException test may fail on x86 platforms
Reviewed-by: prr, trebari, azvegint
2021-06-15 15:29:33 +00:00
Nils Eliasson
e36136fa93 8268125: ZGC: Clone oop array gets wrong acopy stub
Reviewed-by: vlivanov
2021-06-15 11:33:12 +00:00
Jan Lahoda
35d867df1f 8268663: Crash when guards contain boolean expression
Reviewed-by: vromero
2021-06-15 09:04:35 +00:00
Nils Eliasson
d384093289 8268125: ZGC: Clone oop array gets wrong acopy stub
Reviewed-by: kvn, vlivanov
2021-06-15 08:53:39 +00:00
David Holmes
9f3c7e74ff 8238649: Call new Win32 API SetThreadDescription in os::set_native_thread_name
Co-authored-by: Markus GaisBauer <markus.gaisbauer@dynatrace.com>
Reviewed-by: stuefe, luhenry
2021-06-15 02:12:57 +00:00
Vladimir Kozlov
4d8b5c70df 8268347: C2: nested locks optimization may create unbalanced monitor enter/exit code
Reviewed-by: roland, vlivanov, dcubed
2021-06-14 23:41:50 +00:00
Jie Fu
4a6da99f28 8268643: SVML lib shouldn't be generated when C2 is absent
Reviewed-by: erikj
2021-06-14 23:39:41 +00:00
David Holmes
a5bf5e0e5f 8266614: update manpage for -Xlog:async
Reviewed-by: hseigel, xliu
2021-06-14 23:02:38 +00:00
Valerie Peng
f69e2d5651 8267397: AlgorithmId's OID cache is never refreshed
Reviewed-by: xuelei
2021-06-14 20:40:26 +00:00
Valerie Peng
ee3015968d 8268621: SunJCE provider may throw unexpected NPE for un-initialized AES KW/KWP Ciphers
Reviewed-by: xuelei
2021-06-14 20:34:44 +00:00
Leonid Mesnik
2e70bc35df 8268626: Remove native pre-jdk9 support for jtreg failure handler
Reviewed-by: erikj
2021-06-14 19:35:24 +00:00
Dean Long
702e3ff054 8268366: Incorrect calculation of has_fpu_registers in C1 linear scan
Reviewed-by: kvn, chagedorn
2021-06-14 19:25:49 +00:00
Guoxiong Li
bca914b29e 8268670: yield statements doesn't allow ~ or ! unary operators in expression
Reviewed-by: vromero, jlahoda
2021-06-14 19:02:23 +00:00
Zhengyu Gu
e59acd9860 8268699: Shenandoah: Add test for JDK-8268127
Reviewed-by: rkennke
2021-06-14 18:07:34 +00:00
Jesper Wilhelmsson
17295b1bb0 Merge
Reviewed-by: dcubed
2021-06-14 15:55:57 +00:00
Calvin Cheung
c088d093e2 8268522: InstanceKlass::can_be_verified_at_dumptime() returns opposite value
Reviewed-by: dholmes, minqi, iklam
2021-06-14 15:02:55 +00:00
Jan Lahoda
abe20c188c 8268333: javac crashes when pattern matching switch contains default case which is not last
Reviewed-by: vromero
2021-06-14 14:25:32 +00:00
Anton Litvinov
c0b4407d09 8262731: [macOS] Exception from "Printable.print" is swallowed during "PrinterJob.print"
Reviewed-by: prr
2021-06-14 13:27:59 +00:00
Markus Grönlund
b318535452 8267579: Thread::cooked_allocated_bytes() hits assert(left >= right) failed: avoid underflow
Backport-of: c4207355d3
2021-06-14 13:11:33 +00:00
Markus Grönlund
c4207355d3 8267579: Thread::cooked_allocated_bytes() hits assert(left >= right) failed: avoid underflow
Reviewed-by: dcubed, stefank, kbarrett
2021-06-14 10:41:00 +00:00
Chris Hegarty
fe48ea9d79 8268342: java/foreign/channels/TestAsyncSocketChannels.java fails with "IllegalStateException: This segment is already closed"
Reviewed-by: dfuchs
2021-06-14 08:29:49 +00:00
Rafael Winterhalter
51f3427e9b 8266791: Annotation property which is compiled as an array property but changed to a single element throws NullPointerException
Reviewed-by: darcy, jfranck
2021-06-14 08:24:24 +00:00
Ioi Lam
ba601b8407 8268520: VirtualSpace::print_on() should be const
Reviewed-by: kbarrett, stuefe, tschatzl
2021-06-14 05:55:20 +00:00
David Holmes
1ba4e0cada 8257038: Remove expired flags in JDK 18
Reviewed-by: kbarrett, ccheung
2021-06-13 22:16:12 +00:00
Daniel D. Daugherty
90c1034cd4 8268644: ProblemList serviceability/sa/ClhsdbJstackXcompStress.java in -Xcomp mode
Reviewed-by: azvegint
2021-06-12 13:53:07 +00:00
Yi Yang
5cee23a9ed 8265518: C1: Intrinsic support for Preconditions.checkIndex
Reviewed-by: dfuchs, iveresov
2021-06-12 01:03:50 +00:00
Joe Darcy
a466b49e71 8267634: Update --release 17 symbol information for JDK 17 build 26
Reviewed-by: jjg, iris
2021-06-11 23:10:00 +00:00
Daniel D. Daugherty
6171ae4552 8268630: ProblemList serviceability/jvmti/CompiledMethodLoad/Zombie.java on linux-aarch64
Reviewed-by: erikj
2021-06-11 20:24:35 +00:00
Calvin Cheung
01054e6f5a 8268470: CDS dynamic dump asserts with JFR RecordingStream
Reviewed-by: minqi, iklam
2021-06-11 16:08:18 +00:00
Weijun Wang
e39346e708 8268093: Manual Testcase: "sun/security/krb5/config/native/TestDynamicStore.java" Fails with NPE
Reviewed-by: mullan
2021-06-11 15:12:11 +00:00
Igor Ignatyev
cce8da2c60 8268602: a couple runtime/os tests don't check exit code
Reviewed-by: dholmes
2021-06-11 12:40:44 +00:00
ScientificWare
49112fa575 8265909: build.tools.dtdbuilder.DTDBuilder.java failed detecting missing path of dtd_home
Reviewed-by: erikj
2021-06-11 12:25:37 +00:00
Daniel Fuchs
da043e99b8 8268555: Update HttpClient tests that use ITestContext to jtreg 6+1
Reviewed-by: chegar
2021-06-11 08:42:14 +00:00
Igor Ignatyev
a437ce839f 8268580: runtime/memory/LargePages/TestLargePagesFlags.java should be run in driver mode
Reviewed-by: dholmes
2021-06-11 05:05:23 +00:00
Igor Ignatyev
bd9c2fa73b 8268565: runtime/records/RedefineRecord.java should be run in driver mode
Backport-of: 94d0b0f981
2021-06-11 03:12:50 +00:00
Jie Fu
e3eef3b41a 8268576: jdk/jfr/event/gc/collection/TestSystemGc.java fails
Reviewed-by: egahlin, dholmes
2021-06-11 02:47:42 +00:00
Igor Ignatyev
94d0b0f981 8268565: runtime/records/RedefineRecord.java should be run in driver mode
Reviewed-by: hseigel
2021-06-11 02:44:08 +00:00
Hamlin Li
df65237b9a 8267930: Refine code for loading hsdis library
Reviewed-by: whuang, neliasso, ysuenaga
2021-06-11 01:20:47 +00:00
Daniel D. Daugherty
2e900da5f7 8268574: ProblemList tests failing due to UseBiasedLocking going away
Reviewed-by: cjplummer
2021-06-10 23:08:56 +00:00
Weijun Wang
7b2e7d8bab 8268525: Some new memory leak after JDK-8248268 and JDK-8255557
Reviewed-by: valeriep, ascarpino
2021-06-10 22:18:38 +00:00
Calvin Cheung
4fd2a14997 8267556: Enhance class paths check during runtime
Reviewed-by: minqi, iklam
2021-06-10 19:50:44 +00:00
Igor Ignatyev
53b6e2c85c 8267448: Add "ulimit -a" to environment.html
Reviewed-by: cjplummer
2021-06-10 18:05:16 +00:00
Leonid Mesnik
8c8422e0f8 8267893: Improve jtreg test failure handler do get native/mixed stack traces for cores and live processes
Reviewed-by: iignatyev
2021-06-10 17:45:53 +00:00
Leonid Mesnik
1e1039a7c8 8268223: Problemlist vmTestbase/nsk/jdi/HiddenClass/events/events001.java
Reviewed-by: amenkov, sspitsyn
2021-06-10 17:41:11 +00:00
Igor Ignatyev
5b8c51f59a 8268539: several serviceability/sa tests should be run in driver mode
Backport-of: 78cb6776b6
2021-06-10 17:19:37 +00:00
Igor Ignatyev
78cb6776b6 8268539: several serviceability/sa tests should be run in driver mode
Reviewed-by: sspitsyn
2021-06-10 17:06:19 +00:00
UncleNine
72672277e4 8268361: Fix the infinite loop in next_line
Reviewed-by: dholmes, sgehwolf, sspitsyn
2021-06-10 16:40:29 +00:00
Joe Darcy
b018c450e5 8267630: Start of release updates for JDK 18
8267632: Add source 18 and target 18 to javac
8267631: Add SourceVersion.RELEASE_18

Reviewed-by: iris, erikj, dholmes
2021-06-10 16:22:14 +00:00
Igor Ignatyev
74007890bb 8268542: serviceability/logging/TestFullNames.java tests only 1st test case
Reviewed-by: sspitsyn
2021-06-10 14:43:08 +00:00
Albert Mingkun Yang
a95e64ccc1 8268443: ParallelGC Full GC should use parallel WeakProcessor
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Reviewed-by: kbarrett, sjohanss, tschatzl
2021-06-10 14:32:46 +00:00
Igor Veresov
0a6c7d8a4b 8267424: CTW: C1 fails with "State must not be null"
Reviewed-by: kvn, roland
2021-06-10 14:18:04 +00:00
Erik Gahlin
e11f70aeb6 8003216: Add JFR event indicating explicit System.gc() call
Reviewed-by: jbachorik, mgronlun, tschatzl
2021-06-10 14:10:51 +00:00
Thomas Schatzl
2b41459e95 8267073: Race between Card Redirtying and Freeing Collection Set regions results in missing remembered set entries with G1
Reviewed-by: kbarrett, sjohanss
2021-06-10 13:28:55 +00:00
Leo Korinth
7cd5a6e7b5 8268537: (Temporary) Disable ParallelRefProcEnabled for Parallel GC
Reviewed-by: stefank, sjohanss
2021-06-10 13:19:43 +00:00
Erik Gahlin
f716711c7b 8265271: JFR: Allow use of .jfc options when starting JFR
Reviewed-by: mgronlun
2021-06-10 13:18:54 +00:00
Daniel D. Daugherty
f677163b8a 8266130: convert Thread-SMR stress tests from counter based to time based
Reviewed-by: cjplummer, dholmes
2021-06-10 13:09:26 +00:00
Igor Ignatyev
6c552a7b42 8268544: some runtime/sealedClasses tests should be run in driver mode
Reviewed-by: hseigel
2021-06-10 13:03:29 +00:00
Maurizio Cimadamore
f4b3170197 8268428: Test java/foreign/TestResourceScope.java fails: expected [M] but found [N]
Reviewed-by: dfuchs
2021-06-10 12:52:04 +00:00
Igor Ignatyev
6b6ff5360a 8268543: some runtime/verifier tests should be run in driver mode
Reviewed-by: hseigel
2021-06-10 12:29:44 +00:00
Rafael Winterhalter
09243822eb 8266766: Arrays of types that cannot be an annotation member do not yield exceptions
Reviewed-by: darcy, jfranck
2021-06-10 12:02:53 +00:00
Patrick Concannon
d43c8a74b3 8268124: Update java.lang to use switch expressions
Reviewed-by: naoto, darcy, mchung, iris, lancea, dfuchs
2021-06-10 11:12:37 +00:00
Markus Grönlund
a187fcc3ec 8238197: JFR: Rework setting and getting EventHandler
Reviewed-by: egahlin, jbachorik
2021-06-10 10:26:49 +00:00
Stefan Johansson
f770f771f8 8268390: G1 concurrent gc upgrade to full gc not working
Reviewed-by: kbarrett, tschatzl
2021-06-10 10:21:13 +00:00
Igor Ignatyev
e0c0b139d3 8268534: some serviceability/jvmti tests should be run in driver mode
Reviewed-by: sspitsyn
2021-06-10 09:52:07 +00:00
Igor Ignatyev
92f0b6d49e 8268532: several serviceability/attach tests should be run in driver mode
Reviewed-by: sspitsyn
2021-06-10 09:51:22 +00:00
Igor Ignatyev
964118f7fd 8268538: mark hotspot serviceability/logging tests which ignore external VM flags
Reviewed-by: sspitsyn
2021-06-10 09:49:23 +00:00
Igor Ignatyev
05090fc8fd 8268536: mark hotspot serviceability/dcmd tests which ignore external VM flags
Reviewed-by: sspitsyn
2021-06-10 09:48:10 +00:00
Igor Ignatyev
ae29f9cacd 8268530: resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java should be run in driver mode
Reviewed-by: sspitsyn
2021-06-10 09:42:26 +00:00
Sergey Bylokhov
ea19b0447c 8268481: Delete JAWT test files for mac
Reviewed-by: prr, pbansal
2021-06-10 09:08:43 +00:00
Markus Grönlund
f271eb8b84 8268303: Incorrect casts in JfrWriterHost::write for Ticks and Tickspan
Reviewed-by: egahlin
2021-06-10 08:58:03 +00:00
Jorn Vernee
ab01cb547d 8268339: Upstream: 8267989: Exceptions thrown during upcalls should be handled
Reviewed-by: psandoz, mcimadamore
2021-06-10 08:44:28 +00:00
Christoph Göttschkes
1fd81464ec 8268461: ARM32: vector intrinsics reaches ShouldNotReachHere
Reviewed-by: jiefu, njian
2021-06-10 08:27:54 +00:00
Matthias Baesken
78b09ab049 8268463: Windows 32bit build fails in DynamicCodeGenerated\libDynamicCodeGenerated.cpp
Reviewed-by: sspitsyn, cjplummer
2021-06-10 08:08:43 +00:00
Kim Barrett
5a666282a9 8263107: PSPromotionManager::copy_and_push_safe_barrier needs acquire memory barrier
Reviewed-by: iwalulya, tschatzl, mdoerr
2021-06-10 07:27:53 +00:00
Roland Westrelin
d4377afb99 8263303: C2 compilation fails with assert(found_sfpt) failed: no node in loop that's not input to safepoint
Reviewed-by: chagedorn, kvn
2021-06-10 06:56:04 +00:00
Serguei Spitsyn
dd1cbadc82 8268285: vmTestbase/nsk/jvmti/GetThreadState/thrstat002 failed with "Wrong thread "thr1" (...) state after SuspendThread"
Reviewed-by: lmesnik, amenkov, dholmes
2021-06-10 06:03:19 +00:00
Stefan Johansson
ece3ae3cc4 8268388: Update large pages information in Java manpage
Reviewed-by: tschatzl, lkorinth, stuefe
2021-06-10 05:32:56 +00:00
Igor Ignatyev
2623b0bf39 8268475: execute runtime/InvocationTests w/ -UseVtableBasedCHA
Reviewed-by: mseledtsov, kvn
2021-06-10 03:18:39 +00:00
Chris Plummer
f839308efa 8268407: ProblemList sun/tools/jstat/jstatLineCountsX.sh on linux-aarch64 due to JDK-8268211
Reviewed-by: amenkov
2021-06-10 02:49:58 +00:00
Dan Smith
58ba48b7b8 8268192: LambdaMetafactory with invokespecial causes VerificationError
Reviewed-by: psandoz, mchung
2021-06-09 23:57:41 +00:00
Tom Rodriguez
b41f3f8ed5 8268478: JVMCI tests failing after JDK-8268052
Reviewed-by: kvn, eosterlund
2021-06-09 23:04:45 +00:00
Yumin Qi
7ff6e7b2b1 8267954: Shared classes that failed to load should not be loaded again
Reviewed-by: iklam, ccheung
2021-06-09 21:33:28 +00:00
Phil Race
991ca14279 8267430: GraphicsDevice.setDisplayMode(REFRESH_RATE_UNKNOWN) throws IAE: Unable to set display mode!
Reviewed-by: serb
2021-06-09 20:52:43 +00:00
Kevin Walls
bf29a0115c 8228343: JCMD and attach fail to work across Linux Container boundary
Reviewed-by: ysuenaga, sspitsyn
2021-06-09 20:45:44 +00:00
Evan Whelan
408e0a9c69 8255148: Confusing log output: SSLSocket duplex close failed
Reviewed-by: mullan
2021-06-09 20:38:47 +00:00
Chris Plummer
bbd0313ac1 8263203: jconsole Online User Guide has wrong URL
Reviewed-by: mchung, dholmes
2021-06-09 19:04:11 +00:00
Chris Plummer
33d34c6b67 8263323: Debug Agent help output includes invalid URL
Reviewed-by: kevinw, alanb
2021-06-09 19:03:16 +00:00
Jorn Vernee
79010f2254 8266835: Add a --validate option to the jar tool
Reviewed-by: lancea
2021-06-09 18:15:16 +00:00
Tom Rodriguez
db45ff09ac 8268052: [JVMCI] non-default installed code must be marked as in_use
Reviewed-by: kvn, dnsimon
2021-06-09 17:34:17 +00:00
Vicente Romero
bb3d226a4e 8238213: Method resolution should stop on static error
Reviewed-by: jlahoda
2021-06-09 15:56:55 +00:00
Vladimir Kozlov
81fdeb579a 8268417: Add test from JDK-8268360
Reviewed-by: roland, chagedorn
2021-06-09 15:15:15 +00:00
Stefan Johansson
caf7f49887 8268122: Add specific gc cause for G1 full collections
Reviewed-by: tschatzl, kbarrett
2021-06-09 14:31:15 +00:00
Matthias Baesken
43e38a18b8 8268377: Windows 32bit build fails after JDK-8268174
Reviewed-by: jiefu, mdoerr
2021-06-09 14:09:41 +00:00
Stefan Johansson
5fbb62c741 8268163: Change the order of fallback full GCs in G1
Reviewed-by: kbarrett, tschatzl
2021-06-09 13:43:48 +00:00
Rafael Winterhalter
7b1e4024c0 8266598: Exception values for AnnotationTypeMismatchException are not always informative
Reviewed-by: jfranck
2021-06-09 13:21:32 +00:00
Roger Riggs
13d6180421 8264859: Implement Context-Specific Deserialization Filters
Reviewed-by: bchristi, dfuchs, chegar
2021-06-09 12:30:07 +00:00
Albert Mingkun Yang
dd34a4c28d 8268372: ZGC: dynamically select the number of concurrent GC threads used
Co-authored-by: Per Liden <pliden@openjdk.org>
Reviewed-by: pliden, eosterlund
2021-06-09 10:37:33 +00:00
Patrick Concannon
438895903b 8268056: Update java.net and java.nio to use switch expressions
Reviewed-by: dfuchs, michaelm, chegar, iris, alanb
2021-06-09 10:13:25 +00:00
Eric Liu
9cfd560bb1 8267663: [vector] Add unsigned comparison operators on AArch64
Reviewed-by: aph
2021-06-09 09:30:09 +00:00
Roland Westrelin
4413142eca 8268017: C2: assert(phi_type->isa_int() || phi_type->isa_ptr() || phi_type->isa_long()) failed: bad phi type
Reviewed-by: vlivanov, chagedorn, whuang
2021-06-09 07:58:17 +00:00
Robbin Ehn
2bfd708e92 8266557: assert(SafepointMechanism::local_poll_armed(_handshakee)) failed: Must be
Reviewed-by: pchilanomate, dcubed
2021-06-09 07:21:37 +00:00
Athijegannathan Sundararajan
4d1cf51b1d 8240349: jlink should not leave partial image output directory on failure
Reviewed-by: jlaskey, alanb
2021-06-09 06:35:20 +00:00
Serguei Spitsyn
07108c9162 8268241: deprecate JVM TI Heap functions 1.0
Reviewed-by: alanb, iris, kevinw
2021-06-09 05:38:39 +00:00
Thomas Stuefe
c9dbc4f034 8266891: Provide a switch to force the class space to a specific location
Reviewed-by: iklam, coleenp
2021-06-09 04:05:46 +00:00
Jie Fu
2cc1977a96 8268424: JFR tests fail due to GC cause 'G1 Preventive Collection' not in the valid causes after JDK-8257774
Reviewed-by: dholmes
2021-06-09 02:22:35 +00:00
Jack Hartstein
58a59e3dcb 8240997: Remove more "hack" word in security codes
Reviewed-by: xuelei
2021-06-09 02:12:25 +00:00
Joe Wang
1c3932f3d5 8264766: ClassCastException during template compilation (Variable cannot be cast to Param)
Reviewed-by: naoto
2021-06-09 00:34:16 +00:00
Sergey Bylokhov
f6f82c3168 8266421: Deadlock in Sound System
Reviewed-by: prr, azvegint
2021-06-09 00:14:40 +00:00
Alexey Semenyuk
bcaa2cb154 8264144: Add handling of "--about-url" CLI parameter for RPM/DEB packages
Reviewed-by: herrick, almatvee
2021-06-08 22:21:40 +00:00
Jiangli Zhou
ae16052951 8268088: Clarify Method::clear_jmethod_ids() related comments in ClassLoaderData::~ClassLoaderData()
Reviewed-by: iklam
2021-06-08 20:35:40 +00:00
Zhengyu Gu
5ad4a91c3d 8268127: Shenandoah: Heap size may be too small for region to align to large page size
Reviewed-by: rkennke, shade
2021-06-08 20:31:22 +00:00
Joe Darcy
7a37816548 8264866: Remove unneeded WorkArounds.isAutomaticModule
Reviewed-by: jjg
2021-06-08 20:21:26 +00:00
Andy Herrick
51e8201eb5 8267764: jpackage cannot handle window screensaver files when EXE renamed as SCR
Reviewed-by: asemenyuk, almatvee
2021-06-08 19:46:40 +00:00
Hannes Wallnöfer
f9b593d668 8266748: Move modifiers code to Signatures.java
Reviewed-by: jjg
2021-06-08 19:21:21 +00:00
Hannes Wallnöfer
4dd0e7e78a 8259806: Clean up terminology on the "All Classes" page
Reviewed-by: jjg
2021-06-08 18:49:31 +00:00
Hannes Wallnöfer
dc6c96bbaf 8263468: New page for "recent" new API
Reviewed-by: erikj, jjg
2021-06-08 18:22:16 +00:00
Jonathan Gibbons
fafc4d9764 8268352: Rename javadoc Messager class to JavadocLog
Reviewed-by: prappo
2021-06-08 17:23:17 +00:00
Alex Menkov
b568e87947 8237388: serviceability/dcmd/framework/VMVersionTest.java fails with connection refused error.
Reviewed-by: cjplummer, sspitsyn
2021-06-08 17:05:22 +00:00
Ioi Lam
c21cc932f0 8248877: Document API contract for MetaspaceObj subtypes
Reviewed-by: coleenp, minqi
2021-06-08 16:47:38 +00:00
Nikita Gubarkov
159cb6facc 8268083: JDK-8267706 breaks bin/idea.sh on a Mac
Reviewed-by: erikj
2021-06-08 14:35:58 +00:00
Jorn Vernee
8158b82269 8268327: Upstream: 8268169: The system lookup can not find stdio functions such as printf on Windows 10
Reviewed-by: erikj, sundar
2021-06-08 14:20:31 +00:00
Maurizio Cimadamore
6843576c95 8268227: java/foreign/TestUpcall.java still times out
Reviewed-by: dcubed
2021-06-08 14:02:28 +00:00
Joel Borggrén-Franck
2717fcb134 8232948: javac -h should mangle the overload argument signature
Reviewed-by: jjg
2021-06-08 10:51:19 +00:00
Ajit Ghaisas
89da2021ee 8266159: macOS ARM + Metal pipeline shows artifacts on Swing Menu with Java L&F
Reviewed-by: jdv, prr
2021-06-08 09:45:35 +00:00
Michael McMahon
61ab4b9d18 8267564: JDK-8252971 causes SPECjbb2015 socket exceptions on Windows when MKS is installed
Reviewed-by: alanb
2021-06-08 07:58:54 +00:00
Matthias Baesken
00c88f79b3 8266918: merge_stack in check_code.c add NULL check
Reviewed-by: rschmelter, clanger
2021-06-08 07:22:03 +00:00
Xin Liu
81054789a3 8268165: AsyncLogging will crash if rotate() fails
LogFileOutput::rotate() may leave _stream NULL because os::fopen() may return NULL due to space or inode limitations.  AsyncLogWriter::write() calls LogFileOutput::write_blocking() without null check.  Null check is added to prevent from crashing.

Reviewed-by: ysuenaga
2021-06-08 07:20:13 +00:00
Koichi Sakata
fd91b2aa57 8265440: IGV: make node selection more visible
Reviewed-by: chagedorn, neliasso
2021-06-08 07:14:42 +00:00
Aditya Mandaleeka
81bad59042 8257774: G1: Trigger collect when free region count drops below threshold to prevent evacuation failures
Reviewed-by: sjohanss, tschatzl
2021-06-08 06:55:20 +00:00
David Holmes
341f676066 8267908: linux: thread_native_entry can scribble on stack frame
Reviewed-by: ysuenaga
2021-06-08 04:53:02 +00:00
Thomas Stuefe
f40c89e8e9 8267209: Child threads should defer logging to after child-parent handshake
Reviewed-by: dholmes, coleenp
2021-06-08 03:57:38 +00:00
Alan Hayward
ae986bc8df 8266749: AArch64: Backtracing broken on PAC enabled systems
Reviewed-by: gziemski, aph
2021-06-08 02:24:43 +00:00
Jonathan Gibbons
36c4e5f264 8267187: Remove deprecated constructor for Log
Reviewed-by: darcy, iris
2021-06-08 02:16:56 +00:00
Dan Smith
fc08af58cb 8174222: LambdaMetafactory: validate inputs and improve documentation
Reviewed-by: mchung
2021-06-07 23:21:24 +00:00
Kevin Walls
5e557d8650 8266967: debug.cpp utility find() should print Java Object fields.
Reviewed-by: sspitsyn, coleenp
2021-06-07 22:26:13 +00:00
Anthony Scarpino
c7c77fd32b 8255557: Decouple GCM from CipherCore
Reviewed-by: valeriep
2021-06-07 22:22:28 +00:00
Liam Miller-Cushon
e546ae27ff 8268296: ScopedMemoryAccess build error with readonly filesystems
Reviewed-by: erikj
2021-06-07 17:58:57 +00:00
Roger Riggs
81600dce24 8191441: (Process) add Readers and Writer access to java.lang.Process streams
Reviewed-by: naoto, alanb
2021-06-07 17:41:09 +00:00
Alexey Ushakov
7e55569ede 8261549: Adjust memory size in MTLTexurePool.m
Reviewed-by: prr
2021-06-07 17:36:52 +00:00
Joe Darcy
e663ba961f 8268299: jvms tag produces incorrect URL
Reviewed-by: iris, erikj, jjg
2021-06-07 17:03:50 +00:00
Christian Hagedorn
3396b69fc9 8254129: IR Test Framework to support regex-based matching on the IR in JTreg compiler tests
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Co-authored-by: Tobias Hartmann <thartmann@openjdk.org>
Reviewed-by: iignatyev
2021-06-07 14:11:50 +00:00
Thomas Schatzl
270ec975b6 8268331: Fix crash in humongous object eager reclaim logging
Reviewed-by: sjohanss
2021-06-07 14:09:22 +00:00
Zhengyu Gu
ea8274fbf0 8267875: Shenandoah: Duplicated code in ShenandoahBarrierSetC2::ideal_node()
Reviewed-by: rkennke, roland
2021-06-07 14:00:19 +00:00
Weijun Wang
a91f971266 8268267: Remove -Djavatest.security.noSecurityManager=true from jtreg runs
Reviewed-by: lancea, jjg, erikj
2021-06-07 13:58:49 +00:00
Vicente Romero
4f9d6b7d68 8267465: remove superfluous preview related annotations and test options
Reviewed-by: jlahoda
2021-06-07 13:57:15 +00:00
Hamlin Li
728a411a54 8268018: remove dead code in commitLimitter
Reviewed-by: zgu
2021-06-07 13:41:44 +00:00
Thomas Schatzl
15715a8984 8267924: Misleading G1 eager reclaim detail logging
Reviewed-by: ayang, sjohanss
2021-06-07 13:18:27 +00:00
Jan Lahoda
e4d045402f 8267832: SimpleVisitors and Scanners in jdk.compiler should use @implSpec
Reviewed-by: prappo, darcy
2021-06-07 11:13:13 +00:00
David Holmes
8130be561b 8268318: Missing comma in copyright header
Reviewed-by: stefank
2021-06-07 10:23:12 +00:00
Xin Liu
b09d8b9800 8267926: AsyncLogGtest.java fails on assert with: decorator was not part of the decorator set specified at creation.
Reviewed-by: dholmes, phh
2021-06-07 10:19:27 +00:00
Erik Österlund
5ebd4199cc 8267972: Inline cache cleaning is not monotonic
Reviewed-by: vlivanov, kvn
2021-06-07 09:44:22 +00:00
Hannes Wallnöfer
6d1f3ac749 8149138: [javadoc] Fix SerialFormBuilder eliminate String bashing
Reviewed-by: jjg
2021-06-07 08:43:27 +00:00
Albert Mingkun Yang
58bdabcd40 8268164: Adopt cast notation for WorkerThread conversions
Reviewed-by: stefank, dholmes
2021-06-07 08:20:39 +00:00
Leo Korinth
9fc914b963 8204686: Dynamic parallel reference processing support for Parallel GC
Reviewed-by: ayang, tschatzl, kbarrett
2021-06-07 08:02:26 +00:00
Jan Lahoda
908aca29ca 8262891: Compiler implementation for Pattern Matching for switch (Preview)
Co-authored-by: Brian Goetz <briangoetz@openjdk.org>
Co-authored-by: Mandy Chung <mchung@openjdk.org>
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: mcimadamore, forax, godin, psandoz, mchung
2021-06-07 07:01:30 +00:00
Hui Shi
3e48244084 8268301: Closed test: compiler/c2/6371167/Test.java fails after JDK-8267904
Reviewed-by: kvn, dlong
2021-06-07 06:26:47 +00:00
Stefan Johansson
204b4929f7 8267703: runtime/cds/appcds/cacheObject/HeapFragmentationTest.java crashed with OutOfMemory
Reviewed-by: tschatzl, kbarrett
2021-06-07 06:22:11 +00:00
Xin Liu
2aeeeb40a0 8268279: gc/shenandoah/compiler/TestLinkToNativeRBP.java fails after LibraryLookup is gone
Reviewed-by: zgu, jiefu
2021-06-07 06:12:04 +00:00
Hui Shi
b05fa02e74 8267904: C2 crash when compile negative Arrays.copyOf length after loop
Reviewed-by: roland, kvn
2021-06-07 01:34:22 +00:00
Hamlin Li
95ddf7d6ad 8267839: trivial mem leak in numa
Co-authored-by: Shoubing Ma <mashoubing1@huawei.com>
Reviewed-by: tschatzl, sjohanss
2021-06-07 01:19:32 +00:00
Jie Fu
52d88ee1d1 8268292: compiler/intrinsics/VectorizedMismatchTest.java fails with release VMs
Reviewed-by: dcubed
2021-06-06 13:53:29 +00:00
Tejpal Rebari
042f0bdb35 8256465: [macos] Java frame and dialog presented full screen freeze application
Reviewed-by: kcr, serb, prr
2021-06-06 04:08:05 +00:00
Jatin Bhateja
8abf36c648 8268289: build failure due to missing signed flag in x86 evcmpb instruction
Reviewed-by: vlivanov, jiefu
2021-06-06 02:31:18 +00:00
Jatin Bhateja
b05c40ca3b 8266951: Partial in-lining for vectorized mismatch operation using AVX512 masked instructions
Reviewed-by: psandoz, vlivanov
2021-06-05 18:07:14 +00:00
Daniel D. Daugherty
f768fbf7a9 8268286: ProblemList serviceability/sa/TestJmapCore.java on linux-aarch64 with ZGC
Reviewed-by: rriggs
2021-06-05 15:50:18 +00:00
Sergey Bylokhov
b2e9eb9e47 8268087: Update documentation of the JPasswordField
Reviewed-by: trebari, azvegint, prr
2021-06-05 15:41:04 +00:00
Ioi Lam
91f9adc5f5 8268139: CDS ArchiveBuilder may reference unloaded classes
Reviewed-by: coleenp, ccheung
2021-06-05 15:22:38 +00:00
Andrey Turbanov
36bff6f945 8066694: Strange code in JavacParser.java
Reviewed-by: vromero, iris
2021-06-05 14:44:25 +00:00
Stephen Colebourne
6c838c568c 8266846: Add java.time.InstantSource
Reviewed-by: rriggs, naoto, darcy
2021-06-05 13:26:52 +00:00
Sibabrata Sahoo
7f55dc1576 8179880: Refactor javax/security shell tests to plain java tests
Reviewed-by: weijun
2021-06-05 07:56:14 +00:00
Yasumasa Suenaga
7e41ca3da8 8266957: SA has not followed JDK-8220587 and JDK-8224965
Reviewed-by: cjplummer, sspitsyn
2021-06-05 00:07:04 +00:00
Jonathan Gibbons
6ff978ac16 8267204: Expose access to underlying streams in Reporter
Reviewed-by: prappo
2021-06-05 00:05:17 +00:00
Nick Gasson
76b54a1995 8263512: [macos_aarch64] issues with calling va_args functions from invoke_native
Reviewed-by: jvernee
2021-06-04 23:55:12 +00:00
Yi Yang
4e6748c543 8267687: ModXNode::Ideal optimization is better than Parse::do_irem
Reviewed-by: neliasso, kvn
2021-06-04 23:29:35 +00:00
Vladimir Kozlov
48dc72b74d 8268272: Remove JDK-8264874 changes because Graal was removed.
Reviewed-by: erikj
2021-06-04 20:10:59 +00:00
Sandhya Viswanathan
20b631278c 8268151: Vector API toShuffle optimization
Reviewed-by: psandoz, vlivanov
2021-06-04 18:16:16 +00:00
Leonid Mesnik
64ec8b3e5c 8212155: Race condition when posting dynamic_code_generated event leads to JVM crash
Reviewed-by: sspitsyn, dcubed
2021-06-04 17:22:01 +00:00
Stuart Marks
cd0678fcf6 8199318: add idempotent copy operation for Map.Entry
Reviewed-by: alanb, psandoz, dfuchs
2021-06-04 17:13:05 +00:00
Joe Wang
b27599b3ec 8268222: javax/xml/jaxp/unittest/transform/Bug6216226Test.java failed, cannot delete file
Reviewed-by: dfuchs
2021-06-04 16:31:59 +00:00
Maurizio Cimadamore
59a539fef1 8268129: LibraryLookup::ofDefault leaks symbols from loaded libraries
Reviewed-by: jvernee, psandoz
2021-06-04 12:53:17 +00:00
Jan Lahoda
40c9e258b5 8265444: Javadocs: jdk.jshell - small typo
Reviewed-by: sundar
2021-06-04 12:35:36 +00:00
Vladimir Ivanov
069f180a85 8268174: Move x86-specific stub declarations into stubRoutines_x86.hpp
Reviewed-by: kvn
2021-06-04 10:55:21 +00:00
Pankaj Bansal
3025f05970 8264305: Create implementation for native accessibility peer for Statusbar java role
Reviewed-by: kizune
2021-06-04 05:18:33 +00:00
Mikael Vidstedt
e2d5ff9d45 8268214: Use system zlib and disable dtrace when building linux-aarch64 at Oracle
Reviewed-by: dholmes
2021-06-04 04:07:06 +00:00
Mikael Vidstedt
1b4378e58e 8268142: Switch to jdk-17+24 for macosx-aarch64 at Oracle
Reviewed-by: erikj
2021-06-04 03:14:35 +00:00
Igor Ignatyev
edca245d5a 8267917: mark hotspot containers tests which ignore external VM flags
Reviewed-by: mseledtsov, hseigel
2021-06-04 02:21:53 +00:00
Joe Darcy
05df1727b5 8268224: Cleanup references to "strictfp" in core lib comments
Reviewed-by: jrose
2021-06-04 02:04:04 +00:00
Calvin Cheung
516e60a7ee 8268095: CDS MethodHandle tests should add -XX:-VerifyDependencies
Reviewed-by: iklam, minqi
2021-06-03 22:56:57 +00:00
Paul Sandoz
c1f3094f81 8267939: Clarify the specification of iterator and spliterator forEachRemaining
Reviewed-by: smarks
2021-06-03 22:03:35 +00:00
Joe Wang
460ce5553c 8266019: StreamResult(File) writes to incorrect file path if # is part of the file path
Reviewed-by: dfuchs
2021-06-03 21:26:32 +00:00
Mandy Chung
b95586559c 8267995: Add reference to JVMS class file format in Lookup::defineHiddenClass
Reviewed-by: darcy
2021-06-03 20:43:12 +00:00
Sandhya Viswanathan
9f05c411e6 8265783: Create a separate library for x86 Intel SVML assembly intrinsics
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Co-authored-by: Rahul Kandu <rkandu@openjdk.org>
Co-authored-by: Razvan Lupusoru <rlupusoru@openjdk.org>
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Co-authored-by: Jie Fu <jiefu@openjdk.org>
Co-authored-by: Ahmet Akkas <ahmet.akkas@intel.com>
Co-authored-by: Marius Cornea <marius.cornea@intel.com>
Reviewed-by: erikj, kvn, psandoz
2021-06-03 20:03:36 +00:00
Jonathan Gibbons
e27c4d463d 8268185: Update GitHub Actions for jtreg 6
Reviewed-by: erikj
2021-06-03 19:39:28 +00:00
Daniel D. Daugherty
68ac871b62 8268189: ProblemList compiler/intrinsics/bmi/verifycode/BzhiTestI2L.java in -Xcomp mode
Reviewed-by: mikael
2021-06-03 19:32:59 +00:00
Andy Herrick
af3df6300e 8267598: jpackage removes system libraries from java.library.path
Reviewed-by: almatvee, asemenyuk
2021-06-03 19:02:11 +00:00
Maurizio Cimadamore
52d8215a1e 8268131: 2 java/foreign tests timed out
Reviewed-by: dcubed
2021-06-03 16:19:35 +00:00
Raffaello Giulietti
5405f983db 8268077: java.util.List missing from Collections Framework Overview
Reviewed-by: smarks
2021-06-03 16:08:33 +00:00
Fernando Guallini
3aa7062c3d 8262409: sun/security/ssl/SSLSocketImpl/SSLSocketImplThrowsWrongExceptions. SSL test failures caused by java failed with "Server reported the wrong exception"
Reviewed-by: rhalade, xuelei
2021-06-03 16:06:31 +00:00
Paul Sandoz
5982cfc856 8266317: Vector API enhancements
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Reviewed-by: jbhateja, vlivanov
2021-06-03 15:16:58 +00:00
Sean Coffey
eb385c0de2 8268167: MultipleLogins.java failure on macosx-aarch64
Reviewed-by: weijun
2021-06-03 13:47:47 +00:00
Jie Fu
fbaebd4243 8268014: Build failure on SUSE Linux Enterprise Server 11.4 (s390x) due to 'SYS_get_mempolicy' was not declared
Reviewed-by: dholmes, mdoerr, mbaesken
2021-06-03 12:55:21 +00:00
Mahendra Chhipa
338dae4d36 8268133: Update java/net/Authenticator tests to eliminate dependency on sun.net.www.MessageHeader and some other internal APIs
Reviewed-by: dfuchs
2021-06-03 12:51:48 +00:00
Maurizio Cimadamore
29ab16284a 8266257: Fix foreign linker build issues for ppc and s390
Reviewed-by: jvernee, vlivanov
2021-06-03 09:41:21 +00:00
Stefan Karlsson
c8f4c02bf0 8268118: Rename bytes_os_cpu.inline.hpp files to bytes_os_cpu.hpp
Reviewed-by: coleenp, dholmes
2021-06-03 09:04:53 +00:00
Stefan Karlsson
1296a6c425 8268119: Rename copy_os_cpu.inline.hpp files to copy_os_cpu.hpp
Reviewed-by: kbarrett, coleenp
2021-06-03 09:03:27 +00:00
Daniel Fuchs
178343750f 8264975: java/net/DatagramSocket/DatagramSocketMulticasting.java fails infrequently
Reviewed-by: alanb, chegar
2021-06-03 08:58:41 +00:00
Albert Mingkun Yang
a52a08d20b 8267916: Adopt cast notation for CompilerThread conversions
Reviewed-by: kbarrett, iklam, dholmes
2021-06-03 08:21:39 +00:00
Joel Borggrén-Franck
9bf347bc1f 8226362: langtools ProblemList file contains more than 1 entry for a test
Reviewed-by: jlahoda
2021-06-03 07:51:30 +00:00
Sean Coffey
bdeaeb47d0 8240256: Better resource cleaning for SunPKCS11 Provider
Reviewed-by: valeriep
2021-06-03 06:45:06 +00:00
Leonid Mesnik
06f87cf441 8266337: ThreadTimesClosure doesn't handle exceptions properly
Reviewed-by: dholmes, sspitsyn
2021-06-03 04:12:40 +00:00
Jonathan Gibbons
ef01e47858 8268150: tier2: test/jdk/tools/jpackage/junit/junit.java needs updating for jtreg 6
Reviewed-by: almatvee
2021-06-03 01:09:49 +00:00
Jonathan Gibbons
e9f3e325c2 8259530: Generated docs contain MIT/GPL-licenced works without reproducing the licence
Reviewed-by: prappo
2021-06-02 22:45:58 +00:00
Jonathan Gibbons
d46a2c8ecf 8268147: need to update reference to testng module for jtreg6
Reviewed-by: dholmes, psandoz, naoto
2021-06-02 22:33:16 +00:00
Daniel D. Daugherty
76fdf2c89b 8268146: fix for JDK-8266254 fails validate-source
Reviewed-by: psandoz, wetmore
2021-06-02 21:50:43 +00:00
Valerie Peng
136badb1f7 8248268: Support KWP in addition to KW
Reviewed-by: xuelei
2021-06-02 21:31:57 +00:00
Jonathan Gibbons
3482cb87fd 8266254: Update to use jtreg 6
8265020: tests must be updated for new TestNG module name

Reviewed-by: lancea, erikj, mchung, naoto, alanb, iris, chegar
2021-06-02 21:20:12 +00:00
Erik Gahlin
375f8f3bff 8268138: docs build error after JDK-8263332 integration
Reviewed-by: mgronlun
2021-06-02 19:43:36 +00:00
Ioi Lam
a8835b9c08 8267879: ClassLoaderMetaspace destructor asserts on !_frozen
Reviewed-by: dholmes, coleenp
2021-06-02 19:20:10 +00:00
Ioi Lam
ecf6112a21 8267958: [TESTBUG] cds DynamicLoaderConstraintsTest.java timed out
Reviewed-by: ccheung, jiefu
2021-06-02 19:05:42 +00:00
Erik Gahlin
1ae934e09d 8263332: JFR: Dump recording from a recording stream
Reviewed-by: mgronlun
2021-06-02 17:25:42 +00:00
Guoxiong Li
b7ac705dd6 8263642: javac emits duplicate checkcast for first bound of intersection type in cast
Reviewed-by: vromero
2021-06-02 17:17:31 +00:00
Jonathan Gibbons
e1462e79df 8267176: StandardDoclet should provide access to Reporter and Locale
Reviewed-by: hannesw
2021-06-02 16:56:45 +00:00
Brian Burkhalter
56b65e4a8d 8267569: java.io.File.equals contains misleading Javadoc
Reviewed-by: alanb, dfuchs, bchristi, naoto
2021-06-02 16:33:21 +00:00
Weijun Wang
508cec7535 8267521: Post JEP 411 refactoring: maximum covering > 50K
Reviewed-by: dfuchs, prr
2021-06-02 15:48:50 +00:00
Weijun Wang
40d23a0c0b 8267543: Post JEP 411 refactoring: security
Reviewed-by: mullan
2021-06-02 15:47:57 +00:00
Stefan Karlsson
476775808f 8267920: Create separate Events buffer for VMOperations
Reviewed-by: coleenp, dholmes, tschatzl
2021-06-02 13:33:04 +00:00
David Holmes
dc19baca33 8268094: Some vmTestbase/nsk tests fail after ACC_STRICT/strictfp changes
Reviewed-by: vlivanov, rehn
2021-06-02 12:23:56 +00:00
Severin Gehwolf
2963c9e677 8268103: JNI functions incorrectly return a double after JDK-8265836
Reviewed-by: dholmes
2021-06-02 12:18:30 +00:00
Weijun Wang
6765f90250 8266459: Implement JEP 411: Deprecate the Security Manager for Removal
Co-authored-by: Sean Mullan <mullan@openjdk.org>
Co-authored-by: Lance Andersen <lancea@openjdk.org>
Co-authored-by: Weijun Wang <weijun@openjdk.org>
Reviewed-by: erikj, darcy, chegar, naoto, joehw, alanb, mchung, kcr, prr, lancea
2021-06-02 11:57:31 +00:00
Jan Lahoda
19450b9951 8266281: Assign Symbols to the package selector expression
Reviewed-by: vromero
2021-06-02 11:16:10 +00:00
Maurizio Cimadamore
a223189b06 8264774: Implementation of Foreign Function and Memory API (Incubator)
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Jorn Vernee <jvernee@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Co-authored-by: Athijegannathan Sundararajan <sundar@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: psandoz, chegar, mchung, vlivanov
2021-06-02 10:53:06 +00:00
David Holmes
71425ddfb4 8267118: OutOfMemoryError cannot be caught as a Throwable
Co-authored-by: Ioi Lam <iklam@openjdk.org>
Reviewed-by: coleenp
2021-06-02 10:42:17 +00:00
Jan Lahoda
de6472c441 8267459: Pasting Unicode characters into JShell does not work.
Reviewed-by: vromero
2021-06-02 09:55:06 +00:00
Jan Lahoda
9247630a0d 8265270: Type.getEnclosingType() may fail with CompletionFailure
Reviewed-by: vromero
2021-06-02 09:53:31 +00:00
Thomas Schatzl
2d494bffff 8267836: Separate eager reclaim remembered set threshold from G1RSetSparseRegionEntries
Reviewed-by: sjohanss, lkorinth
2021-06-02 09:31:59 +00:00
Nils Eliasson
bba3728e23 8267726: ZGC: array_copy_requires_gc_barriers too strict
Reviewed-by: thartmann, vlivanov
2021-06-02 09:02:37 +00:00
Nils Eliasson
d47a77d2d5 8267773: PhaseStringOpts::int_stringSize doesn't handle min_jint correctly
Co-authored-by: Adam Farley <afarley@openjdk.org>
Co-authored-by: Aleksey Shipilev <shade@openjdk.org>
Co-authored-by: Nils Eliasson <neliasso@openjdk.org>
Reviewed-by: roland
2021-06-02 07:57:08 +00:00
Xiaohong Gong
496fb90b3a 8267969: Add vectorized implementation for VectorMask.eq()
Reviewed-by: psandoz, neliasso
2021-06-02 07:50:46 +00:00
Koichi Sakata
1cea6cac12 8260360: IGV: Short name of combined nodes is hidden by background color
Reviewed-by: neliasso, chagedorn
2021-06-02 07:13:00 +00:00
Joe Wang
7530c00b33 8266559: XPathEvaluationResult.XPathResultType.NODESET maps to incorrect type
Reviewed-by: lancea, naoto
2021-06-02 04:57:30 +00:00
Guoxiong Li
b98e52a491 8267570: The comment of the class JavacParser is not appropriate
Reviewed-by: jjg
2021-06-02 04:25:46 +00:00
Gavin Bierman
379376f078 8265130: Make ConstantDesc class hierarchy sealed
Reviewed-by: mchung, jvernee, vromero
2021-06-02 00:49:49 +00:00
Joe Darcy
00c7aeee00 8267861: Update SourceVersion with new language features in 16 and 17
Reviewed-by: jjg
2021-06-02 00:33:17 +00:00
David Holmes
cb7128b58e 8266950: Remove vestigial support for non-strict floating-point execution
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: vlivanov, kvn
2021-06-01 22:04:02 +00:00
Joe Darcy
8624cb53cd 8266530: HotSpot changes for JEP 306
Reviewed-by: dholmes, hseigel
2021-06-01 22:00:48 +00:00
Joe Darcy
0ae4ceb413 8244146: javac changes for JEP 306
8266399: Core libs update for JEP 306

Reviewed-by: sadayapalam, bpb, naoto
2021-06-01 21:59:39 +00:00
Yi Yang
c2c0208dfd 8267089: Use typedef KVHashtable for ID2KlassTable
Reviewed-by: iklam, coleenp
2021-06-01 19:56:57 +00:00
Fernando Guallini
ccfcd92667 8180571: Refactor sun/security/pkcs11 shell tests to plain java tests and fix failures
Reviewed-by: xuelei
2021-06-01 19:09:42 +00:00
Daniel D. Daugherty
40e4171f56 8264800: cleanup Threads_lock comments in JVM/TI function headers
Reviewed-by: coleenp, rehn, dholmes, sspitsyn
2021-06-01 18:51:40 +00:00
Jiangli Zhou
b17b11eb17 8267562: G1: Missing BOT in Open Archive regions causes long pauses
Reviewed-by: tschatzl, mli
2021-06-01 18:17:45 +00:00
Leonid Mesnik
2b3383557f 8265148: StackWatermarkSet being updated during AsyncGetCallTrace
Reviewed-by: stefank, eosterlund
2021-06-01 18:06:19 +00:00
Maxim Kartashev
64ba2f0e8f 8265431: Add -fno-delete-null-pointer-checks to clang builds
Reviewed-by: erikj
2021-06-01 17:56:44 +00:00
Daniel Fuchs
d4b4caecad 8268023: Improve diagnostic for HandshakeFailureTest
Reviewed-by: chegar
2021-06-01 17:55:36 +00:00
Daniel Fuchs
9d8ad2ed62 8267990: Revisit some uses of synchronized in the HttpClient API
Reviewed-by: chegar
2021-06-01 17:10:38 +00:00
Daniel D. Daugherty
36dc268abe 8268036: ProblemList gtest/AsyncLogGtest.java
8268041: ProblemList runtime/cds/appcds/dynamicArchive/TestDynamicDumpAtOom.java on linux-x64 in -Xcomp

Reviewed-by: ccheung
2021-06-01 15:30:39 +00:00
Vladimir Ivanov
74b70a5677 8036580: CHA: improve default method support
Reviewed-by: thartmann, neliasso
2021-06-01 12:14:48 +00:00
Vladimir Ivanov
20479c3de9 8065760: CHA: Improve abstract method support
Reviewed-by: neliasso, thartmann
2021-06-01 12:06:57 +00:00
Vladimir Ivanov
68f3b3acce 8267807: C2: Downcast receiver to target holder during inlining
Reviewed-by: roland, thartmann
2021-06-01 12:03:34 +00:00
Thomas Schatzl
1c7c0e1de0 8267937: Wrong indentation in G1 gc+phases log for free cset subphases
Reviewed-by: ayang, sjohanss
2021-06-01 12:02:25 +00:00
Vladimir Ivanov
ffd28c4a86 8267947: CI: Preserve consistency between has_subklass() and is_subclass_of()
Reviewed-by: thartmann, roland
2021-06-01 11:59:28 +00:00
Vladimir Ivanov
229a6e2f36 8267095: Miscellaneous cleanups in vm.runtime.defmeth tests
Reviewed-by: dholmes, hseigel
2021-06-01 11:09:35 +00:00
Stefan Karlsson
6149b9ad75 8267914: Remove DeferredObjectToKlass workaround
Reviewed-by: eosterlund, tschatzl
2021-06-01 10:23:13 +00:00
Patrick Concannon
4eb216824f 8267670: Update java.io, java.math, and java.text to use switch expressions
Reviewed-by: darcy, chegar, naoto, iris, dfuchs, lancea, vtewari
2021-06-01 10:14:56 +00:00
Vladimir Ivanov
f5634fe39d 8267979: C2: Fix verification code in SubTypeCheckNode::Ideal()
Reviewed-by: neliasso, roland
2021-06-01 09:15:46 +00:00
Dong Bo
ae2f37f868 8267616: AArch64: Fix AES assertion messages in stubGenerator_aarch64.cpp
Reviewed-by: aph, neliasso
2021-06-01 00:37:28 +00:00
Sergey Tsypanov
c06db45fa7 8267921: Remove redundant loop from sun.reflect.misc.ReflectUtil.privateCheckPackageAccess()
Reviewed-by: alanb, mchung
2021-05-31 16:58:38 +00:00
Hannes Wallnöfer
382e7eca48 8246351: <code> elements in headings are of incorrect size
Reviewed-by: prappo
2021-05-31 14:27:54 +00:00
Stefan Johansson
5df25dc088 8266807: Windows os_windows-gtest broken for UseLargePages
Reviewed-by: iwalulya, ayang, tschatzl
2021-05-31 12:51:21 +00:00
Stefan Johansson
ce44cd6881 8267845: Add @requires to avoid running G1 large pages test with wrong page size
Reviewed-by: tschatzl, kbarrett
2021-05-31 12:08:24 +00:00
Hamlin Li
4ade125c8a 8267934: remove dead code in CLD
Reviewed-by: stefank, tschatzl
2021-05-31 11:17:19 +00:00
Chris Hegarty
bd31653e6f 8267938: (sctp) SCTP channel factory methods should check platform support
Reviewed-by: dfuchs, jiefu, alanb, vtewari
2021-05-31 09:44:38 +00:00
Wang Huang
7ab6b40120 8267375: Aarch64: JVM crashes with option -XX:PrintIdealGraphLevel=3 on SVE backend
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Reviewed-by: aph, neliasso
2021-05-31 09:40:18 +00:00
Jan Lahoda
2c8e94f680 8247403: JShell: No custom input (e.g. from GUI) possible with JavaShellToolBuilder
Reviewed-by: vromero
2021-05-31 09:25:16 +00:00
Stefan Karlsson
64f0f68958 8267464: Circular-dependency resilient inline headers
Reviewed-by: kbarrett, eosterlund, dholmes, kvn
2021-05-31 08:59:19 +00:00
Tagir F. Valeev
ab5a7ff230 8267587: Update java.util to use enhanced switch
Reviewed-by: iris
2021-05-31 08:48:38 +00:00
Vladimir Ivanov
35916ed57f 8267806: C1: Relax inlining checks for not yet initialized classes
Reviewed-by: roland, thartmann
2021-05-31 08:45:07 +00:00
Martin Doerr
1e29005a22 8267842: SIGSEGV in get_current_contended_monitor
Reviewed-by: stefank, dcubed, ysuenaga, dholmes
2021-05-31 08:27:52 +00:00
Dmitry Batrak
236bd89dc3 8263583: Emoji rendering on macOS
Reviewed-by: serb, prr
2021-05-31 07:14:53 +00:00
Hannes Wallnöfer
1ab2776947 8247608: Javadoc: CSS margin is not applied consistently
Reviewed-by: jjg
2021-05-31 06:45:37 +00:00
Jie Fu
9031477f27 8267945: ZGC: Revert NUMA changes (JDK-8266217 and JDK-8241354) after JDK-8241423
Reviewed-by: pliden
2021-05-30 23:03:57 +00:00
Daniel D. Daugherty
6627432025 8267953: restore 'volatile' to ObjectMonitor::_owner field
Reviewed-by: aph
2021-05-29 17:46:35 +00:00
Nikita Gubarkov
964bac9e38 8267706: bin/idea.sh tries to use cygpath on WSL
Reviewed-by: erikj
2021-05-28 19:53:57 +00:00
Daniel D. Daugherty
591b0c3a46 8264624: change the guarantee() calls added by JDK-8264123 to assert() calls
Reviewed-by: pchilanomate, coleenp
2021-05-28 16:24:04 +00:00
Aleksei Efimov
0c0ff7fb0c 8265309: com/sun/jndi/dns/ConfigTests/Timeout.java fails with "Address already in use" BindException
Reviewed-by: dfuchs
2021-05-28 14:54:49 +00:00
Daniel Fuchs
24bf35f862 8265367: [macos-aarch64] 3 java/net/httpclient/websocket tests fail with "IOException: No buffer space available"
Reviewed-by: chegar
2021-05-28 14:21:11 +00:00
Jie Fu
1413f9e070 8241423: NUMA APIs fail to work in dockers due to dependent syscalls are disabled by default
Reviewed-by: dholmes, pliden
2021-05-28 13:51:37 +00:00
Volker Simonis
1d2c7ac3f7 8267555: Fix class file version during redefinition after 8238048
Reviewed-by: coleenp, sspitsyn
2021-05-28 08:32:43 +00:00
Robbin Ehn
97ec5ad0a6 8265753: Remove manual JavaThread transitions to blocked
Reviewed-by: dcubed, rrich, dholmes, pchilanomate
2021-05-28 07:30:14 +00:00
Jaroslav Tulach
6eb9114582 8266877: Missing local debug information when debugging JEP-330
Reviewed-by: alanb, jjg
2021-05-28 04:16:10 +00:00
Tagir F. Valeev
0c9daa7ed5 8265029: Preserve SIZED characteristics on slice operations (skip, limit)
Reviewed-by: psandoz
2021-05-28 01:56:38 +00:00
Claes Redestad
95b1fa7a88 8267529: StringJoiner can create a String that breaks String::equals
Reviewed-by: naoto
2021-05-27 23:09:22 +00:00
Alexander Zuev
7f52c50ba3 8182043: Access to Windows Large Icons
Reviewed-by: aivanov, azvegint, prr
2021-05-27 21:49:20 +00:00
Daniel D. Daugherty
8a31c07598 8267886: ProblemList javax/management/remote/mandatory/connection/RMIConnector_NPETest.java
Reviewed-by: smarks
2021-05-27 20:26:05 +00:00
Сергей Цыпанов
ae258f1e6a 8265418: Clean-up redundant null-checks of Class.getPackageName()
Reviewed-by: redestad
2021-05-27 20:21:34 +00:00
Xin Liu
41185d38f2 8229517: Support for optional asynchronous/buffered logging
Reviewed-by: ysuenaga, simonis, stuefe, phh, dholmes, ayang
2021-05-27 16:35:24 +00:00
Stuart Marks
7c85f3510c 8267123: Remove RMI Activation
Reviewed-by: erikj, rriggs, alanb
2021-05-27 15:19:45 +00:00
Jonathan Gibbons
0754266044 8267709: Investigate differences between HtmlStyle and stylesheet.css
Reviewed-by: hannesw
2021-05-27 15:01:03 +00:00
Daniel D. Daugherty
23189a1f9d 8191786: Thread-SMR hash table size should be dynamic
Reviewed-by: dholmes, rehn, coleenp, eosterlund
2021-05-27 14:58:26 +00:00
Hao Tang
ef368b32bc 8265836: OperatingSystemImpl.getCpuLoad() returns incorrect CPU load inside a container
Co-authored-by: Shaojun Wang <jeffery.wsj@alibaba-inc.com>
Co-authored-by: Severin Gehwolf <sgehwolf@openjdk.org>
Reviewed-by: sgehwolf, ysuenaga
2021-05-27 14:40:29 +00:00
Guoxiong Li
10a6f5d637 8230623: Extract command-line help for -Xlint sub-options to new --help-lint
Reviewed-by: jjg
2021-05-27 14:04:56 +00:00
Naoto Sato
bea4109ef7 8187649: ArrayIndexOutOfBoundsException in java.util.JapaneseImperialCalendar
Reviewed-by: joehw, rriggs
2021-05-27 13:18:34 +00:00
Athijegannathan Sundararajan
ec65cf8332 8240347: remove undocumented options from jlink --help message
Reviewed-by: alanb, redestad
2021-05-27 12:29:10 +00:00
Jorn Vernee
3623abb7f6 8263087: Add a MethodHandle combinator that switches over a set of MethodHandles
Reviewed-by: redestad
2021-05-27 12:28:10 +00:00
Dongbo He
85f616522b 8267817: [TEST] Remove unnecessary init in test/micro/org/openjdk/bench/javax/crypto/full/AESGCMBench:setup
Reviewed-by: redestad
2021-05-27 11:49:25 +00:00
Denghui Dong
7278f56bb6 8267800: Remove the '_dirty' set in BCEscapeAnalyzer
Reviewed-by: kvn, thartmann
2021-05-27 08:36:34 +00:00
Albert Mingkun Yang
bfa46f0af3 8252476: as_Worker_thread() doesn't check what it intends
Co-authored-by: David Holmes <dholmes@openjdk.org>
Reviewed-by: iklam, kbarrett
2021-05-27 08:09:58 +00:00
Yasumasa Suenaga
37bc4e2e3c 8263635: Add --servername option to jhsdb debugd
Reviewed-by: cjplummer, sspitsyn
2021-05-27 04:54:16 +00:00
Jie Fu
6ffa3e66db 8267754: cds/appcds/loaderConstraints/LoaderConstraintsTest.java fails on x86_32 due to customized class loader is not supported
Reviewed-by: minqi, dholmes, iklam
2021-05-26 22:58:45 +00:00
Vladimir Ivanov
1899f022b1 8267805: Add UseVtableBasedCHA to the list of JVM flags known to jtreg
Reviewed-by: shade
2021-05-26 22:53:28 +00:00
Roger Riggs
0fc7c8d101 8267751: (test) jtreg.SkippedException has no serial VersionUID
Reviewed-by: naoto, iignatyev, iris
2021-05-26 22:03:13 +00:00
Evgeny Astigeevich
a859d87cc1 8267721: Enable sun/security/pkcs11 tests for Amazon Linux 2 AArch64
Reviewed-by: phh
2021-05-26 21:08:47 +00:00
Mark Reinhold
e63023546a 8266851: Implement JEP 403: Strongly Encapsulate JDK Internals
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Reviewed-by: mchung, alanb, hseigel
2021-05-26 20:55:53 +00:00
Joe Wang
8c4719a588 8265248: Implementation Specific Properties: change prefix, plus add existing properties
Reviewed-by: lancea, rriggs
2021-05-26 19:34:06 +00:00
Coleen Phillimore
c59484e715 8267653: Remove Mutex::_safepoint_check_sometimes
Reviewed-by: dholmes, pchilanomate
2021-05-26 19:07:53 +00:00
Stefan Karlsson
de91643bfa 8267611: Print more info when pointer_delta assert fails
Reviewed-by: dholmes, jiefu, tschatzl, kbarrett
2021-05-26 17:57:30 +00:00
Naoto Sato
a4c46e1e4f 8263202: Update Hebrew/Indonesian/Yiddish ISO 639 language codes to current
Reviewed-by: joehw
2021-05-26 15:52:39 +00:00
Yude Lin
9c346a1ec7 8266963: Remove safepoint poll introduced in 8262443 due to reentrance issue
Reviewed-by: rehn, zgu, dholmes
2021-05-26 12:26:52 +00:00
Pankaj Bansal
45e05970bc 8264302: Create implementation for Accessibility native peer for Splitpane java role
Reviewed-by: kizune
2021-05-26 12:17:21 +00:00
Pavel Rappo
4343997a1a 8267708: Remove references to com.sun.tools.javadoc.**
This commit changes BaseOptions.java to fix the NoStringToLower test that failed after jdk.javadoc has been added to the list of package prefixes that NoStringToLower scans.

Reviewed-by: jjg
2021-05-26 11:27:15 +00:00
Jan Lahoda
f632254943 8267221: jshell feedback is incorrect when creating method with array varargs parameter
Reviewed-by: vromero
2021-05-26 11:12:22 +00:00
Athijegannathan Sundararajan
bf8d4a8eca 8267583: jmod fails on symlink to class file
Reviewed-by: alanb
2021-05-26 11:04:59 +00:00
Wang Huang
083416d36c 8267130: Memory Overflow in Disassembler::load_library
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Miao  Zhuojun <mouzhuojun@huawei.com>
Reviewed-by: neliasso, mli
2021-05-26 10:21:46 +00:00
Roland Westrelin
9d305b9c06 8252372: Check if cloning is required to move loads out of loops in PhaseIdealLoop::split_if_with_blocks_post()
Reviewed-by: thartmann, kvn
2021-05-26 09:20:42 +00:00
Albert Mingkun Yang
039441689d 8267468: Rename refill waster counters in ThreadLocalAllocBuffer
Reviewed-by: kbarrett, sspitsyn
2021-05-26 06:50:23 +00:00
Bradford Wetmore
b33b8bc88d 8267750: Incomplete fix for JDK-8267683
Reviewed-by: jnimeh
2021-05-26 03:17:32 +00:00
Tagir F. Valeev
ac36b7d3e2 8267452: Delegate forEachRemaining in Spliterators.iterator()
Reviewed-by: psandoz
2021-05-26 01:17:02 +00:00
David Holmes
d0d2ddccaf 8267651: runtime/handshake/HandshakeTimeoutTest.java times out when dumping core
Reviewed-by: dcubed
2021-05-25 23:35:17 +00:00
Jie Fu
a98e476c0a 8267311: vmTestbase/gc/gctests/StringInternGC/StringInternGC.java eventually OOMEs
8267311: vmTestbase/gc/gctests/StringInternGC/StringInternGC.java eventually OOMEs

Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: tschatzl
2021-05-25 22:46:19 +00:00
Alexander Matveev
5aa45f2edf 8267403: tools/jpackage/share/FileAssociationsTest.java#id0 failed with "Error: Bundler "Mac PKG Package" (pkg) failed to produce a package"
Reviewed-by: herrick, asemenyuk
2021-05-25 22:08:33 +00:00
Coleen Phillimore
c20ca42e62 8267691: Change table to obsolete CriticalJNINatives in JDK 18, not 17
Reviewed-by: hseigel
2021-05-25 19:42:08 +00:00
Bradford Wetmore
e751b7b1b6 8267683: rfc7301Grease8F value not displayed correctly in SSLParameters javadoc
Reviewed-by: coffeys
2021-05-25 19:38:00 +00:00
Joe Darcy
0b77359384 8224243: Add implSpec's to AccessibleObject and seal Executable
Reviewed-by: alanb
2021-05-25 18:04:47 +00:00
Jonathan Gibbons
594d454475 8267574: Dead code in HtmlStyle/HtmlDocletWriter
Reviewed-by: hannesw
2021-05-25 17:36:50 +00:00
Adam Sotona
2ef2450aa6 8263445: Duplicate key compiler.err.expected.module in compiler.properties
Reviewed-by: vromero, jlahoda
2021-05-25 15:58:00 +00:00
Jonathan Gibbons
cc687fd43a 8267575: Add new documentation group in HtmlStyle
Reviewed-by: hannesw
2021-05-25 14:54:27 +00:00
Pavel Rappo
5a5b807e8e 8267633: Clarify documentation of (Doc)TreeScanner
Reviewed-by: jjg
2021-05-25 14:22:36 +00:00
Maurizio Cimadamore
86a8f44271 8267317: Remove DeferredTypeCompleter
Reviewed-by: vromero
2021-05-25 11:51:25 +00:00
Jie Fu
b403d39908 8267213: cpuinfo_segv is incorrectly triaged as execution protection violation on x86_32
Reviewed-by: dholmes
2021-05-25 11:49:58 +00:00
Claes Redestad
66b190e1e7 8267612: Declare package-private VarHandle.AccessMode/AccessType counts
Reviewed-by: mchung
2021-05-25 11:47:33 +00:00
Patrick Concannon
a52c4ede2f 8267110: Update java.util to use instanceof pattern variable
Reviewed-by: lancea, naoto
2021-05-25 08:24:49 +00:00
Jaikiran Pai
0a03fc84b3 8255674: SSLEngine class description is missing "case" in switch statement
Reviewed-by: xuelei
2021-05-25 07:40:48 +00:00
Alexander Zuev
d86f91642d 8267066: New NSAccessibility peers should return they roles and subroles directly
Reviewed-by: pbansal
2021-05-25 06:46:22 +00:00
Adam Sotona
31d0f0d895 8248843: java in source-file mode suggests javac-only options
Reviewed-by: vromero
2021-05-25 04:52:42 +00:00
Denghui Dong
2e8812df14 8265129: Add intrinsic support for JVM.getClassId
Reviewed-by: kvn, mgronlun
2021-05-25 04:11:12 +00:00
Dong Bo
123cdd1fbd 8264973: AArch64: Optimize vector max/min/add reduction of two integers with NEON pairwise instructions
Reviewed-by: njian, aph
2021-05-25 02:17:19 +00:00
Jonathan Gibbons
b4d4884c03 8267126: javadoc should show "line and caret" for diagnostics.
Reviewed-by: prappo
2021-05-25 01:33:13 +00:00
Calvin Cheung
461a3feebe 8261478: InstanceKlass::set_classpath_index does not match comments
Reviewed-by: minqi
2021-05-25 00:48:39 +00:00
Calvin Cheung
de27da7ded 8267431: Rename InstanceKlass::has_old_class_version to can_be_verified_at_dumptime
Reviewed-by: iklam
2021-05-25 00:42:21 +00:00
Claes Redestad
c519ba2e43 8267614: Outline VarHandleGuards exact behavior checks
Reviewed-by: psandoz, mchung
2021-05-24 23:02:40 +00:00
Kim Barrett
f6909596ca 8267446: Taskqueue code fails with assert(bottom_relaxed() == age_top_relaxed()) failed: not empty
Reviewed-by: stefank, pliden
2021-05-24 22:43:42 +00:00
Ian Graves
ebc9357d58 8267329: Modernize Javadoc code to use instanceof with pattern matching
Reviewed-by: prappo, jjg
2021-05-24 21:57:30 +00:00
Ioi Lam
209769b5ad 8267347: CDS record_linking_constraint asserts with unregistered class
Reviewed-by: minqi, ccheung
2021-05-24 21:52:13 +00:00
Andy Herrick
a5467ae7bb 8267423: Fix copyrights in jpackage tests
Reviewed-by: kcr, asemenyuk
2021-05-24 19:28:50 +00:00
Mark Sheppard
bb085f684d 8265362: java/net/Socket/UdpSocket.java fails with "java.net.BindException: Address already in use" (macos-aarch64)
Reviewed-by: dfuchs, alanb
2021-05-24 17:59:39 +00:00
Weijun Wang
640a2afda3 8267184: Add -Djava.security.manager=allow to tests calling System.setSecurityManager
Co-authored-by: Lance Andersen <lancea@openjdk.org>
Co-authored-by: Weijun Wang <weijun@openjdk.org>
Reviewed-by: dholmes, alanb, dfuchs, mchung, mullan, prr
2021-05-24 16:55:55 +00:00
Vicente Romero
f04db5fbd7 8224158: assertion related to NPE at DynamicCallSiteDesc::withArgs should be reworded
Reviewed-by: jlahoda
2021-05-24 15:55:04 +00:00
Weijun Wang
838a007103 8267584: The java.security.krb5.realm system property only needs to be defined once
Reviewed-by: mullan
2021-05-24 15:45:01 +00:00
Hai-May Chao
f2d880c11a 8266400: importkeystore fails to a password less pkcs12 keystore
Reviewed-by: weijun
2021-05-24 15:38:32 +00:00
Vicente Romero
f5562f1214 8258535: jvm.ClassReader should set the accessor to the corresponding record component
Reviewed-by: jfranck
2021-05-24 14:50:22 +00:00
Roger Riggs
d8e6e2877a 8267544: (test) rmi test NonLocalSkeleton fails if network has multiple adapters with the same address
Reviewed-by: dfuchs
2021-05-24 14:10:09 +00:00
Guoxiong Li
f4531661b5 8267578: Remove unnecessary preview checks
Reviewed-by: jlahoda
2021-05-24 12:31:21 +00:00
Alexander Zuev
49f622c947 8208747: [a11y] [macos] In Optionpane Demo, inside ComponentDialog Example, unable to navigate to all items, with VO on
Reviewed-by: pbansal
2021-05-24 12:01:54 +00:00
Guoxiong Li
54520fbf49 8267580: The method JavacParser#peekToken is wrong when the first parameter is not zero
Reviewed-by: mcimadamore
2021-05-24 11:17:39 +00:00
David Holmes
31139108c1 8267553: Extra JavaThread assignment in ClassLoader::create_class_path_entry()
Reviewed-by: ccheung
2021-05-24 05:29:55 +00:00
Pankaj Bansal
4d26f22b9a 8264304: Create implementation for NSAccessibilityToolbar protocol peer
Reviewed-by: kizune
2021-05-23 03:00:48 +00:00
Jie Fu
6288a9936c 8267404: vmTestbase/vm/mlvm/anonloader/stress/oome/metaspace/Test.java failed with OutOfMemoryError
Co-authored-by: xiangyuan <xiangyuan@tencent.com>
Reviewed-by: stuefe
2021-05-22 22:59:55 +00:00
Aleksey Shipilev
71e2fa25f7 8267531: [x86] Assembler::andb(Address,Register) encoding is incorrect
Reviewed-by: azeemj, vlivanov, jiefu
2021-05-22 15:13:06 +00:00
Hui Shi
4023646ed1 8266528: Optimize C2 VerifyIterativeGVN execution time
Reviewed-by: kvn, thartmann
2021-05-22 11:51:37 +00:00
Jaroslav Bachorik
24623167ff 8261354: SIGSEGV at MethodIteratorHost
Reviewed-by: mgronlun
2021-05-22 09:17:45 +00:00
Ajit Ghaisas
72c9567b46 8263486: Clean up MTLSurfaceDataBase.h
Reviewed-by: serb
2021-05-22 03:16:17 +00:00
Daniel D. Daugherty
fe333431c8 8256304: should MonitorUsedDeflationThreshold be experimental or diagnostic
8256301: ObjectMonitor::is_busy() should return bool

Reviewed-by: coleenp, pchilanomate
2021-05-21 18:32:25 +00:00
Sandhya Viswanathan
8f10c5a890 8267190: Optimize Vector API test operations
Reviewed-by: psandoz, kvn
2021-05-21 18:15:16 +00:00
Marcus G K Williams
94cfeb9c4f 8256155: Allow multiple large page sizes to be used on Linux
Co-authored-by: Marcus G K Williams <mgkwill@openjdk.org>
Co-authored-by: Stefan Johansson <sjohanss@openjdk.org>
Co-authored-by: Thomas Stuefe <stuefe@openjdk.org>
Reviewed-by: stuefe, sjohanss
2021-05-21 14:15:29 +00:00
Jan Lahoda
ec8a8097c3 8267119: switch expressions lack support for deferred type-checking
Reviewed-by: mcimadamore
2021-05-21 14:09:42 +00:00
Nils Eliasson
4ba761381c 8267332: xor value should handle bounded values
Reviewed-by: thartmann, redestad
2021-05-21 14:06:18 +00:00
Jaroslav Bachorik
ee2651b9e5 8203359: Container level resources events
Reviewed-by: sgehwolf, egahlin
2021-05-21 09:44:45 +00:00
K Suman Rajkumaar
b5d32bbfc7 8260690: JConsole User Guide Link from the Help menu is not accessible by keyboard
Reviewed-by: aivanov, dmarkov
2021-05-21 09:42:30 +00:00
Prasanta Sadhukhan
e48d7d6658 8264218: Public method javax.swing.JMenu.setComponentOrientation() has no spec
Reviewed-by: aivanov
2021-05-21 09:37:48 +00:00
Alexander Matveev
9eaa4afc99 8267056: tools/jpackage/share/RuntimePackageTest.java fails with NoSuchFileException
Reviewed-by: asemenyuk, herrick
2021-05-21 00:44:39 +00:00
Jonathan Gibbons
e094f3f856 8266856: Make <wbr> element void
Reviewed-by: prappo, iris, vromero
2021-05-21 00:31:04 +00:00
Jie Fu
7a63ff70c8 8267370: [Vector API] Fix several crashes after JDK-8256973
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: neliasso, kvn
2021-05-20 23:59:12 +00:00
Denghui Dong
83b3607290 8266642: improve ResolvedMethodTable hash function
Reviewed-by: vlivanov, coleenp
2021-05-20 22:19:04 +00:00
Calvin Cheung
1c7a1310d9 8267350: Archived old interface extends interface with default method causes crash
Reviewed-by: iklam, minqi
2021-05-20 21:03:13 +00:00
Phil Race
005d8a7fca 8256372: [macos] Unexpected symbol was displayed on JTextField with Monospaced font
Reviewed-by: erikj, serb
2021-05-20 19:49:03 +00:00
Vicente Romero
81f39ed3e0 8261205: AssertionError: Cannot add metadata to an intersection type
Reviewed-by: mcimadamore
2021-05-20 17:53:00 +00:00
Aleksey Shipilev
7b98400c81 8267348: Rewrite gc/epsilon/TestClasses.java to use Metaspace with less classes
Reviewed-by: stuefe
2021-05-20 16:45:38 +00:00
Vladimir Kempik
ca93399af1 8267235: [macos_aarch64] InterpreterRuntime::throw_pending_exception messing up LR results in crash
Reviewed-by: akozlov, aph
2021-05-20 15:46:53 +00:00
Hannes Wallnöfer
b7b6acd9b1 8267481: Make sure table row has correct number of cells
Reviewed-by: jjg
2021-05-20 15:11:08 +00:00
Aleksey Shipilev
f67847f52a 8267396: Avoid recording "pc" in unhandled oops detector for better performance
Reviewed-by: coleenp, dholmes
2021-05-20 14:26:18 +00:00
Jonathan Gibbons
878d1b3f60 8267434: Remove LinkOutput[Impl]
Reviewed-by: prappo
2021-05-20 14:22:24 +00:00
Thomas Schatzl
fc7f0a3e61 8267480: Explicitly problemlist all runtime/os/TestTracePageSizes.java tests on linux-aarch64 to reduce noise
Reviewed-by: dcubed
2021-05-20 14:17:57 +00:00
Sergey Tsypanov
9425d3de83 8261880: Change nested classes in java.base to static nested classes where possible
Reviewed-by: redestad
2021-05-20 13:56:11 +00:00
liach
459abd561a 8267219: Javadoc method summary breaks when {@inheritDoc} from an empty parent
Reviewed-by: hannesw
2021-05-20 12:44:55 +00:00
Per Liden
aba2265682 8260267: ZGC: Reduce mark stack usage
Co-authored-by: Wang Chao <wchao@openjdk.org>
Co-authored-by: Hui Shi <hshi@openjdk.org>
Reviewed-by: sjohanss, ayang
2021-05-20 11:32:48 +00:00
Thomas Schatzl
f979523a69 8267463: Problemlist runtime/os/TestTracePageSizes.java on linux-aarch64 to reduce noise
Reviewed-by: dholmes
2021-05-20 11:10:07 +00:00
Alexander Zuev
f07dcf471c 8264290: Create implementation for NSAccessibilityComponentGroup protocol peer
Reviewed-by: pbansal
2021-05-20 10:31:37 +00:00
Julia Boes
31320c3474 8267262: com/sun/net/httpserver/Filter improve API documentation of static methods
Reviewed-by: dfuchs, chegar
2021-05-20 09:30:10 +00:00
Vicente Romero
7dcb9fda89 8265684: implement Sealed Classes as a standard feature in Java, javadoc changes
Reviewed-by: jjg
2021-05-20 09:23:14 +00:00
Vicente Romero
0fa9223f34 8260517: implement Sealed Classes as a standard feature in Java
Co-authored-by: Harold Seigel <hseigel@openjdk.org>
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Reviewed-by: dholmes, mcimadamore, jlahoda
2021-05-20 09:11:08 +00:00
Vicente Romero
31b98e129e 8265319: implement Sealed Classes as a standard feature in Java, javax.lang.model changes
Reviewed-by: darcy, jlahoda
2021-05-20 09:08:30 +00:00
Thomas Stuefe
726785b8d7 8267155: runtime/os/TestTracePageSizes times out
Reviewed-by: shade, sjohanss
2021-05-20 08:16:36 +00:00
Xubo Zhang
8e3549fc73 8266332: Adler32 intrinsic for x86 64-bit platforms
Co-authored-by: Xubo Zhang <xubo.zhang@intel.com>
Co-authored-by: Greg B Tucker <greg.b.tucker@intel.com>
Co-authored-by: Pengfei Li <pli@openjdk.org>
Reviewed-by: sviswanathan, jbhateja, kvn, neliasso
2021-05-19 23:44:23 +00:00
Ioi Lam
b961f2535c 8267191: Avoid repeated SystemDictionaryShared::should_be_excluded calls
Reviewed-by: dholmes, coleenp
2021-05-19 19:31:15 +00:00
Jonathan Gibbons
74f30ad38b 8263684: Avoid wrapping into BufferedWriter twice
Reviewed-by: prappo
2021-05-19 18:29:12 +00:00
Thomas Stuefe
9820f3d480 8267371: Concurrent gtests take too long
Reviewed-by: shade, gziemski
2021-05-19 17:55:05 +00:00
Nils Eliasson
38d690b3c3 8265262: CITime - 'other' incorrectly calculated
Reviewed-by: thartmann, kvn
2021-05-19 17:51:02 +00:00
Hannes Wallnöfer
66ab6d86d1 8264181: javadoc tool Incorrect error message about malformed link
Reviewed-by: prappo
2021-05-19 17:17:50 +00:00
Albert Mingkun Yang
99fcc410a7 8234532: Remove ThreadLocalAllocBuffer::_fast_refill_waste since it is never set
Reviewed-by: tschatzl, sjohanss, pliden, sspitsyn
2021-05-19 17:02:39 +00:00
Gerard Ziemski
237fee8bbd 8267339: Temporarily disable os.release_multi_mappings_vm on macOS x64
Reviewed-by: hseigel, dcubed
2021-05-19 16:42:10 +00:00
Daniel D. Daugherty
64e2479bf6 8267407: ProblemList vmTestbase/vm/mlvm/anonloader/stress/oome/metaspace/Test.java on linux-aarch64
8267409: ProblemList gc/epsilon/TestClasses.java on linux-x64

Reviewed-by: tschatzl
2021-05-19 16:08:35 +00:00
Claes Redestad
9760dba71c 8267321: Use switch expression for VarHandle$AccessMode lookup
Reviewed-by: jvernee
2021-05-19 15:23:44 +00:00
Doug Simon
fdd0352884 8267338: [JVMCI] revive JVMCI API removed by JDK-8243287
Reviewed-by: mchung, hseigel
2021-05-19 13:59:46 +00:00
Zhengyu Gu
0b49f5ae19 8267257: Shenandoah: Always deduplicate strings when it is enabled during full gc
Reviewed-by: rkennke
2021-05-19 13:13:57 +00:00
Hannes Wallnöfer
12050f04ca 8266651: Convert Table method parameters from String to Content
Reviewed-by: jjg
2021-05-19 13:01:06 +00:00
Aleksey Shipilev
e749f75de0 8267304: Bump global JTReg memory limit to 768m
Reviewed-by: lmesnik, iignatyev
2021-05-19 12:59:03 +00:00
Guoxiong Li
e858dd6197 8267361: JavaTokenizer reads octal numbers mistakenly
Reviewed-by: jlaskey
2021-05-19 12:50:54 +00:00
Albert Mingkun Yang
1b93b81270 8267133: jdk/jfr/event/gc/collection/TestG1ParallelPhases.java fails with Not expected phases: RestorePreservedMarks, RemoveSelfForwardingPtr: expected true, was false
8267218: jdk/jfr/event/gc/collection/TestG1ParallelPhases.java fails with Not found phases\: StringDedupQueueFixup, StringDedupTableFixup

Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: tschatzl, iwalulya
2021-05-19 11:29:27 +00:00
Jatin Bhateja
88b114235c 8267357: build breaks with -Werror option on micro benchmark added for JDK-8256973
Reviewed-by: jiefu, neliasso, thartmann
2021-05-19 09:58:48 +00:00
Leo Korinth
6ef46ce386 8231672: Simplify the reference processing parallelization framework
Reviewed-by: tschatzl, ayang
2021-05-19 09:39:40 +00:00
Yi Yang
392f962e0e 8267151: C2: Don't create dummy Opaque1Node for outmost unswitched IfNode
Reviewed-by: thartmann, neliasso
2021-05-19 09:06:59 +00:00
Yi Yang
0cf7e5784b 8267239: C1: RangeCheckElimination for % operator if divisor is IntConstant
Reviewed-by: thartmann, neliasso
2021-05-19 09:05:05 +00:00
Jie Fu
2d407e12fa 8267293: vmTestbase/vm/mlvm/anonloader/stress/oome/metaspace/Test.java fails when JTREG_JOBS > 25
Reviewed-by: stuefe, shade
2021-05-19 09:03:53 +00:00
Ivan Walulya
70f6c67051 8233380: CHT: Node allocation and freeing
Reviewed-by: rehn, tschatzl
2021-05-19 08:01:35 +00:00
Xiaohong Gong
2563a6a9b5 8266962: Add arch supporting check for "Op_VectorLoadConst" before creating the node
Reviewed-by: vlivanov, neliasso
2021-05-19 07:49:41 +00:00
Jie Fu
4954383168 8267364: Remove mask.incr which is introduced by JDK-8256973
Reviewed-by: vlivanov, thartmann
2021-05-19 07:43:12 +00:00
Tobias Hartmann
c2b50f93ac 8266480: Implicit null check optimization does not update control of hoisted memory operation
Reviewed-by: neliasso, kvn
2021-05-19 07:27:30 +00:00
Jie Fu
3f883e8f0d 8267351: runtime/cds/SharedBaseAddress.java fails on x86_32 due to Unrecognized VM option 'UseCompressedOops'
Reviewed-by: dholmes, ccheung
2021-05-19 07:17:13 +00:00
Jatin Bhateja
7aa65685b8 8256973: Intrinsic creation for VectorMask query (lastTrue,firstTrue,trueCount) APIs
Reviewed-by: psandoz, vlivanov
2021-05-19 05:22:02 +00:00
Jatin Bhateja
65a8bf58be 8265126: [REDO] unified handling for VectorMask object re-materialization during de-optimization
Reviewed-by: vlivanov
2021-05-19 05:19:16 +00:00
Alan Hayward
ff84577d72 8267098: AArch64: C1 StubFrames end confusingly
Reviewed-by: aph
2021-05-19 01:48:34 +00:00
Jie Fu
0daec497fe 8267246: -XX:MaxRAMPercentage=0 is unreasonable for jtreg tests on many-core machines
Reviewed-by: shade, erikj
2021-05-19 01:46:23 +00:00
Hui Shi
324defe2b6 8267212: test/jdk/java/util/Collections/FindSubList.java intermittent crash with "no reachable node should have no use"
Reviewed-by: roland, thartmann
2021-05-19 01:25:58 +00:00
Martin Balao
bdbe23b9cb 8265462: Handle multiple slots in the NSS Internal Module from SunPKCS11's Secmod
Reviewed-by: valeriep
2021-05-18 22:34:27 +00:00
Chris Plummer
10236e7a52 8263242: serviceability/sa/ClhsdbFindPC.java cannot find MaxJNILocalCapacity with ASLR
Reviewed-by: kevinw, ysuenaga
2021-05-18 21:26:56 +00:00
Sergey Bylokhov
e6705c0e4b 8266949: Check possibility to disable OperationTimedOut on Unix
Reviewed-by: azvegint, kizune
2021-05-18 19:30:33 +00:00
Anton Kozlov
b92c5a44f2 8265292: [macos_aarch64] java/foreign/TestDowncall.java crashes with SIGBUS
8265183: [macos_aarch64] java/foreign/TestIntrinsics.java crashes with SIGBUS
8265182: [macos_aarch64] java/foreign/TestUpcall.java crashes with SIGBUS

Reviewed-by: dholmes
2021-05-18 18:54:16 +00:00
Gerard Ziemski
fadf58043c 8262952: [macos_aarch64] os::commit_memory failure
Reviewed-by: stuefe, aph
2021-05-18 14:44:12 +00:00
Albert Mingkun Yang
f8f40ab25f 8230486: G1BarrierSetAssembler::g1_write_barrier_post unnecessarily pushes/pops new_val
Reviewed-by: kbarrett, tschatzl
2021-05-18 13:58:37 +00:00
Vladimir Ivanov
9d168e25d1 8266973: Migrate to ClassHierarchyIterator when enumerating subclasses
Reviewed-by: kvn, coleenp
2021-05-18 12:46:50 +00:00
Harold Seigel
02507bc40d 8267166: Remove test file vmTestbase/vm/mlvm/tools/LoadClass.java
Reviewed-by: gziemski, coleenp
2021-05-18 12:34:09 +00:00
Tobias Hartmann
ce88b33488 8266615: C2 incorrectly folds subtype checks involving an interface array
Reviewed-by: kvn, neliasso
2021-05-18 12:21:24 +00:00
Julia Boes
894547d2c1 8266897: com/sun/net/httpserver/FilterTest.java fails intermittently with AssertionError
Reviewed-by: chegar, dfuchs, michaelm
2021-05-18 09:12:33 +00:00
Thomas Stuefe
da7c846a8c 8264408: test_oopStorage no longer needs to disable some tests on WIN32
Reviewed-by: shade, tschatzl
2021-05-18 08:52:39 +00:00
Aleksey Shipilev
f6c2891118 8267229: Split runtime/Metaspace/elastic test configurations for better scalability
Reviewed-by: stuefe
2021-05-18 08:08:54 +00:00
Christoph Göttschkes
b60975dd85 8267237: ARM32: bad AD file in matcher.cpp after 8266810
Reviewed-by: redestad, thartmann
2021-05-18 07:30:30 +00:00
Yi Yang
905b41ac6a 8265711: C1: Intrinsify Class.getModifier method
Reviewed-by: thartmann, kvn
2021-05-18 07:29:18 +00:00
Thomas Stuefe
554caf33a0 8251392: Consolidate Metaspace Statistics
Reviewed-by: coleenp, zgu
2021-05-18 06:35:17 +00:00
Alexey Ushakov
3e97b07a68 8267116: Lanai: Incorrect AlphaComposite for VolatileImage graphics
Reviewed-by: serb, aghaisas
2021-05-18 06:06:42 +00:00
David Holmes
cd1c17c0a6 8266404: Fatal error report generated with -XX:+CrashOnOutOfMemoryError should not contain suggestion to submit a bug report
Reviewed-by: stuefe, kevinw, gziemski
2021-05-17 22:39:14 +00:00
Vladimir Kozlov
2effdd1b67 8267112: JVMCI compiler modules should be kept upgradable
Reviewed-by: mchung, erikj, dnsimon
2021-05-17 20:11:01 +00:00
Brian Burkhalter
da4dfde71a 8264777: Overload optimized FileInputStream::readAllBytes
Reviewed-by: dfuchs, alanb
2021-05-17 19:58:41 +00:00
Anton Kozlov
3b11d811a2 8266742: Check W^X state on possible safepoint
Reviewed-by: dholmes, gziemski
2021-05-17 19:15:18 +00:00
Ajit Ghaisas
79b39445f6 8266520: Revert to OpenGL as the default 2D rendering pipeline for macOS
Reviewed-by: azvegint, trebari, kcr, prr
2021-05-17 16:32:51 +00:00
Thomas Stuefe
3c010a7c7e 8265705: aarch64: KlassDecodeMovk mode broken
Reviewed-by: aph, iklam, ngasson
2021-05-17 16:14:22 +00:00
Adam Sotona
cf97252f3f 8264561: javap get NegativeArraySizeException on bad instruction
Reviewed-by: vromero
2021-05-17 15:23:18 +00:00
Vicente Romero
b8856b1c47 8263614: javac allows local variables to be accessed from a static context
Reviewed-by: mcimadamore
2021-05-17 15:03:32 +00:00
Hannes Wallnöfer
ea36836573 8267236: Versioned platform link in TestMemberSummary.java
Reviewed-by: prappo
2021-05-17 14:43:49 +00:00
Hannes Wallnöfer
d5a15f7420 8263438: Unused method AbstractMemberWriter.isInherited
Reviewed-by: prappo
2021-05-17 14:19:57 +00:00
Maurizio Cimadamore
dd5a84c68c 8267162: Add jtreg test group definitions for langtools
Reviewed-by: jjg
2021-05-17 12:55:34 +00:00
Prasanta Sadhukhan
39a454bb87 8260331: javax/swing/JInternalFrame/8146321/JInternalFrameIconTest.java failed with "ERROR: icon and imageIcon not same."
Reviewed-by: azvegint
2021-05-17 12:32:35 +00:00
Ralf Schmelter
a29612ea99 8255661: TestHeapDumpOnOutOfMemoryError fails with EOFException
Reviewed-by: rrich, cjplummer
2021-05-17 11:47:35 +00:00
Mitsuru Kariya
a555fd89d0 8264734: Some SA classes could use better hashCode() implementation
Reviewed-by: cjplummer, kevinw
2021-05-17 09:49:57 +00:00
Ivan Walulya
2313a2187a 8266637: CHT: Add insert_and_get method
Reviewed-by: tschatzl, rehn
2021-05-17 09:41:45 +00:00
Stefan Johansson
7b736ec932 8266489: Enable G1 to use large pages on Windows when region size is larger than 2m
Reviewed-by: tschatzl, iwalulya
2021-05-17 08:32:30 +00:00
Leo Korinth
f4227879b0 8266073: Regression ~2% in Derby after 8261804
Reviewed-by: ayang, sjohanss
2021-05-17 07:08:04 +00:00
David Holmes
02f895c5f6 8252685: APIs that require JavaThread should take JavaThread arguments
Reviewed-by: coleenp, sspitsyn, kvn, iklam
2021-05-17 04:05:44 +00:00
Yumin Qi
2066f497b9 8266764: [REDO] JDK-8255493 Support for pre-generated java.lang.invoke classes in CDS dynamic archive
Reviewed-by: ccheung, iklam
2021-05-16 02:26:46 +00:00
Daniel D. Daugherty
8c71144a23 8265153: add time based test for ThreadMXBean.getThreadInfo() and ThreadInfo.getLockOwnerName()
Reviewed-by: dholmes, cjplummer
2021-05-15 13:14:49 +00:00
Thomas Schatzl
10cafd244d 8267153: Problemlist jdk/jfr/event/gc/collection/TestG1ParallelPhases.java to remove the noise from CI
Reviewed-by: dcubed, jiefu
2021-05-15 09:46:29 +00:00
Thomas Stuefe
f3fb5a4524 8266942: gtest/GTestWrapper.java os.iso8601_time_vm failed
Reviewed-by: dcubed
2021-05-15 05:20:01 +00:00
Valerie Peng
7ab6dc83df 6676643: Improve current C_GetAttributeValue native implementation
Reviewed-by: xuelei
2021-05-14 23:04:37 +00:00
Alexander Matveev
28f1c7ac4d 8249395: (macos) jpackage tests timeout on MacPro5_1 systems
Reviewed-by: herrick, asemenyuk
2021-05-14 23:00:59 +00:00
Kim Barrett
be0a655208 8254598: StringDedupTable should use OopStorage
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Co-authored-by: Zhengyu Gu <zgu@openjdk.org>
Reviewed-by: coleenp, iklam, tschatzl, ayang
2021-05-14 18:38:58 +00:00
Albert Mingkun Yang
360928d16d 8260046: Assert left >= right in pointer_delta() methods
Reviewed-by: sjohanss, kbarrett, tschatzl
2021-05-14 18:17:37 +00:00
Lance Andersen
5eda812f53 8267180: Typo in copyright header for HashesTest
Reviewed-by: dcubed, naoto, joehw
2021-05-14 17:55:43 +00:00
Lance Andersen
e90388bc1e 8266461: tools/jmod/hashes/HashesTest.java fails: static @Test methods
Reviewed-by: alanb, mchung
2021-05-14 17:19:32 +00:00
Wang Huang
599d07c0db 8263006: Add optimization for Max(*)Node and Min(*)Node
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Reviewed-by: kvn
2021-05-14 17:16:28 +00:00
Harold Seigel
16ca370f1a 8265694: Investigate test StressHiddenClasses.java
Reviewed-by: lfoltan
2021-05-14 14:52:37 +00:00
Athijegannathan Sundararajan
af4cd04c2e 8266291: (jrtfs) Calling Files.exists may break the JRT filesystem
Reviewed-by: redestad, alanb
2021-05-14 12:59:41 +00:00
Сергей Цыпанов
ebcf3991b7 8266622: Optimize Class.descriptorString() and Class.getCanonicalName0()
Reviewed-by: redestad
2021-05-14 12:29:23 +00:00
Claes Redestad
644f28c0ea 8266810: Move trivial Matcher code to cpu-specific header files
Reviewed-by: kvn, thartmann
2021-05-14 10:36:52 +00:00
Stefan Karlsson
88907bb81a 8266904: Use function pointer typedefs in OopOopIterateDispatch
Reviewed-by: tschatzl, iklam
2021-05-14 07:55:23 +00:00
Hamlin Li
301095c8be 8266795: Remove dead code LowMemoryDetectorDisabler
Reviewed-by: dholmes
2021-05-14 06:52:31 +00:00
Ioi Lam
1e0ecd6d56 8265605: Cannot call BootLoader::loadClassOrNull before initPhase2
Reviewed-by: alanb, mchung
2021-05-14 06:26:41 +00:00
Sergey Bylokhov
4086081306 8264846: Regression ~5% in J2dBench.bimg_misc on Linux after JDK-8263142
Reviewed-by: erikj, azvegint
2021-05-13 23:41:56 +00:00
Vladimir Ivanov
2a2f105a56 8267117: sun/hotspot/whitebox/CPUInfoTest.java fails on Ice Lake
Reviewed-by: kvn
2021-05-13 23:26:35 +00:00
Xue-Lei Andrew Fan
266702451d 8266881: Enable debug log for SSLEngineExplorerMatchedSNI.java
Reviewed-by: hchao, mullan
2021-05-13 18:53:52 +00:00
Pankaj Bansal
6c107fdff2 8264299: Create implementation of native accessibility peer for ScrollPane and ScrollBar Java Accessibility roles
Reviewed-by: kizune
2021-05-13 18:45:53 +00:00
Patricio Chilano Mateo
853ffdb25c 8265934: Cleanup _suspend_flags and _special_runtime_exit_condition
Reviewed-by: rehn, dcubed, dholmes
2021-05-13 18:04:26 +00:00
Alexey Semenyuk
f3c6cda476 8266162: Remove JPackage duplicate tests
Reviewed-by: almatvee, herrick
2021-05-13 16:30:17 +00:00
Naoto Sato
a259ab4a8d 8258795: Update IANA Language Subtag Registry to Version 2021-05-11
Reviewed-by: joehw
2021-05-13 16:20:12 +00:00
Jim Laskey
b4371e9bca 8266552: Technical corrections to java/util/random/package-info.java
Reviewed-by: darcy
2021-05-13 13:42:53 +00:00
Harold Seigel
e14b026841 8243287: Removal of Unsafe::defineAnonymousClass
Reviewed-by: iklam, mchung, alanb, dholmes
2021-05-13 12:46:54 +00:00
Thomas Schatzl
a564f2cbd5 8266821: G1: Prefetch cards during merge heap roots phase
Reviewed-by: kbarrett, iwalulya
2021-05-13 11:22:31 +00:00
Vladimir Ivanov
127bfe44f7 8266074: Vtable-based CHA implementation
Reviewed-by: kvn, jrose, dlong
2021-05-13 10:58:03 +00:00
Fernando Guallini
347d41df90 8164804: sun/security/ssl/SSLSocketImpl/CloseSocket.java makes not reliable time assumption
Reviewed-by: dfuchs, rhalade
2021-05-13 10:50:06 +00:00
Guoxiong Li
17ceef97c3 8266819: Separate the stop policies from the compile policies completely
Reviewed-by: mcimadamore
2021-05-13 10:22:13 +00:00
Maurizio Cimadamore
a270cbe2eb 8267043: IntelliJ project doesn't handle generated sources correctly
Reviewed-by: chegar, erikj
2021-05-13 09:32:22 +00:00
Daniel Fuchs
08a5a5c6d6 8263382: java/util/logging/ParentLoggersTest.java failed with "checkLoggers: getLoggerNames() returned unexpected loggers"
Reviewed-by: bpb, mchung
2021-05-13 08:54:24 +00:00
Prasanta Sadhukhan
b50fc5f992 8265528: Specification of BasicSplitPaneDivider::getMinimumSize,getPreferredSize doesn't match with its behavior.
Reviewed-by: kizune
2021-05-13 04:42:38 +00:00
David Holmes
d215743a91 8231031: runtime/ReservedStack/ReservedStackTest.java fails after jsr166 refresh
Reviewed-by: dcubed
2021-05-13 01:14:38 +00:00
Philippe Marschall
ab17be2835 8252530: Fix inconsistencies in hotspot whitebox
Reviewed-by: dholmes, amenkov
2021-05-12 23:14:30 +00:00
Chris Plummer
2568d181a7 8267047: Put serviceability/sa/TestJmapCoreMetaspace.java back on ZGC problem list due to JDK-8267045
Reviewed-by: dcubed
2021-05-12 21:01:47 +00:00
Guoxiong Li
accbfeaf22 8226216: parameter modifiers are not visible to javac plugins across compilation boundaries
Reviewed-by: jlahoda
2021-05-12 14:32:57 +00:00
Zhengyu Gu
69daedfd23 8266845: Shenandoah: Simplify SBS::load_reference_barrier implementation
Reviewed-by: shade
2021-05-12 12:34:55 +00:00
Alexey Ushakov
7433821910 8250658: Performance of ClipFlatOval Renderperf test is very low
Reviewed-by: jdv, aghaisas
2021-05-12 12:33:45 +00:00
Pavel Rappo
4727187f86 8266567: Fix javadoc tag references in sun.management.jmxremote.ConnectorBootstrap
Reviewed-by: dfuchs, sspitsyn
2021-05-12 10:57:37 +00:00
Yi Yang
11759bfb2d 8266798: C1: More types of instruction can also apply LoopInvariantCodeMotion
Reviewed-by: thartmann, neliasso
2021-05-12 09:08:29 +00:00
Ivan Walulya
dcf250d5d4 8233378: CHT: Fast reset
Reviewed-by: tschatzl, rehn
2021-05-12 09:07:01 +00:00
Doug Simon
f3b510b9aa 8266923: [JVMCI] expose StackOverflow::_stack_overflow_limit to JVMCI
Reviewed-by: kvn
2021-05-12 08:47:36 +00:00
Yi Yang
548899d40e 8266189: Remove C1 "IfInstanceOf" instruction
Reviewed-by: thartmann
2021-05-12 08:36:37 +00:00
Yi Yang
b46086d777 8266874: Clean up C1 canonicalizer for TableSwitch/LookupSwitch
Reviewed-by: thartmann
2021-05-12 08:35:31 +00:00
Hannes Wallnöfer
97367c01c1 8266808: Search label still uses old search field id
Reviewed-by: prappo
2021-05-12 08:32:29 +00:00
Tobias Hartmann
06d7602833 8261158: JVMState should not be shared between SafePointNodes
Reviewed-by: vlivanov, kvn
2021-05-12 07:21:25 +00:00
Yasumasa Suenaga
476994aa37 8266531: ZAddress::address() should be removed from SA
Reviewed-by: cjplummer, stefank
2021-05-12 05:27:14 +00:00
David Holmes
e828a939a8 8261395: C1 crash "cannot make java calls from the native compiler"
Co-authored-by: Ioi Lam <iklam@openjdk.org>
Co-authored-by: Coleen Phillimore <coleenp@openjdk.org>
Reviewed-by: iklam, hseigel, coleenp
2021-05-12 05:21:58 +00:00
Hamlin Li
3c47cab6db 8261034: improve jcmd GC.class_histogram to support parallel
Reviewed-by: cjplummer, sspitsyn
2021-05-12 01:06:44 +00:00
Guoxiong Li
ed32e02c05 8241187: ToolBox::grep should allow for negative filtering
Reviewed-by: vromero
2021-05-12 01:01:29 +00:00
Mandy Chung
cc03734b99 8266925: Add a test to verify that hidden class's members are not statically invocable
Reviewed-by: alanb
2021-05-12 00:53:04 +00:00
Sergey Bylokhov
271a0c7133 8047218: [TEST_BUG] java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java fails with exception
Reviewed-by: azvegint, kizune, pbansal
2021-05-11 23:55:08 +00:00
Joe Wang
1a0ff28ea1 8255035: Update BCEL to Version 6.5.0
Reviewed-by: lancea
2021-05-11 23:54:07 +00:00
Calvin Cheung
57c6ba6e6b 8266822: Rename MetaspaceShared::is_old_class to be more explicit about what "old" means
Reviewed-by: iklam, minqi, coleenp
2021-05-11 23:53:06 +00:00
Claes Redestad
616244f43a 8266937: Remove Compile::reshape_address
Reviewed-by: kvn
2021-05-11 22:45:27 +00:00
Jie Fu
974b9f7004 8266773: Release VM is broken with GCC 9 after 8214237
Reviewed-by: stuefe, lkorinth
2021-05-11 22:44:28 +00:00
Naoto Sato
f6c5a6bbf1 8266784: java/text/Collator/RuleBasedCollatorTest.java fails with jtreg 6
Reviewed-by: joehw
2021-05-11 22:42:17 +00:00
Alexander Matveev
1356116d3f 8266456: Replace direct TKit.run() calls with jdk.jpackage.test.Annotations.Test annotation
Reviewed-by: asemenyuk, herrick
2021-05-11 21:59:56 +00:00
Mandy Chung
dfe8833f5d 8266783: java/lang/reflect/Proxy/DefaultMethods.java fails with jtreg 6
Reviewed-by: iris
2021-05-11 20:22:39 +00:00
Hai-May Chao
995e956030 8266225: jarsigner is using incorrect security property to show weakness of certs
Reviewed-by: weijun, mullan
2021-05-11 19:37:26 +00:00
Jason Zaugg
0a12605df8 8265448: (zipfs): Reduce read contention in ZipFileSystem
Reviewed-by: alanb, lancea
2021-05-11 18:06:37 +00:00
Vladimir Ivanov
acf02ed553 8208237: Re-examine defmeth tests and update as needed
Reviewed-by: hseigel, lfoltan, dholmes
2021-05-11 17:14:57 +00:00
Yumin Qi
ac0287fd73 8266770: Clean pending exception before running dynamic CDS dump
Reviewed-by: ccheung, iklam
2021-05-11 16:57:40 +00:00
Brian Burkhalter
7a0a57cd56 8266820: micro java/nio/SelectorWakeup.java has wrong copyright header
Reviewed-by: chegar, alanb, michaelm, iris
2021-05-11 16:12:36 +00:00
Liam Miller-Cushon
d0daa72592 8266857: PipedOutputStream.sink should be volatile
Reviewed-by: dfuchs
2021-05-11 15:47:14 +00:00
Weijun Wang
381de0c1d0 8266753: jdk/test/lib/process/ProcTest.java failed with "Exception: Proc abnormal end"
Reviewed-by: dfuchs
2021-05-11 15:22:52 +00:00
Daniel Fuchs
2d2cd78bde 8266761: AssertionError in sun.net.httpserver.ServerImpl.responseCompleted
Reviewed-by: chegar
2021-05-11 14:48:12 +00:00
Zhengyu Gu
9c9c47e403 8266813: Shenandoah: Use shorter instruction sequence for checking if marking in progress
Reviewed-by: shade
2021-05-11 12:48:22 +00:00
Hamlin Li
0344e751e2 8266794: Remove dead code notify_allocation_jvmti_allocation_event
Reviewed-by: ayang, tschatzl
2021-05-11 11:35:48 +00:00
Matthias Baesken
9e6e2228cb 8266892: avoid maybe-uninitialized gcc warnings on linux s390x
Reviewed-by: shade, lucy
2021-05-11 10:49:15 +00:00
Albert Mingkun Yang
6575566d83 8266787: Potential overflow of pointer arithmetic in G1ArchiveAllocator
Reviewed-by: kbarrett, tschatzl
2021-05-11 10:34:56 +00:00
Jan Lahoda
8468001f88 8263452: Javac slow compilation due to algorithmic complexity
Reviewed-by: vromero, jfranck
2021-05-11 10:06:04 +00:00
Cesar
67cb22af58 8266601: Fix bugs in AddLNode::Ideal transformations
Reviewed-by: kvn, vlivanov, thartmann
2021-05-11 09:28:37 +00:00
Hamlin Li
18e9d28e8a 8266676: G1: Remove dead code init_node_id_to_index_map()
Reviewed-by: sangheki, whuang
2021-05-11 04:28:42 +00:00
Denis Konoplev
0e7bdae0f6 8265062: Remove duplication constant MaxTextureSize
Reviewed-by: prr, serb
2021-05-11 03:24:01 +00:00
Wang Huang
10a049e171 8265956: JVM crashes when matching LShiftVB Node
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Reviewed-by: kvn, jiefu
2021-05-11 03:20:15 +00:00
Alex Menkov
9713152eae 8262092: vmTestbase/nsk/jvmti/scenarios/hotswap/HS102/hs102t001/TestDescription.java SIGSEGV in memmove_ssse3
Reviewed-by: lmesnik, sspitsyn
2021-05-10 22:48:01 +00:00
Sandhya Viswanathan
23446f1f5e 8265128: [REDO] Optimize Vector API slice and unslice operations
Reviewed-by: psandoz, vlivanov
2021-05-10 21:49:49 +00:00
Aleksey Shipilev
e5d3ee394a 8266802: Shenandoah: Round up region size to page size unconditionally
Reviewed-by: zgu
2021-05-10 20:28:16 +00:00
Hannes Wallnöfer
8851cb653f 8266779: Use <wbr> instead of ZERO_WIDTH_SPACE
Reviewed-by: prappo
2021-05-10 20:25:43 +00:00
Jim Laskey
0cc7833f3d 8265208: [JEP-356] : SplittableRandom and SplittableGenerators - splits() methods does not throw NullPointerException when source is null
Reviewed-by: rriggs
2021-05-10 18:52:02 +00:00
Zhengyu Gu
f78440ad43 8266440: Shenandoah: TestReferenceShortcutCycle.java test failed on AArch64
Reviewed-by: aph
2021-05-10 17:59:54 +00:00
Cesar
de784312c3 8241502: C2: Migrate x86_64.ad to MacroAssembler
Reviewed-by: vlivanov, kvn
2021-05-10 17:09:34 +00:00
Alexey Semenyuk
c8b744743b 8266603: jpackage: Add missing copyright file in Java runtime .deb installers
Reviewed-by: almatvee, herrick
2021-05-10 16:39:39 +00:00
Naoto Sato
c494efc5b5 8266774: System property values for stdout/err on Windows UTF-8
Reviewed-by: bpb, alanb
2021-05-10 16:25:30 +00:00
Calvin Cheung
25d99e5267 8266330: itableMethodEntry::initialize() asserts with archived old classes
Reviewed-by: iklam, minqi
2021-05-10 16:24:11 +00:00
Guoxiong Li
5d761fcffd 8266796: Clean up the unnecessary code in the method UnsharedNameTable#fromUtf
Reviewed-by: mcimadamore
2021-05-10 14:27:21 +00:00
Claes Redestad
e41fd73529 8266252: Streamline AbstractInterpreter::method_kind
Reviewed-by: iklam, coleenp
2021-05-10 13:51:12 +00:00
Vyom Tewari
b823b3ef29 8266797: Fix for 8266610 breaks the build on macos
Reviewed-by: dholmes, jdv
2021-05-10 13:40:28 +00:00
Jayathirth D V
53db2a0acd 8226384: Implement a better logic to switch between OpenGL and Metal pipeline
Reviewed-by: prr
2021-05-10 10:36:23 +00:00
Alexey Bakhtin
1603ca2342 8241248: NullPointerException in sun.security.ssl.HKDF.extract(HKDF.java:93)
Reviewed-by: jnimeh, xuelei
2021-05-10 09:45:35 +00:00
Claes Redestad
0f925d1f58 8266015: Implement AdapterHandlerLibrary lookup fast-path for common adapters
Reviewed-by: iklam, coleenp
2021-05-10 08:02:15 +00:00
Vyom Tewari
69b96f9a1b 8266610: Method RandomAccessFile#length() returns 0 for block devices on linux.
Reviewed-by: alanb, bpb
2021-05-10 03:51:04 +00:00
Alexander Zuev
9b76955024 8266249: javax/swing/JPopupMenu/7156657/bug7156657.java fails on macOS
Reviewed-by: jdv, pbansal, azvegint
2021-05-10 03:21:52 +00:00
Pankaj Bansal
3af4efdfcf 8265291: Error in Javadoc for doAccessibleAction API in AccessibleJSlider class
Reviewed-by: azvegint, jdv
2021-05-08 10:56:29 +00:00
Alan Bateman
be4f25b0c8 8266369: (se) Add wepoll based Selector
Reviewed-by: chegar, michaelm, vtewari, dfuchs, bpb
2021-05-08 07:14:36 +00:00
Guoxiong Li
ff77ca8bd4 8266675: Optimize IntHashTable for encapsulation and ease of use
Reviewed-by: mcimadamore
2021-05-08 03:09:27 +00:00
Yumin Qi
04fad70437 8266765: [BACKOUT] JDK-8255493 Support for pre-generated java.lang.invoke classes in CDS dynamic archive
Reviewed-by: ccheung
2021-05-07 23:49:00 +00:00
Kevin Walls
0790e6016e 8196743: jstatd doesn't see new Java processes inside Docker container
Reviewed-by: sspitsyn, ysuenaga
2021-05-07 15:43:09 +00:00
Hannes Wallnöfer
c6aa8f19ac 8232644: bugs in serialized-form.html
Reviewed-by: jjg
2021-05-07 15:34:53 +00:00
Brian Burkhalter
b5b31197e5 8266589: (fs) Improve performance of Files.copy() on macOS using copyfile(3)
Reviewed-by: alanb
2021-05-07 15:23:38 +00:00
Jonathan Gibbons
947d69df04 8265042: javadoc HTML files not generated for types nested in records
Reviewed-by: hannesw
2021-05-07 14:51:03 +00:00
Vicente Romero
946b0fe19a 8266645: javac should not check for sealed supertypes in intersection types
Reviewed-by: mcimadamore
2021-05-07 14:38:18 +00:00
Thomas Stuefe
74fecc070a 8266503: [UL] Make Decorations safely copy-able and reduce their size
Reviewed-by: simonis, ysuenaga
2021-05-07 14:04:27 +00:00
Patrick Concannon
86b8dc9f5b 8265426: Update java.security to use instanceof pattern variable
Reviewed-by: rriggs, weijun, dfuchs
2021-05-07 13:42:40 +00:00
Daniel Fuchs
3fcdc50e44 8266646: Add more diagnostic to java/lang/System/LoggerFinder/modules
Reviewed-by: naoto, iris, bpb, lancea
2021-05-07 12:56:49 +00:00
Wang Huang
9a19a0cc10 8264760: JVM crashes when two threads encounter the same resolution error
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Reviewed-by: dholmes, hseigel
2021-05-07 12:55:40 +00:00
Thomas Schatzl
14f0afe811 8214237: Join parallel phases post evacuation
Reviewed-by: iwalulya, sjohanss
2021-05-07 11:38:29 +00:00
Stefan Johansson
2798b0d98a 8266349: Pass down requested page size to reserve_memory_special
Reviewed-by: stuefe, mgkwill
2021-05-07 11:33:10 +00:00
Hannes Wallnöfer
e0c86884e5 8262992: Improve @see output
Reviewed-by: jjg
2021-05-07 10:45:48 +00:00
Hannes Wallnöfer
d2b53509c0 8263507: Improve structure of package summary pages
Reviewed-by: jjg
2021-05-07 10:44:02 +00:00
Tobias Hartmann
a65021e38c 8266618: Remove broken -XX:-OptoRemoveUseless
Reviewed-by: kvn, neliasso
2021-05-07 09:55:08 +00:00
Thomas Stuefe
94c6177f24 8266536: Provide a variant of os::iso8601_time which works with arbitrary timestamps
Reviewed-by: xliu, simonis, ysuenaga
2021-05-07 09:47:46 +00:00
Nick Gasson
71b8ad45b4 8266609: AArch64: include FP/LR space in LIR_Assembler::initial_frame_size_in_bytes()
Reviewed-by: aph
2021-05-07 09:20:16 +00:00
Tejpal Rebari
ebb68d2b86 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic
Reviewed-by: psadhukhan, prr, serb, azvegint, iris
2021-05-07 05:12:57 +00:00
Lin Zang
3a474d953a 8265612: revise the help info for jmap histo command
Reviewed-by: cjplummer, sspitsyn
2021-05-07 04:40:49 +00:00
Yasumasa Suenaga
c97f56cdaf 8266172: -Wstringop-overflow happens in vmError.cpp
Reviewed-by: dholmes, stuefe
2021-05-07 03:21:28 +00:00
Yumin Qi
43ad24feb2 8265465: jcmd VM.cds should keep already dumped archive when exception happens
Reviewed-by: iklam, ccheung
2021-05-07 03:01:32 +00:00
buddyliao
66191ff4b0 8266193: BasicJMapTest does not include testHistoParallel methods
Reviewed-by: sspitsyn, amenkov
2021-05-07 02:57:32 +00:00
Aleksey Shipilev
36e5ad61e6 8263236: runtime/os/TestTracePageSizes.java fails on old kernels
Reviewed-by: dholmes, sjohanss, stuefe
2021-05-06 20:34:49 +00:00
Alex Menkov
0ca86da0e3 8266002: vmTestbase/nsk/jvmti/ClassPrepare/classprep001 should skip events for unexpected classes
Reviewed-by: cjplummer, sspitsyn
2021-05-06 18:38:11 +00:00
Alex Menkov
52f1db6b6f 8262002: java/lang/instrument/VerifyLocalVariableTableOnRetransformTest.sh failed with "TestCaseScaffoldException: DummyClassWithLVT did not match .class file"
Reviewed-by: coleenp, sspitsyn
2021-05-06 18:34:12 +00:00
Weijun Wang
04f7112647 8266293: Key protection using PBEWithMD5AndDES fails with "java.security.InvalidAlgorithmParameterException: Salt must be 8 bytes long"
Reviewed-by: valeriep
2021-05-06 18:00:11 +00:00
Aleksey Shipilev
a90b33a955 8266573: Make sure blackholes are tagged for all JVMCI paths
Reviewed-by: never
2021-05-06 16:42:06 +00:00
Hannes Wallnöfer
2dcbedf92a 8266044: Nested class summary should show kind of class or interface
Reviewed-by: jjg
2021-05-06 14:55:00 +00:00
Lance Andersen
e8405970b9 8266460: java.io tests fail on null stream with upgraded jtreg/TestNG
Reviewed-by: bpb
2021-05-06 14:18:41 +00:00
Lance Andersen
fcedfc8a3b 8266579: Update test/jdk/java/lang/ProcessHandle/PermissionTest.java & test/jdk/java/sql/testng/util/TestPolicy.java
Reviewed-by: joehw, naoto, bpb
2021-05-06 14:13:45 +00:00
Claes Redestad
c665dba591 8266561: Remove Compile::_save_argument_registers
Reviewed-by: kvn, thartmann
2021-05-06 12:57:44 +00:00
Albert Mingkun Yang
47d4438e75 8266426: ZHeapIteratorOopClosure does not handle native access properly
Co-authored-by: Per Liden <pliden@openjdk.org>
Co-authored-by: Erik Österlund <eosterlund@openjdk.org>
Co-authored-by: Stefan Karlsson <stefank@openjdk.org>
Reviewed-by: stefank, pliden
2021-05-06 12:52:34 +00:00
Jayathirth D V
2438498a3f 8252758: Lanai: Optimize index calculation while copying glyphs
Reviewed-by: aghaisas, pbansal
2021-05-06 12:35:13 +00:00
Harold Seigel
eb3b96d86b 8266496: WBIsKlassAliveClosure.do_klass() fails for hidden classes
Reviewed-by: dholmes, coleenp, mseledtsov, lfoltan
2021-05-06 12:25:53 +00:00
Koichi Sakata
51f5adfca3 8265047: Inconsistent warning message in jcmd VM.log
Reviewed-by: dholmes, stuefe, sspitsyn
2021-05-06 12:07:22 +00:00
Matthias Baesken
ea30bd6684 8263362: Avoid division by 0 in java/awt/font/TextJustifier.java justify
Reviewed-by: psadhukhan
2021-05-06 11:57:20 +00:00
Yasumasa Suenaga
0f9852c63b 8266168: -Wmaybe-uninitialized happens in check_code.c
Reviewed-by: stuefe
2021-05-06 11:54:32 +00:00
Thomas Stuefe
a86ee9b3f3 8266545: 8261169 broke Harfbuzz build with gcc 7 and 8
Reviewed-by: mbaesken, rrich
2021-05-06 09:22:32 +00:00
wattsun
2dd56676fb 8266018: Shenandoah: fix an incorrect assert
Reviewed-by: rkennke
2021-05-06 09:16:35 +00:00
Tobias Hartmann
22ca62c2cb 8266542: Remove broken -XX:-UseLoopSafepoints flag
Reviewed-by: tschatzl, kvn
2021-05-06 07:36:28 +00:00
miao zheng
7835cdbef4 8265915: adjust state_unloading_cycle compuation order in nmethod::is_unloading
Reviewed-by: thartmann
2021-05-06 07:10:21 +00:00
Sibabrata Sahoo
20ad428974 8180568: Refactor javax/crypto shell tests to plain java tests
Reviewed-by: wetmore
2021-05-06 05:50:22 +00:00
Phil Race
138d573c35 8262392: Update Mesa 3-D Headers to version 21.0.3
Reviewed-by: serb, jdv, kcr
2021-05-05 19:39:15 +00:00
Roman Kennke
9de62a454f 8266505: Cleanup LibraryCallKit::make_unsafe_address()
Reviewed-by: roland, kvn
2021-05-05 19:18:06 +00:00
Roman Kennke
1885c83aca 8266504: Remove leftovers from BarrierSetAssemblerC1
Reviewed-by: thartmann
2021-05-05 19:17:16 +00:00
Aleksey Shipilev
6018336fc5 8259316: [REDO] C1/C2 compiler support for blackholes
Reviewed-by: vlivanov, kvn, iignatyev
2021-05-05 14:27:21 +00:00
Hannes Wallnöfer
f07bb2f4b9 8250766: javadoc adds redundant spaces when @see program element is wrapped
Reviewed-by: prappo
2021-05-05 14:01:01 +00:00
Zhengyu Gu
61bb6eca3e 8266453: Shenandoah: Disable write protections before patching nmethod in nmethod_barrier on MacOSX/AArch64
Reviewed-by: rkennke
2021-05-05 13:00:17 +00:00
Coleen Phillimore
a05e8e2422 8266497: Remove unnecessary EMCP liveness indication
Reviewed-by: iklam, dholmes, sspitsyn
2021-05-05 12:59:39 +00:00
Coleen Phillimore
6ba911d64e 8266498: Make debug ps() call print_stack
Reviewed-by: stuefe, lfoltan
2021-05-05 12:44:26 +00:00
Andrew Haley
ef0f693065 8266499: Delete dead code in aarch64.ad
Reviewed-by: kvn
2021-05-05 12:17:01 +00:00
Zhengyu Gu
71d0858b32 8266522: Shenandoah: Shenandoah LRB calls wrong runtime barrier on aarch64
Reviewed-by: rkennke
2021-05-05 12:14:12 +00:00
Thomas Stuefe
0ac84d1813 8266506: [aix] Treat mapping attempt too close to BRK as a mapping error
Reviewed-by: mdoerr
2021-05-05 11:57:20 +00:00
Thomas Stuefe
02cdd6eb6d 8266419: [aix] in mmap mode, os::attempt_reserve_memory_at() fails to handle wrong mapping address
Reviewed-by: mdoerr
2021-05-05 11:54:57 +00:00
Thomas Stuefe
250b45a510 8266222: [aix] In mmap-mode, partial releases with os::release_memory may trash internal bookkeeping
Reviewed-by: mdoerr
2021-05-05 11:49:44 +00:00
Roman Kennke
65ce4d2056 8266491: Remove resolve and obj_equals leftovers from BarrierSetAssembler
Reviewed-by: tschatzl
2021-05-05 10:42:21 +00:00
Jan Lahoda
a8046c9157 8266436: Synthetic constructor trees have non-null return type
Reviewed-by: vromero
2021-05-05 10:31:11 +00:00
Athijegannathan Sundararajan
c9873c416d 8260621: (jrtfs) ThreadLocal memory leak in ImageBufferCache when using jrtfs
Reviewed-by: jlaskey, vtewari
2021-05-05 10:10:05 +00:00
Fairoz Matte
82768d9a31 8221503: vmTestbase/nsk/jdb/eval/eval001/eval001.java fails with: com.sun.jdi.InvalidTypeException: Can't assign double[][][] to double[][][]
Reviewed-by: cjplummer, sspitsyn
2021-05-05 07:11:14 +00:00
Prasanta Sadhukhan
b71f85ad9d 8264398: BevelBorderUIResource​(int, Color, Color) and BevelBoder(int, Color, Color) spec should clarify about usage of highlight and shadow color
Reviewed-by: serb
2021-05-05 06:19:54 +00:00
Yasumasa Suenaga
b1725550a2 8266171: -Warray-bounds happens in imageioJPEG.c
Reviewed-by: prr
2021-05-05 00:34:26 +00:00
Yasumasa Suenaga
8bcebe73d2 8265505: findsym does not work on remote debug server
Reviewed-by: cjplummer, kevinw
2021-05-05 00:26:12 +00:00
Yasumasa Suenaga
b88785d2c6 8266038: Move newAddress() to JVMDebugger
Reviewed-by: kevinw, amenkov
2021-05-05 00:22:00 +00:00
Alexander Matveev
2c53654bf1 8266179: [macos] jpackage should specify architecture for produced pkg files
Reviewed-by: herrick, kcr, asemenyuk
2021-05-04 23:35:24 +00:00
David Holmes
d2827994f8 8255566: Add size validation when parsing values from VersionProps
Reviewed-by: rehn, iklam
2021-05-04 22:24:41 +00:00
David Holmes
61365d5f58 8266465: Add wildcard to JTwork/JTreport exclude in jib-profiles.js
Reviewed-by: erikj
2021-05-04 22:07:24 +00:00
Jim Laskey
f00b70e2ca 8266527: RandomTestCoverage.java failing due to API removal
Reviewed-by: rriggs
2021-05-04 21:18:48 +00:00
Andy Herrick
c53dee7480 8266227: Fix help text for --mac-signing-keychain
Reviewed-by: almatvee, asemenyuk
2021-05-04 20:10:37 +00:00
Phil Race
80323b7f66 8261169: Upgrade HarfBuzz to the latest 2.8.0
Reviewed-by: serb
2021-05-04 18:23:09 +00:00
Phil Race
9c4efddb4a 8263124: Missed initialization of baselineY in sun.font.StrikeMetrics
Reviewed-by: azvegint, kizune, pbansal
2021-05-04 18:03:46 +00:00
Naoto Sato
4e96b31042 8265989: System property for the native character encoding name
Reviewed-by: iris, joehw, rriggs
2021-05-04 17:30:14 +00:00
Yumin Qi
8b37d48770 8255493: Support for pre-generated java.lang.invoke classes in CDS dynamic archive
Reviewed-by: iklam, ccheung
2021-05-04 17:18:43 +00:00
Jim Laskey
770dfc1ec4 8265279: Remove unused RandomGeneratorFactory.all(Class<T> category)
Reviewed-by: rriggs
2021-05-04 13:26:08 +00:00
Hui Shi
ee5bba0dc4 8265767: compiler/eliminateAutobox/TestIntBoxing.java crashes on arm32 after 8264649 in debug VMs
Reviewed-by: kvn, thartmann
2021-05-04 12:58:25 +00:00
Jim Laskey
05e601748a 8265137: java.util.Random suddenly has new public methods nowhere documented
Reviewed-by: uschindler, darcy, smarks
2021-05-04 11:53:07 +00:00
Wang Huang
aa90df6f51 8266187: Memory leak in appendBootClassPath()
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Sun Jianye <sunjianye@huawei.com>
Reviewed-by: kevinw, mli, alanb
2021-05-04 10:02:22 +00:00
Tobias Hartmann
b65190483c 8266438: Compile::remove_useless_nodes does not remove opaque nodes
Reviewed-by: vlivanov, chagedorn
2021-05-04 09:42:16 +00:00
Stefan Johansson
141cc2f2a3 8261527: Record page size used for underlying mapping in ReservedSpace
Reviewed-by: rkennke, iwalulya
2021-05-04 09:00:10 +00:00
Martin Doerr
8e071c4b52 8265784: [C2] Hoisting of DecodeN leaves MachTemp inputs behind
Reviewed-by: kvn, goetz
2021-05-04 07:56:42 +00:00
Stefan Karlsson
ce1bc9d8bc 8266432: ZGC: GC allocation stalls can trigger deadlocks
Reviewed-by: pliden, ayang
2021-05-04 07:27:59 +00:00
Tejpal Rebari
30ccd8081b 8264950: Set opaque for JTooltip in config file of NimbusLookAndFeel
Reviewed-by: serb, pbansal
2021-05-04 04:53:25 +00:00
Igor Ignatyev
cfdf4a7de7 8266449: cleanup jtreg tags in compiler/intrinsics/sha/cli tests
Reviewed-by: kvn
2021-05-04 04:47:18 +00:00
Mandy Chung
3544a9d0e4 8266391: Replace use of reflection in jdk.internal.platform.Metrics
Reviewed-by: redestad
2021-05-03 21:58:37 +00:00
Sergey Bylokhov
020236cb98 8264786: [macos] All Swing/AWT apps cause Allow Notifications prompt to appear when app is launched
Reviewed-by: azvegint, kizune
2021-05-03 20:53:35 +00:00
Philippe Marschall
45760d4baf 8266320: (bf) ReadOnlyBufferException in heap buffer put(String,int,int) should not be conditional
Reviewed-by: alanb, bpb
2021-05-03 17:28:46 +00:00
Marcus G K Williams
ff65920cd1 8265491: Math Signum optimization for x86
Reviewed-by: jiefu, jbhateja, neliasso
2021-05-03 16:28:14 +00:00
Yude Lin
55cc0af404 8266185: Shenandoah: Fix incorrect comment/assertion messages
Reviewed-by: shade
2021-05-03 15:23:49 +00:00
Evgeny Nikitin
880c138b58 8265349: vmTestbase/../stress/compiler/deoptimize/Test.java fails with OOME due to CodeCache exhaustion.
Reviewed-by: iignatyev
2021-05-03 14:32:18 +00:00
Yi Yang
001c5142a6 8265322: C2: Simplify control inputs for BarrierSetC2::obj_allocate
Reviewed-by: kvn, neliasso
2021-05-03 14:22:26 +00:00
Per Liden
194bceca3a 8265984: Concurrent GC: Some tests fail "assert(is_frame_safe(f)) failed: Frame must be safe"
Reviewed-by: eosterlund, stefank, zgu
2021-05-03 13:34:49 +00:00
Zhengyu Gu
1d9ea3ae0f 8266083: Shenandoah: Consolidate dedup/no dedup oop closures
Reviewed-by: rkennke
2021-05-03 12:35:26 +00:00
Albert Mingkun Yang
80941f475f 8234446: Post-CMS workgroup hierarchy cleanup
Reviewed-by: tschatzl, rkennke
2021-05-03 11:45:06 +00:00
Albert Mingkun Yang
ac760c7f9f 8266295: Remove unused _concurrent_iteration_safe_limit
Reviewed-by: tschatzl, sjohanss
2021-05-03 10:06:57 +00:00
Vladimir Ivanov
b42d4969b1 8266388: C2: Improve constant ShiftCntV on x86
Reviewed-by: kvn
2021-05-03 09:46:49 +00:00
Claes Redestad
05cfac9f5b 8266412: Remove redundant TemplateInterpreter entries
Reviewed-by: jiefu, dholmes
2021-05-03 09:22:58 +00:00
Per Liden
c5dc657f0b 8266056: runtime/stringtable/StringTableCleaningTest.java failed with "RuntimeException: Missing Callback in [10, 11]"
Reviewed-by: coleenp, dholmes
2021-05-03 07:28:19 +00:00
Ajit Ghaisas
8fa50ebdf2 8263363: Minor cleanup of Lanai code - unused code removal and comments correction
Reviewed-by: serb
2021-05-03 04:37:24 +00:00
Jie Fu
7e30130e35 8266401: mark hotspot compiler/intrinsics/sha/cli tests which ignore VM flags
Reviewed-by: iignatyev, kvn
2021-05-02 23:13:22 +00:00
Sergey Bylokhov
dedddd5ab2 8266248: Compilation failure in PLATFORM_API_MacOSX_MidiUtils.c with Xcode 12.5
Reviewed-by: prr, azvegint
2021-05-02 05:29:12 +00:00
Andy Herrick
5c083e8560 8266129: tools/jpackage/windows/WinInstallerIconTest.java hangs with fastdebug
Reviewed-by: asemenyuk, almatvee
2021-05-01 12:03:12 +00:00
Tagir F. Valeev
3e667cc405 8265356: need code example for getting canonical constructor of a Record
Reviewed-by: smarks
2021-05-01 07:30:55 +00:00
Vladimir Ivanov
f86b70c391 8266328: C2: Remove InlineWarmCalls
Reviewed-by: kvn, iveresov
2021-04-30 22:17:04 +00:00
Rahul Raghavan
928d63242e 8252237: C2: Call to compute_separating_interferences has wrong argument order
Reviewed-by: kvn, thartmann
2021-04-30 20:15:48 +00:00
Daniel D. Daugherty
50fa1623ad 8266389: ProblemList java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java on generic-all
Reviewed-by: mikael, prr
2021-04-30 19:55:19 +00:00
Ian Graves
dd05158b24 8266155: Convert java.base to use Stream.toList()
Reviewed-by: bpb, naoto, iris, chegar
2021-04-30 19:52:26 +00:00
Ian Graves
c36c63a008 8260560: convert jdeps and jdeprscan tools to use Stream.toList()
Reviewed-by: alanb, mchung, iris
2021-04-30 19:51:36 +00:00
Mikael Vidstedt
096e9e5d13 8266318: Switch to macos prefix for macOS bundles
Reviewed-by: prr, erikj, iris
2021-04-30 19:05:39 +00:00
Daniel Fuchs
0544a732a4 8255227: java/net/httpclient/FlowAdapterPublisherTest.java intermittently failing with TestServer: start exception: java.io.IOException: Invalid preface
Reviewed-by: chegar
2021-04-30 17:21:55 +00:00
Weijun Wang
48bb996ac9 8266220: keytool still prompt for store password on a password-less pkcs12 file if -storetype pkcs12 is specified
Reviewed-by: coffeys, hchao
2021-04-30 14:04:13 +00:00
Alexey Ushakov
87de5b750d 8266040: Lanai: Incorrect calculations of clipping boundaries
Reviewed-by: jdv
2021-04-30 13:53:58 +00:00
Aleksei Voitylov
eb8db12ce6 8263396: Atomic::CmpxchgByteUsingInt::set_byte_in_int needs an explicit cast
Reviewed-by: dholmes
2021-04-30 12:34:19 +00:00
Hannes Wallnöfer
07ecd421d1 8258602: JavaDoc field summary does not indicate final modifier
Reviewed-by: jjg
2021-04-30 09:48:09 +00:00
Sean Coffey
276a1bf767 8236671: NullPointerException in JKS keystore
Reviewed-by: hchao, xuelei
2021-04-30 09:32:40 +00:00
Alexander Scherbatiy
e9370a13b6 8265761: Font with missed font family name is not properly printed on Windows
Reviewed-by: serb, prr
2021-04-30 08:46:58 +00:00
Rahul Raghavan
3554dc299d 8264395: WB_EnqueueInitializerForCompilation fails with "method holder must be initialized" when called for uninitialized class
Reviewed-by: chagedorn, thartmann
2021-04-30 08:23:57 +00:00
Hannes Wallnöfer
4d77171540 8249903: jdk/javadoc/doclet/testSerializedForm/TestSerializedForm.java needs to be updated after 8146022 got closed
Reviewed-by: jjg
2021-04-30 07:47:39 +00:00
Jie Fu
51b218842f 8266267: Remove unnecessary jumps in Intel Math Library StubRoutines
Reviewed-by: thartmann, neliasso, kvn
2021-04-30 02:30:44 +00:00
Ioi Lam
2c381e0f8d 8262376: ReplaceCriticalClassesForSubgraphs.java fails if --with-build-jdk is used
Reviewed-by: dholmes, minqi, ccheung
2021-04-29 23:22:49 +00:00
Jie Fu
5ecef01c4a 8266217: ZGC: Improve the -Xlog:gc+init output for NUMA
Reviewed-by: stefank, tschatzl, pliden
2021-04-29 23:06:35 +00:00
Valerie Peng
5d8c1cc8a0 8255410: Add ChaCha20 and Poly1305 support to SunPKCS11 provider
Reviewed-by: jnimeh
2021-04-29 21:02:41 +00:00
Phil Race
46b4a145a6 8266315: Problem list failing test java/awt/font/TextLayout/LigatureCaretTest.java
Reviewed-by: dcubed
2021-04-29 19:13:22 +00:00
Patricio Chilano Mateo
42af7da94d 8265933: Move Java monitor related fields from class Thread to JavaThread
Reviewed-by: rehn, dcubed, coleenp, dholmes
2021-04-29 18:13:27 +00:00
Yumin Qi
1afbab6394 8263998: Remove mentions of mc region in comments
Reviewed-by: ccheung
2021-04-29 17:30:50 +00:00
Daniel D. Daugherty
51b2fb5c84 8266299: ProblemList runtime/stringtable/StringTableCleaningTest.java on linux-aarch64 with ZGC
Reviewed-by: bpb
2021-04-29 17:24:05 +00:00
Jamsheed Mohammed C M
49d04586ed 8266288: assert root method not found in witnessed_reabstraction_in_supers is too strong
Reviewed-by: vlivanov, thartmann
2021-04-29 16:16:42 +00:00
Daniel Fuchs
01415f33e3 8266250: WebSocketTest and WebSocketProxyTest call assertEquals(List<byte[]>, List<byte[]>)
Reviewed-by: prappo
2021-04-29 16:15:06 +00:00
Brian Burkhalter
5f15666092 8266078: Reader.read(CharBuffer) advances Reader position for read-only Charbuffers
Reviewed-by: rriggs, alanb, chegar
2021-04-29 15:54:11 +00:00
Brian Burkhalter
2a03739530 8266014: Regression brought by optimization done with JDK-4926314
Reviewed-by: alanb, naoto
2021-04-29 15:35:14 +00:00
Brian Burkhalter
6bb71d9e25 8264762: ByteBuffer.byteOrder(BIG_ENDIAN).asXBuffer.put(Xarray) and ByteBuffer.byteOrder(nativeOrder()).asXBuffer.put(Xarray) are slow
Reviewed-by: alanb, psandoz, chegar
2021-04-29 15:34:04 +00:00
Jan Lahoda
f0f6b0d919 8266027: The diamond finder does not find diamond candidates in field initializers
Reviewed-by: jfranck, vromero
2021-04-29 14:55:28 +00:00
Jan Lahoda
8072ea5628 8238173: jshell - switch statement with a single default not return cause syntax error
Reviewed-by: vromero
2021-04-29 14:54:39 +00:00
Thomas Schatzl
c76ce28754 8265842: G1: Introduce API to run multiple separate tasks in a single gangtask
Reviewed-by: lkorinth, ayang, sjohanss, iwalulya
2021-04-29 14:44:14 +00:00
Naoto Sato
294347b59b 8265918: java/io/Console/CharsetTest.java failed with "expect: spawn id exp6 not open"
Reviewed-by: alanb, iris
2021-04-29 13:01:30 +00:00
Andrew Leonard
84b52db931 8265666: Enable AIX build platform to make external debug symbols
Reviewed-by: erikj, mdoerr
2021-04-29 12:35:56 +00:00
Prasanta Sadhukhan
dd8286e2f3 8198616: java/awt/Focus/6378278/InputVerifierTest.java fails on mac
Reviewed-by: jdv
2021-04-29 10:54:27 +00:00
Prasanta Sadhukhan
5574922ff6 8266284: ProblemList java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java
Reviewed-by: jdv
2021-04-29 10:37:31 +00:00
Jan Lahoda
df7f0b4671 8198317: Enhance JavacTool.getTask for flexibility
Co-authored-by: Guoxiong Li <lgxbslgx@gmail.com>
Reviewed-by: jfranck
2021-04-29 09:38:24 +00:00
Julia Boes
115a413ee4 8265123: Add static factory methods to com.sun.net.httpserver.Filter
Co-authored-by: Michael McMahon <michaelm@openjdk.org>
Reviewed-by: chegar, michaelm, dfuchs
2021-04-29 09:07:46 +00:00
Yasumasa Suenaga
39abac98f9 8266176: -Wmaybe-uninitialized happens in libArrayIndexOutOfBoundsExceptionTest.c
Reviewed-by: dholmes
2021-04-29 07:59:35 +00:00
Alexey Ushakov
155da257fd 8265005: Introduce the new client property for mac: apple.awt.windowTitleVisible
Reviewed-by: serb
2021-04-29 07:31:10 +00:00
Jie Fu
91226fa122 8265940: Enable C2's optimization for Math.pow(x, 0.5) on all platforms
Reviewed-by: neliasso, kvn
2021-04-29 07:01:15 +00:00
Igor Ignatyev
56cde70da2 8266265: mark hotspot compiler/vectorization tests which ignore VM flags
Reviewed-by: kvn
2021-04-29 04:53:07 +00:00
Yasumasa Suenaga
49372149e5 8266174: -Wmisleading-indentation happens in libmlib_image sources
Reviewed-by: azvegint
2021-04-29 04:21:57 +00:00
Igor Ignatyev
b305eff7d3 8266238: mark hotspot compiler/inlining tests which ignore VM flags
Reviewed-by: kvn
2021-04-29 03:52:24 +00:00
Igor Ignatyev
df3b2d0495 8266264: mark hotspot compiler/eliminateAutobox tests which ignore VM flags
Reviewed-by: kvn
2021-04-29 03:51:40 +00:00
Igor Ignatyev
6b263e6832 8266256: compiler.vectorization.TestBufferVectorization does testing twice
Reviewed-by: kvn
2021-04-29 03:50:44 +00:00
Igor Ignatyev
69155f43c1 8266231: mark hotspot compiler/c1 tests which ignore VM flags
Reviewed-by: kvn
2021-04-29 03:35:29 +00:00
Prasanta Sadhukhan
0e225ef9da 8197821: Test java/awt/font/TextLayout/LigatureCaretTest.java fails on Windows
8197796: Test java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java  fails on Windows

Reviewed-by: azvegint, serb
2021-04-29 03:02:22 +00:00
Yasumasa Suenaga
a1c942c02b 8266170: -Wnonnull happens in classLoaderData.inline.hpp
Reviewed-by: dholmes, coleenp
2021-04-29 01:05:05 +00:00
Yasumasa Suenaga
4a9f2319c9 8266173: -Wmaybe-uninitialized happens in jni_util.c
Reviewed-by: dholmes
2021-04-29 01:04:20 +00:00
Igor Ignatyev
9605aeddee 8266251: compiler.inlining.InlineAccessors shouldn't do testing in driver VM
Reviewed-by: kvn, epavlova
2021-04-29 00:12:56 +00:00
Igor Ignatyev
03d4149d0c 8266255: compiler/eliminateAutobox/TestEliminateBoxInDebugInfo.java uses wrong package name
Reviewed-by: kvn
2021-04-29 00:12:08 +00:00
Jie Fu
794cefe8f9 8241354: ZGC still crashes in containers with NUMA due to get_mempolicy is disabled by default
Co-authored-by: Per Liden <pliden@openjdk.org>
Reviewed-by: pliden
2021-04-28 22:37:29 +00:00
David Holmes
23180f848f 8266017: Refactor the *klass::array_klass_impl code to separate the non-exception-throwing API
Reviewed-by: coleenp, iklam
2021-04-28 20:52:50 +00:00
Igor Ignatyev
f75dd80254 8266230: mark hotspot compiler/c2 tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 20:47:57 +00:00
Claes Redestad
9df6cc7cc2 8264678: Incomplete comment in build.tools.generatecharacter.GenerateCharacter
Reviewed-by: erikj, naoto, iris
2021-04-28 19:51:01 +00:00
Igor Ignatyev
73cfc26dc2 8266232: compiler.c1.TestRangeCheckEliminated should be run in driver mode
Reviewed-by: kvn
2021-04-28 19:50:22 +00:00
Phil Race
3e1b90a2ef 8266157: Problem list several awt jtreg tests that fail on macOS 11
Reviewed-by: dcubed, pbansal
2021-04-28 19:03:33 +00:00
Igor Ignatyev
3f9879f1cd 8266190: mark hotspot compiler/codecache tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 18:47:19 +00:00
Calvin Cheung
d12e01a5cd 8264472: Add a test group for running CDS tests with -XX:+VerifySharedSpaces
Reviewed-by: iklam, mseledtsov
2021-04-28 18:20:51 +00:00
Mandy Chung
b3b2bb2875 8265773: incorrect jdeps message "jdk8internals" to describe a removed JDK internal API
Reviewed-by: alanb
2021-04-28 17:34:43 +00:00
Sean Mullan
278057756a 8196415: Disable SHA-1 Signed JARs
Reviewed-by: coffeys
2021-04-28 17:13:21 +00:00
Aleksey Shipilev
21f65f8e79 8266206: Build failure after JDK-8264752 with older GCCs
Reviewed-by: mgronlun
2021-04-28 16:41:51 +00:00
Igor Ignatyev
c71c26859f 8266165: TestNoWarningLoopStripMiningIterSet is runnable only on VM w/ G1, Shenandoah, Z and Epsilon
Reviewed-by: roland
2021-04-28 16:30:27 +00:00
Igor Ignatyev
8954befd77 8266188: mark hotspot compiler/cpuflags tests which ignore VM flags
Reviewed-by: chagedorn, thartmann
2021-04-28 15:46:16 +00:00
Igor Ignatyev
19d3c451b8 8266184: a few compiler/debug tests don't check exit code
Reviewed-by: thartmann
2021-04-28 15:45:23 +00:00
Fernando Guallini
7e3bc4cb44 8228442: DHKeyExchange/LegacyDHEKeyExchange.java failed due to "SSLException: An established connection was aborted by the software in your host machine"
Reviewed-by: xuelei
2021-04-28 15:40:53 +00:00
Harold Seigel
f40bf1d240 8266087: Move 'buffer' declaration in get_user_name_slow() inside of linux specific code
Reviewed-by: zgu, dcubed
2021-04-28 14:50:12 +00:00
Fernando Guallini
ec383abc1d 8183374: Refactor java/lang/Runtime shell tests to java
Reviewed-by: coffeys
2021-04-28 14:00:23 +00:00
Sibabrata Sahoo
343a4a76f2 8185127: Add tests to cover hashCode() method for java supported crypto key types
Reviewed-by: valeriep
2021-04-28 09:48:16 +00:00
Kevin Walls
e325a750ac 8264593: debug.cpp utilities should be available in product builds.
Reviewed-by: sspitsyn, coleenp, vlivanov
2021-04-28 08:53:48 +00:00
Roberto Castañeda Lozano
e879f8c6c8 8265587: IGV: track nodes across matching
Preserve the IGV node identifier of Ideal nodes in their corresponding machine
nodes after matching, to allow IGV users to track nodes across this phase.

Reviewed-by: thartmann, vlivanov
2021-04-28 08:45:15 +00:00
Xin Liu
164454feeb 8265867: thread.hpp defines some enums but no reference
Reviewed-by: dholmes, stuefe, iklam, coleenp
2021-04-28 06:55:07 +00:00
Jie Fu
75a2354dc2 8266028: C2 computes -0.0 for Math.pow(-0.0, 0.5)
Reviewed-by: aph, neliasso, kvn
2021-04-28 06:16:47 +00:00
Prasanta Sadhukhan
ca37be1ead 8197800: Test java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java fails on Windows
Reviewed-by: aivanov, serb
2021-04-28 05:57:39 +00:00
Prasanta Sadhukhan
cf92693957 8198619: java/awt/Focus/FocusTraversalPolicy/ButtonGroupLayoutTraversal/ButtonGroupLayoutTraversalTest.java fails on mac
Reviewed-by: aivanov, serb
2021-04-28 05:52:22 +00:00
Per Liden
2201e11cbf 8266055: ZGC: ZHeap::print_extended_on() doesn't disable deferred delete
Reviewed-by: eosterlund, ayang
2021-04-28 05:50:25 +00:00
Prasanta Sadhukhan
ce48f04085 8198617: java/awt/Focus/6382144/EndlessLoopTest.java fails on mac
Reviewed-by: jdv, serb
2021-04-28 05:48:50 +00:00
Pankaj Bansal
0438cea65b 8136517: [macosx]Test java/awt/Focus/8073453/AWTFocusTransitionTest.java fails on MacOSX
Reviewed-by: serb
2021-04-28 04:48:07 +00:00
Igor Ignatyev
6b5e5d7a2c 8266181: compiler/eliminateAutobox/TestEliminateBoxInDebugInfo should be in driver mode
Reviewed-by: kvn
2021-04-28 04:01:42 +00:00
Igor Ignatyev
81b1502701 8266161: mark hotspot compiler/rtm tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 03:43:41 +00:00
Igor Ignatyev
4a8324d48b 8266180: compiler/vectorapi/TestVectorErgonomics should be run in driver mode
Reviewed-by: jiefu, kvn, epavlova
2021-04-28 03:43:08 +00:00
Igor Ignatyev
0601aba545 8266175: mark hotspot compiler/jsr292 tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 03:42:07 +00:00
Igor Ignatyev
69ad8ac537 8266169: mark hotspot compiler/jvmci tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 03:41:27 +00:00
Igor Ignatyev
1a2a570c8d 8266166: mark hotspot compiler/linkage tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 03:40:47 +00:00
Igor Ignatyev
5ee58b0496 8266164: mark hotspot compiler/loopstripmining tests which ignore VM flags
Reviewed-by: kvn
2021-04-28 03:39:47 +00:00
Xue-Lei Andrew Fan
1a37bce5af 8263779: SSLEngine reports NEED_WRAP continuously without producing any further output
Reviewed-by: wetmore
2021-04-28 03:21:47 +00:00
Jie Fu
889d246681 8265917: Different values computed by C2 and interpreter/C1 for Math.pow(x, 2.0) on x86_32
Reviewed-by: kvn, thartmann
2021-04-28 03:10:28 +00:00
Erik Gahlin
e144104bb3 8262908: JFR: Allow JFR to stream events from a known repository path
Reviewed-by: mgronlun
2021-04-28 02:02:53 +00:00
Igor Ignatyev
30b1354085 8266153: mark hotspot compiler/onSpinWait tests which ignore VM flags
Reviewed-by: kvn
2021-04-27 23:58:15 +00:00
Igor Ignatyev
eeddb30344 8266150: mark hotspot compiler/arguments tests which ignore VM flags
Reviewed-by: kvn
2021-04-27 23:54:45 +00:00
Igor Ignatyev
feb18d292f 8266149: mark hotspot compiler/startup tests which ignore VM flags
Reviewed-by: kvn
2021-04-27 23:54:09 +00:00
Igor Ignatyev
eb72950cfd 8266154: mark hotspot compiler/oracle tests which ignore VM flags
Reviewed-by: kvn
2021-04-27 23:51:39 +00:00
Igor Ignatyev
7f4a9f68bf 8266088: compiler/arguments/TestPrintOptoAssemblyLineNumbers test should user driver mode
Reviewed-by: kvn
2021-04-27 20:58:48 +00:00
Vladimir Ivanov
f560b89233 8264873: Dependencies: Split ClassHierarchyWalker
Reviewed-by: kvn, thartmann
2021-04-27 20:03:13 +00:00
Paul Sandoz
0a88f0a182 8255915: jdk/incubator/vector/AddTest.java timed out
Reviewed-by: vlivanov
2021-04-27 18:58:37 +00:00
Tobias Hartmann
ab2aec2afb 8265938: C2's conditional move optimization does not handle top Phi
Reviewed-by: chagedorn, kvn, iignatyev
2021-04-27 17:10:53 +00:00
Patricio Chilano Mateo
5634f206e5 8265932: Move safepoint related fields from class Thread to JavaThread
Reviewed-by: coleenp, dholmes
2021-04-27 16:53:25 +00:00
Aleksey Shipilev
b67b2b1645 8265690: Use the latest Ubuntu base image version in Docker testing
Reviewed-by: sgehwolf, iignatyev, mseledtsov
2021-04-27 16:36:15 +00:00
Vladimir Ivanov
b2628d15b5 8263972: C2: LoadVector/StoreVector type mismatch in MemNode::can_see_stored_value()
Reviewed-by: kvn, thartmann
2021-04-27 16:34:28 +00:00
Hui Shi
377b346189 8264752: SIGFPE crash with option FlightRecorderOptions:threadbuffersize=30M
Reviewed-by: mgronlun
2021-04-27 15:44:41 +00:00
Harold Seigel
dc323a9334 8263421: Module image file is opened twice during VM startup
Reviewed-by: iklam, dholmes
2021-04-27 13:31:55 +00:00
Yi Yang
fbfd4ea3ce 8265914: Duplicated NotANode and not_a_node
Reviewed-by: thartmann
2021-04-27 13:00:08 +00:00
Pankaj Bansal
9481fad42f 8163367: Test javax/swing/JComboBox/8033069/bug8033069NoScrollBar.java javax/swing/JComboBox/8033069/bug8033069ScrollBar.java fails intermittently
Reviewed-by: aivanov
2021-04-27 12:59:22 +00:00
Zhengyu Gu
9adbf1566a 8265995: Shenandoah: Move ShenandoahInitMarkRootsClosure close to its use
Reviewed-by: shade
2021-04-27 12:40:31 +00:00
Harold Seigel
879a77f173 8265757: stack-use-after-scope in perfMemory_posix.cpp get_user_name_slow()
Reviewed-by: lfoltan, dcubed
2021-04-27 12:07:40 +00:00
Coleen Phillimore
e4be9680cb 8265980: Fix systemDictionary and loaderConstraints printing
Reviewed-by: iklam
2021-04-27 12:04:12 +00:00
Aleksei Voitylov
f6e26f6f33 8265756: AArch64: initialize memory allocated for locals according to Windows AArch64 stack page growth requirement in template interpreter
Reviewed-by: adinn, aph
2021-04-27 11:17:28 +00:00
Jan Lahoda
0a4c33826d 8263432: javac may report an invalid package/class clash on case insensitive filesystems
Reviewed-by: vromero
2021-04-27 08:55:59 +00:00
Tobias Hartmann
82b371956a 8265967: Unused NullCheckNode forward declaration in node.hpp
Reviewed-by: kvn
2021-04-27 07:52:13 +00:00
Albert Mingkun Yang
468c847cc8 8234020: Remove FullGCCount_lock
Reviewed-by: kbarrett
2021-04-27 07:21:15 +00:00
Vladimir Kozlov
4785e112ae 8264806: Remove the experimental JIT compiler
Reviewed-by: iignatyev, erikj
2021-04-27 06:23:21 +00:00
Prasanta Sadhukhan
7db9330c58 8196300: java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java times out
Reviewed-by: jdv
2021-04-27 05:36:49 +00:00
Vladimir Kozlov
694acedf18 8264805: Remove the experimental Ahead-of-Time Compiler
Reviewed-by: coleenp, erikj, stefank, iignatyev, dholmes, aph, shade, iklam, mchung, iveresov
2021-04-27 01:12:18 +00:00
Hamlin Li
15d4787724 8265496: improve null check in DeflaterOutputStream/InflaterInputStream
Reviewed-by: lancea, naoto
2021-04-27 01:06:56 +00:00
Albert Mingkun Yang
1d37b9840a 8265972: Remove declarations with no implementations in javaClasses.hpp
Reviewed-by: coleenp
2021-04-26 22:16:12 +00:00
Albert Mingkun Yang
cb29b19fec 8184134: HeapRegion::LogOfHRGrainWords is unused
Reviewed-by: kbarrett, sjohanss
2021-04-26 21:20:15 +00:00
Guoxiong Li
41daa88dcc 8265899: Use pattern matching for instanceof at module jdk.compiler(part 1)
Reviewed-by: mcimadamore
2021-04-26 20:15:55 +00:00
Phil Race
a6f2863e64 8266003: ProblemList sanity/client/SwingSet/src/ButtonDemoScreenshotTest.java on macosx-all
Reviewed-by: dcubed, mikael
2021-04-26 20:14:55 +00:00
Tom Rodriguez
852a41d718 8258625: [JVMCI] refactor and unify JVMCI readFieldValue path
Reviewed-by: kvn
2021-04-26 20:00:23 +00:00
Leonid Mesnik
b5c6351315 8264663: Update test SuspendWithCurrentThread.java to verify that suspend doesn't exit until resumed
Reviewed-by: dcubed, sspitsyn
2021-04-26 19:48:57 +00:00
Magnus Ihse Bursie
b524a81ad2 8265982: JDK-8264188 breaks build on macOS-aarch64
Reviewed-by: erikj, shade
2021-04-26 17:59:14 +00:00
Pavel Rappo
efe6b93325 8265961: Fix comments in logging.properties
Reviewed-by: dfuchs, mr, iris, jjg
2021-04-26 17:35:31 +00:00
Philippe Marschall
65c19c4094 4926314: Optimize Reader.read(CharBuffer)
Reviewed-by: alanb, bpb
2021-04-26 17:33:35 +00:00
Guoxiong Li
082abbdaf7 8265900: Use pattern matching for instanceof at module jdk.compiler(part 2)
Reviewed-by: mcimadamore
2021-04-26 17:31:45 +00:00
Guoxiong Li
851b219d74 8265901: Use pattern matching for instanceof at module jdk.compiler(part 3)
Reviewed-by: mcimadamore, jfranck
2021-04-26 15:23:56 +00:00
Ian Graves
fb8f0c5dd8 8261168: Convert javadoc tool to use Stream.toList()
Reviewed-by: prappo
2021-04-26 15:20:30 +00:00
Hamlin Li
8559a53056 8265394: G1: Improve assert in HeapRegion::reset_not_compacted_after_full_gc
Reviewed-by: tschatzl
2021-04-26 14:43:30 +00:00
Hamlin Li
68011c64fa 8265928: G1: Update copyright in several files
Reviewed-by: tschatzl
2021-04-26 14:26:53 +00:00
Coleen Phillimore
222f9f07d1 8265682: G1: Mutex::_name dangling in HeapRegionRemSet references after JDK-8264146
Reviewed-by: dholmes, sjohanss
2021-04-26 14:23:08 +00:00
Guoxiong Li
2b09ff219e 8232765: NullPointerException at Types.eraseNotNeeded() when compiling a class
Reviewed-by: mcimadamore
2021-04-26 14:13:13 +00:00
Magnus Ihse Bursie
b9f66d93eb 8264188: Improve handling of assembly files in the JDK
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Reviewed-by: erikj, vlivanov
2021-04-26 12:57:21 +00:00
Per Liden
c3ac6900e7 8261759: ZGC: ZWorker Threads Continue Marking After System.exit() called
Reviewed-by: sjohanss, ayang
2021-04-26 12:15:03 +00:00
Per Liden
31abe68fa4 8265116: ZGC: Steal local stacks instead of flushing them
Co-authored-by: Wang Chao <wchao@openjdk.org>
Reviewed-by: ayang, sjohanss
2021-04-26 11:57:11 +00:00
Jesper Steen Møller
83364a4b4a 8264258: Unknown lookups in the java package give misleading compilation errors
Reviewed-by: sadayapalam
2021-04-26 11:53:27 +00:00
Per Liden
a9367dbd84 8265127: ZGC: Fix incorrect reporting of reclaimed memory
Reviewed-by: ayang, sjohanss
2021-04-26 11:52:37 +00:00
Junji Wang
1580a473d0 8265911: assert(comp != __null) failed: Compiler instance missing
Reviewed-by: kvn, thartmann
2021-04-26 11:07:08 +00:00
Vladimir Ivanov
9647fb0dba 8265689: JVMCI: InternalError: Class java.lang.Object does not implement interface jdk.vm.ci.meta.JavaType
Co-authored-by: Doug Simon <dnsimon@openjdk.org>
Reviewed-by: kvn, thartmann
2021-04-26 10:54:01 +00:00
Per Liden
0d08d73537 8265702: ZGC on macOS/aarch64
Reviewed-by: erikj, dholmes, stefank, gziemski
2021-04-26 08:45:42 +00:00
Patrick Concannon
45c5da0fd3 8265746: Update java.time to use instanceof pattern variable (part II)
Reviewed-by: dfuchs, lancea, rriggs, chegar, naoto
2021-04-26 08:32:20 +00:00
Hannes Wallnöfer
a85f6cbbaa 8265613: False positives for "Related Packages"
Reviewed-by: jjg
2021-04-26 07:53:35 +00:00
Prasanta Sadhukhan
6e5026a8df 8198621: java/awt/Focus/KeyEventForBadFocusOwnerTest/KeyEventForBadFocusOwnerTest.java fails on mac
Reviewed-by: serb
2021-04-26 07:28:46 +00:00
Simon Legner
7b609a2016 8264031: (zipfs) Typo in ZipFileSystem.deleteFile ZipException
Reviewed-by: shade, lancea
2021-04-26 07:24:06 +00:00
Albert Mingkun Yang
56fbef0fc0 8265681: G1: general cleanup for G1FullGCHeapRegionAttr
Reviewed-by: tschatzl, sjohanss
2021-04-26 06:32:34 +00:00
Thomas Stuefe
578a0b3c3d 8261238: NMT should not limit baselining by size threshold
Reviewed-by: zgu, mdoerr
2021-04-26 04:56:31 +00:00
Alexey Ushakov
3bf4c904fb 8264317: Lanai: IncorrectUnmanagedImageRotatedClip.java fails on apple M1
Reviewed-by: serb
2021-04-25 20:52:08 +00:00
horizonzy
f1f2afda5a 8264028: Typo in javax.management.relation.RelationService::purgeRelations
Reviewed-by: sspitsyn, shade
2021-04-25 08:14:05 +00:00
Daniel D. Daugherty
f6e22d14e3 8265890: ProblemList sun/security/ssl/SSLSocketImpl/SSLSocketImplThrowsWrongExceptions.java on macOS-X64 and Linux-aarch64
Reviewed-by: rriggs, xuelei
2021-04-25 02:53:48 +00:00
Albert Mingkun Yang
0257ac1447 8252089: Remove psParallelCompact internal debug counters
Reviewed-by: sjohanss, tschatzl
2021-04-24 16:35:55 +00:00
Guoxiong Li
4b7f027407 8231179: Investigate why tools/javac/options/BCPOrSystemNotSpecified.java fails on Window
Reviewed-by: vromero
2021-04-24 02:18:31 +00:00
Guoxiong Li
d87a4c3b56 8239596: PARAMETER annotation on receiver type does not cause error
Reviewed-by: vromero
2021-04-24 02:17:39 +00:00
Daniel D. Daugherty
52f9d22977 8265884: ProblemList compiler/codecache/jmx/PoolsIndependenceTest.java on macOS-X64
Reviewed-by: mikael
2021-04-24 00:56:10 +00:00
Doug Simon
5aed446e20 8265403: consolidate definition of CPU features
Reviewed-by: kvn, iklam
2021-04-23 23:32:41 +00:00
Yumin Qi
20a373a0d0 8265393: VM crashes if both -XX:+RecordDynamicDumpInfo and -XX:SharedArchiveFile options are specified
Reviewed-by: iklam, ccheung
2021-04-23 21:51:11 +00:00
Daniel D. Daugherty
6803ab2b71 8265880: ProblemList serviceability/dcmd/gc/RunFinalizationTest.java on Linux-X64
Reviewed-by: rriggs
2021-04-23 21:39:47 +00:00
Sandhya Viswanathan
e08f506fa7 8265816: Handle new VectorMaskCast node for x86
Reviewed-by: vlivanov, neliasso
2021-04-23 20:49:13 +00:00
Naoto Sato
bebfae48e3 8264208: Console charset API
Reviewed-by: joehw, rriggs, alanb
2021-04-23 18:57:03 +00:00
George Adams
5aab1609b9 8265531: doc/building.md should mention homebrew install freetype
Reviewed-by: erikj
2021-04-23 17:52:26 +00:00
Mikhailo Seledtsov
d8e638f11c 8265794: Remove ProblemList-non-cds-mode
Reviewed-by: ccheung, iklam, iignatyev
2021-04-23 17:42:45 +00:00
Thomas Stuefe
ac23870186 8265831: 8257831 broke Windows x86 build
Reviewed-by: shade
2021-04-23 16:37:07 +00:00
Patricio Chilano Mateo
8e312297d8 8265327: Remove check_safepoint_and_suspend_for_native_trans()
Reviewed-by: dcubed, dholmes, rrich
2021-04-23 14:23:43 +00:00
Daniel D. Daugherty
c9b70c8042 8265240: runtime/Thread/SuspendAtExit.java needs updating
Reviewed-by: rehn, dholmes
2021-04-23 14:20:34 +00:00
Claes Redestad
891f72fe6e 8265606: Reduce allocations in AdapterHandlerLibrary::get_adapter
Reviewed-by: iklam
2021-04-23 13:04:48 +00:00
Vladimir Ivanov
bfc1cd8eaf 8264320: ShouldNotReachHere in Compile::print_inlining_move_to()
Reviewed-by: kvn, thartmann
2021-04-23 12:53:54 +00:00
Stefan Johansson
5db64c3353 8265268: Unify ReservedSpace reservation code in initialize and try_reserve_heap
Reviewed-by: tschatzl, iwalulya
2021-04-23 12:06:05 +00:00
Roman Kennke
191f1fc46c 8265759: Shenandoah: Avoid race for referent in assert
Reviewed-by: shade, zgu
2021-04-23 08:01:36 +00:00
Roberto Castañeda Lozano
b3a319c834 8264842: IGV: different nodes sharing idx are treated as equal
Introduce IGV-specific node identifier and encapsulate it in IGV by showing a
configurable 'short node text' string instead.

Reviewed-by: iveresov, kvn
2021-04-23 07:29:54 +00:00
Ioi Lam
95f0fd6c4d 8265696: Move CDS sources to src/hotspot/shared/cds
Reviewed-by: erikj, dholmes, stuefe
2021-04-23 04:13:02 +00:00
Calvin Cheung
a715b09f52 8265798: Minimal build broken by JDK-8261090
Reviewed-by: iklam
2021-04-23 02:57:42 +00:00
David Holmes
13d3263380 8265484: Fix up TRAPS usage in GenerateOopMap::compute_map and callers
Reviewed-by: iklam, dlong, coleenp
2021-04-23 01:12:14 +00:00
Chris Plummer
a8ddbd155b 8265683: vmTestbase/nsk/jdb tests failed with "JDWP exit error AGENT_ERROR_INTERNAL(181)"
Reviewed-by: amenkov, dcubed
2021-04-22 23:27:33 +00:00
Calvin Cheung
7a5591402c 8264196: Change link_and_cleanup_shared_classes(CATCH) to CHECK
Reviewed-by: minqi, iklam
2021-04-22 22:57:19 +00:00
Phil Race
b84f690127 8265793: Remove duplicate jtreg TEST.groups references for some client tests
Reviewed-by: erikj
2021-04-22 21:23:59 +00:00
Mikael Vidstedt
0e0059895b 8265782: Bump bootjdk to jdk-17+19 on macosx-aarch64 at Oracle
Reviewed-by: iignatyev, tbell, iris, erikj
2021-04-22 20:55:56 +00:00
Daniel D. Daugherty
e81baead01 8265786: ProblemList serviceability/sa/sadebugd/DisableRegistryTest.java on ZGC
Reviewed-by: darcy
2021-04-22 20:45:25 +00:00
Brian Burkhalter
ca0de266b4 8265699: (bf) Scopes passed to ScopedMemoryAccess.copy[Swap]Memory in incorrect order
Reviewed-by: mcimadamore
2021-04-22 19:44:01 +00:00
Thomas Schatzl
b930bb1a2c 8265461: G1: Forwarding pointer removal thread sizing
Reviewed-by: iwalulya, lkorinth, sjohanss
2021-04-22 18:19:18 +00:00
Weijun Wang
f834557ae0 8258915: Temporary buffer cleanup
Reviewed-by: valeriep
2021-04-22 18:11:43 +00:00
sunguoyun
31d8a19e47 8265105: gc/arguments/TestSelectDefaultGC.java fails when compiler1 is disabled
Reviewed-by: iveresov
2021-04-22 18:05:03 +00:00
Guoxiong Li
657f103937 8057543: Replace javac's Filter with Predicate (and lambdas)
Reviewed-by: mcimadamore
2021-04-22 16:44:29 +00:00
Joe Darcy
8758b554a0 8265591: Remove vestiages of intermediate JSR 175 annotation format
Reviewed-by: jfranck
2021-04-22 16:21:54 +00:00
Ian Graves
33a86b9e40 8263621: Convert jdk.compiler to use Stream.toList()
Reviewed-by: mcimadamore, vromero
2021-04-22 16:06:40 +00:00
Doug Simon
7df0c10a4d 8265480: add basic JVMCI support for JEP 309: Dynamic Class-File Constants
Reviewed-by: kvn, psandoz
2021-04-22 15:59:12 +00:00
Calvin Cheung
9499175064 8261090: Store old classfiles in static CDS archive
Reviewed-by: iklam, minqi
2021-04-22 15:13:29 +00:00
Yasumasa Suenaga
159f5e1ede 8263636: Add --disable-registry option to jhsdb debugd
Reviewed-by: cjplummer, kevinw
2021-04-22 15:01:33 +00:00
Patricio Chilano Mateo
6d49cc3b65 8265453: SafepointMechanism::should_process() should receive JavaThread*
Reviewed-by: dcubed, shade, dholmes
2021-04-22 14:15:17 +00:00
Raffaello Giulietti
fa82d47591 8264514: HexFormat implementation tweaks
Reviewed-by: rriggs
2021-04-22 13:54:41 +00:00
Vladimir Ivanov
e16d568c1f 8265218: trace_method_handle_stub fails to find calling frame on x86
Reviewed-by: dholmes, dcubed
2021-04-22 12:17:24 +00:00
Robbin Ehn
86bd44fe80 8257831: Suspend with handshakes
Reviewed-by: dcubed, rrich, dholmes, pchilanomate, sspitsyn
2021-04-22 10:30:47 +00:00
Patrick Concannon
28af31db34 8263668: Update java.time to use instanceof pattern variable
Reviewed-by: lancea, ryadav, naoto, rriggs, dfuchs, scolebourne, chegar
2021-04-22 10:17:43 +00:00
Claes Redestad
a93d911954 8265607: Avoid decrementing when no Symbol was created in ~SignatureStream
Reviewed-by: lfoltan, coleenp
2021-04-22 09:52:56 +00:00
Aleksey Shipilev
aa2978481d 8265332: gtest/LargePageGtests.java OOMEs on -XX:+UseSHM cases
Reviewed-by: stuefe
2021-04-22 08:31:10 +00:00
Ioi Lam
33b6378f1e 8265101: Remove unnecessary functions in os*.inline.hpp
Reviewed-by: dholmes, kbarrett
2021-04-22 05:44:39 +00:00
Hao Sun
28c35aedd3 8259288: Debug build failure with clang-10 due to -Wimplicit-int-float-conversion
Reviewed-by: dholmes
2021-04-22 04:41:52 +00:00
Alexander Zuev
ca6b1b49ab 8171381: [TEST_BUG] [macos] javax/swing/JPopupMenu/7156657/bug7156657.java fails on OS X
Reviewed-by: serb
2021-04-21 23:20:55 +00:00
Joe Darcy
9e7c748db5 8265700: Regularize throws clauses in BigDecimal
Reviewed-by: bpb
2021-04-21 22:04:17 +00:00
Erik Gahlin
71163213cb 8254565: JFR: Incorrect verification of mirror events
Reviewed-by: mgronlun
2021-04-21 21:22:52 +00:00
Harold Seigel
f45d46095a 8265017: runtime/HiddenClasses/StressHiddenClasses.java timed out on Win* OCI
Reviewed-by: dholmes
2021-04-21 17:34:32 +00:00
Harold Seigel
0136c89ce1 8265490: Unterminated string passed to FindClass() in hotspot test
Reviewed-by: coleenp, stuefe
2021-04-21 16:01:22 +00:00
Thomas Schatzl
325edbc364 8265450: Merge PreservedMarksSet::restore code paths
Reviewed-by: sjohanss, iwalulya
2021-04-21 15:49:29 +00:00
Ian Graves
b337f63361 8037397: RegEx pattern matching loses character class after intersection (&&) operator
Reviewed-by: rriggs
2021-04-21 15:45:52 +00:00
Guoxiong Li
07a7510d87 8200145: Conditional expression mistakenly treated as standalone
Reviewed-by: mcimadamore
2021-04-21 14:36:47 +00:00
Prasanta Sadhukhan
41fc7ddd8d 8199079: Test javax/swing/UIDefaults/6302464/bug6302464.java is unstable
Reviewed-by: prr
2021-04-21 14:35:48 +00:00
Prasanta Sadhukhan
45c474a04c 8168408: Test java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java fails intermittentently on windows
Reviewed-by: azvegint
2021-04-21 14:20:53 +00:00
Prasanta Sadhukhan
18ee419021 8198422: Test java/awt/font/StyledMetrics/BoldSpace.java is unstable
Reviewed-by: azvegint
2021-04-21 14:16:08 +00:00
Fairoz Matte
da860290c2 8265326: Strange Characters in G1GC GC Log
Reviewed-by: tschatzl, sjohanss, kbarrett
2021-04-21 11:48:27 +00:00
Aleksey Shipilev
7879adbe88 8265343: Update Debian-based cross-compilation recipes
Reviewed-by: erikj
2021-04-21 10:44:19 +00:00
Peter Levart
98cb81b381 8265237: String.join and StringJoiner can be improved further
Reviewed-by: rriggs, redestad
2021-04-21 10:32:03 +00:00
Jie Fu
ed477da9c6 8264945: Optimize the code-gen for Math.pow(x, 0.5)
Reviewed-by: neliasso, kvn
2021-04-21 10:10:42 +00:00
Christoph Göttschkes
7146104fda 8265421: java/lang/String/StringRepeat.java test is missing a memory requirement
Reviewed-by: jlaskey, shade, ryadav
2021-04-21 07:13:13 +00:00
Yi Yang
b5c92ca34f 8265106: IGV: Enforce en-US locale while parsing ideal graph
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Reviewed-by: thartmann, chagedorn
2021-04-21 06:36:47 +00:00
Jonathan Gibbons
3de0dcba78 8265483: All-caps “JAVA” in the top navigation bar
Reviewed-by: iris, erikj
2021-04-21 04:36:37 +00:00
Ioi Lam
739769c8fc 8265411: Avoid unnecessary Method::init_intrinsic_id calls
Reviewed-by: dholmes, minqi
2021-04-21 01:42:50 +00:00
Jie Fu
a22ad03b25 8264983: Add gtest for JDK-8264008
Reviewed-by: stuefe
2021-04-20 22:49:01 +00:00
Sean Mullan
91b08b733e 8261779: JCK test api/javax_crypto/EncryptedPrivateKeyInfo/Ctor4.html is failing with assertion error when assertions enabled
Reviewed-by: rhalade, pkoppula, mschoene, weijun
2021-04-20 21:45:53 +00:00
Brian Burkhalter
2fcd920adc 8261183: Follow on to Make lists of normal filenames
Reviewed-by: alanb, rriggs, rhalade
2021-04-20 21:45:53 +00:00
Igor Ignatyev
40ef00cebf 8258457: testlibrary_tests/ctw/JarDirTest.java fails with InvalidPathException on windows
Reviewed-by: kvn
2021-04-20 21:45:53 +00:00
Vaibhav Choudhary
3f0da35764 8261392: Exclude testlibrary_tests/ctw/JarDirTest.java
Reviewed-by: coffeys
2021-04-20 21:45:53 +00:00
Rahul Yadav
8d0faaf91a 8257001: Improve Http Client Support
Reviewed-by: chegar, dfuchs, rhalade
2021-04-20 21:45:53 +00:00
Tobias Hartmann
9bf055d359 8259633: compiler/graalunit/CoreTest.java fails with NPE after JDK-8244543
Reviewed-by: vlivanov, jcm
2021-04-20 21:45:53 +00:00
Sean Mullan
ddc56d1dbe 8259428: AlgorithmId.getEncodedParams() should return copy
Reviewed-by: weijun, valeriep
2021-04-20 21:45:52 +00:00
Sean Mullan
ae33d2a2f0 8258247: Couple of issues in fix for JDK-8249906
Reviewed-by: rhalade, weijun
2021-04-20 21:45:52 +00:00
Jamsheed Mohammed C M
2003e91d3b 8244543: Enhanced handling of abstract classes
Reviewed-by: vlivanov, rhalade
2021-04-20 21:45:52 +00:00
Roger Riggs
e56e087290 8250568: Less ambiguous processing
Reviewed-by: alanb, rhalade
2021-04-20 21:45:52 +00:00
Brian Burkhalter
4471789aca 8253799: Make lists of normal filenames
Reviewed-by: alanb, rhalade
2021-04-20 21:45:52 +00:00
Sean Mullan
7232e3c704 8249906: Enhance opening JARs
Reviewed-by: weijun, rhalade, mschoene
2021-04-20 21:45:52 +00:00
Aleksei Efimov
17a741d6bc 8244473: Contextualize registration for JNDI
Also reviewed by Chris Ries <chris.ries@oracle.com>

Reviewed-by: dfuchs, rriggs, rhalade, skoivu, mullan
2021-04-20 21:45:52 +00:00
Rafael Winterhalter
f47faf283b 8228988: AnnotationParser throws NullPointerException on incompatible member type
Reviewed-by: darcy
2021-04-20 21:33:19 +00:00
Erik Gahlin
d61345984d 8265407: JFR: Fix Typos
Reviewed-by: mgronlun
2021-04-20 17:27:25 +00:00
Erik Gahlin
4dcaac1feb 8265036: JFR: Remove use of -XX:StartFlightRecording= and -XX:FlightRecorderOptions=
Reviewed-by: cjplummer
2021-04-20 15:53:45 +00:00
Mikael Vidstedt
72c88fc45d 8257459: Bump minimum boot jdk to JDK 16
Reviewed-by: darcy, iris, erikj
2021-04-20 14:37:44 +00:00
Albert Mingkun Yang
c52e5f2be4 8265435: Remove dummy lists in G1CalculatePointersClosure
Reviewed-by: sjohanss, tschatzl
2021-04-20 12:48:08 +00:00
Thomas Schatzl
072ae7ec5e 8265436: G1: Improve gc+phases log output during full gc
Reviewed-by: ayang, mli
2021-04-20 10:36:12 +00:00
Roberto Castañeda Lozano
d81b0461b7 8263227: C2: inconsistent spilling due to dead nodes in exception block
Eliminate dead nodes created by call-catch cleanup even if they have multiple
projections. Assert that definitions dominate uses and projections are scheduled
next to their parent nodes.

Reviewed-by: neliasso, kvn
2021-04-20 10:06:49 +00:00
Andrew Haley
a25bae8239 8261445: Use memory_order_relaxed for os::random().
Reviewed-by: adinn, eosterlund, mdoerr, dholmes
2021-04-20 08:09:30 +00:00
Roberto Castañeda Lozano
51366439b1 8262725: IGV: crash when removing all graphs in a group
Make IGV close graph views when their groups are either removed or emptied, and
avoid faulty graph view computation for empty groups.

Reviewed-by: chagedorn, rrich
2021-04-20 07:58:26 +00:00
Per Liden
79798c656d 8265136: ZGC: Expose GarbageCollectorMXBeans for both pauses and cycles
Reviewed-by: sspitsyn, ayang
2021-04-20 07:53:43 +00:00
Yasumasa Suenaga
f1d4ae6cc9 8263718: unused-result warning happens at os_linux.cpp
Reviewed-by: dholmes, stuefe
2021-04-20 05:06:55 +00:00
Tagir F. Valeev
787908c778 8264221: Rewrite confusing stream API chain in SnippetMaps
Reviewed-by: jlahoda
2021-04-20 01:44:32 +00:00
Yasumasa Suenaga
142edd3a81 8265152: jpackage cleanup fails on Windows with IOException deleting msi
Reviewed-by: herrick, asemenyuk
2021-04-20 01:18:43 +00:00
Mikael Vidstedt
ab2240741c 8265486: ProblemList javax/sound/midi/Sequencer/Recording.java on macosx-aarch64
Reviewed-by: prr, serb
2021-04-19 22:29:53 +00:00
Chris Plummer
e0fd5fc069 8265028: JDWP debug agent thread lookup can be made faster
Reviewed-by: sspitsyn, amenkov
2021-04-19 21:15:14 +00:00
Erik Joelsson
713483c77d 8265373: Change to GCC 10.3 for building on Linux at Oracle
Reviewed-by: mikael
2021-04-19 19:46:13 +00:00
Daniel D. Daugherty
3990713691 8265463: ProblemList vmTestbase/vm/mlvm/mixed/stress/regression/b6969574/INDIFY_Test.java on Win-X64 -Xcomp
8265464: ProblemList vmTestbase/vm/mlvm/meth/stress/compiler/deoptimize/Test.java#id1 in -Xcomp configs

Reviewed-by: mikael
2021-04-19 18:49:48 +00:00
Alexander Matveev
5b43b39e55 8263154: [macos] DMG builds have finder errors
Reviewed-by: herrick, asemenyuk
2021-04-19 18:17:24 +00:00
Doug Simon
54cb388dce 8252600: [JVMCI] remove mx configuration
Reviewed-by: erikj, kvn
2021-04-19 17:45:20 +00:00
Yumin Qi
b703e0a4c8 8264569: Remove obsolete error messages from CDSTestUtils.java
Reviewed-by: iklam
2021-04-19 17:06:07 +00:00
Yi Yang
235daea06a 8265285: Unnecessary inclusion of bytecodeHistogram.hpp
Reviewed-by: dholmes, iklam
2021-04-19 16:54:37 +00:00
Weijun Wang
8bec6fe6dc 8264277: java.xml.crypto module should be granted FilePermission and SocketPermission
Reviewed-by: mullan
2021-04-19 16:11:54 +00:00
Claes Redestad
5303ccb885 8265135: Reduce work initializing VarForms
Reviewed-by: psandoz, mchung
2021-04-19 14:39:31 +00:00
Ivan Walulya
d9e40dd593 8199407: Skip Rebuild Remset Phase if there are no rebuild candidates
Reviewed-by: tschatzl, sjohanss
2021-04-19 14:37:16 +00:00
Weijun Wang
8dbf7aa1f9 8241306: Add SignatureMethodParameterSpec subclass for RSASSA-PSS params
Reviewed-by: mullan
2021-04-19 14:29:18 +00:00
Erik Joelsson
b14e0ee4d8 8265371: Change to Visual Studio 2019 16.9.3 for building on Windows at Oracle
Reviewed-by: mikael
2021-04-19 13:48:44 +00:00
Jorn Vernee
c88714875d 8265079: Implement VarHandle invoker caching
Reviewed-by: redestad, vlivanov, psandoz, mchung
2021-04-19 11:36:55 +00:00
Jie Fu
b64a3fb946 8265325: Optimize StubRoutines::dpow() for Math.pow(x, 0.5)
Reviewed-by: kvn, neliasso
2021-04-19 10:45:20 +00:00
Tejpal Rebari
d1c8c9eabb 8197811: Test java/awt/Choice/PopupPosTest/PopupPosTest.java fails on Windows
Reviewed-by: psadhukhan
2021-04-19 10:23:19 +00:00
Albert Mingkun Yang
7d01c988cf 8265414: Variable assigned but not used in G1FreeHumongousRegionClosure
Reviewed-by: tschatzl, iwalulya
2021-04-19 09:58:08 +00:00
Michael McMahon
d9e19f16f0 8265226: (dc) API note in DatagramChannel.open should link to StandardProtocolFamily.UNIX
Reviewed-by: iris, alanb
2021-04-19 09:31:52 +00:00
Thomas Stuefe
49b9e6896e 8262165: NMT report should state how many callsites had been skipped
Reviewed-by: zgu, shade
2021-04-19 09:18:55 +00:00
Stefan Johansson
e390e550fa 8265066: Split ReservedSpace constructor to avoid default parameter
Reviewed-by: tschatzl, stefank
2021-04-19 07:08:10 +00:00
Albert Mingkun Yang
c607d12e40 8249528: Remove obsolete comment in G1RootProcessor::process_java_roots
Reviewed-by: tschatzl, sangheki
2021-04-19 07:04:26 +00:00
Yi Yang
fa58aae8f6 8265245: depChecker_<cpu> don't have any functionalities
Reviewed-by: thartmann, neliasso
2021-04-19 06:27:15 +00:00
Yi Yang
a2b0e0f4c0 8265323: Leftover local variables in PcDesc
Reviewed-by: thartmann, neliasso
2021-04-19 06:26:12 +00:00
David Holmes
1ac25b8201 8264372: Threads::destroy_vm only ever returns true
Reviewed-by: shade, dcubed
2021-04-18 04:32:11 +00:00
David Holmes
73d5f3b586 8265313: Obsolete the unused AssertOnSuspendWaitFailure and TraceSuspendWaitFailures flags
Reviewed-by: shade, hseigel, dcubed
2021-04-18 04:26:57 +00:00
Ajit Ghaisas
cb8394a841 8265304: Temporarily make Metal the default 2D rendering pipeline for macOS
Reviewed-by: jdv, kcr, azvegint, prr
2021-04-17 12:33:07 +00:00
Aleksey Shipilev
66f89870f2 8265298: Hard VM crash when deadlock between "access" and higher ranked lock is detected
Reviewed-by: pchilanomate, dholmes
2021-04-17 06:21:19 +00:00
Denis Konoplev
926e3bc0c1 8264143: Lanai: RenderPerfTest.BgrSwBlitImage has artefacts on apple M1
Reviewed-by: jdv
2021-04-17 06:07:44 +00:00
Naoto Sato
ff4997014f 8265375: Bootcycle builds fail with StackOverflowError in cldrconverter
Reviewed-by: joehw
2021-04-16 22:23:30 +00:00
Sandhya Viswanathan
c108e7abdf 8265154: vinserti128 operand mix up for KNL platforms
Reviewed-by: thartmann, kvn
2021-04-16 21:28:30 +00:00
Daniel D. Daugherty
2c4075cbb7 8265381: ProblemList runtime/logging/RedefineClasses.java on macos-x64 -Xcomp
Reviewed-by: bpb
2021-04-16 21:20:51 +00:00
Daniel D. Daugherty
888d80b5e2 8265358: ProblemList jdk/jshell/ToolBasicTest.java on macOS-aarch64
8265361: ProblemList a few compiler/whitebox tests on macos-aarch64
8265363: ProblemList java/net/Socket/UdpSocket.java on macos-aarch64
8265368: ProblemList 3 java/net/httpclient/websocket tests on macos-aarch64
8265370: ProblemList java/net/MulticastSocket/Promiscuous.java on macos-aarch64

Reviewed-by: bpb, mikael
2021-04-16 20:21:15 +00:00
Ian Graves
0bdc3e7a41 8262744: Formatter '%g' conversion uses wrong format for BigDecimal rounding up to limits
Reviewed-by: rriggs, bpb
2021-04-16 20:05:48 +00:00
Erik Gahlin
4413dbfbdb 8263395: Incorrect use of Objects.nonNull
Reviewed-by: shade
2021-04-16 19:51:15 +00:00
Alexander Zuev
74d03abb7b 8039270: The background color of the button can't be displayed and when pressed the button, the background color can not be changed in accordance with the case described.
Reviewed-by: azvegint, trebari
2021-04-16 19:30:55 +00:00
Erik Gahlin
7c37c022a1 8244190: JFR: When starting a JVM with -XX:StartFlightRecording, output is written to stdout
Reviewed-by: mgronlun
2021-04-16 17:26:13 +00:00
Fernando Guallini
79adc16fd8 8264152: javax/net/ssl/DTLS/RespondToRetransmit.java timed out
Reviewed-by: xuelei
2021-04-16 16:51:41 +00:00
Brian Burkhalter
1c3fd46d7d 8265175: (fs) Files.copy(Path,Path,CopyOption...) should use sendfile on Linux
Reviewed-by: alanb
2021-04-16 15:46:37 +00:00
Guoxiong Li
cee4f1d9c4 8203925: tools/javac/importscope/T8193717.java ran out of java heap
Reviewed-by: vromero
2021-04-16 15:38:46 +00:00
Evgeny Nikitin
694e1cdcb8 8262060: compiler/whitebox/BlockingCompilation.java timed out
Reviewed-by: iignatyev
2021-04-16 14:33:27 +00:00
Alexander Zvegintsev
6946d91d7c 8075915: The eight controls without black backgrounds with WinLAF & GTK LAF & Nimbus LAF
Reviewed-by: psadhukhan, kizune, aivanov
2021-04-16 14:32:12 +00:00
Hamlin Li
714298a58e 8265259: G1: Fix HeapRegion::block_is_obj for unloading class in full gc
Reviewed-by: sjohanss, tschatzl
2021-04-16 12:40:25 +00:00
Zhengyu Gu
ff5bb8cf69 8265239: Shenandoah: Shenandoah heap region count could be off by 1
Reviewed-by: shade
2021-04-16 12:27:29 +00:00
Aleksey Shipilev
17b6592d8f 8265335: Epsilon: Minor typo in EpsilonElasticTLABDecay description
Reviewed-by: tschatzl
2021-04-16 12:10:36 +00:00
Roberto Castañeda Lozano
10ec38f80b 8262462: IGV: cannot remove specific groups imported via network
Reviewed-by: neliasso
2021-04-16 11:49:35 +00:00
Roland Westrelin
7137328006 8264958: C2 compilation fails with assert "n is later than its clone"
Reviewed-by: neliasso, thartmann
2021-04-16 11:34:45 +00:00
Thomas Schatzl
1d66a155c7 8265330: G1: Fix comment in G1FullGCPrepareTask::G1CalculatePointersClosure
Reviewed-by: shade, mli
2021-04-16 09:25:36 +00:00
Hamlin Li
b4ba74e3ac 8264987: G1: Fill BOTs for Survivor-turned-to-Old regions in full gc
Co-authored-by: Shoubing Ma <mashoubing1@huawei.com>
Reviewed-by: tschatzl, sjohanss
2021-04-16 08:07:00 +00:00
Ivan Walulya
fc89fe6458 8265119: G1: update_remset_before_rebuild mixes liveness in words with liveness in bytes
Reviewed-by: tschatzl, sjohanss
2021-04-16 07:29:55 +00:00
Robbin Ehn
50f3da8d59 8264480: Unreachable code in nmethod.cpp inside #ifdef DEBUG
Reviewed-by: chagedorn, kvn
2021-04-16 07:19:49 +00:00
Xiaohong Gong
e0151a6fb1 8264104: Eliminate unnecessary vector mask conversion during VectorUnbox for floating point VectorMask
Reviewed-by: kvn, vlivanov
2021-04-16 07:12:32 +00:00
Jaikiran Pai
64e21307a8 8262108: SimpleDateFormat formatting broken for sq_MK Locale
Reviewed-by: naoto
2021-04-16 06:45:39 +00:00
Tom Rodriguez
3423f3e1f5 8265180: JvmtiCompiledMethodLoadEvent should include the stub section of nmethods
Reviewed-by: kvn, sspitsyn
2021-04-15 23:42:16 +00:00
Naoto Sato
f6e54f2f9a 8258794: Support for CLDR version 39
Reviewed-by: joehw, erikj
2021-04-15 21:28:22 +00:00
Brian Burkhalter
e89fd15189 8261301: StringWriter.flush() is NOOP but documentation does not indicate it
Reviewed-by: naoto, rriggs
2021-04-15 20:19:40 +00:00
Vicente Romero
0b1b5c8d0b 8264373: javac hangs when annotation is declared with sealed public modifier
Reviewed-by: jlahoda
2021-04-15 19:07:11 +00:00
Daniel D. Daugherty
c7da64a488 8265302: ProblemList runtime/logging/RedefineClasses.java on linux-x64 -Xcomp
Reviewed-by: mikael
2021-04-15 17:30:11 +00:00
Mikael Vidstedt
838c11fc0e 8265293: ProblemList java/foreign/TestDowncall.java on macosx-aarch64
Reviewed-by: ccheung, dcubed
2021-04-15 16:57:17 +00:00
Jan Lahoda
325eecbccb 8255273: jshell crashes with UnsupportedOperationException: Should not get here.
Reviewed-by: vromero
2021-04-15 16:17:35 +00:00
Jan Lahoda
e43aee58e1 8262900: ToolBasicTest fails to access HTTP server it starts
Reviewed-by: sundar, vromero
2021-04-15 15:16:11 +00:00
Weijun Wang
c70589c68c 8265227: Move Proc.java from security/testlibrary to test/lib
Reviewed-by: rriggs, xuelei, rhalade, ssahoo
2021-04-15 15:07:47 +00:00
Roger Riggs
7b61a426e0 8265173: [test] divert spurious log output away from stream under test in ProcessBuilder Basic test
Reviewed-by: dholmes
2021-04-15 14:38:14 +00:00
Conor Cleary
4e90d74000 8048199: Replace anonymous inner classes with lambdas, where applicable, in JNDI
Reviewed-by: rriggs, dfuchs, aefimov, chegar
2021-04-15 14:08:27 +00:00
Conor Cleary
6293299dd3 8264824: java/net/Inet6Address/B6206527.java doesn't close ServerSocket properly
Reviewed-by: aefimov, dfuchs, michaelm, vtewari
2021-04-15 14:05:55 +00:00
Pankaj Bansal
6b907155f7 8265278: doc build fails after JDK-8262981
Reviewed-by: jdv, trebari
2021-04-15 14:04:22 +00:00
Denis Konoplev
0fee6ecac2 8264318: Lanai: DrawHugeImageTest.java fails on apple M1
Reviewed-by: serb, jdv
2021-04-15 13:50:22 +00:00
David Holmes
81877f7df2 8262501: jdk17 libjvm link failure with --as-needed and clock_gettime in librt
Co-authored-by: Matthias Klose <doko@openjdk.org>
Reviewed-by: erikj
2021-04-15 12:59:21 +00:00
Harold Seigel
b23dbdbdb3 8257804: Test runtime/modules/ModuleStress/ModuleStressGC.java fails: 'package test defined in module jdk.test, exports list being walked' missing from stdout/stderr
Reviewed-by: dholmes
2021-04-15 12:19:47 +00:00
Pankaj Bansal
9d669c912d 8262981: Create implementation for NSAccessibilitySlider protocol
Reviewed-by: kizune
2021-04-15 11:45:41 +00:00
Jayathirth D V
abdff7905f 8163086: java/awt/Window/TranslucentJAppletTest/TranslucentJAppletTest.java fails
Reviewed-by: psadhukhan
2021-04-15 11:32:07 +00:00
Prasanta Sadhukhan
b72d99e77b 8233564: [TESTBUG] MouseComboBoxTest.java is failing
Reviewed-by: jdv
2021-04-15 10:14:37 +00:00
Prasanta Sadhukhan
2b5869ad09 8233565: [TESTBUG] NullModalityDialogTest.java fails on MacOS
Reviewed-by: jdv
2021-04-15 09:55:29 +00:00
Thomas Schatzl
bba16f61bb 8264818: G1: Improve liveness check for empty pinned regions after full gc marking
Reviewed-by: sjohanss, ayang, mli
2021-04-15 08:44:52 +00:00
Thomas Schatzl
75da1e9a64 8264423: G1: Rename full gc attribute table states
Reviewed-by: sjohanss, mli
2021-04-15 08:12:37 +00:00
Thomas Schatzl
125a8479a9 8264788: Make SequentialSubTasksDone use-once
Reviewed-by: ayang, sjohanss
2021-04-15 08:11:01 +00:00
Rickard Bäckman
0793fcbbca 8260255: C1: LoopInvariantCodeMotion constructor can leave some fields uninitialized
Reviewed-by: neliasso, thartmann
2021-04-15 07:48:40 +00:00
Jie Fu
b224b56649 8265225: jdk/jfr/tool/TestConfigure.java fails to cleanup the output files after the testing
Reviewed-by: egahlin
2021-04-15 06:35:33 +00:00
Junji Wang
7c6e3796ef 8265120: hs_err improvement: align the output of Virtual space metadata
Reviewed-by: dholmes
2021-04-15 05:40:09 +00:00
Yumin Qi
e7cbeba866 8259070: Add jcmd option to dump CDS
Reviewed-by: ccheung, iklam, mli
2021-04-15 05:21:24 +00:00
David Holmes
593194864a 8265246: Fix macos-Aarch64 build after JDK-8263709
Reviewed-by: mikael
2021-04-15 03:01:49 +00:00
David Holmes
79bff21b43 8263709: Cleanup THREAD/TRAPS/CHECK usage in JRT_ENTRY routines
Reviewed-by: coleenp, hseigel, iklam, kvn
2021-04-15 02:20:31 +00:00
Nick Gasson
f4c3efd9cf 8265192: [macos_aarch64] configure script fails if GNU uname in PATH
Reviewed-by: erikj
2021-04-15 01:43:22 +00:00
Andy Herrick
e167577888 8265078: jpackage tests on Windows leave large temp files
Reviewed-by: asemenyuk, kcr
2021-04-14 19:56:24 +00:00
Mikael Vidstedt
05f851e45d 8265236: ProblemList java/foreign/TestUpcall.java on macosx-aarch64
Reviewed-by: dcubed
2021-04-14 19:53:53 +00:00
Brian Burkhalter
d1b28e7ad0 8265231: (fc) ReadDirect and WriteDirect tests fail after fix for JDK-8264821
Reviewed-by: alanb, dcubed, darcy, chegar
2021-04-14 19:53:19 +00:00
Mikael Vidstedt
57f86a071e 8265235: ProblemList java/foreign/TestIntrinsics.java on macosx-aarch64
Reviewed-by: dcubed
2021-04-14 19:19:49 +00:00
Evgeny Nikitin
4c83d24f0a 8058176: [mlvm] tests should not allow code cache exhaustion
Reviewed-by: iignatyev
2021-04-14 17:32:53 +00:00
Aleksey Shipilev
94067446ba 8264976: Minor numeric bug in AbstractSplittableWithBrineGenerator.makeSplitsSpliterator
Reviewed-by: psandoz, jlaskey
2021-04-14 16:16:41 +00:00
Joe Darcy
80026d81a4 8265174: Update Class.getDeclaredMethods to discuss synthetic and bridge methods
Reviewed-by: jfranck
2021-04-14 16:15:54 +00:00
Lance Andersen
ffb3771816 8265019: Update tests for additional TestNG test permissions
Reviewed-by: naoto, bpb, alanb
2021-04-14 15:42:55 +00:00
Brian Burkhalter
7e4cd48020 8264821: DirectIOTest fails on a system with large block size
Reviewed-by: chegar
2021-04-14 15:33:48 +00:00
Yasumasa Suenaga
0afcbd4b09 8264412: AArch64: CPU description should refer DMI
Reviewed-by: aph, gziemski
2021-04-14 15:11:08 +00:00
Michael McMahon
4661690981 8262883: doccheck: Broken links in java.base
Reviewed-by: lancea
2021-04-14 15:00:14 +00:00
Prasanta Sadhukhan
75b039a43c 8263970: Manual test javax/swing/JTextField/JapaneseReadingAttributes/JapaneseReadingAttributes.java failed
Reviewed-by: azvegint
2021-04-14 13:11:30 +00:00
Harold Seigel
f5b2f08912 8257836: Add additional test cases to TestSyncOnValueBasedClassEvent.java
Reviewed-by: lfoltan, pchilanomate
2021-04-14 12:16:46 +00:00
Sebastian Stenzel
27dd88bf9e 8262957: (fs) Fail fast in UnixFileStore.isExtendedAttributesEnabled
Reviewed-by: alanb
2021-04-14 09:55:52 +00:00
Yasumasa Suenaga
e2106d5af6 8265104: CpuLoad and SystemCpuLoad in OperatingSystem MXBean returns -1.0
Reviewed-by: dholmes, sgehwolf
2021-04-14 07:38:31 +00:00
Alex Blewitt
ebbce91e79 8264681: Use the blessed modifier order in java.security
Reviewed-by: mullan, shade
2021-04-14 06:01:00 +00:00
Ioi Lam
ea5c55a4ae 8265103: Remove unnecessary inclusion of oopMap.hpp
Reviewed-by: dholmes, stefank
2021-04-14 05:11:49 +00:00
Alexander Zvegintsev
26186ec3f6 8039261: [TEST_BUG]: There is not a minimal security level in Java Preferences and the TestApplet.html is blocked.
Reviewed-by: serb, pbansal, aivanov, kizune
2021-04-14 00:31:30 +00:00
Anton Kozlov
283d64f815 8262896: [macos_aarch64] Crash in jni_fast_GetLongField
Reviewed-by: aph, dholmes
2021-04-13 22:34:28 +00:00
Alexander Matveev
55d5649509 8263157: [macos]: java.library.path is being set incorrectly
Reviewed-by: asemenyuk, herrick
2021-04-13 21:36:55 +00:00
Erik Gahlin
e80012ede3 8264768: JFR: Allow events to be printed to the log
Reviewed-by: mgronlun
2021-04-13 20:06:39 +00:00
Brian Burkhalter
3b576ed99d 8265100: (fs) WindowsFileStore.hashCode() should read cached hash code once
Reviewed-by: alanb
2021-04-13 18:43:33 +00:00
Roberto Castañeda Lozano
8df8512bc8 8265125: IGV: cannot edit forms with NetBeans GUI builder
Reviewed-by: kvn
2021-04-13 17:07:43 +00:00
Weijun Wang
9cd5400d9b 8265138: Simplify DerUtils::checkAlg
Reviewed-by: xuelei
2021-04-13 16:56:36 +00:00
Wang Huang
c7975113a0 8264940: java/lang/invoke/6998541/Test6998541.java failed "guarantee(ik->is_initialized()) failed: java/lang/Byte$ByteCache must be initialized"
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Reviewed-by: dholmes, kvn, dcubed
2021-04-13 16:41:57 +00:00
Patricio Chilano Mateo
943503ef6a 8265035: Remove unneeded exception check from refill_ic_stubs()
Reviewed-by: hseigel, dholmes
2021-04-13 15:32:57 +00:00
Mikael Vidstedt
fced0f08bf 8265113: ProblemList gtest/GTestWrapper.java:os.release_multi_mappings on macosx-aarch64
Reviewed-by: stuefe, akozlov, dcubed
2021-04-13 15:10:58 +00:00
Mikael Vidstedt
2aae29c922 8265111: ProblemList java/util/concurrent/locks/Lock/TimedAcquireLeak.java on macosx-aarch64
Reviewed-by: akozlov, hseigel
2021-04-13 15:09:15 +00:00
Mikael Vidstedt
a84d886f4c 8265112: ProblemList some java/foreign tests on macosx-aarch64
Reviewed-by: akozlov, hseigel
2021-04-13 15:06:26 +00:00
Mikael Vidstedt
87e39cb673 8265110: ProblemList compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/NativeCallTest.java on macosx-aarch64
Reviewed-by: akozlov, hseigel
2021-04-13 15:03:56 +00:00
Conor Cleary
784f1c1f74 8264200: java/nio/channels/DatagramChannel/SRTest.java fails intermittently
Reviewed-by: dfuchs, rriggs, msheppar
2021-04-13 14:06:10 +00:00
Stefan Johansson
a4f644eb2f 8265064: Move clearing and setting of members into helpers in ReservedSpace
Reviewed-by: tschatzl, iwalulya
2021-04-13 12:39:05 +00:00
Claes Redestad
7006070fa3 8265061: Simplify MethodHandleNatives::canBeCalledVirtual
Reviewed-by: jvernee, mchung
2021-04-13 10:39:35 +00:00
Xiaohong Gong
1935655622 8264957: Cleanup unused array Type::dual_type
Reviewed-by: jiefu, neliasso, thartmann
2021-04-13 09:58:32 +00:00
Roberto Castañeda Lozano
954b9a1ce6 8264795: IGV: Upgrade NetBeans platform
Upgrade IGV's underlying NetBeans platform to version 12.3, switch build system
from Ant to Maven, and fix broken unit tests in Data module.

Reviewed-by: kvn, chagedorn, neliasso, xliu
2021-04-13 09:27:39 +00:00
Stefan Johansson
f2f7aa3bec 8262291: Refactor reserve_memory_special_huge_tlbfs
Reviewed-by: iwalulya, stuefe
2021-04-13 08:59:09 +00:00
Mikael Vidstedt
008fc75a29 8264224: Add macosx-aarch64 to Oracle build configurations
Reviewed-by: serb, erikj
2021-04-13 00:58:34 +00:00
Fernando Guallini
f4e639577e 8264190: Harden TLS interop tests
Reviewed-by: rhalade
2021-04-12 21:04:10 +00:00
Vladimir Kozlov
18bec9cf9b 8265084: [BACKOUT] 8264954: unified handling for VectorMask object re-materialization during de-optimization
Reviewed-by: dcubed
2021-04-12 21:03:40 +00:00
Rafael Winterhalter
9dd96257c6 8263763: Synthetic constructor parameters of enum are not considered for annotation indices
Reviewed-by: darcy, jfranck
2021-04-12 21:01:08 +00:00
Martin Balao
1ee80e03ad 8261355: No data buffering in SunPKCS11 Cipher encryption when the underlying mechanism has no padding
Reviewed-by: valeriep
2021-04-12 20:58:08 +00:00
Daniel Fuchs
d84a7e55be 8264124: Update MXBean specification and implementation to extend mapping of CompositeType to records
Reviewed-by: mchung, chegar, alanb
2021-04-12 16:31:36 +00:00
Alexey Ushakov
714ae54f91 8258788: incorrect response to change in window insets [lanai]
Reviewed-by: serb, jdv
2021-04-12 16:28:14 +00:00
Daniel D. Daugherty
f4794378d4 8265082: test/hotspot/jtreg/gc/g1/TestG1SkipCompaction.java fails validate-source
Reviewed-by: mikael, erikj
2021-04-12 16:13:54 +00:00
Mikael Vidstedt
27f4b27138 8264623: Change to Xcode 12.4 for building on Macos at Oracle
Reviewed-by: erikj
2021-04-12 15:56:19 +00:00
Stefan Karlsson
7c20d97ac3 8265052: Break circular include dependency in objArrayOop.inline.hpp
Reviewed-by: tschatzl, egahlin, dholmes
2021-04-12 15:43:28 +00:00
Prasanta Sadhukhan
b90ad76d6b 8233567: [TESTBUG] FocusSubRequestTest.java fails on macos
Reviewed-by: azvegint, pbansal
2021-04-12 14:59:14 +00:00
Zhengyu Gu
125184e96f 8265012: Shenandoah: Backout JDK-8264718
Reviewed-by: shade
2021-04-12 12:47:40 +00:00
Hamlin Li
be0d46c142 8262068: Improve G1 Full GC by skipping compaction for regions with high survival ratio
Co-authored-by: Shoubing Ma <mashoubing1@huawei.com>
Reviewed-by: sjohanss, ayang
2021-04-12 12:41:11 +00:00
Jatin Bhateja
f71be8b5d7 8264954: unified handling for VectorMask object re-materialization during de-optimization
Reviewed-by: vlivanov
2021-04-12 12:13:49 +00:00
Chris Hegarty
3c9858ddfb 8264827: Large mapped buffer/segment crash the VM when calling isLoaded
Reviewed-by: alanb, mcimadamore
2021-04-12 11:21:34 +00:00
Thomas Schatzl
e604320bbd 8264783: G1 BOT verification should not verify beyond allocation threshold
Reviewed-by: mli, ayang
2021-04-12 09:14:39 +00:00
Martin Doerr
cb2806db4e 8265018: [AIX] FileDispatcherImpl.c:31:10: fatal error: 'sys/mount.h' file not found
Reviewed-by: clanger
2021-04-12 09:03:34 +00:00
Yi Yang
ecef1fc82b 8264972: Unused TypeFunc declared in OptoRuntime
Reviewed-by: thartmann, shade
2021-04-12 08:40:58 +00:00
Yi Yang
440c34a62b 8264644: Add PrintClassLoaderDataGraphAtExit to print the detailed CLD graph
Reviewed-by: coleenp, dholmes, shade
2021-04-12 08:23:20 +00:00
Stefan Karlsson
b1ebf82269 8264358: Don't create invalid oop in method handle tracing
Reviewed-by: neliasso, thartmann
2021-04-12 06:37:56 +00:00
Ioi Lam
627ad9fe22 8262328: Templatize JVMFlag boilerplate access methods
Reviewed-by: dholmes, gziemski
2021-04-10 15:39:27 +00:00
Ioi Lam
c15680e742 8264868: Reduce inclusion of registerMap.hpp and register.hpp
Reviewed-by: coleenp, dholmes
2021-04-10 06:09:52 +00:00
Xue-Lei Andrew Fan
5784f6b7f7 8264948: Check for TLS extensions total length
Reviewed-by: jnimeh
2021-04-10 03:48:45 +00:00
Hui Shi
42f4d70627 8264649: runtime/InternalApi/ThreadCpuTimesDeadlock.java crash in fastdebug C2 with -XX:-UseTLAB
Reviewed-by: thartmann, kvn
2021-04-10 00:03:57 +00:00
Vladimir Ivanov
76bd313d80 8264872: Dependencies: Migrate to PerfData counters
Reviewed-by: kvn, neliasso
2021-04-09 22:18:56 +00:00
Vladimir Ivanov
07c8ff47d2 8264871: Dependencies: Miscellaneous cleanups in dependencies.cpp
Reviewed-by: neliasso
2021-04-09 22:03:29 +00:00
Joe Darcy
863feab998 8005295: Use mandated information for printing of repeating annotations
Reviewed-by: jjg
2021-04-09 22:02:34 +00:00
Coleen Phillimore
f26cd2ac1c 8264997: Remove SystemDictionary::cache_get
Reviewed-by: hseigel
2021-04-09 20:47:06 +00:00
Naoto Sato
9ebc497b53 8264765: BreakIterator sees bogus sentence boundary in parenthesized “i.e.” phrase
Reviewed-by: joehw
2021-04-09 18:12:08 +00:00
William Kemper
ec31b3a137 8264727: Shenandoah: Remove extraneous whitespace from phase timings report
Reviewed-by: shade
2021-04-09 17:07:11 +00:00
Brian Burkhalter
cc54de76ca 8264400: (fs) WindowsFileStore equality depends on how the FileStore was constructed
Reviewed-by: alanb
2021-04-09 15:41:52 +00:00
Brian Burkhalter
6de0bb204a 8232861: (fc) FileChannel.force fails on WebDAV file systems (macOS)
Reviewed-by: alanb
2021-04-09 15:31:11 +00:00
Daniel D. Daugherty
1ca4abe9f2 8262881: port JVM/DI tests from JDK-4413752 to JVM/TI
Reviewed-by: sspitsyn, rehn
2021-04-09 15:01:36 +00:00
Coleen Phillimore
06e6b1f7ae 8259242: Remove ProtectionDomainSet_lock
Reviewed-by: dholmes, pchilanomate
2021-04-09 14:59:43 +00:00
Abdul Kolarkunnu
9bb1863ed7 8260923: Add more tests for SSLSocket input/output shutdown
Reviewed-by: coffeys
2021-04-09 13:57:58 +00:00
Vladimir Ivanov
33fa855d5a 8264732: Clean up LinkResolver::vtable_index_of_interface_method()
Reviewed-by: lfoltan, coleenp, dholmes
2021-04-09 11:36:20 +00:00
Vladimir Ivanov
b3782ead36 8264918: [JVMCI] getVtableIndexForInterfaceMethod doesn't check that type and method are related
Reviewed-by: kvn
2021-04-09 10:46:12 +00:00
Kazunori Ogata
f7a6c63ad3 8259822: [PPC64] Support the prefixed instruction format added in POWER10
Reviewed-by: cashford, mdoerr
2021-04-09 09:07:37 +00:00
Conor Cleary
a45733f840 8264779: Fix doclint warnings in java/nio
Reviewed-by: chegar, iris, alanb, naoto
2021-04-09 08:50:33 +00:00
Wang Huang
3e57924a6e 8264885: Fix the code style of macro in aarch64_neon_ad.m4
Reviewed-by: aph, shade
2021-04-09 06:29:03 +00:00
Aleksey Shipilev
051c117bf0 8264923: PNGImageWriter.write_zTXt throws Exception with a typo
Reviewed-by: aivanov, jdv, azvegint, kizune
2021-04-09 06:24:48 +00:00
Aleksey Shipilev
1c6b1134d0 8264513: Cleanup CardTableBarrierSetC2::post_barrier
Reviewed-by: tschatzl
2021-04-09 06:24:02 +00:00
Yi Yang
666fd62ee8 8264881: Remove the old development option MemProfiling
Reviewed-by: dholmes, coleenp, shade
2021-04-09 06:23:12 +00:00
Ioi Lam
951f277a71 8264874: Build interim-langtools for HotSpot only if Graal is enabled
Reviewed-by: kvn, erikj
2021-04-09 04:41:26 +00:00
Hai-May Chao
719f95e504 8260693: Provide the support for specifying a signer in keytool -genkeypair
Reviewed-by: weijun
2021-04-09 01:59:59 +00:00
Dong Bo
77b16739ab 8256245: AArch64: Implement Base64 decoding intrinsic
Reviewed-by: aph, ngasson
2021-04-09 01:28:11 +00:00
Guoxiong Li
57f1e7d934 8264696: Multi-catch clause causes compiler exception because it uses the package-private supertype
Reviewed-by: vromero
2021-04-08 21:34:51 +00:00
Weijun Wang
3d2b4cc567 8264864: Multiple byte tag not supported by ASN.1 encoding
Reviewed-by: xuelei
2021-04-08 21:26:05 +00:00
Joe Darcy
ccefa5e378 8261625: Add Elements.isAutomaticModule(ModuleElement)
Reviewed-by: vromero, jlahoda
2021-04-08 21:25:17 +00:00
Andrey Turbanov
8a2358074f 8264428: Cleanup usages of StringBuffer in java.desktop
Reviewed-by: azvegint, aivanov
2021-04-08 21:23:30 +00:00
Mahendra Chhipa
308f6796da 8264454: Jaxp unit test from open jdk needs to be improved
Reviewed-by: joehw
2021-04-08 21:21:11 +00:00
Alexey Semenyuk
5bd6c74547 8236127: Use value of --icon CLI option to set icon for exe installers
Reviewed-by: almatvee, herrick
2021-04-08 15:44:11 +00:00
Vladimir Kozlov
81d35e439d 8264063: Outer Safepoint poll load should not reference the head of inner strip mined loop.
Reviewed-by: roland, vlivanov
2021-04-08 15:04:38 +00:00
Lutz Schmidt
04fa1ed4d0 8264848: [macos] libjvm.dylib linker warning due to macOS version mismatch
Reviewed-by: erikj, dcubed, clanger
2021-04-08 13:37:22 +00:00
Julia Boes
214d6e21bb 8263506: Make sun.net.httpserver.UnmodifiableHeaders unmodifiable
Reviewed-by: michaelm, dfuchs
2021-04-08 13:09:26 +00:00
Harold Seigel
af13c64f68 8264711: More runtime TRAPS cleanups
Reviewed-by: lfoltan, pchilanomate, dholmes, dcubed
2021-04-08 12:13:19 +00:00
Zhengyu Gu
3aec2d9647 8264718: Shenandoah: enable string deduplication during root scanning
Reviewed-by: shade
2021-04-08 12:09:21 +00:00
Coleen Phillimore
255afbea92 8264672: runtime/ParallelLoad/ParallelSuperTest.java timed out
Reviewed-by: hseigel, lfoltan, dholmes
2021-04-08 11:44:23 +00:00
Denghui Dong
ec599da68c 8264633: Add missing logging to PlatformRecording#stop
Reviewed-by: egahlin
2021-04-08 08:11:43 +00:00
Xiaohong Gong
e89542fbe6 8264352: AArch64: Optimize vector "not/andNot" for NEON and SVE
Reviewed-by: aph, njian
2021-04-08 06:14:52 +00:00
Prasanta Sadhukhan
016db40c4a 8263907: Specification of CellRendererPane::paintComponent(..Rectangle) should clearly mention which method it delegates the call to
Reviewed-by: aivanov, serb
2021-04-08 04:41:18 +00:00
Ioi Lam
78d1164ce2 8214455: Relocate CDS archived regions to the top of the G1 heap
Reviewed-by: tschatzl, ccheung
2021-04-08 00:41:28 +00:00
Jie Fu
88eb2919f5 8264809: test-lib fails to build due to some warnings in ASN1Formatter and jfr
Reviewed-by: rriggs
2021-04-08 00:24:12 +00:00
Yasumasa Suenaga
a863ab69d3 8264551: Unexpected warning when jpackage creates an exe
Reviewed-by: asemenyuk, herrick
2021-04-07 23:11:22 +00:00
Vladimir Ivanov
6e2b82a45f 8264731: Introduce InstanceKlass::method_at_itable_or_null()
Reviewed-by: coleenp, dholmes
2021-04-07 21:07:12 +00:00
Kim Barrett
22b20f8e92 8264424: Support OopStorage bulk allocation
Reviewed-by: ayang, tschatzl
2021-04-07 19:43:19 +00:00
Alexandre Iline
ab3be7286a 8264863: Update JCov version to support JDK 17
Reviewed-by: erikj
2021-04-07 18:41:54 +00:00
Xin Liu
774e5ae009 8264742: member variable _monitor of MonitorLocker is redundant
Reviewed-by: coleenp, dholmes, phh
2021-04-07 17:51:25 +00:00
Anthony Scarpino
7a99a9874b 8262316: Reducing locks in RSA Blinding
Reviewed-by: jnimeh
2021-04-07 17:29:01 +00:00
Lutz Schmidt
d3fdd7399d 8264173: [s390] Improve Hardware Feature Detection And Reporting
Reviewed-by: mdoerr, goetz
2021-04-07 16:20:17 +00:00
Alexey Ivanov
9d6503978d 8263984: Invalidate printServices when there are no printers
Reviewed-by: serb, jdv
2021-04-07 15:29:52 +00:00
Phil Race
adb860ec10 8255800: Raster creation methods need some specification clean up
Reviewed-by: serb
2021-04-07 14:49:27 +00:00
Wang Huang
eab84554e8 8261137: Optimization of Box nodes in uncommon_trap
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Reviewed-by: kvn, vlivanov, thartmann
2021-04-07 10:48:17 +00:00
Alex Blewitt
92fad1b408 8264680: Use the blessed modifier order in java.desktop
Reviewed-by: serb, kizune, azvegint
2021-04-07 06:14:38 +00:00
Ioi Lam
17202c89d5 8264748: Do not include arguments.hpp from compilerDefinitions.hpp
Reviewed-by: gziemski, stefank
2021-04-07 05:37:37 +00:00
Ioi Lam
c3abdc9aad 8264797: Do not include klassVtable.hpp from instanceKlass.hpp
Reviewed-by: coleenp, stefank
2021-04-07 03:44:56 +00:00
Weijun Wang
eb5c097b6d 8262389: Use permitted_enctypes if default_tkt_enctypes or default_tgs_enctypes is not present
Reviewed-by: mullan
2021-04-06 23:58:21 +00:00
Jie Fu
bfb034abf9 8264524: jdk/internal/platform/docker/TestDockerMemoryMetrics.java fails due to swapping not working
Reviewed-by: sgehwolf
2021-04-06 23:03:45 +00:00
Aleksey Shipilev
a756d8d7ef 8264759: x86_32 Minimal VM build failure after JDK-8262355
Reviewed-by: thartmann, kvn
2021-04-06 18:14:15 +00:00
Jim Laskey
0f13e2277f 8264791: java/util/Random/RandomTestBsi1999.java failed "java.security.SecureRandom nextFloat consecutive"
Reviewed-by: darcy, bpb, dcubed
2021-04-06 17:05:42 +00:00
Michael McMahon
4bb80f3720 8262898: com/sun/net/httpserver/bugs/8199849/ParamTest.java times out
Reviewed-by: dfuchs
2021-04-06 16:01:59 +00:00
Xue-Lei Andrew Fan
2f5169965d 8264554: X509KeyManagerImpl calls getProtectionParameter with incorrect alias
Reviewed-by: mullan
2021-04-06 15:43:08 +00:00
Anton Kozlov
114e3c3e2d 8263856: Github Actions for macos/aarch64 cross-build
Reviewed-by: erikj
2021-04-06 13:45:46 +00:00
Aleksei Efimov
a611c462f9 8264048: Fix caching in Jar URL connections when an entry is missing
Co-authored-by: Daniel Fuchs <dfuchs@openjdk.org>
Reviewed-by: bchristi, dfuchs
2021-04-06 10:43:59 +00:00
Thomas Schatzl
bf26a2558f 8264027: Refactor "CLEANUP" region printing
Reviewed-by: kbarrett, ayang
2021-04-06 10:03:03 +00:00
Severin Gehwolf
eb6330e4f0 8264047: Duplicate global variable 'jvm' in libjavajpeg and libawt
Reviewed-by: serb
2021-04-06 09:43:50 +00:00
Nils Eliasson
81325483d8 8264359: Compiler directives should enable DebugNonSafepoints when PrintAssembly is requested
Reviewed-by: kvn, thartmann
2021-04-06 06:47:49 +00:00
Nils Eliasson
ec7b0028e8 8264626: C1 should be able to inline excluded methods
Reviewed-by: iveresov, thartmann
2021-04-06 06:47:00 +00:00
Ioi Lam
ff223530b6 8264565: Templatize num_arguments() functions of DCmd subclasses
Reviewed-by: coleenp, dholmes
2021-04-06 03:27:09 +00:00
Yi Yang
54b4070da7 8264634: CollectCLDClosure collects duplicated CLDs when dumping dynamic archive
Reviewed-by: minqi, iklam
2021-04-06 02:58:07 +00:00
Nick Gasson
43d4a6f615 8264564: AArch64: use MOVI instead of FMOV to zero FP register
Reviewed-by: aph
2021-04-06 02:44:05 +00:00
Hui Shi
dc608fd0f3 8264411: serviceability/jvmti/HeapMonitor tests intermittently fail due to large TLAB size
Reviewed-by: sspitsyn, cjplummer
2021-04-06 01:36:55 +00:00
Yasumasa Suenaga
b1a225e119 8263565: NPE was thrown when sun.jvm.hotspot.rmi.serverNamePrefix was set
Reviewed-by: cjplummer, amenkov
2021-04-06 00:09:04 +00:00
Yasumasa Suenaga
c41cd1521f 8264686: ClhsdbTestConnectArgument.java should use SATestUtils::validateSADebugDPrivileges
Reviewed-by: cjplummer
2021-04-05 23:48:30 +00:00
Jorn Vernee
b7baca7f32 8264288: Performance issue with MethodHandle.asCollector
Reviewed-by: jrose, vlivanov
2021-04-05 20:05:07 +00:00
Jim Laskey
920189918e 8264729: Random check-in failing header checks.
Reviewed-by: erikj, bpb
2021-04-05 19:03:18 +00:00
Yumin Qi
d920f8588c 8264540: WhiteBox.metaspaceReserveAlignment should return shared region alignment
Reviewed-by: ccheung, iklam
2021-04-05 18:31:12 +00:00
Brian Burkhalter
104e925dfd 8264512: jdk/test/jdk/java/util/prefs/ExportNode.java relies on default platform encoding
Reviewed-by: naoto
2021-04-05 16:42:09 +00:00
Jim Laskey
a0ec2cb289 8248862: Implement Enhanced Pseudo-Random Number Generators
Reviewed-by: darcy
2021-04-05 16:29:18 +00:00
Tejpal Rebari
39719da9d1 8253266: JList and JTable constructors should clear OPAQUE_SET before calling updateUI
Reviewed-by: psadhukhan, serb
2021-04-05 14:17:19 +00:00
Jim Laskey
a8005efde3 8166727: javac crashed: [jimage.dll+0x1942] ImageStrings::find+0x28
Reviewed-by: iklam, alanb
2021-04-05 14:12:26 +00:00
Anton Kozlov
7f9ece23dc 8264650: Cross-compilation to macos/aarch64
Reviewed-by: erikj
2021-04-05 06:58:11 +00:00
Jayathirth D V
0039c18e08 8264475: CopyArea ignores clip state in metal rendering pipeline
8251036: SwingSet2 - Dragging internal frame inside jframe leaves artifacts with MetalLookAndFeel

Reviewed-by: aghaisas, psadhukhan
2021-04-05 05:28:21 +00:00
Jatin Bhateja
f084bd2f61 8262355: Support for AVX-512 opmask register allocation.
Reviewed-by: vlivanov, njian, kvn
2021-04-04 17:47:23 +00:00
Kim Barrett
078066695b 8254050: HotSpot Style Guide should permit using the "override" virtual specifier
Reviewed-by: dholmes, jrose, stuefe, tschatzl, dcubed, iklam, kvn
2021-04-04 04:24:37 +00:00
Daniel D. Daugherty
f259eeaf65 8264393: JDK-8258284 introduced dangling TLH race
Reviewed-by: dholmes, rehn, eosterlund
2021-04-03 19:06:34 +00:00
Daniel D. Daugherty
9b2232bc1f 8264123: add ThreadsList.is_valid() support
Reviewed-by: dholmes, eosterlund, rehn
2021-04-03 19:03:04 +00:00
Jonathan Gibbons
e8eda655bb 8264664: use text blocks in javac module tests
Reviewed-by: darcy
2021-04-03 01:18:00 +00:00
Doug Lea
cec66cf8ef 8264572: ForkJoinPool.getCommonPoolParallelism() reports always 1
Reviewed-by: alanb
2021-04-02 22:44:20 +00:00
Daniel D. Daugherty
9c283da175 8264662: ProblemList vmTestbase/jit/escape/AdaptiveBlocking/AdaptiveBlocking001/AdaptiveBlocking001.java on win-x64 with ZGC
Reviewed-by: hseigel
2021-04-02 21:32:54 +00:00
Jonathan Gibbons
eb0ac86dc6 8264655: Minor internal doc comment cleanup
Reviewed-by: prappo
2021-04-02 20:47:35 +00:00
Brian Burkhalter
3991b329b1 8264539: Improve failure message of java/nio/file/WatchService/SensitivityModifier.java
Reviewed-by: alanb
2021-04-02 19:53:18 +00:00
Daniel D. Daugherty
4133dedeef 8264658: ProblemList javax/swing/JInternalFrame/8146321/JInternalFrameIconTest.java on linux-x64
Reviewed-by: pbansal
2021-04-02 19:17:05 +00:00
Daniel D. Daugherty
220ddbd99e 8264657: ProblemList java/awt/Focus/FrameMinimizeTest/FrameMinimizeTest.java on linux-x64
Reviewed-by: rriggs
2021-04-02 18:51:33 +00:00
Daniel D. Daugherty
d0f3cc92bc 8264656: ProblemList sun/security/ssl/SSLSocketImpl/SSLSocketImplThrowsWrongExceptions.java on linux-x64
Reviewed-by: rriggs
2021-04-02 18:13:20 +00:00
Naoto Sato
6c145c4768 8264544: Case-insensitive comparison issue with supplementary characters.
Co-authored-by: Chris Johnson <chriswjohnson.jdk@gmail.com>
Reviewed-by: joehw, iris, alanb
2021-04-02 16:32:45 +00:00
Vladimir Ivanov
f60e81bf7b 8264548: Dependencies: ClassHierarchyWalker::is_witness() cleanups
Reviewed-by: kvn
2021-04-02 16:10:02 +00:00
Xue-Lei Andrew Fan
177bc84fe8 8264606: More comment for ECDH public key validation
Reviewed-by: wetmore
2021-04-02 15:23:23 +00:00
Coleen Phillimore
885916eda0 8262280: Incorrect exception handling for VMThread in class redefinition
Reviewed-by: hseigel
2021-04-02 13:05:15 +00:00
Xiaohong Gong
7d0a0bad7f 8264109: Add vectorized implementation for VectorMask.andNot()
Reviewed-by: psandoz, njian
2021-04-02 10:00:47 +00:00
Ningsheng Jian
0935eaa4b4 8264409: AArch64: generate better code for Vector API allTrue
Reviewed-by: adinn, pli
2021-04-02 09:31:20 +00:00
Christoph Göttschkes
4793557fa8 8264502: (fc) FileDispatcherImpl.setDirect0 might return uninitialized variable on some platforms
Reviewed-by: alanb, bpb, michaelm
2021-04-02 09:19:53 +00:00
Jie Fu
da643cdb20 8264526: javax/swing/text/html/parser/Parser/8078268/bug8078268.java timeout
Reviewed-by: serb
2021-04-02 08:25:26 +00:00
Joe Darcy
66d9961cbd 8205502: Make exception message from AnnotationInvocationHandler more informative
Reviewed-by: bpb, naoto, iris
2021-04-01 23:13:19 +00:00
Coleen Phillimore
5e59d28def 8262046: Clean up parallel class loading code and comments
Reviewed-by: lfoltan, iklam
2021-04-01 21:16:58 +00:00
Andy Herrick
04f24fe9ad 8264403: [macos]: App names containing '.' characters results in an error message when launching
Reviewed-by: asemenyuk
2021-04-01 20:39:38 +00:00
Joe Darcy
b953386de1 8264609: Number.{byteValue, shortValue} spec should use @implSpec
Reviewed-by: psandoz, bpb
2021-04-01 19:46:56 +00:00
Ioi Lam
5858399062 8264285: Clean the modification of ccstr JVM flags
Reviewed-by: dholmes, coleenp
2021-04-01 18:25:14 +00:00
Vladimir Kozlov
6e0da9961f 8263448: CTW: fatal error: meet not symmetric
Reviewed-by: roland
2021-04-01 17:03:14 +00:00
Joe Darcy
328e9514a8 8169629: Annotations with lambda expressions cause AnnotationFormatError
Reviewed-by: jfranck
2021-04-01 16:46:32 +00:00
Jie Fu
c04a743bd4 8264557: Incorrect copyright year for test/micro/org/openjdk/bench/java/lang/MathBench.java after JDK-8264054
Reviewed-by: neliasso
2021-04-01 15:12:22 +00:00
Coleen Phillimore
4b19771401 8264150: CDS dumping code calls TRAPS functions in VM thread
Reviewed-by: dholmes, iklam
2021-04-01 15:09:12 +00:00
Coleen Phillimore
1dc75e9ef5 8264538: Rename SystemDictionary::parse_stream
Reviewed-by: lfoltan, hseigel
2021-04-01 14:55:11 +00:00
Vladimir Ivanov
80681b5470 8264546: Dependencies: Context class is always an InstanceKlass
Reviewed-by: kvn
2021-04-01 12:56:19 +00:00
Jan Lahoda
fdfa1dda08 8264306: Non deterministic generation of java/lang/invoke/MemberName.class
Reviewed-by: shade, jfranck
2021-04-01 11:38:45 +00:00
Hui Shi
011f6d13ab 8264223: CodeHeap::verify fails extra_hops assertion in fastdebug test
Reviewed-by: lucy, shade
2021-04-01 10:43:45 +00:00
Prasanta Sadhukhan
0696fd0e81 8263496: MetalHighContrastTheme.getControlHighlight cleanup
Reviewed-by: azvegint
2021-04-01 07:35:17 +00:00
Andrey Turbanov
6cf109503a 8264484: Replace uses of StringBuffer with StringBuilder in jdk.hotspot.agent
Reviewed-by: kevinw, amenkov, ysuenaga
2021-04-01 07:22:41 +00:00
Alex Blewitt
d2df9a7df8 8264331: Use the blessed modifier order in jdk.compiler
Reviewed-by: vromero, iris, shade
2021-04-01 06:53:54 +00:00
Alexander Scherbatiy
0228734902 8262470: Printed GlyphVector outline with low DPI has bad quality on Windows
Reviewed-by: serb, psadhukhan
2021-04-01 06:45:20 +00:00
Tagir F. Valeev
3997c99e0a 8264222: Use switch expression in jshell where possible
Reviewed-by: briangoetz
2021-04-01 06:02:21 +00:00
Koichi Sakata
39f0b27a12 8176026: SA: Huge heap sizes cause a negative value to be displayed in the jhisto heap total
Reviewed-by: cjplummer, kevinw, ysuenaga
2021-04-01 04:10:15 +00:00
Yi Yang
de495df78d 8264413: Data is written to file header even if its CRC32 was calculated
Reviewed-by: ccheung, minqi
2021-04-01 02:07:48 +00:00
Sandhya Viswanathan
52d8a22943 8264054: Bad XMM performance on java.lang.MathBench.sqrtDouble
Co-authored-by: Eric Caspole <ecaspole@openjdk.org>
Co-authored-by: Charlie Hunt <huntch@openjdk.org>
Reviewed-by: neliasso, kvn, vlivanov
2021-04-01 00:34:00 +00:00
Sergey Bylokhov
16acfafb6b 8012229: [lcms] Improve performance of color conversion for images with alpha channel
Reviewed-by: azvegint
2021-03-31 23:02:55 +00:00
Your Name
cb70ab0cb9 8263235: sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError
Reviewed-by: psadhukhan, serb
2021-03-31 20:33:16 +00:00
Man Cao
e2ec997b55 8263551: Provide shared lock-free FIFO queue implementation
Create a generalized lock-free queue implementation based on G1DirtyCardQueueSet::Queue.

Reviewed-by: kbarrett, iwalulya
2021-03-31 18:29:37 +00:00
Stefan Karlsson
dec344709f 8264346: nullptr_t undefined in global namespace for clang+libstdc++
Reviewed-by: dholmes, kbarrett
2021-03-31 16:43:56 +00:00
Stefan Karlsson
0fa35728a7 8264489: Add more logging to LargeCopyWithMark.java
Reviewed-by: kbarrett, alanb, bpb
2021-03-31 16:43:14 +00:00
Alex Blewitt
f43d14a2ff 8264396: Use the blessed modifier order in jdk.internal.jvmstat
Reviewed-by: cjplummer, kevinw, shade
2021-03-31 16:42:14 +00:00
Eric Caspole
6225ae636e 8264466: Cut-paste error in InterfaceCalls JMH
Reviewed-by: shade, thartmann
2021-03-31 15:20:05 +00:00
Coleen Phillimore
40c3249160 8264149: BreakpointInfo::set allocates metaspace object in VM thread
Reviewed-by: dholmes, iklam
2021-03-31 12:43:03 +00:00
Albert Mingkun Yang
999c134884 8264417: ParallelCompactData::region_offset should not accept pointers outside the current region
Reviewed-by: tschatzl, iwalulya
2021-03-31 11:35:10 +00:00
Sebastian Stenzel
604b14c43d 8264112: (fs) Reorder methods/constructor/fields in UnixUserDefinedFileAttributeView.java
Reviewed-by: alanb
2021-03-31 10:37:02 +00:00
Martin Doerr
9061271b0b 8261957: [PPC64] Support for Concurrent Thread-Stack Processing
Reviewed-by: lucy, nradomski
2021-03-31 09:37:16 +00:00
Anton Kozlov
8a4a9117f5 8262894: [macos_aarch64] SIGBUS in Assembler::ld_st2
Co-authored-by: Mikael Vidstedt <mikael@openjdk.org>
Reviewed-by: dholmes, gziemski
2021-03-31 09:34:12 +00:00
Christian Hagedorn
ab6faa607b 8263582: WB_IsMethodCompilable ignores compiler directives
Reviewed-by: iveresov, kvn, neliasso
2021-03-31 06:33:45 +00:00
Yumin Qi
928fa5b5f9 8244540: Print more information with -XX:+PrintSharedArchiveAndExit
Reviewed-by: iklam, ccheung
2021-03-31 03:10:38 +00:00
Vladimir Kozlov
e073486ffe 8262093: java/util/concurrent/tck/JSR166TestCase.java failed "assert(false) failed: unexpected node"
Reviewed-by: thartmann
2021-03-31 01:16:06 +00:00
Joe Darcy
815248ab27 8264148: Update spec for exceptions retrofitted for exception chaining
Reviewed-by: rriggs, smarks
2021-03-30 19:59:59 +00:00
Brian Burkhalter
353807c5f1 8263898: (fs) Files.newOutputStream on the "NUL" special device throws FileSystemException: "nul: Incorrect function" (win)
Reviewed-by: jpai, alanb
2021-03-30 18:18:37 +00:00
Attila Szegedi
2bd80f94a1 8264326: Modernize javax.script.ScriptEngineManager and related classes' implementation
Reviewed-by: sundar
2021-03-30 18:13:39 +00:00
Attila Szegedi
b08d6383b9 8262503: Support records in Dynalink
Reviewed-by: sundar
2021-03-30 18:06:34 +00:00
Hui Shi
21e7402b04 8263707: C1 RangeCheckEliminator support constant array and NewMultiArray
Reviewed-by: thartmann, neliasso
2021-03-30 16:04:59 +00:00
Patricio Chilano Mateo
2ad6f2d9bc 8263896: Make not_suspended parameter from ObjectMonitor::exit() have default value
Reviewed-by: rehn, dcubed, dholmes
2021-03-30 15:00:38 +00:00
Yi Yang
b65219881d 8264429: Test runtime/cds/appcds/VerifyWithDefaultArchive.java assumes OpenJDK build
Reviewed-by: dcubed, shade
2021-03-30 14:45:55 +00:00
Stefan Karlsson
2c9365d79c 8264271: Avoid creating non_oop_word oops
Reviewed-by: kbarrett, pliden
2021-03-30 13:28:37 +00:00
Sebastian Stenzel
daeca3fff2 8262958: (fs) UnixUserDefinedFileAttributeView cleanup
Reviewed-by: alanb
2021-03-30 13:13:08 +00:00
Hannes Wallnöfer
af02883575 8264191: Javadoc search is broken in Internet Explorer
Reviewed-by: jjg
2021-03-30 12:21:49 +00:00
Harold Seigel
6e74c3ab94 8264193: Remove TRAPS parameters for modules and defaultmethods
Reviewed-by: lfoltan, ccheung, coleenp, dholmes
2021-03-30 12:19:13 +00:00
Zhengyu Gu
ee5e00b05f 8264279: Shenandoah: Missing handshake after JDK-8263427
Reviewed-by: shade
2021-03-30 11:43:39 +00:00
Zhengyu Gu
ac604a18c9 8264374: Shenandoah: Remove leftover parallel reference processing argument
Reviewed-by: shade
2021-03-30 11:42:46 +00:00
Eric Liu
f3726a8700 8264020: Optimize double negation elimination
Reviewed-by: thartmann, chagedorn
2021-03-30 09:57:19 +00:00
Nils Eliasson
4ffa41c3db 8263615: Cleanup tightly_coupled_allocation
Reviewed-by: kvn, thartmann
2021-03-30 09:22:40 +00:00
Kim Barrett
4ea6abfbd1 8264324: Simplify allocation list management in OopStorage::reduce_deferred_updates
Reviewed-by: tschatzl, ayang
2021-03-30 08:46:07 +00:00
Alex Blewitt
8735259f05 8264333: Use the blessed modifier order in jdk.jshell
Reviewed-by: iris, shade
2021-03-30 08:15:50 +00:00
Roland Westrelin
d2a63f259e 8264360: Loop strip mining verification fails with "should be on the backedge"
Reviewed-by: kvn, thartmann
2021-03-30 07:58:49 +00:00
Roland Westrelin
8100a20e98 8263971: C2 crashes with SIGFPE with -XX:+StressGCM and -XX:+StressIGVN
Reviewed-by: chagedorn, thartmann
2021-03-30 07:40:49 +00:00
Yi Yang
bcdf4694e0 8264337: VM crashed when -XX:+VerifySharedSpaces
Reviewed-by: minqi, ccheung, shade
2021-03-30 07:20:10 +00:00
Sergey Tsypanov
1a681fa743 8263560: Remove needless wrapping with BufferedInputStream
Reviewed-by: prr, alanb, dfuchs, serb
2021-03-30 06:47:54 +00:00
Tom Rodriguez
182b11c31a 8264016: [JVMCI] add some thread local fields for use by JVMCI
Reviewed-by: dholmes, iklam, coleenp
2021-03-30 04:26:56 +00:00
Roger Riggs
8cf1c62c34 8263754: HexFormat 'fromHex' methods should be static
Reviewed-by: redestad, naoto, chegar
2021-03-29 20:38:10 +00:00
Ziyi Luo
a5d7de2351 8263404: RsaPrivateKeySpec is always recognized as RSAPrivateCrtKeySpec in RSAKeyFactory.engineGetKeySpec
Co-authored-by: Greg Rubin <rubin@amazon.com>
Reviewed-by: valeriep
2021-03-29 20:14:47 +00:00
Alexey Semenyuk
128c0c97a5 8248418: jpackage fails to extract main class and version from app module linked in external runtime
Reviewed-by: herrick, almatvee
2021-03-29 19:51:39 +00:00
Alexander Zuev
fd45694c58 8264344: Outdated links in JavaComponentAccessibility.m
Reviewed-by: dmarkov, pbansal, trebari, azvegint
2021-03-29 17:03:24 +00:00
Jonathan Gibbons
f17ea9e66b 8262899: TestRedirectLinks fails
Reviewed-by: prappo
2021-03-29 16:12:49 +00:00
Erik Gahlin
963f1fc6de 8264309: JFR: Improve .jfc parser
Reviewed-by: mgronlun
2021-03-29 13:56:44 +00:00
Alex Blewitt
364cce1485 8264332: Use the blessed modifier order in jdk.charsets
Reviewed-by: alanb, shade
2021-03-29 13:32:55 +00:00
Andrey Turbanov
fbbd98ba53 8264029: Replace uses of StringBuffer with StringBuilder in java.base
Reviewed-by: shade
2021-03-29 13:31:25 +00:00
Stefan Karlsson
019080e470 8264268: Don't use oop types for derived pointers
Reviewed-by: jrose, kbarrett
2021-03-29 13:27:47 +00:00
Tobias Hartmann
3516c2650c 8263591: Two C2 compiler phases with the name "after matching"
Reviewed-by: neliasso, chagedorn
2021-03-29 12:41:09 +00:00
Tobias Hartmann
3caea470e1 8262739: String inflation C2 intrinsic prevents insertion of anti-dependencies
Reviewed-by: neliasso, chagedorn
2021-03-29 12:40:11 +00:00
Harold Seigel
19a6ac46ce 8264142: Remove TRAPS/THREAD parameters for verifier related functions
Reviewed-by: gziemski, coleenp, iklam, dholmes
2021-03-29 12:39:15 +00:00
Christian Hagedorn
aefc1560b5 8264179: [TESTBUG] Some compiler tests fail when running without C2
Reviewed-by: kvn, jiefu
2021-03-29 08:03:47 +00:00
Alex Blewitt
30b4b17ccb 8264334: Use the blessed modifier order in jdk.jpackage
Reviewed-by: herrick, shade
2021-03-29 08:01:42 +00:00
Aleksey Shipilev
8ee9a05d37 8259623: JfrTypeSet::_subsystem_callback is left dangling after use
Reviewed-by: mgronlun
2021-03-29 08:00:01 +00:00
Fei Yang
1f54ed07ad 8264096: slowdebug jvm crashes when StrInflatedCopy match rule is not supported
Co-authored-by: Yadong Wang <yadonn.wang@huawei.com>
Reviewed-by: thartmann
2021-03-29 07:45:49 +00:00
Xin Liu
447e0dfe6b 8263769: simplify PhaseMacroExpand::extract_call_projections()
Reviewed-by: vlivanov, thartmann
2021-03-29 06:39:07 +00:00
John Jiang
99b4bab366 8263188: JSSE should fail fast if there isn't supported signature algorithm
Reviewed-by: xuelei
2021-03-29 05:53:05 +00:00
Sergey Bylokhov
6678b01c57 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java
Reviewed-by: kizune, trebari, pbansal
2021-03-29 03:41:15 +00:00
Pengfei Li
2fa6a3c47c 8264006: Fix AOT library loading on CPUs with 256-byte dcache line
Reviewed-by: kvn, dholmes, aph
2021-03-29 01:09:43 +00:00
Xue-Lei Andrew Fan
c986457f82 8264329: Z cannot be 1 for Diffie-Hellman key agreement
Reviewed-by: wetmore
2021-03-28 20:37:26 +00:00
Yasumasa Suenaga
a209ed01ba 8263670: pmap and pstack in jhsdb do not work on debug server
Reviewed-by: cjplummer, sspitsyn
2021-03-27 11:15:17 +00:00
Jie Fu
38e0a58f6c 8264273: macOS: zero VM is broken due to no member named 'is_cpu_emulated' after JDK-8261966
Reviewed-by: iklam
2021-03-27 09:54:11 +00:00
Calvin Cheung
c9d2d024a3 8263632: Improve exception handling of APIs in classLoader.cpp
Reviewed-by: iklam, dholmes, coleenp
2021-03-26 21:29:53 +00:00
Alex Blewitt
59ed1fa28c 8264087: Use the blessed modifier order in jdk.jconsole
Reviewed-by: alanb, amenkov, redestad
2021-03-26 21:24:57 +00:00
Tom Rodriguez
054e0a4245 8264017: Correctly report inlined frame in JFR sampling
Reviewed-by: jbachorik, mgronlun
2021-03-26 20:20:24 +00:00
Vladimir Kempik
d6bb1537f3 8264240: [macos_aarch64] enable appcds support after JDK-8263002
Reviewed-by: erikj
2021-03-26 19:50:01 +00:00
Naoto Sato
7284f013ea 8262110: DST starts from incorrect time in 2038
8073446: TimeZone getOffset API does not  return a dst offset between years 2038-2137

Reviewed-by: rriggs
2021-03-26 17:13:49 +00:00
Albert Mingkun Yang
3a28dc8213 8264178: Unused method Threads::nmethods_do
Reviewed-by: coleenp, dholmes
2021-03-26 16:58:50 +00:00
Roland Westrelin
33c94ffc81 8263376: CTW (Shenandoah): assert(mems <= 1) failed: No node right after call if multiple mem projections
Reviewed-by: kvn, chagedorn
2021-03-26 16:49:26 +00:00
Sebastian Stenzel
4e74de4b2e 8264111: (fs) Leaking NativeBuffers in case of errors during UnixUserDefinedFileAttributeView.read/write
Reviewed-by: alanb
2021-03-26 14:56:52 +00:00
Andy Herrick
57115fa23d 8189198: Add "forRemoval = true" to Applet API deprecations
Reviewed-by: iris, almatvee, kcr, prr
2021-03-26 14:48:00 +00:00
Jie Fu
b8122d6e3b 8264220: jdk/javadoc/doclet/testRelatedPackages/TestRelatedPackages.java fails to compile
Reviewed-by: hannesw
2021-03-26 13:12:14 +00:00
Coleen Phillimore
507b690f88 8264126: Remove TRAPS/THREAD parameter for class loading functions
Reviewed-by: ccheung, iklam, dholmes
2021-03-26 13:11:34 +00:00
Prasanta Sadhukhan
f3eed05236 8263928: Add JAWT test files for mac
Reviewed-by: jdv
2021-03-26 11:30:29 +00:00
Prasanta Sadhukhan
4fbb7c24c2 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing
Reviewed-by: aivanov, darcy
2021-03-26 11:29:33 +00:00
Alex Blewitt
e47dfb8e28 8264062: Use the blessed modifier order in jdk.jfr
Reviewed-by: mgronlun
2021-03-26 10:24:38 +00:00
Doug Simon
5a930c42de 8264135: UnsafeGetStableArrayElement should account for different JIT implementation details
Reviewed-by: vlivanov, never
2021-03-26 10:11:02 +00:00
Kim Barrett
bb354b9d1c 8264166: OopStorage should support specifying MEMFLAGS for allocations
Reviewed-by: tschatzl, stefank
2021-03-26 07:44:22 +00:00
Ioi Lam
41657b15ac 8261551: Remove special CDS handling in Metaspace::allocate
Reviewed-by: minqi, dholmes, stuefe
2021-03-26 03:37:14 +00:00
Igor Veresov
fe8ef3223d 8264151: ciMethod::ensure_method_data() should return false is loading resulted in empty state
Reviewed-by: dlong, kvn
2021-03-26 01:54:38 +00:00
Erik Gahlin
4e708e58dc 8260862: JFR: New configure command for the jfr tool
Reviewed-by: mgronlun
2021-03-25 20:43:16 +00:00
Joe Darcy
259319669c 8264161: BigDecimal#stripTrailingZeros can throw undocumented ArithmeticException
Reviewed-by: bpb
2021-03-25 20:42:34 +00:00
Alex Menkov
2a5e0dd360 8262081: vmTestbase/nsk/jdi/ThreadDeathRequest/addThreadFilter/addthreadfilter001/TestDescription.java failed with "ERROR: eventSet1.size() != 3 :: 2"
Reviewed-by: cjplummer, lmesnik, sspitsyn
2021-03-25 19:47:35 +00:00
Anthony Scarpino
374272fd13 8261502: ECDHKeyAgreement: Allows alternate ECPrivateKey impl and revised exception handling
Reviewed-by: jnimeh
2021-03-25 19:18:44 +00:00
Anton Kozlov
dbc9e4b50c 8253795: Implementation of JEP 391: macOS/AArch64 Port
8253816: Support macOS W^X
8253817: Support macOS Aarch64 ABI in Interpreter
8253818: Support macOS Aarch64 ABI for compiled wrappers
8253819: Implement os/cpu for macOS/AArch64
8253839: Update tests and JDK code for macOS/Aarch64
8254941: Implement Serviceability Agent for macOS/AArch64
8255776: Change build system for macOS/AArch64
8262903: [macos_aarch64] Thread::current() called on detached thread

Co-authored-by: Vladimir Kempik <vkempik@openjdk.org>
Co-authored-by: Bernhard Urban-Forster <burban@openjdk.org>
Co-authored-by: Ludovic Henry <luhenry@openjdk.org>
Co-authored-by: Monica Beckwith <mbeckwit@openjdk.org>
Reviewed-by: erikj, ihse, prr, cjplummer, stefank, gziemski, aph, mbeckwit, luhenry
2021-03-25 18:10:18 +00:00
Brian Burkhalter
b006f22f1f 4833719: (bf) Views of MappedByteBuffers are not MappedByteBuffers, and cannot be forced
Reviewed-by: adinn
2021-03-25 15:30:50 +00:00
Alexey Semenyuk
8307aa6dcb 8264165: jpackage BasicTest fails after JDK-8220266: Check help text contains plaform specific parameters
Reviewed-by: herrick, dcubed
2021-03-25 15:22:39 +00:00
Alexander Zvegintsev
c037e1edaf 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim()
Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan
2021-03-25 13:49:57 +00:00
Coleen Phillimore
a1e717f13e 8264146: Make Mutex point to rather than embed _name
Reviewed-by: redestad, dholmes
2021-03-25 12:37:28 +00:00
Hannes Wallnöfer
f69afba527 8263300: add HtmlId for the block containing a class's description.
Reviewed-by: jjg
2021-03-25 08:59:29 +00:00
Hannes Wallnöfer
d82464f851 8263528: Make static page ids safe from collision with language elements
Reviewed-by: jjg
2021-03-25 08:56:49 +00:00
Thomas Stuefe
d602ae080b 8263884: Clean up os::is_allocatable() across Posix platforms
Reviewed-by: stefank
2021-03-25 08:54:05 +00:00
Hannes Wallnöfer
a9d287a667 8260388: Listing (sub)packages at package level of API documentation
Reviewed-by: jjg
2021-03-25 08:51:50 +00:00
Richard Reingruber
8120064dcc 8263781: C2: Cannot hoist independent load above arraycopy
Reviewed-by: thartmann, neliasso, kvn
2021-03-25 07:21:36 +00:00
Richard Reingruber
9689863ac0 8262295: C2: Out-of-Bounds Array Load from Clone Source
Reviewed-by: kvn, roland, neliasso, thartmann
2021-03-25 06:52:03 +00:00
Xue-Lei Andrew Fan
a678a38dd9 8263743: redundant lock in SSLSocketImpl
Reviewed-by: jnimeh
2021-03-25 05:16:37 +00:00
Prasanta Sadhukhan
3fcb499ce6 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean
Reviewed-by: trebari, aivanov, azvegint, darcy
2021-03-25 04:08:07 +00:00
Prajwal Kumaraswamy
4155533258 8258753: StartTlsResponse.close() hangs due to synchronization issues
Reviewed-by: xuelei
2021-03-25 03:35:49 +00:00
Ningsheng Jian
3e18330a33 8264018: AArch64: NEON loadV2 and storeV2 addressing is wrong
Reviewed-by: adinn, aph
2021-03-25 01:57:03 +00:00
Jonathan Gibbons
0ff81682e6 8258957: DocLint: check for HTML start element at end of body
Reviewed-by: vromero
2021-03-24 23:58:16 +00:00
Alexey Semenyuk
3d7f91223e 8220266: add support for additional metadata in add/remove programs
Reviewed-by: herrick, almatvee
2021-03-24 23:21:14 +00:00
Sergey Bylokhov
37f494cafa 8260619: Add final modifier to several DataFlavor static fields
Reviewed-by: azvegint, kizune
2021-03-24 21:41:14 +00:00
Sergey Bylokhov
cfc9aa34fd 8264002: Delete outdated assumptions about ColorSpace initialization
Reviewed-by: azvegint
2021-03-24 21:31:32 +00:00
Stefan Johansson
623f0b6bc6 8262235: Remove unnecessary logic in hugetlbfs_sanity_check()
Reviewed-by: iwalulya, tschatzl
2021-03-24 20:28:04 +00:00
Jonathan Gibbons
1a13c9ef83 8263473: Update annotation terminology (2)
Reviewed-by: hannesw
2021-03-24 20:13:01 +00:00
Jonathan Gibbons
3e751a5a9c 8263198: javadoc HELP page
Reviewed-by: hannesw
2021-03-24 19:51:35 +00:00
Andy Herrick
5ca5962d8f 8259926: Error in jpackage sample usage in the help text
Reviewed-by: asemenyuk, almatvee, naoto
2021-03-24 16:36:02 +00:00
Andy Herrick
70d34017b5 8263887: Re-create default icons
Reviewed-by: almatvee, asemenyuk
2021-03-24 16:34:22 +00:00
Aleksei Voitylov
133a63b4a1 8263968: CDS: java/lang/ModuleLayer.EMPTY_LAYER should be singleton
Reviewed-by: iklam, dholmes, alanb, redestad
2021-03-24 16:32:36 +00:00
Thomas Schatzl
3aee5ad2dd 8264026: Remove dependency between free collection set and eagerly reclaim humongous object tasks
Reviewed-by: sjohanss, ayang
2021-03-24 16:00:39 +00:00
Andy Herrick
deda80f022 8264057: [redo] JDK-8248904: Add support to jpackage for the Mac App Store.
Co-authored-by: Erwin Morrhey <erwin.morrhey@gluonhq.com>
Reviewed-by: kcr, asemenyuk
2021-03-24 15:39:54 +00:00
Vladimir Kozlov
57c3f271d3 8263989: Cleanup in EA
Reviewed-by: vlivanov, neliasso
2021-03-24 15:31:13 +00:00
Gerard Ziemski
4d8e9860e2 8261966: macOS M1: report in hs_err log if we are running x86 code in emulation mode (Rosetta)
Reviewed-by: dcubed, mikael, dholmes
2021-03-24 15:18:39 +00:00
Coleen Phillimore
bc91596ca1 8264051: Remove unused TRAPS parameters from runtime functions
Reviewed-by: iklam, dholmes
2021-03-24 12:18:57 +00:00
Coleen Phillimore
5d7e93c86d 8264004: Don't use TRAPS if no exceptions are thrown
Reviewed-by: dholmes, iklam, hseigel, dcubed
2021-03-24 12:15:51 +00:00
Zhengyu Gu
9ee0b9a17b 8264052: Shenandoah: Backout 8263832
Reviewed-by: shade
2021-03-24 12:14:14 +00:00
Michael McMahon
e55aa41f57 8263899: HttpClient throws NPE in AuthenticationFilter when parsing www-authenticate head
Reviewed-by: dfuchs, chegar
2021-03-24 11:59:19 +00:00
Jan Lahoda
6c0fbf70e8 8254196: jshell infinite loops when startup script contains System.exit call
Reviewed-by: sundar
2021-03-24 10:34:31 +00:00
Stefan Karlsson
a79f095697 8263721: Unify oop casting
Reviewed-by: kbarrett, coleenp
2021-03-24 10:28:38 +00:00
Patrick Concannon
329697b02e 8263358: Update java.lang to use instanceof pattern variable
Reviewed-by: iris, chegar, mchung, dfuchs
2021-03-24 09:57:22 +00:00
Erik Gahlin
ae9af57bf6 8264001: JFR: Modernize implementation
Reviewed-by: mgronlun
2021-03-24 09:54:29 +00:00
Ian Graves
fad8484058 8263411: Convert jshell tool to use Stream.toList()
Reviewed-by: jlahoda
2021-03-24 09:31:54 +00:00
Jie Fu
06d46d6c0b 8264008: Incorrect metaspace statistics after JEP 387 when UseCompressedClassPointers is off
Reviewed-by: stuefe
2021-03-24 09:30:54 +00:00
Alex Blewitt
45e1bab87c 8264091: Use the blessed modifier order in java.logging
Reviewed-by: lancea, iris, shade
2021-03-24 07:25:32 +00:00
Aleksey Shipilev
cb776edfd7 8263981: java.awt.image.ComponentSampleModel equals/hashcode use numBands twice
Reviewed-by: serb, azvegint
2021-03-24 07:01:25 +00:00
Aleksey Shipilev
da512bf565 8264050: Remove unused field VM_HeapWalkOperation::_collecting_heap_roots
Reviewed-by: coleenp, tschatzl
2021-03-24 06:49:55 +00:00
Wang Huang
6e3a158a65 8263352: assert(use == polladr) failed: the use should be a safepoint polling
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Wu Yan <wuyan34@huawei.com>
Reviewed-by: kvn
2021-03-24 06:30:50 +00:00
Erik Gahlin
8d63bb6a60 8260565: JFR: Fix copyright header in tests
Reviewed-by: mseledtsov, mgronlun
2021-03-24 04:06:48 +00:00
Weijun Wang
0b2aa1b605 8263978: Clarify why 0 argument is ignored in SecureRandom::setSeed
Reviewed-by: valeriep
2021-03-23 22:23:37 +00:00
Andy Herrick
15bcf6d9f5 8264055: backout JDK-8248904 in order to resubmit with additional attribution.
Reviewed-by: kcr, asemenyuk
2021-03-23 21:45:40 +00:00
Kim Barrett
2425462a84 8263903: Use Cleaner instead of finalize to auto stop Timer thread
Reviewed-by: dholmes, alanb, bchristi, rriggs, mchung
2021-03-23 21:16:35 +00:00
Ioi Lam
35102cb03f 8263992: Remove dead code NativeLookup::base_library_lookup
Reviewed-by: coleenp, dholmes
2021-03-23 21:15:38 +00:00
Koichi Sakata
91d86e6ac1 8263572: Output from jstack mixed mode is misaligned
Reviewed-by: cjplummer, sspitsyn
2021-03-23 21:12:54 +00:00
Kim Barrett
47ef038977 8263905: Remove finalize methods for SocketInput/OutputStream
Reviewed-by: alanb, vtewari, dfuchs, mchung
2021-03-23 20:54:23 +00:00
Calvin Cheung
1c9817b0bc 8261479: CDS runtime code should check exceptions
Reviewed-by: minqi, dholmes, iklam
2021-03-23 19:05:50 +00:00
Albert Mingkun Yang
087c8bfb5f 8264041: Incorrect comments for ParallelCompactData::summarize_dense_prefix
Reviewed-by: tschatzl
2021-03-23 18:18:39 +00:00
Aleksey Shipilev
c087f3ed40 8263995: Incorrect double-checked locking in Types.arraySuperType()
Reviewed-by: mcimadamore, jlahoda
2021-03-23 17:48:19 +00:00
Brian Burkhalter
d7268fa3a6 8251942: PrintStream specification is not clear which flush method is automatically invoked
Reviewed-by: dfuchs, alanb
2021-03-23 16:06:21 +00:00
Brian Burkhalter
8fa34e4043 8241619: (fs) Files.newByteChannel(path, Set.of(CREATE_NEW, READ)) does not throw a FileAlreadyExistsException when the file exists
Reviewed-by: alanb
2021-03-23 16:03:59 +00:00
Albert Mingkun Yang
e9321cdc41 8263964: Redundant check in ObjectStartArray::object_starts_in_range
Reviewed-by: sjohanss, tschatzl
2021-03-23 13:40:48 +00:00
Michael McMahon
bd7a184b98 8263442: Potential bug in jdk.internal.net.http.common.Utils.CONTEXT_RESTRICTED
Reviewed-by: dfuchs
2021-03-23 13:25:56 +00:00
Andrey Turbanov
233536263e 8264032: Improve thread safety of Runtime.version()
Reviewed-by: shade, alanb
2021-03-23 13:21:44 +00:00
Prasanta Sadhukhan
8c1ab38ee2 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor
Reviewed-by: azvegint, pbansal
2021-03-23 12:15:03 +00:00
Coleen Phillimore
5bc382fb7a 8263976: Remove block allocation from BasicHashtable
Reviewed-by: lfoltan, iklam
2021-03-23 12:11:26 +00:00
Lutz Schmidt
fbd57bd498 8263260: [s390] Support latest hardware (z14 and z15)
Reviewed-by: goetz, mdoerr
2021-03-23 11:50:16 +00:00
Coleen Phillimore
de2ff25687 8263974: Move SystemDictionary::verify_protection_domain
Reviewed-by: hseigel, lfoltan, dholmes
2021-03-23 11:35:55 +00:00
Daniel Fuchs
9dad857ede 8263080: Obsolete relationship in MulticastSocket API documentation.
Reviewed-by: alanb
2021-03-23 10:39:42 +00:00
Nick Gasson
851474a8b8 8263649: AArch64: update cas.m4 to match current AD file
Reviewed-by: aph
2021-03-23 10:20:56 +00:00
Roland Westrelin
fd3a33a856 8263189: C2: assert(!had_error) failed: bad dominance
Reviewed-by: kvn, thartmann
2021-03-23 08:15:47 +00:00
Jie Fu
7b81f8e34b 8263915: runtime/cds/appcds/MismatchedPathTriggerMemoryRelease.java fails when UseCompressedClassPointers is off
Reviewed-by: minqi
2021-03-23 07:51:58 +00:00
Nils Eliasson
2da882c0fa 8262465: Very long compilation times and high memory consumption in C2 debug builds
Reviewed-by: kvn, thartmann
2021-03-23 07:45:48 +00:00
Evgeny Nikitin
0b03d04792 8167015: compiler/codecache/jmx/PoolsIndependenceTest.java timeout
Reviewed-by: kvn, thartmann
2021-03-23 06:55:05 +00:00
Aleksey Shipilev
df01b15b8b 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel
Reviewed-by: serb, pbansal, kizune
2021-03-23 06:54:27 +00:00
Aleksey Shipilev
57d8f1d09c 8263985: BCEscapeAnalyzer::invoke checks target->is_loaded() twice
Reviewed-by: kvn, thartmann
2021-03-23 06:53:45 +00:00
Aleksey Shipilev
4ef7c67bc6 8263979: Cleanup duplicate check in Unicode.contains
Reviewed-by: prappo, alanb
2021-03-23 06:52:58 +00:00
Joe Wang
289d48ae32 8261673: Move javadoc for the lookup mechanism to module-info
Reviewed-by: lancea, naoto, iris
2021-03-23 06:52:03 +00:00
Marcus G K Williams
7b6efd3b86 8263904: compiler/intrinsics/bmi/verifycode/BzhiTestI2L.java fails on x86_32
Reviewed-by: kvn, thartmann
2021-03-23 06:51:12 +00:00
Sibabrata Sahoo
036ae0ea3e 8225438: javax/net/ssl/TLSCommon/TestSessionLocalPrincipal.java failed with Read timed out
Reviewed-by: xuelei, rhalade, hchao
2021-03-23 06:48:01 +00:00
Sibabrata Sahoo
5a51d70987 8247895: SHA1PRNGReseed.java is calling setSeed(0)
Reviewed-by: weijun, rhalade
2021-03-23 06:46:20 +00:00
Yasumasa Suenaga
b2a52ea516 8263342: Add --connect option to jhsdb hsdb/clhsdb
Reviewed-by: cjplummer, sspitsyn
2021-03-23 06:27:20 +00:00
Tom Rodriguez
6b4c654186 8263776: [JVMCI] add helper to perform Java upcalls
Reviewed-by: kvn
2021-03-23 05:48:20 +00:00
Jie Fu
b23228d152 8263914: CDS fails to find the default shared archive on x86_32
Reviewed-by: dholmes, iklam
2021-03-23 01:18:38 +00:00
Jie Fu
a5e7a890fe 8263904: compiler/intrinsics/bmi/verifycode/BzhiTestI2L.java fails on x86_32
Reviewed-by: kvn
2021-03-22 23:14:07 +00:00
Leonid Mesnik
f62b1008ed 8263895: Test nsk/jvmti/GetThreadGroupChildren/getthrdgrpchld001/getthrdgrpchld001.cpp uses incorrect indices
Reviewed-by: amenkov, kevinw
2021-03-22 17:56:54 +00:00
Vladimir Kozlov
f84b52b84d 8263897: compiler/c2/aarch64/TestVolatilesSerial.java failed with "java.lang.RuntimeException: Wrong method"
Reviewed-by: roland
2021-03-22 17:03:12 +00:00
Vladimir Kozlov
f08bf4b918 8263891: Changes for 8076985 missed the fix.
Reviewed-by: roland
2021-03-22 16:16:26 +00:00
Henry Jen
b2df51372f 8261785: Calling "main" method in anonymous nested class crashes the JVM
Reviewed-by: serb
2021-03-22 15:59:49 +00:00
Alexey Ivanov
840ab7bf0f 8263894: Convert defaultPrinter and printers fields to local variables
Reviewed-by: prr, azvegint, kizune
2021-03-22 15:54:51 +00:00
Jonathan Dowland
ba504fcee8 8187450: JNI local refs exceeds capacity warning in NetworkInterface::getAll
Reviewed-by: chegar, dfuchs, aph
2021-03-22 15:29:47 +00:00
Roger Riggs
0abbfb2fc5 8263729: [test] divert spurious output away from stream under test in ProcessBuilder Basic test
Reviewed-by: stuefe, iklam
2021-03-22 14:50:47 +00:00
Zhengyu Gu
6c2220e65d 8263861: Shenandoah: Remove unused member in ShenandoahGCStateResetter
Reviewed-by: shade
2021-03-22 13:51:52 +00:00
Alex Blewitt
5262d95b12 8263855: Use the blessed modifier order in java.management/naming
Reviewed-by: redestad, aefimov, dfuchs
2021-03-22 13:38:19 +00:00
Henri Tremblay
6f1bcb056a 8263593: Fix multiple typos in hsdis README
Reviewed-by: thartmann
2021-03-22 12:59:28 +00:00
Markus Grönlund
a9d2267f8d 8260589: Crash in JfrTraceIdLoadBarrier::load(_jclass*)
Co-authored-by: Denghui Dong <ddong@openjdk.org>
Reviewed-by: jbachorik, egahlin
2021-03-22 11:52:50 +00:00
Ajit Ghaisas
42104e5575 8263488: Verify CWarningWindow works with metal rendering pipeline
Reviewed-by: serb, pbansal, avu, kizune
2021-03-22 02:44:59 +00:00
casparcwang
5a7f22ab94 8263579: ZGC: Concurrent mark hangs with debug loglevel
Reviewed-by: pliden, ayang, eosterlund
2021-03-22 02:18:27 +00:00
Jie Fu
35cd9456b9 8263908: Build fails due to initialize_static_field_for_dump defined but not used after JDK-8263771
Reviewed-by: iklam, dholmes
2021-03-21 23:07:16 +00:00
David Holmes
cd45538b5e 8263771: Refactor javaClasses initialization code to isolate dumping code
Reviewed-by: coleenp, iklam
2021-03-21 00:42:16 +00:00
Alexander Zuev
118a49fc96 8263846: Bad JNI lookup getFocusOwner in accessibility code on Mac OS X
Reviewed-by: azvegint, prr
2021-03-20 17:58:28 +00:00
Weijun Wang
cb742f9560 8255255: Update Apache Santuario (XML Signature) to version 2.2.1
Reviewed-by: xuelei, mullan
2021-03-20 13:42:16 +00:00
Thomas Stuefe
d2c137d408 8263558: Possible NULL dereference in fast path arena free if ZapResourceArea is true
Reviewed-by: kbarrett, coleenp
2021-03-20 09:06:53 +00:00
Andrey Turbanov
ab66d6991d 8263138: Initialization of sun.font.SunFontManager.platformFontMap is not thread safe
Reviewed-by: aivanov, kizune, serb
2021-03-20 07:45:02 +00:00
Thomas Stuefe
5b8233ba0a 8263871: On sem_destroy() failing we should assert
Reviewed-by: dholmes
2021-03-20 05:51:04 +00:00
Naoto Sato
96e5c3f1e0 8263890: Broken links to Unicode.org
Reviewed-by: redestad, joehw, iris
2021-03-19 21:48:36 +00:00
Ioi Lam
4d9517d233 8263834: Work around gdb <incomplete type> for HashtableEntry
Reviewed-by: dholmes, stuefe, tschatzl, coleenp
2021-03-19 21:23:14 +00:00
Alex Blewitt
6fa6557d5e 8263825: Remove unused and commented out member from NTLMException
Reviewed-by: mullan, redestad
2021-03-19 21:07:03 +00:00
Alex Blewitt
77ebc11038 8263892: More modifier order fixes in java.base
Reviewed-by: naoto, iris, redestad
2021-03-19 21:06:24 +00:00
Alex Blewitt
80d3ea0261 8263885: Use the blessed modifier order in java.sql/rowset/transation.xa
Reviewed-by: redestad, lancea
2021-03-19 21:04:25 +00:00
Alex Menkov
6737135b14 8262083: vmTestbase/nsk/jvmti/SetEventNotificationMode/setnotif001/TestDescription.java failed with "No notification: event JVMTI_EVENT_FRAME_POP (61)"
Reviewed-by: lmesnik, cjplummer
2021-03-19 20:13:05 +00:00
Alex Menkov
57fc8e9b35 8262080: vmTestbase/nsk/jdi/Event/request/request001/TestDescription.java failed with "ERROR: new event is not ThreadStartEvent"
Reviewed-by: cjplummer, sspitsyn
2021-03-19 20:11:32 +00:00
Ian Graves
0b5216a922 8263545: Convert jpackage to use Stream.toList()
Reviewed-by: asemenyuk, almatvee
2021-03-19 19:51:21 +00:00
Chris Plummer
ed701ea687 8262271: SA: Add new stress test that tests getting the stack trace of an active thread
Reviewed-by: ysuenaga, sspitsyn
2021-03-19 19:20:11 +00:00
Chris Plummer
30da9bc3c0 8263546: Add "findsym" command to clhsdb.html help file
Reviewed-by: ysuenaga, lmesnik
2021-03-19 19:16:59 +00:00
Phil Race
d41f75120d 8247370: Clean up unused printing code in awt_PrintJob.cpp
Reviewed-by: serb, psadhukhan
2021-03-19 18:12:46 +00:00
Alex Blewitt
b49c589340 8263658: Use the blessed modifier order in java.base
Reviewed-by: rriggs, redestad
2021-03-19 13:06:58 +00:00
Albert Mingkun Yang
1572f3ccdd 8263852: Unused method SoftRefPolicy::use_should_clear_all_soft_refs
Reviewed-by: tschatzl
2021-03-19 12:13:59 +00:00
Claes Redestad
57497ab0ca 8263821: Remove unused MethodTypeForm canonicalization codes
Reviewed-by: mchung
2021-03-19 10:52:13 +00:00
Chris Hegarty
4d51a82ba8 8263818: Release JNI local references in get/set-InetXXAddress-member helper functions of net_util.c
Reviewed-by: alanb
2021-03-19 10:46:05 +00:00
Nils Eliasson
701fd9da08 8262476: Add filter to speed up CompileCommand lookup
Reviewed-by: kvn, thartmann
2021-03-19 09:10:09 +00:00
Christoph Göttschkes
454af8719e 8263185: Mallinfo deprecated in glibc 2.33
Reviewed-by: stuefe, dholmes
2021-03-19 08:58:36 +00:00
Prasanta Sadhukhan
d24e4cfef3 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale
Reviewed-by: aivanov
2021-03-19 04:28:39 +00:00
Sergey Bylokhov
1a21f77971 8263482: Make access to the ICC color profiles data multithread-friendly
Reviewed-by: azvegint
2021-03-19 02:48:30 +00:00
Zhengyu Gu
d185655c27 8263832: Shenandoah: Fixing parallel thread iteration in final mark task
Reviewed-by: rkennke
2021-03-19 00:20:18 +00:00
Valerie Peng
434a399bea 8260274: Cipher.init(int, key) does not use highest priority provider for random bytes
Reviewed-by: ascarpino, xuelei
2021-03-18 23:23:19 +00:00
Bradford Wetmore
6aa28b3bdb 8263827: Suspend "missing" javadoc doclint checks for smartcardio
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Reviewed-by: erikj
2021-03-18 22:31:01 +00:00
Phil Race
ed1e25d548 8263833: Stop disabling warnings for sunFont.c with gcc
Reviewed-by: erikj
2021-03-18 21:52:33 +00:00
Roger Riggs
788e30c154 8263320: [test] Add Object Stream Formatter to work with test utility HexPrinter
Reviewed-by: chegar
2021-03-18 21:26:46 +00:00
Brian Burkhalter
fa0f1614ff 8263742: (bf) MappedByteBuffer.force() should use the capacity as its upper bound
Reviewed-by: adinn, alanb
2021-03-18 21:12:33 +00:00
Alex Menkov
c82a673cf6 8262001: java/lang/management/ThreadMXBean/ResetPeakThreadCount.java failed with "RuntimeException: Current Peak = 14 Expected to be == previous peak = 7 + 8"
Reviewed-by: dfuchs, sspitsyn
2021-03-18 20:10:26 +00:00
Sergey Bylokhov
01ddf3d280 8263622: The java.awt.color.ICC_Profile#setData invert the order of bytes for the "head" tag
Reviewed-by: azvegint
2021-03-18 20:07:34 +00:00
Coleen Phillimore
e34f766b7e 8252723: Run stack016.java also with C2-only
Reviewed-by: mseledtsov, iklam
2021-03-18 20:00:55 +00:00
Phil Race
2173feddb5 8263439: getSupportedAttributeValues() throws NPE for Finishings attribute
Reviewed-by: psadhukhan, azvegint
2021-03-18 20:00:11 +00:00
Alexander Zuev
e543a50098 8261352: Create implementation for component peer for all the components who should be ignored in a11y interactions
Reviewed-by: serb
2021-03-18 19:50:20 +00:00
Alex Blewitt
21db0f6768 8263659: Reflow GTestResultParser for better readability
Reviewed-by: shade, iignatyev
2021-03-18 16:41:49 +00:00
Igor Ignatyev
e333b6e153 8246494: introduce vm.flagless at-requires property
Reviewed-by: mseledtsov, sspitsyn
2021-03-18 15:34:58 +00:00
Hamlin Li
8c8d1b31f0 8263495: Gather liveness info in the mark phase of G1 full gc
Co-authored-by: Shoubing Ma <mashoubing1@huawei.com>
Reviewed-by: tschatzl, sjohanss, ayang
2021-03-18 14:14:52 +00:00
Alexey Ivanov
a85dc557b3 8263311: Watch registry changes for remote printers update instead of polling
Reviewed-by: psadhukhan, serb
2021-03-18 13:26:22 +00:00
Yi Yang
3f31a6baa9 8263775: C2: igv_print() crash unexpectedly when called from debugger
Reviewed-by: chagedorn
2021-03-18 13:07:57 +00:00
Claes Redestad
63eae8fac2 8260605: Various java.lang.invoke cleanups
Reviewed-by: mchung
2021-03-18 12:47:57 +00:00
Jan Lahoda
9cd21b687e 8263590: Rawtypes warnings should be produced for pattern matching in instanceof
Reviewed-by: mcimadamore
2021-03-18 12:37:20 +00:00
Jamsheed Mohammed C M
ff52f2989f 8260716: Assert in MacroAssembler::clear_mem with -XX:-IdealizeClearArrayNode
Reviewed-by: kvn, thartmann
2021-03-18 09:22:17 +00:00
Stefan Karlsson
72b82fd7be 8263725: JFR oldobject tests are not run when GCs are specified explicitly
Reviewed-by: tschatzl, mgronlun
2021-03-18 06:52:48 +00:00
Thomas Stuefe
444a80b920 8263455: NMT: assert on registering a region which completely engulfs an existing region
Reviewed-by: zgu, coleenp
2021-03-18 04:47:43 +00:00
Ioi Lam
2b93ae0019 8261480: MetaspaceShared::preload_and_dump should check exceptions
Reviewed-by: dholmes, ccheung
2021-03-18 04:15:58 +00:00
Fei Yang
81ba5784ba 8263676: AArch64: one potential bug in C1 LIRGenerator::generate_address()
Reviewed-by: adinn
2021-03-18 02:26:44 +00:00
Jaikiran Pai
9225a23023 8263108: Class initialization deadlock in java.lang.constant
Reviewed-by: vtewari, plevart, chegar
2021-03-18 01:45:07 +00:00
Chris Plummer
5d5813a5d3 8263757: Remove serviceability/sa/ClhsdClasses.java from ZGC problem list
Reviewed-by: dcubed
2021-03-17 23:25:04 +00:00
Chris Plummer
50ff0d4dd4 8263756: Fix ZGC ProblemList entry for serviceability/sa/ClhsdbSymbol.java
Reviewed-by: dcubed
2021-03-17 22:03:32 +00:00
Joe Darcy
99b39aadbd 8262807: Note assumptions of core reflection modeling and parameter handling
Reviewed-by: rriggs
2021-03-17 21:58:48 +00:00
Joe Darcy
26234b5333 8254979: Class.getSimpleName() returns non-empty for lambda and method
Reviewed-by: rriggs, mchung
2021-03-17 20:24:51 +00:00
Vladimir Kozlov
83a49ef845 8263753: two new tests from JDK-8261671 fail with "Error. can not find ClassFileInstaller in test directory or libraries"
Reviewed-by: dcubed
2021-03-17 20:00:31 +00:00
Joe Darcy
24afa36d5c 8263726: divideToIntegralValue typo on BigDecimal documentation
Reviewed-by: bpb
2021-03-17 16:58:20 +00:00
Nils Eliasson
cdf78e47c4 8262298: G1BarrierSetC2::step_over_gc_barrier fails with assert "bad barrier shape"
Reviewed-by: kvn, vlivanov
2021-03-17 16:31:23 +00:00
Zhengyu Gu
7674da4379 8262398: Shenandoah: Disable nmethod barrier and stack watermark when running with passive mode
Reviewed-by: rkennke, shade
2021-03-17 16:19:59 +00:00
Marcus G K Williams
4f4ca0e705 8261671: X86 I2L conversion can be skipped for certain masked positive values
Reviewed-by: kvn, neliasso, vlivanov
2021-03-17 16:19:06 +00:00
Nils Eliasson
5d87a21991 8263361: Incorrect arraycopy stub selected by C2 for SATB collectors
Reviewed-by: eosterlund, vlivanov
2021-03-17 16:02:28 +00:00
Claes Redestad
e152cc0312 8263677: Improve Character.isLowerCase/isUpperCase lookups
Reviewed-by: erikj, ihse, naoto, rriggs
2021-03-17 15:22:06 +00:00
Daniel D. Daugherty
b63b5d4c4b 8263732: ProblemList serviceability/sa/ClhsdbSymbol.java on ZGC
Reviewed-by: ysuenaga
2021-03-17 15:13:21 +00:00
Sergey Tsypanov
000012a3b0 8148937: (str) Adapt StringJoiner for Compact Strings
Reviewed-by: redestad, chegar
2021-03-17 13:34:58 +00:00
Albert Mingkun Yang
a707fcb515 8263723: [BACKOUT] MoveAndUpdateClosure::do_addr calls function with side-effects in an assert
Reviewed-by: tschatzl
2021-03-17 13:19:12 +00:00
Robin Westberg
86e9cd989d 8263667: Avoid running GitHub actions on branches named pr/*
Reviewed-by: ehelin, erikj, ihse
2021-03-17 12:46:05 +00:00
Jan Lahoda
41276eb83a 8259863: doc: JShell snippet doesn't compile
Reviewed-by: sundar
2021-03-17 12:36:24 +00:00
Aleksey Shipilev
f9f2eef91d 8263434: Dangling references after MethodComparator::methods_EMCP
Reviewed-by: coleenp, sspitsyn
2021-03-17 10:58:35 +00:00
Pavel Rappo
23fc2a4d97 8263688: Coordinate equals, hashCode and compareTo of JavacFileManager.PathAndContainer
Reviewed-by: vromero
2021-03-17 10:32:50 +00:00
Roland Westrelin
d1baed677e 8263672: fatal error: no reachable node should have no use
Reviewed-by: vlivanov, thartmann
2021-03-17 08:52:14 +00:00
Vipin Sharma
086a66a0cd 8261095: Add test for clhsdb "symbol" command
Reviewed-by: cjplummer, ysuenaga
2021-03-17 08:30:53 +00:00
Prasanta Sadhukhan
ec95a5c62a 8263410: ListModel javadoc refers to non-existent interface
Reviewed-by: azvegint, pbansal, aivanov
2021-03-17 07:54:58 +00:00
Robbin Ehn
7b9d2562ab 8261262: Kitchensink24HStress.java crashed with EXCEPTION_ACCESS_VIOLATION
Reviewed-by: dcubed, sspitsyn
2021-03-17 07:27:16 +00:00
Eric Liu
d2144a5b9d 8263058: Optimize vector shift with zero shift count
Reviewed-by: thartmann, kvn
2021-03-17 02:45:00 +00:00
Jie Fu
dd6c91141a 8263705: Two shenandoah tests fail due to can't find ClassFileInstaller
Reviewed-by: iklam
2021-03-17 01:54:09 +00:00
Evgeny Nikitin
4acb88396e 8261666: [mlvm] Remove WhiteBoxHelper
Reviewed-by: iignatyev
2021-03-17 01:27:18 +00:00
Jie Fu
50697965cf 8263164: assert(_base >= VectorA && _base <= VectorZ) failed: Not a Vector while calling StoreVectorNode::memory_size()
Reviewed-by: kvn, vlivanov
2021-03-16 23:27:08 +00:00
Igor Veresov
996079b902 8260650: test failed with "assert(false) failed: infinite loop in PhaseIterGVN::optimize"
Reviewed-by: thartmann, kvn
2021-03-16 21:42:55 +00:00
Vicente Romero
9cb9af6865 8260959: remove RECORDS from PreviewFeature.Feature enum
Reviewed-by: jlahoda
2021-03-16 19:37:56 +00:00
Phil Race
05fe06a6ba 8255790: GTKL&F: Java 16 crashes on initialising GTKL&F on Manjaro Linux
Reviewed-by: serb, ihse, azvegint
2021-03-16 19:36:04 +00:00
Alexey Semenyuk
422eba81b1 8263536: Add @build tags to jpackage tests
Reviewed-by: almatvee, iklam, herrick
2021-03-16 19:14:41 +00:00
Yi Yang
0d2f87e494 8263562: Checking if proxy_klass_head is still lambda_proxy_is_available
Reviewed-by: ccheung, iklam
2021-03-16 18:48:21 +00:00
Zhengyu Gu
a67a679c78 8263679: C1: Remove vtable call
Reviewed-by: vlivanov, kvn
2021-03-16 18:41:04 +00:00
Andy Herrick
11c8c78c47 8248904: Add support to jpackage for the Mac App Store
Reviewed-by: asemenyuk, almatvee, kizune, kcr
2021-03-16 17:26:57 +00:00
Aleksey Shipilev
dc93138b05 8256732: Zero: broken +ZeroTLAB exposes badly initialized memory
Reviewed-by: dholmes
2021-03-16 16:57:58 +00:00
Claes Redestad
e33bfb3977 8263450: Simplify LambdaForm.useCount
Reviewed-by: rriggs
2021-03-16 14:56:24 +00:00
Roman Kennke
75ef6f580e 8263427: Shenandoah: Trigger weak-LRB even when heap is stable
Reviewed-by: shade, zgu
2021-03-16 14:12:42 +00:00
Frederic Parain
4517d72fc2 8263612: Unused variables in C1 runtime
Reviewed-by: neliasso, thartmann
2021-03-16 12:21:15 +00:00
Aleksey Shipilev
83a9a0296e 8263509: LdapSchemaParser.readNextTag checks array length incorrectly
Reviewed-by: stuefe, aefimov
2021-03-16 10:54:04 +00:00
Martin Doerr
9c50b8e66a 8263587: C2: JVMS not cloned when needs_clone_jvms() is true
Reviewed-by: goetz, vlivanov
2021-03-16 10:17:33 +00:00
Andrey Turbanov
68deb24b38 8080272: Refactor I/O stream copying to use InputStream.transferTo/readAllBytes and Files.copy
Reviewed-by: mcimadamore, alanb
2021-03-16 10:10:05 +00:00
Stefan Karlsson
a31a23d5e7 8263595: Remove oop type punning in JavaCallArguments
Reviewed-by: iklam, coleenp, kbarrett
2021-03-16 08:29:41 +00:00
Stefan Karlsson
a1f6591f6c 8263589: Introduce JavaValue::get_oop/set_oop
Reviewed-by: coleenp, sspitsyn
2021-03-16 08:29:11 +00:00
Roland Westrelin
20297a1beb 8263577: C2: reachable nodes shouldn't have dead uses at the end of optimizations
Reviewed-by: vlivanov, neliasso
2021-03-16 08:20:52 +00:00
Thomas Stuefe
c484d89042 8263557: Possible NULL dereference in Arena::destruct_contents()
Reviewed-by: kbarrett, coleenp
2021-03-16 05:49:01 +00:00
Thomas Stuefe
ba35193c1a 8263559: Add missing initializers to VM_PopulateDumpSharedSpace
Reviewed-by: kbarrett, iklam, coleenp
2021-03-16 05:47:53 +00:00
Yasumasa Suenaga
e03a59489c 8262504: Some CLHSDB command cannot know they run on remote debugger
Reviewed-by: cjplummer, sspitsyn
2021-03-16 05:46:23 +00:00
Pankaj Bansal
d896246a11 8263420: Incorrect function name in NSAccessibilityStaticText native peer implementation
Reviewed-by: kizune
2021-03-16 04:57:33 +00:00
David Holmes
8c1112a690 8261916: gtest/GTestWrapper.java vmErrorTest.unimplemented1_vm_assert failed
Reviewed-by: dcubed, coleenp
2021-03-15 23:11:13 +00:00
Ioi Lam
1e570870f2 8263392: Allow current thread to be specified in ExceptionMark
Reviewed-by: dholmes, ccheung, coleenp, minqi
2021-03-15 22:20:13 +00:00
Coleen Phillimore
4d1c08ca99 8263616: 'Deprecatd' typo in src/hotspot/share/classfile/classFileParser.cpp
Reviewed-by: hseigel, dcubed
2021-03-15 21:19:11 +00:00
Craig Andrews
0c718ab2a0 8262277: URLClassLoader.getResource throws undocumented IllegalArgumentException
Reviewed-by: alanb, bchristi, psadhukhan
2021-03-15 18:35:04 +00:00
Thomas Schatzl
4f1cda4fd7 8263387: G1GarbageCollection JFR event gets gc phase, not gc type
Reviewed-by: sjohanss, ayang, iwalulya
2021-03-15 18:07:44 +00:00
Aleksey Shipilev
5ab5244814 8263514: Minor issue in JavacFileManager.SortFiles.REVERSE
Reviewed-by: vromero
2021-03-15 17:38:31 +00:00
Albert Mingkun Yang
771b146aeb 8245025: MoveAndUpdateClosure::do_addr calls function with side-effects in an assert
Reviewed-by: tschatzl, kbarrett
2021-03-15 17:25:59 +00:00
Brian Burkhalter
46d78f0d24 6539707: (fc) MappedByteBuffer.force() method throws an IOException in a very simple test
Reviewed-by: alanb
2021-03-15 17:24:24 +00:00
Thomas Stuefe
189289d9c7 8262326: MaxMetaspaceSize does not have to be aligned to metaspace commit alignment
Reviewed-by: coleenp, iklam
2021-03-15 17:20:10 +00:00
Igor Ignatyev
d825198e55 8263556: remove @modules java.base from tests
Reviewed-by: dcubed, naoto, iris
2021-03-15 17:05:28 +00:00
Patricio Chilano Mateo
d6b5e1809b 8263191: Consolidate ThreadInVMfromJavaNoAsyncException and ThreadBlockInVMWithDeadlockCheck with existing wrappers
Reviewed-by: coleenp, dholmes, dcubed
2021-03-15 14:12:21 +00:00
Frederic Parain
80cdf7882d 8263544: Unused argument in ConstantPoolCacheEntry::set_field()
Reviewed-by: coleenp, dholmes
2021-03-15 12:57:51 +00:00
Sergey Tsypanov
c0176c42dc 8263552: Use String.valueOf() for char-to-String conversions
Reviewed-by: redestad, vtewari, azvegint, chegar
2021-03-15 11:18:59 +00:00
Claes Redestad
fac39fe97a 8263508: Remove dead code in MethodHandleImpl
Reviewed-by: jkuhn, mchung
2021-03-15 10:52:48 +00:00
Aleksey Shipilev
7b4aefe9e1 8263530: sun.awt.X11.ListHelper.removeAll() should use clear()
Reviewed-by: serb, kizune
2021-03-15 09:50:52 +00:00
Toshio Nakamura
32c7fcc670 8263490: [macos] Crash occurs on JPasswordField with activated InputMethod
Reviewed-by: dmarkov, serb, kizune
2021-03-15 09:20:34 +00:00
Ajit Ghaisas
8afec70c28 8260931: Implement JEP 382: New macOS Rendering Pipeline
Co-authored-by: Jayathirth D V <jdv@openjdk.org>
Co-authored-by: Alexey Ushakov <avu@openjdk.org>
Co-authored-by: Artem Bochkarev <abochkarev@openjdk.org>
Co-authored-by: Prasanta Sadhukhan <psadhukhan@openjdk.org>
Co-authored-by: Denis Konoplev <dkonoplev@openjdk.org>
Co-authored-by: Phil Race <prr@openjdk.org>
Co-authored-by: Kevin Rushforth <kcr@openjdk.org>
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Co-authored-by: Ajit Ghaisas <aghaisas@openjdk.org>
Reviewed-by: ihse, avu, kcr, gziemski, prr, kizune, jdv, psadhukhan, serb
2021-03-15 06:41:44 +00:00
Aleksey Shipilev
0638303316 8263497: Clean up sun.security.krb5.PrincipalName::toByteArray
Reviewed-by: weijun
2021-03-15 06:27:32 +00:00
Aleksey Shipilev
ba22e6f6fa 8263446: Avoid unary minus over unsigned type in ObjectSynchronizer::dec_in_use_list_ceiling
Reviewed-by: eosterlund, dcubed
2021-03-15 06:25:36 +00:00
Aleksey Shipilev
b371f90f77 8263504: Some OutputMachOpcodes fields are uninitialized
Reviewed-by: kvn
2021-03-15 06:25:08 +00:00
Nick Gasson
f7e0a09802 8263425: AArch64: two potential bugs in C1 LIRGenerator::generate_address()
Reviewed-by: aph
2021-03-15 05:20:39 +00:00
David Holmes
554dd29fb6 8263564: Consolidate POSIX code for runtime exit support: os::shutdown, os::abort and os::die
Reviewed-by: mikael
2021-03-15 02:03:22 +00:00
Ioi Lam
da9ead5e7f 8263399: CDS should archive only classes allowed by module system
Reviewed-by: ccheung, minqi
2021-03-14 06:01:57 +00:00
Igor Ignatyev
9c84899da4 8263555: use driver-mode to run ClassFileInstaller
Reviewed-by: iklam
2021-03-14 05:19:37 +00:00
13077 changed files with 718503 additions and 646415 deletions

View File

@@ -4,12 +4,13 @@ on:
push:
branches-ignore:
- master
- pr/*
workflow_dispatch:
inputs:
platforms:
description: "Platform(s) to execute on"
required: true
default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows aarch64, Windows x64, macOS x64"
default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows x64, macOS x64"
jobs:
prerequisites:
@@ -21,9 +22,9 @@ jobs:
platform_linux_additional: ${{ steps.check_platforms.outputs.platform_linux_additional }}
platform_linux_x64: ${{ steps.check_platforms.outputs.platform_linux_x64 }}
platform_linux_x86: ${{ steps.check_platforms.outputs.platform_linux_x86 }}
platform_windows_aarch64: ${{ steps.check_platforms.outputs.platform_windows_aarch64 }}
platform_windows_x64: ${{ steps.check_platforms.outputs.platform_windows_x64 }}
platform_macos_x64: ${{ steps.check_platforms.outputs.platform_macos_x64 }}
platform_macos_aarch64: ${{ steps.check_platforms.outputs.platform_macos_aarch64 }}
dependencies: ${{ steps.check_deps.outputs.dependencies }}
steps:
@@ -37,9 +38,9 @@ jobs:
echo "::set-output name=platform_linux_additional::${{ contains(github.event.inputs.platforms, 'linux additional (hotspot only)') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'linux additional (hotspot only)'))) }}"
echo "::set-output name=platform_linux_x64::${{ contains(github.event.inputs.platforms, 'linux x64') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'linux x64'))) }}"
echo "::set-output name=platform_linux_x86::${{ contains(github.event.inputs.platforms, 'linux x86') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'linux x86'))) }}"
echo "::set-output name=platform_windows_aarch64::${{ contains(github.event.inputs.platforms, 'windows aarch64') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'windows aarch64'))) }}"
echo "::set-output name=platform_windows_x64::${{ contains(github.event.inputs.platforms, 'windows x64') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'windows x64'))) }}"
echo "::set-output name=platform_macos_x64::${{ contains(github.event.inputs.platforms, 'macos x64') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'macos x64'))) }}"
echo "::set-output name=platform_macos_aarch64::${{ contains(github.event.inputs.platforms, 'macos aarch64') || (github.event.inputs.platforms == '' && (secrets.JDK_SUBMIT_PLATFORMS == '' || contains(secrets.JDK_SUBMIT_PLATFORMS, 'macos aarch64'))) }}"
if: steps.check_submit.outputs.should_run != 'false'
- name: Determine unique bundle identifier
@@ -64,7 +65,7 @@ jobs:
if: steps.check_submit.outputs.should_run != 'false'
- name: Determine the jtreg ref to checkout
run: "echo JTREG_REF=jtreg${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_VERSION }}-${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_BUILD }} >> $GITHUB_ENV"
run: "echo JTREG_REF=jtreg-${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_VERSION }}+${{ fromJson(steps.check_deps.outputs.dependencies).JTREG_BUILD }} >> $GITHUB_ENV"
if: steps.check_submit.outputs.should_run != 'false'
- name: Check if a jtreg image is present in the cache
@@ -84,7 +85,7 @@ jobs:
if: steps.check_submit.outputs.should_run != 'false' && steps.jtreg.outputs.cache-hit != 'true'
- name: Build jtreg
run: sh make/build-all.sh ${JAVA_HOME_8_X64}
run: bash make/build.sh --jdk ${JAVA_HOME_8_X64}
working-directory: jtreg
if: steps.check_submit.outputs.should_run != 'false' && steps.jtreg.outputs.cache-hit != 'true'
@@ -846,94 +847,6 @@ jobs:
path: ~/linux-x86${{ matrix.artifact }}_testsupport_${{ env.logsuffix }}.zip
continue-on-error: true
windows_aarch64_build:
name: Windows aarch64
runs-on: "windows-2019"
needs: prerequisites
if: needs.prerequisites.outputs.should_run != 'false' && needs.prerequisites.outputs.platform_windows_aarch64 != 'false'
strategy:
fail-fast: false
matrix:
flavor:
- build debug
include:
- flavor: build debug
flags: --enable-debug
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_URL }}"
BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).WINDOWS_X64_BOOT_JDK_SHA256 }}"
steps:
- name: Restore cygwin packages from cache
id: cygwin
uses: actions/cache@v2
with:
path: ~/cygwin/packages
key: cygwin-packages-${{ runner.os }}-v1
- name: Install cygwin
run: |
New-Item -Force -ItemType directory -Path "$HOME\cygwin"
& curl -L "https://www.cygwin.com/setup-x86_64.exe" -o "$HOME/cygwin/setup-x86_64.exe"
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Checkout the source
uses: actions/checkout@v2
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
- name: Download boot JDK
run: |
mkdir -p "$HOME\bootjdk\$env:BOOT_JDK_VERSION"
& curl -L "$env:BOOT_JDK_URL" -o "$HOME/bootjdk/$env:BOOT_JDK_FILENAME"
$FileHash = Get-FileHash -Algorithm SHA256 "$HOME/bootjdk/$env:BOOT_JDK_FILENAME"
$FileHash.Hash -eq $env:BOOT_JDK_SHA256
& tar -xf "$HOME/bootjdk/$env:BOOT_JDK_FILENAME" -C "$HOME/bootjdk/$env:BOOT_JDK_VERSION"
Get-ChildItem "$HOME\bootjdk\$env:BOOT_JDK_VERSION\*\*" | Move-Item -Destination "$HOME\bootjdk\$env:BOOT_JDK_VERSION"
if: steps.bootjdk.outputs.cache-hit != 'true'
- name: Ensure a specific version of MSVC is installed
run: >
Start-Process -FilePath 'C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe' -Wait -NoNewWindow -ArgumentList
'modify --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise" --quiet
--add Microsoft.VisualStudio.Component.VC.14.28.arm64'
- name: Configure
run: >
$env:Path = "$HOME\cygwin\cygwin64\bin;$HOME\cygwin\cygwin64\bin;$env:Path" ;
$env:Path = $env:Path -split ";" -match "C:\\Windows|PowerShell|cygwin" -join ";" ;
$env:BOOT_JDK = cygpath "$HOME/bootjdk/$env:BOOT_JDK_VERSION" ;
& bash configure
--with-conf-name=windows-aarch64
--with-msvc-toolset-version=14.28
--openjdk-target=aarch64-unknown-cygwin
${{ matrix.flags }}
--with-version-opt="$env:GITHUB_ACTOR-$env:GITHUB_SHA"
--with-version-build=0
--with-boot-jdk="$env:BOOT_JDK"
--with-default-make-target="hotspot"
working-directory: jdk
- name: Build
run: |
$env:Path = "$HOME\cygwin\cygwin64\bin;$HOME\cygwin\cygwin64\bin;$env:Path" ;
$env:Path = $env:Path -split ";" -match "C:\\Windows|PowerShell|cygwin" -join ";" ;
& make CONF_NAME=windows-aarch64
working-directory: jdk
windows_x64_build:
name: Windows x64
runs-on: "windows-2019"
@@ -1358,8 +1271,112 @@ jobs:
with:
name: transient_jdk-macos-x64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
jdk/build/macos-x64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin${{ matrix.artifact }}.tar.gz
jdk/build/macos-x64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin-tests${{ matrix.artifact }}.tar.gz
jdk/build/macos-x64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin${{ matrix.artifact }}.tar.gz
jdk/build/macos-x64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}.tar.gz
macos_aarch64_build:
name: macOS aarch64
runs-on: "macos-10.15"
needs: prerequisites
if: needs.prerequisites.outputs.should_run != 'false' && needs.prerequisites.outputs.platform_macos_aarch64 != 'false'
strategy:
fail-fast: false
matrix:
flavor:
- build release
- build debug
include:
- flavor: build release
- flavor: build debug
flags: --enable-debug
artifact: -debug
env:
JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).DEFAULT_VERSION_FEATURE }}"
BOOT_JDK_VERSION: "${{ fromJson(needs.prerequisites.outputs.dependencies).BOOT_JDK_VERSION }}"
BOOT_JDK_FILENAME: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_FILENAME }}"
BOOT_JDK_URL: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_URL }}"
BOOT_JDK_SHA256: "${{ fromJson(needs.prerequisites.outputs.dependencies).MACOS_X64_BOOT_JDK_SHA256 }}"
steps:
- name: Checkout the source
uses: actions/checkout@v2
with:
path: jdk
- name: Restore boot JDK from cache
id: bootjdk
uses: actions/cache@v2
with:
path: ~/bootjdk/${{ env.BOOT_JDK_VERSION }}
key: bootjdk-${{ runner.os }}-${{ env.BOOT_JDK_VERSION }}-${{ env.BOOT_JDK_SHA256 }}-v1
- name: Download boot JDK
run: |
mkdir -p ${HOME}/bootjdk/${BOOT_JDK_VERSION} || true
wget -O "${HOME}/bootjdk/${BOOT_JDK_FILENAME}" "${BOOT_JDK_URL}"
echo "${BOOT_JDK_SHA256} ${HOME}/bootjdk/${BOOT_JDK_FILENAME}" | shasum -a 256 -c >/dev/null -
tar -xf "${HOME}/bootjdk/${BOOT_JDK_FILENAME}" -C "${HOME}/bootjdk/${BOOT_JDK_VERSION}"
mv "${HOME}/bootjdk/${BOOT_JDK_VERSION}/"*/* "${HOME}/bootjdk/${BOOT_JDK_VERSION}/"
if: steps.bootjdk.outputs.cache-hit != 'true'
- name: Restore jtreg artifact
id: jtreg_restore
uses: actions/download-artifact@v2
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
continue-on-error: true
- name: Restore jtreg artifact (retry)
uses: actions/download-artifact@v2
with:
name: transient_jtreg_${{ needs.prerequisites.outputs.bundle_id }}
path: ~/jtreg/
if: steps.jtreg_restore.outcome == 'failure'
- name: Checkout gtest sources
uses: actions/checkout@v2
with:
repository: "google/googletest"
ref: "release-${{ fromJson(needs.prerequisites.outputs.dependencies).GTEST_VERSION }}"
path: gtest
- name: Install dependencies
run: brew install make
- name: Select Xcode version
run: sudo xcode-select --switch /Applications/Xcode_12.4.app/Contents/Developer
- name: Configure
run: >
bash configure
--with-conf-name=macos-aarch64
--openjdk-target=aarch64-apple-darwin
${{ matrix.flags }}
--with-version-opt=${GITHUB_ACTOR}-${GITHUB_SHA}
--with-version-build=0
--with-boot-jdk=${HOME}/bootjdk/${BOOT_JDK_VERSION}/Contents/Home
--with-jtreg=${HOME}/jtreg
--with-gtest=${GITHUB_WORKSPACE}/gtest
--with-default-make-target="product-bundles test-bundles"
--with-zlib=system
--enable-jtreg-failure-handler
working-directory: jdk
- name: Build
run: make CONF_NAME=macos-aarch64
working-directory: jdk
- name: Persist test bundles
uses: actions/upload-artifact@v2
with:
name: transient_jdk-macos-aarch64${{ matrix.artifact }}_${{ needs.prerequisites.outputs.bundle_id }}
path: |
jdk/build/macos-aarch64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_macos-aarch64_bin${{ matrix.artifact }}.tar.gz
jdk/build/macos-aarch64/bundles/jdk-${{ env.JDK_VERSION }}-internal+0_macos-aarch64_bin-tests${{ matrix.artifact }}.tar.gz
macos_x64_test:
name: macOS x64
@@ -1465,13 +1482,13 @@ jobs:
- name: Unpack jdk
run: |
mkdir -p "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin${{ matrix.artifact }}"
tar -xf "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin${{ matrix.artifact }}.tar.gz" -C "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin${{ matrix.artifact }}"
mkdir -p "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin${{ matrix.artifact }}"
tar -xf "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin${{ matrix.artifact }}.tar.gz" -C "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin${{ matrix.artifact }}"
- name: Unpack tests
run: |
mkdir -p "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin-tests${{ matrix.artifact }}"
tar -xf "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin-tests${{ matrix.artifact }}.tar.gz" -C "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin-tests${{ matrix.artifact }}"
mkdir -p "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}"
tar -xf "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}.tar.gz" -C "${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}"
- name: Install dependencies
run: brew install make
@@ -1481,13 +1498,13 @@ jobs:
- name: Find root of jdk image dir
run: |
imageroot=`find ${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin${{ matrix.artifact }} -name release -type f`
imageroot=`find ${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin${{ matrix.artifact }} -name release -type f`
echo "imageroot=`dirname ${imageroot}`" >> $GITHUB_ENV
- name: Run tests
run: >
JDK_IMAGE_DIR=${{ env.imageroot }}
TEST_IMAGE_DIR=${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_osx-x64_bin-tests${{ matrix.artifact }}
TEST_IMAGE_DIR=${HOME}/jdk-macos-x64${{ matrix.artifact }}/jdk-${{ env.JDK_VERSION }}-internal+0_macos-x64_bin-tests${{ matrix.artifact }}
BOOT_JDK=${HOME}/bootjdk/${BOOT_JDK_VERSION}/Contents/Home
JT_HOME=${HOME}/jtreg
gmake test-prebuilt
@@ -1554,11 +1571,11 @@ jobs:
needs:
- prerequisites
- linux_additional_build
- windows_aarch64_build
- linux_x64_test
- linux_x86_test
- windows_x64_test
- macos_x64_test
- macos_aarch64_build
steps:
- name: Determine current artifacts endpoint

2
.gitignore vendored
View File

@@ -16,3 +16,5 @@ NashornProfile.txt
**/JTreport/**
**/JTwork/**
/src/utils/LogCompilation/target/
*.class
.idea/workspace.xml

View File

@@ -1,32 +1,13 @@
;
; Copyright (c) 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
; under the terms of the GNU General Public License version 2 only, as
; published by the Free Software Foundation.
;
; This code is distributed in the hope that it will be useful, but WITHOUT
; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
; version 2 for more details (a copy is included in the LICENSE file that
; accompanied this code).
;
; You should have received a copy of the GNU General Public License version
; 2 along with this work; if not, write to the Free Software Foundation,
; Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
;
; Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
; or visit www.oracle.com if you need additional information or have any
; questions.
;
[general]
project=lanai
project=jdk
jbs=JDK
[checks]
error=author,whitespace,executable
error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists
[repository]
tags=(?:jdk-(?:[1-9]([0-9]*)(?:\.(?:0|[1-9][0-9]*)){0,4})(?:\+(?:(?:[0-9]+))|(?:-ga)))|(?:jdk[4-9](?:u\d{1,3})?-(?:(?:b\d{2,3})|(?:ga)))|(?:hs\d\d(?:\.\d{1,2})?-b\d\d)
branches=
[census]
version=0
@@ -35,3 +16,19 @@ domain=openjdk.org
[checks "whitespace"]
files=.*\.cpp|.*\.hpp|.*\.c|.*\.h|.*\.java|.*\.cc|.*\.hh|.*\.m|.*\.mm|.*\.gmk|.*\.m4|.*\.ac|Makefile
ignore-tabs=.*\.gmk|Makefile
[checks "merge"]
message=Merge
[checks "reviewers"]
reviewers=1
ignore=duke
[checks "committer"]
role=committer
[checks "issues"]
pattern=^([124-8][0-9]{6}): (\S.*)$
[checks "problemlists"]
dirs=test/jdk|test/langtools|test/lib-test|test/hotspot/jtreg|test/jaxp

View File

@@ -1,3 +1,5 @@
[![official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
# Welcome to the JDK!
For build instructions please see the

View File

@@ -25,7 +25,24 @@
# Shell script for generating an IDEA project from a given list of modules
usage() {
echo "usage: $0 [-h|--help] [-v|--verbose] [-o|--output <path>] [modules]+"
echo "Usage: $0 [-h|--help] [-q|--quiet] [-a|--absolute-paths] [-r|--root <path>] [-o|--output <path>] [modules...]"
echo " -h | --help"
echo " -q | --quiet
No stdout output"
echo " -a | --absolute-paths
Use absolute paths to this jdk, so that generated .idea
project files can be moved independently of jdk sources"
echo " -r | --root <path>
Project content root
Default: $TOPLEVEL_DIR"
echo " -o | --output <path>
Where .idea directory with project files will be generated
(e.g. using '-o .' will place project files in './.idea')
Default: same as --root"
echo " [modules...]
Generate project modules for specific java modules
(e.g. 'java.base java.desktop')
Default: all existing modules (java.* and jdk.*)"
exit 1
}
@@ -33,10 +50,13 @@ SCRIPT_DIR=`dirname $0`
#assume TOP is the dir from which the script has been called
TOP=`pwd`
cd $SCRIPT_DIR; SCRIPT_DIR=`pwd`
if [ "x$TOPLEVEL_DIR" = "x" ] ; then
cd .. ; TOPLEVEL_DIR=`pwd`
fi
cd $TOP;
IDEA_OUTPUT=$TOP/.idea
VERBOSE="false"
VERBOSE=true
ABSOLUTE_PATHS=false
while [ $# -gt 0 ]
do
case $1 in
@@ -44,12 +64,21 @@ do
usage
;;
-v | --vebose )
VERBOSE="true"
-q | --quiet )
VERBOSE=false
;;
-a | --absolute-paths )
ABSOLUTE_PATHS=true
;;
-r | --root )
TOPLEVEL_DIR="$2"
shift
;;
-o | --output )
IDEA_OUTPUT=$2/.idea
IDEA_OUTPUT="$2/.idea"
shift
;;
@@ -64,20 +93,21 @@ do
shift
done
mkdir -p $IDEA_OUTPUT || exit 1
cd $IDEA_OUTPUT; IDEA_OUTPUT=`pwd`
if [ "x$TOPLEVEL_DIR" = "x" ] ; then
cd $SCRIPT_DIR/..
TOPLEVEL_DIR=`pwd`
cd $IDEA_OUTPUT
if [ "x$IDEA_OUTPUT" = "x" ] ; then
IDEA_OUTPUT="$TOPLEVEL_DIR/.idea"
fi
MAKE_DIR="$SCRIPT_DIR/../make"
IDEA_MAKE="$MAKE_DIR/ide/idea/jdk"
mkdir -p $IDEA_OUTPUT || exit 1
cd "$TOP" ; cd $TOPLEVEL_DIR; TOPLEVEL_DIR=`pwd`
cd "$TOP" ; cd $IDEA_OUTPUT; IDEA_OUTPUT=`pwd`
cd ..; IDEA_OUTPUT_PARENT=`pwd`
cd "$SCRIPT_DIR/.." ; OPENJDK_DIR=`pwd`
IDEA_MAKE="$OPENJDK_DIR/make/ide/idea/jdk"
IDEA_TEMPLATE="$IDEA_MAKE/template"
cp -r "$IDEA_TEMPLATE"/* "$IDEA_OUTPUT"
cp -rn "$TOPLEVEL_DIR/jb/project/idea-project-files"/* "$IDEA_OUTPUT"
cp -rn "$IDEA_TEMPLATE"/* "$IDEA_OUTPUT"
#override template
if [ -d "$TEMPLATES_OVERRIDE" ] ; then
@@ -86,31 +116,31 @@ if [ -d "$TEMPLATES_OVERRIDE" ] ; then
done
fi
if [ "$VERBOSE" = "true" ] ; then
echo "output dir: $IDEA_OUTPUT"
echo "idea template dir: $IDEA_TEMPLATE"
if [ "$VERBOSE" = true ] ; then
echo "Will generate IDEA project files in \"$IDEA_OUTPUT\" for project \"$TOPLEVEL_DIR\""
fi
cd $TOP ; make -f "$IDEA_MAKE/idea.gmk" -I $MAKE_DIR/.. idea MAKEOVERRIDES= OUT=$IDEA_OUTPUT/env.cfg MODULES="$*" || exit 1
cd $TOP ; make -f "$IDEA_MAKE/idea.gmk" -I "$OPENJDK_DIR" idea TOPLEVEL_DIR="$TOPLEVEL_DIR" \
MAKEOVERRIDES= IDEA_OUTPUT_PARENT="$IDEA_OUTPUT_PARENT" OUT="$IDEA_OUTPUT/env.cfg" MODULES="$*" || exit 1
cd $SCRIPT_DIR
. $IDEA_OUTPUT/env.cfg
# Expect MODULE_ROOTS, MODULE_NAMES, BOOT_JDK & SPEC to be set
if [ "x$MODULE_ROOTS" = "x" ] ; then
echo "FATAL: MODULE_ROOTS is empty" >&2; exit 1
# Expect MODULES, MODULE_NAMES, RELATIVE_PROJECT_DIR, RELATIVE_BUILD_DIR to be set
if [ "xMODULES" = "x" ] ; then
echo "FATAL: MODULES is empty" >&2; exit 1
fi
if [ "x$MODULE_NAMES" = "x" ] ; then
echo "FATAL: MODULE_NAMES is empty" >&2; exit 1
fi
if [ "x$BOOT_JDK" = "x" ] ; then
echo "FATAL: BOOT_JDK is empty" >&2; exit 1
if [ "x$RELATIVE_PROJECT_DIR" = "x" ] ; then
echo "FATAL: RELATIVE_PROJECT_DIR is empty" >&2; exit 1
fi
if [ "x$SPEC" = "x" ] ; then
echo "FATAL: SPEC is empty" >&2; exit 1
if [ "x$RELATIVE_BUILD_DIR" = "x" ] ; then
echo "FATAL: RELATIVE_BUILD_DIR is empty" >&2; exit 1
fi
if [ -d "$TOPLEVEL_DIR/.hg" ] ; then
@@ -121,6 +151,43 @@ if [ -d "$TOPLEVEL_DIR/.git" ] ; then
VCS_TYPE="Git"
fi
if [ "$ABSOLUTE_PATHS" = true ] ; then
if [ "x$PATHTOOL" != "x" ]; then
PROJECT_DIR="`$PATHTOOL -am $OPENJDK_DIR`"
TOPLEVEL_PROJECT_DIR="`$PATHTOOL -am $TOPLEVEL_DIR`"
else
PROJECT_DIR="$OPENJDK_DIR"
TOPLEVEL_PROJECT_DIR="$TOPLEVEL_DIR"
fi
MODULE_DIR="$PROJECT_DIR"
TOPLEVEL_MODULE_DIR="$TOPLEVEL_PROJECT_DIR"
cd "$IDEA_OUTPUT_PARENT" && cd "$RELATIVE_BUILD_DIR" && BUILD_DIR="`pwd`"
CLION_SCRIPT_TOPDIR="$OPENJDK_DIR"
CLION_PROJECT_DIR="$PROJECT_DIR"
else
if [ "$RELATIVE_PROJECT_DIR" = "." ] ; then
PROJECT_DIR=""
else
PROJECT_DIR="/$RELATIVE_PROJECT_DIR"
fi
if [ "$RELATIVE_TOPLEVEL_PROJECT_DIR" = "." ] ; then
TOPLEVEL_PROJECT_DIR=""
else
TOPLEVEL_PROJECT_DIR="/$RELATIVE_TOPLEVEL_PROJECT_DIR"
fi
MODULE_DIR="\$MODULE_DIR\$$PROJECT_DIR"
PROJECT_DIR="\$PROJECT_DIR\$$PROJECT_DIR"
TOPLEVEL_MODULE_DIR="\$MODULE_DIR\$$TOPLEVEL_PROJECT_DIR"
TOPLEVEL_PROJECT_DIR="\$PROJECT_DIR\$$TOPLEVEL_PROJECT_DIR"
BUILD_DIR="\$PROJECT_DIR\$/$RELATIVE_BUILD_DIR"
CLION_SCRIPT_TOPDIR="$CLION_RELATIVE_PROJECT_DIR"
CLION_PROJECT_DIR="\$PROJECT_DIR\$/$CLION_SCRIPT_TOPDIR"
fi
if [ "$VERBOSE" = true ] ; then
echo "Project root: $PROJECT_DIR"
echo "Generating IDEA project files..."
fi
### Replace template variables
NUM_REPLACEMENTS=0
@@ -144,105 +211,105 @@ add_replacement() {
eval TO$NUM_REPLACEMENTS='$2'
}
add_replacement "###PATHTOOL###" "$PATHTOOL"
add_replacement "###CLION_SCRIPT_TOPDIR###" "$CLION_SCRIPT_TOPDIR"
add_replacement "###CLION_PROJECT_DIR###" "$CLION_PROJECT_DIR"
add_replacement "###PROJECT_DIR###" "$PROJECT_DIR"
add_replacement "###MODULE_DIR###" "$MODULE_DIR"
add_replacement "###TOPLEVEL_PROJECT_DIR###" "$TOPLEVEL_PROJECT_DIR"
add_replacement "###TOPLEVEL_MODULE_DIR###" "$TOPLEVEL_MODULE_DIR"
add_replacement "###MODULE_NAMES###" "$MODULE_NAMES"
add_replacement "###VCS_TYPE###" "$VCS_TYPE"
SPEC_DIR=`dirname $SPEC`
if [ "x$CYGPATH" != "x" ]; then
add_replacement "###BUILD_DIR###" "`cygpath -am $SPEC_DIR`"
add_replacement "###IMAGES_DIR###" "`cygpath -am $SPEC_DIR`/images/jdk"
add_replacement "###ROOT_DIR###" "`cygpath -am $TOPLEVEL_DIR`"
add_replacement "###IDEA_DIR###" "`cygpath -am $IDEA_OUTPUT`"
add_replacement "###BUILD_DIR###" "$BUILD_DIR"
add_replacement "###RELATIVE_BUILD_DIR###" "$RELATIVE_BUILD_DIR"
if [ "x$PATHTOOL" != "x" ]; then
add_replacement "###BASH_RUNNER_PREFIX###" "\$PROJECT_DIR\$/.idea/bash.bat"
else
add_replacement "###BASH_RUNNER_PREFIX###" ""
fi
if [ "x$PATHTOOL" != "x" ]; then
if [ "x$JT_HOME" = "x" ]; then
add_replacement "###JTREG_HOME###" ""
else
add_replacement "###JTREG_HOME###" "`cygpath -am $JT_HOME`"
fi
elif [ "x$WSL_DISTRO_NAME" != "x" ]; then
add_replacement "###BUILD_DIR###" "`wslpath -am $SPEC_DIR`"
add_replacement "###IMAGES_DIR###" "`wslpath -am $SPEC_DIR`/images/jdk"
add_replacement "###ROOT_DIR###" "`wslpath -am $TOPLEVEL_DIR`"
add_replacement "###IDEA_DIR###" "`wslpath -am $IDEA_OUTPUT`"
if [ "x$JT_HOME" = "x" ]; then
add_replacement "###JTREG_HOME###" ""
else
add_replacement "###JTREG_HOME###" "`wslpath -am $JT_HOME`"
add_replacement "###JTREG_HOME###" "`$PATHTOOL -am $JT_HOME`"
fi
else
add_replacement "###BUILD_DIR###" "$SPEC_DIR"
add_replacement "###JTREG_HOME###" "$JT_HOME"
add_replacement "###IMAGES_DIR###" "$SPEC_DIR/images/jdk"
add_replacement "###ROOT_DIR###" "$TOPLEVEL_DIR"
add_replacement "###IDEA_DIR###" "$IDEA_OUTPUT"
fi
SOURCE_PREFIX="<sourceFolder url=\"file://"
SOURCE_POSTFIX="\" isTestSource=\"false\" />"
for root in $MODULE_ROOTS; do
if [ "x$CYGPATH" != "x" ]; then
root=`cygpath -am $root`
elif [ "x$WSL_DISTRO_NAME" != "x" ]; then
root=`wslpath -am $root`
fi
VM_CI="jdk.internal.vm.ci/share/classes"
VM_COMPILER="src/jdk.internal.vm.compiler/share/classes"
if test "${root#*$VM_CI}" != "$root" || test "${root#*$VM_COMPILER}" != "$root"; then
for subdir in "$root"/*; do
if [ -d "$subdir" ]; then
SOURCES=$SOURCES" $SOURCE_PREFIX""$subdir"/src"$SOURCE_POSTFIX"
fi
done
else
SOURCES=$SOURCES" $SOURCE_PREFIX""$root""$SOURCE_POSTFIX"
fi
MODULE_IMLS=""
TEST_MODULE_DEPENDENCIES=""
for module in $MODULE_NAMES; do
MODULE_IMLS="$MODULE_IMLS<module fileurl=\"file://\$PROJECT_DIR$/.idea/$module.iml\" filepath=\"\$PROJECT_DIR$/.idea/$module.iml\" /> "
TEST_MODULE_DEPENDENCIES="$TEST_MODULE_DEPENDENCIES<orderEntry type=\"module\" module-name=\"$module\" scope=\"TEST\" /> "
done
add_replacement "###SOURCE_ROOTS###" "$SOURCES"
add_replacement "###MODULE_IMLS###" "$MODULE_IMLS"
add_replacement "###TEST_MODULE_DEPENDENCIES###" "$TEST_MODULE_DEPENDENCIES"
replace_template_dir "$IDEA_OUTPUT"
### Compile the custom Logger
### Generate module project files
CLASSES=$IDEA_OUTPUT/classes
if [ "$VERBOSE" = true ] ; then
echo "Generating project modules:"
fi
(
DEFAULT_IFS="$IFS"
IFS='#'
for value in $MODULES; do
(
eval "$value"
if [ "$VERBOSE" = true ] ; then
echo " $module"
fi
MAIN_SOURCE_DIRS=""
CONTENT_ROOTS=""
IFS=' '
for dir in $moduleSrcDirs; do
case $dir in # See https://youtrack.jetbrains.com/issue/IDEA-185108
"src/"*) MAIN_SOURCE_DIRS="$MAIN_SOURCE_DIRS <sourceFolder url=\"file://$MODULE_DIR/$dir\" isTestSource=\"false\" />" ;;
*) CONTENT_ROOTS="$CONTENT_ROOTS <content url=\"file://$MODULE_DIR/$dir\">\
<sourceFolder url=\"file://$MODULE_DIR/$dir\" isTestSource=\"false\" generated=\"true\" /></content>" ;;
esac
done
if [ "x$MAIN_SOURCE_DIRS" != "x" ] ; then
CONTENT_ROOTS="<content url=\"file://$MODULE_DIR/src/$module\">$MAIN_SOURCE_DIRS</content>$CONTENT_ROOTS"
fi
add_replacement "###MODULE_CONTENT_ROOTS###" "$CONTENT_ROOTS"
DEPENDENCIES=""
for dep in $moduleDependencies; do
case $MODULE_NAMES in # Exclude skipped modules from dependencies
*"$dep"*) DEPENDENCIES="$DEPENDENCIES<orderEntry type=\"module\" module-name=\"$dep\" /> "
esac
done
add_replacement "###DEPENDENCIES###" "$DEPENDENCIES"
cp "$IDEA_OUTPUT/module.iml" "$IDEA_OUTPUT/$module.iml"
IFS="$DEFAULT_IFS"
replace_template_file "$IDEA_OUTPUT/$module.iml"
)
done
)
rm "$IDEA_OUTPUT/module.iml"
if [ "x$ANT_HOME" = "x" ] ; then
# try some common locations, before giving up
if [ -f "/usr/share/ant/lib/ant.jar" ] ; then
ANT_HOME="/usr/share/ant"
elif [ -f "/usr/local/Cellar/ant/1.9.4/libexec/lib/ant.jar" ] ; then
ANT_HOME="/usr/local/Cellar/ant/1.9.4/libexec"
else
echo "FATAL: cannot find ant. Try setting ANT_HOME." >&2; exit 1
fi
fi
CP=$ANT_HOME/lib/ant.jar
rm -rf $CLASSES; mkdir $CLASSES
### Create shell script runner for Windows
if [ "x$CYGPATH" != "x" ] ; then ## CYGPATH may be set in env.cfg
JAVAC_SOURCE_FILE=`cygpath -am $IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java`
JAVAC_SOURCE_PATH=`cygpath -am $IDEA_OUTPUT/src`
JAVAC_CLASSES=`cygpath -am $CLASSES`
JAVAC_CP=`cygpath -am $CP`
JAVAC=javac
elif [ "x$WSL_DISTRO_NAME" != "x" ]; then
JAVAC_SOURCE_FILE=`realpath --relative-to=./ $IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java`
JAVAC_SOURCE_PATH=`realpath --relative-to=./ $IDEA_OUTPUT/src`
JAVAC_CLASSES=`realpath --relative-to=./ $CLASSES`
ANT_TEMP=`mktemp -d -p ./`
cp $ANT_HOME/lib/ant.jar $ANT_TEMP/ant.jar
JAVAC_CP=$ANT_TEMP/ant.jar
JAVAC=javac.exe
else
JAVAC_SOURCE_FILE=$IDEA_OUTPUT/src/idea/IdeaLoggerWrapper.java
JAVAC_SOURCE_PATH=$IDEA_OUTPUT/src
JAVAC_CLASSES=$CLASSES
JAVAC_CP=$CP
JAVAC=javac
if [ "x$PATHTOOL" != "x" ]; then
echo "@echo off" > "$IDEA_OUTPUT/bash.bat"
if [ "x$WSL_DISTRO_NAME" != "x" ] ; then
echo "wsl -d $WSL_DISTRO_NAME --cd \"%cd%\" -e %*" >> "$IDEA_OUTPUT/bash.bat"
else
echo "$WINENV_ROOT\bin\bash.exe -l -c \"cd %CD:\=/%/ && %*\"" >> "$IDEA_OUTPUT/bash.bat"
fi
fi
$BOOT_JDK/bin/$JAVAC -d $JAVAC_CLASSES -sourcepath $JAVAC_SOURCE_PATH -cp $JAVAC_CP $JAVAC_SOURCE_FILE
if [ "x$WSL_DISTRO_NAME" != "x" ]; then
rm -rf $ANT_TEMP
if [ "$VERBOSE" = true ] ; then
IDEA_PROJECT_DIR="`dirname $IDEA_OUTPUT`"
if [ "x$PATHTOOL" != "x" ]; then
IDEA_PROJECT_DIR="`$PATHTOOL -am $IDEA_PROJECT_DIR`"
fi
echo "
Now you can open \"$IDEA_PROJECT_DIR\" as IDEA project
You can also run 'bash \"$IDEA_OUTPUT/jdk-clion/update-project.sh\"' to generate Clion project"
fi

0
configure vendored Normal file → Executable file
View File

View File

@@ -76,7 +76,7 @@
<li><a href="#specifying-the-target-platform">Specifying the Target Platform</a></li>
<li><a href="#toolchain-considerations">Toolchain Considerations</a></li>
<li><a href="#native-libraries">Native Libraries</a></li>
<li><a href="#creating-and-using-sysroots-with-qemu-deboostrap">Creating And Using Sysroots With qemu-deboostrap</a></li>
<li><a href="#cross-compiling-with-debian-sysroots">Cross compiling with Debian sysroots</a></li>
<li><a href="#building-for-armaarch64">Building for ARM/aarch64</a></li>
<li><a href="#building-for-musl">Building for musl</a></li>
<li><a href="#verifying-the-build">Verifying the Build</a></li>
@@ -320,6 +320,7 @@
<li>To install on an apt-based Linux, try running <code>sudo apt-get install libfreetype6-dev</code>.</li>
<li>To install on an rpm-based Linux, try running <code>sudo yum install freetype-devel</code>.</li>
<li>To install on Alpine Linux, try running <code>sudo apk add freetype-dev</code>.</li>
<li>To install on macOS, try running <code>brew install freetype</code>.</li>
</ul>
<p>Use <code>--with-freetype-include=&lt;path&gt;</code> and <code>--with-freetype-lib=&lt;path&gt;</code> if <code>configure</code> does not automatically locate the platform FreeType files.</p>
<h3 id="cups">CUPS</h3>
@@ -628,7 +629,7 @@ cp: cannot stat `arm-linux-gnueabihf/libSM.so&#39;: No such file or directory
cp: cannot stat `arm-linux-gnueabihf/libXt.so&#39;: No such file or directory</code></pre></li>
<li><p>If the X11 libraries are not properly detected by <code>configure</code>, you can point them out by <code>--with-x</code>.</p></li>
</ul>
<h3 id="creating-and-using-sysroots-with-qemu-deboostrap">Creating And Using Sysroots With qemu-deboostrap</h3>
<h3 id="cross-compiling-with-debian-sysroots">Cross compiling with Debian sysroots</h3>
<p>Fortunately, you can create sysroots for foreign architectures with tools provided by your OS. On Debian/Ubuntu systems, one could use <code>qemu-deboostrap</code> to create the <em>target</em> system chroot, which would have the native libraries and headers specific to that <em>target</em> system. After that, we can use the cross-compiler on the <em>build</em> system, pointing into chroot to get the build dependencies right. This allows building for foreign architectures with native compilation speed.</p>
<p>For example, cross-compiling to AArch64 from x86_64 could be done like this:</p>
<ul>
@@ -638,7 +639,7 @@ cp: cannot stat `arm-linux-gnueabihf/libXt.so&#39;: No such file or directory</c
<pre><code>sudo qemu-debootstrap \
--arch=arm64 \
--verbose \
--include=fakeroot,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev \
--include=fakeroot,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev,libffi-dev \
--resolve-deps \
buster \
~/sysroot-arm64 \
@@ -646,67 +647,125 @@ cp: cannot stat `arm-linux-gnueabihf/libXt.so&#39;: No such file or directory</c
<li><p>Make sure the symlinks inside the newly created chroot point to proper locations:</p>
<pre><code>sudo chroot ~/sysroot-arm64 symlinks -cr .</code></pre></li>
<li><p>Configure and build with newly created chroot as sysroot/toolchain-path:</p>
<pre><code>CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ sh ./configure \
--openjdk-target=aarch64-linux-gnu \
--with-sysroot=~/sysroot-arm64 \
--with-toolchain-path=~/sysroot-arm64 \
--with-freetype-lib=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/ \
--with-freetype-include=~/sysroot-arm64/usr/include/freetype2/ \
--x-libraries=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/
<pre><code>sh ./configure \
--openjdk-target=aarch64-linux-gnu \
--with-sysroot=~/sysroot-arm64
make images
ls build/linux-aarch64-server-release/</code></pre></li>
</ul>
<p>The build does not create new files in that chroot, so it can be reused for multiple builds without additional cleanup.</p>
<p>The build system should automatically detect the toolchain paths and dependencies, but sometimes it might require a little nudge with:</p>
<ul>
<li><p>Native compilers: override <code>CC</code> or <code>CXX</code> for <code>./configure</code></p></li>
<li><p>Freetype lib location: override <code>--with-freetype-lib</code>, for example <code>${sysroot}/usr/lib/${target}/</code></p></li>
<li><p>Freetype includes location: override <code>--with-freetype-include</code> for example <code>${sysroot}/usr/include/freetype2/</code></p></li>
<li><p>X11 libraries location: override <code>--x-libraries</code>, for example <code>${sysroot}/usr/lib/${target}/</code></p></li>
</ul>
<p>Architectures that are known to successfully cross-compile like this are:</p>
<table>
<thead>
<tr class="header">
<th style="text-align: left;">Target</th>
<th style="text-align: left;"><code>CC</code></th>
<th style="text-align: left;"><code>CXX</code></th>
<th style="text-align: left;"><code>--arch=...</code></th>
<th style="text-align: left;">Debian tree</th>
<th style="text-align: left;">Debian arch</th>
<th style="text-align: left;"><code>--openjdk-target=...</code></th>
<th><code>--with-jvm-variants=...</code></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;">x86</td>
<td style="text-align: left;">default</td>
<td style="text-align: left;">default</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">i386</td>
<td style="text-align: left;">i386-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">armhf</td>
<td style="text-align: left;">gcc-arm-linux-gnueabihf</td>
<td style="text-align: left;">g++-arm-linux-gnueabihf</td>
<td style="text-align: left;">arm</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">armhf</td>
<td style="text-align: left;">arm-linux-gnueabihf</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">aarch64</td>
<td style="text-align: left;">gcc-aarch64-linux-gnu</td>
<td style="text-align: left;">g++-aarch64-linux-gnu</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">arm64</td>
<td style="text-align: left;">aarch64-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">ppc64el</td>
<td style="text-align: left;">gcc-powerpc64le-linux-gnu</td>
<td style="text-align: left;">g++-powerpc64le-linux-gnu</td>
<td style="text-align: left;">ppc64le</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">ppc64el</td>
<td style="text-align: left;">powerpc64le-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">s390x</td>
<td style="text-align: left;">gcc-s390x-linux-gnu</td>
<td style="text-align: left;">g++-s390x-linux-gnu</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">s390x</td>
<td style="text-align: left;">s390x-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="even">
<td style="text-align: left;">mipsle</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">mipsel</td>
<td style="text-align: left;">mipsel-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">mips64le</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">mips64el</td>
<td style="text-align: left;">mips64el-linux-gnueabi64</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">armel</td>
<td style="text-align: left;">buster</td>
<td style="text-align: left;">arm</td>
<td style="text-align: left;">arm-linux-gnueabi</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">ppc</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">powerpc</td>
<td style="text-align: left;">powerpc-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">ppc64be</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">ppc64</td>
<td style="text-align: left;">powerpc64-linux-gnu</td>
<td>(all)</td>
</tr>
<tr class="odd">
<td style="text-align: left;">m68k</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">m68k</td>
<td style="text-align: left;">m68k-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="even">
<td style="text-align: left;">alpha</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">alpha</td>
<td style="text-align: left;">alpha-linux-gnu</td>
<td>zero</td>
</tr>
<tr class="odd">
<td style="text-align: left;">sh4</td>
<td style="text-align: left;">sid</td>
<td style="text-align: left;">sh4</td>
<td style="text-align: left;">sh4-linux-gnu</td>
<td>zero</td>
</tr>
</tbody>
</table>
<p>Additional architectures might be supported by Debian/Ubuntu Ports.</p>
<h3 id="building-for-armaarch64">Building for ARM/aarch64</h3>
<p>A common cross-compilation target is the ARM CPU. When building for ARM, it is useful to set the ABI profile. A number of pre-defined ABI profiles are available using <code>--with-abi-profile</code>: arm-vfp-sflt, arm-vfp-hflt, arm-sflt, armv5-vfp-sflt, armv6-vfp-hflt. Note that soft-float ABIs are no longer properly supported by the JDK.</p>
<h3 id="building-for-musl">Building for musl</h3>

View File

@@ -454,6 +454,7 @@ rather than bundling the JDK's own copy.
* To install on an rpm-based Linux, try running `sudo yum install
freetype-devel`.
* To install on Alpine Linux, try running `sudo apk add freetype-dev`.
* To install on macOS, try running `brew install freetype`.
Use `--with-freetype-include=<path>` and `--with-freetype-lib=<path>`
if `configure` does not automatically locate the platform FreeType files.
@@ -1089,7 +1090,7 @@ Note that X11 is needed even if you only want to build a headless JDK.
* If the X11 libraries are not properly detected by `configure`, you can
point them out by `--with-x`.
### Creating And Using Sysroots With qemu-deboostrap
### Cross compiling with Debian sysroots
Fortunately, you can create sysroots for foreign architectures with tools
provided by your OS. On Debian/Ubuntu systems, one could use `qemu-deboostrap` to
@@ -1110,7 +1111,7 @@ For example, cross-compiling to AArch64 from x86_64 could be done like this:
sudo qemu-debootstrap \
--arch=arm64 \
--verbose \
--include=fakeroot,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev \
--include=fakeroot,symlinks,build-essential,libx11-dev,libxext-dev,libxrender-dev,libxrandr-dev,libxtst-dev,libxt-dev,libcups2-dev,libfontconfig1-dev,libasound2-dev,libfreetype6-dev,libpng-dev,libffi-dev \
--resolve-deps \
buster \
~/sysroot-arm64 \
@@ -1124,13 +1125,9 @@ For example, cross-compiling to AArch64 from x86_64 could be done like this:
* Configure and build with newly created chroot as sysroot/toolchain-path:
```
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ sh ./configure \
--openjdk-target=aarch64-linux-gnu \
--with-sysroot=~/sysroot-arm64 \
--with-toolchain-path=~/sysroot-arm64 \
--with-freetype-lib=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/ \
--with-freetype-include=~/sysroot-arm64/usr/include/freetype2/ \
--x-libraries=~/sysroot-arm64/usr/lib/aarch64-linux-gnu/
sh ./configure \
--openjdk-target=aarch64-linux-gnu \
--with-sysroot=~/sysroot-arm64
make images
ls build/linux-aarch64-server-release/
```
@@ -1138,17 +1135,34 @@ For example, cross-compiling to AArch64 from x86_64 could be done like this:
The build does not create new files in that chroot, so it can be reused for multiple builds
without additional cleanup.
The build system should automatically detect the toolchain paths and dependencies, but sometimes
it might require a little nudge with:
* Native compilers: override `CC` or `CXX` for `./configure`
* Freetype lib location: override `--with-freetype-lib`, for example `${sysroot}/usr/lib/${target}/`
* Freetype includes location: override `--with-freetype-include` for example `${sysroot}/usr/include/freetype2/`
* X11 libraries location: override `--x-libraries`, for example `${sysroot}/usr/lib/${target}/`
Architectures that are known to successfully cross-compile like this are:
Target `CC` `CXX` `--arch=...` `--openjdk-target=...`
------------ ------------------------- --------------------------- ------------- -----------------------
x86 default default i386 i386-linux-gnu
armhf gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf armhf arm-linux-gnueabihf
aarch64 gcc-aarch64-linux-gnu g++-aarch64-linux-gnu arm64 aarch64-linux-gnu
ppc64el gcc-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu ppc64el powerpc64le-linux-gnu
s390x gcc-s390x-linux-gnu g++-s390x-linux-gnu s390x s390x-linux-gnu
Additional architectures might be supported by Debian/Ubuntu Ports.
Target Debian tree Debian arch `--openjdk-target=...` `--with-jvm-variants=...`
------------ ------------ ------------- ------------------------ --------------
x86 buster i386 i386-linux-gnu (all)
arm buster armhf arm-linux-gnueabihf (all)
aarch64 buster arm64 aarch64-linux-gnu (all)
ppc64le buster ppc64el powerpc64le-linux-gnu (all)
s390x buster s390x s390x-linux-gnu (all)
mipsle buster mipsel mipsel-linux-gnu zero
mips64le buster mips64el mips64el-linux-gnueabi64 zero
armel buster arm arm-linux-gnueabi zero
ppc sid powerpc powerpc-linux-gnu zero
ppc64be sid ppc64 powerpc64-linux-gnu (all)
m68k sid m68k m68k-linux-gnu zero
alpha sid alpha alpha-linux-gnu zero
sh4 sid sh4 sh4-linux-gnu zero
### Building for ARM/aarch64

View File

@@ -94,6 +94,7 @@
<li><p>All source files must have a globally unique basename. The build system depends on this uniqueness.</p></li>
<li><p>Do not put non-trivial function implementations in .hpp files. If the implementation depends on other .hpp files, put it in a .cpp or a .inline.hpp file.</p></li>
<li><p>.inline.hpp files should only be included in .cpp or .inline.hpp files.</p></li>
<li><p>All .inline.hpp files should include their corresponding .hpp file as the first include line. Declarations needed by other files should be put in the .hpp file, and not in the .inline.hpp file. This rule exists to resolve problems with circular dependencies between .inline.hpp files.</p></li>
<li><p>All .cpp files include precompiled.hpp as the first include line.</p></li>
<li><p>precompiled.hpp is just a build time optimization, so don't rely on it to resolve include problems.</p></li>
<li><p>Keep the include lines alphabetically sorted.</p></li>
@@ -303,6 +304,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><p>Defaulted and deleted functions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm">n2346</a>)</p></li>
<li><p>Dynamic initialization and destruction with concurrency (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm">n2660</a>)</p></li>
<li><p><code>final</code> virtual specifiers for classes and virtual functions (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm">n2928</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm">n3206</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm">n3272</a>)</p></li>
<li><p><code>override</code> virtual specifiers for virtual functions (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm">n2928</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm">n3206</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm">n3272</a>)</p></li>
<li><p>Local and unnamed types as template parameters (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm">n2657</a>)</p></li>
<li><p>Range-based <code>for</code> loops (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html">n2930</a>) (<a href="https://en.cppreference.com/w/cpp/language/range-for">range-for</a>)</p></li>
</ul>
@@ -330,7 +332,6 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<h3 id="undecided-features">Undecided Features</h3>
<p>This list is incomplete; it serves to explicitly call out some features that have not yet been discussed.</p>
<ul>
<li><p><code>overrides</code> virtual specifiers for virtual functions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm">n3272</a>)</p></li>
<li><p>Trailing return type syntax for functions (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2541.htm">n2541</a>)</p></li>
<li><p>Variable templates (<a href="https://isocpp.org/files/papers/N3651.pdf">n3651</a>)</p></li>
<li><p>Member initializers and aggregates (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3653.html">n3653</a>)</p></li>

View File

@@ -138,6 +138,11 @@ a .inline.hpp file.
* .inline.hpp files should only be included in .cpp or .inline.hpp
files.
* All .inline.hpp files should include their corresponding .hpp file as
the first include line. Declarations needed by other files should be put
in the .hpp file, and not in the .inline.hpp file. This rule exists to
resolve problems with circular dependencies between .inline.hpp files.
* All .cpp files include precompiled.hpp as the first include line.
* precompiled.hpp is just a build time optimization, so don't rely on
@@ -747,6 +752,11 @@ part of the avoidance of the C++ Standard Library in HotSpot code.
([n3206](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm)),
([n3272](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm))
* `override` virtual specifiers for virtual functions
([n2928](http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm)),
([n3206](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm)),
([n3272](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm))
* Local and unnamed types as template parameters
([n2657](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm))
@@ -813,9 +823,6 @@ in HotSpot code because of the "no implicit boolean" guideline.)
This list is incomplete; it serves to explicitly call out some
features that have not yet been discussed.
* `overrides` virtual specifiers for virtual functions
([n3272](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm))
* Trailing return type syntax for functions
([n2541](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2541.htm))

View File

@@ -2,9 +2,12 @@
FROM centos:7
RUN yum -y install centos-release-scl
RUN yum -y install devtoolset-8
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool 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://download.java.net/java/GA/jdk13.0.1/cec27d702aa74d5a8630c65ae61e4305/9/GPL/openjdk-13.0.1_linux-x64_bin.tar.gz \
-O - | tar xz -C /
ENV JAVA_HOME /jbrsdk
ENV PATH $JAVA_HOME/bin:/opt/rh/devtoolset-8/root/usr/bin:$PATH
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool gcc gcc-c++ libstdc++-devel alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel git
# Install Java 16
RUN wget https://cdn.azul.com/zulu/bin/zulu16.28.11-ca-jdk16.0.0-linux_x64.tar.gz \
-O - | tar xz -C /
RUN mv /zulu16.28.11-ca-jdk16.0.0-linux_x64 /jdk16.0.0
ENV PATH /opt/rh/devtoolset-8/root/usr/bin:$PATH
RUN mkdir .git
RUN git config user.email "builduser@jetbrains.com"
RUN git config user.name "builduser"

View File

@@ -0,0 +1,9 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="Copyright 2000-&amp;#36;today.year JetBrains s.r.o.&#10;&#10;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10;you may not use this file except in compliance with the License.&#10;You may obtain a copy of the License at&#10;&#10;http://www.apache.org/licenses/LICENSE-2.0&#10;&#10;Unless required by applicable law or agreed to in writing, software&#10;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10;See the License for the specific language governing permissions and&#10;limitations under the License." />
<option name="keyword" value="Copyright" />
<option name="allowReplaceKeyword" value="JetBrains" />
<option name="myName" value="JetBrains" />
<option name="myLocal" value="true" />
</copyright>
</component>

View File

@@ -0,0 +1,3 @@
<component name="CopyrightManager">
<settings default="JetBrains" />
</component>

View File

@@ -0,0 +1 @@
JetBrainsRuntime

View File

@@ -0,0 +1,9 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="Copyright 2000-&amp;#36;today.year JetBrains s.r.o.&#10;&#10;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10;you may not use this file except in compliance with the License.&#10;You may obtain a copy of the License at&#10;&#10;http://www.apache.org/licenses/LICENSE-2.0&#10;&#10;Unless required by applicable law or agreed to in writing, software&#10;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10;See the License for the specific language governing permissions and&#10;limitations under the License." />
<option name="keyword" value="Copyright" />
<option name="allowReplaceKeyword" value="JetBrains" />
<option name="myName" value="JetBrains" />
<option name="myLocal" value="true" />
</copyright>
</component>

View File

@@ -0,0 +1,3 @@
<component name="CopyrightManager">
<settings default="JetBrains" />
</component>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="IssueNavigationConfiguration">
<option name="links">
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})([A-Z]+\-\d+)(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://youtrack.jetbrains.com/issue/$1" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})(?:JDK-)?(\d{7})(?=$|\s|\p{Punct})" />
<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>
</project>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="IssueNavigationConfiguration">
<option name="links">
<list>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})([A-Z]+\-\d+)(?=$|\s|\p{Punct})" />
<option name="linkRegexp" value="https://youtrack.jetbrains.com/issue/$1" />
</IssueNavigationLink>
<IssueNavigationLink>
<option name="issueRegexp" value="(?:^|\s|\p{Punct})(?:JDK-)?(\d{7})(?=$|\s|\p{Punct})" />
<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>
</project>

View File

@@ -1,6 +0,0 @@
#Thu Dec 06 20:31:44 MSK 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.3-all.zip

View File

@@ -1,172 +0,0 @@
#!/usr/bin/env sh
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=$(save "$@")
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "$@"

View File

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

View File

@@ -1,9 +0,0 @@
#!/bin/bash -x
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
script_dir=jb/project/tools/linux/scripts
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?

View File

@@ -4,9 +4,6 @@
# 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
@@ -21,22 +18,28 @@ JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-version-build=$JDK_BUILD_NUMBER \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-opt=b$build_number \
--with-boot-jdk=amazon-corretto-11.0.5.10.1-linux-aarch64 \
--with-import-modules=./modular-sdk \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes || exit $?
make clean CONF=linux-aarch64-normal-server-release || exit $?
make images CONF=linux-aarch64-normal-server-release test-image || exit $?
make clean CONF=linux-aarch64-server-release || exit $?
make images CONF=linux-aarch64-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-aarch64-b${build_number}
BASE_DIR=build/linux-aarch64-normal-server-release/images
BASE_DIR=build/linux-aarch64-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
@@ -47,6 +50,9 @@ 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 $?

View File

@@ -1,12 +1,13 @@
#!/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
# 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 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
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
@@ -16,124 +17,120 @@
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_linux_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
JCEF_PATH=${JCEF_PATH:=./jcef_linux_x64}
function create_jbr {
source jb/project/tools/common/scripts/common.sh
case "$1" in
"${bundle_type}_lw")
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
;;
"jfx" | "jcef")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
*)
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
esac
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
JBR=$JBR_BASE_NAME-linux-x64-b$build_number
[ "$bundle_type" == "fd" ] && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-linux-x64-${fastdebug_infix}b${build_number}
echo Running jlink....
[ -d "$IMAGES_DIR"/"$__arch_name" ] && rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
$JSDK/bin/jlink \
--module-path $JSDK/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output $BASE_DIR/$JBR_BUNDLE
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$IMAGES_DIR"/"$__arch_name"
if [[ "$bundle_type" == *jcef* ]]; then
cp -R $BASE_DIR/$JBR_BUNDLE $BASE_DIR/jbr
cp -R jcef_linux_x64/* $BASE_DIR/$JBR_BUNDLE/lib || exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$IMAGES_DIR"/"$__arch_name"/release
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' "$IMAGES_DIR"/"$__arch_name"/release > release
mv release "$IMAGES_DIR"/"$__arch_name"/release
fi
grep -v "^JAVA_VERSION" $JSDK/release | grep -v "^MODULES" >> $BASE_DIR/$JBR_BUNDLE/release
echo Creating $JBR.tar.gz ...
if [ ! -z "$bundle_type" ]; then
rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
fi
tar -pcf $JBR.tar -C $BASE_DIR jbr || exit $?
gzip $JBR.tar || exit $?
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
# jmod does not preserve file permissions (JDK-8173610)
[ -f "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper ] && chmod a+x "$IMAGES_DIR"/"$__arch_name"/lib/jcef_helper
echo Creating "$JBR".tar.gz ...
tar -pcf "$JBR".tar -C "$IMAGES_DIR" "$__arch_name" || do_exit $?
[ -f "$JBR".tar.gz ] && rm "$JBR.tar.gz"
gzip "$JBR".tar || do_exit $?
rm -rf "${IMAGES_DIR:?}"/"$__arch_name"
}
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=linux-x86_64-server-release
#git checkout -- modules.list src
case "$bundle_type" in
"jfx")
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
;;
"jcef")
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=linux-x86_64-server-fastdebug
;;
esac
if [ -z "$bundle_type" ]; then
JBR_BUNDLE=jbr
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-boot-jdk=$BOOT_JDK \
--enable-cds=yes || exit $?
else
JBR_BUNDLE=jbr_${bundle_type}
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-import-modules=./modular-sdk \
--with-boot-jdk=$BOOT_JDK \
--enable-cds=yes || exit $?
fi
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes || do_exit $?
make images CONF=linux-x86_64-server-release || exit $?
make clean CONF=$RELEASE_NAME || exit $?
make images CONF=$RELEASE_NAME || do_exit $?
JSDK=build/linux-x86_64-server-release/images/jdk
JBSDK=$JBRSDK_BASE_NAME-linux-x64-b$build_number
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
echo Fixing permissions
chmod -R a+r $JSDK
BASE_DIR=build/linux-x86_64-server-release/images
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods $JSDK $JCEF_PATH/jmods $JSDK/jmods $JSDK_MODS_DIR || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
if [[ "$bundle_type" == *jcef* ]]; then
cp -R jcef_linux_x64/* $BASE_DIR/$JBRSDK_BUNDLE/lib || exit $?
fi
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
echo Creating $JBSDK.tar.gz ...
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
-C $BASE_DIR $JBRSDK_BUNDLE || exit $?
gzip $JBSDK.tar || exit $?
jbr_name_postfix="_${bundle_type}"
fi
create_jbr ${bundle_type}
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
make test-image || exit $?
# create sdk image bundle
modules=$(cat $JSDK/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle $JBRSDK_BUNDLE $JBRSDK_BUNDLE $JSDK_MODS_DIR "$modules" || do_exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x64-b$build_number
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-linux-test-x64-b${build_number}
echo Creating "$JBRSDK_TEST" ...
make test-image CONF=$RELEASE_NAME || do_exit $?
tar -pcf "$JBRSDK_TEST".tar -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
gzip "$JBRSDK_TEST".tar || do_exit $?
fi
echo Creating $JBSDK_TEST.tar.gz ...
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
gzip $JBRSDK_TEST.tar || exit $?
fi
do_exit 0

View File

@@ -1,72 +0,0 @@
#!/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}
sh configure \
--disable-warnings-as-errors \
--with-debug-level=fastdebug \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-pre= \
--with-version-opt=b$build_number \
--with-import-modules=./modular-sdk \
--enable-cds=yes || exit $?
make clean CONF=linux-x86_64-normal-server-fastdebug || exit $?
make images CONF=linux-x86_64-normal-server-fastdebug || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-x64-fastdebug-b${build_number}
BASE_DIR=build/linux-x86_64-normal-server-fastdebug/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 $?
cp -R jcef_linux_x64/* $BASE_DIR/$JBRSDK_BUNDLE/lib || exit $?
echo Creating $JBSDK.tar.gz ...
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-x64-fastdebug-b$build_number
echo Running jlink....
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules.list | sed s/" "//g | sed s/,$//g) \
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
cp -R jcef_linux_x64/* $BASE_DIR/$JBR_BUNDLE/lib || 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 -czf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
gzip $JBR.tar || exit $?

View File

@@ -4,9 +4,6 @@
# 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
@@ -21,21 +18,28 @@ JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
linux32 bash configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-version-build=$JDK_BUILD_NUMBER \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-opt=b$build_number \
--with-boot-jdk=/jbrsdk-11.0.5-b1 \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-boot-jdk=${BOOT_JDK} \
--enable-cds=yes || exit $?
make clean CONF=linux-x86-normal-server-release || exit $?
make images CONF=linux-x86-normal-server-release test-image || exit $?
make clean CONF=linux-x86-server-release || exit $?
make images CONF=linux-x86-server-release test-image || exit $?
JBSDK=${JBRSDK_BASE_NAME}-linux-x86-b${build_number}
BASE_DIR=build/linux-x86-normal-server-release/images
BASE_DIR=build/linux-x86-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
@@ -46,6 +50,9 @@ 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 $?

View File

@@ -1,9 +0,0 @@
#!/bin/bash -x
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
script_dir=jb/project/tools/mac/scripts
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?

View File

@@ -1,12 +1,13 @@
#!/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
# 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 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
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
@@ -16,133 +17,159 @@
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_mac
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
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}
MAJOR_JBSDK_VERSION=$(echo "$JBSDK_VERSION_WITH_DOTS" | awk -F "." '{print $1}')
BOOT_JDK=${BOOT_JDK:=$(/usr/libexec/java_home -v 16)}
function create_jbr {
source jb/project/tools/common/scripts/common.sh
case "$1" in
"${bundle_type}_lw")
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
;;
"jfx" | "jcef")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
"jfx_jcef")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
*)
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
cat modules.list > modules_tmp.list
;;
esac
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-x64-b${build_number}
${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} || 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}
if [[ "${bundle_type}" == *jcef* ]]; then
rm -rf ${JRE_CONTENTS}/Frameworks || exit $?
rm -rf ${JRE_CONTENTS}/Helpers || exit $?
cp -a jcef_mac/Frameworks ${JRE_CONTENTS} || exit $?
cp -a jcef_mac/Helpers ${JRE_CONTENTS} || exit $?
fi
echo Creating ${JBR}.tar.gz ...
if [ ! -z "$bundle_type" ]; then
rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
fi
COPYFILE_DISABLE=1 tar -pczf ${JBR}.tar.gz --exclude='*.dSYM' --exclude='man' -C ${BASE_DIR} jbr || exit $?
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
function copyJNF {
__contents_dir=$1
mkdir -p ${__contents_dir}/Frameworks
cp -Rp Frameworks/JavaNativeFoundation.framework ${__contents_dir}/Frameworks
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
function create_image_bundle {
__bundle_name=$1
__arch_name=$2
__modules_path=$3
__modules=$4
tmp=.bundle.$$.tmp
mkdir "$tmp" || do_exit $?
[ "$bundle_type" == "fd" ] && fastdebug_infix="fastdebug-"
JBR=${__bundle_name}-${JBSDK_VERSION}-osx-${architecture}-${fastdebug_infix}b${build_number}
JRE_CONTENTS=$tmp/$__arch_name/Contents
mkdir -p "$JRE_CONTENTS" || do_exit $?
echo Running jlink...
"$JSDK"/bin/jlink \
--module-path "$__modules_path" --no-man-pages --compress=2 \
--add-modules "$__modules" --output "$JRE_CONTENTS/Home" || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> "$JRE_CONTENTS/Home/release"
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $JRE_CONTENTS/Home/release > release
mv release $JRE_CONTENTS/Home/release
fi
cp -R "$JSDK"/../MacOS "$JRE_CONTENTS"
cp "$JSDK"/../Info.plist "$JRE_CONTENTS"
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
[ -n "$bundle_type" ] && (cp -a $JCEF_PATH/Frameworks "$JRE_CONTENTS" || do_exit $?)
echo Creating "$JBR".tar.gz ...
COPYFILE_DISABLE=1 tar -pczf "$JBR".tar.gz --exclude='*.dSYM' --exclude='man' -C "$tmp" "$__arch_name" || do_exit $?
rm -rf "$tmp"
}
WITH_DEBUG_LEVEL="--with-debug-level=release"
CONF_ARCHITECTURE=x86_64
if [[ "${architecture}" == *aarch64* ]]; then
CONF_ARCHITECTURE=aarch64
fi
RELEASE_NAME=macosx-${CONF_ARCHITECTURE}-server-release
#git checkout -- modules.list src
case "$bundle_type" in
"jfx")
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
;;
"jcef")
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=macosx-${CONF_ARCHITECTURE}-server-fastdebug
JBSDK=macosx-${architecture}-server-release
;;
esac
if [ -z "$bundle_type" ]; then
JBR_BUNDLE=jbr
if [[ "${architecture}" == *aarch64* ]]; then
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-boot-jdk=`/usr/libexec/java_home -v $BOOT_JDK` \
--enable-cds=yes || exit $?
else
JBR_BUNDLE=jbr_${bundle_type}
sh configure \
--disable-warnings-as-errors \
--with-debug-level=release \
$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=./modular-sdk \
--with-boot-jdk=`/usr/libexec/java_home -v $BOOT_JDK` \
--enable-cds=yes || exit $?
--with-version-build="${JDK_BUILD_NUMBER}" \
--with-version-opt=b"${build_number}" \
--with-boot-jdk="$BOOT_JDK" \
--disable-hotspot-gtest --disable-javac-server --disable-full-docs --disable-manpages \
--enable-cds=no \
--with-extra-cflags="-F$(pwd)/Frameworks" \
--with-extra-cxxflags="-F$(pwd)/Frameworks" \
--with-extra-ldflags="-F$(pwd)/Frameworks" || do_exit $?
else
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes || do_exit $?
fi
make images CONF=macosx-x86_64-server-release || exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
make images CONF=$RELEASE_NAME || do_exit $?
JSDK=build/macosx-x86_64-server-release/images/jdk-bundle
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-b${build_number}
BASE_DIR=jre
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk-bundle/jdk-$MAJOR_JBSDK_VERSION.jdk/Contents/Home
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
rm -rf $BASE_DIR
mkdir $BASE_DIR || exit $?
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
cp -a $JSDK/jdk-$JBSDK_VERSION_WITH_DOTS.jdk $BASE_DIR/$JBRSDK_BUNDLE || exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
if [[ "$bundle_type" == *jcef* ]]; then
cp -a jcef_mac/Frameworks $BASE_DIR/$JBRSDK_BUNDLE/Contents/ || exit $?
cp -a jcef_mac/Helpers $BASE_DIR/$JBRSDK_BUNDLE/Contents/ || exit $?
fi
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
echo Creating $JBSDK.tar.gz ...
COPYFILE_DISABLE=1 tar -pczf $JBSDK.tar.gz -C $BASE_DIR \
--exclude='._*' --exclude='.DS_Store' --exclude='*~' \
--exclude='Home/demo' --exclude='Home/man' --exclude='Home/sample' \
$JBRSDK_BUNDLE || exit $?
jbr_name_postfix="_${bundle_type}"
fi
create_jbr "${bundle_type}" || exit $?
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
make test-image || exit $?
# create sdk image bundle
modules=$(cat "$JSDK"/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
JBRSDK_TEST=$JBRSDK_BASE_NAME-osx-test-x64-b$build_number
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=${JBRSDK_BUNDLE}-${JBSDK_VERSION}-osx-test-${architecture}-b${build_number}
echo Creating "$JBRSDK_TEST" ...
make test-image CONF=$RELEASE_NAME || do_exit $?
[ -f "$JBRSDK_TEST.tar.gz" ] && rm "$JBRSDK_TEST.tar.gz"
COPYFILE_DISABLE=1 tar -pczf "$JBRSDK_TEST".tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi
echo Creating $JBRSDK_TEST.tar.gz ...
COPYFILE_DISABLE=1 tar -pczf $JBRSDK_TEST.tar.gz -C build/macosx-x86_64-server-release/images \
--exclude='test/jdk/demos' test || exit $?
fi
do_exit 0

View File

@@ -1,83 +0,0 @@
#!/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}
sh configure \
--disable-warnings-as-errors \
--with-debug-level=fastdebug \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-pre= \
--with-version-opt=b$build_number \
--with-import-modules=./modular-sdk \
--with-boot-jdk=`/usr/libexec/java_home -v 11` \
--enable-cds=yes || exit $?
make clean CONF=macosx-x86_64-normal-server-fastdebug || exit $?
make images CONF=macosx-x86_64-normal-server-fastdebug || exit $?
JSDK=build/macosx-x86_64-normal-server-fastdebug/images/jdk-bundle
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-fastdebug-b${build_number}
BASE_DIR=jre
JBRSDK_BUNDLE=jbrsdk
rm -rf $BASE_DIR
mkdir $BASE_DIR || exit $?
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
cp -a $JSDK/jdk-$JBSDK_VERSION_WITH_DOTS.jdk $BASE_DIR/$JBRSDK_BUNDLE || exit $?
echo Creating $JBSDK.tar.gz ...
cp -a jcef_mac/Frameworks $BASE_DIR/$JBRSDK_BUNDLE/Contents/
cp -a jcef_mac/Helpers $BASE_DIR/$JBRSDK_BUNDLE/Contents
COPYFILE_DISABLE=1 \
tar -pczf ${JBSDK}.tar.gz -C ${BASE_DIR} \
--exclude='._*' --exclude='.DS_Store' --exclude='*~' \
--exclude='Home/demo' --exclude='Home/man' --exclude='Home/sample' \
${JBRSDK_BUNDLE} || exit $?
JBR_BUNDLE=jbr
JRE_CONTENTS=$BASE_DIR/$JBR_BUNDLE/Contents
JRE_HOME=$JRE_CONTENTS/Home
JBR_BASE_NAME=jbr-$JBSDK_VERSION
mkdir -p $JRE_CONTENTS
if [ -d "$JRE_HOME" ]; then
rm -rf $JRE_HOME
fi
JBR=${JBR_BASE_NAME}-osx-x64-fastdebug-b${build_number}
$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.list | sed s/" "//g) --output $JRE_HOME || 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
cp -a jcef_mac/Frameworks ${JRE_CONTENTS} || exit $?
cp -a jcef_mac/Helpers ${JRE_CONTENTS} || exit $?
echo Creating $JBR.tar.gz ...
COPYFILE_DISABLE=1 tar -pczf $JBR.tar.gz --exclude='*.dSYM' --exclude='man' -C $BASE_DIR $JBR_BUNDLE || exit $?

View File

@@ -30,12 +30,26 @@ 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
done
if [ -d "$APP_DIRECTORY/Contents/Frameworks" ]; then
log "Signing frameworks..."
for f in $APP_DIRECTORY/Contents/Frameworks/*; do
find "$f" \
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" \) \
-exec codesign --timestamp --force \
-v -s "$JB_CERT" \
--entitlements entitlements.xml {} \;
codesign --timestamp --force \
-v -s "$JB_CERT" --options=runtime \
--entitlements entitlements.xml "$f"
done
fi
log "Signing libraries in jars in $PWD"
# todo: add set -euo pipefail; into the inner sh -c
@@ -54,7 +68,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 +84,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,19 +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 -d $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks; then
mv $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks $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"
@@ -128,18 +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
if test -d $BACKUP_JMODS/Frameworks; then
mv $BACKUP_JMODS/Frameworks $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 7c4b3e9cb6d..5ed60349ca7 100644
--- modules.list
+++ modules.list
@@ -53,4 +53,7 @@ jdk.security.jgss,
jdk.unsupported,
jdk.xml.dom,
jdk.zipfs,
-jdk.hotspot.agent
+jdk.hotspot.agent,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index b663b382f52..3e9acdc0c27 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -109,7 +109,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,9 +0,0 @@
#!/bin/bash -x
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
script_dir=jb/project/tools/windows/scripts
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?

View File

@@ -1,12 +1,13 @@
#!/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
# 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 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
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
@@ -16,104 +17,102 @@
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_win_x64
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
bundle_type=$4
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
WORK_DIR=$(pwd)
JCEF_PATH=${JCEF_PATH:=$WORK_DIR/jcef_win_x64}
function create_jbr {
source jb/project/tools/common/scripts/common.sh
case "$1" in
"${bundle_type}_lw")
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
;;
"jfx" | "jcef" | "jfx_jcef")
cat modules.list > modules_tmp.list
;;
*)
cat modules.list > modules_tmp.list
;;
esac
rm -rf ${JBR_BUNDLE}
function create_image_bundle {
__bundle_name=$1
__modules_path=$2
__modules=$3
[ -d $__bundle_name ] && rm -rf $__bundle_name
echo Running jlink ...
${JSDK}/bin/jlink \
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
if [[ "${bundle_type}" == *jcef* ]]
then
cp -R jcef_win_x64/* ${JBR_BUNDLE}/bin
--module-path $__modules_path --no-man-pages --compress=2 \
--add-modules $__modules --output $__bundle_name || do_exit $?
grep -v "^JAVA_VERSION" "$JSDK"/release | grep -v "^MODULES" >> $__bundle_name/release
if [ "$__bundle_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $__bundle_name/release > release
mv release $__bundle_name/release
fi
echo Modifying release info ...
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release
}
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WORK_DIR=$(pwd)
WITH_DEBUG_LEVEL="--with-debug-level=release"
RELEASE_NAME=windows-x86_64-server-release
#git checkout -- modules.list src
case "$bundle_type" in
"jfx")
echo "Excluding jcef modules"
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
;;
"jcef")
echo "Excluding jfx modules"
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
do_reset_changes=1
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=1
do_reset_changes=1
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=1
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=windows-x86_64-server-fastdebug
;;
esac
PATH="/usr/local/bin:/usr/bin:${PATH}"
sh ./configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-version-pre= \
--with-version-build=$JDK_BUILD_NUMBER \
--with-version-opt=b${build_number} \
--with-toolchain-version=$TOOLCHAIN_VERSION \
--with-boot-jdk=$BOOT_JDK \
--disable-ccache \
--enable-cds=yes || do_exit $?
if [ -z "$bundle_type" ]; then
bash ./configure \
--disable-warnings-as-errors \
--with-target-bits=64 \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || exit 1
make LOG=info CONF=$RELEASE_NAME clean images test-image || do_exit $?
else
bash ./configure \
--disable-warnings-as-errors \
--with-target-bits=64 \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-import-modules=${WORK_DIR}/modular-sdk \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--with-boot-jdk=${BOOT_JDK} \
--disable-ccache \
--enable-cds=yes || exit 1
make LOG=info CONF=$RELEASE_NAME clean images || do_exit $?
fi
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
make LOG=info images CONF=windows-x86_64-server-release test-image || exit 1
else
make LOG=info images CONF=windows-x86_64-server-release || exit 1
fi
JSDK=build/windows-x86_64-server-release/images/jdk
if [[ "$bundle_type" == "*jcef*" || -z "$bundle_type" ]]; then
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-b${build_number}
fi
BASE_DIR=build/windows-x86_64-server-release/images
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
if [[ "$bundle_type" == "*jcef*" ]]; then
cp -R jcef_win_x64/* ${JBRSDK_BUNDLE}/bin
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* ${JSDK_MODS_DIR} # $JSDK/jmods is not unchanged
jbr_name_postfix="_${bundle_type}"
fi
if [ -z "$bundle_type" ]; then
JBR_BUNDLE=jbr
else
JBR_BUNDLE=jbr_${bundle_type}
fi
create_jbr ${bundle_type}
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" $JSDK_MODS_DIR "$modules" || do_exit $?
#JBR_BUNDLE=jbr_${bundle_type}_lw
#create_jbr ${bundle_type}_lw
# create sdk image bundle
modules=$(cat ${JSDK}/release | grep MODULES | sed s/MODULES=//g | sed s/' '/,/g | sed s/\"//g | sed s/\\r//g | sed s/\\n//g)
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
do_exit 0

View File

@@ -4,9 +4,6 @@
# 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
@@ -21,30 +18,38 @@ JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
source jb/project/tools/common/scripts/common.sh
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
WORK_DIR=$(pwd)
[ -z "$bundle_type" ] && (git apply -p0 < jb/project/tools/patches/exclude_jcef_module.patch || exit $?)
PATH="/usr/local/bin:/usr/bin:${PATH}"
./configure \
--disable-warnings-as-errors \
--disable-debug-symbols \
--with-target-bits=32 \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-version-pre= \
--with-version-build=${JDK_BUILD_NUMBER} \
--with-version-opt=b${build_number} \
--with-toolchain-version=2015 \
--with-toolchain-version=${TOOLCHAIN_VERSION} \
--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
make clean CONF=windows-x86-server-release || exit 1
make LOG=info images CONF=windows-x86-server-release test-image || exit 1
JBSDK=${JBRSDK_BASE_NAME}-windows-x86-b${build_number}
BASE_DIR=build/windows-x86-normal-server-release/images
BASE_DIR=build/windows-x86-server-release/images
JSDK=${BASE_DIR}/jdk
JBRSDK_BUNDLE=jbrsdk
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
sed 's/JBR/JBRSDK/g' ${JSDK}/release > release
mv release ${JBRSDK_BUNDLE}/release
JBR_BUNDLE=jbr
rm -rf ${JBR_BUNDLE}
@@ -54,4 +59,4 @@ ${JSDK}/bin/jlink \
--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
#grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release

View File

@@ -1,12 +1,13 @@
#!/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
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies udate release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to 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
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the bundles without any additional modules (jcef)
# jcef - the bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
@@ -17,6 +18,8 @@
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
source jb/project/tools/common/scripts/common.sh
JBSDK_VERSION=$1
JDK_BUILD_NUMBER=$2
build_number=$3
@@ -24,56 +27,51 @@ bundle_type=$4
function pack_jbr {
case "$1" in
"${bundle_type}_lw")
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
;;
"jfx" | "jcef")
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
;;
"jfx_jcef" | "")
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
;;
*)
echo "***ERR*** bundle was not specified" && exit 1
;;
esac
if [ -z "${bundle_type}" ]; then
JBR_BUNDLE=jbr
else
JBR_BUNDLE=jbr_${bundle_type}
[ -d ${BASE_DIR}/jbr ] && rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
fi
JBR_BASE_NAME=${JBR_BUNDLE}-${JBSDK_VERSION}
JBR=$JBR_BASE_NAME-windows-x64-b$build_number
echo Creating $JBR.tar.gz ...
if [ ! -z "$bundle_type" ]; then
rm -rf ${BASE_DIR}/jbr
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
fi
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR jbr || exit 1
#rm -rf ${BASE_DIR}/${JBR_BUNDLE}
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR jbr || do_exit $?
}
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
JBR_BASE_NAME=jbr-$JBSDK_VERSION
RELEASE_NAME=windows-x86_64-server-release
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-b${build_number}
case "$bundle_type" in
"nomod" | "")
bundle_type=""
;;
"fd")
RELEASE_NAME=macosx-x86_64-server-fastdebug
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-fastdebug-b${build_number}
;;
esac
IMAGES_DIR=build/windows-x86_64-server-release/images
IMAGES_DIR=build/$RELEASE_NAME/images
JSDK=$IMAGES_DIR/jdk
JBSDK=$JBRSDK_BASE_NAME-windows-x64-b$build_number
BASE_DIR=.
if [ -z "$bundle_type" ]; then
JBR_BUNDLE=jbr
else
JBR_BUNDLE=jbr_${bundle_type}
fi
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
JBRSDK_BUNDLE=jbrsdk
echo Creating $JBSDK.tar.gz ...
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || exit 1
[ -f "$JBSDK.tar.gz" ] && rm "$JBSDK.tar.gz"
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || do_exit $?
fi
JBR_BUNDLE=jbr_${bundle_type}
pack_jbr $bundle_type
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
if [ -z "$bundle_type" ]; then
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x64-b$build_number
echo Creating $JBRSDK_TEST.tar.gz ...
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || exit 1
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || do_exit $?
fi

View File

@@ -4,9 +4,6 @@
# 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
@@ -24,7 +21,7 @@ build_number=$3
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
JBR_BASE_NAME=jbr-$JBSDK_VERSION
IMAGES_DIR=build/windows-x86-normal-server-release/images
IMAGES_DIR=build/windows-x86-server-release/images
JSDK=$IMAGES_DIR/jdk
JBSDK=$JBRSDK_BASE_NAME-windows-x86-b$build_number
BASE_DIR=.

View File

@@ -49,7 +49,8 @@ TARGETS += $(patsubst %, $(BUILDTOOLS_OUTPUTDIR)/gensrc/%/module-info.java, \
$(INTERIM_LANGTOOLS_MODULES))
$(eval $(call SetupCopyFiles, COPY_PREVIEW_FEATURES, \
FILES := $(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java, \
FILES := $(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java \
$(TOPDIR)/src/java.base/share/classes/jdk/internal/javac/NoPreview.java, \
DEST := $(BUILDTOOLS_OUTPUTDIR)/gensrc/java.base.interim/jdk/internal/javac/, \
))

View File

@@ -52,94 +52,6 @@ $(eval $(call SetupJavaCompilation, BUILD_TOOLS_HOTSPOT, \
TARGETS += $(BUILD_TOOLS_HOTSPOT)
################################################################################
# Graal build tools
ifeq ($(INCLUDE_GRAAL), true)
VM_CI_SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.ci/share/classes
SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.compiler/share/classes
##############################################################################
# Compile the annotation processors
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_MATCH_PROCESSOR, \
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
SRC := \
$(SRC_DIR)/org.graalvm.compiler.processor/src \
$(SRC_DIR)/org.graalvm.compiler.core.match.processor/src \
, \
EXCLUDE_FILES := $(EXCLUDE_FILES), \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.match.processor, \
JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.match.processor.jar, \
DISABLED_WARNINGS := options, \
))
TARGETS += $(BUILD_VM_COMPILER_MATCH_PROCESSOR)
##############################################################################
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_NODEINFO_PROCESSOR, \
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
SRC := \
$(SRC_DIR)/org.graalvm.compiler.processor/src \
$(SRC_DIR)/org.graalvm.compiler.nodeinfo.processor/src \
, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.nodeinfo.processor, \
JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.nodeinfo.processor.jar, \
DISABLED_WARNINGS := options, \
))
TARGETS += $(BUILD_VM_COMPILER_NODEINFO_PROCESSOR)
##############################################################################
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_OPTIONS_PROCESSOR, \
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
DISABLED_WARNINGS := options, \
SRC := \
$(SRC_DIR)/org.graalvm.compiler.processor/src \
$(SRC_DIR)/org.graalvm.compiler.options.processor/src \
, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.options.processor, \
JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.options.processor.jar, \
))
TARGETS += $(BUILD_VM_COMPILER_OPTIONS_PROCESSOR)
##############################################################################
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_REPLACEMENTS_PROCESSOR, \
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
SRC := \
$(SRC_DIR)/org.graalvm.compiler.processor/src \
$(SRC_DIR)/org.graalvm.compiler.replacements.processor/src \
, \
EXCLUDE_FILES := $(EXCLUDE_FILES), \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier, \
JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar, \
DISABLED_WARNINGS := options, \
))
TARGETS += $(BUILD_VM_COMPILER_REPLACEMENTS_PROCESSOR)
##############################################################################
$(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_SERVICEPROVIDER_PROCESSOR, \
TARGET_RELEASE := $(TARGET_RELEASE_BOOTJDK), \
SRC := \
$(SRC_DIR)/org.graalvm.compiler.processor/src \
$(SRC_DIR)/org.graalvm.compiler.serviceprovider.processor/src \
, \
EXCLUDE_FILES := $(EXCLUDE_FILES), \
BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.serviceprovider.processor, \
JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.serviceprovider.processor.jar, \
DISABLED_WARNINGS := options, \
))
TARGETS += $(BUILD_VM_COMPILER_SERVICEPROVIDER_PROCESSOR)
##############################################################################
endif
all: $(TARGETS)
.PHONY: all

View File

@@ -99,7 +99,8 @@ JAVADOC_TAGS := \
REFERENCE_TAGS := $(JAVADOC_TAGS)
# Which doclint checks to ignore
JAVADOC_DISABLED_DOCLINT := missing
JAVADOC_DISABLED_DOCLINT_WARNINGS := missing
JAVADOC_DISABLED_DOCLINT_PACKAGES := org.w3c.* javax.smartcardio
# The initial set of options for javadoc
JAVADOC_OPTIONS := -use -keywords -notimestamp \
@@ -153,13 +154,14 @@ COPYRIGHT_BOTTOM = \
<a href="$(REDISTRIBUTION_URL)">documentation redistribution policy</a>. \
$(DRAFT_MARKER_STR) <!-- Version $(VERSION_STRING) -->
JAVADOC_BOTTOM := \
# $1 - Optional "Other Versions" link
JAVADOC_BOTTOM = \
<a href="$(BUG_SUBMIT_URL)">Report a bug or suggest an enhancement</a><br> \
For further API reference and developer documentation see the \
<a href="$(JAVADOC_BASE_URL)" target="_blank">Java SE \
Documentation</a>, which contains more detailed, \
developer-targeted descriptions with conceptual overviews, definitions \
of terms, workarounds, and working code examples.<br> \
of terms, workarounds, and working code examples. $1<br> \
Java is a trademark or registered trademark of $(FULL_COMPANY_NAME) in \
the US and other countries.<br> \
$(call COPYRIGHT_BOTTOM, {@docroot}/../)
@@ -294,26 +296,26 @@ define SetupApiDocsGenerationBody
# Create a string like "-Xdoclint:all,-syntax,-html,..."
$1_OPTIONS += -Xdoclint:all,$$(call CommaList, $$(addprefix -, \
$$(JAVADOC_DISABLED_DOCLINT)))
# Ignore the doclint warnings in the W3C DOM package
$1_OPTIONS += -Xdoclint/package:-org.w3c.*
ifneq ($$($1_OTHER_VERSIONS), )
$1_LINKED_SHORT_NAME = <a href="$$($1_OTHER_VERSIONS)">$$($1_SHORT_NAME)</a>
else
$1_LINKED_SHORT_NAME = $$($1_SHORT_NAME)
endif
$$(JAVADOC_DISABLED_DOCLINT_WARNINGS)))
# Ignore the doclint warnings in certain packages
$1_OPTIONS += -Xdoclint/package:$$(call CommaList, $$(addprefix -, \
$$(JAVADOC_DISABLED_DOCLINT_PACKAGES)))
$1_DOC_TITLE := $$($1_LONG_NAME)<br>Version $$(VERSION_SPECIFICATION) API \
Specification
$1_WINDOW_TITLE := $$(subst &amp;,&,$$($1_SHORT_NAME))$$(DRAFT_MARKER_TITLE)
$1_HEADER_TITLE := <div $$(HEADER_STYLE)><strong>$$($1_LINKED_SHORT_NAME)</strong> \
$1_HEADER_TITLE := <div $$(HEADER_STYLE)><strong>$$($1_SHORT_NAME)</strong> \
$$(DRAFT_MARKER_STR)</div>
ifneq ($$($1_OTHER_VERSIONS), )
$1_JAVADOC_BOTTOM := $$(call JAVADOC_BOTTOM, <a href="$$($1_OTHER_VERSIONS)">Other versions.</a>)
else
$1_JAVADOC_BOTTOM := $$(call JAVADOC_BOTTOM, )
endif
$1_OPTIONS += -doctitle '$$($1_DOC_TITLE)'
$1_OPTIONS += -windowtitle '$$($1_WINDOW_TITLE)'
$1_OPTIONS += -header '$$($1_HEADER_TITLE)'
$1_OPTIONS += -bottom '$$(JAVADOC_BOTTOM)'
$1_OPTIONS += -bottom '$$($1_JAVADOC_BOTTOM)'
ifeq ($$(IS_DRAFT), true)
$1_OPTIONS += -top '$$(JAVADOC_TOP)'
endif
@@ -330,6 +332,12 @@ define SetupApiDocsGenerationBody
$$(eval $$(call create_overview_file,$1))
$1_OPTIONS += -overview $$($1_OVERVIEW)
# Add summary pages for new/deprecated APIs in recent releases
$1_OPTIONS += --since $(call CommaList, \
$(filter-out $(VERSION_DOCS_API_SINCE), \
$(call sequence, $(VERSION_DOCS_API_SINCE), $(VERSION_FEATURE))))
$1_OPTIONS += --since-label "New API since JDK $(VERSION_DOCS_API_SINCE)"
$$(foreach g, $$($1_GROUPS), \
$$(eval $1_OPTIONS += -group "$$($$g_GROUP_NAME)" "$$($$g_GROUP_MODULES)") \
)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -94,7 +94,6 @@ $(eval $(call SetupTarget, buildtools-modules, \
$(eval $(call SetupTarget, buildtools-hotspot, \
MAKEFILE := CompileToolsHotspot, \
DEPS := interim-langtools, \
))
################################################################################
@@ -660,18 +659,6 @@ $(eval $(call SetupTarget, test-image-libtest-jtreg-native, \
DEPS := build-test-libtest-jtreg-native, \
))
$(eval $(call SetupTarget, build-test-hotspot-jtreg-graal, \
MAKEFILE := test/JtregGraalUnit, \
TARGET := build-test-hotspot-jtreg-graal, \
DEPS := exploded-image, \
))
$(eval $(call SetupTarget, test-image-hotspot-jtreg-graal, \
MAKEFILE := test/JtregGraalUnit, \
TARGET := test-image-hotspot-jtreg-graal, \
DEPS := build-test-hotspot-jtreg-graal, \
))
ifneq ($(GTEST_FRAMEWORK_SRC), )
$(eval $(call SetupTarget, test-image-hotspot-gtest, \
MAKEFILE := hotspot/test/GtestImage, \
@@ -875,18 +862,6 @@ else
# copied and processed.
java.desktop-gensrc-src: java.base-gensrc java.base-copy
# 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 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
# The ct.sym generation uses all the moduleinfos as input
@@ -1174,10 +1149,6 @@ else
ifneq ($(GTEST_FRAMEWORK_SRC), )
test-image: test-image-hotspot-gtest
endif
ifeq ($(INCLUDE_GRAAL), true)
test-image: test-image-hotspot-jtreg-graal
endif
endif
ifeq ($(BUILD_FAILURE_HANDLER), true)

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -46,7 +46,7 @@ endif
$(eval $(call ParseKeywordVariable, TEST_OPTS, \
SINGLE_KEYWORDS := JOBS TIMEOUT_FACTOR JCOV JCOV_DIFF_CHANGESET, \
STRING_KEYWORDS := VM_OPTIONS JAVA_OPTIONS AOT_MODULES, \
STRING_KEYWORDS := VM_OPTIONS JAVA_OPTIONS, \
))
# Helper function to propagate TEST_OPTS values.
@@ -134,96 +134,6 @@ ifeq ($(GCOV_ENABLED), true)
JTREG_COV_OPTIONS += -e:GCOV_PREFIX="$(GCOV_OUTPUT_DIR)"
endif
################################################################################
# Optionally create AOT libraries for specified modules before running tests.
# 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
ifneq ($$(filter -XX:+VerifyOops, $$($1_VM_OPTIONS)), )
$1_JAOTC_OPTS += -J-Dgraal.AOTVerifyOops=true
endif
$$($1_AOT_LIB): $$(JDK_UNDER_TEST)/release \
$$(call DependOnVariable, $1_JAOTC_OPTS) \
$$(call DependOnVariable, JDK_UNDER_TEST)
$$(call LogWarn, Generating $$(patsubst $$(OUTPUTDIR)/%, %, $$@))
$$(call MakeTargetDir)
$$(call ExecuteWithLog, $$@, \
$((COV_ENVIRONMENT) \
$$(FIXPATH) $$(JDK_UNDER_TEST)/bin/jaotc \
$$($1_JAOTC_OPTS) --output $$@ --module $$($1_MODULE) \
)
$$(call ExecuteWithLog, $$@.check, ( \
$$(FIXPATH) $$(JDK_UNDER_TEST)/bin/java \
$$($1_VM_OPTIONS) -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions \
-XX:+PrintAOT -XX:+UseAOTStrictLoading \
-XX:AOTLibrary=$$@ -version \
> $$@.verify-aot \
))
$1_AOT_OPTIONS += -XX:+UnlockExperimentalVMOptions
$1_AOT_OPTIONS += -XX:AOTLibrary=$$($1_AOT_LIB)
$1_AOT_TARGETS += $$($1_AOT_LIB)
endef
################################################################################
# Optionally create AOT libraries before running tests.
# Note, this could not be done during JDK build time.
################################################################################
# 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
################################################################################
@@ -282,7 +192,6 @@ endif
$(eval $(call SetTestOpt,VM_OPTIONS,JTREG))
$(eval $(call SetTestOpt,JAVA_OPTIONS,JTREG))
$(eval $(call SetTestOpt,AOT_MODULES,JTREG))
$(eval $(call SetTestOpt,JOBS,JTREG))
$(eval $(call SetTestOpt,TIMEOUT_FACTOR,JTREG))
@@ -293,7 +202,7 @@ $(eval $(call ParseKeywordVariable, JTREG, \
TEST_MODE ASSERT VERBOSE RETAIN MAX_MEM RUN_PROBLEM_LISTS \
RETRY_COUNT MAX_OUTPUT, \
STRING_KEYWORDS := OPTIONS JAVA_OPTIONS VM_OPTIONS KEYWORDS \
EXTRA_PROBLEM_LISTS AOT_MODULES LAUNCHER_OPTIONS, \
EXTRA_PROBLEM_LISTS LAUNCHER_OPTIONS, \
))
ifneq ($(JTREG), )
@@ -305,11 +214,10 @@ endif
$(eval $(call SetTestOpt,VM_OPTIONS,GTEST))
$(eval $(call SetTestOpt,JAVA_OPTIONS,GTEST))
$(eval $(call SetTestOpt,AOT_MODULES,GTEST))
$(eval $(call ParseKeywordVariable, GTEST, \
SINGLE_KEYWORDS := REPEAT, \
STRING_KEYWORDS := OPTIONS VM_OPTIONS JAVA_OPTIONS AOT_MODULES, \
STRING_KEYWORDS := OPTIONS VM_OPTIONS JAVA_OPTIONS, \
))
ifneq ($(GTEST), )
@@ -350,8 +258,6 @@ langtools_JTREG_PROBLEM_LIST += $(TOPDIR)/test/langtools/ProblemList.txt
hotspot_JTREG_PROBLEM_LIST += $(TOPDIR)/test/hotspot/jtreg/ProblemList.txt
lib-test_JTREG_PROBLEM_LIST += $(TOPDIR)/test/lib-test/ProblemList.txt
langtools_JTREG_MAX_MEM := 768m
################################################################################
# Parse test selection
#
@@ -592,14 +498,7 @@ define SetupRunGtestTestBody
$1_GTEST_REPEAT :=--gtest_repeat=$$(GTEST_REPEAT)
endif
ifneq ($$(GTEST_AOT_MODULES), )
$$(eval $$(call SetupAot, $1, \
MODULES := $$(GTEST_AOT_MODULES), \
VM_OPTIONS := $$(GTEST_VM_OPTIONS) $$(GTEST_JAVA_OPTIONS), \
))
endif
run-test-$1: pre-run-test $$($1_AOT_TARGETS)
run-test-$1: pre-run-test
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
@@ -610,7 +509,7 @@ define SetupRunGtestTestBody
--gtest_output=xml:$$($1_TEST_RESULTS_DIR)/gtest.xml \
--gtest_catch_exceptions=0 \
$$($1_GTEST_REPEAT) $$(GTEST_OPTIONS) $$(GTEST_VM_OPTIONS) \
$$(GTEST_JAVA_OPTIONS) $$($1_AOT_OPTIONS) \
$$(GTEST_JAVA_OPTIONS) \
> >($(TEE) $$($1_TEST_RESULTS_DIR)/gtest.txt) \
&& $$(ECHO) $$$$? > $$($1_EXITCODE) \
|| $$(ECHO) $$$$? > $$($1_EXITCODE) \
@@ -821,7 +720,7 @@ define SetupRunJtregTestBody
# Convert JTREG_foo into $1_JTREG_foo with a suitable value.
$$(eval $$(call SetJtregValue,$1,JTREG_TEST_MODE,agentvm))
$$(eval $$(call SetJtregValue,$1,JTREG_ASSERT,true))
$$(eval $$(call SetJtregValue,$1,JTREG_MAX_MEM,512m))
$$(eval $$(call SetJtregValue,$1,JTREG_MAX_MEM,768m))
$$(eval $$(call SetJtregValue,$1,JTREG_NATIVEPATH))
$$(eval $$(call SetJtregValue,$1,JTREG_BASIC_OPTIONS))
$$(eval $$(call SetJtregValue,$1,JTREG_PROBLEM_LIST))
@@ -837,7 +736,7 @@ define SetupRunJtregTestBody
# Make sure MaxRAMPercentage is high enough to not cause OOM or swapping since
# we may end up with a lot of JVM's
$1_JTREG_MAX_RAM_PERCENTAGE := $$(shell $$(EXPR) 25 / $$($1_JTREG_JOBS))
$1_JTREG_MAX_RAM_PERCENTAGE := $$(shell $(AWK) 'BEGIN { print 25 / $$($1_JTREG_JOBS); }')
JTREG_TIMEOUT_FACTOR ?= 4
@@ -890,6 +789,15 @@ define SetupRunJtregTestBody
$1_JTREG_BASIC_OPTIONS += -ea -esa
endif
ifeq ($$(ASAN_ENABLED), yes)
$1_JTREG_BASIC_OPTIONS += -e:ASAN_OPTIONS=handle_segv=0:handle_sigfpe=0:detect_leaks=false
$1_JTREG_BASIC_OPTIONS += -e:LD_PRELOAD=libasan.so.5
endif
ifeq ($$(USAN_ENABLED), yes)
$1_JTREG_BASIC_OPTIONS += -e:LD_PRELOAD=libubsan.so.1
endif
ifneq ($$($1_JTREG_NATIVEPATH), )
$1_JTREG_BASIC_OPTIONS += -nativepath:$$($1_JTREG_NATIVEPATH)
endif
@@ -917,7 +825,6 @@ define SetupRunJtregTestBody
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)"
@@ -934,17 +841,6 @@ define SetupRunJtregTestBody
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)
@@ -979,7 +875,7 @@ define SetupRunJtregTestBody
done
endif
run-test-$1: pre-run-test clean-workdir-$1 $$($1_AOT_TARGETS)
run-test-$1: pre-run-test clean-workdir-$1
$$(call LogWarn)
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR) \

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -222,25 +222,6 @@ ifeq ($(MEMORY_SIZE), )
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
endif
else
LD := ld
endif
ifneq ($(wildcard $(JDK_IMAGE_DIR)/template.xml), )
TEST_OPTS_JCOV := true
JCOV_IMAGE_DIR := $(JDK_IMAGE_DIR)
@@ -286,9 +267,6 @@ $(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, \
TEST_OPTS_JCOV := $(TEST_OPTS_JCOV), \
$(CUSTOM_NEW_SPEC_LINE), \

View File

@@ -1,6 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2012, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2012, 2021, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2021, Azul Systems, Inc. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -101,6 +102,18 @@ if [ "x$OUT" = x ]; then
fi
fi
# Test and fix cpu on macos-aarch64, uname -p reports arm, buildsys expects aarch64
echo $OUT | grep arm-apple-darwin > /dev/null 2> /dev/null
if test $? != 0; then
# The GNU version of uname may be on the PATH which reports arm64 instead
echo $OUT | grep arm64-apple-darwin > /dev/null 2> /dev/null
fi
if test $? = 0; then
if [ `uname -m` = arm64 ]; then
OUT=aarch64`echo $OUT | sed -e 's/[^-]*//'`
fi
fi
# Test and fix cpu on Macosx when C preprocessor is not on the path
echo $OUT | grep i386-apple-darwin > /dev/null 2> /dev/null
if test $? = 0; then

View File

@@ -217,6 +217,9 @@ JDKOPT_SETUP_CODE_COVERAGE
# AddressSanitizer
JDKOPT_SETUP_ADDRESS_SANITIZER
# UndefinedBehaviorSanitizer
JDKOPT_SETUP_UNDEFINED_BEHAVIOR_SANITIZER
###############################################################################
#
# Check dependencies for external and internal libraries.

View File

@@ -230,7 +230,7 @@ AC_DEFUN([FLAGS_SETUP_OPTIMIZATION],
DISABLE_FORTIFY_CFLAGS="-U_FORTIFY_SOURCE"
# ASan doesn't work well with _FORTIFY_SOURCE
# See https://github.com/google/sanitizers/wiki/AddressSanitizer#faq
if test "x$ASAN_ENABLED" = xyes; then
if test "x$ASAN_ENABLED" = xyes || test "x$USAN_ENABLED" = xyes; then
ENABLE_FORTIFY_CFLAGS="${DISABLE_FORTIFY_CFLAGS}"
else
ENABLE_FORTIFY_CFLAGS="-D_FORTIFY_SOURCE=2"
@@ -737,6 +737,15 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_CPU_DEP],
$1_TOOLCHAIN_CFLAGS="${$1_GCC6_CFLAGS}"
$1_WARNING_CFLAGS_JVM="-Wno-format-zero-length -Wtype-limits -Wuninitialized"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
NO_DELETE_NULL_POINTER_CHECKS_CFLAG="-fno-delete-null-pointer-checks"
FLAGS_COMPILER_CHECK_ARGUMENTS(ARGUMENT: [$NO_DELETE_NULL_POINTER_CHECKS_CFLAG],
PREFIX: $3,
IF_FALSE: [
NO_DELETE_NULL_POINTER_CHECKS_CFLAG=
]
)
$1_TOOLCHAIN_CFLAGS="${NO_DELETE_NULL_POINTER_CHECKS_CFLAG}"
fi
if test "x$TOOLCHAIN_TYPE" = xmicrosoft && test "x$ENABLE_REPRODUCIBLE_BUILD" = xtrue; then

View File

@@ -108,13 +108,6 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS_HELPER],
OS_LDFLAGS_JVM_ONLY="-Wl,-rpath,@loader_path/. -Wl,-rpath,@loader_path/.."
OS_LDFLAGS="-mmacosx-version-min=$MACOSX_VERSION_MIN"
fi
if test "x$OPENJDK_TARGET_OS" = xlinux; then
# Hotspot needs to link librt to get the clock_* functions.
# But once our supported minimum build and runtime platform
# has glibc 2.17, this can be removed as the functions are
# in libc.
OS_LDFLAGS_JVM_ONLY="-lrt"
fi
fi
# Setup debug level-dependent LDFLAGS

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -76,8 +76,26 @@ AC_DEFUN([FLAGS_SETUP_RCFLAGS],
# platform independent
AC_DEFUN([FLAGS_SETUP_ASFLAGS],
[
if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then
# Force preprocessor to run, just to make sure
BASIC_ASFLAGS="-x assembler-with-cpp"
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
BASIC_ASFLAGS="-nologo -c"
fi
AC_SUBST(BASIC_ASFLAGS)
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
JVM_BASIC_ASFLAGS="-x assembler-with-cpp -mno-omit-leaf-frame-pointer -mstack-alignment=16"
JVM_BASIC_ASFLAGS="-mno-omit-leaf-frame-pointer -mstack-alignment=16"
# Fix linker warning.
# Code taken from make/autoconf/flags-cflags.m4 and adapted.
JVM_BASIC_ASFLAGS+="-DMAC_OS_X_VERSION_MIN_REQUIRED=$MACOSX_VERSION_MIN_NODOTS \
-mmacosx-version-min=$MACOSX_VERSION_MIN"
if test -n "$MACOSX_VERSION_MAX"; then
JVM_BASIC_ASFLAGS+="$OS_CFLAGS \
-DMAC_OS_X_VERSION_MAX_ALLOWED=$MACOSX_VERSION_MAX_NODOTS"
fi
fi
])

View File

@@ -125,19 +125,25 @@ AC_DEFUN([FLAGS_SETUP_MACOSX_VERSION],
[
# Additional macosx handling
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
# The expected format for <version> is either nn.n.n or nn.nn.nn. See
# /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h
# MACOSX_VERSION_MIN specifies the lowest version of Macosx that the built
# binaries should be compatible with, even if compiled on a newer version
# of the OS. It currently has a hard coded value. Setting this also limits
# exposure to API changes in header files. Bumping this is likely to
# require code changes to build.
MACOSX_VERSION_MIN=10.12.0
if test "x$OPENJDK_TARGET_CPU_ARCH" = xaarch64; then
MACOSX_VERSION_MIN=11.00.00
else
MACOSX_VERSION_MIN=10.12.0
fi
MACOSX_VERSION_MIN_NODOTS=${MACOSX_VERSION_MIN//\./}
AC_SUBST(MACOSX_VERSION_MIN)
# Setting --with-macosx-version-max=<version> makes it an error to build or
# link to macosx APIs that are newer than the given OS version. The expected
# format for <version> is either nn.n.n or nn.nn.nn. See /usr/include/AvailabilityMacros.h.
# link to macosx APIs that are newer than the given OS version.
AC_ARG_WITH([macosx-version-max], [AS_HELP_STRING([--with-macosx-version-max],
[error on use of newer functionality. @<:@macosx@:>@])],
[
@@ -259,6 +265,14 @@ AC_DEFUN_ONCE([FLAGS_PRE_TOOLCHAIN],
fi
fi
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
if test "x$OPENJDK_TARGET_CPU" = xaarch64; then
MACHINE_FLAG="$MACHINE_FLAG -arch arm64"
elif test "x$OPENJDK_TARGET_CPU" = xx86_64; then
MACHINE_FLAG="$MACHINE_FLAG -arch x86_64"
fi
fi
# FIXME: global flags are not used yet...
# The "global" flags will *always* be set. Without them, it is not possible to
# get a working compilation.
@@ -360,15 +374,13 @@ AC_DEFUN([FLAGS_SETUP_TOOLCHAIN_CONTROL],
# Generate make dependency files
if test "x$TOOLCHAIN_TYPE" = xgcc; then
C_FLAG_DEPS="-MMD -MF"
GENDEPS_FLAGS="-MMD -MF"
elif test "x$TOOLCHAIN_TYPE" = xclang; then
C_FLAG_DEPS="-MMD -MF"
GENDEPS_FLAGS="-MMD -MF"
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
C_FLAG_DEPS="-qmakedep=gcc -MF"
GENDEPS_FLAGS="-qmakedep=gcc -MF"
fi
CXX_FLAG_DEPS="$C_FLAG_DEPS"
AC_SUBST(C_FLAG_DEPS)
AC_SUBST(CXX_FLAG_DEPS)
AC_SUBST(GENDEPS_FLAGS)
])
AC_DEFUN_ONCE([FLAGS_POST_TOOLCHAIN],

View File

@@ -240,11 +240,7 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
[AS_HELP_STRING([--with-native-debug-symbols],
[set the native debug symbol configuration (none, internal, external, zipped) @<:@varying@:>@])],
[
if test "x$OPENJDK_TARGET_OS" = xaix; then
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$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
@@ -254,12 +250,7 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
if test "x$STATIC_BUILD" = xtrue; then
with_native_debug_symbols="none"
else
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
with_native_debug_symbols="external"
fi
])
AC_MSG_RESULT([$with_native_debug_symbols])
@@ -445,6 +436,45 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_ADDRESS_SANITIZER],
AC_SUBST(ASAN_ENABLED)
])
###############################################################################
#
# UndefinedBehaviorSanitizer
#
AC_DEFUN_ONCE([JDKOPT_SETUP_UNDEFINED_BEHAVIOR_SANITIZER],
[
UTIL_ARG_ENABLE(NAME: usan, DEFAULT: false,
DESC: [enable UndefinedBehaviorSanitizer],
CHECK_AVAILABLE: [
AC_MSG_CHECKING([if UndefinedBehaviorSanitizer (usan) is available])
if test "x$TOOLCHAIN_TYPE" = "xgcc" ||
test "x$TOOLCHAIN_TYPE" = "xclang"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
AVAILABLE=false
fi
],
IF_ENABLED: [
USAN_FLAGS="-fsanitize=undefined"
USAN_CFLAGS="$USAN_FLAGS -fno-omit-frame-pointer"
USAN_LDFLAGS="$USAN_FLAGS"
JVM_CFLAGS="$JVM_CFLAGS $USAN_CFLAGS"
JVM_LDFLAGS="$JVM_LDFLAGS $USAN_LDFLAGS"
CFLAGS_JDKLIB="$CFLAGS_JDKLIB $USAN_CFLAGS"
CFLAGS_JDKEXE="$CFLAGS_JDKEXE $USAN_CFLAGS"
CXXFLAGS_JDKLIB="$CXXFLAGS_JDKLIB $USAN_CFLAGS"
CXXFLAGS_JDKEXE="$CXXFLAGS_JDKEXE $USAN_CFLAGS"
LDFLAGS_JDKLIB="$LDFLAGS_JDKLIB $USAN_LDFLAGS"
LDFLAGS_JDKEXE="$LDFLAGS_JDKEXE $USAN_LDFLAGS"
USAN_ENABLED="yes"
],
IF_DISABLED: [
USAN_ENABLED="no"
])
AC_SUBST(USAN_ENABLED)
])
################################################################################
#
# Static build support. When enabled will generate static

View File

@@ -533,6 +533,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
# We could define --with flags for these, if really needed
VERSION_CLASSFILE_MAJOR="$DEFAULT_VERSION_CLASSFILE_MAJOR"
VERSION_CLASSFILE_MINOR="$DEFAULT_VERSION_CLASSFILE_MINOR"
VERSION_DOCS_API_SINCE="$DEFAULT_VERSION_DOCS_API_SINCE"
JDK_SOURCE_TARGET_VERSION="$DEFAULT_JDK_SOURCE_TARGET_VERSION"
AC_MSG_CHECKING([for version string])
@@ -557,5 +558,6 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_SUBST(VENDOR_VERSION_STRING)
AC_SUBST(VERSION_CLASSFILE_MAJOR)
AC_SUBST(VERSION_CLASSFILE_MINOR)
AC_SUBST(VERSION_DOCS_API_SINCE)
AC_SUBST(JDK_SOURCE_TARGET_VERSION)
])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -44,7 +44,7 @@
m4_define(jvm_features_valid, m4_normalize( \
ifdef([custom_jvm_features_valid], custom_jvm_features_valid) \
\
aot cds compiler1 compiler2 dtrace epsilongc g1gc graal jfr jni-check \
cds compiler1 compiler2 dtrace epsilongc g1gc jfr jni-check \
jvmci jvmti link-time-opt management minimal nmt opt-size parallelgc \
serialgc services shenandoahgc static-build vm-structs zero zgc \
))
@@ -55,14 +55,12 @@ m4_define(jvm_features_deprecated, m4_normalize(
))
# Feature descriptions
m4_define(jvm_feature_desc_aot, [enable ahead of time compilation (AOT)])
m4_define(jvm_feature_desc_cds, [enable class data sharing (CDS)])
m4_define(jvm_feature_desc_compiler1, [enable hotspot compiler C1])
m4_define(jvm_feature_desc_compiler2, [enable hotspot compiler C2])
m4_define(jvm_feature_desc_dtrace, [enable dtrace support])
m4_define(jvm_feature_desc_epsilongc, [include the epsilon (no-op) garbage collector])
m4_define(jvm_feature_desc_g1gc, [include the G1 garbage collector])
m4_define(jvm_feature_desc_graal, [enable Graal (jdk.internal.vm.compiler)])
m4_define(jvm_feature_desc_jfr, [enable JDK Flight Recorder (JFR)])
m4_define(jvm_feature_desc_jni_check, [enable -Xcheck:jni support])
m4_define(jvm_feature_desc_jvmci, [enable JVM Compiler Interface (JVMCI)])
@@ -94,7 +92,6 @@ AC_DEFUN_ONCE([JVM_FEATURES_PARSE_OPTIONS],
# For historical reasons, some jvm features have their own, shorter names.
# Keep those as aliases for the --enable-jvm-feature-* style arguments.
UTIL_ALIASED_ARG_ENABLE(aot, --enable-jvm-feature-aot)
UTIL_ALIASED_ARG_ENABLE(cds, --enable-jvm-feature-cds)
UTIL_ALIASED_ARG_ENABLE(dtrace, --enable-jvm-feature-dtrace)
@@ -229,34 +226,6 @@ AC_DEFUN([JVM_FEATURES_CHECK_AVAILABILITY],
fi
])
###############################################################################
# Check if the feature 'aot' is available on this platform.
#
AC_DEFUN_ONCE([JVM_FEATURES_CHECK_AOT],
[
JVM_FEATURES_CHECK_AVAILABILITY(aot, [
AC_MSG_CHECKING([if platform is supported by AOT])
# AOT is only available where JVMCI is available since it requires JVMCI.
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" = "xlinux-aarch64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
AC_MSG_CHECKING([if AOT source code is present])
if test -e "${TOPDIR}/src/jdk.internal.vm.compiler" && \
test -e "${TOPDIR}/src/jdk.aot"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, missing src/jdk.internal.vm.compiler or src/jdk.aot])
AVAILABLE=false
fi
])
])
###############################################################################
# Check if the feature 'cds' is available on this platform.
#
@@ -264,11 +233,11 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_CDS],
[
JVM_FEATURES_CHECK_AVAILABILITY(cds, [
AC_MSG_CHECKING([if platform is supported by CDS])
if test "x$OPENJDK_TARGET_OS" != xaix; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS])
if test "x$OPENJDK_TARGET_OS" = xaix; then
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
else
AC_MSG_RESULT([yes])
fi
])
])
@@ -296,25 +265,6 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_DTRACE],
])
])
###############################################################################
# Check if the feature 'graal' is available on this platform.
#
AC_DEFUN_ONCE([JVM_FEATURES_CHECK_GRAAL],
[
JVM_FEATURES_CHECK_AVAILABILITY(graal, [
AC_MSG_CHECKING([if platform is supported by Graal])
# Graal is only available where JVMCI is available since it requires JVMCI.
if test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
AC_MSG_RESULT([yes])
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
])
])
###############################################################################
# Check if the feature 'jfr' is available on this platform.
#
@@ -400,7 +350,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
fi
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
if test "x$OPENJDK_TARGET_OS" = "xlinux" || \
test "x$OPENJDK_TARGET_OS" = "xwindows"; then
test "x$OPENJDK_TARGET_OS" = "xwindows" || \
test "x$OPENJDK_TARGET_OS" = "xmacosx"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
@@ -439,10 +390,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_PREPARE_PLATFORM],
# The checks below should add unavailable features to
# JVM_FEATURES_PLATFORM_UNAVAILABLE.
JVM_FEATURES_CHECK_AOT
JVM_FEATURES_CHECK_CDS
JVM_FEATURES_CHECK_DTRACE
JVM_FEATURES_CHECK_GRAAL
JVM_FEATURES_CHECK_JFR
JVM_FEATURES_CHECK_JVMCI
JVM_FEATURES_CHECK_SHENANDOAHGC
@@ -475,18 +424,18 @@ AC_DEFUN([JVM_FEATURES_PREPARE_VARIANT],
elif test "x$variant" = "xcore"; then
JVM_FEATURES_VARIANT_UNAVAILABLE="cds minimal zero"
elif test "x$variant" = "xzero"; then
JVM_FEATURES_VARIANT_UNAVAILABLE="aot cds compiler1 compiler2 \
graal jvmci minimal zgc"
JVM_FEATURES_VARIANT_UNAVAILABLE="cds compiler1 compiler2 \
jvmci minimal zgc"
else
JVM_FEATURES_VARIANT_UNAVAILABLE="minimal zero"
fi
# Check which features should be off by default for this JVM variant.
if test "x$variant" = "xclient"; then
JVM_FEATURES_VARIANT_FILTER="aot compiler2 graal jvmci link-time-opt opt-size"
JVM_FEATURES_VARIANT_FILTER="compiler2 jvmci link-time-opt opt-size"
elif test "x$variant" = "xminimal"; then
JVM_FEATURES_VARIANT_FILTER="aot cds compiler2 dtrace epsilongc g1gc \
graal jfr jni-check jvmci jvmti management nmt parallelgc services \
JVM_FEATURES_VARIANT_FILTER="cds compiler2 dtrace epsilongc g1gc \
jfr jni-check jvmci jvmti management nmt parallelgc services \
shenandoahgc vm-structs zgc"
if test "x$OPENJDK_TARGET_CPU" = xarm ; then
JVM_FEATURES_VARIANT_FILTER="$JVM_FEATURES_VARIANT_FILTER opt-size"
@@ -496,7 +445,7 @@ AC_DEFUN([JVM_FEATURES_PREPARE_VARIANT],
link-time-opt"
fi
elif test "x$variant" = "xcore"; then
JVM_FEATURES_VARIANT_FILTER="aot compiler1 compiler2 graal jvmci \
JVM_FEATURES_VARIANT_FILTER="compiler1 compiler2 jvmci \
link-time-opt opt-size"
elif test "x$variant" = "xzero"; then
JVM_FEATURES_VARIANT_FILTER="jfr link-time-opt opt-size"
@@ -572,15 +521,6 @@ AC_DEFUN([JVM_FEATURES_VERIFY],
[
variant=$1
# Verify that dependencies are met for inter-feature relations.
if JVM_FEATURES_IS_ACTIVE(aot) && ! JVM_FEATURES_IS_ACTIVE(graal); then
AC_MSG_ERROR([Specified JVM feature 'aot' requires feature 'graal' for variant '$variant'])
fi
if JVM_FEATURES_IS_ACTIVE(graal) && ! JVM_FEATURES_IS_ACTIVE(jvmci); then
AC_MSG_ERROR([Specified JVM feature 'graal' requires feature 'jvmci' for variant '$variant'])
fi
if JVM_FEATURES_IS_ACTIVE(jvmci) && ! (JVM_FEATURES_IS_ACTIVE(compiler1) || \
JVM_FEATURES_IS_ACTIVE(compiler2)); then
AC_MSG_ERROR([Specified JVM feature 'jvmci' requires feature 'compiler2' or 'compiler1' for variant '$variant'])
@@ -596,18 +536,15 @@ AC_DEFUN([JVM_FEATURES_VERIFY],
# For backwards compatibility, disable a feature "globally" if one variant
# is missing the feature.
if ! JVM_FEATURES_IS_ACTIVE(aot); then
ENABLE_AOT="false"
fi
if ! JVM_FEATURES_IS_ACTIVE(cds); then
ENABLE_CDS="false"
fi
if ! JVM_FEATURES_IS_ACTIVE(graal); then
INCLUDE_GRAAL="false"
fi
if ! JVM_FEATURES_IS_ACTIVE(jvmci); then
INCLUDE_JVMCI="false"
fi
if JVM_FEATURES_IS_ACTIVE(compiler2); then
INCLUDE_COMPILER2="true"
fi
# Verify that we have at least one gc selected (i.e., feature named "*gc").
if ! JVM_FEATURES_IS_ACTIVE(.*gc); then
@@ -629,10 +566,9 @@ AC_DEFUN_ONCE([JVM_FEATURES_SETUP],
# For backwards compatibility, tentatively enable these features "globally",
# and disable them in JVM_FEATURES_VERIFY if a variant is found that are
# missing any of them.
ENABLE_AOT="true"
ENABLE_CDS="true"
INCLUDE_GRAAL="true"
INCLUDE_JVMCI="true"
INCLUDE_COMPILER2="false"
for variant in $JVM_VARIANTS; do
# Figure out if any features are unavailable, or should be filtered out
@@ -668,8 +604,7 @@ AC_DEFUN_ONCE([JVM_FEATURES_SETUP],
AC_SUBST(JVM_FEATURES_zero)
AC_SUBST(JVM_FEATURES_custom)
AC_SUBST(ENABLE_AOT)
AC_SUBST(INCLUDE_GRAAL)
AC_SUBST(INCLUDE_JVMCI)
AC_SUBST(INCLUDE_COMPILER2)
])

View File

@@ -23,38 +23,6 @@
# questions.
#
###############################################################################
#
# Check for graalunit libs, needed for running graalunit tests.
#
AC_DEFUN_ONCE([LIB_TESTS_SETUP_GRAALUNIT],
[
AC_ARG_WITH(graalunit-lib, [AS_HELP_STRING([--with-graalunit-lib],
[specify location of 3rd party libraries used by Graal unit tests])])
GRAALUNIT_LIB=
if test "x${with_graalunit_lib}" != x; then
AC_MSG_CHECKING([for graalunit libs])
if test "x${with_graalunit_lib}" = xno; then
AC_MSG_RESULT([disabled, graalunit tests can not be run])
elif test "x${with_graalunit_lib}" = xyes; then
AC_MSG_RESULT([not specified])
AC_MSG_ERROR([You must specify the path to 3rd party libraries used by Graal unit tests])
else
GRAALUNIT_LIB="${with_graalunit_lib}"
if test ! -d "${GRAALUNIT_LIB}"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Could not find graalunit 3rd party libraries as specified. (${with_graalunit_lib})])
else
AC_MSG_RESULT([$GRAALUNIT_LIB])
fi
fi
fi
UTIL_FIXUP_PATH([GRAALUNIT_LIB])
AC_SUBST(GRAALUNIT_LIB)
])
###############################################################################
#
# Setup and check for gtest framework source files

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -103,7 +103,6 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
LIB_SETUP_LIBFFI
LIB_SETUP_BUNDLED_LIBS
LIB_SETUP_MISC_LIBS
LIB_TESTS_SETUP_GRAALUNIT
LIB_TESTS_SETUP_GTEST
BASIC_JDKLIB_LIBS=""
@@ -124,6 +123,15 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES],
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lpthread"
fi
# librt for legacy clock_gettime
if test "x$OPENJDK_TARGET_OS" = xlinux; then
# Hotspot needs to link librt to get the clock_* functions.
# But once our supported minimum build and runtime platform
# has glibc 2.17, this can be removed as the functions are
# in libc.
BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lrt"
fi
# Atomic library
# 32-bit platforms needs fallback library for 8-byte atomic ops on Zero
if HOTSPOT_CHECK_JVM_VARIANT(zero); then

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -480,9 +480,11 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
fi
# The new version string in JDK 9 also defined new naming of OS and ARCH for bundles
# Macosx is osx and x86_64 is x64
# The macOS bundle name was revised in JDK 17
#
# macosx is macos and x86_64 is x64
if test "x$OPENJDK_$1_OS" = xmacosx; then
OPENJDK_$1_OS_BUNDLE="osx"
OPENJDK_$1_OS_BUNDLE="macos"
else
OPENJDK_$1_OS_BUNDLE="$OPENJDK_TARGET_OS"
fi

View File

@@ -230,6 +230,9 @@ VENDOR_VERSION_STRING := @VENDOR_VERSION_STRING@
VERSION_CLASSFILE_MAJOR := @VERSION_CLASSFILE_MAJOR@
VERSION_CLASSFILE_MINOR := @VERSION_CLASSFILE_MINOR@
# Version for API docs "new-since" feature
VERSION_DOCS_API_SINCE := @VERSION_DOCS_API_SINCE@
JDK_SOURCE_TARGET_VERSION := @JDK_SOURCE_TARGET_VERSION@
# Convenience CFLAGS settings for passing version information into native programs.
@@ -392,7 +395,6 @@ LIBFFI_LIBS:=@LIBFFI_LIBS@
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@
@@ -421,7 +423,16 @@ JCOV_FILTERS=@JCOV_FILTERS@
export ASAN_ENABLED:=@ASAN_ENABLED@
export DEVKIT_LIB_DIR:=@DEVKIT_LIB_DIR@
ifeq ($(ASAN_ENABLED), yes)
export ASAN_OPTIONS=handle_segv=0 detect_leaks=0
export ASAN_OPTIONS=handle_segv=0:handle_sigfpe=0:detect_leaks=false
ifneq ($(DEVKIT_LIB_DIR),)
export LD_LIBRARY_PATH:=$(LD_LIBRARY_PATH):$(DEVKIT_LIB_DIR)
endif
endif
# UndefinedBehaviorSanitizer
export USAN_ENABLED:=@USAN_ENABLED@
export DEVKIT_LIB_DIR:=@DEVKIT_LIB_DIR@
ifeq ($(USAN_ENABLED), yes)
ifneq ($(DEVKIT_LIB_DIR),)
export LD_LIBRARY_PATH:=$(LD_LIBRARY_PATH):$(DEVKIT_LIB_DIR)
endif
@@ -477,8 +488,7 @@ CXX_O_FLAG_NORM:=@CXX_O_FLAG_NORM@
CXX_O_FLAG_NONE:=@CXX_O_FLAG_NONE@
CXX_O_FLAG_SIZE:=@CXX_O_FLAG_SIZE@
C_FLAG_DEPS:=@C_FLAG_DEPS@
CXX_FLAG_DEPS:=@CXX_FLAG_DEPS@
GENDEPS_FLAGS := @GENDEPS_FLAGS@
DISABLE_WARNING_PREFIX := @DISABLE_WARNING_PREFIX@
CFLAGS_WARNINGS_ARE_ERRORS:=@CFLAGS_WARNINGS_ARE_ERRORS@
@@ -510,6 +520,8 @@ JVM_LDFLAGS := @JVM_LDFLAGS@
JVM_ASFLAGS := @JVM_ASFLAGS@
JVM_LIBS := @JVM_LIBS@
BASIC_ASFLAGS := @BASIC_ASFLAGS@
# These flags might contain variables set by a custom extension that is included later.
EXTRA_CFLAGS = @EXTRA_CFLAGS@
EXTRA_CXXFLAGS = @EXTRA_CXXFLAGS@
@@ -523,9 +535,6 @@ CPP := @CPP@
# The linker can be gcc or ld on unix systems, or link.exe on windows systems.
LD := @LD@
# Linker used by the jaotc tool for AOT compilation.
LD_JAOTC:=@LD_JAOTC@
# Xcode SDK path
SDKROOT:=@SDKROOT@
@@ -765,7 +774,6 @@ TAR_INCLUDE_PARAM:=@TAR_INCLUDE_PARAM@
TAR_SUPPORTS_TRANSFORM:=@TAR_SUPPORTS_TRANSFORM@
# Build setup
ENABLE_AOT:=@ENABLE_AOT@
USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@
USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@
USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@
@@ -853,8 +861,8 @@ PNG_CFLAGS:=@PNG_CFLAGS@
#
INCLUDE_SA=@INCLUDE_SA@
INCLUDE_GRAAL=@INCLUDE_GRAAL@
INCLUDE_JVMCI=@INCLUDE_JVMCI@
INCLUDE_COMPILER2=@INCLUDE_COMPILER2@
OS_VERSION_MAJOR:=@OS_VERSION_MAJOR@
OS_VERSION_MINOR:=@OS_VERSION_MINOR@

View File

@@ -664,18 +664,12 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETECT_TOOLCHAIN_CORE],
UTIL_LOOKUP_TOOLCHAIN_PROGS(LD, link)
TOOLCHAIN_VERIFY_LINK_BINARY(LD)
LDCXX="$LD"
# jaotc being a windows program expects the linker to be supplied with exe suffix.but without
# fixpath
LD_JAOTC="${LD##$FIXPATH }"
else
# All other toolchains use the compiler to link.
LD="$CC"
LDCXX="$CXX"
# jaotc expects 'ld' as the linker rather than the compiler.
UTIL_LOOKUP_TOOLCHAIN_PROGS(LD_JAOTC, ld)
fi
AC_SUBST(LD)
AC_SUBST(LD_JAOTC)
# FIXME: it should be CXXLD, according to standard (cf CXXCPP)
AC_SUBST(LDCXX)
@@ -696,8 +690,13 @@ AC_DEFUN_ONCE([TOOLCHAIN_DETECT_TOOLCHAIN_CORE],
if test "x$TOOLCHAIN_TYPE" != xmicrosoft; then
AS="$CC -c"
else
# On windows, the assember is "ml.exe"
UTIL_LOOKUP_TOOLCHAIN_PROGS(AS, ml)
if test "x$OPENJDK_TARGET_CPU_BITS" = "x64"; then
# On 64 bit windows, the assember is "ml64.exe"
UTIL_LOOKUP_TOOLCHAIN_PROGS(AS, ml64)
else
# otherwise, the assember is "ml.exe"
UTIL_LOOKUP_TOOLCHAIN_PROGS(AS, ml)
fi
fi
AC_SUBST(AS)
@@ -879,7 +878,13 @@ AC_DEFUN_ONCE([TOOLCHAIN_SETUP_BUILD_COMPILERS],
# On windows, the assember is "ml.exe". We currently don't need this so
# do not require.
UTIL_LOOKUP_PROGS(BUILD_AS, ml, [$VS_PATH])
if test "x$OPENJDK_BUILD_CPU_BITS" = "x64"; then
# On 64 bit windows, the assember is "ml64.exe"
UTIL_LOOKUP_PROGS(BUILD_AS, ml64, [$VS_PATH])
else
# otherwise the assember is "ml.exe"
UTIL_LOOKUP_PROGS(BUILD_AS, ml, [$VS_PATH])
fi
# On windows, the ar tool is lib.exe (used to create static libraries).
# We currently don't need this so do not require.

View File

@@ -62,19 +62,10 @@ endif
# Filter out jvmci specific modules if jvmci is disabled
ifeq ($(INCLUDE_JVMCI), false)
MODULES_FILTER += jdk.internal.vm.ci
endif
# Filter out Graal specific modules if Graal is disabled
ifeq ($(INCLUDE_GRAAL), false)
MODULES_FILTER += jdk.internal.vm.compiler
MODULES_FILTER += jdk.internal.vm.compiler.management
endif
# Filter out aot specific modules if aot is disabled
ifeq ($(ENABLE_AOT), false)
MODULES_FILTER += jdk.aot
endif
# jpackage is only on windows, macosx, and linux
ifeq ($(call isTargetOs, windows macosx linux), false)
MODULES_FILTER += jdk.jpackage

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -163,7 +163,7 @@ $(eval $(call DefineNativeToolchain, TOOLCHAIN_BUILD_LINK_CXX, \
################################################################################
# Extensions of files handled by this macro.
NATIVE_SOURCE_EXTENSIONS := %.s %.S %.c %.cpp %.cc %.m %.mm
NATIVE_SOURCE_EXTENSIONS := %.S %.c %.cpp %.cc %.m %.mm
# Replaces native source extensions with the object file extension in a string.
# Param 1: the string containing source file names with extensions
@@ -349,42 +349,36 @@ define SetupCompileNativeFileBody
$1_FLAGS := $(CFLAGS_CCACHE) $$($1_USE_PCH_FLAGS) $$($1_BASE_CFLAGS) \
$$($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) -c
$1_COMPILER := $$($$($1_BASE)_CC)
$1_DEP_FLAG := $(C_FLAG_DEPS)
else ifneq ($$(filter %.s %.S, $$($1_FILENAME)), )
# Compile as assembler file
$1_FLAGS := $$($1_BASE_ASFLAGS)
else ifneq ($$(filter %.S, $$($1_FILENAME)), )
# Compile as preprocessed assembler file
$1_FLAGS := $(BASIC_ASFLAGS) $$($1_BASE_ASFLAGS)
$1_COMPILER := $(AS)
$1_DEP_FLAG :=
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) -c
$1_COMPILER := $$($$($1_BASE)_CXX)
$1_DEP_FLAG := $(CXX_FLAG_DEPS)
else
$$(error Internal error in NativeCompilation.gmk: no compiler for file $$($1_FILENAME))
endif
ifeq ($$(filter %.s %.S, $$($1_FILENAME)), )
# And this is the dependency file for this obj file.
$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_DEPS_TARGETS_FILE := $$(patsubst %$(OBJ_SUFFIX),%.d.targets,$$($1_OBJ))
# And this is the dependency file for this obj file.
$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_DEPS_TARGETS_FILE := $$(patsubst %$(OBJ_SUFFIX),%.d.targets,$$($1_OBJ))
# 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
# 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
ifneq ($$(strip $$($1_CFLAGS) $$($1_CXXFLAGS) $$($1_OPTIMIZATION)), )
@@ -405,7 +399,7 @@ define SetupCompileNativeFileBody
$$(call MakeDir, $$(@D))
ifneq ($(TOOLCHAIN_TYPE), microsoft)
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_COMPILER) $$($1_DEP_FLAG) \
$$($1_COMPILER) $$(GENDEPS_FLAGS) \
$$(addsuffix .tmp, $$($1_DEPS_FILE)) \
$$($1_COMPILE_OPTIONS)))
ifneq ($$($1_DEPS_FILE), )
@@ -424,15 +418,25 @@ 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, $$@, $$(call MakeCommandRelative, \
$$($1_COMPILER) -showIncludes $$($1_COMPILE_OPTIONS))) \
| $(TR) -d '\r' | $(GREP) -v -e "^Note: including file:" \
-e "^$$($1_FILENAME)$$$$" || test "$$$$?" = "1" ; \
$(ECHO) $$@: \\ > $$($1_DEPS_FILE) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_OBJ).log \
| $(SORT) -u >> $$($1_DEPS_FILE) ; \
$(ECHO) >> $$($1_DEPS_FILE) ; \
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEPS_FILE) > $$($1_DEPS_TARGETS_FILE)
ifeq ($$(filter %.S, $$($1_FILENAME)), )
$$(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_DEPS_FILE) ; \
$(SED) $(WINDOWS_SHOWINCLUDE_SED_PATTERN) $$($1_OBJ).log \
| $(SORT) -u >> $$($1_DEPS_FILE) ; \
$(ECHO) >> $$($1_DEPS_FILE) ; \
$(SED) $(DEPENDENCY_TARGET_SED_PATTERN) $$($1_DEPS_FILE) > $$($1_DEPS_TARGETS_FILE)
else
# For assembler calls just create empty dependency lists
$$(call ExecuteWithLog, $$@, $$(call MakeCommandRelative, \
$$($1_COMPILER) $$($1_FLAGS) \
$(CC_OUT_OPTION)$$($1_OBJ) -Ta $$($1_SRC_FILE))) \
| $(TR) -d '\r' | $(GREP) -v -e "Assembling:" || test "$$$$?" = "1" ; \
$(ECHO) > $$($1_DEPS_FILE) ; \
$(ECHO) > $$($1_DEPS_TARGETS_FILE)
endif
endif
endif
endef
@@ -814,7 +818,7 @@ define SetupNativeCompilationBody
-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_OPT_CFLAGS) -x c++-header -c $(GENDEPS_FLAGS) \
$$(addsuffix .tmp, $$($1_PCH_DEPS_FILE))
$$($1_PCH_FILE): $$($1_PRECOMPILED_HEADER) $$($1_COMPILE_VARDEPS_FILE)
@@ -974,6 +978,13 @@ define SetupNativeCompilationBody
$(CD) $$($1_SYMBOLS_DIR) && \
$$($1_OBJCOPY) --add-gnu-debuglink=$$($1_DEBUGINFO_FILES) $$($1_TARGET)
else ifeq ($(call isTargetOs, aix), true)
# AIX does not provide the equivalent of OBJCOPY to extract debug symbols,
# so we copy the compiled object with symbols to the .debuginfo file, which
# happens prior to the STRIP_CMD on the original target object file.
$1_DEBUGINFO_FILES := $$($1_SYMBOLS_DIR)/$$($1_NOSUFFIX).debuginfo
$1_CREATE_DEBUGINFO_CMDS := $(CP) $$($1_TARGET) $$($1_DEBUGINFO_FILES)
else ifeq ($(call isTargetOs, macosx), true)
$1_DEBUGINFO_FILES := \
$$($1_SYMBOLS_DIR)/$$($1_BASENAME).dSYM/Contents/Info.plist \
@@ -1177,7 +1188,7 @@ define SetupNativeCompilationBody
# This only works if the openjdk_codesign identity is present on the system. Let
# silently fail otherwise.
ifneq ($(CODESIGN), )
$(CODESIGN) -s "$(MACOSX_CODESIGN_IDENTITY)" --timestamp --options runtime \
$(CODESIGN) -f -s "$(MACOSX_CODESIGN_IDENTITY)" --timestamp --options runtime \
--entitlements $$(call GetEntitlementsFile, $$@) $$@
endif
endif

View File

@@ -92,40 +92,58 @@ SetIfEmpty = \
# foo/bar/baz, /foo/bar -> <empty>
#
# The x prefix is used to preserve the presence of the initial slash
# On Windows paths are treated as case-insensitive
#
# $1 - Path to compare
# $2 - Other path to compare
FindCommonPathPrefix = \
$(patsubst x%,%,$(subst $(SPACE),/,$(strip \
$(call FindCommonPathPrefixHelper, \
$(subst /,$(SPACE),x$(strip $1)), $(subst /,$(SPACE),x$(strip $2))) \
)))
$(call DecodeSpace,$(patsubst x%,%,$(subst $(SPACE),/,$(strip \
$(call FindCommonPathPrefixHelper1, \
$(subst /,$(SPACE),x$(call EncodeSpace,$(strip $1))), \
$(subst /,$(SPACE),x$(call EncodeSpace,$(strip $2)))) \
))))
FindCommonPathPrefixHelper = \
FindCommonPathPrefixHelper1 = \
$(if $(filter $(OPENJDK_TARGET_OS), windows), \
$(call FindCommonPathPrefixHelper2,$(call uppercase,$1),$(call uppercase,$2),$1), \
$(call FindCommonPathPrefixHelper2,$1,$2,$1))
FindCommonPathPrefixHelper2 = \
$(if $(call equals, $(firstword $1), $(firstword $2)), \
$(firstword $1) \
$(call FindCommonPathPrefixHelper, \
$(wordlist 2, $(words $1), $1), $(wordlist 2, $(words $2), $2) \
$(if $(call equals, $(firstword $1),),, \
$(firstword $3) \
$(call FindCommonPathPrefixHelper2, \
$(wordlist 2, $(words $1), $1), \
$(wordlist 2, $(words $2), $2), \
$(wordlist 2, $(words $3), $3) \
) \
) \
)
# Convert a partial path into as many directory levels of ../, removing
# leading and following /.
# Ex: foo/bar/baz/ -> ../../..
# foo/bar -> ../..
# /foo -> ..
DirToDotDot = \
$(subst $(SPACE),/,$(foreach d, $(subst /,$(SPACE),$1),..))
# Computes the relative path from a directory to a file
# $1 - File to compute the relative path to
# $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 := $(if $($(strip $1)_dotdots),$($(strip $1)_dotdots),.)) \
$(eval $1_suffix := $(patsubst $($(strip $1)_prefix)/%, %, $1)) \
$($(strip $1)_dotdots)/$($(strip $1)_suffix)
$(call DecodeSpace,$(strip $(call RelativePathHelper,$(call EncodeSpace \
,$(strip $1)),$(call EncodeSpace \
,$(strip $2)),$(call EncodeSpace \
,$(call FindCommonPathPrefix,$1,$2)))))
RelativePathHelper = \
$(eval $3_prefix_length := $(words $(subst /,$(SPACE),$3))) \
$(eval $1_words := $(subst /,$(SPACE),$1)) \
$(eval $2_words := $(subst /,$(SPACE),$2)) \
$(if $(call equals,$($3_prefix_length),0),, \
$(eval $1_words := $(wordlist 2,$(words $($1_words)),$(wordlist \
$($3_prefix_length),$(words $($1_words)),$($1_words)))) \
$(eval $2_words := $(wordlist 2,$(words $($2_words)),$(wordlist \
$($3_prefix_length),$(words $($2_words)),$($2_words)))) \
) \
$(eval $1_suffix := $(subst $(SPACE),/,$($1_words))) \
$(eval $2_dotdots := $(subst $(SPACE),/,$(foreach d,$($2_words),..))) \
$(if $($1_suffix), \
$(if $($2_dotdots), $($2_dotdots)/$($1_suffix), $($1_suffix)), \
$(if $($2_dotdots), $($2_dotdots), .))
################################################################################
# Filter out duplicate sub strings while preserving order. Keeps the first occurance.

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -44,9 +44,6 @@ LANGTOOLS_MODULES= \
# These models require buildtools-hotspot to process for gensrc
HOTSPOT_MODULES= \
jdk.aot \
jdk.hotspot.agent \
jdk.internal.vm.ci \
jdk.internal.vm.compiler \
jdk.internal.vm.compiler.management \
#

View File

@@ -205,7 +205,7 @@ var getJibProfiles = function (input) {
// Exclude list to use when Jib creates a source bundle
data.src_bundle_excludes = [
"build", "{,**/}webrev*", "{,**/}.hg", "{,**/}JTwork", "{,**/}JTreport",
"build", "{,**/}webrev*", "{,**/}.hg", "{,**/}JTwork*", "{,**/}JTreport*",
"{,**/}.git"
];
// Include list to use when creating a minimal jib source bundle which
@@ -239,7 +239,7 @@ var getJibProfilesCommon = function (input, data) {
// List of the main profile names used for iteration
common.main_profile_names = [
"linux-x64", "linux-x86", "macosx-x64",
"linux-x64", "linux-x86", "macosx-x64", "macosx-aarch64",
"windows-x64", "windows-x86", "windows-aarch64",
"linux-aarch64", "linux-arm32", "linux-ppc64le", "linux-s390x"
];
@@ -251,8 +251,6 @@ var getJibProfilesCommon = function (input, data) {
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",
"--disable-jvm-feature-aot",
"--disable-jvm-feature-graal",
"--disable-jvm-feature-shenandoahgc",
versionArgs(input, common))
};
@@ -396,8 +394,13 @@ var getJibProfilesCommon = function (input, data) {
};
};
common.boot_jdk_version = "15";
common.boot_jdk_build_number = "36";
if (input.build_os == 'macosx' && input.build_cpu == 'aarch64') {
common.boot_jdk_version = "17";
common.boot_jdk_build_number = "24";
} else {
common.boot_jdk_version = "16";
common.boot_jdk_build_number = "36";
}
common.boot_jdk_home = input.get("boot_jdk", "install_path") + "/jdk-"
+ common.boot_jdk_version
+ (input.build_os == "macosx" ? ".jdk/Contents/Home" : "");
@@ -419,8 +422,10 @@ var getJibProfilesProfiles = function (input, common, data) {
"linux-x64": {
target_os: "linux",
target_cpu: "x64",
dependencies: ["devkit", "gtest", "graphviz", "pandoc"],
configure_args: concat(common.configure_args_64bit,
dependencies: ["devkit", "gtest", "build_devkit", "graphviz", "pandoc"],
configure_args: concat(
(input.build_cpu == "x64" ? common.configure_args_64bit
: "--openjdk-target=x86_64-linux-gnu"),
"--with-zlib=system", "--disable-dtrace",
(isWsl(input) ? [ "--host=x86_64-unknown-linux-gnu",
"--build=x86_64-unknown-linux-gnu" ] : [])),
@@ -447,6 +452,14 @@ var getJibProfilesProfiles = function (input, common, data) {
"SETFILE=/usr/bin/SetFile"),
},
"macosx-aarch64": {
target_os: "macosx",
target_cpu: "aarch64",
dependencies: ["devkit", "gtest"],
configure_args: concat(common.configure_args_64bit, "--with-zlib=system",
"--with-macosx-version-max=11.00.00"),
},
"windows-x64": {
target_os: "windows",
target_cpu: "x64",
@@ -478,6 +491,8 @@ var getJibProfilesProfiles = function (input, common, data) {
dependencies: ["devkit", "gtest", "build_devkit", "pandoc"],
configure_args: [
"--openjdk-target=aarch64-linux-gnu",
"--with-zlib=system",
"--disable-dtrace",
"--enable-compatible-cds-alignment",
],
},
@@ -557,7 +572,7 @@ var getJibProfilesProfiles = function (input, common, data) {
});
// Generate -gcov profiles
[ "linux-aarch64", "linux-x64", "macosx-x64" ].forEach(function (name) {
[ "linux-aarch64", "linux-x64", "macosx-x64", "macosx-aarch64" ].forEach(function (name) {
var gcovName = name + "-gcov";
profiles[gcovName] = clone(profiles[name]);
profiles[gcovName].default_make_targets = ["product-bundles", "test-bundles"];
@@ -646,7 +661,7 @@ var getJibProfilesProfiles = function (input, common, data) {
});
// JCov profiles build JCov-instrumented JDK image based on images provided through dependencies.
[ "linux-aarch64", "linux-x64", "macosx-x64", "windows-x64" ]
[ "linux-aarch64", "linux-x64", "macosx-x64", "macosx-aarch64", "windows-x64" ]
.forEach(function (name) {
var jcovName = name + "-jcov";
profiles[jcovName] = clone(common.main_profile_base);
@@ -659,11 +674,7 @@ var getJibProfilesProfiles = function (input, common, data) {
["--with-jcov-input-jdk=" + input.get(name + ".jdk", "home_path")]);
});
//
// Define artifacts for profiles
//
// Macosx bundles are named osx
// tar.gz.
var artifactData = {
"linux-x64": {
platform: "linux-x64",
@@ -672,9 +683,13 @@ var getJibProfilesProfiles = function (input, common, data) {
platform: "linux-x86",
},
"macosx-x64": {
platform: "osx-x64",
platform: "macos-x64",
jdk_subdir: "jdk-" + data.version + ".jdk/Contents/Home",
},
"macosx-aarch64": {
platform: "macos-aarch64",
jdk_subdir: "jdk-" + data.version + ".jdk/Contents/Home",
},
"windows-x64": {
platform: "windows-x64",
jdk_suffix: "zip",
@@ -842,7 +857,7 @@ var getJibProfilesProfiles = function (input, common, data) {
});
// Artifacts of JCov profiles
[ "linux-aarch64", "linux-x64", "macosx-x64", "windows-x64" ]
[ "linux-aarch64", "linux-x64", "macosx-x64", "macosx-aarch64", "windows-x64" ]
.forEach(function (name) {
var o = artifactData[name]
var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
@@ -862,7 +877,7 @@ var getJibProfilesProfiles = function (input, common, data) {
});
// Artifacts of gcov (native-code-coverage) profiles
[ "linux-aarch64", "linux-x64", "macosx-x64" ].forEach(function (name) {
[ "linux-aarch64", "linux-x64", "macosx-x64", "macosx-aarch64" ].forEach(function (name) {
var o = artifactData[name]
var pf = o.platform
var jdk_subdir = (o.jdk_subdir != null ? o.jdk_subdir : "jdk-" + data.version);
@@ -974,8 +989,11 @@ 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 = {
environment_path: input.get("devkit", "install_path")
+ "/Xcode.app/Contents/Developer/usr/bin"
dependencies: [ "lldb" ],
environment_path: [
input.get("gnumake", "install_path") + "/bin",
input.get("lldb", "install_path") + "/Xcode.app/Contents/Developer/usr/bin",
],
};
profiles["run-test"] = concatObjects(profiles["run-test"], macosxRunTestExtra);
profiles["run-test-prebuilt"] = concatObjects(profiles["run-test-prebuilt"], macosxRunTestExtra);
@@ -1029,10 +1047,10 @@ var getJibProfilesProfiles = function (input, common, data) {
var getJibProfilesDependencies = function (input, common) {
var devkit_platform_revisions = {
linux_x64: "gcc10.2.0-OL6.4+1.0",
macosx_x64: "Xcode11.3.1-MacOSX10.15+1.1",
windows_x64: "VS2019-16.7.2+1.1",
linux_aarch64: "gcc10.2.0-OL7.6+1.0",
linux_x64: "gcc10.3.0-OL6.4+1.0",
macosx: "Xcode12.4+1.0",
windows_x64: "VS2019-16.9.3+1.0",
linux_aarch64: "gcc10.3.0-OL7.6+1.0",
linux_arm: "gcc8.2.0-Fedora27+1.0",
linux_ppc64le: "gcc8.2.0-Fedora27+1.0",
linux_s390x: "gcc8.2.0-Fedora27+1.0"
@@ -1043,6 +1061,8 @@ var getJibProfilesDependencies = function (input, common) {
: input.target_platform);
if (input.target_platform == "windows_aarch64") {
devkit_platform = "windows_x64";
} else if (input.target_os == "macosx") {
devkit_platform = "macosx";
}
var devkit_cross_prefix = "";
if (!(input.target_os == "windows")) {
@@ -1051,9 +1071,15 @@ var getJibProfilesDependencies = function (input, common) {
devkit_cross_prefix = input.build_platform + "-to-";
}
}
var boot_jdk_platform = (input.build_os == "macosx" ? "osx" : input.build_os)
+ "-" + input.build_cpu;
var boot_jdk_os = input.build_os;
if (input.build_os == "macosx") {
if (input.build_cpu == "aarch64") {
boot_jdk_os = "macos";
} else {
boot_jdk_os = "osx";
}
}
var boot_jdk_platform = boot_jdk_os + "-" + input.build_cpu;
var boot_jdk_ext = (input.build_os == "windows" ? ".zip" : ".tar.gz")
// If running in WSL and building for Windows, it will look like Linux,
// but we need a Windows boot JDK.
@@ -1061,22 +1087,23 @@ var getJibProfilesDependencies = function (input, common) {
boot_jdk_platform = "windows-" + input.build_cpu;
boot_jdk_ext = ".zip";
}
var boot_jdk = {
server: "jpg",
product: "jdk",
version: common.boot_jdk_version,
build_number: common.boot_jdk_build_number,
file: "bundles/" + boot_jdk_platform + "/jdk-" + common.boot_jdk_version + "_"
+ boot_jdk_platform + "_bin" + boot_jdk_ext,
configure_args: "--with-boot-jdk=" + common.boot_jdk_home,
environment_path: common.boot_jdk_home + "/bin"
}
var makeBinDir = (input.build_os == "windows"
? input.get("gnumake", "install_path") + "/cygwin/bin"
: input.get("gnumake", "install_path") + "/bin");
var dependencies = {
boot_jdk: {
server: "jpg",
product: "jdk",
version: common.boot_jdk_version,
build_number: common.boot_jdk_build_number,
file: "bundles/" + boot_jdk_platform + "/jdk-" + common.boot_jdk_version + "_"
+ boot_jdk_platform + "_bin" + boot_jdk_ext,
configure_args: "--with-boot-jdk=" + common.boot_jdk_home,
environment_path: common.boot_jdk_home + "/bin"
},
boot_jdk: boot_jdk,
devkit: {
organization: common.organization,
@@ -1092,7 +1119,17 @@ var getJibProfilesDependencies = function (input, common) {
organization: common.organization,
ext: "tar.gz",
module: "devkit-" + input.build_platform,
revision: devkit_platform_revisions[input.build_platform]
revision: devkit_platform_revisions[input.build_platform],
// Only set --with-build-devkit when cross compiling.
configure_args: (input.build_cpu == input.target_cpu ? false
: "--with-build-devkit=" + input.get("build_devkit", "home_path"))
},
lldb: {
organization: common.organization,
ext: "tar.gz",
module: "devkit-macosx" + (input.build_cpu == "x64" ? "_x64" : ""),
revision: (input.build_cpu == "x64" ? "Xcode11.3.1-MacOSX10.15+1.1" : devkit_platform_revisions[devkit_platform])
},
cups: {
@@ -1104,10 +1141,9 @@ var getJibProfilesDependencies = function (input, common) {
jtreg: {
server: "jpg",
product: "jtreg",
version: "5.1",
build_number: "b01",
checksum_file: "MD5_VALUES",
file: "bundles/jtreg_bin-5.1.zip",
version: "6",
build_number: "1",
file: "bundles/jtreg-6+1.zip",
environment_name: "JT_HOME",
environment_path: input.get("jtreg", "home_path") + "/bin",
configure_args: "--with-jtreg=" + input.get("jtreg", "home_path"),
@@ -1120,8 +1156,7 @@ var getJibProfilesDependencies = function (input, common) {
},
jcov: {
// Until an official build of JCov is available, use custom
// build to support classfile version 60.
// Use custom build of JCov
// See CODETOOLS-7902734 for more info.
// server: "jpg",
// product: "jcov",
@@ -1129,7 +1164,7 @@ var getJibProfilesDependencies = function (input, common) {
// build_number: "b07",
// file: "bundles/jcov-3_0.zip",
organization: common.organization,
revision: "3.0-60-support+1.0",
revision: "3.0-7-jdk-asm+1.0",
ext: "zip",
environment_name: "JCOV_HOME",
},

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -61,7 +61,6 @@ BOOT_MODULES= \
# should carefully be considered if it should be upgradeable or not.
UPGRADEABLE_PLATFORM_MODULES= \
java.compiler \
jdk.aot \
jdk.internal.vm.compiler \
jdk.internal.vm.compiler.management \
#

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -25,19 +25,19 @@
# Versions and download locations for dependencies used by pre-submit testing.
BOOT_JDK_VERSION=15
JTREG_VERSION=5.1
JTREG_BUILD=b01
BOOT_JDK_VERSION=16
JTREG_VERSION=6
JTREG_BUILD=1
GTEST_VERSION=1.8.1
LINUX_X64_BOOT_JDK_FILENAME=openjdk-15_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk15/779bf45e88a44cbd9ea6621d33e33db1/36/GPL/openjdk-15_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=bb67cadee687d7b486583d03c9850342afea4593be4f436044d785fba9508fb7
LINUX_X64_BOOT_JDK_FILENAME=openjdk-16_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk16/7863447f0ab643c585b9bdebf67c69db/36/GPL/openjdk-16_linux-x64_bin.tar.gz
LINUX_X64_BOOT_JDK_SHA256=e952958f16797ad7dc7cd8b724edd69ec7e0e0434537d80d6b5165193e33b931
WINDOWS_X64_BOOT_JDK_FILENAME=openjdk-15_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk15/779bf45e88a44cbd9ea6621d33e33db1/36/GPL/openjdk-15_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=764e39a71252a9791118a31ae56a4247c049463bda5eb72497122ec50b1d07f8
WINDOWS_X64_BOOT_JDK_FILENAME=openjdk-16_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk16/7863447f0ab643c585b9bdebf67c69db/36/GPL/openjdk-16_windows-x64_bin.zip
WINDOWS_X64_BOOT_JDK_SHA256=a78bdeaad186297601edac6772d931224d7af6f682a43372e693c37020bd37d6
MACOS_X64_BOOT_JDK_FILENAME=openjdk-115_osx-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk15/779bf45e88a44cbd9ea6621d33e33db1/36/GPL/openjdk-15_osx-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=ab842c8c0953b816be308c098c1a021177a4776bef24da85b6bafbbd657c7e1a
MACOS_X64_BOOT_JDK_FILENAME=openjdk-16_osx-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_URL=https://download.java.net/java/GA/jdk16/7863447f0ab643c585b9bdebf67c69db/36/GPL/openjdk-16_osx-x64_bin.tar.gz
MACOS_X64_BOOT_JDK_SHA256=16f3e39a31e86f3f51b0b4035a37494a47ed3c4ead760eafc6afd7afdf2ad9f2

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -26,16 +26,17 @@
# Default version, product, and vendor information to use,
# unless overridden by configure
DEFAULT_VERSION_FEATURE=17
DEFAULT_VERSION_FEATURE=18
DEFAULT_VERSION_INTERIM=0
DEFAULT_VERSION_UPDATE=0
DEFAULT_VERSION_PATCH=0
DEFAULT_VERSION_EXTRA1=0
DEFAULT_VERSION_EXTRA2=0
DEFAULT_VERSION_EXTRA3=0
DEFAULT_VERSION_DATE=2021-09-14
DEFAULT_VERSION_CLASSFILE_MAJOR=61 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_DATE=2022-03-15
DEFAULT_VERSION_CLASSFILE_MAJOR=62 # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
DEFAULT_VERSION_CLASSFILE_MINOR=0
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="15 16 17"
DEFAULT_JDK_SOURCE_TARGET_VERSION=17
DEFAULT_VERSION_DOCS_API_SINCE=11
DEFAULT_ACCEPTABLE_BOOT_VERSIONS="16 17 18"
DEFAULT_JDK_SOURCE_TARGET_VERSION=18
DEFAULT_PROMOTED_VERSION_PRE=ea

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