Compare commits

...

2777 Commits

Author SHA1 Message Date
Alexey Ushakov
75a7ec29fe JBR-3773 M1 java/awt/Window/WindowAppearanceTest/WindowAppearanceTest.java: : Incorrect color java.awt.Color[r=75,g=74,b=72]at (140,5)
Added more variants of colors for unfocused and focused titles
2021-12-16 16:28:17 +01:00
Artem Semenov
372b24e140 JBR-3775 Optimize the algorithm for obtaining tree elements 2021-12-16 17:41:39 +03:00
Nikita Gubarkov
ec072da64b JBR API v0.0.1
Added file dialog customization via JBR API & fixed bugs in windows common item dialog
2021-12-16 07:09:53 +03:00
Dmitry
66bacd6534 JBR-3793 Accept unrecognized options and make them available in Java
This patch:

- Change default behavior to ignore unrecognized options (+IgnoreUnrecognizedVMOptions)

- Store all ignored values to: "java.vm.unrecognized.options" as "+BogusOption01 +BogusOption02" (space separated), see testcase

- Explicitly set -IgnoreUnrecognizedVMOptions for couple of tests, that rely on default behavior
2021-12-16 07:09:52 +03:00
Vitaly Provodin
5cbed8aca8 JBR-3931 add the module jdk.unsupported.desktop into jbr
(cherry picked from commit 32def2fd42)
2021-12-16 07:09:51 +03:00
Alexey Ushakov
2cc4bd4b66 JBR-4111 [JBR17] Make possible to select files and directories independently
Implemented apple.awt.fileDialogForFiles property
2021-12-16 07:09:50 +03:00
Vitaly Provodin
11b7883430 enable fixed tests to regular runs 2021-12-16 07:09:49 +03:00
Vitaly Provodin
f71fdf9f69 exclude javax/swing tests on mac-aarch64 due to 8277816 2021-12-16 07:09:48 +03:00
Anton Tarasov
06811192cf JBR-4042 VO: java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java - SIGBUS (0xa) at sun.lwawt.macosx.CAccessibility$9.call()Ljava/lang/Boolean;+4 java.desktop@17.0.1 2021-12-16 07:09:47 +03:00
Aleksandr Veselov
2ef6f228f2 JBR-4107 A11y: macOS - wrong frame position if window is not on primary screen 2021-12-16 07:09:46 +03:00
Alexey Ushakov
1eeadc6f6c JBR-4060 [JBR17+Metal] Flickering on button's shadow
Removed unnecessary global flag. Optimized mask cache texture clearing code.
2021-12-16 07:09:45 +03:00
Alexey Ushakov
7ce53b02f9 JBR-3954 Transparent text color rendering (needed for experimental UI)
Performed conversion from ARGB_PRE to ARGB in the grayscale text shader
2021-12-16 07:09:44 +03:00
Alexey Ushakov
4a3a5bde83 JBR-3872 [JBR17+Metal] Wrong color for scrollbars and inlay hints
Corrected typo in setTxtUniforms and fixed alpha blending in frag_gmc_text shader
2021-12-16 07:09:43 +03:00
Alexey Ushakov
f80fbbc20f JBR-3820 Gamma correction for grayscale text in Metal rendering pipeline
Implemented gamma correction using the same approach that we did for OGL grayscale text rendering (OGLTextRenderer.c)
Optimized shader performance
2021-12-16 07:09:42 +03:00
Alexey Ushakov
b3d6b00942 JBR-4104 jbr-dev compilation failure
Corrected suppress warnings
2021-12-16 07:09:41 +03:00
Vitaly Provodin
0053751c62 JBR-4067 fix misprint with applying obsolete exclude_jcef_module.patch 2021-12-16 07:09:39 +03:00
Vitaly Provodin
2718de16f8 JBR-3756 remove JNF from mac-aarch64 binaries 2021-12-16 07:09:38 +03:00
Vitaly Provodin
876e5627a1 JBR-4082 create JBR & JBRSDK installer packages 2021-12-16 07:09:37 +03:00
Denis Fokin
0ae8553922 JBR-4038 [JBR17] Force Touch events are not supported on macOS
Added missing files and handlers from JBR11
2021-12-16 07:09:36 +03:00
Dmitry Batrak
a12e18dd40 JBR-4084 Default font '. AppleSystemUIFont' does not have bold weight on Chinese characters
(cherry picked from commit 4fde082d53)
2021-12-16 07:09:35 +03:00
Maxim Kartashev
5db1bfb301 JBR-3899 SIGSEGV at [libjvm] _ZN23JfrNetworkInterfaceName11on_rotationEv
Prevent JfrNetworkInterfaceName::on_rotation() to dereference a
potentially NULL pointer.

(cherry picked from commit b2a9372d70)
2021-12-16 07:09:34 +03:00
Dmitry Batrak
beb14ead6e JBR-4072 Migrate font fallback implementation on macOS to cascade lists
(cherry picked from commit a155760e94)
2021-12-16 07:09:33 +03:00
Artem Semenov
09f74b5e9d JBR-4012 On Idea Vo often speeks selected element of tables, lists, and trees. 2021-12-16 07:09:32 +03:00
Maxim Kartashev
87ef8aad1c JBR-4061 Specify build user for the build 2021-12-16 07:09:31 +03:00
Maxim Kartashev
a0b44ca163 JBR-4063 macOS: update build scripts to produce more deterministic output
Make mkimages.sh produce more deterministic .tar.gz archives on MacOS.
NB: build notarization is not in the scope of this change.

(cherry picked from commit e1a1b6814d)
2021-12-16 07:09:30 +03:00
Maxim Kartashev
c371bfab90 JBR-4033 Linux: update build scripts to produce more deterministic output
This commits achieves almost the same build output with the same build
input on Linux. Exceptions are:
- class files timestamps differ in jrt-fs.jar (for all output),
- class files timestamps differ in all the jmod files (for
  jbrsdk...tar.gz).
NB: jbrsdk...test...tar.gz does not need to be deterministic.

This was achieved mainly by
- setting several environment variables (SOURCE_DATE_EPOCH, TZ),
- providing the necessary options to the configure script,
- setting the timestamp of all files that make up the resulting
  archive to SORUCE_DATE_EPOCH and normalizing the list of said
  files before archiving.

(cherry picked from commit ffded82734)
2021-12-16 07:09:29 +03:00
Maxim Kartashev
a91686e2bc JBR-4059 Create Dockerfile for building on AArch64 Linux 2021-12-16 07:09:28 +03:00
Dmitry Batrak
2801996066 JBR-4021 Unexpected focus event order on window showing
(cherry picked from commit 2a398ebb24)
2021-12-16 07:09:27 +03:00
Maxim Kartashev
fe33f0439b JBR-4020 Test ObsoleteFlagErrorMessage fails after +IgnoreUnrecognizedVMOptions has become the default
(cherry picked from commit ae5963a094)
2021-12-16 07:09:25 +03:00
Maxim Kartashev
b4fa280202 JBR-3923 Internal Error in c1_Instruction.cpp
Make C1 hotspot compiler bail out during CFG construction if there's a
cycle in the graph that isn't a natural loop and that has led to an
unexpected state of stack/locals like missing a phi function.

This is a temporary measure that lets hotspot continue working
even after encountering such bytecode patterns. The full solution
will probably involve more sophisticated CFG checks.

(cherry picked from commit aa0b61cb75)
2021-12-16 07:09:24 +03:00
Artem Semenov
669d95a590 JBR-3868 Combobox list is not voiced of VoiceOver 2021-12-16 07:09:23 +03:00
Maxim Kartashev
63c841fdaf JBR-1430 (8195129) Windows: use UTF16 version of Win32 API to load DLL
Also correct library name encoding in exception messages.
2021-12-16 07:09:22 +03:00
Vitaly Provodin
a574305e6a exclude tests spontaneously creating windows during test execution 2021-12-16 07:09:21 +03:00
Maxim Kartashev
03d7998461 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-12-16 07:09:20 +03:00
Alexey Ushakov
c5e1b2ff0a JBR-3924 CMD+Tilda does not switch app windows
Introduced vm property to disable capturing of next app window shortcut
2021-12-16 07:09:19 +03:00
Nikita Gubarkov
e5a74a160a JBR-2917 Added emoji support for Windows
JBR-3951 Pass real glyph type from native code instead of guessing it by rowBytes & width
2021-12-16 07:09:18 +03:00
Pavel
68f2cf5c2d JBR-3926 make AwtComponent transparent for hit events by default
* JBR-3926 make AwtComponent transparent for hit events by default

* [WIP] pass hittest event to frame only if custom decoration is enabled and frame ready to handle it
(cherry picked from commit c0e26ff5d5)
2021-12-16 07:09:17 +03:00
Maxim Kartashev
3552a6c02e JBR-3896 Abysmally slow input and UI performance since upgrade to IU-213.4928.7 from previous 2021.3 EAP version
The slowness was the result of XWM.getInsetsFromExtents() repeated
attempts to acquire frame extents from a property that under Sway is
simply unavailable. Each attempt added at least 20ms to every re-draw.

Prior to (repeatedly) checking for NET_FRAME_EXTENTS property of a
window, check that the property is supported by the window manager.

(cherry picked from commit b40cc1c791)
2021-12-16 07:09:16 +03:00
Anton Tarasov
fad937fddc JBR-3413 use timeout in CAccessibility.invokeAndWait
(cherry picked from commit e7009db076)
2021-12-16 07:09:15 +03:00
Maxim Kartashev
a87e857218 JBR-3623 SIGSEGV at [libawt_xawt] Java_sun_awt_X11GraphicsDevice_getConfigColormap
This fix addresses two possible causes of crashes:
1. makeDefaultConfig() returning NULL. The fix is to die gracefully
instead of crashing in an attempt to de-reference the NULL pointer.

2. A race condition when the number of screens change (this is only an
issue with the number of xinerama screens; the number of X11 screens is
static for the duration of the X session).

The race scenario: X11GraphisDevice.makeDefaultConfiguration() is called
on EDT so the call can race with X11GraphisDevice.invalidate() that
re-sets the screen number of the device; the latter is invoked on the
"AWT-XAWT" thread from X11GraphicsEnvironment.rebuildDevices(). So by
the time makeDefaultConfiguration() makes a native call with the
device's current screen number, the x11Screens array maintained by the
native code could have become shorter. And the native methods like
Java_sun_awt_X11GraphicsDevice_getConfigColormap() assume that the
screen number passed to them is always current and valid. The AWT lock
only protects against the changes during the native methods invocation,
but does not protect against them being called with an outdated screen
number.

The fix is to eliminate the race by protecting X11GraphisDevice.screen
with the AWT lock.

(cherry picked from commit 0b53cd291f)
(cherry picked from commit 3a15dfad37)
2021-12-16 07:09:13 +03:00
Maxim Kartashev
a891822c98 JBR-3916 Deadlock in pGetBounds() on Linux
The deadlock occurred because one thread was holding the AWT lock and
waiting for boundsCacheLock in resetBoundsCache() and the other vice
versa stuck in pGetBounds() owning boundsCacheLock and waiting for the
AWT lock.

The solution is to get rid of boundsCacheLock altogether. It was
introduced in order to never return null from getBoundsCached() so that
resetBoundsCache() wouldn't interfere. But the same effect can be
achieved by simply using a local variable to hold a copy of the current
bounds. The worst case scenario now is that two threads update
boundsCached immediately one after another (if they both have observed
the null value there at about the same time), but that's harmless as
pGetBounds() grabs the AWT lock when necessary.

(cherry picked from commit dc6ad31524)
2021-12-16 07:09:12 +03:00
Vitaly Provodin
92e4664981 JBR-3905 add incremental JBR building 2021-12-16 07:09:11 +03:00
Vitaly Provodin
aeebf64568 JBR-3904 fix the image directory name of macos builds 2021-12-16 07:09:10 +03:00
Alexey Ushakov
5044839ee7 JBR-3901 jbr-dev compile problem
Added transient keyword
2021-12-16 07:09:09 +03:00
Alexander Lobas
9a918f2b70 JBR-2893 Big Sur: Add support of opening project as tabs IDEA-257932 Big Sur: IDEA hangs after closing a project tab after exiting and entering full screen
Converted JNF to JNIUtilites

(cherry picked from commit f02e31a440)
(cherry-picked from commit a84736ebcc)
2021-12-16 07:09:08 +03:00
Dmitry Batrak
6caabd7733 log LWCToolkit invokeAndWait requests
as part of JBR-3017, to make investigation of similar issues simpler in the future

(cherry-picked from commit a7fd723e43)
2021-12-16 07:09:07 +03:00
Alexey Ushakov
f014fb04e9 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-12-16 07:09:06 +03:00
Alexey Ushakov
20e66ecca9 JRE-193 UI freeze and 12/second thread dumps
Moved CStrikeDisposer dispose code to AppKit

(cherry picked from commit 28774d6878)
2021-12-16 07:09:05 +03:00
Alexey Ushakov
4b9518a9b1 JBR-3843 IDE text is misaligned vertically when using Consolas font
Use usWinAscent/usWinDescent for metrics on Windows
2021-12-16 07:09:04 +03:00
Alexander Lobas
7ed93ca4bb JBR-3660 PhpStorm 2021.2 crashes on selecting iCloud Drive directory in Open dialog
(cherry picked from commit f5434bcaaf)
2021-12-16 07:09:03 +03:00
Alexander Lobas
3f8b4df0ed JBR-3629 SIGILL at [libsystem_kernel] __kill NPE at com.intellij.openapi.options.SchemeImportUtil$1.isFileSelectable / -[CFileDialog askFilenameFilter:]
(cherry picked from commit 86c13ecaed)
2021-12-16 07:09:02 +03:00
Alexander Lobas
f90caaa582 JBR-3443 Native file dialog on OSX enable filename filter by VM option
(cherry-picked from commit f10e324538)
2021-12-16 07:09:01 +03:00
Alexander Lobas
be90767767 JBR-3442 Native file dialog on OSX (for open file) doesn't allow pasting path
(cherry-picked from commit 7d8cc524ca)
2021-12-16 07:08:59 +03:00
Maxim Kartashev
61ed33ab9a Revert "JBR-2755 IDE UI became slow via remote X Server connection from Windows"
This reverts commit cd9138844da770ae60806fd7dbc1e85c773882a8.
2021-12-16 07:08:58 +03:00
Konstantin Aleev
f50e454702 fix memory leaks in AccessibleJTree
(cherry picked from commit 561a7b8def)
2021-12-16 07:08:57 +03:00
Maxim Kartashev
79fc68bc41 JBR-3835 Cropped messages in all Message Dialogs in Idea on Ubuntu 18.04.5 LTS with swing alerts enabled
The _NET_FRAME_EXTENTS property that is used to obtain the initial
insets of a dialog window does not immediately get its value and may be
returned as 0 if queried too soon after the window creation.

In order to avoid (incorrect) guessing of dialog's insets, make 3
attempts at getting the insets with a small but increasing pause
in between them.
2021-12-16 07:08:56 +03:00
Maxim Kartashev
c43e021cf3 Revert "JBR-3835 Cropped messages in all Message Dialogs in Idea on Ubuntu 18.04.5 LTS with swing alerts enabled"
This reverts commit 8e7aed70976ec0f90c736d86b9cd3e9cf09ff6d4.
2021-12-16 07:08:55 +03:00
Nikita Provotorov
630d0c7f71 JBR-3838 AltGr on Polish keyboard triggers Ctrl+Alt shortcut.
Add regression test.

(cherry picked from commit 8df43eef4b)
2021-12-16 07:08:54 +03:00
Maxim Kartashev
397bee0aa9 JBR-3835 Cropped messages in all Message Dialogs in Idea on Ubuntu 18.04.5 LTS with swing alerts enabled
The _NET_FRAME_EXTENTS property that is used to obtain the initial
insets of a dialog window does not immediately get its value and may be
returned as 0 if queried too soon after the window creation.

In order to avoid (incorrect) guessing of dialog's insets, add an
artificial delay if getInsets() is called too soon.
2021-12-16 07:08:53 +03:00
Vitaly Provodin
e34c689645 configure BOOT_JDK to use JDK 17 2021-12-16 07:08:52 +03:00
Alexey Ushakov
a3c9614cdf JBR-3820 Gamma correction for grayscale text in Metal rendering pipeline
Added regression test to compare OGL and Metal text rendering
2021-12-16 07:08:51 +03:00
Artem Bochkarev
baf1438e88 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-12-16 07:08:50 +03:00
Dmitry Batrak
a2e4223f9a JBR-2759 Typeahead issue on Linux
(cherry picked from commits 76bdaf1131, b20c56ff3e)
2021-12-16 07:08:49 +03:00
Artem Bochkarev
f322144a3f 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-12-16 07:08:47 +03:00
Denis Fokin
9b17fd7073 JBR-1362 Multiple child windows opened and closed in sequence result in a focus loss
(cherry picked from commit 3c9c599a2d)
2021-12-16 07:08:46 +03:00
Nikita Gubarkov
84345ec062 # This is a combination of 2 commits.
# This is the 1st commit message:

Added JBR API

# The commit message #2 will be skipped:

# fixup! Added JBR API
#
# Added constant extraction to JBR API
2021-12-16 07:08:45 +03:00
Maxim Kartashev
ec65de9f9b JBR-3813 Regression after fix for JBR-3688
1. Cached bounds and insets must be cloned before return because they
aren't immutable objects.
2. Fixed the deadlock in resetBoundsCache() by synchronizing on a dedicated
lock.

(cherry picked from commit cd5314db8b)
2021-12-16 07:08:44 +03:00
Maxim Kartashev
2ce2358900 JBR-3680 Cherry-pick Google's NIO patches to get faster file listing
Fix regression introduced by Google's NIO patches:
- do not attempt to get the next entry after the directory stream has
been closed already,
- fix FaultyFileSystem that is used in StreamTest.java to throw
the right exception even when getFileAttributeView() is used instead of
readAttributes(),
- removed unnecessary type cast that caused a compilation warning.

Added a test for walking a directory with a non-latin name.

(cherry picked from commit 152a4e886d)
2021-12-16 07:08:42 +03:00
Renaud Paquay
5035fc8531 Add BasicWithKeyFileAttributeView interface
This new interface is similar to `BasicFileAttributeView` except it
gives implementations a hint that the fileKey() should be acquired
even at some performance cost.

`FileTreeWalker` uses this new interface to request a file key
in addition to regular file attributes so that file equality can
be efficiently performed when checking for loops during file
tree traversal.

This makes `FileTreeWalker` about 2x faster when traversing non
trivial file system trees with the FOLLOW_LINKS option.

Change-Id: I8de047c8fc241dbab9ad57c5e361118a3a94893d

(AKA JBR-3680 Cherry-pick Google's NIO patches to get faster file listing)

(cherry picked from commit 6d1c3f06c4)
2021-12-16 07:08:41 +03:00
Renaud Paquay
49e4c84346 Improve performance of WindowsDirectoryStream
Use `NtQueryDirectoryInformation` instead of `FindFirst/FindNext` to
retrieve the list of entries of a directory.

`NtQueryDirectionInformation` has 2 main benefits over
`FindFist`/`FindNext`:

* Performance is about 40% faster

* Each retrieved entry retrieved contains a 64-bit `FileId` in addition
  to the usual attributes, ensuring that returned `java.nio.Path`
  instances hold onto a `BasicFileAttributes` instance that exposes a
  non-null `java.nio.file.attribute.BasicFileAttributes.fileKey()`.

This change also requires creating a new WindowsFileKey class, similar
to UnixFileKey class, so that
`java.nio.file.attribute.BasicFileAttributes.fileKey()` can return an
Object instance that can be used to compare files for equality.

With this change, the Windows implementation of Files.walkFileTree is
about 40% faster when the FOLLOW_LINKS option is not used, and about
2.5x faster when the FOLLOW_LINKS option is used.

When the FOLLOW_LINKS option is used, most calls to
`Files.isSameFile`, which is expensive as it requires 2 file I/O
operations, are avoided because the Path entries returned by the
new WindowsDirectoryStream implementation now contain a non-null
BasicFileAttributes.fileKey(). The remaining calls to
`Files.isSameFile` are performed when Files.walkFileTree need
to compare the initial directory with other entries.

Change-Id: Id79d89d477a6d5dcf151c63a9d6072c6f7ef43b2

(AKA JBR-3680 Cherry-pick Google's NIO patches to get faster file listing)

(cherry picked from commit 7c2d7541ba)
2021-12-16 07:08:40 +03:00
Ivan Migalev
970409b6c8 JBR-3785: don't touch the active keyboard layout on input method activation / deactivation.
origin PR: github.com/JetBrains/JetBrainsRuntime/pull/78.

(cherry picked from commit 2f772fd1a2)
2021-12-16 07:08:39 +03:00
Dmitry Batrak
33db86b101 JBR-3779 Unexpected Alt+Tab behaviour for Java frames on Cinnamon DE
(cherry picked from commit 0bf13985d5)
2021-12-16 07:08:38 +03:00
Maxim Kartashev
a83bb04324 JBR-3688 PyCharm incredibly slow with fakexrandr
Cache screen bounds and insets and (conservatively) reset those caches
upon any possibility of a change.
This feature can be disabled with -Dx11.cache.screen.insets=false and
-Dx11.cache.screen.bounds=false.

Based on commit accef6f21e.
2021-12-16 07:08:37 +03:00
Maxim Kartashev
63c478cfaf JBR-3772 java/beans/PropertyEditor/TestFontClass.java: access denied ("java.util.PropertyPermission" "sun.awt.x11.trace" "read")
Instead of using System.getProperty() directly, wrap the call into
GetPropertyAction and use AccessController to execute it.
2021-12-16 07:08:36 +03:00
Anton Tarasov
451cade255 JBR-3655 [followup] jbr-dev build fails to find jcef modules on Windows 2021-12-16 07:08:35 +03:00
Alexey Ushakov
153f3f8e7d JBR-3727 JBR17-Metal: Flickering on tooltip appearance
Extracted setting background to the particular method in PlatformWindow. Provided appropriate implementation in CPlatformWindow.
2021-12-16 07:08:34 +03:00
Dmitry Batrak
f29236937e JBR-3504 a11y focus is set on the wrong element when opening popups
(cherry-picked from commit a69e12e0d2)
2021-12-16 07:08:33 +03:00
Maxim Kartashev
61f8a5ddd8 JBR-3665 Typing is slow in remote X session
Only call XGetKeyboardMapping() once for all valid codes and cache the
resulting table. Use the cache on the subsequent calls to
keycodeToKeysym().
2021-12-16 07:08:32 +03:00
Maxim Kartashev
da7581b19f JBR-2273 JBR musl port
Detect if we're running on a musl-based system by checking for the presence
of the libgcompat.so glibc compatibility library in the process' map.
If so, java is re-started with LD_LIBRARY_PATH set to point to the right
directory with libjvm.so. This works around the problem with the musl
dynamic library loader.

(based on commit 13a904ddb5)
2021-12-16 07:08:31 +03:00
Alexey Ushakov
d60763f370 Added support for otf into the build scripts. Updated prebuild maps.
Applied code from jbr-dev
2021-12-16 07:08:30 +03:00
Konstantin Bulenkov
37e7d137aa bundle Inter font 2021-12-16 07:08:29 +03:00
Alexey Ushakov
69b1a00193 JBR-3727 JBR17-Metal: Flickering on tooltip appearance
Used setOpaque() method to set correct background of platform window
2021-12-16 07:08:28 +03:00
Maxim Kartashev
72a94c091b JBR-3664 Logging for communications with X server
Introduced logging controlled with -Dsun.awt.x11.trace.
Currently, only looks at the AWT lock and reports methods holding it
sorted by average hold time.

(based on commit 792a58ea0e)
(based on commit 770b4dc9c1)
2021-12-16 07:08:26 +03:00
Dmitry Batrak
aa21879a81 JBR-3726 Modal windows 'disappear' on minimize in KDE
(cherry picked from commits d9baf2d9db, 9c2841028f, 5c4fd9ceaf, f0ed32fca4)
2021-12-16 07:08:25 +03:00
Maxim Kartashev
96963c8334 JBR-3712 Add project creation instructions to JBR README
Also changed the version of bootstrap Java to 17.
2021-12-16 07:08:24 +03:00
Maxim Kartashev
ec6e377949 JBR-3542 Fix -Xcheck:jni warnings
Fixes warnings coming from JBR-specific code in addition to those fixed
by 8269223.
2021-12-16 07:08:23 +03:00
Dmitry Batrak
d7cf5e7210 JBR-3706 Toggling full screen mode for two frames doesn't work on macOS if invoked without delay
(cherry picked from commit 28cfc4815f)
2021-12-16 07:08:22 +03:00
Dmitry Batrak
e75a0903b8 JBR-3686 Background window steals focus when converted to full screen on macOS
(cherry-picked from commit 07a5b9672e)
2021-12-16 07:08:21 +03:00
Dmitry Batrak
516d278823 JBR-3676 WINDOW_ACTIVATED/DEACTIVATED events sent to a frame when child window closes on macOS
(cherry-picked from commit 824f9ebec3)
2021-12-16 07:08:20 +03:00
Dmitry Batrak
fa7af62829 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-12-16 07:08:19 +03:00
Dmitry Batrak
4666032c34 JBR-3662, JBR-3672 Focus jumps to another project tab after closing modal dialog
(cherry picked from commit bfd01081c3, 2a71dc5981)
2021-12-16 07:08:18 +03:00
Anton Tarasov
8e5af2cd5e JBR-3655 jbr-dev build fails to find jcef modules on Windows 2021-12-16 07:08:17 +03:00
Nikita Gubarkov
2a3b2d9e8d JBR-3648 Replace CacheCellInfo usages with MTLCacheCellInfo in metal rendering code 2021-12-16 07:08:16 +03:00
Dmitry Batrak
0271e312de JBR-3642 java/awt/Window/8159168/SetShapeTest.java fails on macOS-x64 & macOS-aarch64
make sure jb/java/awt/Focus/Typeahead* tests still pass

includes fixes for JBR-3786 javax/swing/plaf/aqua/CustomComboBoxFocusTest.java fails on MacOS by timeout
(cherry picked from commit f5c5388fb5)

and JBR-4113 java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.java fails by time out on macOS

(cherry picked from commit d8d4c55a61)
2021-12-16 07:08:15 +03:00
Anton Tarasov
0ad4c2b317 JBR-1834 [linux] runtime hidpi switch is broken
(cherry picked from commit eaa04303a7)
2021-12-16 07:08:14 +03:00
Anton Tarasov
c0bff19699 JBR-1429 Scale is huge due to GDK_SCALE
(cherry-picked from commit 1c3477df2e)
2021-12-16 07:08:13 +03:00
Anton Tarasov
7d981f4dcf JBR-1365 force IDE-managed HiDPI on Linux for fractional scales
(cherry picked from commit f092ff3962)
2021-12-16 07:08:12 +03:00
Anton Tarasov
176c42f588 Allow HiDPI mode on Linux 2021-12-16 07:08:11 +03:00
Anton Tarasov
f5ba8f993e JRE-489 -Dswing.bufferPerWindow is fractional scale unfriendly 2021-12-16 07:08:10 +03:00
Anton Tarasov
dbe0956cf3 JRE-310 check for Windows8.1 when enabling ui scale
Was "don't fallback on fractional scale" in JBSDK9.
2021-12-16 07:08:08 +03:00
Maxim Kartashev
31308cae31 JBR-3645 Tool to support keeping JBR in sync with OpenJDK 2021-12-16 07:08:07 +03:00
Vitaly Provodin
f1a411562c JBR-3639 add jbrsdk tarballs for dcevm, jcef builds 2021-12-16 07:08:06 +03:00
Anton Tarasov
9721b52594 JBR-3627 include jmods in jbrsdk bundle for jbr-dev 2021-12-16 07:08:05 +03:00
Dmitry Batrak
5d7448a4f7 JBR-3611, JBR-3633, JBR-3666, JBR-3663, JBR-3671, JBR-3673 Interoperability with macOS desktop spaces
(cherry-picked from commits 43fdd6cd26, 75335543f2, a156c6b9bf, 9fdc75969b, 1dcc612a81, 93588d0738, 94a3885bbe)
2021-12-16 07:08:04 +03:00
Maxim Kartashev
dff7e4f132 JBR-3597 Update project README for Java 17 2021-12-16 07:08:03 +03:00
Vitaly Provodin
4dc0660960 enabling dtrace-tests: added dtrace keyword
(cherry picked from commit 0b5119ca89)
2021-12-16 07:08:02 +03:00
Vitaly.Provodin
525526bacd add 32-sizes for native data types
(cherry picked from commit 3a79870da8)
2021-12-16 07:08:01 +03:00
Vitaly.Provodin
705468c6bf add dockerfile for x86
(cherry picked from commit 8fb2341ea8)
2021-12-16 07:08:00 +03:00
Maxim Kartashev
a215841a7e 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-12-16 07:07:59 +03:00
Nikita Gubarkov
0a89372971 Added JBR-specific .idea project files 2021-12-16 07:07:58 +03:00
Nikita Gubarkov
0693457570 Added Clion project setup 2021-12-16 07:07:57 +03:00
Nikita Gubarkov
cba4cae26c Updated IDEA project setup 2021-12-16 07:07:55 +03:00
Alexey Ushakov
e31c7c6008 JBR-3344 "Exit Full Screen" action doesn't work, the only way is mouse click on window's native "green" button.
Restored JBR-1931 fix partially reverted by JBR-1718

(cherry picked from commit c0be778e20)
2021-12-16 07:07:54 +03:00
Anton Tarasov
bbf15ab6c7 JBR-3337 jb/java/jcef/HandleJSQueryTest3314.sh: fails on macOS-aarch64 with "JS Query was not handled in 2nd opened browser"
(cherry picked from commit 8678f41971)
2021-12-16 07:07:53 +03:00
Anton Tarasov
40b207f8e9 JBR-3545 Window.setMinimumSize does not respect DPI scaling
(cherry picked from commit 9b4f72ad18)
2021-12-16 07:07:52 +03:00
Denis Fokin
c3e5f64680 JRE-408 JBR-3515 fix NullPointerException in MetalRootPaneUI.installWindowListeners
(cherry picked from commit 584d554af529cff445b0f09bc2d57be55e138b7a)
(cherry picked from commit 6a42bb54bd)
2021-12-16 07:07:51 +03:00
Alexey Ushakov
7632564a6b JBR-2207 TitledBorder leaks PropertyChangeListener
Added a separate pass with sending setVisible(false) to the frames holding TitledBorder references in order to get WINDOW_DEACTIVATED (to clear KeyBoardFocusManager.activeWindow field)

(cherry picked from commit 3b03c698ce)
2021-12-16 07:07:50 +03:00
Elena Sayapina
65b0a4433d JBR-2657 [TESTBUG] ChainOfPopupsFocusTest misbehaving on Windows
- changed open popup shortcut from Ctrl+N to Ctrl+M, so no new explorer windows appear if desktop gets focused by error
- added a click on the main test frame, so it gets focus when running from background cygwin process on Windows, otherwise it just flashes on the taskbar

(cherry picked from commit eda8e4d50e)
2021-12-16 07:07:49 +03:00
Maxim Kartashev
44acf8a404 JBR-3590 Update JetBrains Runtime README 2021-12-16 07:07:48 +03:00
Maxim Kartashev
9b125591a9 JBR-3572 Wayland: java/awt/Window/WindowTitleVisibleTest/WindowTitleVisibleTestLinuxGnome.java: title bar shown and hidden are the same.
Exclude the test when running under XWayland that doesn't implement
screen capture necessary for the test to function.
2021-12-16 07:07:47 +03:00
Denis Konoplev
270db4a1f8 EA-252361: Check window for null
(cherry picked from commit 23a7dbd486)
2021-12-16 07:07:46 +03:00
Artem Bochkarev
daedcf4442 JBR-3131: support custom view for system menu items
(cherry picked from commit 78d509ac0f)
2021-12-16 07:07:45 +03:00
Artem Bochkarev
9573024783 JBR-3127: set NSWindowAllowsImplicitFullScreen=NO
fixed JBR-3127 Modal dialogs invoked from modal or floating dialogs are opened in full screen

(cherry picked from commit 0b8ff1a7e6)

JBR-3127: add possibility to load NSJavaVirtualMachine

JavaVM framework is deprecated but this class is still checked by AppKit, see https://youtrack.jetbrains.com/issue/JBR-3127#focus=Comments-27-4684465.0-0

(cherry picked from commit be6a2c4f0c)
2021-12-16 07:07:44 +03:00
Nikita Gubarkov
8c3a02d052 JBR-3376 Added check for -1 glyph info pointer in OGLTextRenderer.c 2021-12-16 07:07:43 +03:00
Dmitry Batrak
36f56421dc JBR-3024 Popups are shown with 1x1 size sometimes
test case only

(cherry picked part of commit ee298f5287)
2021-12-16 07:07:42 +03:00
Vitaly Provodin
0bf634f261 JBR-3314 add regression test
(cherry picked from commit c81adfed61)
2021-12-16 07:07:41 +03:00
Ivan Migalev
f0264a9d7e JBR-3227 Reload type of required native file dialogs each time a file dialog is requested
(cherry picked from commit 26dd87ab7c)
2021-12-16 07:07:40 +03:00
Vitaly Provodin
aed56d1c18 JBR-1505 add jdk.jcmd module into JBR
(cherry picked from commit c40b9c8b9e)
2021-12-16 07:07:38 +03:00
Ivan Migalev
f53004b255 JBR-3068 Update path selector behavior when sun.awt.windows.useCommonItemDialog is enabled
(cherry picked from commit 442bb7eecc)
2021-12-16 07:07:37 +03:00
Alexey Ushakov
bc6e308048 JBR-2996 M1 warnings: CoreText note: Client requested name “.SFCompact-Black”, it will get Times-Roman rather than the intended font
Cached system fonts family names

(cherry picked from commit 56629e4c90)
2021-12-16 07:07:36 +03:00
Alexey Ushakov
977ae6de89 JBR-3023 Gray idea frame after project open with ide.mac.transparentTitleBarAppearance.
Initiate move/resize event on first appearance of window having FULL_WINDOW_CONTENT property set

(cherry picked from commit a6ea081ba2)
2021-12-16 07:07:35 +03:00
Dmitry Batrak
422a358709 JBR-3017 Focus issue in presence of third-party accessibility tool
use the new invocation approach for 'makeKeyAndOrderFront' as well, as it can also cause synchronous back-calls to accessibility subsystem, and change the global call order unexpectedly

this commit fixes TypeaheadSetVisibleTest and TypeaheadToFrontTest, when they are run with AltTab active

Guard against possible deadlocks, if UI-related methods are invoked not on EDT.
Sample deadlock scenario:
* Application thread attempts to show the window, this involves calling CWrapper.NSWindow.makeKeyAndOrderFront under AWT tree lock, which blocks till 'makeKeyAndOrderFront' completes on AppKit thread
* AppKit thread, while executing 'makeKeyAndOrderFront' performs 'back-call' to CAccessibility.getFocusOwner, which waits for execution on EDT
* EDT performs some activity requiring AWT tree lock (e.g. processing of PaintEvent)

(cherry picked from commits e3aaff5db4, 09941119e1)
2021-12-16 07:07:34 +03:00
Dmitry Batrak
032d5bf79a JBR-3072 Deadlock on nested dialog hiding
(cherry picked from commits 99242748ee, ad1595b5c2)
2021-12-16 07:07:33 +03:00
Dmitry Batrak
56a81cf6ac fix occasional freezes of JBR-3017 reproducer after the fix
(cherry picked from commit 7e6db54f77)
2021-12-16 07:07:32 +03:00
Dmitry Batrak
e7765059af refactor nativeCreateNSWindow call wrapping
as part of JBR-3017

(cherry picked from commit eeef67a335)
2021-12-16 07:07:31 +03:00
Dmitry Batrak
80506b8e95 remove excessive wrapping with AccessController (AWTThreading does it internally now)
as part of JBR-3017

(cherry picked from commit f1dd523ba8)
2021-12-16 07:07:30 +03:00
Dmitry Batrak
906934029f JBR-2971 Log more information about window creation and property changes
(cherry picked from commit 9d86b4d235)
2021-12-16 07:07:29 +03:00
Dmitry Batrak
2c2bf01ea8 JBR-2819 Create API to determine typographic family/subfamily for available fonts
(cherry picked from commit 89e519a4ef)
2021-12-16 07:07:28 +03:00
Dmitry Batrak
86e8d3e6ea JBR-2533 Popup is not focused on click when switching from another application on macOS
(cherry picked from commits d9ff151211, 67b174dc8c, 72b0add80c, 21af1eba85, 2f1d317d87, 6dd334f9f0, cd863bac0d, 010f6fc951, 25e087d269, parts of 7d5ac56b6c, cd6dd5c3cf, e8bbd8ffdd)

with fix for JBR-3640 (java/awt/Modal/ModalFocusTransferTests/FocusTransferDWFAppModalTest.java: window Open button lost focus when it should not) and JBR-3979 (Focus is not transferred to parent window)
2021-12-16 07:07:27 +03:00
Nikita Gubarkov
1efcfccae4 JBR-2924 Do not try to create native italic font when we're going to make it fake italic 2021-12-16 07:07:26 +03:00
Nikita Gubarkov
9450bfdf98 JBR-3982 Fixed non-antialiased text rendering on macOS
JBR-3269 Disabled subpixel antialiasing for macOS Mojave and newer
2021-12-16 07:07:25 +03:00
Dmitry Batrak
c15293b165 JBR-3017 Focus issue in presence of third-party accessibility tool
(cherry picked from commit 88ead5d9e3)
2021-12-16 07:07:24 +03:00
Vitaly Provodin
a4f844bb24 JBR-1718 add a regression test
(cherry picked from commit 84ff4eab21)
2021-12-16 07:07:23 +03:00
Vitaly Provodin
8134944ac9 JBR-2957 notarize JBR and JBRSDK as APPL
(cherry picked from commit 0e7f9ce4ca)
2021-12-16 07:07:22 +03:00
Elena Sayapina
83fb3eca5b JBR-2890 [TESTUPDATE] Enable jcef tests on macOS aarch64 platform
(cherry picked from commit 1714d7b627)
2021-12-16 07:07:21 +03:00
Vitaly Provodin
8836b6869f JBR-667 add shenandoahgc feature
(cherry picked from commit e15dad04)
2021-12-16 07:07:20 +03:00
Artem Bochkarev
afc6fe795a JBR-2562: fixed invokation of parent method
(cherry picked from commit 93cbab2f2d)

JBR-2562: suppress exceptions from [NSWindow _changeJustMain]

temporary workaround to prevent crashes

(cherry picked from commit dd055b5970)
2021-12-16 07:07:19 +03:00
Mikhail Grishchenko
750afee977 JBR-2890 Disable jcef tests on 32-bit and aarch64 platforms
(cherry picked from commit d34d6528fe)
2021-12-16 07:07:17 +03:00
Alexey Ushakov
114770fc98 JBR-2879 Big Sur: Opening project in new window results in opening project in another tab
Disabled Tabbing mode for all NSWindows

(cherry picked from commit 8cb0377a31)
2021-12-16 07:07:16 +03:00
Nikita Gubarkov
78ab370e38 JBR-2910 Implemented extended glyph cache for macOS
JBR-3976 Fixed text spacing & emoji scaling on macOS

JBR-3638 Adjust subpixel glyph positions for correct rounding in CStrike#getGlyphImageBounds
2021-12-16 07:07:15 +03:00
Alexey Ushakov
d0dbea9fce JBR-2617 Text with opacity renders black
Implemented alpha blending in grayscale text rendering (UX-1320)
Corrected bright text thickness (smooth on), bright and dark text thickness (smooth off)
Added JVM properties for fine tuning

(cherry picked from commit c30306f779)
(cherry picked from commit c95adeb8f2)
(cherry picked from commit 269c9580fb)
(cherry picked from commit 55c7be5fe9)
(cherry picked from commit e28ff71e97)
2021-12-16 07:07:14 +03:00
Alexey Ushakov
16a11e96c4 JBR-2521 Ugly font in all 2020.2 EAPs on macOS
Provide gamma correction for both light and dark text

(cherry picked from commit 5953202a7e)
2021-12-16 07:07:13 +03:00
Alexey Ushakov
06fd404595 JBR-2591 Repainting is broken (was: Icons in tree list widgets became dark)
Save current blend mode before cached grayscale rendering

(cherry picked from commit 7beb75ccec)
(cherry picked from commit ed52fde57d)
2021-12-16 07:07:12 +03:00
Alexey Ushakov
f0da0d88a8 JBR-1986 Enabling fractional metrics causes visual artifacts in font rendering on macOS 10.14+
Disable subpixel positioning for macOS 10.13+ if legacy LCD rendering is disabled

(cherry picked from commit dbd24232e4)
2021-12-16 07:07:11 +03:00
Vitaly Provodin
462dad45df exclude bug7154030 on macosx-aarch64 due to 8268284 2021-12-16 07:07:10 +03:00
Vitaly Provodin
99b5363f4d exclude SharedMemoryPixmapsTest on macosx-all due to 8221451 2021-12-16 07:07:09 +03:00
Vyacheslav Moklev
2ab80f445f JBR-2442 fix memory leak of fileBuffer
fix was suggested by Nikita Gubarkov
2021-12-16 07:07:08 +03:00
Andrey Starovoyt
93ddc36faa JBR-2736 provide writeObjects implementation for copying files/folders from Project Explorer to the Finder
(cherry picked from commit 33db034d49)
(cherry picked from commit d3ec3d899d)
2021-12-16 07:07:07 +03:00
Sergey Malenkov
5b5c1d12aa EA-235126 - CME: HighlightableComponent.getPreferredSize
(cherry picked from commit 523d80cafd)
2021-12-16 07:07:06 +03:00
Kirill Kirichenko
2748b0dc2b JBR-2667 Post review: rename win.darkTheme.on to win.lightTheme.on and reversed the logic
(cherry picked from commit eeab5252e6)
2021-12-16 07:07:05 +03:00
Kirill Kirichenko
081d9fb51e JBR-2667 Add new AWT desktop property for light/dark theme detection on Windows 10
(cherry picked from commit 0e4ad056dd)
2021-12-16 07:07:04 +03:00
Alexey Ushakov
b2fe81c0f1 JBR-2593 Wide ligatures not rendered in Grayscale mode
Added missing flush of cached vertices

(cherry picked from commit ad409b4370)
2021-12-16 07:07:03 +03:00
Nikita Gubarkov
90afe47a39 JBR-2910 Implemented extended glyph cache for Linux 2021-12-16 07:07:02 +03:00
Nikita Gubarkov
0cf2bdbc9a JBR-2910 Implemented extended glyph cache for Windows 2021-12-16 07:07:01 +03:00
Nikita Gubarkov
54b1567a64 JBR-2614 Fixed LCD glyph width to include both left & right padding, so that rowBytes = width * 3 2021-12-16 07:06:59 +03:00
Alexey Ushakov
101d86e839 JBR-2463 Font rendering problem on macOS Mojave
Use adjusted advances for glyphs

(cherry picked from commit 1af5dd4aae)
2021-12-16 07:06:58 +03:00
Denis Konoplev
478277093f JBR-3544: Generate popup invoked instead of New in this directory 2021-12-16 07:06:57 +03:00
Vitaly Provodin
148d17b85a JBR-2545 Clean up the list of ignored Render tests
(cherry picked from commit f7b4c42e1d)
2021-12-16 07:06:56 +03:00
Jayathirth D V
282894f260 8241490: Add large text performance tests in RenderPerfTest
(cherry picked from commit 803ee2f2b5)
2021-12-16 07:06:55 +03:00
Alexey Ushakov
6669cfbfa5 8230657: Create fine grained render perf test for metal pipeline
Converted gradle JUnit test to plain java for ant and gnumake

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

ant run
or
java -jar dist/RenderPerfTest.jar
or
java -jar dist/RenderPerfTest.jar testWhiteTextBubblesGray

(cherry picked from commit 356121b18f)
(cherry picked from commit 8bd8d2d132)
2021-12-16 07:06:54 +03:00
Konstantin Bulenkov
942067f66c Update FiraCode to 5.2
(cherry picked from commit 71e2a8d8ad)
2021-12-16 07:06:53 +03:00
Alexey Ushakov
93665a6171 JBR-1929 Improve rendering of San Francisco font of macOS Catalina
Reverting gamma correction because of rendering artifacts in the light theme

This reverts commit 5016db51

(cherry picked from commit c1d644a004)
2021-12-16 07:06:52 +03:00
Alexey Ushakov
cab4f80eb3 JBR-1929 Improve rendering of San Francisco font of macOS Catalina
Added gamma correction to match grayscale rendering with subpixel one

(cherry picked from commit 5016db518a)
2021-12-16 07:06:51 +03:00
Alexey Ushakov
afc0e8ca5f JBR-2463 Font rendering problem on macOS Mojave
Use adjusted advances for glyphs

(cherry picked from commit 1af5dd4aae)
2021-12-16 07:06:50 +03:00
Anton Tarasov
0e769efff5 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-12-16 07:06:49 +03:00
Anton Tarasov
a08e6c16f7 JBR-2872 improve: JBR-2866 JCEF: Markdown editor steals focus from a different frame
(cherry picked from commit bad748e3d0)
2021-12-16 07:06:48 +03:00
Anton Tarasov
3e9a2f2093 JBR-2866 JCEF: Markdown editor steals focus from a different frame 2021-12-16 07:06:47 +03:00
Anton Tarasov
8d2812b48f JBR-2645 enable CefBrowser.close(true) in jcef reg tests
(cherry picked from commit 492c217125)
2021-12-16 07:06:46 +03:00
Anton Tarasov
c532e21e4d JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI
(cherry picked from commit 57bbddf071)
2021-12-16 07:06:44 +03:00
Anton Tarasov
4fd89e6c07 JBR-2557 use com.jetbrains.cef.JCefAppConfig in JCEF tests
(cherry picked from commit e30a309f92)
2021-12-16 07:06:43 +03:00
Anton Tarasov
7f809c7fae JBR-2489 Git branch operations (switch to another branch, rebase) sometimes crash WebStorm 202.5428.27
(cherry picked from commit 81d2156fb1)
2021-12-16 07:06:42 +03:00
Anton Tarasov
7e934997d5 JBR-2282 [jcef] update to JCEF/80.0.4+g74f7b0c+chromium-80.0.3987.122
(cherry picked from commit a5adc725df)
2021-12-16 07:06:41 +03:00
Anton Tarasov
ef00c76e10 JBR-2305 jcef: jb/java/jcef/JCEFStartupTest.java throws java.lang.ExceptionInInitializerError
(cherry picked from commit f0385f01ec)
2021-12-16 07:06:40 +03:00
Anton Tarasov
2ca5b4001b JBR-2306 jcef: jb/java/jcef/JCEFStartupTest.java unexpectedly exits with the exit code: 0
(cherry picked from commit ff7d7bd43c)
2021-12-16 07:06:39 +03:00
Anton Tarasov
16fa579e27 JBR-2299 [mac] jcef requests for "chromium safe storage" keychain access
(cherry picked from commit dd1334a352)
2021-12-16 07:06:38 +03:00
Anton Tarasov
90a9ba66f7 JBR-2222 Crash during closing IDE
(cherry picked from commit d0c367b31f)
2021-12-16 07:06:37 +03:00
Anton Tarasov
55f0544363 JBR-2287 [jcef] add CefBrowser wrapper to jtreg tests
(cherry picked from commit fa961d1769)
2021-12-16 07:06:36 +03:00
Anton Tarasov
592753b689 JBR-2169 AWTThreading: remove tracked invocation event from completion listener
(cherry picked from commit a855f3b835)
2021-12-16 07:06:35 +03:00
Anton Tarasov
0387403842 JBR-2159 Native crash in thread AWT-EventQueue-0 when trying to push commit
(cherry picked from commit bba297b4a4)
2021-12-16 07:06:34 +03:00
Anton Tarasov
33226b73f0 JBR-2148 JCEF: JBR bundle has invalid app structure
(cherry picked from commit f45f84d7ed)
2021-12-16 07:06:33 +03:00
Anton Tarasov
3442cb53d5 JBR-2146 improve InvokeOnToolkitHelper to cover more generic case 2021-12-16 07:06:32 +03:00
Anton Tarasov
cfd3336058 JBR-2139 Idea freeze on dynamic plugin unloading
(cherry picked from commit e57bae4f66)
2021-12-16 07:06:31 +03:00
Anton Tarasov
49ca83a0a2 JBR-2099 jb/java/jcef/JCEFStartupTest.java fails on Windows, Linux
(cherry picked from commit 3dfb0aa16a)
2021-12-16 07:06:30 +03:00
Anton Tarasov
febb300c15 JBR-2093 create reg test for JCEF startup
(cherry picked from commit e8c2761f5b)
2021-12-16 07:06:29 +03:00
Anton Tarasov
2a3fb2150d JBR-2082 Revealing taskbar does not work when "Automatically hide the taskbar"
(cherry picked from commit b31a41fb2f)
2021-12-16 07:06:28 +03:00
Mikhail Grishchenko
44fd156b4c JBR-2639, JBR-2412 [jcef] Tests that checks mouse events
JBR-2412 [windows] mouse listener does not work for jcef

(cherry picked from commit 66ad6472ae)
(cherry picked from commit 04246aac57)
(cherry picked from commit b7cde4fd05)
2021-12-16 07:06:27 +03:00
Mikhail Grishchenko
5a9d7cb430 JBR-2639 [win] jcef does not recognize vertical mouse wheel events
added regression test

(cherry picked from commit e8e4741bb0)
2021-12-16 07:06:25 +03:00
Mikhail Grishchenko
cca50c173b JBR-2412 [windows] mouse listener does not work for jcef
added regression test

(cherry picked from commit d1479872f2)
2021-12-16 07:06:24 +03:00
Elena Sayapina
f915217923 JBR-2630 Typing speed in IDE editor was dropped after switching to 11.0.8
Introduced sun.awt.osx.RobotSafeDelayMillis property to control macOS specific safe delay for Robot methods.
50 ms safe delay was initially hardcoded in 3862142d (JDK-8242174: [macos] The NestedModelessDialogTest test make the macOS unstable) which affected performance tests execution.

(cherry picked from commit 5f691bb788)
2021-12-16 07:06:23 +03:00
Mikhail Grishchenko
c675ad0f07 JBR-2430 [jcef] Added Regression test
Checks that JS Query is handled in 2nd opened browser

(cherry picked from commit 404ff84565)

Refactoring + changed EDT awaiting method

(cherry picked from commit dc24658b31)
2021-12-16 07:06:22 +03:00
Vitaly Provodin
6b62ef8cee exclude the new printer test 8262731 2021-12-16 07:06:21 +03:00
Alexey Ushakov
c22f9e2805 JBR-2419 Improve performance of CStrike.getNativeGlyphOutlineBounds
Do not pass the result via java object. Use more straight api.

(cherry picked from commit 9f91fe91f5)
(cherry picked from commit c0fd2daf5c)
2021-12-16 07:06:20 +03:00
Alexey Ushakov
78c87eda95 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-12-16 07:06:19 +03:00
Artem Bochkarev
9cc8699c44 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-12-16 07:06:18 +03:00
Kirill Kirichenko
7a849566ea JBR-1874 Cursor not changing from 'default' to 'text'. Additional fix after reopening.
(cherry picked from commit 5a29d4ade9)
2021-12-16 07:06:17 +03:00
Elena Sayapina
5527cc7db0 JBR-1388 [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java fails on macOS Mojave
(cherry picked from commit 50b24a147b)
2021-12-16 07:06:16 +03:00
Elena Sayapina
ed883d989c 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-12-16 07:06:15 +03:00
Denis Konoplev
2c059b8543 fixup! macOS national keyboard support
Remove unused import that broke compilation
2021-12-16 07:06:14 +03:00
Elena Sayapina
8824b819dd 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-12-16 07:06:13 +03:00
Elena Sayapina
cc228c1e8d 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-12-16 07:06:12 +03:00
Mikhail Grishchenko
23976434be JBR-2259 WebSite isn't loaded with .loadUrl method if browser isn't shown in UI
Added reproducer

(cherry picked from commit e875bf72c9)
2021-12-16 07:06:11 +03:00
Denis Konoplev
e9e2e7328b JBR-2490 Add option to work with Surface Pen
(cherry picked from commit 5acc7680a1)
2021-12-16 07:06:10 +03:00
Denis Konoplev
6557657a2b JBR-2669: set unicode for both keyCode and extendedKeyCode
(cherry picked from commit ba3f14c83a)
2021-12-16 07:06:09 +03:00
Denis Konoplev
27c53dd910 JBR-2554: Proper unicode values in KeyEvent.keyCode
(cherry picked from commit 703d77a927)
2021-12-16 07:06:08 +03:00
Denis Konoplev
704a018dbd JBR-215: Remove SystemInfo
(cherry picked from commit 9adf77a512)
2021-12-16 07:06:07 +03:00
Denis Konoplev
0d58f8c31e JBR-215: Separate LatinNonAlphaNumKeycodes option
(cherry picked from commit caf366f6f3)
2021-12-16 07:06:06 +03:00
Denis Konoplev
f97295a09f JBR-215: Windows non-alphanumeric shortcuts
(cherry picked from commit 4f60efebe2)
2021-12-16 07:06:05 +03:00
Denis Konoplev
58e8d6ab35 JBR-2280: Fix regression. Mode compatible with old option.
(cherry picked from commit a3e3c23cb1)
2021-12-16 07:06:04 +03:00
Denis Fokin
24a8fccb03 macOS national keyboard support 2021-12-16 07:06:02 +03:00
Sergey Malenkov
d634a73a6f JBR-1929 FractionalMetricsSupport
(cherry picked from commit bbdc159762)
2021-12-16 07:06:01 +03:00
Mikhail Grishchenko
32d6bcbe0c 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-12-16 07:06:00 +03:00
Mikhail Grishchenko
58cc00100a 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-12-16 07:05:59 +03:00
Alexey Ushakov
76fd488255 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-12-16 07:05:58 +03:00
Mikhail Grishchenko
0b8e96ba22 JBR-1414 [Test] downscale frames to run on low-dpi screens
(cherry picked from commit b46e74fe6f)
2021-12-16 07:05:57 +03:00
Elena Sayapina
d0305d7034 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-12-16 07:05:56 +03:00
Alexey Ushakov
51aae97e50 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-12-16 07:05:55 +03:00
Alexey Ushakov
9acb7b0ba6 JBR-2137 JetBrainsMono fonts update to v1.0.3
(cherry picked from commit a6e441828a)
2021-12-16 07:05:54 +03:00
Mikhail Grishchenko
5069cef490 JBR-1414: Added regression test for dnd with HiDPI scaling
(cherry picked from commit 1f4ab12fbb)
2021-12-16 07:05:53 +03:00
Elena Sayapina
63d3b6fb7d 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-12-16 07:05:52 +03:00
Konstantin Bulenkov
efe8989063 Update JetBrains Mono to 1.0.2
(cherry picked from commit 6f4a13e46f)
2021-12-16 07:05:51 +03:00
Ivan Migalev
17e0c8f44a Extract the DWM colorization parameters from registry (JBR-2070)
(cherry picked from commit 0330cab60b)
2021-12-16 07:05:50 +03:00
Ivan Migalev
a0ac939065 Refresh desktop properties on WM_DWMCOLORIZATIONCOLORCHANGED (JBR-2070)
(cherry picked from commit 06086f4a7e)
2021-12-16 07:05:48 +03:00
Ivan Migalev
183d19b26b Fix a possible resource leak in ColorizationColorAffectsBorders
(cherry picked from commit 0c911b6ffe)
2021-12-16 07:05:47 +03:00
Elena Sayapina
20cc6f0bc6 JBR-2086 JetBrainsMono fonts update to v1.0.1
(cherry picked from commit a4b373e631)
2021-12-16 07:05:46 +03:00
Konstantin Bulenkov
4af1d89db7 JetBrains Mono 1.0
(cherry picked from commit d514f7a982)
2021-12-16 07:05:45 +03:00
Alexey Ushakov
00a3a7baf3 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-12-16 07:05:44 +03:00
Denis Konoplev
46787ccd0a JBR-3444: Return NullSurfaceData when gc == null
(cherry picked from commit 01ad15e61c)
2021-12-16 07:05:43 +03:00
Denis Konoplev
28bde363ec JBR-1995: Last character issue with korean
Fix for JTextComponent

(cherry picked from commit a7c8b0b535)
2021-12-16 07:05:42 +03:00
Denis Konoplev
afaf8e2f13 JBR-2891: Post PhaseEvents in the begin and end of Magnify and Rotate
(cherry picked from commit c811c295c2)
2021-12-16 07:05:41 +03:00
Denis Konoplev
b749350eb2 JBR-2444: Turn on IM workaround by default
(cherry picked from commit 15c4ce1d3e)
2021-12-16 07:05:40 +03:00
Denis Konoplev
d233a14998 Fix build: add import & fix jwhen 2021-12-16 07:05:39 +03:00
Denis Konoplev
aec7b6a274 JBR-2795: Add explicit conversion
(cherry picked from commit bf3e1c0c31)
2021-12-16 07:05:38 +03:00
Denis Konoplev
2567bc3cf6 IDEA-237231: Correct signarute mask
(cherry picked from commit 6974131eec)
2021-12-16 07:05:37 +03:00
Denis Konoplev
4deec768cc IDEA-237231: Possible fix for pen interraction
(cherry picked from commit 33a8c95d39)
2021-12-16 07:05:36 +03:00
Denis Konoplev
8bdbdf6959 JBR-2347: Free memory on other exceptions, rethrow ThreadDead & log it
(cherry picked from commit 16ca839ed3)
2021-12-16 07:05:35 +03:00
Denis Konoplev
4a41eb7569 JBR-2347: Don't free memory when thread is dead
(cherry picked from commit afb3303db5)
2021-12-16 07:05:33 +03:00
Denis Konoplev
46199484be JBR-2041: Project view tap fix, recovery? constants & logging
(cherry picked from commit 1e904db3b0)
2021-12-16 07:05:32 +03:00
Denis Konoplev
bd64acd4d9 IDEA-229135: Fling animation stop on tap
(cherry picked from commit 7ce0f79561)
2021-12-16 07:05:31 +03:00
Denis Konoplev
54d22758c8 Windows touch screen support
(cherry picked from commit cab3f28907)
2021-12-16 07:05:30 +03:00
Denis Konoplev
a2f605798c Turn off multitouch
(cherry picked from commit a2576ffa9a)
2021-12-16 07:05:29 +03:00
Denis Konoplev
c365904834 Check XInput extension && touch inertia
(cherry picked from commit cca7fb97f4)
2021-12-16 07:05:28 +03:00
Denis Konoplev
1478151e3a Touch scroll handling
(cherry picked from commit 6dcec3dc31)
2021-12-16 07:05:27 +03:00
Denis Konoplev
1ffd4ad5a6 XI2 Constants
(cherry picked from commit 588cd6ee73)
2021-12-16 07:05:26 +03:00
Denis Konoplev
e074fb8e37 XLibWrapper XI2 functions
(cherry picked from commit d6bd1bfa2b)
2021-12-16 07:05:25 +03:00
Denis Konoplev
8338b3c92d X11 native get put double
(cherry picked from commit f101bc1108)
2021-12-16 07:05:24 +03:00
Denis Konoplev
f2c7b8ec1e Native data types
(cherry picked from commit 9504574dbb)
2021-12-16 07:05:23 +03:00
Denis Konoplev
5174e7697a XI2 headers in xlib wrapper generator
(cherry picked from commit ef108067a1)
2021-12-16 07:05:22 +03:00
Denis Konoplev
15f6cb7b6f Revert "Turn off multitouch"
This reverts commit 90ea3bf57e4c687e9d9bf0a37f2f64c82a81f4eb.
2021-12-16 07:05:21 +03:00
Denis Konoplev
ffbe0b940d Turn off multitouch
(cherry picked from commit a2576ffa9a)
2021-12-16 07:05:19 +03:00
Alexey Ushakov
646fd8035a 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-12-16 07:05:18 +03:00
Alexey Ushakov
4dc3d86cc5 JBR-1962 Allow to change font config
Replaced several privileged blocks with just one

(cherry picked from commit faa8d3d258)
2021-12-16 07:05:17 +03:00
Vitaly Provodin
a119411022 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-12-16 07:05:16 +03:00
Dennis Ushakov
b60f3838e8 JBR-1863, JBR-1868 correct advances on Catalina 2021-12-16 07:05:15 +03:00
Dennis Ushakov
c60fd9c9cc JBR-1850: on macOS fonts should be sorted by weight to ensure proper population of the families 2021-12-16 07:05:14 +03:00
Dennis Ushakov
e164873099 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-12-16 07:05:13 +03:00
Dennis Ushakov
570ccbec37 JBR-1756 use CoreText for all font rendering on Catalina 2021-12-16 07:05:12 +03:00
Nikita Gubarkov
e4ea48276d JBR-410 Added emoji support for Linux 2021-12-16 07:05:11 +03:00
Alexey Ushakov
d757d42689 JBR-1997 JetBrainsMono fonts update to v0.22
(cherry picked from commit 41f4fddd34)
(cherry picked from commit f5302a02f4)
(cherry picked from commit 5d7fd2e1e5)
2021-12-16 07:05:10 +03:00
Anton Tarasov
8c3ddd4796 JRE-729 [windows] unreasonable IME activity consumes CPU 2021-12-16 07:05:09 +03:00
Dmitry Batrak
e234dd4f23 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-12-16 07:05:08 +03:00
Dmitry Batrak
841c396b19 JBR-3038 Unexpected windows z-order change on workspace switch
(cherry picked from commit ddda860f42)
2021-12-16 07:05:07 +03:00
Dmitry Batrak
a110811d7c JBR-3035 The Confirm Exit pop-up window remains hidden behind a window of another application
(cherry picked from commit 470c3bd1b5)
2021-12-16 07:05:06 +03:00
Dmitry Batrak
8f488b2a09 JBR-2934 Serious usability issue with GoLand 2020.3 caused by JBR
(cherry picked from commit 95be4351d4)
2021-12-16 07:05:05 +03:00
Dmitry Batrak
ed2ba3f0ec JBR-2977 Opening a recent project in a new window doesn't bring this window to the front
(cherry picked from commit 2d9fb9e7b8)
2021-12-16 07:05:03 +03:00
Dmitry Batrak
392e31da35 JBR-2698 setAutoRequestFocus(false) breaks focus logic under i3 window manager on Linux
(cherry picked from commit ebcdeb7d80)
2021-12-16 07:05:02 +03:00
Dmitry Batrak
882cbf919a JBR-2696 Log focus API invocations with stack traces
(cherry picked from commits 0f038754e5, a507cab6d3)
2021-12-16 07:05:01 +03:00
Dmitry Batrak
0e5df40eb7 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-12-16 07:05:00 +03:00
Alexey Ushakov
930a39d265 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-12-16 07:04:59 +03:00
Artem Bochkarev
8f00b4883f JBR-1851: check NSArray length
and make more exception-safe
and minor optimization for logging (cache jobjects)

(cherry picked from commit 5839539379)
2021-12-16 07:04:58 +03:00
Artem Bochkarev
e3a1fbfa39 JBR-1841: allow deferred disabling of InputMethods-support
(cherry picked from commit 969255904b)
2021-12-16 07:04:57 +03:00
Artem Bochkarev
a273b2da27 JBR-1668: add hardcoded default values for preferences node NSServicesStatus
(cherry picked from commit 8445f53d85)
2021-12-16 07:04:56 +03:00
Artem Bochkarev
b5306bf14d JBR-1515: obtain shortcut from OS to check inside AWTView.performKeyEquivalent
(cherry picked from commit 30d479fbd4)
2021-12-16 07:04:55 +03:00
Artem Bochkarev
7ec528083b JBR-1668: add hardcoded descriptions of system actions
and minor fixes

fix memory management

(cherry picked from commit 15f7368309)
2021-12-16 07:04:54 +03:00
Elena Sayapina
45dfbcbe9c 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-12-16 07:04:53 +03:00
Alexey Ushakov
0a1b7394d2 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-12-16 07:04:51 +03:00
Dmitry Batrak
17d6b8ac3f 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-12-16 07:04:50 +03:00
Dmitry Batrak
7902c4098c 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-12-16 07:04:49 +03:00
Dmitry Batrak
20b86e0802 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-12-16 07:04:48 +03:00
Artem Bochkarev
60fb61bbd6 JBR-1771: fixed compilation errors (macosx-x86_64-normal-server-fastdebug)
(cherry picked from commit 1acada7cac)
2021-12-16 07:04:47 +03:00
Artem Bochkarev
d24dd9b466 JBR-1668: minor fixes
fixed review comments

(cherry picked from commit 9dbcf194c9)
2021-12-16 07:04:46 +03:00
Vitaly Provodin
f4bf1aca13 JBR-1618: fixed misprint, added saving screenshots in case of failure
(cherry picked from commit e4a3889cf0)
2021-12-16 07:04:45 +03:00
Alexey Ushakov
e575dd660b JBR-1624 Fonts rendering is broken in the 2019.2 EAP (Fira Code)
Corrected lookup for bold fonts

(cherry picked from commit 114b8af38f)
2021-12-16 07:04:44 +03:00
Alexey Ushakov
ba7f3d28d7 JBR-1399 Improve font discovery and loading by introducing font cache
Added unit test

(cherry picked from commit b4f5bf8bd3)
2021-12-16 07:04:43 +03:00
Elena Sayapina
b403c0eb42 IDEA-165950 [TEST] Added new regression test (National keyboard layouts support)
(cherry picked from commit 0900a705bc)
2021-12-16 07:04:42 +03:00
Artem Bochkarev
d8864f5664 JBR-1668: read system keyboard shortcuts
initial support for OS X

(cherry picked from commit 6bbe7102e2)
2021-12-16 07:04:41 +03:00
Artem Bochkarev
11131d1d2c JBR-1573: restore current input context after cleanup
(cherry picked from commit b7acd7f6f6)
2021-12-16 07:04:40 +03:00
Alexey Ushakov
755e1166d4 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-12-16 07:04:39 +03:00
Alexey Ushakov
3310d5bd9c JBR-1874 Cursor not changing from 'default' to 'text'
Prevent OS from changing cursor

(cherry picked from commit 94a4eb7002)
2021-12-16 07:04:37 +03:00
Alexey Ushakov
9b11b2d011 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-12-16 07:04:36 +03:00
Alexey Ushakov
3aac611fea JBR-1699 Use platform font rendering for bundled fonts on MacOS
Use different family for specific font faces. Refactoring

JBR-3071 Remove naming workaround for Fira Code

(cherry picked from commits c423003bd4, aee4b48d20)
2021-12-16 07:04:35 +03:00
Alexey Ushakov
25be00f2a1 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-12-16 07:04:34 +03:00
Alexey Ushakov
f6d42a57b7 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-12-16 07:04:33 +03:00
Alexey Ushakov
24142e95ac 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-12-16 07:04:32 +03:00
Alexey Ushakov
0abb930754 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-12-16 07:04:31 +03:00
Alexey Ushakov
4b97d09302 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-12-16 07:04:30 +03:00
Alexey Ushakov
0ff69e545c JBR-1645 javax/swing/JTextArea/TestTabSize.java: Tab width calculation wrong
Corrected idea font filter

(cherry picked from commit 62f9d1f46a)
2021-12-16 07:04:29 +03:00
Artem Bochkarev
6c2a8b14bc 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-12-16 07:04:28 +03:00
Alexey Ushakov
8cc720c0d7 JBR-1399 Improve font discovery and loading by introducing font cache
Bundle IDEA fonts to improve startup performance

(cherry picked from commit 350a3fdef3)
2021-12-16 07:04:27 +03:00
Artem Bochkarev
726ea1ef85 JBR-1541: activate menu in completion handler of modal dialog
(cherry picked from commit e57384c1d6)
2021-12-16 07:04:26 +03:00
Alexey Ushakov
9f277fe3b6 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-12-16 07:04:24 +03:00
Alexey Ushakov
4a04f43121 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-12-16 07:04:23 +03:00
Alexey Ushakov
ed3e8433dd JBR-1394 JBR11 does not support LCD text on Mac
Enable LCD rendering for transparent destinations

(cherry picked from commit 207c6b92ff)
2021-12-16 07:04:22 +03:00
Elena Sayapina
87505cdc91 JBR-1380: [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java works incorrectly
(cherry picked from commit 95df9908f4)
2021-12-16 07:04:21 +03:00
Elena Sayapina
124012b088 JBR-1372: [TESTBUG] JDialog1054.java, MoveFocusShortcutTest.java regression tests need update
(cherry picked from commit a5948894bf)
2021-12-16 07:04:20 +03:00
Maxim Kartashev
99b9254c8c 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-12-16 07:04:19 +03:00
Vyacheslav Moklev
1a3272c1e6 Fix const pointer after JDK-8225032 fix 2021-12-16 07:04:18 +03:00
Vyacheslav Moklev
5683a7c810 Fix compilation on windows platform: awt_ole.h must be included before awt.h 2021-12-16 07:04:17 +03:00
Vyacheslav Moklev
f60e163c32 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-12-16 07:04:16 +03:00
Vyacheslav Moklev
62bb04d832 JBR-1271 Wrong parent of native windows dialogs
Set a proper parent to a dialog window
2021-12-16 07:04:15 +03:00
Vyacheslav Moklev
c94fc65a6b JBR-1273 Common Item Dialog does not open when wrong path to directory is passed
Handle set directory / set file properly
2021-12-16 07:04:14 +03:00
Vyacheslav Moklev
c0109c7cef JBR-1274 Common Item Dialog sometimes crash the process
Prevent from freeing memory with CoTaskMemFree twice
2021-12-16 07:04:13 +03:00
Vyacheslav Moklev
1d2cb3a253 JBR-1257 CommonItemDialog modal window has no owner
Fix modality for Common Item Dialog

squash! JBR-1257 CommonItemDialog modal window has no owner

JBR-2478 java/awt/Modal/FileDialog/FileDialogNonModal7Test.java: DummyButton on Dialog did not gain focus when clicked

revert part of JBR-1271, that's related to 'old' file dialogs
2021-12-16 07:04:12 +03:00
Vyacheslav Moklev
237b476373 JBR-1258 CommonItemDialog ignores directory to open
Fix parsing of directory path / file path
2021-12-16 07:04:11 +03:00
Vyacheslav Moklev
287fec3894 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-12-16 07:04:09 +03:00
Alexey Ushakov
9648d97dfb 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-12-16 07:04:08 +03:00
Alexey Ushakov
c1b4356914 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-12-16 07:04:07 +03:00
Elena Sayapina
731587b65e 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-12-16 07:04:06 +03:00
Elena Sayapina
a8a2b104c6 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-12-16 07:04:05 +03:00
Elena Sayapina
57893ddf78 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-12-16 07:04:04 +03:00
Elena Sayapina
414fea4996 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-12-16 07:04:03 +03:00
Vitaly Provodin
acd6ae722b 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-12-16 07:04:02 +03:00
Vitaly Provodin
88d19ce6e3 JRE-1117 J2DBench: introduced result reader for TC's charts
(cherry picked from commit 422fa59643)
2021-12-16 07:04:01 +03:00
Alexey Ushakov
cf988944d6 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-12-16 07:04:00 +03:00
Alexey Ushakov
6b607907ea 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-12-16 07:03:59 +03:00
Alexey Ushakov
a7c5a81975 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-12-16 07:03:58 +03:00
Alexey Ushakov
e2d3a762d2 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-12-16 07:03:57 +03:00
Konstantin Bulenkov
65823814a1 update icons
(cherry picked from commit dfe387ff5037deda29d8d522cba6cc5370796ff4)
(cherry picked from commit de1e4a9d71)
2021-12-16 07:03:56 +03:00
Konstantin Bulenkov
776a28f36a add workspace.xml to gitignore
(cherry picked from commit bd5b9403fdca779ecc76f0b3af2918fe772f7ed1)

(cherry picked from commit 37e7661f85)
2021-12-16 07:03:55 +03:00
Vitaly Provodin
3c563a59e5 Update README.md 2021-12-16 07:03:53 +03:00
Vitaly Provodin
aedd4646cd 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-12-16 07:03:52 +03:00
Vitaly Provodin
5d4b73608e 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-12-16 07:03:51 +03:00
Vitaly Provodin
a9ebe6d032 JRE-9: added regression test
(cherry picked from commit 4ffb665)
(cherry picked from commit 00a29ad129)
2021-12-16 07:03:50 +03:00
Sergey Malenkov
d0dfc4ef12 JRE-100 Scroll with inertia (Mac os) should only work in the initial component
(cherry picked from commit e79502c708)
2021-12-16 07:03:49 +03:00
Sergey Malenkov
5cea51055f IDEA-161965 ignore dragged event that does not change mouse location Sierra is more sensit
(cherry picked from commit ef490fa465)
2021-12-16 07:03:48 +03:00
Stanislav Dombrovsky
215c6f2972 Fix rendering of HTML list dots + better vertical align for them.
(cherry picked from commit fa4a404533ba1ef638fe523adc74391aee8a3ebf)

(cherry picked from commit 9f079c66e9)
2021-12-16 07:03:47 +03:00
Vitaly Provodin
394915d2e5 configure BOOT_JDK to use JDK 16 2021-12-16 07:03:45 +03:00
Dmitry Batrak
dbf5601ade JBR-3353 Sibling popup window is shown below dialog on macOS
(cherry picked from commit 4c6f3e4510)
2021-12-16 07:03:44 +03:00
Dmitry Batrak
11d3bebd9e JBR-3339 Window requests focus on horizontal scroll (on Linux)
(cherry picked from commit 8d74e8e30b)
2021-12-16 07:03:43 +03:00
Anton Tarasov
a1210e6366 JRE-166 [macOS] deadlock with JFXPanel
(cherry picked from commit a9dbb6990fac0c659297487a261ba9170e5fb3ad)

(cherry picked from commit 8a44e1bb37)
2021-12-16 07:03:42 +03:00
Alexey Ushakov
e58c46d05a 8265445: Introduce the new client property for mac: apple.awt.windowAppearance
Implemented apple.awt.windowAppearance client property
2021-12-16 07:03:41 +03:00
Anton Tarasov
e2d6261b50 JBR-3306 jbr-dev warnings: incompatible pointer to integer conversion returning 'void *' from a function with result type 'jlong' 2021-12-16 07:03:40 +03:00
Dmitry Batrak
e5c2ffa04a JBR-2498 Fix unexpected window raising under Mutter WM
re-implement the fix, so that ChildAlwaysOnTopTest isn't failing
2021-12-16 07:03:39 +03:00
Maxim Kartashev
77c2006288 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-12-16 07:03:38 +03:00
Alexey Ushakov
061ae08096 JBR-3327 [jbr-dev] Adjust mac window appearance according to AppleInterfaceStyle property
Set window appearance according to AppleInterfaceStyle default
2021-12-16 07:03:37 +03:00
Alexey Ushakov
a3af171586 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-12-16 07:03:36 +03:00
Alexey Ushakov
5227b197c1 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-12-16 07:03:35 +03:00
Dmitry Batrak
76eb62b675 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-12-16 07:03:34 +03:00
Alexey Ushakov
0c8be52d97 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-12-16 07:03:33 +03:00
Alexey Ushakov
63e8fa4ee2 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-12-16 07:03:31 +03:00
Alexey Ushakov
2b2b999f87 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-12-16 07:03:30 +03:00
Alexey Ushakov
8769933051 JBR-3304 jbr-dev warnings: 'getPhysFontName' defined but not used [-Werror=unused-function]
Removed unused code
2021-12-16 07:03:29 +03:00
Vitaly Provodin
02d3b947c1 exclude javax/swing/JTabbedPane/4624207/bug4624207.java failing on windows due to 8197552 2021-12-16 07:03:28 +03:00
Alexey Ushakov
ea17159da7 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-12-16 07:03:27 +03:00
Alexey Ushakov
45c893cab4 JRE-353 Fedora 25 + XMonad rendering issues
Added support for Xmonad WM

(cherry picked from commit c690c3c7fdf1390e6b1a8d388ff752a09391ae3c)
(cherry picked from commit 6851dc3441)
2021-12-16 07:03:26 +03:00
Denis Konoplev
656e6e15a9 8264143: Change uint8_t to unsigned char 2021-12-16 07:03:25 +03:00
Dmitry Batrak
9951369679 JBR-3255 Applying 'incline' transform might change character's advance
(cherry picked from commit b37f7cfdb1)
2021-12-16 07:03:24 +03:00
Dmitry Batrak
bd03033ac4 JBR-3215 'deriveFont(float)' can return a different font (not just change the size)
(cherry picked from commit 8eafcaab24)
2021-12-16 07:03:23 +03:00
Dmitry Batrak
b5d66d5afc JBR-3157 Maximized window with custom decorations isn't focused on showing
(cherry picked from commit 62b04983f2)
2021-12-16 07:03:22 +03:00
Dmitry Batrak
41dce74c3c make AwtListGarbageCollectionTest pass reliably
(cherry picked from commit 304eb7f919)
2021-12-16 07:03:21 +03:00
Dmitry Batrak
1c8832eda2 JBR-1752 Floating windows overlap modal dialogs
(cherry picked from commit 0161050077)
2021-12-16 07:03:20 +03:00
Dmitry Batrak
71fb5ec98b JBR-3054 Focus is not returned to frame after closing of second-level popup on Windows
(cherry picked from commit 0c2b6e1c04)
2021-12-16 07:03:19 +03:00
Dmitry Batrak
ae5666a595 JBR-2702 Tooltips display through other applications on hover
(cherry picked from commits 11732c2469, 0ed7deabaa)
2021-12-16 07:03:18 +03:00
Dmitry Batrak
18620b2c82 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-12-16 07:03:17 +03:00
Dmitry Batrak
1a691039a8 JBR-2847 Always dispatch KEY_TYPED event to the same component as KEY_PRESSED event
also fixes JBR-2834, IDEA-254466, IDEA-254466
squashed with fixes for JBR-3291, JBR-3307, JBR-3598

(cherry picked from commits e94f6057a4, ba6b9c085e, 2ccf6b65a7, 3b0708af7d, 3674766d65)
2021-12-16 07:03:16 +03:00
Dmitry Batrak
957ebab247 JBR-2712 Typeahead mechanism doesn't work on Windows
(cherry picked from commits 1a9838082e, f5b6222835, acd7e3b2da, cd6dd5c3cf8556f97f3113cb7d615a92393b57bf(partially), e8bbd8ffdd90f57cd12d7d7e89188be97ee4be0b(partially), 37901295e1, cafb374afc)
2021-12-16 07:03:15 +03:00
Denis Konoplev
1c47c70f29 8264143: Lanai: RenderPerfTest.BgrSwBlitImage has artefacts on apple M1
Add stdint include to fix x64 build
2021-12-16 07:03:13 +03:00
Dmitry Batrak
57accc6015 JBR-2498 Fix unexpected window raising under Mutter WM
(cherry picked from commit 73b45fb899)
2021-12-16 07:03:12 +03:00
Dmitry Batrak
244ae46506 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-12-16 07:03:11 +03:00
Dmitry Batrak
5979ebd27c 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

also includes JBR-4006 [JCK] javax.swing.text.html.CSS$Attribute.OVERFLOW_WRAP field breaks public API
(cherry picked from commit f20a3d8679)
and JBR-4007 [JCK] javax.swing.text.GlyphView.calcBreakSpots method breaks public API
(cherry picked from commit 1002eff4f3)
2021-12-16 07:03:10 +03:00
Dmitry Batrak
7b7608211d JBR-2050 Issue with keycap emojis
port from JBR 11 to JBR 15 (cherry picked from commit ae91e1d7f1)

cherry picked from commit d3018a1837
2021-12-16 07:03:09 +03:00
Dmitry Batrak
36c87c0bbe 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-12-16 07:03:08 +03:00
Dmitry Batrak
a944d5c13e 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-12-16 07:03:07 +03:00
Dmitry Batrak
dafa79274e 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-12-16 07:03:06 +03:00
Dmitry Batrak
e9ed291d44 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-12-16 07:03:05 +03:00
Alexey Ushakov
7b49c42604 JRE-18 CCE in XRMaskFill.MaskFill
Throwing InvalidPipeException for incompatible surfaces

(cherry picked from commit 55dab103c24bf86cf025b9ce02b67e72508d41ba)
(cherry picked from commit 0a4fdad0f2)
2021-12-16 07:03:04 +03:00
Dmitry Batrak
090e8f4daf 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-12-16 07:03:03 +03:00
Dmitry Batrak
cbbccd6ffe 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-12-16 07:03:02 +03:00
Dmitry Batrak
7e9541c575 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-12-16 07:03:01 +03:00
Dmitry Batrak
74e0b73111 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-12-16 07:03:00 +03:00
Dmitry Batrak
e66444d61d 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-12-16 07:02:58 +03:00
Dmitry Batrak
e91eca830e 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-12-16 07:02:57 +03:00
Dmitry Batrak
79d24d8dd7 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-12-16 07:02:56 +03:00
Alexey Ushakov
814fd5a823 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-12-16 07:02:55 +03:00
Alexey Ushakov
fcaaaf2b4e 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-12-16 07:02:54 +03:00
Dmitry Batrak
c03c87f193 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-12-16 07:02:53 +03:00
Dmitry Batrak
2019103e48 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-12-16 07:02:52 +03:00
Dmitry Batrak
9314b1f5d2 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-12-16 07:02:51 +03:00
Vitaly Provodin
80f1114934 JRE-186 added regression test (Modal dialogs (Messages) shouldn't popup IDEA when another application is active)
(cherry picked from commit 236bd38d1b)
2021-12-16 07:02:50 +03:00
Vitaly Provodin
057e901125 JRE-269 added regression (JLabel doesn't scale <code>text</code> HTML fragments.)
(cherry picked from commit 1f4ad38d23)
2021-12-16 07:02:49 +03:00
Alexey Ushakov
1f3231943b JRE-307 Wrong dpi reported on Wayland
(cherry picked from commit 15693661cc)
2021-12-16 07:02:48 +03:00
Vitaly Provodin
dc03c5f8b7 JRE-392 added regression (Tip of the day is not hidden while another modal window is shown)
(cherry picked from commit c7b0ac686f)
2021-12-16 07:02:47 +03:00
Vitaly Provodin
8dcbaab9bf JRE-394 added regression test (System getenv doesn't return env var set in JNI code)
(cherry picked from commit 3a7b3c67b0)
2021-12-16 07:02:46 +03:00
Vitaly Provodin
290f1b2baf JRE-401 added regression test (AppCode freezes during autocomplete and other operations)
(cherry picked from commit cb4453b1d1)
2021-12-16 07:02:45 +03:00
Vitaly Provodin
2742a03800 JRE-422 added new regression test (AWTView deliverJavaMouseEvent leaks jEvent)
(cherry picked from commit 37dc13c603)
2021-12-16 07:02:44 +03:00
Vitaly Provodin
42d95eb63e JRE-430 added new regression test (Font fallback sometimes doesn't work in Swing text components)
(cherry picked from commit d04debc847)
2021-12-16 07:02:43 +03:00
Vitaly Provodin
ccdefa5cde JRE-457 added new regression test (OGLTR_DisableGlyphModeState is slow)
(cherry picked from commit 3a43f4557f)
2021-12-16 07:02:42 +03:00
Vitaly Provodin
91c685708a JRE-458 added new regression test (Insufficient and inconsistent permissions on some files in Linux build)
(cherry picked from commit 82adbe9c25)
2021-12-16 07:02:41 +03:00
Vitaly Provodin
64829047d4 JRE-467 added new regression test (Wrong rendering of variation sequences)
(cherry picked from commit 0026095202)
2021-12-16 07:02:40 +03:00
Vitaly Provodin
30072c96bb JRE-468 added new regression test (Idea freezes on project loading)
(cherry picked from commit 1ce8c3ce82)
2021-12-16 07:02:39 +03:00
Vitaly Provodin
c7e8def5bd JRE-501 added new regression test (Live resize is jerky for heavy java applications on Mac)
(cherry picked from commit c4a1277c1b)
2021-12-16 07:02:38 +03:00
Vitaly Provodin
622438b39e JRE-638 added new regression test (enable unlimited cryptographic policy by default)
(cherry picked from commit 4a14c6f15a)
2021-12-16 07:02:37 +03:00
Vitaly Provodin
5baae32df2 JRE-705 added new regression test (Z-order of child windows is broken on Mac OS)
(cherry picked from commit 82cd480619)
2021-12-16 07:02:35 +03:00
Vitaly Provodin
9b214e8bf0 JRE-624 CThreading isAppKit() fails to detect main app thread if it was renamed
(cherry picked from commit c8f248a936)
2021-12-16 07:02:34 +03:00
Alexey Ushakov
28da597e94 IDEA-166173 IntelliJ freezes when returning from sleep
Fixed deadlock by removing unnecessary getScreenResolution call

(cherry picked from commit cec93cf1fd)
2021-12-16 07:02:33 +03:00
Alexey Ushakov
788450f724 Added missing fontconfig defines
(cherry picked from commit 2ac273a456)
2021-12-16 07:02:32 +03:00
Alexey Ushakov
39052c5721 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-12-16 07:02:31 +03:00
Alexey Ushakov
36f4d16525 JRE-43 Font.getFamily() does not work in headless mode
Removed unused code

(cherry picked from commit 5b523f049e)
2021-12-16 07:02:30 +03:00
Alexey Ushakov
f53a6ababd JRE-43 Font.getFamily() does not work in headless mode
Bundled Droid fonts to fallback in headless mode

(cherry picked from commit 5b523f049e)
2021-12-16 07:02:29 +03:00
Alexey Ushakov
51758fbb3d 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-12-16 07:02:28 +03:00
Alexey Ushakov
19862d22b8 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-12-16 07:02:27 +03:00
Alexey Ushakov
f8bce66a98 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-12-16 07:02:26 +03:00
Alexey Ushakov
977593a8ae 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-12-16 07:02:25 +03:00
Alexey Ushakov
af7ff48e46 JRE-29 fontconfig lib crashes CLion on OSX
Disabled fontconfig usage on OSX

(cherry picked from commit 431e14429c)
2021-12-16 07:02:24 +03:00
Vitaly Provodin
34768a931e exclude tests spontaneously creating windows during test execution 2021-12-16 07:02:23 +03:00
Alexey Ushakov
e642756a4c 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-12-16 07:02:22 +03:00
Alexey Ushakov
d78e3a3407 Added logging for freetypeScaler via env variable OPENJDK_LOG_FFS=yes
and for screen resolution in freetypeScaler

(cherry picked from commit 091d74a791)
2021-12-16 07:02:21 +03:00
Alexey Ushakov
4a1954e8b1 JRE-34 IDE Crashes During Startup
Added validation of dpi settings coming from xserver

(cherry picked from commit b1c49c3b27)
2021-12-16 07:02:20 +03:00
Anton Tarasov
19c436c986 Add build.gradle 2021-12-16 07:02:19 +03:00
Anton Tarasov
dc871060c9 JBR-2031 [mac] jcef deadlocks with a11y on start
(cherry picked from commit 4f44b37f08)
2021-12-16 07:02:18 +03:00
Alexey Ushakov
fa9d5a598f 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-12-16 07:02:17 +03:00
Anton Tarasov
f2af81597a JBR-2019 provide getWindowHandle method for jcef
(cherry picked from commit 7ae706b629)
2021-12-16 07:02:16 +03:00
Anton Tarasov
1234870ab5 Comment assertion (originally JRE-965)
The assert line crashes debug hotspot.

(cherry picked from commit a00074a86c)
2021-12-16 07:02:15 +03:00
Anton Tarasov
fcbaceef90 JBR-1976 [jcef] need mouse-transparent window on Windows
(cherry picked from commit b60fac96b4)
2021-12-16 07:02:13 +03:00
Anton Tarasov
b2de155964 JBR-1824 export NSWindow::setIgnoresMouseEvents to java internal API
(cherry picked from commit 4399dc382c)
2021-12-16 07:02:12 +03:00
Anton Tarasov
b2f622d427 JBR-1802 com/sun/java/accessibility/util/8051626/Bug8051626.java: access denied ("java.lang.RuntimePermission" "getClassLoader")
(cherry picked from commit eae772aca9)
2021-12-16 07:02:11 +03:00
Anton Tarasov
a216bfc84c JBR-1795 Project opened from Welcome screen goes to backgound after loading
(cherry picked from commit 322526458a)
2021-12-16 07:02:10 +03:00
Anton Tarasov
73a1a07e34 JBR-1609 Jupyter Notebook eventually causes IDEA to become unresponsive on Mac OSX
(cherry picked from commit 8ae0be8eb6)
2021-12-16 07:02:09 +03:00
Anton Tarasov
b8aedb6946 JBR-1786 Weird white border for IDE window
(cherry picked from commit 4b09614a0e)
2021-12-16 07:02:08 +03:00
Vyacheslav Moklev
5be3845d0b JBR-1552 Invalid screen bounds in full screen mode
Check is window is not in undecorated state

(cherry picked from commit 5547701e2c)
2021-12-16 07:02:07 +03:00
Vyacheslav Moklev
418fef826a JBR-1509 Client area size is wrong in Borderless mode
Fix client area size

(cherry picked from commit 00d32e58dc)
2021-12-16 07:02:06 +03:00
Anton Tarasov
7cbb59f710 JBR-1770 [windows] frame does not open as maximized
(cherry picked from commit d9dfc3c6c5)
2021-12-16 07:02:05 +03:00
Anton Tarasov
0ef7ccfc21 JBR-1693 difficult to input Japanese text with "Fast" Key Repeat
(cherry picked from commit 12de3e287e)
2021-12-16 07:02:04 +03:00
Anton Tarasov
ec5a92b514 JBR-1669 IDE-managed HiDPI mode is broken
(cherry picked from commit 461b0b5cd4)
2021-12-16 07:02:03 +03:00
Anton Tarasov
add88af134 JBR-1650 propagate custom decoration title bar height to native
(cherry picked from commit f6fc65d014)
2021-12-16 07:02:02 +03:00
Anton Tarasov
8ec3ea7968 JBR-1629 Maximized window cut at the right and bottom
(cherry picked from commit 9e768377db)
2021-12-16 07:02:01 +03:00
Anton Tarasov
4d047f4b71 JBR-1492 Not able to start Intellij Idea 2017.2.5 with modified vmoptions
(cherry picked from commit e7ca6db66b)
2021-12-16 07:02:00 +03:00
Anton Tarasov
85a5a3d8b1 JBR-1427 pycharm jupyter preview stuck and no response when click on preview.
(cherry picked from commit 1746b04686)
2021-12-16 07:01:59 +03:00
Anton Tarasov
f6b2d17e6d IDEA-210154 Borderless UI: Top frame of IDEA window is blue
(cherry picked from commit 2dd4163bc4)
2021-12-16 07:01:58 +03:00
Anton Tarasov
4e99a80d1e JBR-1351 Borderless UI: Bold frame around IDEA window appears on non-HiDPI display
(cherry picked from commit 06d35de069)
2021-12-16 07:01:57 +03:00
Anton Tarasov
6379de8082 JBR-1313 wrong insets for non-resizable custom-decorated frame
(cherry picked from commit 9179718cb6)
2021-12-16 07:01:56 +03:00
Anton Tarasov
1d052a241f JBR-1293 do not modify client bounds when custom-decorated frame is set undecorated
(cherry picked from commit cb188edaab)
2021-12-16 07:01:55 +03:00
Anton Tarasov
50d1ed0e1e JBR-1278 allow native border and shadow for custom decoration mode
(cherry picked from commit a879ad5739)
2021-12-16 07:01:54 +03:00
Anton Tarasov
dbf7331160 JRE-1232 forwardport: JRE-1228 support custom frame decoration
(cherry picked from commit d2820524a1)
2021-12-16 07:01:53 +03:00
Anton Tarasov
ccc056e8a9 JRE-1162 [jdk11] support on-the-fly DPI change on linux
(cherry picked from commit c06c4c69d3)
2021-12-16 07:01:52 +03:00
Anton Tarasov
f683600356 JRE-1142 [jdk11] hidpi is not detected since Ubuntu 18.04
(cherry picked from commit be4f8c0d9d)
2021-12-16 07:01:50 +03:00
Anton Tarasov
4132fa31ec JRE-1111 [JDK11] java/beans/Beans/TypoInBeanDescription.java crashes at libawt_xawt.so+0x4a30d
(cherry picked from commit b89e6aed0b)
2021-12-16 07:01:49 +03:00
Anton Tarasov
652d5037d9 fix JNI_OnUnload definition
(cherry picked from the commit  3571e39071)

(cherry picked from commit 1019d8f0f2)
2021-12-16 07:01:48 +03:00
Anton Tarasov
5f3e3a6f75 JRE-981 IM workaround does not work anymore
forward port of 2d7c29b in JetBrains/jdk8u_jdk

(cherry picked from commit f3ccc53e02)
2021-12-16 07:01:47 +03:00
Anton Tarasov
92b4375370 JRE-938 [windows] Frame.setMaximizedBounds not hidpi-aware
(cherry picked from commit cc97899923320e1fa17f5e44975c4a0f0ba51014)
(cherry picked from commit ccfe65be7f)
2021-12-16 07:01:46 +03:00
Anton Tarasov
99b8c3164c JRE-907 macOS: add ability to check for scaled display mode
(cherry picked from commit e496262aa1)
2021-12-16 07:01:45 +03:00
Anton Tarasov
34378ae089 JRE-934 Diff viewer errors are not visible on HiDPI Linux
(cherry picked from commit 641a09dd52)
2021-12-16 07:01:44 +03:00
Anton Tarasov
88f241b49a [jdk9] HiDPI scale is not detected on some linux desktops
(cherry picked from commit 9279d80110)
2021-12-16 07:01:43 +03:00
Anton Tarasov
3365c8ddd5 JRE-681 [windows] direct drawing into frame graphics may have wrong translate
(cherry picked from commit 6ea1d45fd1)
2021-12-16 07:01:42 +03:00
Anton Tarasov
99e7ad356e Read org.gnome.desktop.interface/scaling-factor
(cherry picked from commit 277357ae73)
2021-12-16 07:01:41 +03:00
Anton Tarasov
309b880c8b 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-12-16 07:01:40 +03:00
Anton Tarasov
323596f1bf Do not scale base font in HiDPI mode on Linux
(cherry picked from commit 6fb2c36529)
2021-12-16 07:01:39 +03:00
Anton Tarasov
463d44d022 JRE-772 swing returns incorrect FRC when AA is off
(cherry picked from commit a161897d908aa10da6306c06452c5d6317fed2f0)
(cherry picked from commit 2bf5a7ca5c)
2021-12-16 07:01:38 +03:00
Anton Tarasov
7b6dc2454a JRE-681 [windows] direct drawing into frame graphics may have wrong translate
(cherry picked from commit ab6dee4c1fc453ad3cb5adb69fc243e550d184ae)

(cherry picked from commit 6ea1d45fd1)
2021-12-16 07:01:37 +03:00
Anton Tarasov
278ac75261 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-12-16 07:01:36 +03:00
Anton Tarasov
aebc71869d JRE-616 [linux] notify when dpi correction factor is applied to fonts
(cherry picked from commit f57d41f3118bfd773c99ce32d58cfae16931be6a)
(cherry picked from commit 6246abc72f)
2021-12-16 07:01:35 +03:00
Anton Tarasov
e75718e907 JRE-612 [windows] icon in frame title is not dpi-aware
(cherry picked from commit dec04385177a2abb677add909d3b94f94c62a14e)

(cherry picked from commit 38466cbab0)
2021-12-16 07:01:34 +03:00
Anton Tarasov
56f1b8b97c JRE-604 [fps] frame's client area is one pixel beneath frame's borders
Adopted.

(cherry picked from commit ef2870ee38)
2021-12-16 07:01:33 +03:00
Anton Tarasov
7d17b7b417 JRE-596 [windows] popup positioning is broken with JRE-573
Adopted: moved to AwtWindow::Reshape

(cherry picked from commit c5cc28d85d)
2021-12-16 07:01:32 +03:00
Anton Tarasov
aa68934d7a JRE-577 Goland 18 displays out of memory
(cherry picked from commit 2daaf21e420d4af15d3b1bfeb3f896074bea1e61)

(cherry picked from commit 9ea2011948)
2021-12-16 07:01:31 +03:00
Anton Tarasov
24ae1f42e3 JRE-573 [windows] window client area bounds mismatch
Apply only WmEraseBkgnd

(cherry picked from commit afa68f7ad6440303c6417be3f675b1c4644b6014)

(cherry picked from commit 0651b45e13)
2021-12-16 07:01:30 +03:00
Anton Tarasov
1fc2d876b9 JRE-382 Three AWT-tests become hanging starting since master-875
(cherry picked from commit 7d492101db8fcbb3d285fd8e9669f74b0e0fce8f)
(cherry picked from commit b965f85c1b)
2021-12-16 07:01:29 +03:00
Anton Tarasov
5673793ee0 JRE-373 [macos] nativeCreateNSWindow deadlocks with a11y
(cherry picked from commit 72c77a992bbf1b95b82ffc08cb2f4f3bc36b3657)

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

(cherry picked from commit 11a0911d65)
2021-12-16 07:01:26 +03:00
Anton Tarasov
d0c00167fe 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-12-16 07:01:25 +03:00
Anton Tarasov
ef1b0d13db JRE-269 JLabel doesn't scale <code>text</code> HTML fragments.
(cherry picked from commit 9ef72b6c3a477e4225f9b98e30fa9190613520e4)
(cherry picked from commit c17bc728ee)
2021-12-16 07:01:24 +03:00
Anton Tarasov
06d3dea9bd 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-12-16 07:01:23 +03:00
Anton Tarasov
743717d23c 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-12-16 07:01:22 +03:00
Anton Tarasov
453a26b305 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-12-16 07:01:21 +03:00
Anton Tarasov
e5f3ba9966 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-12-16 07:01:20 +03:00
Anton Tarasov
724bfdc8d4 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-12-16 07:01:19 +03:00
Anton Tarasov
2e69e6aa99 JRE-119 [ask if ui scale is enabled natively]
(cherry picked from commit 801f45875fd8699edcbda5896210cec191062261)
(cherry picked from commit 20edebdefa)
2021-12-16 07:01:18 +03:00
Anton Tarasov
7d60620537 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-12-16 07:01:17 +03:00
Anton Tarasov
43215123f1 IDEA-148854: AppCode crashes randomly every 15 mins or so
(cherry picked from commit 02f9a5fbb4924ff67c8a04c15e490acfcc750003)
(cherry picked from commit b8f4b4a9ed)
2021-12-16 07:01:16 +03:00
Vitaly Provodin
b58b1209ca updated JTreg exclude list 2021-12-16 07:01:15 +03:00
Alexey Ushakov
cef8c581c1 Resolve merge compile problems on mac
(cherry picked from commit d1ed8ab118)
2021-12-16 07:01:14 +03:00
Anton Tarasov
dd9ec811a1 IDEA-152524 can't compile fontconfig changes on Windows
(cherry picked from commit 4c8351fecf)

(cherry picked from commit 5faebc73d5)
2021-12-16 07:01:13 +03:00
Alexey Ushakov
2f20939b88 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-12-16 07:01:12 +03:00
Vitaly Provodin
5185cd3eb5 JBR-3401 enable macos-aarhc64 builds 2021-12-16 07:01:10 +03:00
Vitaly Provodin
c7a5b9b85b JBR-3305 remove the option --disable-warnings-as-errors from configure 2021-12-16 07:01:09 +03:00
Vitaly Provodin
4f20fcbd22 JBR-3398 remove the Experimental AOT and JIT Compiler (JEP 410) 2021-12-16 07:01:08 +03:00
Alexey Ushakov
9594d294d1 JBR-2807: JDK15: update modules.list to resolve jbr build failure
removed nashorn modules
2021-12-16 07:01:07 +03:00
Vitaly Provodin
ce880a2b94 JBR-2130 remove module jdk.pack 2021-12-16 07:01:06 +03:00
Vitaly Provodin
6afedfa13c 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-12-16 07:01:05 +03:00
Vitaly Provodin
9358e73809 JBR-2912 add JBR 15 builds with DCEVM 2021-12-16 07:01:04 +03:00
Vitaly Provodin
dfe1955c0c JBR-2864 initial commit of DCEVM patches reworked for 15 2021-12-16 07:01:03 +03:00
Vitaly Provodin
17e40dc336 JBR-2812 remove --with-import-modules from configure for aarch64 2021-12-16 07:01:02 +03:00
Anton Tarasov
15d6e4657e JBR-2812 bundle jcef in jmod format instead of modular-sdk
Build test-image with non-jcef build target
2021-12-16 07:01:01 +03:00
Vitaly Provodin
9eb742b44e JBR-2787 fix copying jcef files into jbr/jbrsdk binaries 2021-12-16 07:01:00 +03:00
Vitaly Provodin
170eda44b2 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-12-16 07:00:59 +03:00
Anton Tarasov
fcfc91b07a JBR-2016 add jcef module and export packages to it
(cherry picked from commit cf997f71c6)
2021-12-16 07:00:58 +03:00
Vitaly Provodin
1afb287660 JBR-2473 modify building scripts to add dcevm clauses, add git config to docker image
(cherry picked from commit 2620c62848)
2021-12-16 07:00:57 +03:00
Vitaly Provodin
bfbf24daf7 JBR-2473 add initial set of DCEVM patches
(cherry picked from commit c0c0a96cf4)
2021-12-16 07:00:56 +03:00
Vitaly Provodin
aa123e53aa JBR-2395 eliminate JavaFX from JBR 2021-12-16 07:00:55 +03:00
Vitaly Provodin
2c99a032f7 JBR-2409 fix prameters for configure 2021-12-16 07:00:54 +03:00
Vitaly Provodin
45fd1b40de JDK14: exclude dependencies on jcef in x86, fastdebug builds 2021-12-16 07:00:53 +03:00
Vitaly Provodin
230b24adb3 JBR-2396 fix CONF names 2021-12-16 07:00:52 +03:00
Vitaly Provodin
d5fb9599bc JBR-2394 replace --disable-debug-symbols with --with-native-debug-symbols=none 2021-12-16 07:00:50 +03:00
Vitaly Provodin
4c81f7662a add exec permitions to configure 2021-12-16 07:00:49 +03:00
Vitaly Provodin
e991e69902 split checkout before building JBR+JFX or JBR+JCEF on two separate commands 2021-12-16 07:00:48 +03:00
Vitaly Provodin
a740675de9 change BOOT_JDK, fix target names 2021-12-16 07:00:47 +03:00
Vitaly Provodin
b680b0a00d JBR-2291 add vendor info into bundles 2021-12-16 07:00:46 +03:00
Vitaly Provodin
1bdc92bd97 JBR-2324 address new layout in mac jcef 80.0.4+g74f7b0c+chromium-80.0.3987.122 2021-12-16 07:00:45 +03:00
Vitaly Provodin
6c2b822c22 JBR-2320 add jdk.attach module into JBR 2021-12-16 07:00:44 +03:00
Vitaly Provodin
47ebda49e9 JBR-2217 provide JCEF-only (no JavaFX) bundle for master/202 branches 2021-12-16 07:00:43 +03:00
Vitaly Provodin
5c70d4e2dd JBR-2212 add scripts for linux_x86, linux_aarch64, linux_x64_fastdebug, osx_fastdebug, windows_x86 2021-12-16 07:00:42 +03:00
Vitaly Provodin
332441656b JBR-1643 fix intermittent fialures of Windows builds at make/Init.gmk:304
combine images and test-image into one make invocation
2021-12-16 07:00:41 +03:00
Vitaly Provodin
0799df9e66 JBR-2181 create two separate JBR bundles with JFX and JFX+JCEF 2021-12-16 07:00:40 +03:00
Vitaly Provodin
7802166f03 JBR-2148 modify signapp&build scripts to match to the new layout 2021-12-16 07:00:39 +03:00
Vitaly Provodin
3557adb064 JBR-2084 modify scripts to sign Contents/MacOS/libjli.dylib as a a normal file 2021-12-16 07:00:38 +03:00
Vitaly Provodin
a249e8cc96 JBR-1821 notarize JBR bundles as a standalone app 2021-12-16 07:00:37 +03:00
Vitaly Provodin
4d973024e4 JBR-2162 move building scripts from TC to JBR repo 2021-12-16 07:00:36 +03:00
Anton Tarasov
4f62e2ceb4 JBR-2016 add jcef module and export some sun.* packages to it 2021-12-16 07:00:35 +03:00
Vitaly Provodin
e4e62482ea JBR-2014 add jdk.hotspot.agent module to jbr 2021-12-16 07:00:34 +03:00
Vitaly Provodin
90256d2140 JBR-1286 add jdk.compiler into JBR 2021-12-16 07:00:32 +03:00
Vitaly Provodin
7d3f707205 JBR-1199 add JBR modules list for jlink 2021-12-16 07:00:31 +03:00
Vitaly Provodin
85ba452572 Update docker script to create jdk15 build env 2021-12-16 07:00:30 +03:00
Vitaly Provodin
89ebf20d92 JBR-3045 add pressing ESC to close the dialog after test completion
(cherry picked from commit 44d8b28b0b)
2021-12-16 07:00:29 +03:00
Vitaly Provodin
98ff51d08b JBR-3040 press the button END at the beggining in order to avoid text selection
(cherry picked from commit 1c2bf33db2)
2021-12-16 07:00:28 +03:00
Vitaly.Provodin
ec5e65b9cf updated JTreg exclude list 2021-12-16 07:00:27 +03:00
Zhiqiang Zang
f6fbb5a80c 8278471: Remove unreached rules in AddNode::IdealIL
Reviewed-by: jiefu, kvn
2021-12-16 03:57:29 +00:00
Calvin Cheung
0dbe4c5d51 8278131: runtime/cds/appcds/dynamicArchive/* tests failing in loom repo
Reviewed-by: iklam, dholmes, minqi
2021-12-16 02:32:44 +00:00
Jesper Wilhelmsson
e6b28e05c6 Merge 2021-12-16 00:26:36 +00:00
Vladimir Kozlov
d3408a46b7 8277964: ClassCastException with no stack trace is thrown with -Xcomp in method handle invocation
Reviewed-by: dlong, mchung, dholmes
2021-12-15 21:45:45 +00:00
Ioi Lam
4ba980ba43 8278020: ~13% variation in Renaissance-Scrabble
Reviewed-by: dholmes, stuefe, kvn
2021-12-15 20:06:56 +00:00
Andrey Turbanov
04dbdd36dd 8274898: Cleanup usages of StringBuffer in jdk tools modules
Reviewed-by: sspitsyn, lmesnik
2021-12-15 19:28:58 +00:00
Chris Plummer
7517c85da3 8269838: BasicTypeDataBase.findDynamicTypeForAddress(addr, basetype) can be simplified
Reviewed-by: kevinw, sspitsyn
2021-12-15 17:08:44 +00:00
Weijun Wang
1f1db838ab 8278186: org.jcp.xml.dsig.internal.dom.Utils.parseIdFromSameDocumentURI throws StringIndexOutOfBoundsException when calling substring method
Reviewed-by: mullan
2021-12-15 17:00:55 +00:00
Evgeny Astigeevich
bcb79fd012 8278241: Implement JVM SpinPause on linux-aarch64
Reviewed-by: aph, phh
2021-12-15 16:57:30 +00:00
Albert Mingkun Yang
fcebe65ce9 8278842: Parallel: Remove unused VerifyObjectStartArrayClosure::_old_gen
Reviewed-by: tschatzl
2021-12-15 15:04:11 +00:00
Albert Mingkun Yang
4851ad840a 8278548: G1: Remove unnecessary check in forward_to_block_containing_addr
Reviewed-by: tschatzl, mli, sjohanss
2021-12-15 15:02:57 +00:00
Coleen Phillimore
1e3ae3be02 8202579: Revisit VM_Version and VM_Version_ext for overlap and consolidation
Reviewed-by: dholmes, hseigel
2021-12-15 13:41:59 +00:00
Erik Gahlin
69b5d49e4f 8272064: test/jdk/jdk/jfr/api/consumer/TestHiddenMethod.java needs update for JEP 416
Reviewed-by: jbachorik
2021-12-15 13:24:04 +00:00
Maurizio Cimadamore
d6b5544e74 8278607: Misc issues in foreign API javadoc
Reviewed-by: sundar
2021-12-15 12:25:25 +00:00
Per Liden
7adf7f3353 8278351: Add function to retrieve worker_id from any context
Reviewed-by: eosterlund, kbarrett, ayang
2021-12-15 10:09:02 +00:00
Chris Plummer
758fe9bed3 8273904: debug agent ArrayTypeImp::newInstance() fails to send reply packet if there is an error
Reviewed-by: sspitsyn, amenkov
2021-12-15 03:11:27 +00:00
Fei Gao
c442587f1e 8277619: AArch64: Incorrect parameter type in Advanced SIMD Copy assembler functions
Reviewed-by: aph, pli
2021-12-15 02:26:40 +00:00
Chris Plummer
46f99aca94 8244765: Undo exclusiveAccess.dirs changes for JDK-8220295 and see if there are still any testing issues
Reviewed-by: amenkov, sspitsyn
2021-12-15 01:29:50 +00:00
Chris Plummer
54c9a99663 8278643: CoreUtils.getCoreFileLocation() should print out the size of the core file found
Reviewed-by: amenkov, lmesnik, sspitsyn
2021-12-15 01:25:53 +00:00
Liam Miller-Cushon
068a450954 8278825: Unused variable for diagnostic in Resolve
Reviewed-by: vromero
2021-12-15 00:26:17 +00:00
Alexander Matveev
918e339785 8278233: [macos] tools/jpackage tests timeout due to /usr/bin/osascript
Reviewed-by: herrick, asemenyuk
2021-12-14 23:59:11 +00:00
Jie Fu
f48a3e86d0 8278758: runtime/BootstrapMethod/BSMCalledTwice.java fails with release VMs after JDK-8262134
Reviewed-by: dcubed
2021-12-14 22:50:21 +00:00
Jie Fu
2def7e9132 8278584: compiler/vectorapi/VectorMaskLoadStoreTest.java failed with "Error: ShouldNotReachHere()"
Reviewed-by: kvn, psandoz
2021-12-14 22:49:04 +00:00
Harold Seigel
98a8d446b6 8278638: Remove FLAG_IS_CMDLINE(UseSharedSpaces)
Reviewed-by: dcubed, coleenp
2021-12-14 20:35:49 +00:00
Roger Riggs
03f647f4bb 8278028: [test-library] Warnings cleanup of the test library
Reviewed-by: dfuchs, mchung, naoto, lancea, lmesnik
2021-12-14 19:54:54 +00:00
Vladimir Kozlov
a1dfe57249 8276455: C2: iterative EA
Reviewed-by: iveresov, neliasso, roland
2021-12-14 19:24:13 +00:00
Zhengyu Gu
de65230d71 8278767: Shenandoah: Remove unused ShenandoahRootScanner
Reviewed-by: rkennke
2021-12-14 18:39:28 +00:00
Weijun Wang
0cc989b7d2 8278744: KeyStore:getAttributes() not returning unmodifiable Set
Reviewed-by: mullan
2021-12-14 18:39:22 +00:00
Sergey Bylokhov
a9c1acbb8a 8275843: Random crashes while the UI code is executed
Reviewed-by: azvegint
2021-12-14 18:03:00 +00:00
Coleen Phillimore
3f91948c59 8278791: Rename ClassLoaderData::holder_phantom
Reviewed-by: stefank
2021-12-14 17:45:35 +00:00
Albert Mingkun Yang
7761a3e883 8278761: Parallel: Remove unused PSOldPromotionLAB constructor
Reviewed-by: tschatzl
2021-12-14 17:11:11 +00:00
Markus Grönlund
475ec8e6c5 8277919: OldObjectSample event causing bloat in the class constant pool in JFR recording
Reviewed-by: jbachorik
2021-12-14 13:00:39 +00:00
Thomas Stuefe
3f9638d124 8278585: Drop unused code from OSThread
Reviewed-by: dholmes, tschatzl
2021-12-14 05:45:56 +00:00
Dean Long
32139c1a8a 8262134: compiler/uncommontrap/TestDeoptOOM.java failed with "guarantee(false) failed: wrong number of expression stack elements during deopt"
Reviewed-by: kvn, iveresov
2021-12-14 03:16:17 +00:00
Jesper Wilhelmsson
8401a059bd Merge 2021-12-14 02:15:15 +00:00
David Holmes
c93b24d852 8132785: java/lang/management/ThreadMXBean/ThreadLists.java fails intermittently
Reviewed-by: alanb, kevinw, dcubed, sspitsyn
2021-12-13 21:37:51 +00:00
David Holmes
624f3094b8 8278275: Initial nroff manpage generation for JDK 19
Reviewed-by: erikj, jjg, iris
2021-12-13 21:36:24 +00:00
Daniel D. Daugherty
bdc784c0cb 8278630: ProblemList compiler/vectorapi/reshape/TestVectorCastAVX512.java on X64
Reviewed-by: psandoz
2021-12-13 20:36:40 +00:00
Chris Plummer
db502d30a4 8269556: sun/tools/jhsdb/JShellHeapDumpTest.java fails with RuntimeException 'JShellToolProvider' missing from stdout/stderr
Reviewed-by: kevinw, sspitsyn, amenkov
2021-12-13 19:02:12 +00:00
merykitty
ca8c58c731 8259610: VectorReshapeTests are not effective due to failing to intrinsify "VectorSupport.convert"
Reviewed-by: psandoz, chagedorn
2021-12-13 16:34:37 +00:00
Harold Seigel
15996e4075 8276241: JVM does not flag constant class entries ending in '/'
Reviewed-by: dholmes, lfoltan
2021-12-13 13:40:54 +00:00
Harold Seigel
14f7385a72 8277481: Obsolete seldom used CDS flags
Reviewed-by: iklam, ccheung, dholmes
2021-12-13 13:35:37 +00:00
Christian Stein
23fd9f15da 8271079: JavaFileObject#toUri and multi-release jars
Reviewed-by: jjg, lancea, alanb
2021-12-13 12:00:47 +00:00
Albert Mingkun Yang
ccdb9f1b16 8278482: G1: Improve HeapRegion::block_is_obj
Reviewed-by: sjohanss, tschatzl, mli
2021-12-13 09:50:30 +00:00
Matthias Baesken
8b5ff4bdff 8278344: sun/security/pkcs12/KeytoolOpensslInteropTest.java test fails because of different openssl output
Reviewed-by: mdoerr, goetz, stuefe
2021-12-13 07:48:20 +00:00
Sergey Bylokhov
7c2c58587d 8276819: javax/print/PrintServiceLookup/FlushCustomClassLoader.java fails to free
Reviewed-by: psadhukhan, aivanov
2021-12-12 21:47:03 +00:00
Scott Gibbons
9a1bbaf8db 8273108: RunThese24H crashes with SEGV in markWord::displaced_mark_helper() after JDK-8268276
8272809: JFR thread sampler SI_KERNEL SEGV in metaspace::VirtualSpaceList::contains

Reviewed-by: sviswanathan, kvn
2021-12-12 16:08:35 +00:00
Daniel D. Daugherty
9b99cbe7ab 8278580: ProblemList javax/swing/JTree/4908142/bug4908142.java on macosx-x64
Reviewed-by: alanb
2021-12-11 15:53:31 +00:00
Andrew Leonard
db68a0ce1c 8276766: Enable jar and jmod to produce deterministic timestamped content
Reviewed-by: ihse, lancea, alanb, jgneff
2021-12-11 15:27:08 +00:00
Dan Lutker
6eb6ec05fd 8278525: Additional -Wnonnull errors happen with GCC 11
Reviewed-by: phh, dlong
2021-12-10 23:49:41 +00:00
Phil Race
81c56c700a 8278456: Define jtreg jdk_desktop test group time-based sub-tasks for use by headful testing.
Reviewed-by: serb, aivanov, psadhukhan
2021-12-10 21:02:28 +00:00
Alexander Zuev
94127f43a4 8277299: STACK_OVERFLOW in Java_sun_awt_shell_Win32ShellFolder2_getIconBits
Reviewed-by: aivanov
2021-12-10 20:27:07 +00:00
Jesper Wilhelmsson
61736f81fb Merge 2021-12-10 18:42:51 +00:00
Evgeny Astigeevich
afd065b368 8278415: [TESTBUG] vmTestbase/nsk/stress/stack/stack018.java fails with "java.lang.Error: TEST_RFE"
Reviewed-by: phh
2021-12-10 18:27:36 +00:00
Dan Lutker
4f594e6a28 8278381: [GCC 11] Address::make_raw() does not initialize rspec
Reviewed-by: phh, xliu
2021-12-10 17:52:54 +00:00
Roman Kennke
8eb453baeb 8277072: ObjectStreamClass caches keep ClassLoaders alive
Reviewed-by: rriggs, plevart
2021-12-10 16:24:16 +00:00
Hao Sun
0602f4c48b 8277621: ARM32: multiple fastdebug failures with "bad AD file" after JDK-8276162
Reviewed-by: njian, dlong, shade
2021-12-10 15:53:27 +00:00
Hamlin Li
3e0b083f20 8278533: Remove some unused methods in c1_Instruction and c1_ValueMap
Reviewed-by: chagedorn
2021-12-10 14:51:27 +00:00
Jan Lahoda
aed3ea2043 8277634: Incorrect method name in invokedynamic
Reviewed-by: jlaskey
2021-12-10 09:01:58 +00:00
Hamlin Li
539fbbf8c7 8278532: Fix some typos in compiler comments
Reviewed-by: kvn, jiefu
2021-12-10 06:06:12 +00:00
Jonathan Gibbons
3df8dc494d 8278538: Test langtools/jdk/javadoc/tool/CheckManPageOptions.java fails after the manpage was updated
Reviewed-by: dholmes
2021-12-10 05:02:28 +00:00
Jonathan Gibbons
ed5d53ae0e 8273179: Update nroff pages in JDK 18 before RC
Reviewed-by: dholmes
2021-12-10 02:50:37 +00:00
Jatin Bhateja
0113322ac1 8277997: Intrinsic creation for VectorMask.fromLong API
Reviewed-by: psandoz, kvn, sviswanathan
2021-12-10 01:49:20 +00:00
Kim Barrett
066b348dbc 8277807: Increase default initial concurrent refinement threshold
Reviewed-by: tschatzl, sjohanss
2021-12-10 01:32:05 +00:00
Jesper Wilhelmsson
ec0a5ac8fe Merge 2021-12-09 23:24:40 +00:00
Daniel D. Daugherty
d40e90b4a1 8278521: ProblemList java/lang/management/ThreadMXBean/ThreadLists.java
Reviewed-by: bpb
2021-12-09 22:03:04 +00:00
Jonathan Gibbons
918b3505e1 8278516: Typos in snippet for java.compiler
Reviewed-by: darcy
2021-12-09 21:47:50 +00:00
Toshio Nakamura
fcd67a5242 8278185: Custom JRE cannot find non-ASCII named module inside
Reviewed-by: naoto
2021-12-09 19:05:31 +00:00
Albert Mingkun Yang
abebde7440 8278421: G1: Remove unused HeapRegion::verify
Reviewed-by: iwalulya, tschatzl
2021-12-09 18:15:53 +00:00
Michael McMahon
bc31ccc95b 8278312: Update SimpleSSLContext keystore to use SANs for localhost IP addresses
Reviewed-by: dfuchs
2021-12-09 17:38:49 +00:00
Martin Doerr
01b30bfa99 8253860: PPC: Relocation::pd_set_data_value conflates compressed oops and klasses
Reviewed-by: dlong, rrich
2021-12-09 17:04:55 +00:00
Joe Darcy
09831e7aa4 8273146: Start of release updates for JDK 19
8277511: Add SourceVersion.RELEASE_19
8277513: Add source 19 and target 19 to javac

Reviewed-by: dholmes, alanb, erikj, iris, mikael, ihse
2021-12-09 17:01:59 +00:00
Eric Liu
6dae52f8e3 8276985: AArch64: [vectorapi] Backend support of VectorMaskToLongNode
Reviewed-by: njian, aph
2021-12-09 14:16:38 +00:00
Erik Gahlin
08aad8506e 8211230: JFR: internal events
Reviewed-by: mgronlun
2021-12-09 14:13:53 +00:00
Markus Grönlund
965ea8d9cd 8274298: JFR Thread Sampler thread must not acquire malloc lock after suspending a thread because of possible deadlock
Reviewed-by: egahlin
2021-12-09 09:29:59 +00:00
Julia Boes
84baea753a 8278433: Use snippets in jdk.incubator.foreign documentation
Reviewed-by: mcimadamore
2021-12-09 09:29:08 +00:00
Markus Grönlund
1ea766db55 8278419: JFR jcmd option contract "This value cannot be changed once JFR has been initialized" is not enforced
Reviewed-by: egahlin
2021-12-09 09:23:39 +00:00
Aleksey Shipilev
62a7f5d323 8254318: Remove .hgtags
Reviewed-by: erikj, xliu
2021-12-09 06:50:56 +00:00
Jonathan Gibbons
d1706828fb 8278466: "spurious markup" warnings in snippets when building docs-reference
Reviewed-by: darcy
2021-12-09 02:53:52 +00:00
Alexey Semenyuk
8ef1a232b1 8278311: Debian packaging doesn't work
Reviewed-by: almatvee
2021-12-09 02:31:29 +00:00
Zhiqiang Zang
352435581e 8277882: New subnode ideal optimization: converting "c0 - (x + c1)" into "(c0 - c1) - x"
Reviewed-by: dlong, iveresov
2021-12-09 00:18:59 +00:00
Valerie Peng
83e6a4c0e9 8255409: Support the new C_GetInterfaceList, C_GetInterface, and C_SessionCancel APIs in PKCS#11 v3.0
Reviewed-by: ascarpino, weijun
2021-12-08 23:04:15 +00:00
Roger Riggs
3cec700a5c 8278463: [test] Serialization WritePrimitive test revised for readFully test fails
Reviewed-by: darcy
2021-12-08 22:59:38 +00:00
Vicente Romero
03bf55f620 8277980: ObjectMethods::bootstrap throws NPE when lookup is null
Reviewed-by: jjg
2021-12-08 22:49:43 +00:00
Serguei Spitsyn
3893f4f70b 8278330: dump stack trace if the jvmti test nsk/jvmti/GetThreadState/thrstat002 is failed with wrong thread state
Reviewed-by: amenkov, lmesnik
2021-12-08 22:32:00 +00:00
Roland Westrelin
b3faecf739 8276116: C2: optimize long range checks in int counted loops
Reviewed-by: kvn
2021-12-08 21:33:33 +00:00
Eamonn McManus
fe2ae8e38b 8276904: Optional.toString() is unnecessarily expensive
Reviewed-by: rriggs, smarks
2021-12-08 21:24:43 +00:00
Sergey Bylokhov
6e7b7f352e 8278251: Enable "missing-explicit-ctor" check in the jdk.unsupported.desktop module
Reviewed-by: ihse, prr
2021-12-08 21:15:55 +00:00
Daniel D. Daugherty
c83b781b60 8278459: ProblemList javax/swing/JTree/4908142/bug4908142.java on macosx-aarch64
Reviewed-by: lmesnik, bpb, prr
2021-12-08 20:42:52 +00:00
Roger Riggs
8e8fadf2d4 8278428: ObjectInputStream.readFully range check incorrect
Reviewed-by: alanb
2021-12-08 20:37:41 +00:00
Jonathan Gibbons
5a80abf706 8272944: Use snippets in jdk.javadoc documentation
Reviewed-by: hannesw
2021-12-08 19:50:14 +00:00
Jonathan Gibbons
fb11d8faf2 8272945: Use snippets in java.compiler documentation
Reviewed-by: erikj, alanb
2021-12-08 19:48:05 +00:00
Jan Lahoda
42d9b1baac 8277106: Cannot compile certain sources with --release
Reviewed-by: darcy, mcimadamore
2021-12-08 18:50:38 +00:00
Daniel D. Daugherty
ba86dd4aaf 8278445: ProblemList tools/jpackage/share/IconTest.java on macosx-x64
Reviewed-by: bpb
2021-12-08 18:02:34 +00:00
Aleksey Shipilev
92aa75b721 8274903: Zero: Support AsyncGetCallTrace
Reviewed-by: sspitsyn, aph
2021-12-08 17:52:03 +00:00
Alexey Ushakov
83454530ea 8272392: Lanai: SwingSet2. Black background on expanding tree node
Reviewed-by: aghaisas, jdv
2021-12-08 17:48:53 +00:00
Valerie Peng
9b747491de 8276660: Scalability bottleneck in java.security.Provider.getService()
Reviewed-by: weijun
2021-12-08 17:44:10 +00:00
Brian Burkhalter
2478158815 8277361: java/nio/channels/Channels/ReadXBytes.java fails with OOM error
Reviewed-by: alanb, lancea
2021-12-08 17:11:14 +00:00
Roland Westrelin
8af3b27ce9 8277850: C2: optimize mask checks in counted loops
Reviewed-by: kvn, thartmann
2021-12-08 16:39:24 +00:00
Yumin Qi
3e93e0b809 8276769: -Xshare:auto should tolerate problems in the CDS archive
Reviewed-by: iklam, ccheung
2021-12-08 16:20:39 +00:00
Calvin Cheung
79165b738d 8278324: Update the --generate-cds-archive jlink plugin usage message
Reviewed-by: alanb
2021-12-08 16:10:06 +00:00
Calvin Cheung
40d726b8aa 8278310: Improve logging in CDS DynamicLoaderConstraintsTest.java
Reviewed-by: iklam
2021-12-08 16:07:49 +00:00
Calvin Cheung
e4852c6f0a 8277998: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java#custom-cl-zgc failed "assert(ZAddress::is_marked(addr)) failed: Should be marked"
Reviewed-by: iklam, minqi
2021-12-08 15:59:37 +00:00
Daniel Fuchs
37921e3080 8269258: java/net/httpclient/ManyRequestsLegacy.java failed with connection timeout
Reviewed-by: michaelm
2021-12-08 15:31:49 +00:00
Matthias Baesken
fd8cb2dae8 8278346: java/nio/file/Files/probeContentType/Basic.java fails on Linux SLES15 machine
Reviewed-by: shade
2021-12-08 14:03:56 +00:00
Markus Grönlund
e5cb84e9a1 8278336: Use int64_t to represent byte quantities consistently in JfrObjectAllocationSample
Reviewed-by: egahlin
2021-12-08 11:18:24 +00:00
Thomas Stuefe
54993b1307 8278309: [windows] use of uninitialized OSThread::_state
Reviewed-by: dholmes, shade
2021-12-08 09:18:58 +00:00
Julia Boes
10e0318ff7 8278158: jwebserver should set request timeout
Reviewed-by: dfuchs, michaelm
2021-12-08 09:16:44 +00:00
Roland Westrelin
5dcdee4bcd 8262341: Refine identical code in AddI/LNode.
Reviewed-by: thartmann, eliu
2021-12-08 07:55:12 +00:00
Hannes Wallnöfer
b334d9680b 8276964: Better indicate a snippet that could not be processed
Reviewed-by: jjg
2021-12-08 07:07:57 +00:00
Aleksey Shipilev
30f0c64753 8277992: Add fast jdk_svc subtests to jdk:tier3
Reviewed-by: mseledtsov, alanb
2021-12-08 06:52:16 +00:00
Jie Fu
5266e7d780 8278379: Zero VM is broken due to UseRTMForStackLocks was not declared after JDK-8276901
Reviewed-by: dholmes, shade
2021-12-08 06:45:01 +00:00
Pengfei Li
e7db581e91 8277168: AArch64: Enable arraycopy partial inlining with SVE
Reviewed-by: jbhateja, roland, aph
2021-12-08 04:29:23 +00:00
Hamlin Li
fb6d611311 8278276: G1: Refine naming of G1GCParPhaseTimesTracker::_must_record
Reviewed-by: sjohanss, tschatzl
2021-12-08 01:26:35 +00:00
Stuart Marks
d7ad546758 8276422: Add command-line option to disable finalization
Co-authored-by: David Holmes <dholmes@openjdk.org>
Co-authored-by: Brent Christian <bchristi@openjdk.org>
Reviewed-by: dholmes, kbarrett, bchristi
2021-12-08 00:27:53 +00:00
Brent Christian
ec7cb6d5d3 8276447: Deprecate finalization-related methods for removal
Reviewed-by: rriggs, alanb, lancea, darcy, mchung, serb, smarks, prr
2021-12-08 00:23:15 +00:00
Vicente Romero
3c2951f738 8275771: JDK source code contains redundant boolean operations in jdk.compiler and langtools
Reviewed-by: jlahoda
2021-12-07 23:31:09 +00:00
Mikhailo Seledtsov
3d61372ba5 8278363: Create extented container test groups
Reviewed-by: lmesnik
2021-12-07 21:58:19 +00:00
Daniel D. Daugherty
716c2e1e85 8278368: ProblemList tools/jpackage/share/MultiNameTwoPhaseTest.java on macosx-x64
Reviewed-by: mikael
2021-12-07 19:28:04 +00:00
Pavel Rappo
a8a1fbce5b 8278068: Fix next-line modifier (snippet markup)
8277027: Treat unrecognized markup as snippet text, but warn about it

Reviewed-by: jjg
2021-12-07 18:58:08 +00:00
Pavel Rappo
061017a9f4 8273175: Add @since tags to the DocTree.Kind enum constants
Reviewed-by: darcy
2021-12-07 18:56:58 +00:00
Liam Miller-Cushon
d7c283a081 8275233: Incorrect line number reported in exception stack trace thrown from a lambda expression
Reviewed-by: jlahoda
2021-12-07 18:44:39 +00:00
Jan Lahoda
3955b037da 8277328: jdk/jshell/CommandCompletionTest.java failures on Windows
Reviewed-by: vromero
2021-12-07 18:15:25 +00:00
Zhengyu Gu
5a036ace01 8277990: NMT: Remove NMT shutdown capability
Reviewed-by: stuefe, shade
2021-12-07 17:42:08 +00:00
Maxim Kartashev
7217cb7878 8274883: (se) Selector.open throws IAE when the default file system provider is changed to a custom provider
Reviewed-by: alanb, michaelm
2021-12-07 16:59:34 +00:00
Brian Burkhalter
7ea4b19f54 8278166: java/nio/channels/Channels/TransferTo.java timed out
Reviewed-by: lancea, alanb
2021-12-07 16:47:24 +00:00
Naoto Sato
543d1a8cf4 8275721: Name of UTC timezone in a locale changes depending on previous code
Reviewed-by: joehw
2021-12-07 16:44:52 +00:00
Maurizio Cimadamore
bd7c54aee8 8278341: Liveness check for global scope is not as fast as it could be
Reviewed-by: shade, jvernee
2021-12-07 16:13:54 +00:00
Aleksei Efimov
c609b5d3d7 8277628: Spec for InetAddressResolverProvider::get() throwing error or exception could be clearer
Reviewed-by: alanb, dfuchs
2021-12-07 15:42:02 +00:00
Andrey Turbanov
bb50b92b80 8277536: Use String.blank in jdk.javadoc where applicable
Reviewed-by: jjg
2021-12-07 14:54:32 +00:00
Roman Kennke
5b81d5eeb4 8276901: Implement UseHeavyMonitors consistently
Reviewed-by: coleenp, mdoerr, dcubed
2021-12-07 14:41:42 +00:00
Alan Bateman
69d8669fb3 8278339: ServerSocket::isClosed may return false after accept throws
Reviewed-by: dfuchs
2021-12-07 14:22:35 +00:00
Alan Bateman
56ca66e86f 8277863: Deprecate sun.misc.Unsafe methods that return offsets
Reviewed-by: psandoz, mchung
2021-12-07 14:21:47 +00:00
Thomas Stuefe
35361270cb 8277383: VM.metaspace optionally show chunk freelist details
Reviewed-by: coleenp, shade
2021-12-07 14:15:04 +00:00
Albert Mingkun Yang
44fcee3830 8278289: Drop G1BlockOffsetTablePart::_object_can_span
Reviewed-by: tschatzl, sjohanss, mli
2021-12-07 13:34:35 +00:00
Aleksey Shipilev
b2638e5efd 8244602: Add JTREG_REPEAT_COUNT to repeat execution of a test
Reviewed-by: ihse, erikj
2021-12-07 11:32:17 +00:00
Yasumasa Suenaga
07669e3bc6 8275375: [REDO] JDK-8271949 dumppath in -XX:FlightRecorderOptions does not affect
Reviewed-by: egahlin, mgronlun
2021-12-07 09:26:13 +00:00
Alan Bateman
24877ac078 8278270: ServerSocket is not thread safe
Reviewed-by: dfuchs
2021-12-07 08:49:18 +00:00
Serguei Spitsyn
e535cb3fba 8272395: Bad HTML in JVMTI man page
Reviewed-by: dholmes, iris
2021-12-07 08:16:49 +00:00
Sibabrata Sahoo
f22d157e55 8277353: java/security/MessageDigest/ThreadSafetyTest.java test times out
Reviewed-by: weijun
2021-12-07 05:10:30 +00:00
Weijun Wang
10db0e4163 8277932: Subject:callAs() not throwing NPE when action is null
Reviewed-by: rriggs
2021-12-07 01:37:55 +00:00
Jonathan Gibbons
f148e3e462 8278318: Create {@index} entries for key LangTools terms
Reviewed-by: darcy
2021-12-07 00:41:11 +00:00
Ivan Šipka
2ff12966a3 8277957: Add test group for IPv6 exclusive testing
Reviewed-by: alanb, msheppar
2021-12-06 23:34:32 +00:00
Martin Balao
ea8d3c92c6 8271566: DSA signature length value is not accurate in P11Signature
Reviewed-by: valeriep
2021-12-06 20:31:55 +00:00
ANUPAM DEV
239362da51 8247973: Javadoc incorrect for IdentityArrayList, IdentityLinkedList
Reviewed-by: aivanov, prr
2021-12-06 18:46:29 +00:00
Weijun Wang
2c31a1735d 8275082: Update XML Security for Java to 2.3.0
Reviewed-by: mullan
2021-12-06 18:00:54 +00:00
Artem Semenov
70bad89b01 8277497: Last column cell in the JTAble row is read as empty cell
Reviewed-by: ant, kizune, pbansal
2021-12-06 17:39:43 +00:00
Joe Darcy
5045eb538b 8278273: Remove unnecessary exclusion of doclint accessibility checks
Reviewed-by: iris, alanb, ihse
2021-12-06 16:56:27 +00:00
Chris Plummer
587e5409c2 8210558: serviceability/sa/TestJhsdbJstackLock.java fails to find '^\s+- waiting to lock <0x[0-9a-f]+> \(a java\.lang\.Class ...'
Reviewed-by: kevinw, sspitsyn
2021-12-06 16:09:45 +00:00
Prasanta Sadhukhan
082fdf4793 8172065: javax/swing/JTree/4908142/bug4908142.java The selected index should be "aad"
Reviewed-by: aivanov
2021-12-06 16:08:28 +00:00
Jan Lahoda
ab781874b2 8277105: Inconsistent handling of missing permitted subclasses
Reviewed-by: vromero
2021-12-06 15:43:42 +00:00
Vishal Chand
adf39522c1 8277372: Add getters for BOT and card table members
Reviewed-by: tschatzl, sjohanss, ayang
2021-12-06 15:28:20 +00:00
Christian Hagedorn
7c6f57fcb1 8275610: C2: Object field load floats above its null check resulting in a segfault
Reviewed-by: kvn, roland
2021-12-06 14:48:03 +00:00
Markus Grönlund
a885aab696 8276125: RunThese24H.java SIGSEGV in JfrThreadGroup::thread_group_id
Reviewed-by: egahlin, shade
2021-12-06 14:36:51 +00:00
Jie Fu
6994d80937 8278291: compiler/uncommontrap/TraceDeoptimizationNoRealloc.java fails with release VMs after JDK-8154011
Reviewed-by: shade, thartmann
2021-12-06 13:44:22 +00:00
Hamlin Li
286a26c366 8278277: G1: Simplify implementation of G1GCPhaseTimes::record_or_add_time_secs
Reviewed-by: iwalulya, sjohanss, tschatzl
2021-12-06 11:50:11 +00:00
Markus Grönlund
d14f06a963 8278031: MultiThreadedRefCounter should not use relaxed atomic decrement
Reviewed-by: kbarrett
2021-12-06 09:29:28 +00:00
Ludvig Janiuk
8d190dd003 8277496: Remove duplication in c1 Block successor lists
Reviewed-by: neliasso, kvn
2021-12-06 08:58:41 +00:00
Jan Lahoda
194cdf4e28 8277864: Compilation error thrown while doing a boxing conversion on selector expression
Reviewed-by: jlaskey, vromero
2021-12-06 08:42:26 +00:00
Tobias Holenstein
f39fe5b3d6 8154011: Make TraceDeoptimization a diagnostic flag
Reviewed-by: kvn, dholmes, thartmann
2021-12-06 08:23:49 +00:00
Aleksey Shipilev
f180a4591f 8278016: Add compiler tests to tier{2,3}
Reviewed-by: kvn, dholmes
2021-12-06 06:26:50 +00:00
Srikanth Adayapalam
104aa1f7f9 8268575: Annotations not visible on model elements before they are generated
Reviewed-by: mcimadamore
2021-12-06 06:24:56 +00:00
Aleksey Shipilev
839b6067c8 8278143: Remove unused "argc" from ConstantPool::copy_bootstrap_arguments_at_impl
Reviewed-by: lfoltan, dholmes
2021-12-05 21:38:45 +00:00
Coleen Phillimore
267c024eb5 8265150: AsyncGetCallTrace crashes on ResourceMark
Reviewed-by: dholmes, stuefe, eosterlund, sspitsyn
2021-12-04 13:05:06 +00:00
Markus Karg
9642629d15 8276779: (ch) InputStream returned by Channels.newInputStream should have fast path for SelectableChannels
Reviewed-by: lancea, alanb
2021-12-04 09:27:23 +00:00
Joe Darcy
02ee337ae0 8278175: Enable all doclint warnings for build of java.desktop
Reviewed-by: erikj, prr
2021-12-04 02:12:35 +00:00
Sandhya Viswanathan
24e16ac637 8277617: Adjust AVX3Threshold for copy/fill stubs
Reviewed-by: jbhateja, dholmes, neliasso, jiefu
2021-12-03 21:06:16 +00:00
Jatin Bhateja
2b87c2b429 8277793: Support vector F2I and D2L cast operations for X86
Reviewed-by: neliasso, sviswanathan
2021-12-03 20:21:21 +00:00
Weijun Wang
e1cde19dbd 8278247: KeyStoreSpi::engineGetAttributes does not throws KeyStoreException
Reviewed-by: mullan
2021-12-03 19:52:18 +00:00
Weijun Wang
a729a70c01 8225181: KeyStore should have a getAttributes method
Reviewed-by: mullan
2021-12-03 18:52:17 +00:00
vamsi-parasa
38f525e96e 8275821: Optimize random number generators developed in JDK-8248862 using Math.unsignedMultiplyHigh()
Reviewed-by: psandoz, jlaskey
2021-12-03 18:17:54 +00:00
Joe Darcy
780b8b1072 8278179: Enable all doclint warnings for build of java.naming
Reviewed-by: iris, erikj
2021-12-03 18:14:33 +00:00
Daniel D. Daugherty
678ac589ad 8278240: ProblemList containers/docker/TestJcmd.java on linux-aarch64
Reviewed-by: mseledtsov, tschatzl
2021-12-03 17:22:14 +00:00
Christian Hagedorn
01cb2b9883 8277529: SIGSEGV in C2 CompilerThread Node::rematerialize() compiling Packet::readUnsignedTrint
Reviewed-by: thartmann, roland, kvn
2021-12-03 17:14:10 +00:00
Prasanta Sadhukhan
660f21a418 8278119: ProblemList few headful test failing in macosx12-aarch64 system
Reviewed-by: dcubed
2021-12-03 17:08:40 +00:00
merykitty
2e30fa936d 8278171: [vectorapi] Mask incorrectly computed for zero extending cast
Reviewed-by: psandoz
2021-12-03 17:07:11 +00:00
Magnus Ihse Bursie
fbf096eea4 8251400: Fix incorrect addition of library to test in JDK-8237858
Reviewed-by: dholmes, erikj
2021-12-03 16:56:36 +00:00
Calvin Cheung
0a09092631 8268288: jdk/jfr/api/consumer/streaming/TestOutOfProcessMigration.java fails with "Error: ShouldNotReachHere()"
Reviewed-by: minqi, iklam
2021-12-03 16:36:19 +00:00
Brian Burkhalter
0d938cedca 8278172: java/nio/channels/FileChannel/BlockDeviceSize.java should only run on Linux
Reviewed-by: lancea, alanb
2021-12-03 16:00:27 +00:00
Aleksey Shipilev
0e7b6bcd82 8278141: LIR_OpLoadKlass::_info shadows the field of the same name from LIR_Op
Reviewed-by: thartmann, rkennke
2021-12-03 15:43:51 +00:00
Aleksey Shipilev
53a4342783 8278137: JFR: PrettyWriter uses incorrect year specifier
Reviewed-by: egahlin
2021-12-03 15:42:18 +00:00
Denghui Dong
f7237793ff 8278079: C2: expand_dtrace_alloc_probe doesn't take effect in macro.cpp
Reviewed-by: thartmann, kvn, chagedorn
2021-12-03 13:31:06 +00:00
Maurizio Cimadamore
3f28a21414 8278144: Javadoc for MemorySegment::set/MemorySegment::setAtIndex is missing throws tag
Reviewed-by: sundar
2021-12-03 13:23:36 +00:00
Athijegannathan Sundararajan
ba2a8e5a49 8278205: jlink plugins should dump .class file in debug mode
Reviewed-by: jlaskey
2021-12-03 13:20:08 +00:00
Andrey Turbanov
18c54b4e1a 8274640: Cleanup unnecessary null comparison before instanceof check in java.desktop
Reviewed-by: aivanov
2021-12-03 13:04:26 +00:00
Albert Mingkun Yang
dda8f26ce0 8278139: G1: Refactor G1BlockOffsetTablePart::block_at_or_preceding
Reviewed-by: sjohanss, mli
2021-12-03 10:58:14 +00:00
Albert Mingkun Yang
e4774e68e3 8277916: Gather non-strong reference count logic in a single place
Reviewed-by: sjohanss, mli
2021-12-03 10:57:18 +00:00
Julia Boes
53df9ffbca 8278154: SimpleFileServer#createFileServer() should specify that the returned server is not started
Reviewed-by: dfuchs
2021-12-03 10:18:21 +00:00
Pavel Rappo
d1cad2463a 8278168: Add a few missing words to the specification of Files.mismatch
Reviewed-by: rriggs, bpb, iris, alanb
2021-12-03 09:54:23 +00:00
Andrew Leonard
45da3aea22 8278163: --with-cacerts-src variable resolved after GenerateCacerts recipe setup
Reviewed-by: ihse
2021-12-03 08:28:37 +00:00
Jan Lahoda
890700320a 8272234: Pass originating elements from Filer to JavaFileManager
Reviewed-by: jjg
2021-12-03 07:40:34 +00:00
Aleksey Shipilev
0fbd2713f1 8278115: gc/stress/gclocker/TestGCLockerWithSerial.java has duplicate -Xmx
Reviewed-by: mli, tschatzl
2021-12-03 07:20:39 +00:00
Aleksey Shipilev
bef5c7a286 8278116: runtime/modules/LoadUnloadModuleStress.java has duplicate -Xmx
Reviewed-by: dholmes
2021-12-03 07:19:48 +00:00
Jie Fu
473ececaf5 8278174: runtime/cds/appcds/LambdaWithJavaAgent.java fails with release VMs
Reviewed-by: dholmes
2021-12-03 06:00:14 +00:00
Chris Plummer
19ce33d5e7 8258512: serviceability/sa/TestJmapCore.java timed out on macOS 10.13.6
Reviewed-by: lmesnik, dcubed
2021-12-02 22:16:55 +00:00
Magnus Ihse Bursie
c93552c8bb 8277069: [REDO] JDK-8276743 Make openjdk build Zip Archive generation "reproducible"
Co-authored-by: Andrew Leonard <aleonard@openjdk.org>
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Reviewed-by: erikj
2021-12-02 21:31:13 +00:00
Tim Prinzing
b8ac0d20ce 8276681: Additional malformed Javadoc inline tags in JDK source
Reviewed-by: lancea
2021-12-02 21:22:43 +00:00
Alexey Ivanov
b310f301ef 8277396: [TESTBUG] In DefaultButtonModelCrashTest.java, frame is accessed from main thread
Reviewed-by: serb, psadhukhan
2021-12-02 20:59:46 +00:00
Brian Burkhalter
15345e3edc 8276661: (fs) UserDefinedFileAttributeView no longer works with long path (win)
Reviewed-by: alanb
2021-12-02 20:53:13 +00:00
Tim Prinzing
652b5f8546 8276674: Malformed Javadoc inline tags in JDK source
Reviewed-by: jjg, rriggs, prappo, bchristi
2021-12-02 20:47:29 +00:00
Scott Gibbons
e0f1fc783c 8277358: Accelerate CRC32-C
Co-authored-by: Greg Tucker <greg.b.tucker@intel.com>
Co-authored-by: Scott Gibbons <sgibbons@openjdk.org>
Reviewed-by: kvn, sviswanathan, ecaspole
2021-12-02 20:06:05 +00:00
Sergey Tsypanov
73a9654c26 8276806: Use Objects.checkFromIndexSize where possible in java.base
Reviewed-by: rriggs, lancea
2021-12-02 20:00:49 +00:00
Andrey Turbanov
30087cc1b8 8275342: Change nested classes in java.prefs to static nested classes
Reviewed-by: dfuchs, rriggs
2021-12-02 19:40:17 +00:00
Valerie Peng
669c90e23b 8278099: two sun/security/pkcs11/Signature tests failed with AssertionError
Reviewed-by: dcubed
2021-12-02 19:28:42 +00:00
Liam Miller-Cushon
4f15be2cd4 8277965: Enclosing instance optimization affects serialization
Reviewed-by: darcy
2021-12-02 19:17:09 +00:00
Ao Qi
8f196a2487 8278037: Clean up PPC32 related code in C1
Reviewed-by: jiefu, stuefe, shade, mdoerr
2021-12-02 18:57:23 +00:00
Joe Darcy
8b042d14b7 8257856: Make ClassFileVersionsTest.java robust to JDK version updates
Reviewed-by: alanb
2021-12-02 18:17:32 +00:00
Lance Andersen
ad1ff27b73 8277422: tools/jar/JarEntryTime.java fails with modified time mismatch
Reviewed-by: joehw, msheppar, naoto
2021-12-02 16:33:32 +00:00
Leo Korinth
7c4ef3abaf 8277985: G1: Compare max_parallel_refinement_threads to UINT_MAX
Reviewed-by: kbarrett, tschatzl
2021-12-02 15:59:50 +00:00
Andrew Leonard
dc2abc9f05 8278080: Add --with-cacerts-src='user cacerts folder' to enable deterministic cacerts generation
Reviewed-by: erikj
2021-12-02 15:36:43 +00:00
Adam Sotona
8d9cb2efe6 8278078: Cannot reference super before supertype constructor has been called
Reviewed-by: mcimadamore
2021-12-02 15:29:26 +00:00
Jie Fu
65960f712e 8277753: Long*VectorTests.java fail with "bad AD file" on x86_32 after JDK-8276162
Reviewed-by: kvn, thartmann
2021-12-02 15:15:06 +00:00
Roland Westrelin
3889af3f7d 8277906: Incorrect type for IV phi of long counted loops after CCP
Reviewed-by: thartmann, chagedorn
2021-12-02 15:09:58 +00:00
Calvin Cheung
d2b16c8985 8276126: Dump time class transformation causes heap objects of non-boot classes to be archived
Reviewed-by: iklam, minqi
2021-12-02 14:39:27 +00:00
Andy Herrick
7696897932 8276837: [macos]: Error when signing the additional launcher
Reviewed-by: asemenyuk, almatvee
2021-12-02 14:08:33 +00:00
Jim Laskey
3d98ec1b7b 8273056: java.util.random does not correctly sample exponential or Gaussian distributions
Co-authored-by: Guy Steele <gls@openjdk.org>
Reviewed-by: bpb, darcy
2021-12-02 13:00:14 +00:00
Hannes Wallnöfer
b79554bb5c 8278130: Failure in jdk/javadoc/tool/CheckManPageOptions.java after JDK-8274639
Reviewed-by: prappo
2021-12-02 11:33:46 +00:00
Maurizio Cimadamore
ea905bd3da 8277924: Small tweaks to foreign function and memory API
Reviewed-by: jvernee, psandoz
2021-12-02 11:22:31 +00:00
Albert Mingkun Yang
e002bfec8c 8278049: G1: add precondition to set_remainder_to_point_to_start
Reviewed-by: mli, tschatzl
2021-12-02 10:45:36 +00:00
Maurizio Cimadamore
16cfbc4f4c 8278071: typos in MemorySegment::set, MemorySegment::setAtIndex javadoc
Reviewed-by: iris
2021-12-02 10:41:36 +00:00
Markus Grönlund
84ca14d0e9 8277194: applications/runthese/RunThese30M.java crashes with jfrSymbolTable.cpp:305 assert(_instance != null)
Reviewed-by: shade
2021-12-02 09:56:39 +00:00
Hannes Wallnöfer
103da8fae1 8274639: Provide a way to disable warnings for cross-modular links
Reviewed-by: jjg
2021-12-02 09:40:24 +00:00
Patric Hedlin
088b244ec6 8251216: Implement MD5 intrinsics on AArch64
Co-authored-by: Ludovic Henry <luhenry@openjdk.org>
Reviewed-by: aph, neliasso
2021-12-02 09:25:12 +00:00
Joe Wang
a093cdddaf 8276657: XSLT compiler tries to define a class with empty name
Reviewed-by: naoto
2021-12-02 06:52:45 +00:00
Jayathirth D V
8198807b4a 8266435: WBMPImageReader.read() should not truncate the input stream
Reviewed-by: serb
2021-12-02 05:00:48 +00:00
Joe Wang
b226ab99c8 8276141: XPathFactory set/getProperty method
Reviewed-by: rriggs, naoto, lancea, iris, alanb
2021-12-02 02:50:13 +00:00
Jaikiran Pai
09522db5aa 8277647: [REDO] JDK-8277507 Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures
Reviewed-by: sundar
2021-12-02 01:29:52 +00:00
Hamlin Li
67745fa749 8276299: G1: Unify the wording buffer/node/element in G1SegmentedArrayXxx, G1CardSetXxx and related classes
Reviewed-by: tschatzl, ayang, iwalulya
2021-12-02 01:06:45 +00:00
Mikael Vidstedt
51d6d7a36b 8266839: Enable pandoc on macosx-aarch64 at Oracle
Reviewed-by: erikj
2021-12-01 20:21:38 +00:00
Hannes Wallnöfer
0dfb3a705d 8268582: javadoc throws NPE with --ignore-source-errors option
Reviewed-by: jjg
2021-12-01 18:19:26 +00:00
Andrew Leonard
f41e768bba 8277762: Allow configuration of HOTSPOT_BUILD_USER
Reviewed-by: erikj
2021-12-01 18:13:16 +00:00
Naoto Sato
a363b7b921 8177819: DateTimeFormatterBuilder zone parsing should recognise DST
8277049: ZonedDateTime parse in Fall DST transition fails to retain the correct zonename.

Reviewed-by: joehw, scolebourne
2021-12-01 17:14:53 +00:00
Paul Sandoz
9b3e672059 8278014: [vectorapi] Remove test run script
Reviewed-by: sviswanathan, jiefu, shade
2021-12-01 16:12:46 +00:00
Ravi Reddy
1e9ed54d36 8193682: Infinite loop in ZipOutputStream.close()
Reviewed-by: lancea, coffeys
2021-12-01 15:35:00 +00:00
Zhengyu Gu
abaa073bcb 8277946: NMT: Deprecate and remove VM.native_memory shutdown jcmd command option
Reviewed-by: stuefe, shade, dholmes
2021-12-01 13:14:09 +00:00
KIRIYAMA Takuya
37ff7f3b66 8277866: gc/epsilon/TestMemoryMXBeans.java failed with wrong initial heap size
Reviewed-by: tschatzl, shade
2021-12-01 12:47:26 +00:00
Aleksey Shipilev
8d7958e469 8277981: String Deduplication table is never cleaned up due to bad dead_factor_for_cleanup
Reviewed-by: zgu, kbarrett, tschatzl
2021-12-01 12:06:07 +00:00
Hamlin Li
bc6dce149e 8277736: G1: Allow forced evacuation failure of first N regions in collection set
Reviewed-by: ayang, tschatzl
2021-12-01 11:26:42 +00:00
Andrey Turbanov
0c29ee50f0 8274319: Replace usages of Collections.sort with List.sort call in jdk.jfr
Reviewed-by: egahlin
2021-12-01 11:09:31 +00:00
Julia Boes
f505396ccc 8277459: Add jwebserver tool
Reviewed-by: michaelm, dfuchs, ihse
2021-12-01 10:37:09 +00:00
Jayathirth D V
84aa0a191b 8278047: Few javax/imageio test regressed after JDK-8262297 fix
Reviewed-by: tschatzl
2021-12-01 10:22:17 +00:00
Alan Bateman
fde0b95ede 8277861: Terminally deprecate Thread.stop
Reviewed-by: rriggs, mchung, uschindler, dholmes
2021-12-01 08:44:51 +00:00
Christian Hagedorn
70d5dffb4e 8275326: C2: assert(no_dead_loop) failed: dead loop detected
Reviewed-by: kvn, thartmann
2021-12-01 08:24:59 +00:00
Jie Fu
349328c929 8277777: [Vector API] assert(r->is_XMMRegister()) failed: must be in x86_32.ad
Reviewed-by: thartmann, jbhateja
2021-12-01 07:19:44 +00:00
Masanori Yano
c733193543 8262297: ImageIO.write() method will throw IndexOutOfBoundsException
Reviewed-by: serb, jdv
2021-12-01 06:18:44 +00:00
Pavel Rappo
da2be99cfe 8277026: Remove blank lines remaining from snippet markup
Reviewed-by: jjg
2021-12-01 01:25:17 +00:00
Jaikiran Pai
0a01baaf2d 8277986: Typo in javadoc of java.util.zip.ZipEntry#setTime
Reviewed-by: alanb, iris, lancea
2021-12-01 01:17:07 +00:00
Weijun Wang
7049c13cf4 8231107: Allow store password to be null when saving a PKCS12 KeyStore
Reviewed-by: mullan
2021-12-01 01:01:57 +00:00
Weijun Wang
ab867f6c7c 8272162: S4U2Self ticket without forwardable flag
Reviewed-by: valeriep
2021-12-01 00:48:28 +00:00
Kim Barrett
dd73e3cea2 8277814: ConcurrentRefineThread should report rate when deactivating
Reviewed-by: tschatzl, sjohanss
2021-12-01 00:44:51 +00:00
Kim Barrett
65251f7693 8151594: Move concurrent refinement thread activation logging out of GC pause
Reviewed-by: tschatzl, ayang
2021-11-30 22:43:53 +00:00
Naoto Sato
f1c20e91d8 8190748: java/text/Format/DateFormat/DateFormatTest.java and NonGregorianFormatTest fail intermittently
Reviewed-by: rriggs, joehw, lancea
2021-11-30 22:41:36 +00:00
Jonathan Gibbons
2942646957 8276683: Malformed Javadoc inline tags in JDK source in com/sun/tools/javac/util/RawDiagnosticFormatter.java
Reviewed-by: darcy, prappo, iris
2021-11-30 22:07:07 +00:00
Petr Portnov
e30e676709 8277606: String(String) constructor could copy hashIsZero
Reviewed-by: redestad, rriggs
2021-11-30 20:50:13 +00:00
Daniel D. Daugherty
5a4a9bb9d5 8278019: ProblemList java/awt/dnd/BadSerializationTest/BadSerializationTest.java on linux and windows
Reviewed-by: prr
2021-11-30 20:40:10 +00:00
Kim Barrett
15a680647c 8277434: tests fail with "assert(is_forwarded()) failed: only decode when actually forwarded"
Reviewed-by: ayang, shade, tschatzl
2021-11-30 20:22:35 +00:00
Xin Liu
21d9ca6cd9 8274983: C1 optimizes the invocation of private interface methods
Reviewed-by: dlong, iveresov
2021-11-30 18:55:24 +00:00
Jorn Vernee
98a9f03739 8277602: Deopt code does not extend the stack enough if the caller is an optimize entry blob
Reviewed-by: dlong, thartmann
2021-11-30 14:34:00 +00:00
Albert Mingkun Yang
915084041f 8277899: Parallel: Simplify PSVirtualSpace::initialize logic
Reviewed-by: tschatzl, sjohanss
2021-11-30 13:42:18 +00:00
Maxim Kartashev
01cefc94c7 8277977: Incorrect references to --enable-reproducible-builds in docs
Reviewed-by: ihse
2021-11-30 13:01:17 +00:00
Adam Sotona
69f56a0ea0 8264485: build.tools.depend.Depend.toString(byte[]) creates malformed hex strings
Reviewed-by: jlahoda
2021-11-30 12:56:48 +00:00
Yi Yang
fecf906f0a 8267928: Loop predicate gets inexact loop limit before PhaseIdealLoop::rc_predicate
Reviewed-by: thartmann, chagedorn, kvn
2021-11-30 11:50:51 +00:00
Martin Doerr
a5f2a58ba4 8277846: Implement fast-path for ASCII-compatible CharsetEncoders on ppc64
Reviewed-by: lucy, mbaesken
2021-11-30 09:20:49 +00:00
Jie Fu
ceae380d3a 8277843: [Vector API] scalar2vector generates incorrect type info for mask operations if Op_MaskAll is unavailable
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Reviewed-by: thartmann, jbhateja
2021-11-30 08:33:00 +00:00
David Holmes
3ee26c6a81 8267767: Redundant condition check in SafepointSynchronize::thread_not_running
Reviewed-by: hseigel, coleenp, ayang
2021-11-30 08:21:16 +00:00
Albert Mingkun Yang
d230feea55 8277931: Parallel: Remove unused PSVirtualSpace::expand_into
Reviewed-by: tschatzl
2021-11-30 07:34:51 +00:00
Albert Mingkun Yang
fde6fe7997 8277824: Remove empty RefProcSubPhasesWorkerTimeTracker destructor
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Reviewed-by: tschatzl, kbarrett
2021-11-30 07:33:46 +00:00
Liam Miller-Cushon
27299eaa98 8277803: vmTestbase/nsk/jdi/TypeComponent/isSynthetic/issynthetic001 fails with "Synthetic fields not found"
Reviewed-by: dholmes, cjplummer, sspitsyn
2021-11-30 01:34:52 +00:00
MeryKitty
560f9c9372 8277426: Optimize mask reduction operations on x86
Reviewed-by: sviswanathan, jiefu
2021-11-29 23:21:04 +00:00
Jie Fu
3a4a94e5a8 8277854: The upper bound of GCCardSizeInBytes should be limited to 512 for 32-bit platforms
Reviewed-by: tschatzl, mli
2021-11-29 23:17:39 +00:00
Pavel Kharskii
825e633e71 8277944: JDK 18 - update GA Release Date
Reviewed-by: coffeys
2021-11-29 16:54:47 +00:00
Roman Kennke
3d39f09c6c 8277654: Shenandoah: Don't produce new memory state in C2 LRB runtime call
Reviewed-by: roland, shade
2021-11-29 16:00:09 +00:00
Zhengyu Gu
05ab176768 8277797: Remove undefined/unused SharedRuntime::trampoline_size()
Reviewed-by: dholmes, stuefe
2021-11-29 14:00:10 +00:00
Ivan Walulya
ad51d06925 8277789: G1: G1CardSetConfiguration prefixes num_ and max_ used interchangeably
Reviewed-by: mli, tschatzl
2021-11-29 13:10:06 +00:00
Volker Simonis
614c6e61fa 8277878: Fix compiler tests after JDK-8275908
Reviewed-by: thartmann, chagedorn
2021-11-29 12:29:06 +00:00
Hamlin Li
960bdde7eb 8277904: G1: Remove G1CardSetArray::max_entries
Reviewed-by: tschatzl
2021-11-29 12:19:45 +00:00
Albert Mingkun Yang
45e8973a22 8277896: Remove unused BOTConstants member methods
Reviewed-by: kbarrett
2021-11-29 12:13:51 +00:00
Thomas Schatzl
e5676f8d0b 8277450: Record number of references into collection set during gc
Reviewed-by: kbarrett, iwalulya
2021-11-29 12:05:10 +00:00
Thomas Schatzl
2622ab3fe9 8277928: Fix compilation on macosx-aarch64 after 8276108
Reviewed-by: shade, dholmes
2021-11-29 11:58:13 +00:00
Andrey Turbanov
37de442269 8275241: Unused ArrayList is created in RequestEngine.addHooks
Reviewed-by: egahlin
2021-11-29 10:50:43 +00:00
Patric Hedlin
72bacf8d25 8276108: Wrong instruction generation in aarch64 backend
Co-authored-by: Nick Gasson <ngasson@openjdk.org>
Reviewed-by: aph, neliasso
2021-11-29 10:34:13 +00:00
Julia Boes
e3e5908d0d 8277847: Support toolGuide tag in class-level documentation
Reviewed-by: alanb, jjg
2021-11-29 09:22:16 +00:00
Leo Korinth
9a3a9b1391 8277865: G1: Change integer division to floating point division
Reviewed-by: ayang, tschatzl
2021-11-29 09:06:13 +00:00
Nils Eliasson
aed53eea5e 8264838: IGV: enhance graph export functionality
Co-authored-by: Roberto Castañeda Lozano <rcastanedalo@openjdk.org>
Co-authored-by: Nils Eliasson <neliasso@openjdk.org>
Reviewed-by: chagedorn, thartmann
2021-11-29 08:19:24 +00:00
Christian Hagedorn
0c7a4b8aa8 8277842: IGV: Add jvms property to know where a node came from
Reviewed-by: roland, neliasso, thartmann
2021-11-29 07:47:28 +00:00
Ludvig Janiuk
c3a7f2f4bc 8277382: make c1 BlockMerger use IR::verify only when necessary
Reviewed-by: thartmann, neliasso
2021-11-29 06:41:55 +00:00
Ichiroh Takiguchi
8f9eb620ac 8274784: jshell: Garbled character was displayed by System.out.println(...) on Japanese Windows
Reviewed-by: naoto
2021-11-29 00:11:28 +00:00
Hamlin Li
e9b36a8316 8276670: G1: Rename G1CardSetFreePool and related classes
Reviewed-by: tschatzl, ayang
2021-11-27 00:46:09 +00:00
Erik Gahlin
b9eb532de2 8276685: Malformed Javadoc inline tags in JDK source in /jdk/management/jfr/RecordingInfo.java
Reviewed-by: mgronlun
2021-11-26 19:13:38 +00:00
Volker Simonis
40fef2311c 8275908: Record null_check traps for calls and array_check traps in the interpreter
Reviewed-by: chagedorn, mdoerr
2021-11-26 16:21:15 +00:00
Erik Österlund
3d810ad691 8277411: C2 fast_unlock intrinsic on AArch64 has unnecessary ownership check
Reviewed-by: ngasson, neliasso
2021-11-26 14:55:02 +00:00
Roman Kennke
ce0234b47d 8277860: PPC: Remove duplicate info != NULL check
Reviewed-by: chagedorn, mdoerr
2021-11-26 14:54:09 +00:00
Ludvig Janiuk
040b2c52d3 8277139: Improve code readability in PredecessorValidator (c1_IR.cpp)
Reviewed-by: thartmann, chagedorn
2021-11-26 09:52:10 +00:00
Roland Westrelin
3e798dd40c 8275330: C2: assert(n->is_Root() || n->is_Region() || n->is_Phi() || n->is_MachMerge() || def_block->dominates(block)) failed: uses must be dominated by definitions
Reviewed-by: thartmann, chagedorn
2021-11-26 09:48:09 +00:00
Roman Kennke
99e4bda303 8277417: C1 LIR instruction for load-klass
Reviewed-by: iveresov, mdoerr, ngasson, aph
2021-11-26 09:46:09 +00:00
Yadong Wang
00a6238dae 8277508: need to check has_predicated_vectors before calling scalable_predicate_reg_slots
Reviewed-by: njian, thartmann, ngasson
2021-11-26 09:09:02 +00:00
Stuart Monteith
3383c0dcc0 8277659: [TESTBUG] Microbenchmark ThreadOnSpinWaitProducerConsumer.java hangs
Reviewed-by: njian, ngasson
2021-11-26 09:02:58 +00:00
Mandy Chung
7e54d065a1 8277165: jdeps --multi-release --print-module-deps fails if module-info.class in different versioned directories
8277166: Data race in jdeps VersionHelper
8277123: jdeps does not report some exceptions correctly

Reviewed-by: jvernee, alanb
2021-11-26 01:55:58 +00:00
Andrey Turbanov
eb4d886bc0 8277504: Use String.stripTrailing instead of hand-crafted method in SwingUtilities2
Reviewed-by: pbansal, serb
2021-11-26 01:45:33 +00:00
Albert Mingkun Yang
9879920424 8277825: Remove unused ReferenceProcessorPhaseTimes::_sub_phases_total_time_ms
Reviewed-by: tschatzl
2021-11-25 14:54:48 +00:00
Ivan Walulya
f788834998 8277786: G1: Rename log2_card_region_per_heap_region used in G1CardSet
Reviewed-by: ayang, tschatzl, mli
2021-11-25 14:10:51 +00:00
Erik Österlund
3034ae87ce 8277631: ZGC: CriticalMetaspaceAllocation asserts
Reviewed-by: pliden, stefank, dholmes
2021-11-25 09:50:43 +00:00
Fairoz Matte
f0136ec945 8275687: runtime/CommandLine/PrintTouchedMethods test shouldn't catch RuntimeException
Reviewed-by: iklam, chagedorn
2021-11-25 08:37:31 +00:00
Daniel D. Daugherty
21e302a0f4 8270435: UT: MonitorUsedDeflationThresholdTest failed: did not find too_many string in output
Reviewed-by: dholmes
2021-11-25 04:27:21 +00:00
Jaikiran Pai
a81e4fc07b 8258117: jar tool sets the time stamp of module-info.class entries to the current time
Reviewed-by: lancea, ihse, alanb
2021-11-25 02:12:03 +00:00
Daniel D. Daugherty
26472bd3bd 8277811: ProblemList vmTestbase/nsk/jdi/TypeComponent/isSynthetic/issynthetic001/TestDescription.java
8277813: ProblemList vmTestbase/nsk/jvmti/AttachOnDemand/attach002a/TestDescription.java

Reviewed-by: dholmes
2021-11-24 22:27:24 +00:00
Lance Andersen
b5841ba3f3 8277806: 4 tools/jar failures per platform after JDK-8272728
Reviewed-by: alanb, jjg
2021-11-24 20:42:29 +00:00
Pavel Rappo
e785f69961 8276124: Provide snippet support for properties files
Co-authored-by: Jonathan Gibbons <jjg@openjdk.org>
Co-authored-by: Hannes Wallnöfer <hannesw@openjdk.org>
Reviewed-by: jjg
2021-11-24 20:13:06 +00:00
Leonid Mesnik
96fe1d0d4d 8264605: vmTestbase/nsk/jvmti/SuspendThread/suspendthrd003/TestDescription.java failed with "agent_tools.cpp, 471: (foundThread = (jthread) jni_env->NewGlobalRef(foundThread)) != NULL"
Reviewed-by: sspitsyn, dholmes
2021-11-24 20:11:18 +00:00
Andrey Turbanov
077b2de088 8274161: Cleanup redundant casts in jdk.compiler
Reviewed-by: vromero
2021-11-24 18:47:50 +00:00
Adam Sotona
951247c8cb 8235876: Misleading warning message in java source-file mode
Reviewed-by: vromero
2021-11-24 17:03:53 +00:00
Christian Stein
663e33de13 8272728: javac ignores any -J option in @argfiles silently
Reviewed-by: jjg
2021-11-24 16:50:25 +00:00
Roger Riggs
0384739afc 8276665: ObjectInputStream.GetField.get(name, object) should throw ClassNotFoundException
Reviewed-by: naoto, lancea, smarks
2021-11-24 15:14:22 +00:00
Thomas Stuefe
cf7adae633 8275320: NMT should perform buffer overrun checks
8275320: NMT should perform buffer overrun checks
8275301: Unify C-heap buffer overrun checks into NMT

Reviewed-by: simonis, zgu
2021-11-24 12:12:23 +00:00
Maurizio Cimadamore
96e36071b6 8275063: Implementation of Foreign Function & Memory API (Second incubator)
Reviewed-by: erikj, psandoz, jvernee, darcy
2021-11-24 11:51:16 +00:00
KIRIYAMA Takuya
17e68caad7 8277042: add test for 8276036 to compiler/codecache
Reviewed-by: chagedorn, thartmann
2021-11-24 11:22:43 +00:00
Ludvig Janiuk
8a8bc29f20 8277562: Remove dead method c1 If::swap_sux
Reviewed-by: thartmann, neliasso
2021-11-24 11:03:07 +00:00
Jan Lahoda
d085c2b8a7 8273328: Compiler implementation for Pattern Matching for switch (Second Preview)
Reviewed-by: vromero, mcimadamore
2021-11-24 10:07:49 +00:00
Stefan Karlsson
6d734604a3 8277399: ZGC: Move worker thread logging out of gc+phase=debug
Reviewed-by: eosterlund, pliden
2021-11-24 08:26:22 +00:00
Stefan Karlsson
712b875682 8277397: ZGC: Add JFR event for temporary latency measurements
Reviewed-by: eosterlund, jbachorik, pliden, mgronlun
2021-11-24 08:25:03 +00:00
Evgeny Astigeevich
7b2d823e84 8277503: compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java failed with "OnSpinWaitInst with the expected value 'isb' not found."
Reviewed-by: chagedorn, aph, phh
2021-11-23 20:05:57 +00:00
Leonid Mesnik
7cb56a230d 8265796: vmTestbase/nsk/jdi/ObjectReference/referringObjects/referringObjects002/referringObjects002.java fails when running with JEP 416
Reviewed-by: cjplummer, mchung
2021-11-23 19:27:50 +00:00
Andrew Leonard
24e586a043 8276764: Enable deterministic file content ordering for Jar and Jmod
Reviewed-by: mchung, ihse
2021-11-23 18:28:30 +00:00
Liam Miller-Cushon
ea85e01a4c 8271623: Omit enclosing instance fields from inner classes that don't use it
Reviewed-by: vromero, jlahoda
2021-11-23 18:14:47 +00:00
Mandy Chung
032067264f 8277451: java.lang.reflect.Field::set on static field with invalid argument type should throw IAE
Reviewed-by: alanb
2021-11-23 17:14:59 +00:00
Daniel D. Daugherty
e8acac2aba 8277350: runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java times out
Reviewed-by: hseigel, dholmes, lmesnik
2021-11-23 17:08:31 +00:00
Jan Lahoda
8a44e093dc 8268725: jshell does not support the --enable-native-access option
Reviewed-by: sundar
2021-11-23 16:46:45 +00:00
Vicente Romero
7b67a49f83 8261847: performance of java.lang.Record::toString should be improved
Reviewed-by: jlaskey, redestad
2021-11-23 15:23:23 +00:00
Christian Hagedorn
38802ad56a 8254108: ciReplay: Support incremental inlining
Reviewed-by: dlong, thartmann
2021-11-23 15:22:11 +00:00
Daniel D. Daugherty
64bdc84390 8277649: [BACKOUT] JDK-8277507 Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures
Reviewed-by: alanb, stefank
2021-11-23 15:16:15 +00:00
Roger Riggs
5e7e2da227 8272042: java.util.ImmutableCollections$Map1 and MapN should not be @ValueBased
Reviewed-by: mchung, iris, naoto, smarks
2021-11-23 15:02:48 +00:00
Erik Österlund
f4dc03ea6d 8276696: ParallelObjectIterator freed at the wrong time in VM_HeapDumper
Reviewed-by: pliden, stefank
2021-11-23 14:34:21 +00:00
Tobias Hartmann
90f96fb4db 8277441: CompileQueue::add fails with assert(_last->next() == __null) failed: not last
Reviewed-by: chagedorn, neliasso
2021-11-23 12:46:15 +00:00
Andrey Turbanov
66eaf65261 8277413: Remove unused local variables in jdk.hotspot.agent
Reviewed-by: lmesnik, tschatzl, sspitsyn
2021-11-23 12:33:13 +00:00
Albert Mingkun Yang
36b887a885 8277560: Remove WorkerDataArray::_is_serial
Reviewed-by: sjohanss, tschatzl
2021-11-23 10:57:29 +00:00
Albert Mingkun Yang
017df140ba 8277556: Call ReferenceProcessorPhaseTimes::set_processing_is_mt once
Reviewed-by: sjohanss, tschatzl
2021-11-23 10:56:15 +00:00
Volker Simonis
79350b9b4f 8276216: Negated character classes performance regression in Pattern
Reviewed-by: clanger
2021-11-23 09:15:20 +00:00
Sergey Bylokhov
e3243ee963 8277087: ZipException: zip END header not found at ZipFile#Source.findEND
Reviewed-by: lancea
2021-11-23 08:57:34 +00:00
Jaikiran Pai
12f08ba4d4 8277507: Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures
Reviewed-by: almatvee
2021-11-23 08:19:16 +00:00
Hamlin Li
bb11c55dff 8277542: G1: Move G1CardSetFreePool and related classes to separate files
Reviewed-by: ayang, tschatzl
2021-11-23 00:58:03 +00:00
Dean Long
f62b81c3b5 8273095: vmTestbase/vm/mlvm/anonloader/stress/oome/heap/Test.java fails with "wrong OOME"
Reviewed-by: shade, stefank
2021-11-22 23:17:46 +00:00
Dean Long
05a9a51dbf 8277423: ciReplay: hidden class with comment expected error
Reviewed-by: chagedorn, thartmann
2021-11-22 20:50:06 +00:00
Daniel D. Daugherty
1049aba1fb 8277576: ProblemList runtime/ErrorHandling/CreateCoredumpOnCrash.java on macosx-X64
8277577: ProblemList compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java on linux-aarch64
8277578: ProblemList applications/jcstress/acqrel.java on linux-aarch64

Reviewed-by: mikael
2021-11-22 19:03:30 +00:00
Alexander Zuev
851a362479 8264297: Create implementation for NSAccessibilityProgressIndicator protocol peer
Reviewed-by: pbansal
2021-11-22 18:26:51 +00:00
Coleen Phillimore
6cf4cd1aa4 8273341: Update Siphash to version 1.0
Reviewed-by: dholmes
2021-11-22 18:08:13 +00:00
Alexey Semenyuk
e3911a8532 8277429: Conflicting jpackage static library name
Reviewed-by: almatvee, herrick, erikj
2021-11-22 18:04:46 +00:00
Leonid Mesnik
33e2a518eb 8265795: vmTestbase/nsk/jvmti/AttachOnDemand/attach022/TestDescription.java fails when running with JEP 416
Reviewed-by: sspitsyn, dholmes
2021-11-22 17:11:34 +00:00
Joe Darcy
22f12ac429 8277522: Make formatting of null consistent in Elements
Reviewed-by: jlahoda
2021-11-22 16:59:23 +00:00
Jatin Bhateja
e529865531 8277239: SIGSEGV in vrshift_reg_maskedNode::emit
Reviewed-by: sviswanathan, dlong
2021-11-22 16:38:52 +00:00
Jim Laskey
8683de5eda 8274685: Documentation suggests there are ArbitrarilyJumpableGenerator when none
Co-authored-by: Guy Steele <gls@openjdk.org>
Reviewed-by: rriggs
2021-11-22 16:19:23 +00:00
Jim Laskey
6b4fbaedbb 8273792: JumpableGenerator.rngs() documentation refers to wrong method
Co-authored-by: Guy Steele <gls@openjdk.org>
Reviewed-by: rriggs
2021-11-22 16:17:01 +00:00
Hamlin Li
d427c79d3b 8277428: G1: Move and inline G1STWIsAliveClosure::do_object_b
Reviewed-by: tschatzl, sjohanss
2021-11-22 11:27:05 +00:00
Serguei Spitsyn
32839ba012 8266593: vmTestbase/nsk/jvmti/PopFrame/popframe011 fails with "assert(java_thread == _state->get_thread()) failed: Must be"
Reviewed-by: mdoerr, lmesnik, dcubed
2021-11-22 10:47:47 +00:00
Albert Mingkun Yang
8051041eb2 8277534: Remove unused ReferenceProcessor::has_discovered_references
Reviewed-by: tschatzl
2021-11-22 09:59:09 +00:00
Aleksey Shipilev
3f847fe89a 8277385: Zero: Enable CompactStrings support
Reviewed-by: redestad, adinn
2021-11-22 09:09:21 +00:00
TatWai Chong
ca31ed5335 8275448: [REDO] AArch64: Implement string_compare intrinsic in SVE
Reviewed-by: ngasson, aph
2021-11-22 02:31:33 +00:00
Joe Darcy
4ff43010bb 8224922: Access JavaFileObject from Element(s)
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Reviewed-by: jjg
2021-11-21 20:42:37 +00:00
Jie Fu
0a9e76c4f9 8277485: Zero: Fix _fast_{i,f}access_0 bytecodes handling
Reviewed-by: sgehwolf, shade
2021-11-20 10:12:26 +00:00
Vishal Chand
1c215f3369 8272773: Configurable card table card size
Reviewed-by: tschatzl, ayang
2021-11-20 10:03:45 +00:00
Derek White
1d7cef33c5 8276662: Scalability bottleneck in SymbolTable::lookup_common()
Reviewed-by: redestad, dholmes, iklam, shade
2021-11-20 00:48:32 +00:00
Daniel D. Daugherty
c79a485f1c 8277494: [BACKOUT] JDK-8276150 Quarantined jpackage apps are labeled as "damaged"
Reviewed-by: asemenyuk, tschatzl
2021-11-19 22:37:28 +00:00
Pavel Rappo
2ab43ec242 8273544: Increase test coverage for snippets
Reviewed-by: jjg
2021-11-19 20:51:22 +00:00
Yasumasa Suenaga
2d4af2255f 8277370: configure script cannot distinguish WSL version
Reviewed-by: erikj
2021-11-19 20:24:17 +00:00
Thomas Stuefe
a3406a1d8a 8277092: TestMetaspaceAllocationMT2.java#ndebug-default fails with "RuntimeException: Committed seems high: NNNN expected at most MMMM"
Reviewed-by: coleenp
2021-11-19 19:49:57 +00:00
Andrey Turbanov
e47cc81b09 8275386: Change nested classes in jdk.jlink to static nested classes
Reviewed-by: alanb, rriggs, iris
2021-11-19 18:51:13 +00:00
Andrey Turbanov
f609b8fd74 8274946: Cleanup unnecessary calls to Throwable.initCause() in java.rmi
Reviewed-by: iris, rriggs
2021-11-19 18:50:03 +00:00
Andrey Turbanov
36b59f3814 8274333: Redundant null comparison after Pattern.split
Reviewed-by: mullan, weijun, rriggs, iris
2021-11-19 18:49:04 +00:00
Andrey Turbanov
6677554374 8274949: Use String.contains() instead of String.indexOf() in java.base
Reviewed-by: weijun, dfuchs, vtewari, lancea
2021-11-19 18:48:06 +00:00
Coleen Phillimore
09e8c8c64a 8277342: vmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV in InstanceKlass::jni_id_for
Reviewed-by: dholmes, hseigel
2021-11-19 17:48:43 +00:00
Stefan Karlsson
976c2bb056 8277212: GC accidentally cleans valid megamorphic vtable inline caches
Reviewed-by: eosterlund, pliden, coleenp, thartmann
2021-11-19 15:34:22 +00:00
Sean Mullan
03f8c0fb93 8275887: jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled
Reviewed-by: weijun
2021-11-19 14:36:07 +00:00
Andy Herrick
936f7ff49e 8276150: Quarantined jpackage apps are labeled as "damaged"
Reviewed-by: almatvee
2021-11-19 14:23:04 +00:00
Magnus Ihse Bursie
a0227965bb 8275745: Reproducible copyright headers
Reviewed-by: ihse, erikj
2021-11-19 13:55:08 +00:00
Claes Redestad
b1a1bf4e30 8277427: Update jib-profiles.js to use JMH 1.33 devkit
Reviewed-by: shade, erikj
2021-11-19 13:25:40 +00:00
Daniel Fuchs
03debf2775 8276774: Cookie stored in CookieHandler not sent if user headers contain cookie
Reviewed-by: michaelm
2021-11-19 13:18:12 +00:00
Jie Fu
b15e6f076a 8277449: compiler/vectorapi/TestLongVectorNeg.java fails with release VMs
Reviewed-by: thartmann, chagedorn
2021-11-19 10:38:42 +00:00
Hamlin Li
11d819d68a 8277439: G1: Correct include guard name in G1EvacFailureObjectsSet.hpp
Reviewed-by: tschatzl, sjohanss
2021-11-19 10:15:30 +00:00
Albert Mingkun Yang
7a046e0f76 8277371: Remove unnecessary DefNewGeneration::ref_processor_init()
Reviewed-by: stefank, tschatzl, mli
2021-11-19 08:31:09 +00:00
Tobias Hartmann
3a76d39794 8277324: C2 compilation fails with "bad AD file" on x86-32 after JDK-8276162 due to missing match rule
Reviewed-by: chagedorn, roland
2021-11-19 08:23:45 +00:00
Jan Lahoda
2f20b0d8da 8273039: JShell crashes when naming variable or method "abstract" or "strictfp"
Reviewed-by: vromero
2021-11-19 07:49:58 +00:00
Tobias Hartmann
f34f119080 8277213: CompileTask_lock is acquired out of order with MethodCompileQueue_lock
Reviewed-by: rbackman, coleenp
2021-11-19 07:13:05 +00:00
Tobias Hartmann
47564caeb0 8275643: C2's unaryOp vector intrinsic does not properly handle LongVector.neg
Reviewed-by: chagedorn, sviswanathan
2021-11-19 07:07:17 +00:00
Yi Yang
2f0bde1a65 8277102: Dubious PrintCompilation output
Reviewed-by: thartmann, dnsimon
2021-11-19 02:04:48 +00:00
Man Cao
839033baf6 8276976: Rename LIR_OprDesc to LIR_Opr
Co-authored-by: Chuck Rasbold <rasbold@openjdk.org>
Reviewed-by: thartmann, iveresov
2021-11-18 23:35:01 +00:00
Roman Kennke
89b125f4d4 8275527: Refactor forward pointer access
Reviewed-by: tschatzl, stefank
2021-11-18 21:32:00 +00:00
Harold Seigel
36bd4a35fb 8277404: Test VMDeprecatedOptions.java failing with Unable to create shared archive file
Reviewed-by: dcubed
2021-11-18 20:06:13 +00:00
Niklas Radomski
57eb864765 8276927: [PPC64] Port shenandoahgc to linux on ppc64le
Reviewed-by: rkennke, ihse, mdoerr
2021-11-18 19:00:58 +00:00
Daniel D. Daugherty
8db0c361a3 8277414: ProblemList runtime/CommandLine/VMDeprecatedOptions.java on windows-x64
Reviewed-by: mikael, iklam
2021-11-18 18:40:26 +00:00
Sergey Bylokhov
03473b4c27 8270874: JFrame paint artifacts when dragged from standard monitor to HiDPI monitor
Reviewed-by: jdv
2021-11-18 18:25:38 +00:00
Thomas Schatzl
ce0f00f66e 8276093: Improve naming in closures to iterate over card sets
Reviewed-by: sjohanss, ayang
2021-11-18 16:59:41 +00:00
Alexander Zuev
5d249c46ab 8275071: [macos] A11y cursor gets stuck when combobox is closed
Reviewed-by: serb, pbansal
2021-11-18 16:07:38 +00:00
Albert Mingkun Yang
354a34ea20 8277336: Improve CollectedHeap::safepoint_workers comments
Reviewed-by: sjohanss, tschatzl
2021-11-18 15:54:04 +00:00
Prasanta Sadhukhan
276bfcd1a1 8277407: javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java fails to compile after JDK-8276058
Reviewed-by: dcubed
2021-11-18 15:17:59 +00:00
Erik Österlund
d93b238f97 8277180: Intrinsify recursive ObjectMonitor locking for C2 x64 and A64
Reviewed-by: aph, ngasson
2021-11-18 14:44:58 +00:00
Erik Österlund
00c388b4ab 8259643: ZGC can return metaspace OOM prematurely
Reviewed-by: stefank, pliden, stuefe
2021-11-18 14:32:59 +00:00
Sean Mullan
a44b45fdf3 4337793: Mark non-serializable fields of java.security.cert.Certificate and CertPath
Reviewed-by: valeriep, rriggs
2021-11-18 13:48:12 +00:00
Harold Seigel
b3a62b4881 8276795: Deprecate seldom used CDS flags
Reviewed-by: dholmes, ccheung, iklam
2021-11-18 13:18:37 +00:00
Evgeny Astigeevich
38345bd28d 8277137: Set OnSpinWaitInst/OnSpinWaitInstCount defaults to "isb"/1 for Arm Neoverse N1
Reviewed-by: phh, aph, ngasson
2021-11-18 11:18:15 +00:00
Erik Österlund
2c06bca98f 8266368: Inaccurate after_unwind hook in C2 exception handler
Reviewed-by: dlong, thartmann
2021-11-18 11:17:00 +00:00
Albert Mingkun Yang
77cc508802 8277215: Remove redundancy in ReferenceProcessor constructor args
Reviewed-by: tschatzl, sjohanss
2021-11-18 10:52:55 +00:00
Andrey Turbanov
0a65e8b282 8276794: Change nested classes in java.desktop to static nested classes
Reviewed-by: serb, aivanov
2021-11-18 10:48:16 +00:00
Ioi Lam
db55f9272c 8277343: dynamicArchive/SharedArchiveFileOption.java failed: '-XX:+RecordDynamicDumpInfo is unsupported when a dynamic CDS archive is specified in -XX:SharedArchiveFile:' missing
Reviewed-by: hseigel, ccheung
2021-11-18 08:49:07 +00:00
Doug Simon
2f4b5405f0 8276314: [JVMCI] check alignment of call displacement during code installation
Reviewed-by: kvn
2021-11-18 08:32:54 +00:00
Prasanta Sadhukhan
91607436b7 8276058: Some swing test fails on specific CI macos system
Reviewed-by: prr, kizune
2021-11-18 04:33:49 +00:00
Fei Gao
81938001f9 8274179: AArch64: Support SVE operations with encodable immediates
Reviewed-by: aph, ngasson
2021-11-18 02:41:27 +00:00
Naoto Sato
b8453ebdb4 8275007: Java fails to start with null charset if LC_ALL is set to certain locales
Reviewed-by: rriggs, iris, joehw, alanb
2021-11-18 01:13:26 +00:00
Naoto Sato
231fb61aae 8276970: Default charset for PrintWriter that wraps PrintStream
Reviewed-by: rriggs, alanb
2021-11-18 01:12:12 +00:00
Sergey Bylokhov
29e552c03a 8272358: Some tests may fail when executed with other locales than the US
Reviewed-by: aivanov
2021-11-17 22:21:38 +00:00
Daniel D. Daugherty
ce4471f806 8277346: ProblemList 7 serviceability/sa tests on macosx-x64
8277351: ProblemList runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java on macosx-x64

Reviewed-by: tschatzl, bpb
2021-11-17 21:23:38 +00:00
Albert Mingkun Yang
45a60db5a0 8277045: G1: Remove unnecessary set_concurrency call in G1ConcurrentMark::weak_refs_work
Reviewed-by: tschatzl, sjohanss
2021-11-17 21:02:13 +00:00
Sean Coffey
6bb04626af 8277224: sun.security.pkcs.PKCS9Attributes.toString() throws NPE
Reviewed-by: weijun
2021-11-17 20:50:46 +00:00
Dean Long
d8c0280273 8277316: ciReplay: dump_replay_data is not thread-safe
Reviewed-by: chagedorn, thartmann
2021-11-17 20:26:25 +00:00
Joe Darcy
007ad7c77c 8277303: Terminology mismatch between JLS17-3.9 and SE17's javax.lang.model.SourceVersion method specs
Reviewed-by: iris, jjg
2021-11-17 20:23:43 +00:00
Dean Long
8881f29bc8 8277310: ciReplay: @cpi MethodHandle references not resolved
Reviewed-by: chagedorn, thartmann
2021-11-17 20:18:07 +00:00
Weijun Wang
262d07001b 8277246: Check for NonRepudiation as well when validating a TSA certificate
Reviewed-by: xuelei, mullan
2021-11-17 20:03:55 +00:00
Coleen Phillimore
a907b2b144 8276177: nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with "assert(def_ik->is_being_redefined()) failed: should be being redefined to get here"
Reviewed-by: hseigel, sspitsyn
2021-11-17 19:53:55 +00:00
Alex Kasko
b6876649a8 8277159: Fix java/nio/file/FileStore/Basic.java test by ignoring /run/user/* mount points
Reviewed-by: bpb, shade
2021-11-17 17:48:07 +00:00
Alexander Zuev
8f5a8f740b 8264293: Create implementation for NSAccessibilityMenu protocol peer
8264296: Create implementation for NSAccessibilityPopUpButton protocol peer
8264295: Create implementation for NSAccessibilityMenuItem protocol peer
8264294: Create implementation for NSAccessibilityMenuBar protocol peer

Reviewed-by: pbansal, ant
2021-11-17 17:36:53 +00:00
Harold Seigel
9f2f46ee45 8275037: Test vmTestbase/nsk/sysdict/vm/stress/btree/btree011/btree011.java crashes with memory exhaustion on Windows
Reviewed-by: coleenp
2021-11-17 14:25:17 +00:00
Kevin Walls
2af9e5976f 8276139: TestJpsHostName.java not reliable, better to expand HostIdentifierCreate.java test
Reviewed-by: jiefu, sspitsyn
2021-11-17 11:59:52 +00:00
Albert Mingkun Yang
e9934e1243 8277221: G1: Remove methods without implementations in G1CollectedHeap
Reviewed-by: tschatzl
2021-11-17 09:59:55 +00:00
Faye Gao
9aa30de4bb 8275317: AArch64: Support some type conversion vectorization in SLP
Reviewed-by: thartmann, ngasson
2021-11-17 08:19:46 +00:00
Fairoz Matte
08f65a59a7 8277313: Validate header failed for test/jdk/java/net/httpclient/HeadTest.java
Reviewed-by: jdv
2021-11-17 06:13:26 +00:00
Jaikiran Pai
23e5117a55 8276559: (httpclient) Consider adding an HttpRequest.Builder.HEAD method to build a HEAD request.
Reviewed-by: cstein, dfuchs
2021-11-17 03:20:40 +00:00
Ioi Lam
a77d8ddf11 8276787: Improve warning messages for -XX:+RecordDynamicDumpInfo
Reviewed-by: ccheung, stuefe
2021-11-16 21:03:33 +00:00
Roger Riggs
8ed384cfb6 8276609: Document setting property jdk.serialFilter to an invalid value throws ExceptionInInitializerError
Reviewed-by: dfuchs, lancea
2021-11-16 20:53:49 +00:00
Daniel Jelinski
cddc6ce446 8275811: Incorrect instance to dispose
Reviewed-by: xuelei
2021-11-16 20:34:15 +00:00
Alexander Zuev
b0a463fa59 8169468: NoResizeEventOnDMChangeTest.java fails because FS Window didn't receive all resizes!
Reviewed-by: serb
2021-11-16 19:01:53 +00:00
Dean Long
e5ffdf9120 8276231: ciReplay: SIGSEGV when replay compiling lambdas
Reviewed-by: iveresov, chagedorn
2021-11-16 17:25:38 +00:00
Yasumasa Suenaga
d5e47d6b84 8277089: Use system binutils to build hsdis
Reviewed-by: ihse
2021-11-16 14:47:42 +00:00
MeryKitty
f3eb5014aa 8276162: Optimise unsigned comparison pattern
Reviewed-by: thartmann, kvn
2021-11-16 14:09:53 +00:00
Jayathirth D V
9a9a157a7d 8276905: Use appropriate macosx_version_minimum value while compiling metal shaders
Reviewed-by: ihse, kcr, erikj, prr
2021-11-16 13:18:56 +00:00
Hamlin Li
7906eb050d 8277119: Add asserts in GenericTaskQueueSet methods
Reviewed-by: tschatzl
2021-11-16 11:37:37 +00:00
Andrey Turbanov
1c45c8a082 8274757: Cleanup unnecessary calls to Throwable.initCause() in java.management module
Reviewed-by: dfuchs, sspitsyn
2021-11-16 11:19:01 +00:00
Andrey Turbanov
c06df25a4f 8274662: Replace 'while' cycles with iterator with enhanced-for in jdk.hotspot.agent
Reviewed-by: amenkov, cjplummer, sspitsyn
2021-11-16 11:18:10 +00:00
Andrey Turbanov
9629627e2c 8274163: Use String.equals instead of String.compareTo in jdk.jcmd
Reviewed-by: cjplummer, amenkov, sspitsyn
2021-11-16 11:17:08 +00:00
Andrey Turbanov
0bc268377e 8274190: Use String.equals instead of String.compareTo in jdk.internal.jvmstat
Reviewed-by: cjplummer, sspitsyn
2021-11-16 11:15:52 +00:00
Andrey Turbanov
a9cb8bdbaa 8274168: Avoid String.compareTo == 0 to check String equality in java.management
Reviewed-by: sspitsyn, dfuchs, cjplummer, dholmes
2021-11-16 11:14:37 +00:00
Andrey Turbanov
20f3872d1c 8274261: Use enhanced-for instead of plain 'for' in jdk.jcmd
Reviewed-by: sspitsyn, cjplummer
2021-11-16 11:13:24 +00:00
Thomas Stuefe
b8d33a2a4e 8277029: JMM GetDiagnosticXXXInfo APIs should verify output array sizes
Reviewed-by: dholmes, sspitsyn
2021-11-16 09:49:03 +00:00
Stefan Johansson
1d79cfd3a1 8276229: Stop allowing implicit updates in G1BlockOffsetTable
Reviewed-by: tschatzl, ayang
2021-11-16 08:27:34 +00:00
Thomas Stuefe
7719a74cec 8277172: Remove stray comment mentioning instr_size_for_decode_klass_not_null on x64
Reviewed-by: dholmes
2021-11-16 07:49:43 +00:00
Aleksey Shipilev
e4362007da 8008243: Zero: Implement fast bytecodes
Reviewed-by: rkennke, coleenp
2021-11-16 07:32:34 +00:00
Calvin Cheung
bd92674be5 8276184: Exclude lambda proxy class from the CDS archive if its caller class is excluded
Reviewed-by: iklam, dholmes
2021-11-16 02:34:36 +00:00
Paul Sandoz
a59c9b2ac2 8271515: Integration of JEP 417: Vector API (Third Incubator)
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org>
Co-authored-by: Ningsheng Jian <njian@openjdk.org>
Co-authored-by: Xiaohong Gong <xgong@openjdk.org>
Co-authored-by: Eric Liu <eliu@openjdk.org>
Co-authored-by: Jie Fu <jiefu@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Co-authored-by: John R Rose <jrose@openjdk.org>
Co-authored-by: Paul Sandoz <psandoz@openjdk.org>
Co-authored-by: Rado Smogura <mail@smogura.eu>
Reviewed-by: kvn, sviswanathan, ngasson
2021-11-15 21:48:38 +00:00
Dean Long
9326eb1461 8276095: ciReplay: replay failure due to incomplete ciMethodData information
Reviewed-by: chagedorn, kvn
2021-11-15 21:09:23 +00:00
Andrey Turbanov
7a870418a3 8275385: Change nested classes in jdk.jdi to static nested classes
Reviewed-by: sspitsyn, amenkov, cjplummer
2021-11-15 19:18:35 +00:00
Andrey Turbanov
db0c8d5227 8274232: Cleanup unnecessary null comparison before instanceof check in jdk.jdi
Reviewed-by: cjplummer, sspitsyn
2021-11-15 19:14:17 +00:00
Thomas Schatzl
1830b8da90 8275056: Virtualize G1CardSet containers over heap region
Reviewed-by: sjohanss, ayang
2021-11-15 18:09:32 +00:00
Alexey Semenyuk
fe45835f7c 8274856: Failing jpackage tests with fastdebug/release build
Reviewed-by: almatvee, herrick
2021-11-15 17:57:58 +00:00
Alexey Semenyuk
9046077fe6 8276084: Linux DEB Bundler: release number in outputted .deb file should be optional
Reviewed-by: almatvee, herrick
2021-11-15 17:57:06 +00:00
Hannes Wallnöfer
7fc344dc96 8277028: Use service type documentation as fallback for @provides
Reviewed-by: prappo
2021-11-15 15:53:43 +00:00
Thomas Schatzl
35a831d5a7 8272170: Missing memory barrier when checking active state for regions
Reviewed-by: sjohanss, ayang
2021-11-15 14:34:19 +00:00
Albert Mingkun Yang
02f7900882 8276932: G1: Annotate methods with override explicitly in g1CollectedHeap.hpp
Reviewed-by: tschatzl, sjohanss
2021-11-15 12:46:38 +00:00
Pavel Rappo
fdcd16a38f 8277048: Tiny improvements to the specification text for java.util.Properties.load
Reviewed-by: rriggs, iris, naoto
2021-11-15 11:25:23 +00:00
Hamlin Li
b231f5baa9 8276921: G1: Remove redundant failed evacuation regions calculation in RemoveSelfForwardPtrHRClosure
Reviewed-by: ayang, tschatzl
2021-11-15 10:08:14 +00:00
Richard Reingruber
ca2efb73f5 8274687: JDWP deadlocks if some Java thread reaches wait in blockOnDebuggerSuspend
Reviewed-by: cjplummer, sspitsyn, rschmelter
2021-11-15 07:02:22 +00:00
Thomas Stuefe
296780c7ae 8276983: Small fixes to DumpAllocStat::print_stats
Reviewed-by: dholmes, iklam
2021-11-15 06:47:15 +00:00
Man Cao
8c5f030491 8276453: Undefined behavior in C1 LIR_OprDesc causes SEGV in fastdebug build
Co-authored-by: Chuck Rasbold <rasbold@openjdk.org>
Co-authored-by: James Y Knight <jyknight@google.com>
Reviewed-by: kvn, dlong
2021-11-12 22:34:10 +00:00
Daniel D. Daugherty
176d21d6c5 8276824: refactor Thread::is_JavaThread_protected
Reviewed-by: coleenp, rehn, dholmes
2021-11-12 19:06:01 +00:00
Daniel D. Daugherty
74f3e69dc8 8277071: [BACKOUT] JDK-8276743 Make openjdk build Zip Archive generation "reproducible"
Reviewed-by: erikj
2021-11-12 18:46:39 +00:00
Lance Andersen
b85500e524 8276123: ZipFile::getEntry will not return a file entry when there is a directory entry of the same name within a Zip File
Reviewed-by: redestad, alanb
2021-11-12 17:12:13 +00:00
Coleen Phillimore
0d2980cdd1 8258192: Obsolete the CriticalJNINatives flag
Reviewed-by: mdoerr, shade
2021-11-12 17:03:33 +00:00
Andrey Turbanov
5a2452c80e 8274835: Remove unnecessary castings in java.base
Reviewed-by: mullan, naoto, lancea, bpb
2021-11-12 16:30:56 +00:00
Coleen Phillimore
3b2585c02b 8276658: Clean up JNI local handles code
Reviewed-by: dholmes, pchilanomate
2021-11-12 16:17:15 +00:00
Andrew Leonard
aeba653034 8276743: Make openjdk build Zip Archive generation "reproducible"
Reviewed-by: erikj, ihse
2021-11-12 14:43:54 +00:00
Magnus Ihse Bursie
51a5731d6d 8277016: Use blessed modifier order in jdk.httpserver
Reviewed-by: dfuchs
2021-11-12 14:12:37 +00:00
Magnus Ihse Bursie
c4b44329c1 8277012: Use blessed modifier order in src/utils
Reviewed-by: dholmes, stuefe
2021-11-12 14:08:43 +00:00
Julia Boes
13deb38433 8276848: sun.net.httpserver.simpleserver.CommandLinePositiveTest: test does not specify port
Reviewed-by: dfuchs
2021-11-12 12:05:45 +00:00
Nils Eliasson
710f496456 8273277: C2: Move conditional negation into rc_predicate
Reviewed-by: thartmann, chagedorn, kvn
2021-11-12 10:08:26 +00:00
Per Liden
6b833db3f9 8275329: ZGC: vmTestbase/gc/gctests/SoftReference/soft004/soft004.java fails with assert(_phases->length() <= 1000) failed: Too many recored phases?
Reviewed-by: stefank, eosterlund
2021-11-12 08:19:03 +00:00
Andrey Turbanov
1e941dedad 8275197: Remove unused fields in ThaiBuddhistChronology
Reviewed-by: naoto, rriggs, iris
2021-11-11 22:26:45 +00:00
Evgeny Astigeevich
6954b98f8f 8186670: Implement _onSpinWait() intrinsic for AArch64
Reviewed-by: phh, aph
2021-11-11 22:23:35 +00:00
David Holmes
3445e50bd5 8276265: jcmd man page is outdated
Reviewed-by: stuefe, cjplummer
2021-11-11 22:10:18 +00:00
Claes Redestad
0ca0acf63c 8276947: Clarify how DateTimeFormatterBuilder.appendFraction handles value ranges
Reviewed-by: rriggs, naoto
2021-11-11 20:36:46 +00:00
Lance Andersen
b0d7a9daa6 8276994: java/nio/channels/Channels/TransferTo.java leaves multi-GB files in /tmp
Reviewed-by: alanb
2021-11-11 19:09:17 +00:00
Alan Bateman
8aae88b0fc 8276763: java/nio/channels/SocketChannel/AdaptorStreams.java fails with "SocketTimeoutException: Read timed out"
Reviewed-by: dfuchs
2021-11-11 19:07:09 +00:00
Alexander Zvegintsev
6f35eede45 8079267: [TEST_BUG] Test java/awt/Frame/MiscUndecorated/RepaintTest.java fails
Reviewed-by: serb
2021-11-11 16:53:27 +00:00
Ludvig Janiuk
5e98f993b3 8276800: Fix table headers in NumericShaper.html
Reviewed-by: naoto, aivanov
2021-11-11 16:46:52 +00:00
Aleksei Efimov
2ca4ff87b7 8244202: Implementation of JEP 418: Internet-Address Resolution SPI
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Co-authored-by: Daniel Fuchs <dfuchs@openjdk.org>
Co-authored-by: Alan Bateman <alanb@openjdk.org>
Reviewed-by: dfuchs, alanb, michaelm, chegar
2021-11-11 14:33:58 +00:00
Tobias Hartmann
c29cab8ab4 8276112: Inconsistent scalar replacement debug info at safepoints
Reviewed-by: kvn, chagedorn
2021-11-11 13:09:05 +00:00
casparcwang
aea096770e 8275854: C2: assert(stride_con != 0) failed: missed some peephole opt
Co-authored-by: Roland Westrelin <roland@openjdk.org>
Reviewed-by: thartmann, roland, kvn
2021-11-11 10:39:09 +00:00
Hannes Wallnöfer
9862cd07c1 8275786: New javadoc option to add script files to generated documentation
Reviewed-by: jjg
2021-11-11 09:13:49 +00:00
Christian Hagedorn
7a140af253 8276546: [IR Framework] Whitelist and ignore CompileThreshold
Reviewed-by: kvn, neliasso
2021-11-11 08:03:01 +00:00
Aleksey Shipilev
91bb0d658b 8276796: gc/TestSystemGC.java large pages subtest fails with ZGC
Reviewed-by: pliden, stefank
2021-11-11 07:07:58 +00:00
Hamlin Li
08e0fd6757 8276835: G1: make G1EvacFailureObjectsSet::record inline
Reviewed-by: tschatzl, ayang
2021-11-11 05:52:58 +00:00
Yoshiki Sato
ad3be04d2a 8276536: Update TimeZoneNames files to follow the changes made by JDK-8275766
Reviewed-by: naoto, coffeys
2021-11-11 01:39:06 +00:00
Jesper Wilhelmsson
e27a67a916 8276930: Update ProblemList
Reviewed-by: kevinw, dholmes
2021-11-11 01:14:30 +00:00
Zhengyu Gu
73e6d7d74d 8276801: gc/stress/CriticalNativeStress.java fails intermittently with Shenandoah
Reviewed-by: shade
2021-11-11 00:14:52 +00:00
Naoto Sato
bce35ac1d6 8276775: ZonedDateTime/OffsetDateTime.toString return invalid ISO-8601 for years <= 1893
Reviewed-by: lancea, iris, bpb, scolebourne, rriggs
2021-11-10 20:53:23 +00:00
Naoto Sato
0c409cac78 8276186: Require getAvailableLocales() methods to include Locale.ROOT
Reviewed-by: prappo, smarks, iris
2021-11-10 20:52:11 +00:00
Ioi Lam
df02daa6f9 8269986: Remove +3 from Symbol::identity_hash()
Reviewed-by: coleenp
2021-11-10 20:22:41 +00:00
Alisen Chung
2374abda19 8276678: Malformed Javadoc inline tags in JDK source in com/sun/beans/decoder/DocumentHandler.java
Reviewed-by: serb, aivanov
2021-11-10 20:08:13 +00:00
Coleen Phillimore
67c2714ba2 8276889: Improve compatibility discussion in instanceKlass.cpp
Reviewed-by: hseigel
2021-11-10 19:45:09 +00:00
Weijun Wang
a5c160c711 8267108: Alternate Subject.getSubject and doAs APIs that do not depend on Security Manager APIs
Reviewed-by: mullan
2021-11-10 19:35:17 +00:00
Jonathan Gibbons
ce3ed65ac3 8273154: Provide a JavadocTester method for non-overlapping, unordered output matching
Reviewed-by: prappo
2021-11-10 15:24:27 +00:00
Aleksey Shipilev
f561d3c194 8276864: Update boot JDKs to 17.0.1 in GHA
Reviewed-by: erikj, ihse
2021-11-10 14:41:33 +00:00
Yasumasa Suenaga
38ec3a16d7 8276672: Cannot build hsdis on WSL
Co-authored-by: Magnus Ihse Bursie <ihse@openjdk.org>
Co-authored-by: Yasumasa Suenaga <ysuenaga@openjdk.org>
Reviewed-by: ihse, erikj
2021-11-10 14:33:02 +00:00
Harold Seigel
55b36c6f3b 8276825: hotspot/runtime/SelectionResolution test errors
Reviewed-by: dholmes, shade
2021-11-10 13:11:16 +00:00
Sergey Tsypanov
0f23c6a9fe 8276926: Use String.valueOf() when initializing File.separator and File.pathSeparator
Reviewed-by: redestad, jlaskey
2021-11-10 12:46:30 +00:00
Aleksey Shipilev
a0b84453b0 8276846: JDK-8273416 is incomplete for UseSSE=1
Reviewed-by: neliasso, kvn
2021-11-10 11:27:13 +00:00
Aleksey Shipilev
a3f710efbe 8276215: Intrinsics matchers should handle native method flags better
Reviewed-by: dholmes, kvn
2021-11-10 10:45:51 +00:00
Aleksey Shipilev
0f463a7bf7 8276845: (fs) java/nio/file/spi/SetDefaultProvider.java fails on x86_32
Reviewed-by: alanb
2021-11-10 09:50:27 +00:00
Prasanta Sadhukhan
e01d6d00bc 8276679: Malformed Javadoc inline tags in JDK source in javax/swing
Reviewed-by: aivanov, pbansal
2021-11-10 08:34:07 +00:00
Aleksey Shipilev
fd0a25e62b 8276805: java/awt/print/PrinterJob/CheckPrivilege.java fails due to disabled SecurityManager
Reviewed-by: serb, aivanov
2021-11-10 07:59:01 +00:00
Anirvan Sarkar
403f3185f0 8276854: Windows GHA builds fail due to broken Cygwin
Reviewed-by: clanger
2021-11-10 05:51:39 +00:00
Hamlin Li
e91e9d8532 8276721: G1: Refine G1EvacFailureObjectsSet::iterate
Reviewed-by: tschatzl, ayang
2021-11-10 01:26:35 +00:00
Jamil Nimeh
8822d41fdc 8274736: Concurrent read/close of SSLSockets causes SSLSessions to be invalidated unnecessarily
Reviewed-by: xuelei, wetmore
2021-11-10 01:24:33 +00:00
Hamlin Li
c1e41fe38b 8276842: G1: Only calculate size in bytes from words when needed
Reviewed-by: tschatzl, ayang
2021-11-10 01:13:30 +00:00
Hamlin Li
c8b0ee6b8a 8276833: G1: Make G1EvacFailureRegions::par_iterate const
Reviewed-by: tschatzl, ayang
2021-11-10 01:12:43 +00:00
Rickard Bäckman
0699220830 8268882: C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
Reviewed-by: neliasso, chagedorn, kvn
2021-11-09 21:38:12 +00:00
Roger Riggs
d7012fbd60 8276880: Remove java/lang/RuntimeTests/exec/ExecWithDir as unnecessary
Reviewed-by: alanb
2021-11-09 20:43:51 +00:00
Hannes Wallnöfer
f9024d0606 8230130: javadoc search result dialog shows cut off headers for long results
Reviewed-by: jjg
2021-11-09 20:17:25 +00:00
Hannes Wallnöfer
055de6f566 8223358: Incorrect HTML structure in annotation pages
Reviewed-by: jjg
2021-11-09 20:11:18 +00:00
Pankaj Bansal
a60e91259b 8198626: java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html fails on mac
Reviewed-by: serb
2021-11-09 20:10:20 +00:00
Brian Burkhalter
dde959dfce 8276808: java/nio/channels/Channels/TransferTo.java timed out
Reviewed-by: lancea, shade
2021-11-09 19:17:59 +00:00
Leo Korinth
daf77ebfc4 8276337: Use override specifier in HeapDumper
Reviewed-by: stuefe, dholmes
2021-11-09 17:50:16 +00:00
Andrey Turbanov
93692ea0a9 8274395: Use enhanced-for instead of plain 'for' in jdk.internal.jvmstat
Reviewed-by: cjplummer, amenkov, sspitsyn
2021-11-09 16:58:43 +00:00
Hannes Wallnöfer
e35abe3235 8256208: Javadoc's generated overview does not show classes of unnamed package
Reviewed-by: jjg
2021-11-09 15:05:07 +00:00
Yasumasa Suenaga
f65db88b74 8276841: Add support for Visual Studio 2022
Reviewed-by: erikj, ihse
2021-11-09 14:54:42 +00:00
Weijun Wang
c27afb313b 8276863: Remove test/jdk/sun/security/ec/ECDSAJavaVerify.java
Reviewed-by: ascarpino
2021-11-09 14:46:32 +00:00
Masanori Yano
e198594753 8250678: ModuleDescriptor.Version parsing treats empty segments inconsistently
Reviewed-by: mchung, alanb
2021-11-09 14:28:07 +00:00
Thomas Stuefe
4bd5bfd8e2 8276731: Metaspace chunks are uncommitted twice
Reviewed-by: shade, coleenp
2021-11-09 14:12:40 +00:00
Thomas Schatzl
5c7f77c824 8276850: Remove outdated comment in HeapRegionManager::par_iterate
Reviewed-by: ayang, sjohanss
2021-11-09 13:07:42 +00:00
Stefan Johansson
945f4085e5 8276098: Do precise BOT updates in G1 evacuation phase
Reviewed-by: tschatzl, ayang
2021-11-09 11:11:23 +00:00
Ioi Lam
8747882e4c 8276790: Rename GenericCDSFileMapHeader::_base_archive_path_offset
Reviewed-by: dholmes, ccheung
2021-11-09 07:18:06 +00:00
Bradford Wetmore
38e6d5d6ed 8276677: Malformed Javadoc inline tags in JDK source in javax/net/ssl
Reviewed-by: jnimeh
2021-11-09 01:11:18 +00:00
Joe Darcy
a7dedb5f47 8276772: Refine javax.lang.model docs
Reviewed-by: iris, vromero
2021-11-08 22:19:55 +00:00
Andrew Leonard
14d66bd438 8276654: element-list order is non deterministic
Reviewed-by: ihse
2021-11-08 20:37:24 +00:00
Eamonn McManus
905e3e8813 8231490: Ugly racy writes to ZipUtils.defaultBuf
Reviewed-by: lancea
2021-11-08 19:57:44 +00:00
Jonathan Gibbons
e383d26361 8275199: Bogus warning generated for serializable records
Reviewed-by: hannesw
2021-11-08 19:13:22 +00:00
Roger Riggs
7e73bca0b7 8276408: Deprecate Runtime.exec methods with a single string command line argument
Reviewed-by: alanb
2021-11-08 16:39:07 +00:00
Aleksey Shipilev
75adf54bdc 8276306: jdk/jshell/CustomInputToolBuilder.java fails intermittently on storage acquisition
Reviewed-by: jlahoda
2021-11-08 15:35:27 +00:00
Thomas Schatzl
7320b77b3e 8276548: Use range based visitor for Howl-Full cards
Reviewed-by: ayang, sjohanss
2021-11-08 15:00:31 +00:00
Daniel D. Daugherty
ea23e7333e 8249004: Reduce ThreadsListHandle overhead in relation to direct handshakes
Reviewed-by: coleenp, sspitsyn, dholmes, rehn
2021-11-08 14:45:04 +00:00
Denghui Dong
c815c5cbbb 8276209: Some call sites doesn't pass the parameter 'size' to SharedRuntime::dtrace_object_alloc(_base)
Reviewed-by: dholmes, coleenp
2021-11-08 14:30:54 +00:00
Andy Herrick
71c4b19517 8276562: Fix to JDK-8263155 left out the help text changes
Reviewed-by: asemenyuk, almatvee
2021-11-08 13:45:23 +00:00
Petr Portnov
cc2cac130c 8274686: java.util.UUID#hashCode() should use Long.hashCode()
Reviewed-by: rriggs
2021-11-08 13:22:37 +00:00
Jan Lahoda
0c2d00bff7 8275097: Wrong span of the 'default' tag
Reviewed-by: vromero
2021-11-08 13:21:40 +00:00
Jan Lahoda
fa754b8ffd 8276149: jshell throws EOF error when throwing exception inside switch expression
Reviewed-by: vromero
2021-11-08 13:20:44 +00:00
Jan Lahoda
4c14eddf41 8274734: the method jdk.jshell.SourceCodeAnalysis documentation not working
Reviewed-by: vromero
2021-11-08 13:19:51 +00:00
Thomas Schatzl
ff6863c98d 8276540: Howl Full CardSet container iteration marks too many cards
Reviewed-by: ayang, sjohanss
2021-11-08 12:59:00 +00:00
Christian Hagedorn
54481394a3 8271056: C2: "assert(no_dead_loop) failed: dead loop detected" due to cmoving identity
Reviewed-by: kvn, thartmann
2021-11-08 12:47:58 +00:00
Hannes Wallnöfer
0395e4ef8c 8276768: Snippet copy feature should use button instead of link
Reviewed-by: prappo
2021-11-08 11:35:26 +00:00
Ludvig Janiuk
d8b0dee65e 8276239: Better tables in java.util.random package summary
Reviewed-by: jlaskey
2021-11-08 09:44:44 +00:00
Christian Stein
fc0fe25679 8273235: tools/launcher/HelpFlagsTest.java Fails on Windows 32bit
Reviewed-by: shade
2021-11-08 08:09:51 +00:00
Nick Gasson
3934fe54b4 8275847: Scheduling fails with "too many D-U pinch points" on small method
Reviewed-by: thartmann, kvn
2021-11-08 06:40:49 +00:00
Yi Yang
44047f849f 8274328: C2: Redundant CFG edges fixup in block ordering
Reviewed-by: thartmann, kvn
2021-11-08 02:18:40 +00:00
Ioi Lam
884915496f 8275846: read_base_archive_name() could read past the end of buffer
Reviewed-by: ccheung, stuefe
2021-11-07 21:38:59 +00:00
Jaikiran Pai
2653cfbf0f 8276688: Remove JLinkReproducibleXXXTest from ProblemList.txt
Reviewed-by: alanb, mchung
2021-11-06 03:36:46 +00:00
Anirvan Sarkar
c7095b20d9 8276207: Properties.loadFromXML/storeToXML works incorrectly for supplementary characters
Reviewed-by: joehw
2021-11-06 00:41:44 +00:00
Hamlin Li
ed7ecca401 8254739: G1: Optimize evacuation failure for regions with few failed objects
Reviewed-by: tschatzl, ayang
2021-11-05 23:24:45 +00:00
Magnus Ihse Bursie
59c3dcc761 8276746: Add section on reproducible builds in building.md
Reviewed-by: erikj, sgehwolf, aleonard
2021-11-05 21:21:38 +00:00
Kim Barrett
0e0dd33fff 8276129: PretouchTask should page-align the chunk size
Reviewed-by: stefank, tschatzl
2021-11-05 21:20:51 +00:00
Andrew John Hughes
a472433209 8276572: Fake libsyslookup.so library causes tooling issues
Reviewed-by: shade, mcimadamore
2021-11-05 21:05:42 +00:00
Brian Burkhalter
b01f1073f9 8276252: java/nio/channels/Channels/TransferTo.java failed with OOM java heap space error
Reviewed-by: lancea
2021-11-05 17:25:06 +00:00
Daniel D. Daugherty
92d2176362 8273967: gtest os.dll_address_to_function_and_library_name_vm fails on macOS12
Reviewed-by: stuefe, gziemski
2021-11-05 17:04:39 +00:00
Vladimir Kozlov
a74a839af0 8276571: C2: pass compilation options as structure
Reviewed-by: shade, chagedorn
2021-11-05 16:07:25 +00:00
Magnus Ihse Bursie
c393ee8f59 8276632: Use blessed modifier order in security-libs code
Reviewed-by: mullan
2021-11-05 14:09:58 +00:00
Magnus Ihse Bursie
7023b3f8a1 8276628: Use blessed modifier order in serviceability code
Reviewed-by: dholmes, lmesnik, cjplummer
2021-11-05 12:07:58 +00:00
Magnus Ihse Bursie
b9331360f5 8276641: Use blessed modifier order in jshell
Reviewed-by: iris
2021-11-05 12:06:39 +00:00
Magnus Ihse Bursie
0616d868c7 8276635: Use blessed modifier order in compiler code
Reviewed-by: darcy
2021-11-05 12:05:22 +00:00
Patrick Concannon
d95299a4d7 8276634: Remove usePlainDatagramSocketImpl option from the test DatagramChannel/SendReceiveMaxSize.java
Reviewed-by: dfuchs, alanb, vtewari
2021-11-05 10:39:37 +00:00
Leo Korinth
3c0faa7352 8276173: Clean up and remove unneeded casts in HeapDumper
Reviewed-by: coleenp, hseigel
2021-11-05 09:42:26 +00:00
Leo Korinth
323d201795 8275506: Rename allocated_on_stack to allocated_on_stack_or_embedded
Reviewed-by: stuefe
2021-11-05 09:25:21 +00:00
Ningsheng Jian
96c396b701 8276151: AArch64: Incorrect result for double to int vector conversion
Reviewed-by: aph, psandoz
2021-11-05 07:45:54 +00:00
Thomas Stuefe
7281861e06 8272065: jcmd cannot rely on the old core reflection implementation which will be changed after JEP 416
Reviewed-by: mchung, coleenp, dholmes
2021-11-05 05:15:53 +00:00
Ioi Lam
8e17ce0031 8275185: Remove dead code and clean up jvmstat LocalVmManager
Reviewed-by: cjplummer, redestad, kevinw
2021-11-05 04:37:01 +00:00
Jaikiran Pai
396132ff1e 8275509: ModuleDescriptor.hashCode isn't reproducible across builds
Reviewed-by: alanb, ihse
2021-11-05 03:44:45 +00:00
Sandhya Viswanathan
9ad4d3d06b 8276025: Hotspot's libsvml.so may conflict with user dependency
Reviewed-by: kvn, erikj, psandoz, ihse
2021-11-05 03:30:09 +00:00
Mandy Chung
e21b5c7b37 8276650: GenGraphs does not produce deterministic output
Reviewed-by: iris
2021-11-04 23:51:18 +00:00
Alisen Chung
7b1916efda 8233557: [TESTBUG] DoubleClickTitleBarTest.java fails on macOs
Reviewed-by: prr
2021-11-04 21:53:29 +00:00
Ludvig Janiuk
8ec80c4bc1 8276653: Missing row headers in j.l.Character docs
Reviewed-by: naoto
2021-11-04 21:06:03 +00:00
Ludvig Janiuk
7e87f946ce 8276652: Missing row headers in MethodHandles.Lookup docs
Reviewed-by: mchung
2021-11-04 20:46:23 +00:00
Dean Long
dcf36f87f8 8275670: ciReplay: java.lang.NoClassDefFoundError when trying to load java/lang/invoke/LambdaForm$MH
Reviewed-by: kvn, chagedorn
2021-11-04 19:52:27 +00:00
Magnus Ihse Bursie
81203efe41 8276655: Use blessed modifier order in SCTP
Reviewed-by: alanb, dfuchs
2021-11-04 19:44:05 +00:00
Zhengyu Gu
2b5a32c73f 8275718: Relax memory constraint on exception counter updates
Reviewed-by: dholmes, minqi
2021-11-04 19:40:22 +00:00
Ludvig Janiuk
99d4b07cdd 8276649: MethodHandles.Lookup docs: replace the table in the cross-module access check section with list
Reviewed-by: mchung
2021-11-04 17:26:18 +00:00
Magnus Ihse Bursie
1533b8191b 8276629: Use blessed modifier order in core-libs code
Reviewed-by: dholmes, aefimov, dfuchs, mchung, iris
2021-11-04 17:02:42 +00:00
Brian Burkhalter
7bb2173383 8276199: java/nio/channels/FileChannel/LargeGatheringWrite.java fails to terminate correctly
Reviewed-by: alanb
2021-11-04 16:33:08 +00:00
Pavel Rappo
b57715a117 8276573: Use blessed modifier order in jdk.javadoc
Reviewed-by: jjg
2021-11-04 15:56:19 +00:00
Pavel Rappo
bf4ddf9cb7 8276338: Minor improve of wording for String.to(Lower|Upper)Case
Reviewed-by: rriggs, naoto
2021-11-04 15:51:37 +00:00
Aleksey Shipilev
afb502e28a 8276550: Use SHA256 hash in build.tools.depend.Depend
Reviewed-by: adinn, aph, andrew, ihse
2021-11-04 15:41:39 +00:00
Magnus Ihse Bursie
49b7b2ea09 8276640: Use blessed modifier order in jfr code
Reviewed-by: mgronlun
2021-11-04 15:06:08 +00:00
Evgeny Astigeevich
5acff75379 8276429: CodeHeapState::print_names() fails with "assert(klass->is_loader_alive()) failed: must be alive"
Reviewed-by: kvn
2021-11-04 15:01:26 +00:00
Per Liden
a6fa6ed1ed 8268779: ZGC: runtime/InternalApi/ThreadCpuTimesDeadlock.java#id1 failed with "OutOfMemoryError: Java heap space"
Reviewed-by: eosterlund, stefank
2021-11-04 13:47:59 +00:00
Hannes Wallnöfer
19075b3f6b 8275788: Create code element with suitable attributes for code snippets
Reviewed-by: prappo
2021-11-04 13:06:24 +00:00
Hamlin Li
7de653e428 8276301: G1: Refine implementation of G1CardSetFreePool::memory_sizes()
Reviewed-by: tschatzl, ayang
2021-11-04 12:31:27 +00:00
Julia Boes
ee49963258 8275534: com.sun.net.httpserver.BasicAuthenticator should check whether "realm" is a quoted string
Reviewed-by: michaelm, dfuchs
2021-11-04 11:31:51 +00:00
Aleksey Shipilev
3613ce7c7d 8275586: Zero: Simplify interpreter initialization
Reviewed-by: aph, adinn
2021-11-04 10:23:11 +00:00
Aleksey Shipilev
c62b3476ce 8276623: JDK-8275650 accidentally pushed "out" file
Reviewed-by: tschatzl, dholmes
2021-11-04 09:03:21 +00:00
Christian Hagedorn
a1f4c428ba 8276227: ciReplay: SIGSEGV if classfile for replay compilation is not present after JDK-8275868
Reviewed-by: kvn, thartmann, dlong
2021-11-04 08:53:37 +00:00
Aleksey Shipilev
9eadcbb47e 8276217: Harmonize StrictMath intrinsics handling
Reviewed-by: aph, kvn
2021-11-04 08:08:07 +00:00
Aleksey Shipilev
fb0be81f01 8276096: Simplify Unsafe.{load|store}Fence fallbacks by delegating to fullFence
Reviewed-by: psandoz, aph, dholmes
2021-11-04 08:03:51 +00:00
Yasumasa Suenaga
558ee40a4a 8276615: Update CR number of some tests in ProblemList-zgc.txt
Reviewed-by: dholmes
2021-11-04 04:34:07 +00:00
Yumin Qi
603bba282a 8271420: Extend CDS custom loader support to Windows platform
Reviewed-by: iklam, ccheung
2021-11-03 23:16:15 +00:00
Claes Redestad
ce8c76700b 8276220: Reduce excessive allocations in DateTimeFormatter
Reviewed-by: scolebourne, naoto
2021-11-03 22:57:13 +00:00
Jie Fu
0ab910d626 8276066: Reset LoopPercentProfileLimit for x86 due to suboptimal performance
Reviewed-by: thartmann, kvn
2021-11-03 22:45:50 +00:00
Joe Darcy
f3320d2fbd 8276588: Change "ccc" to "CSR" in HotSpot sources
Reviewed-by: dcubed, kbarrett
2021-11-03 21:20:09 +00:00
Ivan Šipka
32895ac609 8275650: Problemlist java/io/File/createTempFile/SpecialTempFile.java for Windows 11
Reviewed-by: bpb, msheppar
2021-11-03 19:30:12 +00:00
Jakob Cornell
c7f070f5f1 8276208: vmTestbase/nsk/jdb/repeat/repeat001/repeat001.java fails with "AssertionError: Unexpected output"
Reviewed-by: cjplummer, iklam
2021-11-03 18:18:16 +00:00
Brian Burkhalter
684edbb4c8 8273922: (fs) UserDefinedFileAttributeView doesn't handle file names that are just under the MAX_PATH limit (win)
Reviewed-by: alanb
2021-11-03 16:55:23 +00:00
Daniel Fuchs
7115892f96 8276401: Use blessed modifier order in java.net.http
Reviewed-by: prappo, rriggs
2021-11-03 16:23:57 +00:00
Phil Race
0ef8cbe325 8276385: Re-run blessed-modifier-order script on java.desktop and jdk.accessibility
Reviewed-by: serb
2021-11-03 16:22:42 +00:00
Aleksey Shipilev
724bf3be14 8275604: Zero: Reformat opclabels_data
Reviewed-by: adinn, zgu
2021-11-03 15:41:26 +00:00
Tobias Holenstein
61cb4bc6b0 8276036: The value of full_count in the message of insufficient codecache is wrong
Reviewed-by: kvn, dlong, thartmann, chagedorn
2021-11-03 15:31:50 +00:00
Daniel D. Daugherty
8731846001 8276556: ProblemList java/nio/channels/FileChannel/LargeGatheringWrite.java on windows-x64
Reviewed-by: alanb
2021-11-03 15:02:20 +00:00
Hamlin Li
be1ca2bd20 8276298: G1: Remove unused G1SegmentedArrayBufferList::add
Reviewed-by: tschatzl
2021-11-03 12:39:15 +00:00
Zhengyu Gu
a316c06e03 8275730: Relax memory constraint on MultiThreadedRefCounter
Reviewed-by: mgronlun, minqi
2021-11-03 12:08:37 +00:00
Pavel Rappo
615063364a 8276348: Use blessed modifier order in java.base
Reviewed-by: dfuchs, darcy, iris, rriggs, martin
2021-11-03 10:07:48 +00:00
Aleksey Shipilev
465d350d0b 8276157: C2: Compiler stack overflow during escape analysis on Linux x86_32
Reviewed-by: kvn, thartmann
2021-11-03 09:06:21 +00:00
Christian Hagedorn
7439b59b5a 8276044: ciReplay: C1 does not dump a replay file when using DumpReplay as compile command option
Reviewed-by: kvn, thartmann, dlong
2021-11-03 08:44:03 +00:00
sunguoyun
87b926ebb7 8275086: compiler/c2/irTests/TestPostParseCallDevirtualization.java fails when compiler1 is disabled
Reviewed-by: iveresov
2021-11-03 05:51:18 +00:00
Guoxiong Li
2b02b6f513 8274942: AssertionError at jdk.compiler/com.sun.tools.javac.util.Assert.error(Assert.java:155)
Reviewed-by: vromero
2021-11-03 01:57:52 +00:00
Alex Menkov
bb92fb02ca 8274930: sun/tools/jps/TestJps.java can fail with long VM arguments string
Reviewed-by: sspitsyn, lmesnik
2021-11-02 21:57:16 +00:00
Markus Karg
6a04899ba1 8275840: Add test to java/nio/channels/Channels/TransferTo.java to test transfer sizes > 2GB
Reviewed-by: lancea
2021-11-02 18:06:14 +00:00
Daniel D. Daugherty
01105d6985 8276367: ProblemList vmTestbase/nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption/TestDescription.java
Reviewed-by: bpb
2021-11-02 16:50:47 +00:00
Evgeny Astigeevich
8fc16f1605 8275729: Qualified method names in CodeHeap Analytics
Reviewed-by: yyang, thartmann
2021-11-02 16:32:04 +00:00
Brian Burkhalter
fa4ce824a3 8276260: (se) Remove java/nio/channels/Selector/Wakeup.java from ProblemList (win)
Reviewed-by: alanb
2021-11-02 16:27:56 +00:00
Naoto Sato
495c828ae9 8276188: Clarify "default charset" descriptions in String class
Reviewed-by: iris, joehw
2021-11-02 16:08:11 +00:00
Alexander Zuev
cd778f5b04 8202667: java/awt/Debug/DumpOnKey/DumpOnKey.java times out on Windows
Reviewed-by: prr
2021-11-02 13:23:18 +00:00
Thomas Stuefe
b889f2a88a 8276175: codestrings.validate_vm gtest still broken on ppc64 after JDK-8276046
Reviewed-by: mdoerr
2021-11-02 13:04:09 +00:00
Yoshiki Sato
5b4e39863d 8275766: (tz) Update Timezone Data to 2021e
8275849: TestZoneInfo310.java fails with tzdata2021e

Reviewed-by: naoto, iris, erikj, coffeys
2021-11-02 13:02:51 +00:00
Hannes Wallnöfer
8630f55ed7 8275406: Add copy-to-clipboard feature to snippet UI
Reviewed-by: erikj, jjg
2021-11-02 12:10:47 +00:00
Severin Gehwolf
9971a2cab3 8275735: [linux] Remove deprecated Metrics api (kernel memory limit)
Reviewed-by: hseigel, mchung
2021-11-02 10:39:41 +00:00
Aleksey Shipilev
b7a06be98d 8252990: Intrinsify Unsafe.storeStoreFence
Reviewed-by: dholmes, thartmann, whuang
2021-11-02 10:26:21 +00:00
Ludvig Janiuk
92be9d8c53 8276236: Table headers missing in Formatter api docs
Reviewed-by: coffeys, iris
2021-11-02 09:46:37 +00:00
Masanori Yano
9bf31652cb 8276164: RandomAccessFile#write method could throw IndexOutOfBoundsException that is not described in javadoc
Reviewed-by: alanb
2021-11-02 06:44:48 +00:00
Aleksey Shipilev
0488ebdf14 8276105: C2: Conv(D|F)2(I|L)Nodes::Ideal should handle rounding correctly
Reviewed-by: kvn, thartmann
2021-11-02 06:38:26 +00:00
Phil Race
acceffcbf7 8273704: DrawStringWithInfiniteXform.java failed : drawString with InfiniteXform transform takes long time
Reviewed-by: serb, psadhukhan
2021-11-02 02:49:56 +00:00
Pavel Rappo
2eafa036c0 8276234: Trivially clean up locale-related code
Reviewed-by: redestad, naoto, iris
2021-11-01 22:50:43 +00:00
Alisen Chung
47e7a42594 8262945: [macos] Regression Manual Test for Key Events Fails
Reviewed-by: prr, kizune
2021-11-01 22:29:40 +00:00
Zhengyu Gu
99b7b95e01 8276205: Shenandoah: CodeCache_lock should always be held for initializing code cache iteration
Reviewed-by: shade
2021-11-01 19:38:49 +00:00
Patrick Concannon
977154400b 8260428: Drop support for pre JDK 1.4 DatagramSocketImpl implementations
Reviewed-by: alanb, dfuchs, vtewari
2021-11-01 17:11:20 +00:00
Thomas Schatzl
e265f83858 8276107: Preventive collections trigger before maxing out heap
Reviewed-by: sjohanss, ayang
2021-11-01 16:48:13 +00:00
Leo Korinth
c8abe354c1 8276121: G1: Remove unused and uninitialized _g1h in g1SATBMarkQueueSet.hpp
Reviewed-by: ayang, tschatzl
2021-11-01 15:37:00 +00:00
Patricio Chilano Mateo
f55e68c929 8275950: Use only _thread_in_vm in ~ThreadBlockInVMPreprocess()
Reviewed-by: dholmes, dcubed
2021-11-01 15:27:39 +00:00
Erik Gahlin
4ac8403f9a 8276218: JFR: Clean up jdk.jfr.dcmd
Reviewed-by: mgronlun
2021-11-01 12:33:10 +00:00
Aleksey Shipilev
89ade1d7e8 8273416: C2: assert(false) failed: bad AD file after JDK-8252372 with UseSSE={0,1}
Reviewed-by: kvn, roland
2021-11-01 12:30:43 +00:00
Zhengyu Gu
dbf5100dd7 8276201: Shenandoah: Race results degenerated GC to enter wrong entry point
Reviewed-by: shade
2021-11-01 12:17:16 +00:00
Christian Hagedorn
5bb1992b84 8275868: ciReplay: Inlining fails with "unloaded signature classes" due to wrong protection domains
Reviewed-by: kvn, dlong, thartmann
2021-11-01 08:22:59 +00:00
Thomas Stuefe
158831e4c3 8274320: os::fork_and_exec() should be using posix_spawn
Reviewed-by: mdoerr, dholmes
2021-11-01 05:13:55 +00:00
Man Cao
bf2e9ee9d3 8275080: G1CollectedHeap::expand() returns the wrong value
Co-authored-by: Jonathan Joo <jonathanjoo@google.com>
Reviewed-by: tschatzl, kbarrett
2021-10-31 04:58:16 +00:00
Alexander Zuev
b7104ba9a9 8196017: java/awt/Mouse/GetMousePositionTest/GetMousePositionWithPopup.java fails
Reviewed-by: serb
2021-10-30 10:01:05 +00:00
Sergey Bylokhov
687567822a 8273831: PrintServiceLookup spawns 2 threads in the current classloader, getting orphaned
Reviewed-by: aivanov
2021-10-30 09:03:27 +00:00
Alex Menkov
5bbc8d3cb2 8274621: NullPointerException because listenAddress[0] is null
Reviewed-by: sspitsyn, lmesnik, cjplummer
2021-10-29 21:38:24 +00:00
Igor Veresov
5021a12cea 8274855: vectorapi tests failing with assert(!vbox->is_Phi()) failed
Reviewed-by: kvn
2021-10-29 18:03:10 +00:00
Jakob Cornell
fe6a202087 8271356: Modify jdb to treat an empty command as a repeat of the previous command
Reviewed-by: cjplummer, iklam
2021-10-29 17:50:19 +00:00
Yumin Qi
cef9db9a69 8276039: Remove unnecessary qualifications of java_lang_Class::
Reviewed-by: mikael, iklam
2021-10-29 16:15:35 +00:00
Brian Burkhalter
13265f9901 8274750: java/io/File/GetXSpace.java failed: '/dev': 191488 != 190976
Reviewed-by: rriggs, naoto
2021-10-29 16:13:23 +00:00
Brian Burkhalter
5facaa243a 8276128: (bf) Remove unused constant ARRAY_BASE_OFFSET from Direct-X-Buffer
Reviewed-by: lancea, iris, alanb
2021-10-29 16:12:19 +00:00
Thomas Stuefe
d6d82f52d4 8275608: runtime/Metaspace/elastic/TestMetaspaceAllocationMT2 too slow
Reviewed-by: mbaesken, shade
2021-10-29 13:54:27 +00:00
Alexander Zvegintsev
a1ec4f9618 6854300: [TEST_BUG] java/awt/event/MouseEvent/SpuriousExitEnter/SpuriousExitEnter_3.java fails in jdk6u14 & jdk7
Reviewed-by: serb
2021-10-29 13:05:22 +00:00
Sean Mullan
8cc59509fe 8251468: X509Certificate.get{Subject,Issuer}AlternativeNames and getExtendedKeyUsage do not throw CertificateParsingException if extension is unparseable
Reviewed-by: weijun
2021-10-29 12:42:33 +00:00
Alexander Zuev
4c3491bfa5 8017175: [TESTBUG] javax/swing/JPopupMenu/4634626/bug4634626.java sometimes failed on mac
Reviewed-by: serb
2021-10-29 11:44:12 +00:00
Ilarion Nakonechnyy
c0cda1db4f 8273026: Slow LoginContext.login() on multi threading application
Reviewed-by: weijun
2021-10-29 11:37:45 +00:00
Aleksey Shipilev
15fd8a300b 8276102: JDK-8245095 integration reverted JDK-8247980
Reviewed-by: dfuchs, redestad
2021-10-29 10:26:06 +00:00
Thomas Stuefe
e89b2c040c 8276086: Increase size of metaspace mappings
Reviewed-by: goetz, mdoerr
2021-10-29 09:44:48 +00:00
Albert Mingkun Yang
24cf48000a 8276047: G1: refactor G1CardSetArrayLocker
Reviewed-by: tschatzl, sjohanss
2021-10-29 09:06:36 +00:00
Tobias Holenstein
e922023ec9 8275909: [JVMCI] c2v_readFieldValue use long instead of jlong for the offset parameter
Reviewed-by: chagedorn, dnsimon, shade
2021-10-29 06:16:38 +00:00
Thomas Stuefe
157e1d5073 8275856: Remove MetaspaceHandleDeallocations debug switch
Reviewed-by: coleenp, iklam
2021-10-29 04:26:56 +00:00
Thomas Stuefe
c9e65f8ef9 8275440: Remove VirtualSpaceList::is_full()
Reviewed-by: coleenp
2021-10-29 03:48:45 +00:00
Hai-May Chao
de93b1d0e8 8257722: Improve "keytool -printcert -jarfile" output
Reviewed-by: weijun
2021-10-28 23:04:34 +00:00
Mandy Chung
21da218387 8274848: LambdaMetaFactory::metafactory on REF_invokeSpecial impl method has incorrect behavior
Reviewed-by: psandoz, dlsmith
2021-10-28 22:24:56 +00:00
Joe Darcy
48f3fcab51 8275308: Add valueOf(Runtime.Version) factory to SourceVersion
Reviewed-by: jjg
2021-10-28 22:11:03 +00:00
Mandy Chung
c6339cb8a2 8271820: Implementation of JEP 416: Reimplement Core Reflection with Method Handle
8013527: calling MethodHandles.lookup on itself leads to errors

Co-authored-by: Peter Levart <plevart@openjdk.org>
Co-authored-by: Claes Redestad <redestad@openjdk.org>
Co-authored-by: Mandy Chung <mchung@openjdk.org>
Reviewed-by: mcimadamore, plevart, egahlin, redestad, cjplummer, alanb
2021-10-28 18:32:50 +00:00
Aleksey Shipilev
5a768f75c9 8276054: JMH benchmarks for Fences
Reviewed-by: redestad
2021-10-28 17:32:39 +00:00
Aleksey Shipilev
6d8fa8f663 8255286: Implement ParametersTypeData::print_data_on fully
Reviewed-by: dholmes
2021-10-28 17:13:08 +00:00
Mitsuru Kariya
63b9f8c0da 8153490: Cannot setBytes() if incoming buffer's length is bigger than number of elements we want to insert.
Reviewed-by: lancea
2021-10-28 15:56:17 +00:00
Andrew Haley
cb989cf3a1 8275052: AArch64: Severe AES/GCM slowdown on MacOS for short blocks
Reviewed-by: ngasson, adinn
2021-10-28 15:51:29 +00:00
Prasanta Sadhukhan
c92f230557 8276110: Problemlist javax/swing/JMenu/4515762/bug4515762.java for macos12
Reviewed-by: azvegint
2021-10-28 15:37:15 +00:00
Mandy Chung
309acbf0e8 8275703: System.loadLibrary fails on Big Sur for libraries hidden from filesystem
Reviewed-by: dholmes, alanb, mcimadamore
2021-10-28 15:27:26 +00:00
Ludvig Janiuk
abe52aea23 8275518: accessibility issue in Inet6Address docs
Reviewed-by: ihse, jjg
2021-10-28 14:40:53 +00:00
Thomas Schatzl
85d8cd8566 8276100: Remove G1SegmentedArray constructor name parameter
Reviewed-by: ayang
2021-10-28 12:58:03 +00:00
Volker Simonis
a343fa8766 8275865: Print deoptimization statistics in product builds
Reviewed-by: thartmann, kvn
2021-10-28 12:40:30 +00:00
Coleen Phillimore
bec977c778 8275917: Some locks shouldn't allow_vm_block
Reviewed-by: dholmes, pchilanomate
2021-10-28 11:57:21 +00:00
Hannes Wallnöfer
7c996d572c 8269401: Merge "Exceptions" and "Errors" into "Exception Classes"
Reviewed-by: jjg
2021-10-28 10:41:49 +00:00
Per Liden
d88b89f896 8276067: ZGC: Remove unused function alloc_high_address_at_most()
Reviewed-by: eosterlund, stefank
2021-10-28 10:10:05 +00:00
Andrey Turbanov
593401fe8b 8276042: Remove unused local variables in java.naming
Reviewed-by: aefimov, dfuchs, vtewari
2021-10-28 08:42:10 +00:00
Aleksey Shipilev
a2f2d8fcf5 8276057: Update JMH devkit to 1.33
Reviewed-by: aph, redestad, erikj
2021-10-28 08:27:44 +00:00
Per Liden
1750a6e2c0 8276055: ZGC: Defragment address space
Reviewed-by: eosterlund, stefank
2021-10-28 05:44:32 +00:00
Thomas Stuefe
d9b0138d7d 8275704: Metaspace::contains() should be threadsafe
Reviewed-by: coleenp, dholmes
2021-10-28 05:29:58 +00:00
Andrey Turbanov
9a3e954299 8274879: Replace uses of StringBuffer with StringBuilder within java.base classes
Reviewed-by: naoto
2021-10-27 16:18:12 +00:00
Daniel D. Daugherty
e6fa5fa37e 8276063: ProblemList gtest dll_address_to_function_and_library_name on macosx-generic
Reviewed-by: tschatzl
2021-10-27 14:24:02 +00:00
Thomas Stuefe
809488bf38 8276046: codestrings.validate_vm gtest fails on ppc64, s390
Reviewed-by: shade, mdoerr
2021-10-27 13:40:51 +00:00
Stefan Karlsson
93be099ccb 4718400: Many quantities are held as signed that should be unsigned
Reviewed-by: coleenp, rbackman, dholmes
2021-10-27 13:23:24 +00:00
Naoto Sato
168081efc8 8270490: Charset.forName() taking fallback default value
Reviewed-by: joehw, rriggs, serb, dfuchs
2021-10-27 12:39:46 +00:00
Tobias Hartmann
a29273336b 8275975: Remove dead code in ciInstanceKlass
Reviewed-by: chagedorn, kvn
2021-10-27 12:27:43 +00:00
Coleen Phillimore
40606021ee 8275800: Redefinition leaks MethodData::_extra_data_lock
Reviewed-by: sspitsyn, dholmes
2021-10-27 12:09:46 +00:00
Prasanta Sadhukhan
485d65865e 8275851: Deproblemlist open/test/jdk/javax/swing/JComponent/6683775/bug6683775.java
Reviewed-by: serb
2021-10-27 10:24:21 +00:00
Jayathirth D V
b3f45f868d 8275689: [TESTBUG] Use color tolerance only for XRender in BlitRotateClippedArea test
Reviewed-by: serb
2021-10-27 10:21:28 +00:00
Claes Redestad
6c05cc9d15 8275863: Use encodeASCII for ASCII-compatible DoubleByte encodings
Reviewed-by: naoto, rriggs, alanb
2021-10-27 10:07:46 +00:00
Jayathirth D V
2f979ecb5b 8213120: java/awt/TextArea/AutoScrollOnSelectAndAppend/AutoScrollOnSelectAndAppend.java fails on mac10.13
Reviewed-by: psadhukhan
2021-10-27 09:29:37 +00:00
Albert Mingkun Yang
9e831bccd2 8275886: G1: remove obsolete comment in HeapRegion::setup_heap_region_size
Reviewed-by: mli, tschatzl
2021-10-27 08:24:44 +00:00
Wang Huang
9f75d5ce50 8259948: Aarch64: Add cast nodes for Aarch64 Neon backend
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Wu Yan <wuyan@openjdk.org>
Co-authored-by: Miao Zhuojun <mouzhuojun@huawei.com>
Reviewed-by: aph, eliu, njian
2021-10-27 05:32:50 +00:00
Alexander Zvegintsev
d98b7c2591 8202926: Test java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html fails
Reviewed-by: serb
2021-10-27 01:58:11 +00:00
Yi Yang
b0d1e4ff4d 8273585: String.charAt performance degrades due to JDK-8268698
Reviewed-by: roland, kvn
2021-10-27 01:21:12 +00:00
Daniel D. Daugherty
7addcd7cfb 8276034: ProblemList gtest dll_address_to_function_and_library_name on macosx-x64
Reviewed-by: prr
2021-10-26 22:03:18 +00:00
Doug Simon
2448b3f5f9 8275874: [JVMCI] only support aligned reads in c2v_readFieldValue
Reviewed-by: never, shade
2021-10-26 18:50:21 +00:00
Jiří Vaněk
f1f5e2690c 8275872: Sync J2DBench run and analyze Makefile targets with build.xml
Reviewed-by: ihse, andrew
2021-10-26 16:54:55 +00:00
Andrey Turbanov
19f76c215d 8275079: Remove unnecessary conversion to String in java.net.http
Reviewed-by: dfuchs
2021-10-26 16:40:55 +00:00
Calvin Cheung
e5cd2692da 8274944: AppCDS dump causes SEGV in VM thread while adjusting lambda proxy class info
Reviewed-by: minqi, dholmes
2021-10-26 16:26:57 +00:00
Roland Westrelin
82f4aacb42 8259609: C2: optimize long range checks in long counted loops
Co-authored-by: John R Rose <jrose@openjdk.org>
Reviewed-by: thartmann, jrose
2021-10-26 15:53:37 +00:00
Anton Tarasov
574f8903ee 8275720: CommonComponentAccessibility.createWithParent isWrapped causes mem leak
Reviewed-by: kizune, pbansal
2021-10-26 15:47:17 +00:00
Anton Tarasov
7c88a59b7b 8275809: crash in [CommonComponentAccessibility getCAccessible:withEnv:]
Reviewed-by: kizune, pbansal
2021-10-26 15:26:45 +00:00
Andrey Turbanov
c9dec2f984 8273299: Unnecessary Vector usage in java.security.jgss
Reviewed-by: weijun
2021-10-26 15:25:23 +00:00
Anton Tarasov
b98ed55060 8275819: [TableRowAccessibility accessibilityChildren] method is ineffective
Reviewed-by: pbansal, kizune
2021-10-26 15:23:43 +00:00
Coleen Phillimore
71d593ede6 8275162: Use varargs in 'def' macros in mutexLocker.cpp
Reviewed-by: dholmes, pchilanomate
2021-10-26 14:33:22 +00:00
Harold Seigel
7ca053de21 8251904: vmTestbase/nsk/sysdict/vm/stress/btree/btree010/btree010.java fails with ClassNotFoundException: nsk.sysdict.share.BTree0LLRLRLRRLR
Reviewed-by: dholmes, lmesnik
2021-10-26 12:37:54 +00:00
Jatin Bhateja
4be88d5482 8275047: Optimize existing fill stubs for AVX-512 target
Reviewed-by: kvn, redestad
2021-10-26 12:34:56 +00:00
Naoto Sato
63e0f344e9 8275767: JDK source code contains redundant boolean operations in jdk.charsets
Reviewed-by: lancea, rriggs, iris
2021-10-26 12:32:49 +00:00
Julia Boes
4961373a67 8275137: jdk.unsupported/sun.reflect.ReflectionFactory.readObjectNoDataForSerialization uses wrong signature
Reviewed-by: dfuchs
2021-10-26 12:17:47 +00:00
Harold Seigel
174f553f7e 8275869: Problem list applications/jcstress/copy.java on Linux-aarch64
Reviewed-by: lfoltan, dholmes
2021-10-26 12:05:09 +00:00
Thomas Stuefe
3ff085e296 8275582: Don't purge metaspace mapping lists
Reviewed-by: coleenp, lkorinth
2021-10-26 04:52:01 +00:00
Weijun Wang
10e1610f7b 8251134: Unwrapping a key with a Private Key generated by Microsoft CNG fails
Reviewed-by: valeriep
2021-10-26 02:45:23 +00:00
Weijun Wang
43619458d1 8185844: MSCAPI doesn't list aliases correctly
Reviewed-by: valeriep
2021-10-26 02:39:05 +00:00
Harold Seigel
337a9b73a7 8269853: Prefetch::read should accept pointer to const
Reviewed-by: coleenp
2021-10-25 19:44:25 +00:00
Clive Verghese
97d3280eb4 8275536: Add test to check that File::lastModified returns same time stamp as Files.getLastModifiedTime
Reviewed-by: alanb, bpb
2021-10-25 18:33:57 +00:00
Igor Veresov
89671aa164 8273712: C2: Add mechanism for rejecting inlining of low frequency call sites and deprecate MinInliningThreshold.
Reviewed-by: kvn, rbackman
2021-10-25 17:03:57 +00:00
Artem Semenov
3221a14f9e 8273678: TableAccessibility and TableRowAccessibility miss autorelease
Reviewed-by: ant, kizune, pbansal
2021-10-25 16:26:43 +00:00
Alexander Zvegintsev
7cf68b1901 8202932: java/awt/Component/NativeInLightShow/NativeInLightShow.java fails
Reviewed-by: serb
2021-10-25 14:34:36 +00:00
Alexander Zvegintsev
f610ef0dbc 8196440: Regression automated Test 'java/awt/TrayIcon/PopupMenuLeakTest/PopupMenuLeakTest.java' fails
Reviewed-by: serb, psadhukhan
2021-10-25 14:27:17 +00:00
Jaikiran Pai
f143d2a88e 8268595: java/io/Serializable/serialFilter/GlobalFilterTest.java#id1 failed in timeout
Reviewed-by: chegar, rriggs
2021-10-25 14:24:05 +00:00
Albert Mingkun Yang
7f94302cec 8275511: G1: Rename needs_remset_update to remset_is_tracked in G1HeapRegionAttr
Reviewed-by: tschatzl, sjohanss
2021-10-25 13:18:20 +00:00
Stefan Karlsson
0bcc1749ea 8275717: Reimplement STATIC_ASSERT to use static_assert
Reviewed-by: stuefe, eosterlund, kbarrett
2021-10-25 09:07:51 +00:00
Alexey Bakhtin
f6232982b9 8271199: Mutual TLS handshake fails signing client certificate with custom sensitive PKCS11 key
Reviewed-by: xuelei, valeriep
2021-10-25 08:00:40 +00:00
Christian Hagedorn
1da5e6b0e2 8275104: IR framework does not handle client VM builds correctly
Reviewed-by: kvn, thartmann
2021-10-25 07:25:19 +00:00
Hamlin Li
5dab76b939 8275381: G1: refactor 2 constructors of G1CardSetConfiguration
Reviewed-by: tschatzl, ayang
2021-10-25 01:03:51 +00:00
Sergey Tsypanov
5bbe4cae87 8275293: A change done with JDK-8268764 mismatches the java.rmi.server.ObjID.hashCode spec
Reviewed-by: rriggs, smarks
2021-10-23 21:07:58 +00:00
Igor Ignatyev
c94dc2ab60 8272854: split runtime/CommandLine/PrintTouchedMethods.java test
Reviewed-by: iklam
2021-10-23 03:59:55 +00:00
Hai-May Chao
fec470f262 8272163: Add -version option to keytool and jarsigner
Reviewed-by: weijun
2021-10-22 20:53:38 +00:00
Phil Race
6523c558d9 8198336: java/awt/FontMetrics/FontCrash.java fails in headless mode
Reviewed-by: serb
2021-10-22 17:22:12 +00:00
Wu Yan
88bbf3c2e6 8273111: Default timezone should return zone ID if /etc/localtime is valid but not canonicalization on linux
Co-authored-by: Sun Jianye <sunjianye@huawei.com>
Reviewed-by: naoto, mli
2021-10-22 16:23:25 +00:00
Doug Simon
4dec8fc4cc 8275645: [JVMCI] avoid unaligned volatile reads on AArch64
Reviewed-by: kvn, never
2021-10-22 16:20:31 +00:00
Albert Mingkun Yang
4e647aa584 8275416: G1: remove unnecessary make_referent_alive in precleaning phase
Reviewed-by: tschatzl, sjohanss
2021-10-22 13:01:24 +00:00
Albert Mingkun Yang
dd622e55c0 8275783: G1: fix incorrect region type documentation in HeapRegionType
Reviewed-by: tschatzl
2021-10-22 12:47:35 +00:00
Andy Herrick
b2128a9667 8263155: Allow additional contents for DMG
Reviewed-by: asemenyuk, almatvee
2021-10-22 12:17:45 +00:00
Stefan Karlsson
1efe946db7 8275712: Hashtable literal_size functions are broken
Reviewed-by: coleenp, zgu
2021-10-22 08:20:43 +00:00
David Holmes
fab3d6c612 8275761: Backout: JDK-8274794 Print all owned locks in hs_err file
Reviewed-by: mikael
2021-10-22 04:47:53 +00:00
Sergey Bylokhov
c978ca87de 8275344: -Xcheck:jni produces some warnings in the LCMS.c
Reviewed-by: azvegint, prr, kizune
2021-10-22 03:05:16 +00:00
Joe Darcy
6a466fe7ae 8202056: Expand serial warning to check for bad overloads of serial-related methods and ineffectual fields
8160675: Issue lint warning for non-serializable non-transient instance fields in serializable type

Reviewed-by: erikj, sspitsyn, jlahoda, vromero, rriggs, smarks
2021-10-21 21:11:01 +00:00
Andrey Turbanov
4e9dd4bddb 8275384: Change nested classes in jdk.jconsole to static nested classes
Reviewed-by: alanb, sspitsyn, mchung
2021-10-21 20:52:31 +00:00
Dean Long
0961de47de 8275347: ciReplay: staticfield lines not properly terminated
Reviewed-by: neliasso, chagedorn
2021-10-21 19:02:38 +00:00
Yumin Qi
7dd823740f 8275084: CDS warning when building with LOG=debug
Reviewed-by: dholmes, iklam
2021-10-21 18:30:21 +00:00
Sean Mullan
49f9d8031e 8243585: AlgorithmChecker::check throws confusing exception when it rejects the signer key
Reviewed-by: ascarpino
2021-10-21 17:28:40 +00:00
Albert Mingkun Yang
bef8cf1ba1 8275714: G1: remove unused variable in G1Policy::transfer_survivors_to_cset
Reviewed-by: tschatzl
2021-10-21 15:49:21 +00:00
Mikhailo Seledtsov
af14650127 8275569: Add linux-aarch64 to test-make profiles
Reviewed-by: ihse
2021-10-21 15:31:03 +00:00
Joe Darcy
0761a4b915 8275688: Suppress warnings on non-serializable non-transient instance fields in DualPivotQuicksort
Reviewed-by: rriggs
2021-10-21 15:26:07 +00:00
Joe Darcy
3cb241a91f 8275686: Suppress warnings on non-serializable non-transient instance fields in java.rmi
Reviewed-by: bpb, iris, rriggs
2021-10-21 15:25:10 +00:00
Christian Hagedorn
3b0ce23bcd 8274888: Dump "-DReproduce=true" to the test VM command line output
Reviewed-by: thartmann, kvn
2021-10-21 14:05:45 +00:00
Weijun Wang
d589b664cc 8270380: Change the default value of the java.security.manager system property to disallow
Reviewed-by: lancea, mullan, rriggs
2021-10-21 14:04:48 +00:00
Harold Seigel
e39bdc9ddb 8274714: Incorrect verifier protected access error message
Reviewed-by: dholmes, coleenp
2021-10-21 13:50:32 +00:00
Evan Whelan
45ce06c9f3 8274779: HttpURLConnection: HttpClient and HttpsClient incorrectly check request method when set to POST
Reviewed-by: dfuchs, coffeys, vtewari, michaelm
2021-10-21 13:33:21 +00:00
Kim Barrett
60cb27dcda 8275426: PretouchTask num_chunks calculation can overflow
Reviewed-by: ayang, tschatzl
2021-10-21 13:28:25 +00:00
Coleen Phillimore
cd07b3cab0 8257534: misc tests failed with "NoClassDefFoundError: Could not initialize class java.util.concurrent.ThreadLocalRandom"
Reviewed-by: hseigel
2021-10-21 11:46:24 +00:00
Coleen Phillimore
819d2df8b0 8274794: Print all owned locks in hs_err file
Reviewed-by: stuefe, dholmes
2021-10-21 11:28:22 +00:00
Markus Grönlund
c41ce6d159 8275415: Prepare Leak Profiler for Lilliput
Reviewed-by: rkennke
2021-10-21 10:12:19 +00:00
Alexander Zuev
0c3eaea11c 8168388: GetMousePositionTest fails with the message "Mouse position should not be null"
Reviewed-by: psadhukhan, serb
2021-10-21 09:51:18 +00:00
Stefan Karlsson
09f5235c65 8275405: Linking error for classes with lambda template parameters and virtual functions
Reviewed-by: ihse, pliden
2021-10-21 07:47:10 +00:00
Hamlin Li
a120937e81 8274988: G1: refine G1SegmentedArrayAllocOptions and G1CardSetAllocOptions
Reviewed-by: tschatzl, ayang
2021-10-21 01:17:52 +00:00
Hamlin Li
c7a80e60e2 8275607: G1: G1CardSetAllocator::drop_all needs to call G1SegmentedArray::drop_all
Reviewed-by: tschatzl, ayang
2021-10-21 01:16:10 +00:00
vamsi-parasa
af7c56b85b 8275167: x86 intrinsic for unsignedMultiplyHigh
Reviewed-by: kvn, sviswanathan
2021-10-20 22:40:51 +00:00
Igor Ignatyev
cea3f01046 8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless
Reviewed-by: lmesnik
2021-10-20 19:24:46 +00:00
Alisen Chung
d1e3ca4ee3 8233558: [TESTBUG] WindowOwnedByEmbeddedFrameTest.java fails on macos
Reviewed-by: serb, kizune, prr
2021-10-20 18:51:00 +00:00
Markus Karg
913f9281ad 8273507: Convert test/jdk/java/nio/channels/Channels/TransferTo.java to TestNG test
Reviewed-by: shade, bpb
2021-10-20 18:30:52 +00:00
Mikhailo Seledtsov
0021a2f462 8275449: Add linux-aarch64-zero build profile
Reviewed-by: erikj
2021-10-20 18:16:58 +00:00
Alexander Zvegintsev
46b5bfbc38 8233648: [TESTBUG] DefaultMenuBarTest.java failing on macos
Reviewed-by: pbansal, serb, psadhukhan, prr
2021-10-20 16:44:47 +00:00
Harold Seigel
bbc606117f 8272614: Unused parameters in MethodHandleNatives linking methods
Reviewed-by: dholmes, lfoltan
2021-10-20 15:48:43 +00:00
Thomas Schatzl
7e28bdd1eb 8275055: Improve HeapRegionRemSet::split_card()
Reviewed-by: sjohanss, ayang
2021-10-20 15:33:50 +00:00
Jaikiran Pai
35e5bb5f59 8269336: Malformed jdk.serialFilter incorrectly handled
Reviewed-by: rriggs
2021-10-20 15:10:28 +00:00
Daniel Jelinski
043cde22d4 8275319: java.net.NetworkInterface throws java.lang.Error instead of SocketException
Reviewed-by: alanb, dfuchs
2021-10-20 14:06:08 +00:00
Harold Seigel
a91a0a523a 8233724: Remove -Wc++14-compat warning suppression in operator_new.cpp
Reviewed-by: coleenp
2021-10-20 12:20:50 +00:00
Harold Seigel
1271fbf3d4 8248584: Enable CHECK_UNHANDLED_OOPS for Windows fastdebug builds
Reviewed-by: dholmes, erikj
2021-10-20 12:15:40 +00:00
Zhengyu Gu
135cf3c94d 8275439: Remove PrintVtableStats
Reviewed-by: coleenp, dholmes
2021-10-20 11:46:13 +00:00
Thomas Schatzl
50a57238a8 8274910: Compile in G1 evacuation failure injection code based on define
Reviewed-by: sjohanss, ayang
2021-10-20 11:42:58 +00:00
Hannes Wallnöfer
5454a76752 8275273: Add missing HtmlStyle documentation
Reviewed-by: jjg
2021-10-20 09:59:55 +00:00
sunguoyun
bd0bed71e5 8273317: crash in cmovP_cmpP_zero_zeroNode::bottom_type()
Reviewed-by: thartmann, kvn
2021-10-20 06:37:20 +00:00
Prasanta Sadhukhan
77b2789396 7124287: [macosx] JTableHeader doesn't get focus after pressing F8 key
Reviewed-by: kizune
2021-10-20 06:31:59 +00:00
Weijun Wang
c24fb852f2 8275512: Upgrade required version of jtreg to 6.1
Reviewed-by: ihse, iignatyev, joehw, lancea, jjg, mchung
2021-10-19 21:04:14 +00:00
Joe Darcy
926966be7a 8275003: Suppress warnings on non-serializable non-transient instance fields in windows mscapi
Reviewed-by: valeriep
2021-10-19 20:53:23 +00:00
Valerie Peng
e63c1486dc 8264849: Add KW and KWP support to PKCS11 provider
Reviewed-by: ascarpino
2021-10-19 20:50:56 +00:00
Weijun Wang
bd2b41dd70 8275252: Migrate cacerts from JKS to password-less PKCS12
Reviewed-by: erikj, ihse, mullan
2021-10-19 20:48:17 +00:00
Phil Race
54a29a4470 8192931: Regression test java/awt/font/TextLayout/CombiningPerf.java fails
Reviewed-by: serb, jdv, kizune
2021-10-19 20:45:27 +00:00
Ian Graves
4b9303b77b 8273308: PatternMatchTest.java fails on CI
Reviewed-by: dfuchs, smarks
2021-10-19 18:26:04 +00:00
Jamsheed Mohammed C M
25c8584879 8271723: Unproblemlist runtime/InvocationTests/invokevirtualTests.java
Reviewed-by: thartmann
2021-10-19 18:26:03 +00:00
Harold Seigel
76373ae3c8 8270404: Better canonicalization
Reviewed-by: coleenp, rhalade, mschoene
2021-10-19 18:26:03 +00:00
Harold Seigel
24b588eddb 8270398: Enhance canonicalization
Reviewed-by: rhalade, mschoene, coleenp
2021-10-19 18:26:03 +00:00
Weijun Wang
b774d31c48 8266689: More Constrained Delegation
Reviewed-by: valeriep, rhalade, ahgross
2021-10-19 18:26:03 +00:00
Prasanta Sadhukhan
333b9d5715 8265580: Enhanced style for RTF kit
Reviewed-by: rhalade, azvegint, prr, mschoene
2021-10-19 18:26:02 +00:00
Prasanta Sadhukhan
4e4a3cf657 8269763: The JEditorPane is blank after JDK-8265167
Reviewed-by: azvegint, prr
2021-10-19 18:26:02 +00:00
Jamsheed Mohammed C M
af82404b3c 8269624: Enhance method selection support
Reviewed-by: vlivanov, rhalade, thartmann, iignatyev, jwilhelm, ahgross
2021-10-19 18:26:02 +00:00
Prasanta Sadhukhan
3ab356335d 8265574: Improve handling of sheets
Reviewed-by: azvegint, prr, rhalade, mschoene, ahgross
2021-10-19 18:26:02 +00:00
Jamil Nimeh
f2c5728a86 8268199: Correct certificate requests
Reviewed-by: xuelei, ahgross, rhalade
2021-10-19 18:26:02 +00:00
Jamil Nimeh
44ce867314 8270105: Fix ServerKeyExchange copyright
Reviewed-by: jnimeh, weijun
2021-10-19 18:26:01 +00:00
Jamil Nimeh
9c4988daeb 8268193: Improve requests of certificates
Reviewed-by: xuelei, rhalade, ahgross
2021-10-19 18:26:01 +00:00
Xue-Lei Andrew Fan
c714707eac 8268205: Enhance DTLS client handshake
Reviewed-by: jnimeh, ahgross, rhalade
2021-10-19 18:26:01 +00:00
Xue-Lei Andrew Fan
365a2d428c 8269618: Better session identification
Reviewed-by: jnimeh, rhalade, ahgross
2021-10-19 18:26:01 +00:00
Hai-May Chao
20e1a273c2 8268500: Better specified ParameterSpecs
Reviewed-by: weijun, ahgross, rhalade
2021-10-19 18:26:01 +00:00
Hai-May Chao
790dcc667d 8268506: More Manifest Digests
Reviewed-by: xuelei, ahgross, weijun, rhalade
2021-10-19 18:26:00 +00:00
Weijun Wang
ab9170957f 8270212: ArrayIndexOutOfBoundsException in java.security.KeyFactory.generatePublic
Reviewed-by: ahgross, valeriep
2021-10-19 18:26:00 +00:00
Jayathirth D V
c70f7cad47 8267735: Better BMP support
Reviewed-by: prr, rhalade, azvegint, ahgross, mschoene
2021-10-19 18:26:00 +00:00
Weijun Wang
3470e7b300 8266109: More Resilient Classloading
Reviewed-by: lancea, rhalade, mschoene, bchristi
2021-10-19 18:26:00 +00:00
Xue-Lei Andrew Fan
a07a046c92 8267729: Improve TLS client handshaking
Reviewed-by: ahgross, jnimeh, rhalade
2021-10-19 18:25:59 +00:00
Prasanta Sadhukhan
fde3839c0c 8265167: Richer Text Editors
Reviewed-by: prr, rhalade, mschoene, azvegint
2021-10-19 18:25:59 +00:00
Hai-May Chao
a48251cb4a 8266137: Improve Keystore integrity
Reviewed-by: mschoene, rhalade, weijun
2021-10-19 18:25:59 +00:00
Aleksei Efimov
bddcc8ea9d 8267712: Better LDAP reference processing
Reviewed-by: dfuchs, ahgross, rhalade
2021-10-19 18:25:59 +00:00
Valerie Peng
470e8a0fda 8266103: Better specified spec values
Reviewed-by: mullan, rhalade, mschoene
2021-10-19 18:25:59 +00:00
Julia Boes
dd199ee063 8266097: Better hashing support
Reviewed-by: chegar, dfuchs, ahgross, smarks, rhalade
2021-10-19 18:25:58 +00:00
Michael McMahon
3a7b663b6f 8265776: Improve Stream handling for SSL
Reviewed-by: dfuchs, chegar, rhalade, ahgross
2021-10-19 18:25:58 +00:00
Weijun Wang
34628ff8ac 8266115: More Manifest Jar Loading
Reviewed-by: mschoene, ahgross, mullan, rhalade
2021-10-19 18:25:58 +00:00
Weijun Wang
a26f9db704 8263314: Enhance XML Dsig modes
Reviewed-by: rhalade, mschoene, valeriep, mullan
2021-10-19 18:25:58 +00:00
Alexander Zvegintsev
895e2bd7c0 8274160: java/awt/Window/ShapedAndTranslucentWindows/Common.java delay is too high
Reviewed-by: psadhukhan, pbansal
2021-10-19 17:24:20 +00:00
Vicente Romero
fd10f1996e 8275302: unexpected compiler error: cast, intersection types and sealed
Reviewed-by: jlahoda
2021-10-19 16:46:14 +00:00
Markus Grönlund
99bf7dd8dd 8275517: Off-by-one error in allocation
Reviewed-by: tschatzl
2021-10-19 16:20:45 +00:00
Naoto Sato
8a3e0a1fc1 7008363: TEST_BUG: test/java/lang/StringCoding/CheckEncodings.sh does nothing and is very slow at that
Reviewed-by: iris, lancea, bpb, whuang
2021-10-19 15:54:14 +00:00
Andrey Turbanov
a579483c88 8274899: Replace usages of Collections.sort with List.sort call in jdk.hotspot.agent
Reviewed-by: sspitsyn, cjplummer, ayang
2021-10-19 14:46:30 +00:00
Zhengyu Gu
002c538bc0 8275287: Relax memory ordering constraints on updating instance class and array class counters
Reviewed-by: dholmes, rkennke
2021-10-19 14:14:23 +00:00
Markus Grönlund
98ab4b03b3 8275445: RunThese30M.java failed "assert(ZAddress::is_marked(addr)) failed: Should be marked"
Reviewed-by: egahlin, coleenp
2021-10-19 13:00:50 +00:00
Jayathirth D V
dcd6e0da24 8255724: [XRender] the BlitRotateClippedArea test fails on Linux in the XR pipeline
Reviewed-by: psadhukhan
2021-10-19 12:25:32 +00:00
Hamlin Li
d17d81a8b2 8273626: G1: Factor out concurrent segmented array from G1CardSetAllocator
Reviewed-by: tschatzl, ayang
2021-10-19 12:24:21 +00:00
Zhengyu Gu
a4491f2253 8275413: Remove unused InstanceKlass::set_array_klasses() method
Reviewed-by: coleenp
2021-10-19 12:00:30 +00:00
Julia Boes
9d191fce55 8245095: Implementation of JEP 408: Simple Web Server
Co-authored-by: Julia Boes <jboes@openjdk.org>
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Co-authored-by: Michael McMahon <michaelm@openjdk.org>
Co-authored-by: Daniel Fuchs <dfuchs@openjdk.org>
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Ivan Šipka <isipka@openjdk.org>
Reviewed-by: ihse, jlaskey, michaelm, chegar, dfuchs
2021-10-19 10:19:15 +00:00
Jayathirth D V
947d52c4c3 8255898: Test java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.java fails on Mac OS
Reviewed-by: prr, serb
2021-10-19 04:04:25 +00:00
Daniel D. Daugherty
a03119ce1a 8275436: [BACKOUT] JDK-8271949 dumppath in -XX:FlightRecorderOptions does not affect
Reviewed-by: mgronlun
2021-10-18 18:25:53 +00:00
Calvin Cheung
bad75e6796 8275150: URLClassLoaderTable should store OopHandle instead of Handle
Reviewed-by: stefank, minqi
2021-10-18 18:05:39 +00:00
Markus Grönlund
72a976ef05 8266936: Add a finalization JFR event
Reviewed-by: coleenp, mchung, egahlin
2021-10-18 16:52:36 +00:00
Gerard Ziemski
bcbe3845d9 8269175: [macosx-aarch64] wrong CPU speed in hs_err file
Reviewed-by: dholmes, dcubed, stuefe
2021-10-18 16:24:02 +00:00
Joe Darcy
426bcee927 8275360: Use @Override in javax.annotation.processing
Reviewed-by: iris
2021-10-18 16:11:16 +00:00
Albert Mingkun Yang
4d383b9fcd 8275298: Remove unnecessary weak_oops_do call in adjust weak roots phase
Reviewed-by: tschatzl, sjohanss
2021-10-18 16:02:22 +00:00
Joe Darcy
fb8e5cf4ec 8275368: Correct statement of kinds of elements Processor.process operates over
Reviewed-by: jlahoda
2021-10-18 15:48:59 +00:00
Andy Herrick
d548f2fc0d 8274346: Support for additional content in an app-image.
Reviewed-by: asemenyuk, almatvee
2021-10-18 13:28:41 +00:00
Weijun Wang
a619f8909b 8274721: UnixSystem fails to provide uid, gid or groups if no username is available
Reviewed-by: mullan
2021-10-18 13:24:39 +00:00
Andrey Turbanov
1afddb2560 8275322: Change nested classes in java.management to static nested classes
Reviewed-by: alanb, dfuchs, mchung, sspitsyn
2021-10-18 12:02:00 +00:00
Stefan Karlsson
45ebf85ca9 8275333: Print count in "Too many recored phases?" assert
Reviewed-by: eosterlund, tschatzl
2021-10-18 11:20:51 +00:00
Tobias Holenstein
ebb1363e5d 8251513: Code around Parse::do_lookupswitch/do_tableswitch should be cleaned up
Reviewed-by: roland, thartmann
2021-10-18 07:32:17 +00:00
Stefan Karlsson
bb7dacdc78 8275334: Move class loading Events to a separate section in hs_err files
Reviewed-by: stuefe, coleenp
2021-10-18 07:03:17 +00:00
Yasumasa Suenaga
31500692d1 8271949: dumppath in -XX:FlightRecorderOptions does not affect
Reviewed-by: ddong, mgronlun
2021-10-17 08:59:13 +00:00
Thomas Schatzl
bfcf6a29a1 8275277: assert(dest_attr.is_in_cset() == (obj->forwardee() == obj)) failed: Only evac-failed objects must be in the collection set here but <addr> is not
Reviewed-by: ayang, rkennke
2021-10-16 11:05:48 +00:00
Jonathan Gibbons
96fef40b82 8189591: No way to locally suppress doclint warnings
Reviewed-by: hannesw, prappo
2021-10-16 03:04:11 +00:00
Brian Burkhalter
7fc3a8d052 8275149: (ch) ReadableByteChannel returned by Channels.newChannel(InputStream) throws ReadOnlyBufferException
Reviewed-by: alanb
2021-10-15 22:58:21 +00:00
Lance Andersen
831802ddb1 8275163: Deflater::deflate methods omit javadoc for ReadOnlyBufferException
Reviewed-by: bpb, iris, naoto
2021-10-15 20:38:43 +00:00
Naoto Sato
ad9e234f5e 8275145: file.encoding system property has an incorrect value on Windows
Reviewed-by: mchung, iris, rriggs, alanb
2021-10-15 20:36:30 +00:00
Joe Darcy
f17818516c 8275249: Suppress warnings on non-serializable array component types in jdk.jlink
Reviewed-by: iris
2021-10-15 17:24:30 +00:00
Calvin Cheung
ee64ce9f14 8274937: Revert the timeout setting for DynamicLoaderConstraintsTest
Reviewed-by: dcubed, minqi
2021-10-15 16:53:00 +00:00
Joe Darcy
8c4da9c15f 8275013: Improve discussion of serialization method declarations in java.io.Object{Input, Output}Stream
Reviewed-by: smarks, rriggs
2021-10-15 16:17:29 +00:00
Alexander Zvegintsev
da8da3a161 8269698: Specification for methods of java.awt.im.InputContext should mention that they do nothing
Reviewed-by: serb
2021-10-15 14:03:55 +00:00
Weijun Wang
8e02064288 8049520: FileCredentialsCache loads cache once and is never refreshed
Reviewed-by: mullan
2021-10-15 13:51:52 +00:00
Coleen Phillimore
172aed1a2d 8274338: com/sun/jdi/RedefineCrossEvent.java failed "assert(m != __null) failed: NULL mirror"
Reviewed-by: dholmes, iklam
2021-10-15 12:10:27 +00:00
Aleksey Shipilev
ced79091f6 8275286: Check current thread when calling JRT methods that expect it
Reviewed-by: zgu, coleenp, dholmes
2021-10-15 11:15:49 +00:00
Artem Semenov
c0f3e1d6be 8271071: accessibility of a table on macOS lacks cell navigation
Reviewed-by: ant, kizune, pbansal
2021-10-15 09:51:28 +00:00
Christian Hagedorn
4cb7124c1e 8262912: ciReplay: replay does not simulate unresolved classes
Reviewed-by: kvn, dlong
2021-10-15 07:38:38 +00:00
Andrey Turbanov
322b130106 8275106: Cleanup Iterator usages in java.desktop
Reviewed-by: serb, pbansal
2021-10-15 07:09:11 +00:00
Sergey Bylokhov
c355704a4b 8041125: ColorConvertOp filter much slower in JDK 8 compared to JDK7
Reviewed-by: prr
2021-10-15 02:21:26 +00:00
Jie Fu
9623d5bb46 8275265: java/nio/channels tests needing large heap sizes fail on x86_32
Reviewed-by: alanb, bpb
2021-10-14 23:12:56 +00:00
Andrey Turbanov
21df412bd9 8275240: Change nested classes in jdk.attach to static nested classes
Reviewed-by: cjplummer, dholmes, sspitsyn
2021-10-14 23:12:05 +00:00
Fernando Guallini
a16f2d0a3c 8272908: Missing coverage for certain classes in com.sun.org.apache.xml.internal.security
Reviewed-by: rhalade
2021-10-14 18:26:27 +00:00
Bernhard Urban-Forster
ede3f4e94c 8274795: AArch64: avoid spilling and restoring r18 in macro assembler
Reviewed-by: aph
2021-10-14 16:58:14 +00:00
Jaikiran Pai
40d69f0c41 8254267: javax/xml/crypto/dsig/LogParameters.java failed with "RuntimeException: Unexpected log output:"
Reviewed-by: weijun, dfuchs
2021-10-14 14:38:16 +00:00
Per Liden
54b8870766 8275035: Clean up worker thread infrastructure
Reviewed-by: stefank, ayang
2021-10-14 14:05:36 +00:00
Zhengyu Gu
3b0b6adc3d 8275226: Shenandoah: Relax memory constraint for worker claiming tasks/ranges
Reviewed-by: shade
2021-10-14 12:52:12 +00:00
Hannes Wallnöfer
8d9004b7f4 8274781: Use monospace font for enclosing interface
Reviewed-by: prappo
2021-10-14 12:19:26 +00:00
Nick Gasson
333c4692d8 8275262: [BACKOUT] AArch64: Implement string_compare intrinsic in SVE
Reviewed-by: dholmes, tschatzl
2021-10-14 09:35:48 +00:00
TatWai Chong
8b1b6f9fb3 8269559: AArch64: Implement string_compare intrinsic in SVE
Reviewed-by: ngasson, aph
2021-10-14 05:27:12 +00:00
Joe Darcy
d9e03e42af 8275244: Suppress warnings on non-serializable array component types in jdk.management
Reviewed-by: alanb
2021-10-13 20:19:04 +00:00
lawrence.andrews
7dc2db4aac 8274032: Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/ImagePrinting/ImageTypes.java & show test UI
Reviewed-by: serb, pbansal
2021-10-13 20:06:35 +00:00
lawrence.andrews
1e0184d142 8275234: java/awt/GraphicsDevice/DisplayModes/CycleDMImage.java is entered twice in ProblemList
Reviewed-by: serb, pbansal
2021-10-13 20:04:30 +00:00
Joe Darcy
d15fbc28af 8275187: Suppress warnings on non-serializable array component types in java.sql.rowset
Reviewed-by: lancea
2021-10-13 16:53:46 +00:00
Fairoz Matte
d8f6b6c19a 8274718: runtime/cds/appcds/LambdaEagerInit.java fails with -XX:-CompactStrings
Reviewed-by: iklam, ccheung
2021-10-13 15:38:36 +00:00
Jie Fu
451a296510 8275173: testlibrary_tests/ir_framework/tests/TestCheckedTests.java fails after JDK-8274911
Reviewed-by: chagedorn, thartmann
2021-10-13 14:30:11 +00:00
Andrey Turbanov
5ffb5d100f 8272992: Replace usages of Collections.sort with List.sort call in jdk.* modules
Reviewed-by: cjplummer, prappo
2021-10-13 11:34:24 +00:00
Jan Lahoda
b8cb76ad21 8273682: Upgrade Jline to 3.20.0
Reviewed-by: sundar
2021-10-13 10:15:54 +00:00
Andrey Turbanov
dcf428c7a7 8275075: Remove unnecessary conversion to String in jdk.hotspot.agent
Reviewed-by: sspitsyn, cjplummer
2021-10-13 09:07:07 +00:00
Thomas Schatzl
c3b75c6cdf 8274516: [REDO] JDK-8271880: Tighten condition for excluding regions from collecting cards with cross-references
Reviewed-by: sjohanss, ayang
2021-10-13 08:10:55 +00:00
Niklas Radomski
337b73a459 8274851: [PPC64] Port zgc to linux on ppc64le
Reviewed-by: ihse, pliden, mdoerr, eosterlund
2021-10-13 07:36:52 +00:00
Martin Doerr
cf828673a9 8275049: [ZGC] missing null check in ZNMethod::log_register
Reviewed-by: nradomski, eosterlund, pliden
2021-10-13 07:12:52 +00:00
Joe Darcy
ab34cced3b 8275186: Suppress warnings on non-serializable array component types in xml
Reviewed-by: joehw
2021-10-13 05:26:33 +00:00
Daniel D. Daugherty
b1b83500a9 8275171: ProblemList compiler/codegen/aes/TestAESMain.java on linux-x64 and windows-x64 in -Xcomp mode
Reviewed-by: iignatyev
2021-10-12 23:43:40 +00:00
Magnus Ihse Bursie
03c2b73e21 8275128: Build hsdis using normal build system
Reviewed-by: erikj
2021-10-12 23:28:53 +00:00
Sergey Tsypanov
124f82377b 8268764: Use Long.hashCode() instead of int-cast where applicable
Reviewed-by: kevinw, prr, kizune, serb
2021-10-12 19:13:17 +00:00
Daniel D. Daugherty
8657f77608 8271514: support JFR use of new ThreadsList::Iterator
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Reviewed-by: sspitsyn, mgronlun
2021-10-12 17:05:47 +00:00
Evgeny Astigeevich
b8bd259bb8 8271737: Only normalize the cached user.dir property once
Reviewed-by: phh
2021-10-12 16:56:06 +00:00
Dmitry Batrak
89999f70e0 8275131: Exceptions after a touchpad gesture on macOS
Reviewed-by: dmarkov, prr
2021-10-12 15:36:41 +00:00
Brian Burkhalter
07b1f1c282 8274548: (fc) FileChannel gathering write fails with IOException "Invalid argument" on macOS 11.6
Reviewed-by: alanb
2021-10-12 15:25:53 +00:00
Christian Hagedorn
f623460668 8274911: testlibrary_tests/ir_framework/tests/TestIRMatching.java fails with "java.lang.RuntimeException: Should have thrown exception"
Reviewed-by: kvn, thartmann
2021-10-12 13:21:35 +00:00
Roman Kennke
e393c5ea9d 8275074: Cleanup unused code in JFR LeakProfiler
Reviewed-by: mgronlun
2021-10-12 13:16:20 +00:00
Martin Doerr
e16b93ad52 8274770: [PPC64] resolve_jobject needs a generic implementation to support load barriers
Reviewed-by: goetz, nradomski
2021-10-12 12:18:49 +00:00
Zhengyu Gu
1ab64143c0 8275051: Shenandoah: Correct ordering of requested gc cause and gc request flag
Reviewed-by: shade
2021-10-12 11:58:35 +00:00
kabutz
b460d6ddaf 8275091: /src/jdk.management.jfr/share/classes/module-info.java has non-canonical order
Reviewed-by: mgronlun
2021-10-12 11:38:21 +00:00
Andrey Turbanov
d04d4ee2c1 8274894: Use Optional.empty() instead of ofNullable(null) in HttpResponse.BodySubscribers.discarding
Reviewed-by: dfuchs
2021-10-12 11:14:31 +00:00
Doug Simon
33050f8013 8274986: max code printed in hs-err logs should be configurable
Reviewed-by: never, dholmes
2021-10-12 09:49:50 +00:00
Kim Barrett
8de26361f7 8274615: Support relaxed atomic add for linux-aarch64
Reviewed-by: aph, dholmes
2021-10-12 09:40:35 +00:00
Andrey Turbanov
7d2633f795 8275002: Remove unused AbstractStringBuilder.MAX_ARRAY_SIZE
Reviewed-by: prappo, jlaskey, martin
2021-10-12 09:37:54 +00:00
Aleksey Shipilev
cfe7471f17 8177814: jdk/editpad is not in jdk TEST.groups
Reviewed-by: serb
2021-10-12 07:24:15 +00:00
Aleksey Shipilev
a5f09d1088 8275031: runtime/ErrorHandling/MachCodeFramesInErrorFile.java fails when hsdis is present
Reviewed-by: dholmes, dnsimon
2021-10-12 06:22:13 +00:00
Aleksey Shipilev
ef0922e885 8274560: JFR: Add test for OldObjectSample event when using Shenandoah
Reviewed-by: mgronlun
2021-10-12 05:56:15 +00:00
Hamlin Li
1e3069593e 8274466: G1: use field directly rather than method in G1CollectorState::in_mixed_phase
Reviewed-by: ayang, sjohanss
2021-10-12 01:25:00 +00:00
Sergey Bylokhov
dd93c6e27b 8272167: AbsPathsInImage.java should skip *.dSYM directories
Reviewed-by: ihse, erikj
2021-10-12 00:14:00 +00:00
Andrey Turbanov
829dea45c9 8274945: Cleanup unnecessary calls to Throwable.initCause() in java.desktop
Reviewed-by: jdv, serb, pbansal
2021-10-11 19:19:39 +00:00
Zhengyu Gu
75f5145e21 8274925: Shenandoah: shenandoah/TestAllocHumongousFragment.java test failed on lock rank check
Reviewed-by: shade
2021-10-11 16:58:53 +00:00
Thomas Stuefe
83c3771929 8273881: Metaspace: test repeated deallocations
Reviewed-by: dholmes, shade
2021-10-11 15:48:10 +00:00
Lin Zang
3f01d03a10 8275021: Test serviceability/sa/TestJmapCore.java fails with: java.io.IOException: Stack frame 0x4 not found
Reviewed-by: dholmes, dcubed
2021-10-11 15:27:28 +00:00
Zhengyu Gu
3f07337722 8273614: Shenandoah: intermittent timeout with ConcurrentGCBreakpoint tests
Reviewed-by: shade
2021-10-11 15:10:57 +00:00
Patricio Chilano Mateo
0d80f6cf82 8274379: Allow process of unsafe access errors in check_special_condition_for_native_trans
Reviewed-by: rehn, dholmes
2021-10-11 13:34:42 +00:00
Jan Lahoda
b870468bdc 8274347: Passing a *nested* switch expression as a parameter causes an NPE during compile
Reviewed-by: vromero
2021-10-11 12:38:08 +00:00
Coleen Phillimore
110e38ded8 8274753: ZGC: SEGV in MetaspaceShared::link_shared_classes
8274935: dumptime_table has stale entry

Reviewed-by: eosterlund, iklam
2021-10-11 12:11:11 +00:00
Thomas Schatzl
b7af890574 8274430: Remove some debug error printing code added in JDK-8017163
Reviewed-by: sjohanss, ayang
2021-10-11 11:48:50 +00:00
Thomas Schatzl
aaf2401bc7 8274927: Remove unnecessary G1ArchiveAllocator code
Reviewed-by: kbarrett, ayang
2021-10-11 11:46:46 +00:00
Jie Fu
c55dd365e3 8275008: gtest build failure due to stringop-overflow warning with gcc11
Reviewed-by: dholmes, ihse
2021-10-11 10:51:39 +00:00
Roman Kennke
3edee1e1fe 8272723: Don't use Access API to access primitive fields
Reviewed-by: stefank, eosterlund
2021-10-11 10:37:54 +00:00
Martin Doerr
49f8ce6e9c 8274773: [TESTBUG] UnsafeIntrinsicsTest intermittently fails on weak memory model platform
Reviewed-by: eosterlund, goetz
2021-10-11 10:31:54 +00:00
Fei Gao
c032186b42 8272968: AArch64: Remove redundant matching rules for commutative ops
Reviewed-by: ngasson
2021-10-11 06:59:37 +00:00
Ao Qi
a05873a225 8274952: jdk/jfr/api/consumer/TestRecordedFrameType.java failed when c1 disabled
Reviewed-by: egahlin, jiefu
2021-10-11 02:17:56 +00:00
Lin Zang
5ecc99bbf5 8274620: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java is timing out
Reviewed-by: cjplummer, dholmes
2021-10-11 01:56:34 +00:00
Jie Fu
2ff3977a66 8275004: CDS build failure with gcc11
Reviewed-by: shade
2021-10-10 14:00:58 +00:00
lawrence.andrews
296f8537f7 8274029: Remove jtreg tag manual=yesno for java/awt/print/Dialog/DialogOrient.java
Reviewed-by: serb
2021-10-10 08:46:04 +00:00
Andrey Turbanov
2c83559eda 8274882: Cleanup redundant boxing in java.desktop
Reviewed-by: serb, pbansal
2021-10-10 08:41:52 +00:00
Wang Huang
6d1d4d5292 8268231: Aarch64: Use ldp in intrinsics for String.compareTo
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Sun Jianye <sunjianye@huawei.com>
Co-authored-by: Wu Yan <wuyan@openjdk.org>
Reviewed-by: ngasson, aph
2021-10-09 08:19:17 +00:00
Pankaj Bansal
aac6c4ea70 8272229: BasicSplitPaneDivider:oneTouchExpandableChanged() returns leftButton and rightButton as null with GTKLookAndFeel
Reviewed-by: serb, jdv, kizune
2021-10-09 03:52:53 +00:00
Andrey Turbanov
f640c7aaa8 8274806: Simplify equals() call on nullable variable and a constant in java.desktop
Reviewed-by: serb, pbansal
2021-10-09 00:46:20 +00:00
Andrey Turbanov
9c431dd168 8274900: Too weak variable type leads to unnecessary cast in jdk.javadoc
Reviewed-by: prappo
2021-10-08 23:08:05 +00:00
Coleen Phillimore
3cb9724ed9 8274934: Attempting to acquire lock JNICritical_lock/41 out of order with lock MultiArray_lock/41
Reviewed-by: dcubed, iklam
2021-10-08 21:10:42 +00:00
Brian Burkhalter
239a35aa91 8233749: Files.exists javadoc doesn't mention eating IOException
Reviewed-by: lancea, alanb
2021-10-08 16:43:16 +00:00
Naoto Sato
ec199072c5 8274864: Remove Amman/Cairo hacks in ZoneInfoFile
Reviewed-by: iris, joehw
2021-10-08 16:11:22 +00:00
Sergey Tsypanov
ccbce107f2 8272756: Remove unnecessary explicit initialization of volatile variables in java.desktop
Reviewed-by: jdv, aivanov
2021-10-08 15:58:36 +00:00
Christian Hagedorn
36b89a1893 8274785: ciReplay: Potential crash due to uninitialized Compile::_ilt variable
Reviewed-by: neliasso, kvn
2021-10-08 14:51:18 +00:00
Roland Westrelin
2aacd4220a 8274145: C2: condition incorrectly made redundant with dominating main loop exit condition
Reviewed-by: kvn, neliasso
2021-10-08 14:48:35 +00:00
Coleen Phillimore
6364719cd1 8274004: Change 'nonleaf' rank name
8273956: Add checking for rank values

Reviewed-by: dholmes, pchilanomate
2021-10-08 12:23:19 +00:00
Doug Simon
b60837a7d5 8272586: emit abstract machine code in hs-err logs
Reviewed-by: kvn, dholmes
2021-10-08 08:06:53 +00:00
Matthias Baesken
97ea9dd2f2 8274840: Update OS detection code to recognize Windows 11
Co-authored-by: Arno Zeller <arno.zeller@sap.com>
Reviewed-by: clanger, dholmes
2021-10-08 06:40:18 +00:00
Yumin Qi
8de77634c4 8273152: Refactor CDS FileMapHeader loading code
Reviewed-by: ccheung, iklam
2021-10-07 21:33:32 +00:00
Daniel D. Daugherty
920e70701d 8274920: ProblemList 2 VectorAPI tests failing due to "assert(!vbox->is_Phi()) failed"
Reviewed-by: kvn
2021-10-07 17:14:26 +00:00
Andrey Turbanov
7de2cf852d 8273910: Redundant condition and assignment in java.net.URI
Reviewed-by: dfuchs
2021-10-07 16:55:45 +00:00
Naoto Sato
8ca084617f 8274407: (tz) Update Timezone Data to 2021c
8274467: TestZoneInfo310.java fails with tzdata2021b
8274468: TimeZoneTest.java fails with tzdata2021b

Reviewed-by: rriggs, iris, coffeys
2021-10-07 15:32:11 +00:00
Coleen Phillimore
4ab274ac1a 8274858: Remove unused dictionary_classes_do functions
Reviewed-by: dholmes, hseigel
2021-10-07 15:24:00 +00:00
Sean Coffey
03a8d342b8 8273826: Correct Manifest file name and NPE checks
Reviewed-by: weijun, hchao, mullan
2021-10-07 15:12:13 +00:00
Jie Fu
722d639fad 8274838: runtime/cds/appcds/TestSerialGCWithCDS.java fails on Windows
Reviewed-by: iklam, hseigel
2021-10-07 12:42:16 +00:00
Lin Zang
340c715c3b 8273929: Remove GzipRandomAccess in heap dump test
Reviewed-by: cjplummer, sspitsyn
2021-10-07 11:57:18 +00:00
Yude Lin
8319836152 8274546: Shenandoah: Remove unused ShenandoahUpdateRootsTask copy
Reviewed-by: zgu, tschatzl
2021-10-07 11:28:49 +00:00
Andrey Turbanov
d5ccfa2ae9 8274755: Replace 'while' cycles with iterator with enhanced-for in jdk.jdi
Reviewed-by: alanb, amenkov, sspitsyn, cjplummer
2021-10-07 09:38:42 +00:00
Richard Reingruber
29dcbb72a2 8274716: JDWP Spec: the description for the Dispose command confuses suspend with resume.
Reviewed-by: alanb, cjplummer, sspitsyn
2021-10-07 08:20:20 +00:00
Florian Weimer
5762ec2587 8274780: ChannelInputStream.readNBytes(int) incorrectly calls readAllBytes()
Reviewed-by: alanb, bpb
2021-10-07 07:02:01 +00:00
Andrey Turbanov
4e960fe53f 8274497: Unnecessary Vector usage in AquaFileSystemModel
Reviewed-by: serb, pbansal
2021-10-07 03:42:50 +00:00
Jie Fu
c833b4d130 8274329: Fix non-portable HotSpot code in MethodMatcher::parse_method_pattern
Reviewed-by: iklam, ihse, kvn
2021-10-06 23:22:04 +00:00
lawrence.andrews
d57fb6f684 8274456: Remove jtreg tag manual=yesno java/awt/print/PrinterJob/PageDialogTest.java
Reviewed-by: serb
2021-10-06 23:12:56 +00:00
Jonathan Gibbons
734d1fbd33 8274211: Test man page that options are documented
Reviewed-by: prappo
2021-10-06 22:40:44 +00:00
Sergey Bylokhov
9561fea790 8273102: Delete deprecated for removal the empty finalize() in java.desktop module
Reviewed-by: pbansal, aivanov, iris, prr
2021-10-06 22:31:23 +00:00
Andrey Turbanov
9945f7a074 8274318: Replace 'for' cycles with iterator with enhanced-for in java.management
Reviewed-by: cjplummer, sspitsyn, dfuchs
2021-10-06 18:23:46 +00:00
Andrey Turbanov
754bc82c4c 8274525: Replace uses of StringBuffer with StringBuilder in java.xml
Reviewed-by: joehw, iris, naoto, dfuchs
2021-10-06 18:20:18 +00:00
Andrey Turbanov
4e7d7caa0c 8273711: Remove redundant stream() call before forEach in jdk.jlink
Reviewed-by: alanb, psandoz, dfuchs
2021-10-06 18:17:58 +00:00
Andrey Turbanov
f3cedbe928 8274464: Remove redundant stream() call before forEach in java.* modules
Reviewed-by: dfuchs, amenkov, vtewari
2021-10-06 18:11:07 +00:00
Christian Stein
c10de3538b 8262944: Improve exception message when automatic module lists provider class not in JAR file
Reviewed-by: dfuchs, jvernee, alanb, lancea, mchung
2021-10-06 15:11:28 +00:00
Coleen Phillimore
b8af6a9bfb 8273917: Remove 'leaf' ranking for Mutex
Reviewed-by: eosterlund, dholmes
2021-10-06 12:14:33 +00:00
Kim Barrett
c80a612709 8273381: Assert in PtrQueueBufferAllocatorTest.stress_free_list_allocator_vm
Reviewed-by: sjohanss, tschatzl
2021-10-06 11:14:26 +00:00
Andrey Turbanov
9759fcb17b 8274496: Use String.contains() instead of String.indexOf() in java.desktop
Reviewed-by: pbansal, serb
2021-10-06 10:50:38 +00:00
Hannes Wallnöfer
cdf89304ea 8274625: Search field placeholder behavior
Reviewed-by: prappo
2021-10-06 09:28:37 +00:00
Christian Hagedorn
df125f680b 8273410: IR verification framework fails with "Should find method name in validIrRulesMap"
Reviewed-by: thartmann, neliasso
2021-10-06 08:21:18 +00:00
Andrew Haley
c74726dbd0 8274730: AArch64: AES/GCM acceleration is broken by the fix for JDK-8273297
Reviewed-by: adinn, roland, kvn
2021-10-06 08:18:10 +00:00
Per Liden
2faced09ce 8274738: ZGC: Use relaxed atomic load when reading bits in the live map
Reviewed-by: stefank, eosterlund
2021-10-06 07:44:47 +00:00
Andrey Turbanov
8a4d2b4aa7 8274680: Remove unnecessary conversion to String in java.desktop
Reviewed-by: pbansal, jdv, serb, kizune
2021-10-06 02:53:09 +00:00
Yasumasa Suenaga
986ee5d0bf 8274670: Improve version string handling in SA
Reviewed-by: cjplummer, sspitsyn
2021-10-06 00:36:50 +00:00
Sergey Tsypanov
df7b0c7077 8274715: Implement forEach in Collections.CopiesList
Reviewed-by: martin
2021-10-05 22:19:35 +00:00
Daniel D. Daugherty
d4e8712c0a 8274797: ProblemList resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java on macosx-x64
Reviewed-by: darcy
2021-10-05 21:47:18 +00:00
Christoph Langer
47262670f3 8274642: jdk/jshell/CommandCompletionTest.java fails with NoSuchElementException after JDK-8271287
Reviewed-by: jlahoda
2021-10-05 21:06:52 +00:00
Igor Veresov
83b2219220 8273612: Fix for JDK-8272873 causes timeout in running some tests with -Xcomp
Reviewed-by: kvn, neliasso
2021-10-05 19:44:17 +00:00
Joe Darcy
d34ec6ccfc 8274793: Suppress warnings on non-serializable non-transient instance fields in sun.net
Reviewed-by: alanb
2021-10-05 19:10:29 +00:00
Jonathan Gibbons
332f067388 8274729: Define Position.NOPOS == Diagnostic.NOPOS
Reviewed-by: jlahoda
2021-10-05 18:54:19 +00:00
Weijun Wang
1e75203356 8274656: Remove default_checksum and safe_checksum_type from krb5.conf
Reviewed-by: valeriep
2021-10-05 18:19:45 +00:00
Weijun Wang
03d3c03384 8273670: Remove weak etypes from default krb5 etype list
Reviewed-by: valeriep, mullan
2021-10-05 18:18:51 +00:00
Joe Darcy
c391e59ea6 8274244: ReportOnImportedModuleAnnotation.java fails on rerun
Reviewed-by: jjg
2021-10-05 17:31:57 +00:00
Phil Race
37890650a7 8274397: [macOS] Stop setting env. var JAVA_MAIN_CLASS_<pid> in launcher code
Reviewed-by: rriggs, serb
2021-10-05 17:30:31 +00:00
Hannes Wallnöfer
e1f0df0de3 8267853: Remove unused styles from stylesheet
Reviewed-by: prappo
2021-10-05 16:57:12 +00:00
Jonathan Gibbons
4e3948f18b 8274744: TestSnippetTag test fails after recent integration
Reviewed-by: prappo
2021-10-05 15:27:02 +00:00
Jonathan Gibbons
92b64a2053 8273745: VerifyLocale.java occasionally times out
Reviewed-by: prappo
2021-10-05 15:21:44 +00:00
Coleen Phillimore
90a5ae802e 8274282: Clarify special wait assert
Reviewed-by: dholmes, pchilanomate
2021-10-05 15:13:54 +00:00
Albert Mingkun Yang
bb0bab57a1 8274286: Skip null for make_referent_alive in referenceProcessor
Reviewed-by: kbarrett, tschatzl
2021-10-05 14:31:17 +00:00
Peter Levart
7ad74d82d7 8274299: Make Method/Constructor/Field accessors @Stable
Reviewed-by: redestad, mchung
2021-10-05 14:16:20 +00:00
Andrey Turbanov
1459180f35 8274079: Cleanup unnecessary calls to Throwable.initCause() in java.base module
Reviewed-by: weijun
2021-10-05 13:36:37 +00:00
Harold Seigel
8609ea55ac 8273342: Null pointer dereference in classFileParser.cpp:2817
Reviewed-by: coleenp, dholmes
2021-10-05 12:39:56 +00:00
Jan Lahoda
a5080effc7 8272564: Incorrect attribution of method invocations of Object methods on interfaces
Reviewed-by: jlaskey, mcimadamore, vromero
2021-10-05 10:17:24 +00:00
Kim Barrett
a914ee7216 8274632: Possible pointer overflow in PretouchTask chunk claiming
Reviewed-by: tschatzl, ayang
2021-10-05 08:07:02 +00:00
Matthias Baesken
8f7a37c92f 8274434: move os::get_default_process_handle and os::dll_lookup to os_posix for POSIX platforms
Reviewed-by: dholmes, lucy
2021-10-05 07:25:00 +00:00
Christian Hagedorn
3953e0774c 8271459: C2: Missing NegativeArraySizeException when creating StringBuilder with negative capacity
Reviewed-by: roland, thartmann, neliasso
2021-10-05 07:02:06 +00:00
Andrey Turbanov
53d7e95bc6 8274635: Use String.equals instead of String.compareTo in jdk.accessibility
Reviewed-by: serb
2021-10-05 06:39:29 +00:00
Andrey Turbanov
e43f540cde 8274651: Possible race in FontDesignMetrics.KeyReference.dispose
Reviewed-by: prr, serb
2021-10-05 00:53:17 +00:00
David Holmes
2e542e33b8 8274349: ForkJoinPool.commonPool() does not work with 1 CPU
Co-authored-by: Doug Lea <dl@openjdk.org>
Reviewed-by: shade, martin
2021-10-04 23:14:12 +00:00
Erik Gahlin
7e757f6a2c 8274559: JFR: Typo in 'jfr help configure' text
Reviewed-by: iris, mikael
2021-10-04 21:19:19 +00:00
Jonathan Gibbons
75d6688df9 8274745: ProblemList TestSnippetTag.java
Reviewed-by: prappo
2021-10-04 19:00:21 +00:00
Mikhailo Seledtsov
9914e5c416 8274610: Add linux-aarch64 to bootcycle build profiles
Reviewed-by: erikj
2021-10-04 17:20:05 +00:00
Jonathan Gibbons
0ca094bc5f 8273244: Improve diagnostic output related to ErroneousTree
Reviewed-by: prappo
2021-10-04 16:59:30 +00:00
Jonathan Gibbons
6f727d831d 8274666: rename HtmlStyle.descfrmTypeLabel to be less cryptic
Reviewed-by: hannesw
2021-10-04 16:58:23 +00:00
Adam Sotona
139a8334cb 8268869: java in source-file mode suggests javac-only Xlint flags
Reviewed-by: jjg
2021-10-04 15:48:09 +00:00
Weijun Wang
f63c4a832a 8274471: Verification of OCSP Response signed with RSASSA-PSS fails
Reviewed-by: hchao, jnimeh
2021-10-04 15:30:44 +00:00
Naoto Sato
f2404d60de 8274658: ISO 4217 Amendment 170 Update
Reviewed-by: lancea, iris
2021-10-04 15:06:48 +00:00
Alex Kasko
7eb0372e55 8274606: Fix jaxp/javax/xml/jaxp/unittest/transform/SurrogateTest.java test
Reviewed-by: joehw, shade
2021-10-04 12:38:34 +00:00
Aleksey Shipilev
47bfc8aa93 8274563: jfr/event/oldobject/TestClassLoaderLeak.java fails when GC cycles are not happening
Reviewed-by: egahlin
2021-10-04 12:35:58 +00:00
Aleksey Shipilev
0828273b89 8274521: jdk/jfr/event/gc/detailed/TestGCLockerEvent.java fails when other GC is selected
Reviewed-by: kbarrett, tschatzl
2021-10-04 12:22:55 +00:00
Andrey Turbanov
6726c592ed 8274634: Use String.equals instead of String.compareTo in java.desktop
Reviewed-by: serb, pbansal
2021-10-04 10:27:20 +00:00
Prasanta Sadhukhan
32811026ce 8268084: [macos] Disabled JMenuItem arrow is not disabled
Reviewed-by: serb, jdv
2021-10-04 06:49:10 +00:00
Robbin Ehn
7957994273 8273695: Safepoint deadlock on VMOperation_lock
Reviewed-by: dcubed, pchilanomate, eosterlund
2021-10-04 06:47:27 +00:00
Andrey Turbanov
9ca6bf0d22 8274505: Too weak variable type leads to unnecessary cast in java.desktop
Reviewed-by: serb, kizune, pbansal
2021-10-02 03:06:29 +00:00
Brian Burkhalter
0786d8b7b3 8268435: (ch) ChannelInputStream could override readAllBytes
Reviewed-by: alanb, lancea
2021-10-01 20:15:44 +00:00
Alexey Ivanov
bb4500d0d2 8274465: Fix javax/swing/text/ParagraphView/6364882/bug6364882.java failures
Reviewed-by: jiefu, serb
2021-10-01 18:41:51 +00:00
Pavel Rappo
05d38604a2 8274605: Fix predicate guarantees on returned values in (Doc)SourcePositions
Reviewed-by: jlahoda, jjg
2021-10-01 16:15:48 +00:00
Brian Burkhalter
3d7671b65e 8274562: (fs) UserDefinedFileAttributeView doesn't correctly determine if supported when using OverlayFS
Reviewed-by: alanb
2021-10-01 15:30:55 +00:00
Ekaterina Vergizova
c05dc268ac 8274435: EXCEPTION_ACCESS_VIOLATION in BFSClosure::closure_impl
Reviewed-by: stefank
2021-10-01 12:53:08 +00:00
Aleksei Efimov
cc14c6f076 8274227: Remove "impl.prefix" jdk system property usage from InetAddress
Reviewed-by: alanb, dfuchs
2021-10-01 09:48:09 +00:00
Jan Lahoda
292d7bb1d5 8274363: Transitively sealed classes not considered exhaustive in switches
Reviewed-by: vromero
2021-10-01 08:54:18 +00:00
Jan Lahoda
1887028408 8269113: Javac throws when compiling switch (null)
Co-authored-by: Guoxiong Li <gli@openjdk.org>
Reviewed-by: vromero
2021-10-01 08:53:04 +00:00
Ao Qi
b7b78ff1f3 8274561: sun/net/ftp/TestFtpTimeValue.java timed out on slow machines
Reviewed-by: jiefu, dfuchs
2021-10-01 08:52:04 +00:00
Martin Doerr
5e4b514e6e 8274550: c2i entry barriers read int as long on PPC
Reviewed-by: eosterlund, shade
2021-10-01 08:20:51 +00:00
Kim Barrett
2e690ba8bd 8274322: Problems with oopDesc construction
Reviewed-by: dholmes, stefank
2021-10-01 00:25:35 +00:00
Jie Fu
a8edd1b360 8274527: Minimal VM build fails after JDK-8273459
Reviewed-by: kvn
2021-09-30 23:11:56 +00:00
Joe Darcy
7326481143 8274393: Suppress more warnings on non-serializable non-transient instance fields in security libs
Reviewed-by: weijun
2021-09-30 17:39:05 +00:00
Joe Darcy
8215b2eb61 8274398: Suppress more warnings on non-serializable non-transient instance fields in management libs
Reviewed-by: sspitsyn
2021-09-30 16:58:53 +00:00
Patricio Chilano Mateo
9573022978 8253197: vmTestbase/nsk/jvmti/StopThread/stopthrd007/TestDescription.java fails with "ERROR: DebuggeeSleepingThread: ThreadDeath lost"
Reviewed-by: dholmes, cjplummer, sspitsyn
2021-09-30 16:02:14 +00:00
Erik Österlund
f08180f35f 8274501: c2i entry barriers read int as long on AArch64
Reviewed-by: shade, kbarrett, aph
2021-09-30 15:52:36 +00:00
Bradford Wetmore
c57ed22e77 8274528: Add comment to explain an HKDF optimization in SSLSecretDerivation
Reviewed-by: jnimeh
2021-09-30 15:46:29 +00:00
Severin Gehwolf
9180d9a2f9 8273216: JCMD does not work across container boundaries with Podman
Reviewed-by: mseledtsov, hseigel
2021-09-30 15:23:44 +00:00
Alex Kasko
3e0d7c33d4 8270290: NTLM authentication fails if HEAD request is used
Reviewed-by: dfuchs, michaelm
2021-09-30 15:21:18 +00:00
Lin Zang
bfd6163471 8274196: Crashes in VM_HeapDumper::work after JDK-8252842
8274245: sun/tools/jmap/BasicJMapTest.java Mutex rank failures

Reviewed-by: coleenp, pliden, cjplummer
2021-09-30 14:44:59 +00:00
Masanori Yano
bb95dda0ac 8248001: javadoc generates invalid HTML pages whose ftp:// links are broken
Reviewed-by: hannesw
2021-09-30 11:33:21 +00:00
Mahendra Chhipa
2f955d6f5b 8273142: Remove dependancy of TestHttpServer, HttpTransaction, HttpCallback from open/test/jdk/sun/net/www/protocol/http/ tests
Reviewed-by: michaelm
2021-09-30 11:29:20 +00:00
Severin Gehwolf
94e31e5ca5 8274506: TestPids.java and TestPidsLimit.java fail with podman run as root
Reviewed-by: mbaesken, cjplummer
2021-09-30 08:53:31 +00:00
Martin Doerr
a8210c53e7 8274401: C2: GraphKit::load_array_element bypasses Access API
Reviewed-by: kvn, goetz, thartmann
2021-09-30 08:41:03 +00:00
Christian Hagedorn
dfc557cbea 8274406: RunThese30M.java failed "assert(!LCA_orig->dominates(pred_block) || early->dominates(pred_block)) failed: early is high enough"
Reviewed-by: kvn, thartmann
2021-09-30 08:29:43 +00:00
Aleksey Shipilev
c0533ef2d8 8274522: java/lang/management/ManagementFactory/MXBeanException.java test fails with Shenandoah
Reviewed-by: alanb, mchung
2021-09-30 06:55:24 +00:00
Aleksey Shipilev
f8415a9b2f 8274523: java/lang/management/MemoryMXBean/MemoryTest.java test should handle Shenandoah
Reviewed-by: mchung, cjplummer
2021-09-30 06:54:13 +00:00
Andrey Turbanov
355356c405 8273435: Remove redundant zero-length check in ClassDesc.of
Reviewed-by: rriggs
2021-09-29 23:08:23 +00:00
Joe Darcy
97385d4f16 8274405: Suppress warnings on non-serializable non-transient instance fields in javac and javadoc
Reviewed-by: prappo, jjg
2021-09-29 23:02:20 +00:00
Andrey Turbanov
79cebe2c1b 8274050: Unnecessary Vector usage in javax.crypto
Reviewed-by: valeriep
2021-09-29 18:22:40 +00:00
Pavel Rappo
97b28742b4 8274509: Remove stray * and stylistic . from doc comments
Reviewed-by: alanb, dfuchs, lancea, iris, bpb
2021-09-29 17:09:08 +00:00
Aleksey Shipilev
b1b66965f1 8274453: (sctp) com/sun/nio/sctp/SctpChannel/CloseDescriptors.java test should be resilient to lsof warnings
Reviewed-by: dfuchs
2021-09-29 16:57:40 +00:00
Weijun Wang
edd9d1c97b 8274330: Incorrect encoding of the DistributionPointName object in IssuingDistributionPointExtension
Reviewed-by: ascarpino
2021-09-29 15:37:16 +00:00
Roland Westrelin
980c50dc60 8272562: C2: assert(false) failed: Bad graph detected in build_loop_late
Reviewed-by: chagedorn, kvn
2021-09-29 14:51:33 +00:00
Thomas Schatzl
1dc8fa9902 8274340: [BACKOUT] JDK-8271880: Tighten condition for excluding regions from collecting cards with cross-references
Reviewed-by: kbarrett, ayang
2021-09-29 13:59:58 +00:00
Claes Redestad
aaa36cc006 8274242: Implement fast-path for ASCII-compatible CharsetEncoders on x86
Reviewed-by: naoto, thartmann
2021-09-29 12:58:14 +00:00
Martin Doerr
c4d115701d 8271855: [TESTBUG] Wrong weakCompareAndSet assumption in UnsafeIntrinsicsTest
Reviewed-by: goetz, thartmann
2021-09-29 09:54:59 +00:00
Aleksey Shipilev
756d22c356 8274130: C2: MulNode::Ideal chained transformations may act on wrong nodes
Reviewed-by: thartmann, kvn
2021-09-29 05:41:34 +00:00
Jonathan Gibbons
5b0c9ccc49 8274172: Convert JavadocTester to use NIO
Reviewed-by: prappo
2021-09-28 23:53:49 +00:00
David Holmes
2657bcbd99 8274136: -XX:+ExitOnOutOfMemoryError calls exit while threads are running
Reviewed-by: stuefe, hseigel
2021-09-28 23:24:23 +00:00
Scott Gibbons
53b25bce87 8273459: Update code segment alignment to 64 bytes
Reviewed-by: kvn, sviswanathan
2021-09-28 23:03:01 +00:00
Andrey Turbanov
1a29b1e95e 8274016: Replace 'for' cycles with iterator with enhanced-for in java.desktop
Reviewed-by: serb
2021-09-28 23:01:57 +00:00
Joe Darcy
d8a278f394 8274396: Suppress more warnings on non-serializable non-transient instance fields in client libs
Reviewed-by: bpb, naoto, serb, iris
2021-09-28 21:48:33 +00:00
Sergey Bylokhov
e49e5b5a7e 8273972: Multi-core choke point in CMM engine (LCMSTransform.doTransform)
Reviewed-by: prr
2021-09-28 21:38:40 +00:00
Joe Darcy
2072bc77b4 8274391: Suppress more warnings on non-serializable non-transient instance fields in java.util.concurrent
Reviewed-by: lancea, bpb, alanb, iris
2021-09-28 21:21:53 +00:00
Joe Darcy
6a477bda85 8274415: Suppress warnings on non-serializable non-transient instance fields in java.xml
Reviewed-by: joehw
2021-09-28 21:02:19 +00:00
Alexey Ivanov
67e52a3078 8273634: [TEST_BUG] Improve javax/swing/text/ParagraphView/6364882/bug6364882.java
Reviewed-by: serb
2021-09-28 19:16:58 +00:00
Alexey Ivanov
b7425b63f6 8239502: [TEST_BUG] Test javax/swing/text/FlowView/6318524/bug6318524.java never fails
Reviewed-by: serb
2021-09-28 19:15:33 +00:00
Jesper Steen Møller
c57a6c62ba 8274265: Suspicious string concatenation in logTestUtils.inline.hpp
Reviewed-by: clanger, mbaesken
2021-09-28 18:22:15 +00:00
Andrey Turbanov
6f4cefbcba 8274394: Use Optional.isEmpty instead of !Optional.isPresent in jdk.jlink
Reviewed-by: alanb, mchung
2021-09-28 17:22:27 +00:00
Sergey Tsypanov
94f5e807c9 8274276: Cache normalizedBase URL in URLClassPath.FileLoader
Reviewed-by: dfuchs
2021-09-28 17:18:55 +00:00
Artem Semenov
b36881fa3b 8274383: JNI call of getAccessibleSelection on a wrong thread
Reviewed-by: kizune, ant
2021-09-28 16:40:47 +00:00
Artem Semenov
be40373745 8274381: missing CAccessibility definitions in JNI code
Reviewed-by: pbansal, ant, kizune
2021-09-28 16:08:30 +00:00
Tongbao Zhang
79865cd797 8274259: G1: assert(check_alignment(result)) failed: address not aligned: 0x00000008baadbabe after JDK-8270009
Reviewed-by: tschatzl, sjohanss
2021-09-28 12:32:39 +00:00
Alexander Scherbatiy
961dcffc86 8273581: Change the mechanism by which JDK loads the platform-specific FontManager class
Reviewed-by: prr, psadhukhan, azvegint, aivanov, serb
2021-09-28 09:26:51 +00:00
Ioi Lam
6a573b888d 8273508: Support archived heap objects in SerialGC
Reviewed-by: tschatzl, ccheung
2021-09-28 06:23:47 +00:00
Kim Barrett
3eca9c36a6 8264707: HotSpot Style Guide should permit use of lambda
Reviewed-by: stefank, dholmes, coleenp, iklam, sjohanss, eosterlund, iveresov, kvn
2021-09-28 05:56:34 +00:00
Jaikiran Pai
af50772d39 8231640: (prop) Canonical property storage
Reviewed-by: rriggs, smarks, dfuchs, ihse
2021-09-28 05:17:31 +00:00
Jaikiran Pai
ddc262746a 8273790: Potential cyclic dependencies between Gregorian and CalendarSystem
Reviewed-by: naoto, yyang, rriggs
2021-09-28 05:00:27 +00:00
Jaikiran Pai
633eab23f0 8174819: java/nio/file/WatchService/LotsOfEvents.java fails intermittently
Reviewed-by: alanb
2021-09-28 04:54:58 +00:00
Lin Zang
8876eae429 8269685: Optimize HeapHprofBinWriter implementation
8262386: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java timed out

Reviewed-by: sspitsyn, amenkov
2021-09-28 02:59:14 +00:00
Pavel Rappo
c880b87a20 8274367: Re-indent stack-trace examples for Throwable.printStackTrace
Reviewed-by: mchung, iris, darcy, bpb
2021-09-27 22:32:49 +00:00
Yumin Qi
c4b52c7378 8271303: jcmd VM.cds {static, dynamic}_dump should print more info
Reviewed-by: iklam, ccheung
2021-09-27 21:27:00 +00:00
Joe Darcy
5b660f3347 8274392: Suppress more warnings on non-serializable non-transient instance fields in java.sql.rowset
Reviewed-by: bpb, lancea
2021-09-27 19:57:26 +00:00
bobpengxie
0865120e95 8274345: make build-test-lib is broken
Reviewed-by: erikj
2021-09-27 18:16:51 +00:00
Mikael Vidstedt
75404ea25e 8267636: Bump minimum boot jdk to JDK 17
Reviewed-by: darcy, erikj, iris
2021-09-27 18:07:26 +00:00
Mikhailo Seledtsov
14100d55dc 8274170: Add hooks for custom makefiles to augment jtreg test execution
Reviewed-by: erikj
2021-09-27 18:06:21 +00:00
Mandy Chung
daaa47e200 8274311: Make build.tools.jigsaw.GenGraphs more configurable
Reviewed-by: alanb, iris
2021-09-27 16:56:33 +00:00
Phil Race
2cffe4c8e0 8274326: [macos] Ensure initialisation of sun/lwawt/macosx/CAccessibility in JavaComponentAccessibility.m
Reviewed-by: serb, pbansal, aivanov
2021-09-27 16:41:00 +00:00
Joe Darcy
172900dab1 8274255: Update javac messages to use "enum class" rather than "enum type"
Reviewed-by: vromero
2021-09-27 16:28:17 +00:00
Christian Hagedorn
b0983df5a4 8274074: SIGFPE with C2 compiled code with -XX:+StressGCM
Reviewed-by: roland, thartmann
2021-09-27 14:05:51 +00:00
Andrey Turbanov
7436a77e3d 8274317: Unnecessary reentrant synchronized block in java.awt.Cursor
Reviewed-by: serb, pbansal, prr
2021-09-27 12:07:29 +00:00
Jie Fu
7426fd4c9c 8274325: C4819 warning at vm_version_x86.cpp on Windows after JDK-8234160
Reviewed-by: dholmes
2021-09-27 09:38:16 +00:00
Erik Gahlin
e3aff8f8d8 8274289: jdk/jfr/api/consumer/TestRecordedFrameType.java failed with "RuntimeException: assertNotEquals: expected Interpreted to not equal Interpreted"
Reviewed-by: mgronlun
2021-09-27 04:02:36 +00:00
bobpengxie
252aaa9249 8274293: Build failure on macOS with Xcode 13.0 as vfork is deprecated
Reviewed-by: alanb, stuefe, rriggs
2021-09-26 14:48:19 +00:00
seanwxiang
7700b25460 8273401: Disable JarIndex support in URLClassPath
Reviewed-by: dfuchs, lancea, alanb, mchung
2021-09-26 11:43:40 +00:00
Pavel Rappo
5ec1cdcaf3 8274321: Standardize values of @since tags in javax.lang.model
Reviewed-by: darcy
2021-09-25 21:04:17 +00:00
Daniel Jelinski
4838a2ca7c 8274143: Disable "invalid entry for security.provider.X" error message in log file when security.provider.X is empty
Reviewed-by: weijun
2021-09-25 15:37:21 +00:00
Daniel D. Daugherty
ab28db1428 8274312: ProblemList 2 serviceability/dcmd/gc tests with ZGC on macos-all
8274313: ProblemList sun/tools/jmap/BasicJMapTest.java subtests

Reviewed-by: stuefe, sspitsyn, dholmes
2021-09-25 13:38:00 +00:00
Jaikiran Pai
8c122af6d8 8274314: Typo in WatchService#poll(long timeout, TimeUnit unit) javadoc
Reviewed-by: alanb, lancea
2021-09-25 12:42:03 +00:00
Andrey Turbanov
9bc865d38c 8273960: Redundant condition in Metadata.TypeComparator.compare
Reviewed-by: egahlin
2021-09-25 11:42:03 +00:00
Jie Fu
5756385c2b 8274273: Update testing docs for MacOS with Non-US locale
Reviewed-by: erikj
2021-09-24 23:12:31 +00:00
Alex Menkov
61ac53f6e5 8210927: JDB tests do not update source path after doing a redefine class
Reviewed-by: sspitsyn
2021-09-24 21:50:39 +00:00
Thomas Schatzl
341de49f8f 8273492: Move evacuation failure handling into G1YoungCollector
Reviewed-by: sjohanss, ayang
2021-09-24 19:30:21 +00:00
Smita Kamath
13e9ea9e92 8273297: AES/GCM non-AVX512+VAES CPUs suffer after 8267125
Reviewed-by: ascarpino, sviswanathan, aph
2021-09-24 19:21:32 +00:00
Phil Race
753b25633b 8274296: Update or Problem List tests which may fail with uiScale=2 on macOS
Reviewed-by: jdv
2021-09-24 17:31:19 +00:00
Andrey Turbanov
baafa6059e 8274237: Replace 'for' cycles with iterator with enhanced-for in java.base
Reviewed-by: dfuchs, weijun
2021-09-24 16:46:52 +00:00
Daniel D. Daugherty
0c050be64b 8274294: ProblemList sun/tools/jmap/BasicJMapTest.java
Reviewed-by: rriggs
2021-09-24 15:46:18 +00:00
Jonathan Gibbons
e741a18062 8274233: Minor cleanup for ToolBox
Reviewed-by: iris
2021-09-24 15:44:13 +00:00
Aleksey Shipilev
718eff2bb6 8273380: ARM32: Default to {ldrexd,strexd} in StubRoutines::atomic_{load|store}_long
Reviewed-by: dlong, dsamersoff
2021-09-24 15:31:35 +00:00
Andrey Turbanov
f214d6e873 8274234: Remove unnecessary boxing via primitive wrapper valueOf(String) methods in java.sql.rowset
Reviewed-by: lancea, bpb
2021-09-24 14:09:34 +00:00
Andy Herrick
f36a2bbd15 8274087: Windows DLL path not set correctly.
Reviewed-by: almatvee, asemenyuk
2021-09-24 12:43:25 +00:00
Alexey Bakhtin
5ba0d09fe4 8274205: Handle KDC_ERR_SVC_UNAVAILABLE error code from KDC
Co-authored-by: Weijun Wang <weijun@openjdk.org>
Reviewed-by: weijun
2021-09-24 12:09:38 +00:00
Thomas Schatzl
5a12af762d 8271880: Tighten condition for excluding regions from collecting cards with cross-references
Reviewed-by: ayang, sjohanss
2021-09-24 12:07:43 +00:00
Thomas Schatzl
db23ecdfae 8274191: Improve g1 evacuation failure injector performance
Reviewed-by: kbarrett, ayang
2021-09-24 12:06:17 +00:00
Masanori Yano
d91e227abb 8238274: (sctp) JDK-7118373 is not fixed for SctpChannel
Reviewed-by: dfuchs
2021-09-24 11:17:26 +00:00
Aleksey Shipilev
971aa353aa 8274083: Update testing docs to mention tiered testing
Reviewed-by: dholmes, jiefu, stuefe, ihse, mseledtsov, alanb
2021-09-24 09:03:33 +00:00
Hannes Wallnöfer
1d44014171 8273034: Make javadoc navigation collapsible on small displays
Reviewed-by: jjg
2021-09-24 08:51:55 +00:00
Julia Boes
bb74ae87ab 8274171: java/nio/file/Files/probeContentType/Basic.java failed on "Content type" mismatches
Reviewed-by: rriggs, bpb
2021-09-24 08:08:27 +00:00
Andrey Turbanov
56b8b35286 8273261: Replace 'while' cycles with iterator with enhanced-for in java.base
Reviewed-by: dfuchs, rriggs, iris, mullan
2021-09-23 20:04:36 +00:00
Daniel D. Daugherty
0aa63feca8 8274216: ProblemList 2 serviceability/dcmd/gc tests with ZGC on linux-all and windows-all
Reviewed-by: darcy, tschatzl
2021-09-23 17:14:49 +00:00
Pavel Rappo
5ffbe75557 8274195: Doc cleanup in java.nio.file
Reviewed-by: alanb, lancea, bpb
2021-09-23 16:18:07 +00:00
Brian Burkhalter
1fdc656084 8274175: (fc) java/nio/channels/FileChannel/Transfer2GPlus.java still failed in timeout
Reviewed-by: alanb
2021-09-23 15:57:12 +00:00
Roger Riggs
3b1b8fc646 8269850: Most JDK releases report macOS version 12 as 10.16 instead of 12.0
Reviewed-by: naoto, clanger
2021-09-23 15:01:25 +00:00
Liam Miller-Cushon
1b7f4b7dd8 8274169: HotSpot Style Guide has stale link to chromium style guide
Reviewed-by: dholmes, ihse
2021-09-23 13:41:10 +00:00
Tobias Holenstein
653a612a5a 8270156: Add "randomness" and "stress" keys to JTreg tests which use StressGCM, StressLCM and/or StressIGVN
Reviewed-by: thartmann, chagedorn
2021-09-23 12:59:22 +00:00
Tobias Holenstein
66ce09f51e 8272703: StressSeed should be set via FLAG_SET_ERGO
Reviewed-by: chagedorn, thartmann
2021-09-23 12:55:42 +00:00
Naoto Sato
c43452859d 8273546: DecimalFormat documentation contains literal HTML character references
Reviewed-by: joehw, bpb, iris, lancea
2021-09-23 12:48:49 +00:00
Coleen Phillimore
d098751366 8273916: Remove 'special' ranking
Reviewed-by: dholmes, pchilanomate
2021-09-23 11:21:02 +00:00
Andrew Haley
4f3b626a36 8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions
Reviewed-by: ngasson, adinn, xliu
2021-09-23 09:00:46 +00:00
Pavel Rappo
8799856528 8274075: Fix miscellaneous typos in java.base
Reviewed-by: dfuchs, darcy, iris, lancea, bpb
2021-09-23 08:08:39 +00:00
Andrey Turbanov
8b833bbea8 8274048: IGV: Replace usages of Collections.sort with List.sort call
Reviewed-by: chagedorn
2021-09-23 07:47:04 +00:00
Lin Zang
a74c099d67 8252842: Extend jmap to support parallel heap dump
Reviewed-by: rschmelter, cjplummer
2021-09-23 07:00:06 +00:00
Jaikiran Pai
2166ed1369 8273894: ConcurrentModificationException raised every time ReferralsCache drops referral
Reviewed-by: shade
2021-09-23 05:37:19 +00:00
Matthias Baesken
1c6fa113bd 8273979: move some os time related functions to os_posix for POSIX platforms
Reviewed-by: dholmes, lucy
2021-09-23 05:34:18 +00:00
Prasanta Sadhukhan
45adc9227a 8273578: javax/swing/JMenu/4515762/bug4515762.java fails on macOS 12
Reviewed-by: jdv, serb
2021-09-23 05:15:37 +00:00
Ioi Lam
0fbbe4c9a7 8274033: Some tier-4 CDS EpsilonGC tests throw OOM
Reviewed-by: dholmes, ccheung, minqi
2021-09-23 03:49:06 +00:00
Ningsheng Jian
9d3379b975 8267356: AArch64: Vector API SVE codegen support
Co-authored-by: Xiaohong Gong <xgong@openjdk.org>
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Ningsheng Jian <njian@openjdk.org>
Co-authored-by: Xuejin He <xhe@openjdk.org>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Co-authored-by: Eric Liu <eliu@openjdk.org>
Reviewed-by: aph, ngasson
2021-09-23 02:58:59 +00:00
Erik Gahlin
603138895f 8273714: jdk/jfr/api/consumer/TestRecordedFrame.java still times out after JDK-8273047
Reviewed-by: mgronlun
2021-09-22 21:28:11 +00:00
Alisen Chung
8821b00041 8205137: Remove Applet support from SwingSet2
8205139: Remove Applet support from J2Ddemo

Reviewed-by: aivanov, kizune
2021-09-22 18:32:05 +00:00
Tom Rodriguez
57fe11c9a3 8274120: [JVMCI] CompileBroker should resolve parameter types for JVMCI compiles
Reviewed-by: dnsimon, thartmann
2021-09-22 17:16:41 +00:00
Brian Burkhalter
81d416477f 8272759: (fc) java/nio/channels/FileChannel/Transfer2GPlus.java failed in timeout
Reviewed-by: alanb
2021-09-22 16:29:04 +00:00
Raffaello Giulietti
da38ced329 8271602: Add Math.ceilDiv() family parallel to Math.floorDiv() family
Reviewed-by: bpb
2021-09-22 16:16:14 +00:00
Naoto Sato
d39aad9230 8273924: ArrayIndexOutOfBoundsException thrown in java.util.JapaneseImperialCalendar.add()
Reviewed-by: rriggs, iris, joehw
2021-09-22 15:50:49 +00:00
Patric Hedlin
c9de80635e 8274039: codestrings gtest fails when hsdis is present
Reviewed-by: shade
2021-09-22 14:20:17 +00:00
Roger Riggs
33df388a24 8274003: ProcessHandleImpl.Info toString has an if check which is always true
Reviewed-by: bpb, naoto, iris
2021-09-22 13:57:37 +00:00
Roger Riggs
0a361638c5 8272600: (test) Use native "sleep" in Basic.java
Reviewed-by: iklam, dholmes
2021-09-22 13:55:19 +00:00
Pavel Rappo
c6df3c9571 8274071: Clean up java.lang.ref comments and documentation
Reviewed-by: rriggs, kbarrett, mchung, iris, lancea
2021-09-22 13:42:23 +00:00
Jan Lahoda
71788c69db 8271287: jdk/jshell/CommandCompletionTest.java fails with "lists don't have the same size expected"
Reviewed-by: vromero
2021-09-22 12:53:57 +00:00
Jan Lahoda
ba7d550c6e 8270139: jshell InternalError crash for import of @Repeatable followed by unresolved ref
Reviewed-by: vromero
2021-09-22 12:52:31 +00:00
Erik Gahlin
aefd4ac4a3 8258734: jdk/jfr/event/oldobject/TestClassLoaderLeak.java failed with "RuntimeException: Could not find class leak"
Reviewed-by: mgronlun
2021-09-22 11:45:29 +00:00
Thomas Schatzl
d245a8cc85 8274069: Clean up g1ParScanThreadState a bit
Reviewed-by: sjohanss, ayang, kbarrett
2021-09-22 11:43:13 +00:00
Thomas Schatzl
3f73ca7fcd 8274068: Rename G1ScanInYoungSetter to G1SkipCardEnqueueSetter
Reviewed-by: sjohanss, ayang
2021-09-22 11:41:13 +00:00
sunxu
7f78803b09 8273961: jdk/nio/zipfs/ZipFSTester.java fails if file path contains '+' character
Reviewed-by: clanger, lancea
2021-09-22 11:38:29 +00:00
Thomas Schatzl
51085b523e 8274054: Add custom enqueue calls during reference processing
Reviewed-by: ayang, kbarrett, sjohanss
2021-09-22 10:17:31 +00:00
Aleksey Shipilev
c77ebe8874 8274060: C2: Incorrect computation after JDK-8273454
Reviewed-by: thartmann, neliasso, chagedorn
2021-09-22 08:40:04 +00:00
Thomas Schatzl
d9872ba3d6 8273590: Move helper classes in G1 post evacuation sub tasks to cpp files
Reviewed-by: sjohanss, kbarrett
2021-09-22 08:07:03 +00:00
Prasanta Sadhukhan
688b3fe2eb 8274070: Rectify problemlist platform for failing test on macos12
Reviewed-by: azvegint
2021-09-22 08:02:13 +00:00
Daniel D. Daugherty
eeaf43b229 8274114: ProblemList serviceability/sa/TestJhsdbJstackMixed.java on linux-aarch64 in -Xcomp mode
Reviewed-by: cjplummer
2021-09-22 02:53:02 +00:00
Ao Qi
517405e462 8273965: some testlibrary_tests/ir_framework tests fail when c1 disabled
Reviewed-by: chagedorn, thartmann
2021-09-22 02:28:49 +00:00
Yi Yang
11cddd3261 8272114: Unused _last_state in osThread_windows
Reviewed-by: stuefe, dholmes
2021-09-22 02:20:30 +00:00
Andrey Turbanov
cbe57e8604 8273684: Replace usages of java.util.Stack with ArrayDeque
Reviewed-by: cjplummer, serb
2021-09-22 01:26:21 +00:00
Leonid Mesnik
a72c8aa6ad 8273921: Refactor NSK/JDI tests to create thread using factory
Reviewed-by: cjplummer, sspitsyn, amenkov
2021-09-21 23:36:16 +00:00
Lance Andersen
161fdb4afb 8273935: (zipfs) Files.getFileAttributeView() throws UOE instead of returning null when view not supported
Reviewed-by: alanb, bpb, sgehwolf
2021-09-21 19:23:49 +00:00
Pavel Rappo
0fc47e99d2 8266666: Implementation for snippets
Co-authored-by: Jonathan Gibbons <jjg@openjdk.org>
Co-authored-by: Hannes Wallnöfer <hannesw@openjdk.org>
Reviewed-by: jjg
2021-09-21 15:53:35 +00:00
Sean Mullan
6d91a3eb7b 8269039: Disable SHA-1 Signed JARs
Reviewed-by: weijun
2021-09-21 13:45:47 +00:00
Artem Semenov
42d5d2abaa 8274056: JavaAccessibilityUtilities leaks JNI objects
Reviewed-by: aivanov, ant
2021-09-21 12:38:29 +00:00
Erik Gahlin
57df0dbc45 8270873: JFR: Catch DirectoryIteratorException when scanning for .jfr files
Reviewed-by: mgronlun
2021-09-21 12:02:00 +00:00
Coleen Phillimore
111d5e1a93 8273915: Create 'nosafepoint' rank
Reviewed-by: dholmes, iklam
2021-09-21 11:37:49 +00:00
Aleksey Shipilev
7acec3f161 8236505: Mark jdk/editpad/EditPadTest.java as @headful
Reviewed-by: jlahoda
2021-09-21 11:26:28 +00:00
Thomas Schatzl
afd218d39a 8274053: [BACKOUT] JDK-8270842: G1: Only young regions need to redirty outside references in remset.
Reviewed-by: sjohanss
2021-09-21 09:20:21 +00:00
Thejasvi Voniadka
a5108a605e 8273646: Add openssl from path variable also in to Default System Openssl Path in OpensslArtifactFetcher
Reviewed-by: weijun
2021-09-21 09:01:09 +00:00
Julia Boes
65ed0a742e 8273655: content-types.properties files are missing some common types
Reviewed-by: bpb, dfuchs
2021-09-21 08:07:25 +00:00
Stefan Karlsson
c60bcd09b7 8273928: Use named run ids when problem listing tests
Reviewed-by: pliden, kbarrett, dholmes
2021-09-21 07:42:36 +00:00
Thomas Stuefe
6642d2eb8b 8273783: Simplify Metaspace arena guard handling
Reviewed-by: coleenp, lucy
2021-09-21 06:27:32 +00:00
Aleksey Shipilev
f242cb5ce0 8273797: Stop impersonating "server" VM in all VM variants
Reviewed-by: dholmes, erikj, ihse
2021-09-21 06:00:06 +00:00
Aleksey Shipilev
240fa6efa2 8273927: Enable hsdis for riscv64
Reviewed-by: ihse
2021-09-21 05:57:57 +00:00
Joe Darcy
9c91ff57e8 8274031: Typo in StringBuilder.readObject
Reviewed-by: bpb
2021-09-21 02:23:52 +00:00
Erik Gahlin
d16bf04c95 8273613: JFR: RemoteRecordingStream::start() blocks close()
Reviewed-by: mgronlun
2021-09-20 23:15:39 +00:00
Erik Gahlin
7ce60c6ff6 8273651: JFR: onMetadata(), setStartTime(), setEndTime() lacks test coverage
Reviewed-by: mgronlun, mseledtsov
2021-09-20 21:58:57 +00:00
Sergey Bylokhov
1bd11a7f2c 8273887: [macos] java/awt/color/ICC_ColorSpace/MTTransformReplacedProfile.java timed out
Reviewed-by: aivanov
2021-09-20 21:25:40 +00:00
Erik Gahlin
ee3576a48b 8256735: JFR: 'jfr' tool displays incorrect timestamps
Reviewed-by: mseledtsov, mgronlun
2021-09-20 20:43:22 +00:00
Alex Menkov
5fde4b64e2 8273909: vmTestbase/nsk/jdi/Event/request/request001 can still fail with "ERROR: new event is not ThreadStartEvent"
Reviewed-by: cjplummer, sspitsyn
2021-09-20 20:17:57 +00:00
Chris Plummer
04891c95e0 8273912: Add threadControl_dumpThread(jthread) function
Reviewed-by: kevinw, sspitsyn
2021-09-20 20:10:10 +00:00
Mikhailo Seledtsov
5c21c00441 8267163: Rename anonymous loader tests to hidden loader tests
Reviewed-by: dholmes, hseigel
2021-09-20 19:03:34 +00:00
Andrey Turbanov
b3b4b1cc21 8273907: Cleanup redundant Math.max/min calls in DefaultHighlighter
Reviewed-by: pbansal, aivanov, azvegint
2021-09-20 17:23:02 +00:00
Calvin Cheung
a67f0f9dc0 8273505: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java#default-cl crashed with SIGSEGV in MetaspaceShared::link_shared_classes
Reviewed-by: iklam, minqi
2021-09-20 16:56:32 +00:00
Erik Gahlin
26e5e9ae8c 8273654: JFR: Remove unused SecuritySupport.setAccessible(Field)
Reviewed-by: mseledtsov, shade
2021-09-20 16:53:20 +00:00
Thomas Schatzl
4b3a4fff39 8273940: vmTestbase/vm/mlvm/meth/stress/gc/callSequencesDuringGC/Test.java crashes in full gc during VM exit
Reviewed-by: lkorinth
2021-09-20 16:17:52 +00:00
Erik Gahlin
dad5d27172 8272867: JFR: ManagementSupport.removeBefore() lost coverage
Reviewed-by: mseledtsov, mgronlun
2021-09-20 15:59:02 +00:00
Erik Gahlin
48aff23165 8272515: JFR: Names should only be valid Java identifiers
Reviewed-by: mgronlun
2021-09-20 15:44:46 +00:00
Nils Eliasson
4d95a5d6dc 8273933: [TESTBUG] Test must run without preallocated exceptions
Reviewed-by: chagedorn, thartmann
2021-09-20 14:59:44 +00:00
Nils Eliasson
9aa12daa15 8273934: Remove unused perfcounters
Reviewed-by: chagedorn
2021-09-20 14:11:16 +00:00
lawrence.andrews
4da45c4301 8270609: [TESTBUG] java/awt/print/Dialog/DialogCopies.java does not show instruction
Reviewed-by: aivanov
2021-09-20 14:07:50 +00:00
Aleksey Shipilev
544193a3bb 8247980: Exclusive execution of java/util/stream tests slows down tier1
Reviewed-by: iignatyev
2021-09-20 14:05:03 +00:00
Aleksey Shipilev
1f8af524ff 8273314: Add tier4 test groups
Reviewed-by: serb, iignatyev
2021-09-20 14:02:07 +00:00
Jan Lahoda
699865f76c 8259039: Passing different version to --release flag than javac version output warning
Reviewed-by: jjg
2021-09-20 13:43:14 +00:00
Naoto Sato
f71df142a9 8273187: jtools tests fail with missing markerName check
Reviewed-by: iris, sspitsyn, joehw
2021-09-20 13:38:38 +00:00
Christian Hagedorn
6f3e40c16d 8273825: TestIRMatching.java fails after JDK-8266550
Reviewed-by: thartmann, roland
2021-09-20 12:56:08 +00:00
Christian Hagedorn
a561eac912 8273895: compiler/ciReplay/TestVMNoCompLevel.java fails due to wrong data size with TieredStopAtLevel=2,3
Reviewed-by: kvn, dlong
2021-09-20 12:53:56 +00:00
Thomas Stuefe
d2388b7a0f 8273959: Some metaspace diagnostic switches should be develop
Reviewed-by: dholmes, jiefu
2021-09-20 08:46:44 +00:00
Matthias Baesken
dc7f452acb 8273815: move have_special_privileges to os_posix for POSIX platforms
Reviewed-by: mdoerr, stuefe, dholmes
2021-09-20 08:29:12 +00:00
Zhengyu Gu
7c9868c0b3 8273454: C2: Transform (-a)*(-b) into a*b
Reviewed-by: thartmann, eliu, chagedorn
2021-09-18 23:11:06 +00:00
Thomas Stuefe
bb9d142759 8273958: gtest/MetaspaceGtests executes unnecessary tests in debug builds
Reviewed-by: jiefu
2021-09-18 08:29:48 +00:00
lawrence.andrews
2a2e9190d4 8273685: Remove jtreg tag manual=yesno for java/awt/Graphics/LCDTextAndGraphicsState.java & show test instruction
Reviewed-by: aivanov, pbansal
2021-09-17 18:11:23 +00:00
sunxu
83020617e7 8273774: CDSPluginTest should only expect classes_nocoops.jsa exists on supported 64-bit platforms
Reviewed-by: ccheung, mchung
2021-09-17 16:41:51 +00:00
Kartik Ohri
2f8c2211c8 8273681: Add Vector API vs Arrays.mismatch intrinsic benchmark
Reviewed-by: psandoz
2021-09-17 15:12:34 +00:00
Phil Race
17f7a45ce4 8273913: Problem list some headful client jtreg tests that fail on macOS 12
Reviewed-by: pbansal, aivanov
2021-09-17 15:00:52 +00:00
Matthias Baesken
27d747ad4f 8273877: os::unsetenv unused
Reviewed-by: mdoerr, stuefe
2021-09-17 12:53:38 +00:00
Matthias Baesken
35f6f1d69f 8273808: Cleanup AddFontsToX11FontPath
Reviewed-by: pbansal, lucy
2021-09-17 08:20:10 +00:00
Per Liden
1890d85c0e 8273872: ZGC: Explicitly use 2M large pages
Reviewed-by: eosterlund, tschatzl, stefank
2021-09-17 07:51:45 +00:00
Aleksey Shipilev
54b456764b 8273880: Zero: Print warnings when unsupported intrinsics are enabled
Reviewed-by: dholmes
2021-09-17 06:44:18 +00:00
Guoxiong Li
e07ab82ee5 8273408: java.lang.AssertionError: typeSig ERROR on generated class property of record
Reviewed-by: vromero
2021-09-17 05:34:25 +00:00
Alex Menkov
8c022e2c17 8270434: JDI+UT: Unexpected event in JDI tests
Reviewed-by: sspitsyn, kevinw
2021-09-16 23:45:08 +00:00
Ioi Lam
b98290444a 8271073: Improve testing with VM option VerifyArchivedFields
Reviewed-by: ccheung, minqi
2021-09-16 23:26:55 +00:00
Volker Simonis
bc48a0ac29 8273902: Memory leak in OopStorage due to bug in OopHandle::release()
Reviewed-by: sspitsyn, coleenp
2021-09-16 19:56:12 +00:00
Yumin Qi
9c5441c9c4 8271569: Clean up the use of CDS constants and field offsets
Reviewed-by: iklam, dholmes
2021-09-16 17:56:07 +00:00
Calvin Cheung
12fa7073c5 8261941: Use ClassLoader for unregistered classes during -Xshare:dump
Reviewed-by: iklam, minqi
2021-09-16 17:32:02 +00:00
Andrey Turbanov
7e92abe7a4 8273710: Remove redundant stream() call before forEach in jdk.jdeps
Reviewed-by: dfuchs, shade
2021-09-16 15:17:28 +00:00
Roland Westrelin
59b2478abd 8273659: Replay compilation crashes with SIGSEGV since 8271911
Reviewed-by: kvn, dlong
2021-09-16 12:02:46 +00:00
Coleen Phillimore
5e4d09c229 8273300: Check Mutex ranking during a safepoint
Reviewed-by: eosterlund, dholmes, pchilanomate
2021-09-16 12:01:49 +00:00
Christian Hagedorn
c86e24d4be 8271954: C2: assert(false) failed: Bad graph detected in build_loop_late
Reviewed-by: roland, kvn
2021-09-16 11:57:30 +00:00
Albert Mingkun Yang
14dc5178cf 8273372: Remove scavenge trace message in psPromotionManager
Reviewed-by: tschatzl, lkorinth
2021-09-16 11:41:15 +00:00
Aleksey Shipilev
241ac89f12 8273606: Zero: SPARC64 build fails with si_band type mismatch
Reviewed-by: stuefe
2021-09-16 08:53:22 +00:00
Aleksey Shipilev
181292d48c 8273801: Handle VMTYPE for "core" VM variant
Reviewed-by: dholmes, erikj
2021-09-16 08:25:43 +00:00
Aleksey Shipilev
09ecb11927 8273806: compiler/cpuflags/TestSSE4Disabled.java should test for CPU feature explicitly
Reviewed-by: thartmann
2021-09-16 08:23:55 +00:00
Aleksey Shipilev
99cfc160af 8273805: gc/g1/TestGCLogMessages.java test should handle non-JFR configs
Reviewed-by: tschatzl, ayang
2021-09-16 08:22:48 +00:00
Aleksey Shipilev
1c5de8b86b 8273807: Zero: Drop incorrect test block from compiler/startup/NumCompilerThreadsCheck.java
Reviewed-by: thartmann
2021-09-16 08:12:31 +00:00
Aleksey Shipilev
46af82e5b0 8273804: Platform.isTieredSupported should handle the no-compiler case
Reviewed-by: dholmes
2021-09-16 07:52:24 +00:00
Aleksey Shipilev
2d13fb21af 8273803: Zero: Handle "zero" variant in CommandLineOptionTest.java
Reviewed-by: dholmes
2021-09-16 07:51:17 +00:00
Matthias Baesken
d4546b6b36 8273526: Extend the OSContainer API pids controller with pids.current
Reviewed-by: sgehwolf, iklam
2021-09-16 07:08:19 +00:00
Serguei Spitsyn
74ffe12267 8273575: memory leak in appendBootClassPath(), paths must be deallocated
Reviewed-by: dholmes, amenkov
2021-09-15 20:00:21 +00:00
Thomas Schatzl
cbffecc61e 8273832: gc/shenandoah/TestJcmdHeapDump.java does not have a @requires vm.gc.shenandoah
Reviewed-by: zgu
2021-09-15 17:21:44 +00:00
Thomas Schatzl
7b2beb6ba6 8273823: Problemlist gc/stringdedup tests timing out on ZGC
Reviewed-by: zgu, lkorinth
2021-09-15 15:49:15 +00:00
Tobias Holenstein
82904246cd 8272771: frame::pd_ps() is not implemented on any platform
Reviewed-by: shade, dholmes, thartmann
2021-09-15 13:58:28 +00:00
Alexey Semenyuk
a3ca770227 8272815: jpackage --type rpm produces an error: Invalid or unsupported type: [null]
Reviewed-by: herrick, almatvee
2021-09-15 13:22:26 +00:00
Zhengyu Gu
8132bfd23f 8273559: Shenandoah: Shenandoah should support multi-threaded heap dump
Reviewed-by: shade, rkennke, sgehwolf
2021-09-15 13:10:13 +00:00
Ian Graves
f531b5c796 8273514: java/util/DoubleStreamSums/CompensatedSums.java failure
Reviewed-by: rriggs, darcy
2021-09-15 13:08:15 +00:00
Sergey Tsypanov
4c673df31e 8273656: Improve java.lang.invoke.MethodType.parameterList() and its usage
Reviewed-by: jvernee, vlivanov, mchung
2021-09-15 11:11:15 +00:00
Aleksey Shipilev
8fbcc8239a 8273494: Zero: Put libjvm.so into "zero" folder, not "server"
Reviewed-by: ihse, sgehwolf
2021-09-15 08:56:53 +00:00
Thomas Schatzl
92c30c941b 8273599: Remove cross_threshold method usage around GC
Reviewed-by: sjohanss, ayang
2021-09-15 08:28:47 +00:00
Thomas Schatzl
02af541b74 8273605: VM Exit does not abort concurrent mark
Reviewed-by: kbarrett, sjohanss
2021-09-15 08:27:43 +00:00
Prasanta Sadhukhan
febcc72a54 8273366: [testbug] javax/swing/UIDefaults/6302464/bug6302464.java fails on macOS12
Reviewed-by: aivanov, serb
2021-09-15 05:43:03 +00:00
Sergey Bylokhov
1017a2c2d7 8273135: java/awt/color/ICC_ColorSpace/MTTransformReplacedProfile.java crashes in liblcms.dylib with NULLSeek+0x7
Reviewed-by: aivanov, azvegint
2021-09-15 05:18:35 +00:00
Sergey Bylokhov
6cf70f5f08 8273638: javax/swing/JTable/4235420/bug4235420.java fails in GTK L&F
Reviewed-by: pbansal, psadhukhan, azvegint
2021-09-15 05:15:44 +00:00
Leo Korinth
e66bf47248 8273414: ResourceObj::operator delete should handle nullptr in debug builds
Reviewed-by: stuefe
2021-09-14 21:17:59 +00:00
casparcwang
16c3ad1ff4 8272574: C2: assert(false) failed: Bad graph detected in build_loop_late
Co-authored-by: Hui Shi <hshi@openjdk.org>
Co-authored-by: Christian Hagedorn <chagedorn@openjdk.org>
Reviewed-by: thartmann, chagedorn, kvn
2021-09-14 20:55:01 +00:00
Brian Burkhalter
e7ab3724e7 8273641: (bf) Buffer subclasses documentation contains template strings
Reviewed-by: rriggs, alanb
2021-09-14 19:12:53 +00:00
Andy Herrick
22a7191f70 8273040: Turning off JpAllowDowngrades (or Upgrades)
Reviewed-by: asemenyuk
2021-09-14 17:45:49 +00:00
Jonathan Dowland
394ebc8642 8270553: Tests should not use (real, in-use, routable) 1.1.1.1 as dummy IP value
Reviewed-by: shade, dfuchs
2021-09-14 17:12:49 +00:00
Aleksey Shipilev
0f31d0fb2c 8273373: Zero: Cannot invoke JVM in primordial threads on Zero
Reviewed-by: stuefe
2021-09-14 15:49:00 +00:00
Guoxiong Li
fe89dd3b0d 8271254: javac generates unreachable code when using empty semicolon statement
Reviewed-by: vromero
2021-09-14 14:46:21 +00:00
Coleen Phillimore
8974b95886 8273730: WorkGangBarrierSync constructor unused
Reviewed-by: tschatzl, eosterlund
2021-09-14 13:17:27 +00:00
Coleen Phillimore
1d3eb147ee 8273635: Attempting to acquire lock StackWatermark_lock/9 out of order with lock tty_lock/3
Reviewed-by: dholmes, eosterlund
2021-09-14 13:09:46 +00:00
Naoto Sato
31667daa50 8273491: java.util.spi.LocaleServiceProvider spec contains statement that is too strict
Reviewed-by: joehw, lancea
2021-09-14 12:46:08 +00:00
Magnus Ihse Bursie
ed7789d6a0 8256977: Bump minimum GCC from 5.x to 6 for JDK
Reviewed-by: erikj, shade
2021-09-14 11:29:16 +00:00
Magnus Ihse Bursie
5bfd043e16 8273497: building.md should link to both md and html
Reviewed-by: erikj, shade
2021-09-14 11:28:19 +00:00
Per Liden
3884580591 8273597: Rectify Thread::is_ConcurrentGC_thread()
Reviewed-by: stefank, coleenp
2021-09-14 10:28:31 +00:00
Per Liden
f52728993d 8273639: tests fail with "assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark"
Reviewed-by: coleenp, dholmes
2021-09-14 08:36:39 +00:00
Roland Westrelin
1d2458db34 8266550: C2: mirror TypeOopPtr/TypeInstPtr/TypeAryPtr with TypeKlassPtr/TypeInstKlassPtr/TypeAryKlassPtr
Reviewed-by: vlivanov, thartmann
2021-09-14 08:35:09 +00:00
Aleksey Shipilev
a143372818 8273438: Enable parallelism in vmTestbase/metaspace/stressHierarchy tests
Reviewed-by: mseledtsov, iignatyev
2021-09-14 08:18:21 +00:00
Aleksey Shipilev
86a8e5524d 8273486: Zero: Handle DiagnoseSyncOnValueBasedClasses VM option
Reviewed-by: dholmes
2021-09-14 08:14:35 +00:00
Yasumasa Suenaga
8d73ee684a 8273471: Add foldmultilines to UL for stdout/err
Reviewed-by: dholmes, iklam
2021-09-14 05:12:36 +00:00
David Holmes
c54a918a0e 8273691: Missing comma after 2021 in GraphemeTestAccessor.java copyright notice
Reviewed-by: psandoz
2021-09-14 01:01:07 +00:00
Ian Graves
3d9dc8f824 8273430: Suspicious duplicate condition in java.util.regex.Grapheme#isExcludedSpacingMark
Reviewed-by: naoto
2021-09-13 21:48:28 +00:00
Coleen Phillimore
5095068d3b 8273675: Remove unused Universe::_verify_in_progress flag
Reviewed-by: hseigel
2021-09-13 20:35:19 +00:00
Weijun Wang
fc0f8542c3 8246797: A convenient method to read OPTIONAL element
Reviewed-by: jnimeh, valeriep
2021-09-13 18:05:27 +00:00
Brian Burkhalter
6cf5079d8e 8273513: Make java.io.FilterInputStream specification more precise about overrides
Reviewed-by: dfuchs, naoto
2021-09-13 17:50:10 +00:00
Pavel Rappo
b4b121018d 8273616: Fix trivial doc typos in the java.base module
Reviewed-by: jrose, iris, lancea, dfuchs, rriggs
2021-09-13 17:46:13 +00:00
Mikhailo Seledtsov
7c26ddb575 8195809: [TESTBUG] jps and jcmd -l support for containers is not tested
Reviewed-by: hseigel, kevinw
2021-09-13 17:36:23 +00:00
Naoto Sato
4cfa230e2d 8273259: Character.getName doesn't follow Unicode spec for ideographs
Reviewed-by: bpb, lancea, iris, darcy
2021-09-13 16:06:10 +00:00
Zhengyu Gu
f9b2507f3e 8271834: TestStringDeduplicationAgeThreshold intermittent failures on Shenandoah
Reviewed-by: shade, pliden
2021-09-13 12:23:12 +00:00
Jie Fu
261cb44b13 8273629: compiler/uncommontrap/TestDeoptOOM.java fails with release VMs
Reviewed-by: shade
2021-09-13 12:10:56 +00:00
Jan Lahoda
b0d04976bd 8273584: TypeElement.getSuperclass crashes for a record TypeElement when j.l.Record is not available
Reviewed-by: vromero
2021-09-13 09:24:06 +00:00
Prasanta Sadhukhan
4efcd2006f 8273478: [macos11] JTabbedPane selected and pressed tab is not legible
Reviewed-by: kizune, aivanov, serb
2021-09-13 04:44:01 +00:00
Yi Yang
a73c06de2a 8273021: C2: Improve Add and Xor ideal optimizations
Co-authored-by: yulei <lei.yul@alibaba-inc.com>
Reviewed-by: thartmann, kvn
2021-09-13 02:10:45 +00:00
Ioi Lam
9f86082fd5 8273610: LogTestFixture::restore_config() should not restore options
Reviewed-by: ysuenaga, dholmes
2021-09-13 01:57:04 +00:00
Andrey Turbanov
2ee1f96c14 8273484: Cleanup unnecessary null comparison before instanceof check in java.naming
Reviewed-by: aefimov, dfuchs
2021-09-12 13:48:24 +00:00
Ao Qi
f189dff5cb 8273595: tools/jpackage tests do not work on apt-based Linux distros like Debian
Co-authored-by: Sun Xu <sunxu01@loongson.cn>
Reviewed-by: asemenyuk, herrick
2021-09-10 23:13:18 +00:00
Ioi Lam
922e86f4ff 8273522: Rename test property vm.cds.archived.java.heap to vm.cds.write.archived.java.heap
Reviewed-by: minqi, ccheung, mseledtsov
2021-09-10 22:45:26 +00:00
Pavel Rappo
f42b92790a 8273609: Fix trivial doc typos in the compiler area
Reviewed-by: rriggs, vromero, iris
2021-09-10 19:33:54 +00:00
Coleen Phillimore
e4cd2097a5 8273611: Remove unused ProfilePrint_lock
Reviewed-by: iklam
2021-09-10 19:23:58 +00:00
jovanstevanovic
f690a01f1e 8273278: Support XSLT on GraalVM Native Image--deterministic bytecode generation in XSLT
Reviewed-by: joehw
2021-09-10 19:13:20 +00:00
Jim Laskey
5e1df2c7d7 8273162: AbstractSplittableWithBrineGenerator does not create a random salt
Reviewed-by: rriggs, bpb
2021-09-10 18:03:45 +00:00
Jim Laskey
d4177a98c1 8273351: bad tag in jdk.random module-info.java
Reviewed-by: rriggs, bpb
2021-09-10 17:58:33 +00:00
Mandy Chung
ec9d1bebd7 8273194: Document the two possible cases when Lookup::ensureInitialized returns
Reviewed-by: alanb
2021-09-10 17:17:31 +00:00
Naoto Sato
81d2acee57 8273369: Computing micros between two instants unexpectedly overflows for some cases
Reviewed-by: lancea, rriggs, joehw
2021-09-10 16:36:57 +00:00
Phil Race
efe3ed1e70 8273358: macOS Monterey does not have the font Times needed by Serif
Reviewed-by: kizune, aivanov
2021-09-10 16:36:06 +00:00
Sandhya Viswanathan
e58c12e618 8273512: Fix the copyright header of x86 macroAssembler files
Reviewed-by: dholmes, thartmann
2021-09-10 15:39:48 +00:00
Coleen Phillimore
461a467f91 8273456: Do not hold ttyLock around stack walking
Reviewed-by: dholmes, eosterlund
2021-09-10 14:54:47 +00:00
Daniel D. Daugherty
695b434b44 Merge 2021-09-10 14:34:27 +00:00
Andy Herrick
4afbcaf553 8273592: Backout JDK-8271868
Reviewed-by: kcr, asemenyuk
2021-09-10 14:17:45 +00:00
Aleksei Efimov
c464f09056 8273402: Use derived NamingExceptions in com.sun.jndi.ldap.Connection#readReply
Reviewed-by: dfuchs
2021-09-10 14:15:45 +00:00
kabutz
4e6de5f9de 8273541: Cleaner Thread creates with normal priority instead of MAX_PRIORITY - 2
Reviewed-by: shade, alanb, lancea
2021-09-10 14:13:59 +00:00
Per Liden
c1e39faaa9 8273482: Remove "foreground work" concept from WorkGang
Reviewed-by: tschatzl, kbarrett
2021-09-10 09:49:45 +00:00
Tobias Holenstein
2eaf374c5c 8272698: LoadNode::pin is unused
Reviewed-by: roland, thartmann
2021-09-10 07:44:12 +00:00
Tobias Holenstein
792281d559 8264517: C2: make MachCallNode::return_value_is_used() only available for x86
Reviewed-by: kvn, thartmann
2021-09-10 07:43:15 +00:00
Pankaj Bansal
70c9e026b6 8272148: JDesktopPane:getComponentCount() returns one extra than expected with GTKLookAndFeel
Reviewed-by: prr, serb
2021-09-10 06:13:32 +00:00
matias9927
08f0be8388 8272608: java_lang_System::allow_security_manager() doesn't set its initialization flag
Reviewed-by: coleenp, dholmes
2021-09-10 01:05:37 +00:00
Andrey Turbanov
2e321dc782 8273528: Avoid ByteArrayOutputStream.toByteArray when converting stream to String
Reviewed-by: bpb, xuelei, serb, aivanov
2021-09-09 21:47:59 +00:00
Naoto Sato
54dee132d1 8273188: java/lang/instrument/BootClassPath/BootClassPathTest.sh fails with "FATAL ERROR in native method: processing of -javaagent failed, processJavaStart failed"
Reviewed-by: dholmes, alanb
2021-09-09 19:41:56 +00:00
Andy Herrick
a37254c79f 8271868: Warn user when using mac-sign option with unsigned app-image.
Reviewed-by: asemenyuk
2021-09-09 19:31:35 +00:00
Per Liden
4020a60cbb 8273550: Replace os::cgc_thread/pgc_thread with os::gc_thread
Reviewed-by: stefank, coleenp
2021-09-09 19:21:55 +00:00
Per Liden
185eacacdd 8273545: Remove Thread::is_GC_task_thread()
Reviewed-by: stefank, coleenp, shade
2021-09-09 19:19:39 +00:00
Vicente Romero
dd1209e4ae 8268885: duplicate checkcast when destination type is not first type of intersection type
Reviewed-by: jlahoda
2021-09-09 18:36:17 +00:00
Saravana Kumar Vijayasekaran
ef4a532802 8263773: Reenable German localization for builds at Oracle
Reviewed-by: erikj, ihse
2021-09-09 18:24:26 +00:00
Maurizio Cimadamore
96614da025 8272903: Missing license header in ArenaAllocator.java
Reviewed-by: bpb, lancea
2021-09-09 17:28:06 +00:00
Aleksey Shipilev
e3bda63ce2 8273489: Zero: Handle UseHeavyMonitors on all monitorenter paths
Reviewed-by: coleenp
2021-09-09 17:19:14 +00:00
Tobias Hartmann
c81690d716 8273498: compiler/c2/Test7179138_1.java timed out
Reviewed-by: roland
2021-09-09 13:54:47 +00:00
Tobias Hartmann
4866eaa997 8273409: Receiver type narrowed by CCP does not always trigger post-parse call devirtualization
Reviewed-by: vlivanov, neliasso
2021-09-09 13:44:05 +00:00
Aleksey Shipilev
5ca26cbddb 8273433: Enable parallelism in vmTestbase_nsk_sysdict tests
Reviewed-by: mseledtsov, dholmes
2021-09-09 13:41:46 +00:00
Martin Doerr
f6cc1732f4 8273539: [PPC64] gtest build error after JDK-8264207
Reviewed-by: shade, stuefe
2021-09-09 10:48:02 +00:00
Hamlin Li
9690df7fb9 8273476: G1: refine G1CollectedHeap::par_iterate_regions_array_part_from
Reviewed-by: ayang, tschatzl
2021-09-09 10:41:27 +00:00
Evan Whelan
00e059ddb3 8133686: HttpURLConnection.getHeaderFields and URLConnection.getRequestProperties methods return field values in reverse order
Reviewed-by: dfuchs
2021-09-09 10:23:12 +00:00
Aleksey Shipilev
aa9311182a 8273483: Zero: Clear pending JNI exception check in native method handler
Reviewed-by: aph
2021-09-09 09:46:16 +00:00
Aleksey Shipilev
8c16f485b3 8273487: Zero: Handle "zero" variant in runtime tests
Reviewed-by: alanb, dholmes
2021-09-09 08:07:00 +00:00
Aleksey Shipilev
dc33bd8b6c 8273315: Parallelize and increase timeouts for java/foreign/TestMatrix.java test
Reviewed-by: mcimadamore
2021-09-09 07:43:22 +00:00
Thomas Schatzl
5b1dfe4e35 8273439: Fix G1CollectedHeap includes and forward declarations
Reviewed-by: ayang, kbarrett
2021-09-09 07:28:23 +00:00
Matthias Baesken
6eba443428 8273387: remove some unreferenced gtk-related functions
Reviewed-by: pbansal, clanger
2021-09-09 06:15:15 +00:00
Hamlin Li
5df2648086 8273218: G1: Rename g1EvacuationInfo to g1EvacInfo
Reviewed-by: tschatzl, ayang
2021-09-09 00:41:28 +00:00
Daniel D. Daugherty
12f0b77179 8273516: ProblemList compiler/c2/Test7179138_1.java in -Xcomp mode on win-X64
Reviewed-by: dholmes
2021-09-09 00:39:40 +00:00
Roger Riggs
7fd6b0bfd8 8273242: (test) Refactor to use TestNG for RuntimeTests ExecCommand tests
Reviewed-by: naoto, lancea
2021-09-08 20:53:25 +00:00
Leonid Mesnik
a5e4def526 8265489: Stress test times out because of long ObjectSynchronizer::monitors_iterate(...) operation
Reviewed-by: dcubed
2021-09-08 19:31:18 +00:00
Leonid Mesnik
9b5991e811 8273451: Remove unreachable return in mutexLocker::wait
Reviewed-by: minqi, coleenp
2021-09-08 19:30:17 +00:00
Thomas Schatzl
e6805032ff 8273185: Rename the term "atomic" in ReferenceProcessor
Reviewed-by: ayang, shade
2021-09-08 19:02:49 +00:00
Daniel D. Daugherty
ba31eee4fc 8273109: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest times out
Reviewed-by: bpb
2021-09-08 18:33:04 +00:00
Jonathan Gibbons
4d5e1ed958 8272375: Improve phrasing of synthesized descriptions in JavaFX docs
Reviewed-by: kcr, prappo
2021-09-08 17:38:05 +00:00
Aleksey Shipilev
267c61a16a 8273361: InfoOptsTest is failing in tier1
Reviewed-by: jpai, ihse, jlahoda
2021-09-08 16:36:31 +00:00
Vladimir Ivanov
f7e9f56e23 8273359: CI: ciInstanceKlass::get_canonical_holder() doesn't respect instance size
Reviewed-by: kvn
2021-09-08 16:17:56 +00:00
Sandhya Viswanathan
d7efd0e8cf 8273450: Fix the copyright header of SVML files
Reviewed-by: dholmes, psandoz
2021-09-08 16:07:45 +00:00
Sergey Tsypanov
e5f298a7f1 8273329: Remove redundant null check from String.getBytes(String charsetName)
Reviewed-by: rriggs, iris, naoto
2021-09-08 15:54:36 +00:00
Masanori Yano
cb112affd6 8269373: some tests in jdk/tools/launcher/ fails on localized Windows platform
Reviewed-by: naoto
2021-09-08 15:46:33 +00:00
Wang Huang
7e662e7b9d 8272413: Incorrect num of element count calculation for vector cast
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Miu Zhuojun <mouzhuojun@huawei.com>
Co-authored-by: Wu Yan <wuyan@openjdk.org>
Reviewed-by: eliu, kvn
2021-09-08 14:39:23 +00:00
jtfuller111
f2f8136cc9 8265443: IGV: disambiguate groups by emiting additional properties
Reviewed-by: thartmann
2021-09-08 14:38:21 +00:00
Andrey Turbanov
59c9f75041 8273375: Remove redundant 'new String' calls after concatenation in java.desktop
Reviewed-by: aivanov
2021-09-08 14:28:07 +00:00
Vladimir Ivanov
faa942c8ba 8273000: Remove WeakReference-based class initialisation barrier implementation
Reviewed-by: psandoz, mchung
2021-09-08 11:28:17 +00:00
Vladimir Ivanov
21012f2bbe 8078641: MethodHandle.asTypeCache can retain classes from unloading
Co-authored-by: Peter Levart <plevart@openjdk.org>
Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org>
Reviewed-by: psandoz, mchung, plevart
2021-09-08 11:27:14 +00:00
Markus Karg
185557423d 8273038: ChannelInputStream.transferTo() uses FileChannel.transferTo(FileChannel)
Reviewed-by: alanb
2021-09-08 11:22:47 +00:00
Andrew Haley
6750c34c92 8270533: AArch64: size_fits_all_mem_uses should return false if its output is a CAS
Reviewed-by: adinn, ngasson
2021-09-08 10:08:30 +00:00
Hamlin Li
a66629a464 8254167: G1: Record regions where evacuation failed to provide targeted iteration
Reviewed-by: tschatzl, ayang
2021-09-08 08:01:18 +00:00
Aleksey Shipilev
286a1f6b7c 8273440: Zero: Disable runtime/Unsafe/InternalErrorTest.java
Reviewed-by: dholmes
2021-09-08 07:44:35 +00:00
Aleksey Shipilev
7d24a33421 8273318: Some containers/docker/TestJFREvents.java configs are running out of memory
Reviewed-by: ngasson, sgehwolf, mseledtsov
2021-09-08 07:43:28 +00:00
Andrey Turbanov
1513dc7afc 8271603: Unnecessary Vector usage in java.desktop
Reviewed-by: prr, serb
2021-09-08 04:36:41 +00:00
Daniel D. Daugherty
ea4907a878 8273047: test jfr/api/consumer/TestRecordedFrame.java timing out
Reviewed-by: dholmes
2021-09-08 02:13:41 +00:00
Yasumasa Suenaga
4eacdb38a8 8273104: Refactoring option parser for UL
Reviewed-by: iklam, dholmes
2021-09-08 01:27:13 +00:00
Daniel D. Daugherty
8884d2f854 8273462: ProblemList vmTestbase/vm/mlvm/anonloader/stress/oome/heap/Test.java in -Xcomp mode
Reviewed-by: dholmes
2021-09-08 00:34:11 +00:00
Mark Sheppard
d6d6c0692b 8273246: Amend the test java/nio/channels/DatagramChannel/ManySourcesAndTargets.java to execute in othervm mode
Reviewed-by: alanb
2021-09-07 22:18:23 +00:00
Andrey Turbanov
708407eddc 8273168: Remove superfluous use of boxing in java.desktop
Reviewed-by: aivanov
2021-09-07 21:12:35 +00:00
Alexey Ivanov
270a9d9293 8273043: [TEST_BUG] Automate NimbusJTreeSelTextColor.java
Reviewed-by: serb
2021-09-07 19:05:35 +00:00
Prasanta Sadhukhan
df05b4d1a1 8271923: [macos] the text color on the selected disabled tabbed pane button remains white making text unreadable
Reviewed-by: jdv
2021-09-07 15:50:27 +00:00
Roland Westrelin
2abf3b3b27 8271340: Crash PhaseIdealLoop::clone_outer_loop
Reviewed-by: kvn, thartmann
2021-09-07 15:15:17 +00:00
Roland Westrelin
99fb12c798 8271341: Opcode() != Op_If && Opcode() != Op_RangeCheck) || outcnt() == 2 assert failure with Test7179138_1.java
Reviewed-by: kvn, thartmann
2021-09-07 15:13:12 +00:00
Fernando Guallini
041ae20b10 8268558: [TESTBUG] Case 2 in TestP11KeyFactoryGetRSAKeySpec is skipped
Reviewed-by: mullan, rhalade
2021-09-07 14:36:15 +00:00
Vladimir Ivanov
377b186724 8269119: C2: Avoid redundant memory barriers in Unsafe.copyMemory0 intrinsic
Reviewed-by: thartmann, roland
2021-09-07 11:35:31 +00:00
Jan Lahoda
70157c78a8 8272135: jshell: Method cannot use its overloaded version
Reviewed-by: vromero
2021-09-07 09:50:10 +00:00
Ivan Šipka
5caa77b043 8263364: sun/net/www/http/KeepAliveStream/KeepAliveStreamCloseWithWrongContentLength.java wedged in getInputStream
Reviewed-by: dfuchs
2021-09-07 09:46:27 +00:00
Aleksey Shipilev
a522d6b53c 8273376: Zero: Disable vtable/itableStub gtests
Reviewed-by: jiefu, stuefe
2021-09-07 08:52:53 +00:00
Leo Korinth
3cd95a2932 8231356: Fix broken ResourceObj::operator new[] in debug builds
Reviewed-by: kbarrett, iklam
2021-09-07 08:23:32 +00:00
Aleksey Shipilev
81c719be39 8273333: Zero should warn about unimplemented -XX:+LogTouchedMethods
Reviewed-by: minqi, dholmes
2021-09-07 07:35:23 +00:00
Wang Huang
649c22c5b1 8270832: Aarch64: Update algorithm annotations for MacroAssembler::fill_words
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Miu Zhuojun <mouzhuojun@huawei.com>
Co-authored-by: Wu Yan <wuyan@openjdk.org>
Reviewed-by: ngasson, aph
2021-09-07 01:40:24 +00:00
Kim Barrett
eb221812b2 8273386: Remove duplicated code in G1DCQS::abandon_completed_buffers
Reviewed-by: tschatzl
2021-09-06 18:19:58 +00:00
Aleksey Shipilev
fc546d6de9 8273378: Shenandoah: Remove the remaining uses of os::is_MP
Reviewed-by: aph, zgu
2021-09-06 16:00:12 +00:00
Patric Hedlin
7bd4f496b4 8264207: CodeStrings does not honour fixed address assumption.
Reviewed-by: redestad, neliasso
2021-09-06 14:43:54 +00:00
Thomas Schatzl
2cabec8ddc 8253343: Extract G1 Young GC algorithm related code from G1CollectedHeap
Reviewed-by: ayang, sjohanss
2021-09-06 14:28:54 +00:00
Dan Heidinga
44c5c23b96 8272164: DumpAllocStats shouldn't subclass from ResourceObj
Reviewed-by: shade, iklam, dholmes
2021-09-06 13:39:03 +00:00
Markus Grönlund
1bf5bda291 8269418: jdk/jfr/event/oldobject/TestObjectSize.java failed with "RuntimeException: No events: expected false, was true"
Reviewed-by: jbachorik
2021-09-06 09:13:35 +00:00
Thomas Schatzl
fb5b144eca 8272985: Reference discovery is confused about atomicity and degree of parallelism
Reviewed-by: ayang, kbarrett
2021-09-06 09:07:43 +00:00
Daniel Gredler
70ed6c5b8c 8272878: JEP 381 cleanup: Remove unused Solaris code in sun.font.TrueTypeGlyphMapper
Reviewed-by: prr, jdv
2021-09-06 08:13:22 +00:00
Albert Mingkun Yang
b4e5b28b86 8273221: Guard GCIdMark against nested calls
Reviewed-by: tschatzl, kbarrett
2021-09-06 08:11:34 +00:00
Aleksey Shipilev
4d25e6f6c7 8273335: compiler/blackhole tests should not run with interpreter-only VMs
Reviewed-by: kvn
2021-09-06 08:08:05 +00:00
lawrence.andrews
c640fe42c2 7188098: TEST_BUG: closed/javax/sound/midi/Synthesizer/Receiver/bug6186488.java fails
Reviewed-by: serb
2021-09-05 09:15:38 +00:00
Prasanta Sadhukhan
cec6c068b0 8272232: javax/swing/JTable/4275046/bug4275046.java failed with "Expected value in the cell: 'rededited' but found 'redEDITED'."
8257540: javax/swing/JFileChooser/8041694/bug8041694.java failed with "RuntimeException: The selected directory name is not the expected 'd ' but 'D '."

Reviewed-by: serb
2021-09-04 11:04:22 +00:00
Dean Long
14a3ac09fe 8271911: replay compilations of methods which use JSR292 (easy cases)
8012267: ciReplay: fails to resolve @SignaturePolymorphic methods in replay data
8012268: ciReplay: process_ciInstanceKlass: JVM_CONSTANT_MethodHandle not supported

Reviewed-by: kvn, vlivanov
2021-09-03 23:23:10 +00:00
Yumin Qi
d414a88d88 8273240: Dynamic test ArchiveConsistency.java should use CDSArchiveUtils
Reviewed-by: iklam
2021-09-03 20:36:48 +00:00
Albert Mingkun Yang
23fa0dcff0 8272905: Consolidate discovered lists processing
Reviewed-by: tschatzl, kbarrett
2021-09-03 16:53:53 +00:00
Vicente Romero
ff4018bc86 8268148: unchecked warnings handle ? and ? extends Object differently
Reviewed-by: jlahoda
2021-09-03 15:20:23 +00:00
Vicente Romero
8c37909274 8273234: extended 'for' with expression of type tvar causes the compiler to crash
Reviewed-by: jlahoda
2021-09-03 13:11:27 +00:00
Vladimir Ivanov
28ba78e647 8244675: assert(IncrementalInline || (_late_inlines.length() == 0 && !has_mh_late_inlines()))
Reviewed-by: dlong
2021-09-03 12:05:00 +00:00
Guoxiong Li
d05494f98b 8266239: Some duplicated javac command-line options have repeated effect
Reviewed-by: vromero
2021-09-03 09:33:17 +00:00
Jan Lahoda
93eec9a103 8272776: NullPointerException not reported
Reviewed-by: vromero
2021-09-03 09:31:54 +00:00
Jan Lahoda
7b023a3f60 8273257: jshell doesn't compile a sealed hierarchy with a sealed interface and a non-sealed leaf
Reviewed-by: vromero
2021-09-03 09:30:56 +00:00
Jan Lahoda
f17ee0c5c7 8273263: Incorrect recovery attribution of record component type when j.l.Record is unavailable
Reviewed-by: vromero
2021-09-03 09:29:45 +00:00
Xiaowei Lu
fa9c8657df 8273112: -Xloggc:<filename> should override -verbose:gc
Reviewed-by: iklam, dholmes
2021-09-03 05:29:02 +00:00
Ian Graves
dd871819a0 8214761: Bug in parallel Kahan summation implementation
Reviewed-by: darcy
2021-09-03 00:50:11 +00:00
Sergey Bylokhov
7fff22afe7 8272805: Avoid looking up standard charsets
Reviewed-by: weijun, naoto, dfuchs, azvegint, erikj
2021-09-02 22:56:20 +00:00
Patricio Chilano Mateo
92b05fe0f4 8273251: Call check_possible_safepoint() from SafepointMechanism::process_if_requested()
Reviewed-by: coleenp, dholmes
2021-09-02 21:22:47 +00:00
Jamil Nimeh
29e0f1386d 8272385: Enforce ECPrivateKey d value to be in the range [1, n-1] for SunEC provider
Reviewed-by: ascarpino, weijun
2021-09-02 17:54:08 +00:00
Lance Andersen
aaa6f696b0 8273250: Address javadoc issues in Deflater::setDictionationary
Reviewed-by: rriggs, naoto, iris, bpb
2021-09-02 16:06:55 +00:00
Aleksey Shipilev
5ee5dd9b18 8272914: Create hotspot:tier2 and hotspot:tier3 test groups
Reviewed-by: dholmes, coleenp, iignatyev
2021-09-02 15:43:21 +00:00
Thomas Schatzl
5245c1cf02 8273147: Update and restructure TestGCLogMessages log message list
Reviewed-by: iwalulya, ayang
2021-09-02 11:57:55 +00:00
Vladimir Ivanov
632a7e0885 8273165: GraphKit::combine_exception_states fails with "matching stack sizes" assert
Reviewed-by: thartmann, kvn
2021-09-02 11:46:19 +00:00
Matthias Baesken
c2e015c3c1 8273229: Update OS detection code to recognize Windows Server 2022
Reviewed-by: alanb, dholmes
2021-09-02 11:22:49 +00:00
Aleksei Efimov
0c1b16b75a 8273243: Fix indentations in java.net.InetAddress methods
Reviewed-by: dfuchs, bpb
2021-09-02 10:36:08 +00:00
Sergey Tsypanov
152e66923d 8273140: Replace usages of Enum.class.getEnumConstants() with Enum.values() where possible
Reviewed-by: tschatzl
2021-09-02 08:10:40 +00:00
Aleksey Shipilev
857a930bde 8263375: Support stack watermarks in Zero VM
Reviewed-by: eosterlund
2021-09-02 08:00:45 +00:00
Aleksey Shipilev
6cfe314262 8272970: Parallelize runtime/InvocationTests/
Reviewed-by: dholmes, iignatyev
2021-09-02 07:56:56 +00:00
Jie Fu
a9a83b248e 8273256: runtime/cds/appcds/TestEpsilonGCWithCDS.java fails due to Unrecognized VM option 'ObjectAlignmentInBytes=64' on x86_32
Reviewed-by: dholmes, iklam
2021-09-02 04:10:46 +00:00
Valerie Peng
1a5a2b6b15 8271745: Correct block size for KW,KWP mode and use fixed IV for KWP mode for SunJCE
Reviewed-by: xuelei, mullan
2021-09-01 22:17:49 +00:00
Joe Darcy
2f01a6f8b6 8273157: Add convenience methods to Messager
Reviewed-by: jjg
2021-09-01 20:28:05 +00:00
Coleen Phillimore
9689f61520 8272788: Nonleaf ranked locks should not be safepoint_check_never
Reviewed-by: eosterlund, pchilanomate
2021-09-01 18:39:10 +00:00
Daniel D. Daugherty
4ee0dacecd 8273248: ProblemList java/lang/instrument/BootClassPath/BootClassPathTest.sh on all configs
Reviewed-by: naoto
2021-09-01 17:45:39 +00:00
Ioi Lam
655ea6d42a 8270489: Support archived heap objects in EpsilonGC
Reviewed-by: shade, ccheung
2021-09-01 16:50:11 +00:00
Coleen Phillimore
dacd197897 8273217: Make ParHeapInspectTask _safepoint_check_never
Reviewed-by: dholmes, pchilanomate
2021-09-01 16:48:06 +00:00
Yi Yang
02822e1398 8272377: assert preconditions that are ensured when created in add_final_edges
Reviewed-by: thartmann, kvn
2021-09-01 10:41:03 +00:00
Fairoz Matte
a58cf16509 8272563: assert(is_double_stack() && !is_virtual()) failed: type check
Reviewed-by: thartmann, iveresov
2021-09-01 10:12:25 +00:00
Matthias Baesken
0e14bf70cf 8273176: handle latest VS2019 in abstract_vm_version
Reviewed-by: kevinw, dholmes
2021-09-01 07:59:10 +00:00
Jie Fu
f1c5e26e48 8273206: jdk/jfr/event/gc/collection/TestG1ParallelPhases.java fails after JDK-8159979
Reviewed-by: dholmes, ayang
2021-09-01 07:55:20 +00:00
Jan Lahoda
e600fe1a1a 8272618: Unnecessary Attr.visitIdent.noOuterThisPath
Reviewed-by: vromero
2021-09-01 06:06:17 +00:00
David Holmes
2fce7cb4d2 8272963: Update the java manpage markdown source
Reviewed-by: ysuenaga
2021-08-31 23:51:10 +00:00
Alex Menkov
18a731a3e4 8269770: nsk tests should start IOPipe channel before launch debuggee - Debugee.prepareDebugee
Reviewed-by: sspitsyn, kevinw
2021-08-31 22:43:12 +00:00
Daniel D. Daugherty
9c392d008a 8273197: ProblemList 2 jtools tests due to JDK-8273187
8273198: ProblemList java/lang/instrument/BootClassPath/BootClassPathTest.sh due to JDK-8273188

Reviewed-by: naoto
2021-08-31 20:12:19 +00:00
Weijun Wang
3d657eb0a6 8262186: Call X509KeyManager.chooseClientAlias once for all key types
Reviewed-by: xuelei
2021-08-31 20:07:02 +00:00
Thomas Schatzl
c1e0aac846 8273186: Remove leftover comment about sparse remembered set in G1 HeapRegionRemSet
Reviewed-by: ayang
2021-08-31 19:46:55 +00:00
bobpengxie
683e30db79 8273169: java/util/regex/NegativeArraySize.java failed after JDK-8271302
Reviewed-by: jiefu, serb
2021-08-31 17:31:03 +00:00
Ioi Lam
1996f649a3 8273092: Sort classlist in JDK image
Reviewed-by: redestad, ihse, dfuchs
2021-08-31 16:33:02 +00:00
Thomas Schatzl
ba3587e524 8273144: Remove unused top level "Sample Collection Set Candidates" logging
Reviewed-by: iwalulya, ayang
2021-08-31 15:45:56 +00:00
Vicente Romero
75d987a0dd 8262095: NPE in Flow$FlowAnalyzer.visitApply: Cannot invoke getThrownTypes because tree.meth.type is null
Co-authored-by: Jan Lahoda <jlahoda@openjdk.org>
Co-authored-by: Vicente Romero <vromero@openjdk.org>
Reviewed-by: jlahoda
2021-08-31 15:40:17 +00:00
Brian Burkhalter
e551852801 8271225: Add floorDivExact() method to java.lang.[Strict]Math
Reviewed-by: darcy
2021-08-31 14:42:14 +00:00
Ivan Walulya
e67125512f 8237567: Refactor G1-specific code in shared VM_CollectForMetadataAllocation
Reviewed-by: ayang, tschatzl
2021-08-31 13:32:31 +00:00
Albert Mingkun Yang
9bc7cc5651 8273033: SerialGC: remove obsolete comments
Reviewed-by: sjohanss, tschatzl
2021-08-31 12:51:27 +00:00
Ivan Walulya
841e3943c4 8159979: During initial mark, preparing all regions for marking may take a significant amount of time
Reviewed-by: tschatzl, ayang
2021-08-31 12:30:14 +00:00
Claes Redestad
98fa53357a 8273100: Improve AbstractStringBuilder.append(String) when using CompactStrings
Reviewed-by: rriggs, alanb
2021-08-31 11:32:33 +00:00
Yumin Qi
9732fbe428 8273153: Consolidate file_exists into os:file_exists
Reviewed-by: iklam, ccheung
2021-08-31 00:24:05 +00:00
Vicente Romero
0609421d4b 8272347: ObjectMethods::bootstrap should specify NPE if any argument except lookup is null
Reviewed-by: mchung, chegar
2021-08-30 21:16:46 +00:00
Naoto Sato
7fc8540907 8260265: UTF-8 by Default
Reviewed-by: alanb, rriggs
2021-08-30 21:13:59 +00:00
Ioi Lam
32048536e9 8272343: Remove MetaspaceClosure::FLAG_MASK
Reviewed-by: ccheung, minqi
2021-08-30 21:06:26 +00:00
Ian Graves
fecefb8541 8271302: Regex Test Refresh
Reviewed-by: bchristi, smarks
2021-08-30 17:37:29 +00:00
Fernando Guallini
f18c0fac11 8271560: sun/security/ssl/DHKeyExchange/LegacyDHEKeyExchange.java still fails due to "An established connection was aborted by the software in your host machine"
Reviewed-by: xuelei, rhalade
2021-08-30 17:28:49 +00:00
Sandhya Viswanathan
5aaa20f898 8272861: Add a micro benchmark for vector api
Reviewed-by: psandoz
2021-08-30 16:48:28 +00:00
Thomas Schatzl
7a01ba6528 8272093: Extract evacuation failure injection from G1CollectedHeap
Reviewed-by: ayang, sjohanss
2021-08-30 15:54:47 +00:00
Coleen Phillimore
98b9d98032 8272797: Mutex with rank safepoint_check_never imply allow_vm_block
Reviewed-by: dholmes, pchilanomate
2021-08-30 14:47:24 +00:00
Stefan Johansson
f11e099a14 8272651: G1 heap region info print order changed by JDK-8269914
Reviewed-by: tschatzl, iwalulya, ayang
2021-08-30 14:37:03 +00:00
Magnus Ihse Bursie
fbffa54efe 8270438: "Cores to use" output in configure is misleading
Reviewed-by: erikj
2021-08-30 13:41:54 +00:00
Andrey Turbanov
5185dbde67 8273098: Unnecessary Vector usage in java.naming
Reviewed-by: aefimov, dfuchs
2021-08-30 13:12:42 +00:00
Lutz Schmidt
276b07b36a 8271490: [ppc] [s390]: Crash in JavaThread::pd_get_top_frame_for_profiling
Reviewed-by: stuefe, mbaesken
2021-08-30 12:31:08 +00:00
Thomas Schatzl
bb7aa1c6a4 8272161: Make evacuation failure data structures local to collection
Reviewed-by: iwalulya, sjohanss
2021-08-30 12:08:12 +00:00
Magnus Ihse Bursie
9ede41bf89 8229031: Exporting CLASSPATH from shell can result in build failures
Reviewed-by: erikj
2021-08-30 11:37:47 +00:00
Michael McMahon
16e83058ca 8273059: Redundant Math.min call in Http2ClientImpl#getConnectionWindowSize
Reviewed-by: dfuchs
2021-08-30 08:57:17 +00:00
Aleksey Shipilev
f55d5ab517 8272838: Move CriticalJNI tests out of tier1
Reviewed-by: dholmes
2021-08-30 06:41:40 +00:00
Guoxiong Li
a9188f237e 8268894: forged ASTs can provoke an AIOOBE at com.sun.tools.javac.jvm.ClassWriter::writePosition
Reviewed-by: vromero
2021-08-29 07:26:08 +00:00
Bradford Wetmore
1fb798d320 8272915: (doc) package-info typo in extLink
Reviewed-by: xuelei
2021-08-27 23:01:51 +00:00
Raffaello Giulietti
51167846cb 8273091: Doc of [Strict]Math.floorDiv(long,int) erroneously documents int in @return tag
Reviewed-by: darcy, bpb
2021-08-27 22:48:52 +00:00
Jim Laskey
e66c8afb59 8272866: java.util.random package summary contains incorrect mixing function in table
Reviewed-by: rriggs
2021-08-27 18:45:52 +00:00
Brian Burkhalter
d1aeca117c 8272541: Incorrect overflow test in Toom-Cook branch of BigInteger multiplication
Reviewed-by: darcy
2021-08-27 16:09:28 +00:00
Brian Burkhalter
dfeb4132e4 8272964: java/nio/file/Files/InterruptCopy.java fails with java.lang.RuntimeException: Copy was not interrupted
Reviewed-by: dfuchs
2021-08-27 16:08:29 +00:00
Magnus Ihse Bursie
a033aa5a3d 8273072: Avoid using += in configure
Reviewed-by: dholmes, jiefu
2021-08-27 13:53:33 +00:00
Coleen Phillimore
b92214a8d0 8272480: Remove Mutex::access rank
Reviewed-by: dholmes, eosterlund
2021-08-27 13:51:39 +00:00
Magnus Ihse Bursie
596b075591 8258465: Headless build fails due to missing X11 headers on linux
Reviewed-by: shade
2021-08-27 13:13:36 +00:00
Kim Barrett
a49a0c5866 8273062: Generation::refs_discovery_is_xxx functions are unused
Reviewed-by: ayang
2021-08-27 10:32:46 +00:00
Aleksey Shipilev
ebd62bc043 8272846: Move some runtime/Metaspace/elastic/ tests out of tier1
Reviewed-by: mseledtsov, stuefe
2021-08-27 09:35:26 +00:00
Lin Zang
46684a4efa 8262386: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java timed out
Reviewed-by: cjplummer, sspitsyn
2021-08-27 09:02:23 +00:00
Tobias Hartmann
c925c7f3e8 8273020: LibraryCallKit::sharpen_unsafe_type does not handle narrow oop array
Reviewed-by: chagedorn
2021-08-27 05:38:24 +00:00
Bradford Wetmore
76baace2f0 8273045: Fix misc javadoc bugs in the java.security and javax.net.ssl code
Reviewed-by: xuelei
2021-08-27 05:11:25 +00:00
Yasumasa Suenaga
b16a04ebf7 8271186: Add UL option to replace newline char
Reviewed-by: iklam, dholmes
2021-08-27 05:06:52 +00:00
Andrey Turbanov
d732c3091f 8272863: Replace usages of Collections.sort with List.sort call in public java modules
Reviewed-by: serb, dfuchs, naoto
2021-08-26 20:47:02 +00:00
Naoto Sato
fe7d70886c 8272473: Parsing epoch seconds at a DST transition with a non-UTC parser is wrong
Reviewed-by: joehw, rriggs, iris, lancea, scolebourne
2021-08-26 16:21:23 +00:00
Ivan Walulya
845e1cea8d 8272983: G1 Add marking details to eager reclaim logging
Reviewed-by: tschatzl, ayang
2021-08-26 13:41:46 +00:00
Alexey Ushakov
c420530549 8272481: [macos] javax/swing/JFrame/NSTexturedJFrame/NSTexturedJFrame.java fails
Reviewed-by: serb, jdv
2021-08-26 12:56:03 +00:00
Prasanta Sadhukhan
e43a907f20 8271315: Redo: Nimbus JTree renderer properties persist across L&F changes
Reviewed-by: aivanov
2021-08-26 12:04:10 +00:00
Albert Mingkun Yang
11c9fd8298 8272975: ParallelGC: add documentation to heap memory layout
Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: tschatzl, kbarrett
2021-08-26 10:06:38 +00:00
Magnus Ihse Bursie
b94fd32f08 8272859: Javadoc external links should only have feature version number in URL
Reviewed-by: iris
2021-08-26 10:00:21 +00:00
Tobias Hartmann
9166ba37b6 8272973: Incorrect compile command used by TestIllegalArrayCopyBeforeInfiniteLoop
Reviewed-by: chagedorn, jiefu, neliasso
2021-08-26 08:34:46 +00:00
Alexey Ushakov
49b2789a49 8262751: RenderPipelineState assertion error in J2DDemo
Reviewed-by: jdv
2021-08-26 07:28:26 +00:00
Aleksey Shipilev
a3308af060 8272836: Limit run time for java/lang/invoke/LFCaching tests
Reviewed-by: redestad, iignatyev
2021-08-26 06:51:19 +00:00
David Holmes
c4c76e2f34 8272811: Document the effects of building with _GNU_SOURCE in os_posix.hpp
Reviewed-by: iklam
2021-08-26 02:24:36 +00:00
Igor Veresov
673ce7efa5 8272873: C2: Inlining should not depend on absolute call site counts
Reviewed-by: kvn, vlivanov, dlong
2021-08-26 00:17:15 +00:00
Zhengyu Gu
7212561dd1 8267188: gc/stringdedup/TestStringDeduplicationInterned.java fails with Shenandoah
Reviewed-by: rkennke, shade
2021-08-25 20:16:25 +00:00
Ivan Walulya
e36cbd8e05 8242847: G1 should not clear mark bitmaps with no marks
Reviewed-by: tschatzl, sjohanss
2021-08-25 14:33:34 +00:00
Coleen Phillimore
2ef6871118 8272447: Remove 'native' ranked Mutex
Reviewed-by: stuefe, pchilanomate
2021-08-25 13:25:34 +00:00
Ivan Walulya
63e062fb78 8236176: Parallel GC SplitInfo comment should be updated for shadow regions
Reviewed-by: tschatzl, ayang
2021-08-25 10:18:54 +00:00
Aleksey Shipilev
c5a271259d 8272850: Drop zapping values in the Zap* option descriptions
Reviewed-by: stefank, kbarrett
2021-08-25 08:05:47 +00:00
Albert Mingkun Yang
1e3e333f73 8272884: Make VoidClosure::do_void pure virtual
Reviewed-by: kbarrett, dholmes
2021-08-25 07:33:18 +00:00
casparcwang
0f428ca533 8272570: C2: crash in PhaseCFG::global_code_motion
Co-authored-by: Hui Shi <hshi@openjdk.org>
Reviewed-by: thartmann, rbackman
2021-08-25 01:16:48 +00:00
Andy Herrick
b17b821a57 8272639: jpackaged applications using microphone on mac
Reviewed-by: almatvee, serb
2021-08-24 20:59:43 +00:00
Smita Kamath
0e7288ffbf 8267125: AES Galois CounterMode (GCM) interleaved implementation using AVX512 + VAES instructions
Co-authored-by: Smita Kamath <svkamath@openjdk.org>
Co-authored-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
Co-authored-by: Anthony Scarpino <ascarpino@openjdk.org>
Reviewed-by: kvn, valeriep
2021-08-24 18:48:31 +00:00
Igor Ignatyev
6ace805f8c 8272856: DoubleFlagWithIntegerValue uses G1GC-only flag
Reviewed-by: dholmes, kbarrett
2021-08-24 18:43:54 +00:00
Calvin Cheung
c547ead493 8272916: Copyright year was modified unintentionally in jlink.properties and ImagePluginStack.java
Reviewed-by: bpb
2021-08-24 18:09:56 +00:00
Brian Burkhalter
aaedac635a 8265261: java/nio/file/Files/InterruptCopy.java fails with java.lang.RuntimeException: Copy was not interrupted
Reviewed-by: dfuchs
2021-08-24 17:04:35 +00:00
Jonathan Gibbons
d34f17c697 8270195: Add missing links between methods of JavaFX properties
Reviewed-by: kcr, hannesw
2021-08-24 16:10:25 +00:00
Calvin Cheung
f608e81ad8 8264322: Generate CDS archive when creating custom JDK image
Reviewed-by: mchung, alanb
2021-08-24 15:31:20 +00:00
Phil Race
f681d6544a 8272806: [macOS] "Apple AWT Internal Exception" when input method is changed
Reviewed-by: serb, dmarkov, azvegint
2021-08-24 15:23:15 +00:00
Albert Mingkun Yang
6e0328f582 8272725: G1: add documentation on needs_remset_update_t vs bool
Reviewed-by: tschatzl, iwalulya
2021-08-24 15:21:14 +00:00
Sergei Ustimenko
2309b7d8fc 8253178: Replace LinkedList Impl in net.http.FilterFactory
Reviewed-by: dfuchs
2021-08-24 14:49:56 +00:00
Jonathan Gibbons
94f5e441f6 8271258: @param with non-ascii variable names produces incorrect results
Reviewed-by: hannesw
2021-08-24 14:41:24 +00:00
Patricio Chilano Mateo
7454306920 8272526: Cleanup ThreadStateTransition class
Reviewed-by: dholmes, rehn, coleenp
2021-08-24 14:09:59 +00:00
Kim Barrett
0597cde87d 8221360: Eliminate Shared_DirtyCardQ_lock
Reviewed-by: tschatzl, iwalulya
2021-08-24 13:17:37 +00:00
Albert Mingkun Yang
928b9724c9 8271930: Simplify end_card calculation in G1BlockOffsetTablePart::verify
Reviewed-by: tschatzl, iwalulya
2021-08-24 12:14:07 +00:00
Aleksey Shipilev
7f80683cfe 8272783: Epsilon: Refactor tests to improve performance
Reviewed-by: tschatzl
2021-08-24 10:08:18 +00:00
Prasanta Sadhukhan
22ef4f0653 5015261: NPE may be thrown if JDesktopIcon is set to null on a JInternalFrame
Reviewed-by: serb, prr, aivanov
2021-08-24 04:02:03 +00:00
Maxim Kartashev
9bc023220f 8269223: -Xcheck:jni WARNINGs working with fonts on Linux
Reviewed-by: prr, serb
2021-08-23 20:28:17 +00:00
Vladimir Ivanov
2ff4c01d42 8271600: C2: CheckCastPP which should closely follow Allocate is sunk of a loop
Reviewed-by: chagedorn, roland
2021-08-23 20:23:41 +00:00
Tom Rodriguez
ad92033fcc 8272736: [JVMCI] Add API for reading and writing JVMCI thread locals
Reviewed-by: kvn, dnsimon
2021-08-23 18:43:34 +00:00
Igor Ignatyev
709b5910c3 8272553: several hotspot runtime/CommandLine tests don't check exit code
Reviewed-by: dholmes
2021-08-23 18:03:13 +00:00
Jonathan Gibbons
1884072474 8265253: javac -Xdoclint:all gives "no comment" warning for code that can't be commented
Reviewed-by: hannesw
2021-08-23 17:31:29 +00:00
Albert Mingkun Yang
594e5161b4 8272778: Consolidate is_instance and is_instance_inlined in java_lang_String
Reviewed-by: coleenp, redestad
2021-08-23 14:00:31 +00:00
Ivan Walulya
d542745dbe 8267894: Skip work for empty regions in G1 Full GC
Reviewed-by: sjohanss, tschatzl
2021-08-23 12:58:48 +00:00
Tongbao Zhang
741f58c18c 8272417: ZGC: fastdebug build crashes when printing ClassLoaderData
Reviewed-by: stefank, pliden
2021-08-23 11:54:52 +00:00
Matthias Baesken
b7f75c0a73 8271142: package help is not displayed for missing X11/extensions/Xrandr.h
Reviewed-by: clanger
2021-08-23 06:39:46 +00:00
Denghui Dong
e8a289e77d 8272609: Add string deduplication support to SerialGC
Reviewed-by: kbarrett, iwalulya
2021-08-23 06:12:01 +00:00
Alan Hayward
b690f29699 8269687: pauth_aarch64.hpp include name is incorrect
Reviewed-by: rbackman, ngasson
2021-08-23 01:41:27 +00:00
David Holmes
f77a1a156f 8272472: StackGuardPages test doesn't build with glibc 2.34
Reviewed-by: shade, stuefe, jiefu
2021-08-22 01:13:27 +00:00
Sean Coffey
04a806ec86 8270344: Session resumption errors
Reviewed-by: xuelei
2021-08-20 20:10:42 +00:00
lawrence.andrews
d85560ed0f 8267161: Write automated test case for JDK-4479161
Reviewed-by: serb, aivanov
2021-08-20 17:45:46 +00:00
Jie Fu
1ea437a4b8 8272720: Fix the implementation of loop unrolling heuristic with LoopPercentProfileLimit
Reviewed-by: thartmann, rbackman
2021-08-20 12:43:29 +00:00
Vladimir Ivanov
86add21a85 8223923: C2: Missing interference with mismatched unsafe accesses
Reviewed-by: thartmann
2021-08-20 12:41:20 +00:00
Zhengyu Gu
c701f6e538 8272739: Misformatted error message in EventHandlerCreator
Reviewed-by: mgronlun
2021-08-20 12:23:10 +00:00
Ivan Walulya
fb1dfc6f49 8267185: Add string deduplication support to ParallelGC
Reviewed-by: kbarrett, ayang
2021-08-20 11:30:00 +00:00
Hamlin Li
d874e9616f 8271579: G1: Move copy before CAS in do_copy_to_survivor_space
8272070: G1: Simplify age calculation after JDK-8271579

Co-authored-by: shoubing ma <mashoubing1@huawei.com>
Reviewed-by: tschatzl, ayang
2021-08-20 11:26:11 +00:00
Roman Kennke
92bde6738a 8271946: Cleanup leftovers in Space and subclasses
Reviewed-by: stefank, tschatzl
2021-08-20 10:12:01 +00:00
Daniel Fuchs
db9834ff82 8258951: java/net/httpclient/HandshakeFailureTest.java failed with "RuntimeException: Not found expected SSLHandshakeException in java.io.IOException"
Reviewed-by: chegar
2021-08-20 09:05:00 +00:00
Aleksey Shipilev
a81e5e9353 8272654: Mark word accesses should not use Access API
Reviewed-by: stefank, rkennke, eosterlund
2021-08-20 07:34:41 +00:00
Thejasvi Voniadka
4bd37c3153 8272708: [Test]: Cleanup: test/jdk/security/infra/java/security/cert/CertPathValidator/certification/BuypassCA.java no longer needs ocspEnabled
Reviewed-by: rhalade
2021-08-20 03:15:04 +00:00
Phil Race
ddcd851c43 8272602: [macos] not all KEY_PRESSED events sent when control modifier is used
Reviewed-by: kizune
2021-08-20 00:08:42 +00:00
Jie Fu
d007be0952 8272700: [macos] Build failure with Xcode 13.0 after JDK-8264848
Reviewed-by: dholmes
2021-08-19 23:11:31 +00:00
Roman Kennke
f4be211ae2 8270041: Consolidate oopDesc::cas_forward_to() and oopDesc::forward_to_atomic()
Reviewed-by: stefank, kbarrett
2021-08-19 19:54:19 +00:00
Roman Kennke
b40e8f0f9e 8271951: Consolidate preserved marks overflow stack in SerialGC
Reviewed-by: tschatzl, kbarrett
2021-08-19 19:51:34 +00:00
Roman Kennke
7eccbd4fde 8266519: Cleanup resolve() leftovers from BarrierSet et al
Reviewed-by: kbarrett, stefank
2021-08-19 19:50:25 +00:00
Weijun Wang
9569159d25 8272674: Logging missing keytab file in Krb5LoginModule
Reviewed-by: coffeys
2021-08-19 19:02:22 +00:00
Andrey Turbanov
51c1b9a687 8272616: Strange code in java.text.DecimalFormat#applyPattern
Reviewed-by: bpb, naoto, iris
2021-08-19 15:57:18 +00:00
Roman Kennke
03b5e99d99 8272165: Consolidate mark_must_be_preserved() variants
Reviewed-by: tschatzl
2021-08-19 10:16:55 +00:00
Albert Mingkun Yang
ab41812951 8272576: G1: Use more accurate integer type for collection set length
Reviewed-by: iwalulya, sjohanss
2021-08-19 09:56:32 +00:00
Albert Mingkun Yang
82b2f21d17 8272579: G1: remove unnecesary null check for G1ParScanThreadStateSet::_states slots
Reviewed-by: iwalulya, kbarrett, sjohanss
2021-08-19 09:55:51 +00:00
Julia Boes
1c80f078f6 8272334: com.sun.net.httpserver.HttpExchange: Improve API doc of getRequestHeaders
Reviewed-by: dfuchs, michaelm, chegar
2021-08-19 09:09:36 +00:00
Jonathan Gibbons
6d3d47957e 8272667: substandard error messages from the docs build
Reviewed-by: darcy, iris
2021-08-18 23:40:44 +00:00
Ralf Schmelter
73da66ffb7 8272318: Improve performance of HeapDumpAllTest
Reviewed-by: lucy, sspitsyn
2021-08-18 18:30:26 +00:00
Vladimir Ivanov
96107e31df 8272573: Redundant unique_concrete_method_4 dependencies
Reviewed-by: kvn, thartmann
2021-08-18 16:45:29 +00:00
Harold Seigel
4d6593ce02 8272124: Cgroup v1 initialization causes NullPointerException when cgroup path contains colon
Reviewed-by: mseledtsov, sgehwolf
2021-08-18 14:24:58 +00:00
Claes Redestad
30b0f820ce 8272626: Avoid C-style array declarations in java.*
Reviewed-by: dfuchs, alanb
2021-08-18 10:47:03 +00:00
Vladimir Ivanov
e8f1219d6f 8271276: C2: Wrong JVM state used for receiver null check
Reviewed-by: kvn, thartmann
2021-08-18 10:31:24 +00:00
Christian Hagedorn
79a06df811 8272567: [IR Framework] Make AbstractInfo.getRandom() static
Reviewed-by: thartmann
2021-08-18 06:39:22 +00:00
Alexander Zuev
481c1f0549 8269951: [macos] Focus not painted in JButton when setBorderPainted(false) is invoked
Reviewed-by: serb, psadhukhan
2021-08-18 05:48:26 +00:00
Tobias Hartmann
5189047d09 8272558: IR Test Framework README misses some flags
Reviewed-by: chagedorn
2021-08-18 04:47:58 +00:00
Mikhailo Seledtsov
ec63957f9d 8272398: Update DockerTestUtils.buildJdkDockerImage()
Reviewed-by: iignatyev, hseigel
2021-08-17 23:22:44 +00:00
Vicente Romero
14623cde3a 8270835: regression after JDK-8261006
Reviewed-by: jlahoda
2021-08-17 20:47:36 +00:00
Igor Ignatyev
fe72197102 8272551: mark hotspot runtime/modules tests which ignore external VM flags
Reviewed-by: mseledtsov, jiefu
2021-08-17 19:37:45 +00:00
Igor Ignatyev
05d64da7f3 8272291: mark hotspot runtime/logging tests which ignore external VM flags
Reviewed-by: mseledtsov, dholmes
2021-08-17 19:36:44 +00:00
Brian Burkhalter
a68b5b9c1d 8272369: java/io/File/GetXSpace.java failed with "RuntimeException: java.nio.file.NoSuchFileException: /run/user/0"
Reviewed-by: alanb
2021-08-17 17:07:03 +00:00
Abdul Kolarkunnu
a199ebc017 8272581: sun/security/pkcs11/Provider/MultipleLogins.sh fails after JDK-8266182
Reviewed-by: weijun
2021-08-17 16:54:32 +00:00
Rajan Halade
1cbf41a87b 8225083: Remove Google certificate that is expiring in December 2021
Reviewed-by: xuelei, mullan
2021-08-17 16:01:42 +00:00
Jim Laskey
cf64c3e7e2 8272326: java/util/Random/RandomTestMoments.java had two Gaussian fails
Reviewed-by: rriggs, bpb
2021-08-17 15:53:41 +00:00
Albert Mingkun Yang
2ed7b709a1 8272521: Remove unused PSPromotionManager::_claimed_stack_breadth
Reviewed-by: kbarrett, iwalulya
2021-08-17 12:42:55 +00:00
Albert Mingkun Yang
2aaf795270 8272520: Inline GenericTaskQueue::initialize() to the constructor
Reviewed-by: kbarrett, iwalulya
2021-08-17 12:42:02 +00:00
Abdul Kolarkunnu
ed57cf1cf3 8266182: Automate manual steps listed in the test jdk/sun/security/pkcs12/ParamsTest.java
Reviewed-by: hchao, ssahoo, xuelei, weijun
2021-08-17 12:12:22 +00:00
Hannes Wallnöfer
0e3fde6c3c 8264274: Block tags in overview.html are ignored
Reviewed-by: jjg
2021-08-17 08:29:49 +00:00
lawrence.andrews
c5c84b8fdc 8270312: Error: Not a test or directory containing tests: java/awt/print/PrinterJob/XparColor.java
Reviewed-by: psadhukhan, jdv
2021-08-17 07:44:35 +00:00
Stefan Karlsson
df1427b72b 8272446: C1: Raw version of UnsafeGet generates load barriers
Reviewed-by: eosterlund, iveresov
2021-08-17 06:36:09 +00:00
Igor Ignatyev
989f39f810 8272552: mark hotspot runtime/cds tests which ignore external VM flags
Reviewed-by: mseledtsov, jiefu, dholmes, iklam
2021-08-17 03:45:26 +00:00
Zhengyu Gu
ee8bf10d32 8272327: Shenandoah: Avoid enqueuing duplicate string candidates
Reviewed-by: rkennke
2021-08-17 00:35:18 +00:00
Jonathan Gibbons
3fb19279da 8271227: Missing {@code } in com.sun.source.*
Reviewed-by: iris
2021-08-16 22:54:54 +00:00
Rajat Mahajan
a5ad7720d2 8272342: [TEST_BUG] java/awt/print/PrinterJob/PageDialogMarginTest.java catches all exceptions
Reviewed-by: aivanov, pbansal
2021-08-16 22:24:00 +00:00
Jonathan Gibbons
ae45592d33 8272374: doclint should report missing "body" comments
Reviewed-by: kcr, hannesw
2021-08-16 20:48:25 +00:00
Igor Ignatyev
b2c272d4e2 8272305: several hotspot runtime/modules don't check exit codes
Reviewed-by: dholmes, mseledtsov
2021-08-16 16:56:15 +00:00
Brian Burkhalter
82688258f6 8272297: FileInputStream should override transferTo() for better performance
Reviewed-by: alanb
2021-08-16 15:53:33 +00:00
Christian Hagedorn
3677734584 8271471: [IR Framework] Rare occurrence of "<!-- safepoint while printing -->" in PrintIdeal/PrintOptoAssembly can let tests fail
Reviewed-by: kvn, thartmann
2021-08-16 14:51:11 +00:00
Ivan Walulya
0a03481a65 8272231: G1: Refactor G1CardSet::get_card_set to return G1CardSetHashTableValue*
Reviewed-by: tschatzl, kbarrett
2021-08-16 13:09:48 +00:00
Ivan Walulya
83d0e128e3 8267833: Improve G1CardSetInlinePtr::add()
Reviewed-by: tschatzl, kbarrett
2021-08-16 13:08:36 +00:00
Albert Mingkun Yang
69cc588fce 8272235: G1: update outdated code root fixup
Reviewed-by: tschatzl, kbarrett
2021-08-16 09:40:56 +00:00
Hannes Wallnöfer
5db36cedc9 8272158: SoftReference related bugs under memory pressure
Reviewed-by: jjg
2021-08-16 07:46:29 +00:00
Albert Mingkun Yang
7a5b37b8ca 8272439: G1: add documentation to G1CardSetInlinePtr
Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: tschatzl, kbarrett
2021-08-16 07:35:43 +00:00
Albert Mingkun Yang
0209d9f382 8272461: G1: remove empty declaration of cleanup_after_scan_heap_roots
Reviewed-by: kbarrett
2021-08-16 07:34:32 +00:00
Ioi Lam
36e2ddad4d 8272348: Update CDS tests in anticipation of JDK-8270489
Reviewed-by: ccheung, minqi
2021-08-16 03:22:52 +00:00
Yi Yang
3f38a50c52 8271203: C2: assert(iff->Opcode() == Op_If || iff->Opcode() == Op_CountedLoopEnd || iff->Opcode() == Op_RangeCheck) failed: Check this code when new subtype is added
Reviewed-by: chagedorn, roland, thartmann
2021-08-16 02:30:57 +00:00
Phil Race
6a5241c3ad 8272491: Problem list javax/swing/JFrame/NSTexturedJFrame/NSTexturedJFrame.java on macos
Reviewed-by: pbansal
2021-08-15 16:50:38 +00:00
Alexey Ushakov
17b9350023 8266079: Lanai: AlphaComposite shows differences on Metal compared to OpenGL
Reviewed-by: serb
2021-08-14 10:40:37 +00:00
Marcus G K Williams
87d2761f1b 8271883: Math CopySign optimization for x86
Reviewed-by: jbhateja, sviswanathan, kvn
2021-08-14 00:34:51 +00:00
Xue-Lei Andrew Fan
6b8b160e37 8272396: mismatching debug output streams
Reviewed-by: mullan
2021-08-13 21:33:22 +00:00
Phil Race
0af645aa4f 8205138: Remove Applet references from Font2DTest
Reviewed-by: serb, psadhukhan
2021-08-13 19:30:20 +00:00
Daniel D. Daugherty
bd7f9b4fb9 8272459: ProblemList compiler/codecache/TestStressCodeBuffers.java on aarch64
Reviewed-by: iignatyev
2021-08-13 16:57:12 +00:00
Lance Andersen
717792c3b7 8263940: NPE when creating default file system when default file system provider is packaged as JAR file on class path
Reviewed-by: naoto, bpb, iris, joehw
2021-08-13 16:11:04 +00:00
Thomas Stuefe
d06d0b9e9d 8272112: Arena code simplifications
Reviewed-by: kbarrett, coleenp
2021-08-13 06:38:08 +00:00
Prasanta Sadhukhan
0c4be76f7f 8058704: Nimbus does not honor JTextPane background color
6789980: JEditorPane background color not honored with Nimbus L&F

Reviewed-by: aivanov, serb
2021-08-13 05:12:59 +00:00
Jatin Bhateja
020aec5318 8271366: [REDO] JDK-8266054 VectorAPI rotate operation optimization
Reviewed-by: sviswanathan, psandoz
2021-08-13 04:33:53 +00:00
Hui Shi
4d4ba5c5b4 8272116: Update PerfDisableSharedMem with FLAG_SET_ERGO in PerfMemory::create_memory_region
Reviewed-by: dholmes
2021-08-13 01:00:49 +00:00
Lin Zang
09ab86b40c 8269909: getStack method in hprof.parser.Reader should use try-with-resource
Reviewed-by: dholmes, cjplummer, sspitsyn
2021-08-12 23:16:24 +00:00
Xue-Lei Andrew Fan
e4766ee0aa 8272391: Undeleted debug information
Reviewed-by: wetmore
2021-08-12 19:28:01 +00:00
Brian Burkhalter
428d51694f 8140241: (fc) Data transfer from FileChannel to itself causes hang in case of overlap
Reviewed-by: alanb
2021-08-12 15:27:09 +00:00
Kim Barrett
93cab7d07d 8272315: Improve assert_different_registers
Reviewed-by: adinn, vlivanov, thartmann
2021-08-12 14:29:32 +00:00
Harold Seigel
9980b413da 8272107: Removal of Unsafe::defineAnonymousClass left a dangling C++ class
Reviewed-by: coleenp, iklam, dholmes
2021-08-12 13:56:41 +00:00
Coleen Phillimore
464e874a5c 8048190: NoClassDefFoundError omits original ExceptionInInitializerError
Reviewed-by: dholmes, iklam
2021-08-12 13:45:36 +00:00
Xiaohong Gong
7e14c3cc11 8272310: AArch64: Add missing changes for shared vector helper methods in m4 files
Reviewed-by: jiefu
2021-08-12 11:07:04 +00:00
Sergey Tsypanov
b29fbad940 8267844: Replace Integer/Long.valueOf() with Integer/Long.parse*() where applicable
Reviewed-by: redestad
2021-08-12 10:03:52 +00:00
Severin Gehwolf
d38b31438d 8272332: --with-harfbuzz=system doesn't add -lharfbuzz after JDK-8255790
Reviewed-by: prr
2021-08-12 08:52:24 +00:00
Claes Redestad
a15b659278 8271732: Regression in StringBuilder.charAt bounds checking
Reviewed-by: alanb, naoto
2021-08-12 07:01:53 +00:00
Sergey Bylokhov
ec2fc384e5 8272120: Avoid looking for standard encodings in "java." modules
Reviewed-by: alanb, dfuchs, naoto
2021-08-12 05:46:00 +00:00
Igor Ignatyev
bd27bb9cbe 8272345: macos doesn't check os::set_boot_path() result
Reviewed-by: dholmes
2021-08-12 03:45:44 +00:00
Alexey Semenyuk
44f137ff9c 8271170: Add unit test for what jpackage app launcher puts in the environment
Reviewed-by: almatvee, herrick
2021-08-11 23:39:50 +00:00
Alexey Semenyuk
cd2dbe5f00 8272328: java.library.path is not set properly by Windows jpackage app launcher
Reviewed-by: herrick, almatvee
2021-08-11 20:54:58 +00:00
Igor Veresov
9faab400b8 8272330: C2: Cleanup profile counter scaling
Reviewed-by: kvn
2021-08-11 20:19:36 +00:00
Igor Ignatyev
75a06421e5 8272335: runtime/cds/appcds/MoveJDKTest.java doesn't check exit codes
Reviewed-by: iklam
2021-08-11 19:38:52 +00:00
Jonathan Gibbons
9ba8a12cfb 8269774: doclint reports missing javadoc comments for JavaFX properties if the docs are on the property method
Reviewed-by: kcr, hannesw
2021-08-11 18:04:29 +00:00
Jonathan Gibbons
ec8d3badc8 8271159: [REDO] JDK-8249634 doclint should report implicit constructor as missing javadoc comments
Reviewed-by: darcy
2021-08-11 18:03:40 +00:00
Ivan Walulya
619422764d 8272228: G1: G1CardSetInlinePtr Fix tautological assertion
Reviewed-by: ayang, tschatzl
2021-08-11 14:33:23 +00:00
Ivan Walulya
cd1751c34e 8271884: G1CH::_expand_heap_after_alloc_failure is no longer needed
Reviewed-by: kbarrett, tschatzl
2021-08-11 11:56:30 +00:00
Per Liden
3f723ca457 8271862: C2 intrinsic for Reference.refersTo() is often not used
Reviewed-by: kbarrett, mchung
2021-08-11 11:09:59 +00:00
Per Liden
abebbe2335 8267186: Add string deduplication support to ZGC
Reviewed-by: eosterlund, kbarrett, stefank
2021-08-11 11:07:12 +00:00
Albert Mingkun Yang
0d0f2d07f7 8272216: G1: replace G1ParScanThreadState::_dest with a constant
Reviewed-by: kbarrett, tschatzl
2021-08-11 10:19:46 +00:00
Jan Lahoda
3215dbc8b8 8271928: ErroneousTree with start position -1
Reviewed-by: jlaskey, vromero
2021-08-11 08:54:20 +00:00
Christoph Göttschkes
adba09b91d 8272146: Disable Fibonacci test on memory constrained systems
Reviewed-by: dholmes, mseledtsov, shade
2021-08-11 08:48:18 +00:00
Xiaowei Lu
846cc88f94 8272138: ZGC: Adopt relaxed ordering for self-healing
Co-authored-by: Hao Tang <albert.th@alibaba-inc.com>
Reviewed-by: eosterlund, pliden
2021-08-11 08:42:37 +00:00
Hui Shi
5350b9901c 8272131: PhaseMacroExpand::generate_slow_arraycopy crash when clone null CallProjections.fallthrough_ioproj
Reviewed-by: neliasso, xliu, thartmann
2021-08-11 02:00:19 +00:00
Sergey Bylokhov
148935279d 8271718: Crash when during color transformation the color profile is replaced
Reviewed-by: prr
2021-08-10 22:22:42 +00:00
Dean Long
2a9acc31b8 8272050: typo in MachSpillCopyNode::implementation after JDK-8131362
Reviewed-by: kvn, thartmann
2021-08-10 21:30:54 +00:00
Alex Menkov
b62e742045 8213714: AttachingConnector/attach/attach001 failed due to "bind failed: Address already in use"
Reviewed-by: sspitsyn, cjplummer
2021-08-10 19:13:18 +00:00
Raffaello Giulietti
66d1faa784 8271601: Math.floorMod(int, int) and Math.floorMod(long, long) differ in their logic
Reviewed-by: bpb
2021-08-10 17:16:17 +00:00
Joe Darcy
57ae9fbe77 8140442: Add getOutermostTypeElement to javax.lang.model utility class
Reviewed-by: jlahoda
2021-08-10 16:49:49 +00:00
Martin Balao
67869b491a 8270137: Kerberos Credential Retrieval from Cache not Working in Cross-Realm Setup
Reviewed-by: weijun
2021-08-10 16:28:10 +00:00
Andrey Turbanov
35b399aca8 8269130: Replace usages of Collection.toArray() with Collection.toArray(T[]) to avoid redundant array copying
Reviewed-by: mullan, serb
2021-08-10 13:27:59 +00:00
Harold Seigel
2b05fae155 8260262: Use common code in function unmap_shared() in perfMemory_posix.cpp
Reviewed-by: stuefe, coleenp
2021-08-10 12:17:08 +00:00
Albert Mingkun Yang
f2599ad867 8272196: Remove unused class ParStrongRootsScope
Reviewed-by: tschatzl, pliden
2021-08-10 10:12:06 +00:00
Alan Hayward
1f8813495e 8271869: AArch64: build errors with GCC11 in frame::saved_oop_result
Reviewed-by: ngasson, aph
2021-08-10 08:29:52 +00:00
Matthias Baesken
089e83bf1b 8266490: Extend the OSContainer API to support the pids controller of cgroups
Reviewed-by: sgehwolf, lucy
2021-08-10 07:40:21 +00:00
Tobias Hartmann
2384e12888 8270098: ZGC: ZBarrierSetC2::clone_at_expansion fails with "Guard against surprises" assert
Reviewed-by: neliasso, kvn
2021-08-10 05:37:55 +00:00
Tobias Hartmann
d53d94b14d 8271925: ZGC: Arraycopy stub passes invalid oop to load barrier
Reviewed-by: neliasso, kvn
2021-08-10 05:36:52 +00:00
Igor Ignatyev
3b899ef7ff 8272168: some hotspot runtime/logging tests don't check exit code
Reviewed-by: jiefu
2021-08-10 05:11:09 +00:00
Hamlin Li
abdc1074dc 8270454: G1: Simplify region index comparison
Reviewed-by: kbarrett, ayang, tschatzl
2021-08-10 03:18:47 +00:00
Igor Ignatyev
eb6f3fe59d 8272169: runtime/logging/LoaderConstraintsTest.java doesn't build test.Empty
Reviewed-by: dholmes
2021-08-10 02:26:08 +00:00
Igor Ignatyev
9654fd73cd 8271892: mark hotspot runtime/PrintStringTableStats/PrintStringTableStatsTest.java test as ignoring external VM flags
Reviewed-by: dholmes
2021-08-10 02:12:38 +00:00
David Holmes
843943c204 8263567: gtests don't terminate the VM safely
Reviewed-by: stuefe, dcubed
2021-08-09 20:59:22 +00:00
Joe Darcy
7fc99cf9b6 8225488: Examine ExecutableType.getReceiverType behavior when source receiver parameter is absent
Reviewed-by: jjg
2021-08-09 18:33:34 +00:00
Phil Race
4548677e89 8268824: Remove unused jdk.accessibility APIs deprecated for removal in JDK 9
Reviewed-by: serb
2021-08-09 18:15:46 +00:00
Brian Burkhalter
b53828b7c2 8272047: java/nio/channels/FileChannel/Transfer2GPlus.java failed with Unexpected transfer size: 2147418112
Reviewed-by: naoto, alanb
2021-08-09 16:50:50 +00:00
Naoto Sato
41dc795d6c 8264792: The NumberFormat for locale sq_XK formats price incorrectly.
Reviewed-by: joehw, iris
2021-08-09 16:22:35 +00:00
Artem Semenov
9c6457f222 8267385: Create NSAccessibilityElement implementation for JavaComponentAccessibility
8262031: Create implementation for NSAccessibilityNavigableStaticText protocol
8264287: Create implementation for NSAccessibilityComboBox protocol peer
8264303: Create implementation for NSAccessibilityTabGroup protocol peer
8264292: Create implementation for NSAccessibilityList protocol peer
8267387: Create implementation for NSAccessibilityOutline protocol
8267388: Create implementation for NSAccessibilityTable protocol
8264286: Create implementation for NSAccessibilityColumn protocol peer
8264298: Create implementation for NSAccessibilityRow protocol peer
8264291: Create implementation for NSAccessibilityCell protocol peer

Reviewed-by: kizune, pbansal, serb
2021-08-09 16:21:35 +00:00
Phil Race
0ac2be9b35 8272123: Problem list 4 jtreg tests which regularly fail on macos-aarch64
Reviewed-by: jdv, psadhukhan
2021-08-09 15:58:18 +00:00
Ioi Lam
272fcb423a 8272113: Build compare script fails with differences in classlist
Reviewed-by: tschatzl, hseigel
2021-08-09 15:50:10 +00:00
Albert Mingkun Yang
2f7a46934c 8271931: Make AbortVMOnVMOperationTimeout more resilient to OS scheduling
Reviewed-by: shade, dholmes
2021-08-09 15:19:55 +00:00
Roman Kennke
a86ac0d1e3 8271939: Clean up primitive raw accessors in oopDesc
Reviewed-by: stefank, tschatzl
2021-08-09 10:31:31 +00:00
Hao Sun
b84a9c7b37 8271956: AArch64: C1 build failed after JDK-8270947
Reviewed-by: shade, ngasson
2021-08-09 09:38:13 +00:00
Jie Fu
38ff85c824 8271461: CompileCommand support for hidden class methods
Co-authored-by: Tianyelan <vhinf2047@gmail.com>
Reviewed-by: yyang, xliu, iklam
2021-08-06 23:33:32 +00:00
Igor Ignatyev
c495ede2c2 8272099: mark hotspot runtime/Monitor tests which ignore external VM flags
Reviewed-by: dcubed
2021-08-06 18:49:48 +00:00
Igor Ignatyev
e882087f7a 8271904: mark hotspot runtime/ClassFile tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-06 16:36:50 +00:00
Daniel D. Daugherty
fa36e33437 8271513: support JavaThreadIteratorWithHandle replacement by new ThreadsList::Iterator
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Reviewed-by: kbarrett, dholmes, coleenp
2021-08-06 14:18:54 +00:00
Hamlin Li
cc61520803 8270842: G1: Only young regions need to redirty outside references in remset.
Reviewed-by: tschatzl
2021-08-06 14:16:11 +00:00
Daniel D. Daugherty
f4cf2f7cef 8272095: ProblemList java/nio/channels/FileChannel/Transfer2GPlus.java on linux-aarch64
Reviewed-by: alanb
2021-08-06 13:38:56 +00:00
Andy Herrick
0aca4f72ce 8271868: Warn user when using mac-sign option with unsigned app-image.
Reviewed-by: almatvee, asemenyuk
2021-08-06 12:24:58 +00:00
Christoph Göttschkes
b6a19f173b 8271128: InlineIntrinsics support for 32-bit ARM
Reviewed-by: shade
2021-08-06 10:23:18 +00:00
Albert Mingkun Yang
c2b7facea4 8271896: Remove unnecessary top address checks in BOT
Reviewed-by: tschatzl, iwalulya
2021-08-06 08:27:42 +00:00
Ioi Lam
e7b6f48182 8265602: -XX:DumpLoadedClassList should support custom loaders
Reviewed-by: ccheung, minqi
2021-08-06 05:58:48 +00:00
David Holmes
ea02dade43 8272067: Initial nroff manpage generation for JDK 18
Reviewed-by: darcy
2021-08-06 03:49:34 +00:00
Denghui Dong
adb0ae56ab 8261441: JFR: Filename expansion
Reviewed-by: jbachorik, egahlin
2021-08-06 02:11:55 +00:00
Jaikiran Pai
e38e365c70 8271208: Typo in ModuleDescriptor.read javadoc
Reviewed-by: alanb, iris
2021-08-06 01:30:45 +00:00
Jesper Wilhelmsson
14692d5ed0 Merge 2021-08-06 01:21:44 +00:00
Jonathan Gibbons
dfacda488b 8270872: Final nroff manpage update for JDK 17
Reviewed-by: darcy, mr, iris, naoto
2021-08-05 22:12:27 +00:00
Patricio Chilano Mateo
62e72adfa7 8271293: Monitor class should use ThreadBlockInVMPreprocess
Reviewed-by: dholmes, dcubed
2021-08-05 19:16:14 +00:00
Rajat Mahajan
cb36880281 8270116: Expand ButtonGroupLayoutTraversalTest.java to run in all LaFs, including Aqua on macOS
Reviewed-by: psadhukhan, aivanov
2021-08-05 17:41:33 +00:00
Igor Ignatyev
3ab95d1917 8271905: mark hotspot runtime/Metaspace tests which ignore external VM flags
Reviewed-by: stuefe
2021-08-05 16:32:11 +00:00
Brian Burkhalter
e2c5bfe083 8271308: (fc) FileChannel.transferTo() transfers no more than Integer.MAX_VALUE bytes in one call
Reviewed-by: alanb, vtewari
2021-08-05 16:10:04 +00:00
Daniel D. Daugherty
7234a433f8 8271953: fix mis-merge in JDK-8271878
Reviewed-by: jwilhelm, ctornqvi
2021-08-05 14:55:54 +00:00
Sergey Tsypanov
d7fc9e4171 8267840: Improve URLStreamHandler.parseURL()
Reviewed-by: dfuchs, redestad
2021-08-05 14:55:00 +00:00
Claes Redestad
55bd52a142 8271840: Add simple Integer.toString microbenchmarks
Reviewed-by: shade
2021-08-05 14:46:38 +00:00
Per Liden
18dd4d469d 8271121: ZGC: stack overflow (segv) when -Xlog:gc+start=debug
Reviewed-by: ayang, eosterlund
2021-08-05 12:40:40 +00:00
Julia Boes
685fc3c677 8270903: sun.net.httpserver.HttpConnection: Improve toString
Reviewed-by: chegar, vtewari
2021-08-05 09:42:16 +00:00
Markus Grönlund
90f85ff70f 8271588: JFR Recorder Thread crashed with SIGSEGV in write_klass
Reviewed-by: egahlin
2021-08-05 09:13:26 +00:00
Richard Reingruber
4abe531140 8271722: [TESTBUG] gc/g1/TestMixedGCLiveThreshold.java can fail if G1 Full GC uses >1 workers
Reviewed-by: ayang, tschatzl
2021-08-05 07:31:14 +00:00
Yi Yang
ea9a59520d 8270058: Use Objects.check{Index,FromIndexSize} for java.desktop
Reviewed-by: psadhukhan, pbansal, jdv
2021-08-05 06:39:20 +00:00
Prasanta Sadhukhan
64d18d45ef 4819544: SwingSet2 JTable Demo throws NullPointerException
Reviewed-by: pbansal, aivanov
2021-08-05 04:56:46 +00:00
Jesper Wilhelmsson
6c8441f075 8271878: UnProblemList jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java in JDK18
Reviewed-by: dholmes
2021-08-05 01:42:32 +00:00
Jesper Wilhelmsson
7728423f8a 8271895: UnProblemList javax/swing/JComponent/7154030/bug7154030.java in JDK18
Reviewed-by: dholmes
2021-08-05 01:41:55 +00:00
Jesper Wilhelmsson
cd6b54ec40 Merge 2021-08-05 01:02:20 +00:00
Daniel D. Daugherty
f312f28b8b 8271863: ProblemList serviceability/sa/TestJmapCore.java on linux-x64 with ZGC
Backport-of: a007cb1a1d
2021-08-05 01:00:35 +00:00
Yasumasa Suenaga
a007cb1a1d 8271863: ProblemList serviceability/sa/TestJmapCore.java on linux-x64 with ZGC
Reviewed-by: dcubed
2021-08-04 23:42:43 +00:00
Daniel D. Daugherty
d62fbea7b4 8271898: disable os.release_multi_mappings_vm on macOS-X64
Reviewed-by: kbarrett
2021-08-04 21:06:23 +00:00
Igor Ignatyev
359c7084a1 8271893: mark hotspot runtime/PerfMemDestroy/PerfMemDestroy.java test as ignoring external VM flags
Reviewed-by: coleenp
2021-08-04 19:50:36 +00:00
Igor Ignatyev
a3b0143970 8271887: mark hotspot runtime/CDSCompressedKPtrs tests which ignore external VM flags
Reviewed-by: coleenp
2021-08-04 19:49:47 +00:00
Igor Ignatyev
6c17e6deb2 8271891: mark hotspot runtime/Safepoint tests which ignore external VM flags
Reviewed-by: coleenp
2021-08-04 19:46:13 +00:00
Igor Ignatyev
ff7431eafe 8271886: mark hotspot runtime/InvocationTests tests which ignore external VM flags
Reviewed-by: coleenp
2021-08-04 19:40:05 +00:00
Igor Ignatyev
cdf3d55c82 8271890: mark hotspot runtime/Dictionary tests which ignore external VM flags
Reviewed-by: coleenp
2021-08-04 19:39:12 +00:00
Daniel D. Daugherty
cebcc07b1b 8271894: ProblemList javax/swing/JComponent/7154030/bug7154030.java in JDK17
Reviewed-by: darcy
2021-08-04 19:23:25 +00:00
Joe Darcy
91bbe2fcbd 8271888: build error after JDK-8271599
Reviewed-by: psandoz, bpb
2021-08-04 18:48:53 +00:00
Sergey Bylokhov
6b55ef3b58 8271456: Avoid looking up standard charsets in "java.desktop" module
Reviewed-by: jdv, azvegint, aivanov
2021-08-04 18:44:18 +00:00
Jatin Bhateja
392fcc9df7 8271589: fatal error with variable shift count integer rotate operation.
Reviewed-by: kvn, sviswanathan
2021-08-04 17:49:17 +00:00
Raffaello Giulietti
9f1edafac4 8271599: Javadoc of floorDiv() and floorMod() families is inaccurate in some places
Reviewed-by: darcy, bpb
2021-08-04 17:16:40 +00:00
Daniel D. Daugherty
5f547e8c11 8271877: ProblemList jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java in JDK17
Reviewed-by: darcy
2021-08-04 16:43:31 +00:00
Kim Barrett
452f7d764f 8271217: Fix race between G1PeriodicGCTask checks and GC request
Reviewed-by: iwalulya, tschatzl, lkorinth
2021-08-04 15:04:55 +00:00
Weijun Wang
221e4b9c61 8270797: ShortECDSA.java test is not complete
Reviewed-by: mullan
2021-08-04 13:37:52 +00:00
Ivan Walulya
0a27f264da 8265057: G1: Investigate removal of maintenance of two BOT thresholds
Reviewed-by: ayang, tschatzl
2021-08-04 13:04:39 +00:00
Thomas Stuefe
eec64f5587 8256844: Make NMT late-initializable
Reviewed-by: coleenp, zgu
2021-08-04 12:19:02 +00:00
Prasanta Sadhukhan
4df1bc4bc6 6350025: API documentation for JOptionPane using deprecated methods.
Reviewed-by: jdv
2021-08-04 11:38:07 +00:00
Erik Österlund
181483b90b 8271064: ZGC several jvm08 perf regressions after JDK-8268372
Reviewed-by: ayang, pliden, tschatzl
2021-08-04 10:28:47 +00:00
Jayathirth D V
efcdcc7fb7 8270893: IndexOutOfBoundsException while reading large TIFF file
Reviewed-by: prr, serb
2021-08-04 09:16:35 +00:00
Jie Fu
977b8c4e16 8271836: runtime/ErrorHandling/ClassPathEnvVar.java fails with release VMs
Reviewed-by: stuefe
2021-08-04 07:25:36 +00:00
Xubo Zhang
04134fcdaa 8264543: Cross modify fence optimization for x86
Reviewed-by: dholmes, tschatzl, sviswanathan
2021-08-04 05:43:58 +00:00
Igor Ignatyev
9e769090a0 8271824: mark hotspot runtime/CompressedOops tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 05:19:33 +00:00
Igor Ignatyev
e49b7d958c 8271828: mark hotspot runtime/classFileParserBug tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 05:18:10 +00:00
Igor Ignatyev
68f784778c 8271825: mark hotspot runtime/LoadClass tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 05:17:14 +00:00
Igor Ignatyev
3d40cac8ce 8271821: mark hotspot runtime/MinimalVM tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 05:16:22 +00:00
Igor Ignatyev
33ec3a4d95 8271744: mark hotspot runtime/getSysPackage tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 04:53:20 +00:00
Igor Ignatyev
b48f31d381 8271743: mark hotspot runtime/jni tests which ignore external VM flags
Reviewed-by: dholmes
2021-08-04 04:51:46 +00:00
Thomas Stuefe
66c653c561 8271721: Split gc/g1/TestMixedGCLiveThreshold into separate tests
Reviewed-by: tschatzl, rrich
2021-08-04 04:11:12 +00:00
Igor Ignatyev
68dd828088 8271224: runtime/EnclosingMethodAttr/EnclMethodAttr.java doesn't check exit code
Reviewed-by: mseledtsov, dholmes
2021-08-04 02:22:07 +00:00
Igor Ignatyev
34ba70a71b 8269037: jsig/Testjsig.java doesn't have to be restricted to linux only
Reviewed-by: mseledtsov, dholmes
2021-08-04 02:19:01 +00:00
David Holmes
7e518f42c9 8269934: RunThese24H.java failed with EXCEPTION_ACCESS_VIOLATION in java_lang_Thread::get_thread_status
Reviewed-by: stuefe, dcubed, sspitsyn
2021-08-04 02:08:30 +00:00
Igor Ignatyev
659498a07f 8271829: mark hotspot runtime/Throwable tests which ignore external VM flags
Reviewed-by: jiefu
2021-08-04 01:59:33 +00:00
Igor Ignatyev
d3b40cb683 8271826: mark hotspot runtime/condy tests which ignore external VM flags
Reviewed-by: jiefu
2021-08-04 01:49:11 +00:00
Calvin Cheung
3435d299f7 8271003: hs_err improvement: handle CLASSPATH env setting longer than O_BUFLEN
Reviewed-by: dholmes, stuefe, iklam, minqi
2021-08-04 01:38:18 +00:00
Denghui Dong
43a6ba9677 8271726: JFR: should use equal() to check event fields in tests
Reviewed-by: egahlin
2021-08-04 01:35:26 +00:00
Weijun Wang
a8408708b0 8271616: oddPart in MutableBigInteger::mutableModInverse contains info on final result
Reviewed-by: bpb, darcy, valeriep
2021-08-04 00:02:59 +00:00
Andy Herrick
0199b03eb3 8271344: Windows product version issue
Reviewed-by: asemenyuk, almatvee
2021-08-03 18:51:23 +00:00
Joe Darcy
6594d3a3ef 8271711: Remove WorkArounds.isSynthetic
Reviewed-by: jjg
2021-08-03 18:13:17 +00:00
Coleen Phillimore
f15d6cbcaf 8271506: Add ResourceHashtable support for deleting selected entries
Reviewed-by: iklam, stuefe
2021-08-03 17:20:25 +00:00
Xiaowei Lu
bdb50cab79 8270347: ZGC: Adopt release-acquire ordering for forwarding table access
Co-authored-by: Hao Tang <albert.th@alibaba-inc.com>
Reviewed-by: eosterlund, pliden
2021-08-03 12:23:14 +00:00
Albert Mingkun Yang
b217a6ca0f 8271609: Misleading message for AbortVMOnVMOperationTimeoutDelay
Reviewed-by: dholmes
2021-08-03 11:43:41 +00:00
Jesper Wilhelmsson
c8add223a1 Merge
Reviewed-by: mikael
2021-08-03 01:01:25 +00:00
Yumin Qi
84f0231031 8271419: Refactor test code for modifying CDS archive contents
Reviewed-by: iklam, ccheung
2021-08-02 23:07:43 +00:00
Claes Redestad
0b9539405d 8271624: Avoid unnecessary ThreadGroup.checkAccess calls when creating Threads
Reviewed-by: rriggs
2021-08-02 22:59:48 +00:00
Claes Redestad
e621cffa4f 8271627: Use local field access in favor of Class.getClassLoader0
Reviewed-by: mchung
2021-08-02 22:37:56 +00:00
Igor Ignatyev
ada58d13f7 8067223: [TESTBUG] Rename Whitebox API package
Reviewed-by: dholmes, kvn
2021-08-02 20:44:18 +00:00
Saravana Kumar Vijayasekaran
f8fb571307 8271150: Remove EA from JDK 17 version string starting with Initial RC promotion on Aug 5, 2021(B34)
Reviewed-by: iris, mikael
2021-08-02 18:42:41 +00:00
Daniel D. Daugherty
0a85236396 8193559: ugly DO_JAVA_THREADS macro should be replaced
Co-authored-by: Kim Barrett <kbarrett@openjdk.org>
Reviewed-by: eosterlund, ayang, kbarrett, dholmes
2021-08-02 16:01:27 +00:00
Daniel D. Daugherty
db950ca41f 8271348: Add stronger sanity check of thread state when polling for safepoint/handshakes
Co-authored-by: Patricio Chilano Mateo <pchilanomate@openjdk.org>
Reviewed-by: dholmes, pchilanomate
2021-08-02 16:00:13 +00:00
Lance Andersen
3e3051e2ee 8251329: (zipfs) Files.walkFileTree walks infinitely if zip has dir named "." inside
Reviewed-by: alanb, naoto
2021-08-02 15:47:16 +00:00
Claes Redestad
7a4c754e5d 8271611: Use SecurityConstants.ACCESS_PERMISSION in MethodHandles
Reviewed-by: rriggs
2021-08-02 15:34:56 +00:00
Aleksey Shipilev
e74537f924 8271605: Update JMH devkit to 1.32
Reviewed-by: redestad, ecaspole
2021-08-02 15:05:57 +00:00
Sergey Tsypanov
249d641889 8263561: Re-examine uses of LinkedList
Reviewed-by: redestad
2021-08-02 12:50:38 +00:00
Sergey Tsypanov
6a3f8343bc 8268113: Re-use Long.hashCode() where possible
Reviewed-by: redestad
2021-08-02 12:49:41 +00:00
Sergey Tsypanov
2536e4342e 8270160: Remove redundant bounds check from AbstractStringBuilder.charAt()
Reviewed-by: redestad
2021-08-02 12:48:35 +00:00
Sergey Tsypanov
6c4c48faea 8266972: Use String.concat() in j.l.Class where invokedynamic-based String concatenation is not available
Reviewed-by: redestad
2021-08-02 12:47:09 +00:00
Sergey Tsypanov
72145f3b94 8269665: Clean-up toString() methods of some primitive wrappers
Reviewed-by: redestad
2021-08-02 12:46:00 +00:00
Jesper Wilhelmsson
7cc1eb3e57 Merge 2021-07-30 22:30:23 +00:00
Rajan Halade
4bc9b04984 8263059: security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java fails due to revoked cert
Reviewed-by: mullan
2021-07-30 20:29:18 +00:00
Rajan Halade
d6bb846159 8248899: security/infra/java/security/cert/CertPathValidator/certification/QuoVadisCA.java fails, Certificate has been revoked
Reviewed-by: mullan
2021-07-30 20:16:32 +00:00
Jatin Bhateja
71ca0c08f0 8270848: Redundant unsafe opmask register allocation in some instruction patterns.
Reviewed-by: sviswanathan, kvn
2021-07-30 18:28:30 +00:00
Andrew Haley
6c68ce2d39 8270947: AArch64: C1: use zero_words to initialize all objects
Reviewed-by: ngasson, adinn
2021-07-30 18:02:11 +00:00
Thomas Stuefe
cd7e30ef84 8271242: Add Arena regression tests
Reviewed-by: mseledtsov, coleenp
2021-07-30 16:42:40 +00:00
Sergey Chernyshev
5b3c418249 8270321: Startup regressions in 18-b5 caused by JDK-8266310
Reviewed-by: mchung, alanb
2021-07-30 16:10:25 +00:00
Prasanta Sadhukhan
baf7797b09 8049301: Suspicious use of string identity checks in JComponent.setUIProperty
Reviewed-by: azvegint
2021-07-30 15:37:30 +00:00
Sean Mullan
89f5c96d63 8232066: Remove outdated code/methods from PKIX implementation
Reviewed-by: weijun
2021-07-30 12:43:20 +00:00
Christian Hagedorn
9856ace828 8268963: [IR Framework] Some default regexes matching on PrintOptoAssembly in IRNode.java do not work on all platforms
Reviewed-by: kvn, thartmann
2021-07-30 12:28:57 +00:00
Jan Lahoda
b59418f47d 8270060: (jdeprscan) tools/jdeprscan/tests/jdk/jdeprscan/TestRelease.java failed with class file for jdk.internal.util.random.RandomSupport not found
Reviewed-by: sundar, vromero, darcy
2021-07-30 07:58:51 +00:00
Roland Westrelin
e351de3bd6 8271272: C2: assert(!had_error) failed: bad dominance
Reviewed-by: kvn, thartmann, chagedorn
2021-07-30 07:28:04 +00:00
David Holmes
4f42eb6601 8269523: runtime/Safepoint/TestAbortOnVMOperationTimeout.java failed when expecting 'VM operation took too long'
Reviewed-by: shade, mseledtsov
2021-07-30 04:03:11 +00:00
Chris Plummer
6180cf1f0d 8271512: ProblemList serviceability/sa/sadebugd/DebugdConnectTest.java due to 8270326
Reviewed-by: dcubed
2021-07-30 01:01:52 +00:00
Chris Plummer
77fbd99f79 8270341: Test serviceability/dcmd/gc/HeapDumpAllTest.java timed-out
Reviewed-by: dcubed
2021-07-30 00:57:53 +00:00
Chris Plummer
a1b5b818c5 8271507: ProblemList SA tests that are failing with ZGC due to JDK-8248912
Reviewed-by: dcubed
2021-07-30 00:56:55 +00:00
Jesper Wilhelmsson
048fb2cb17 Merge 2021-07-29 21:49:16 +00:00
Roger Riggs
286d313635 8271489: (doc) Clarify Filter Factory example
Reviewed-by: iris, kcr, naoto, bpb
2021-07-29 20:22:02 +00:00
Emmanuel Bourg
d09b028407 8271396: Spelling errors
Reviewed-by: tschatzl, chegar, iris, psadhukhan, cjplummer
2021-07-29 16:03:31 +00:00
Christian Hagedorn
489e5fd12a 8268019: C2: assert(no_dead_loop) failed: dead loop detected
Reviewed-by: kvn, thartmann
2021-07-29 09:31:22 +00:00
Roland Westrelin
6afcf5f5a2 8270886: Crash in PhaseIdealLoop::verify_strip_mined_scheduling
Reviewed-by: kvn, thartmann
2021-07-29 07:34:20 +00:00
Jesper Wilhelmsson
a0504cff9f Merge 2021-07-29 01:07:57 +00:00
Rajan Halade
2ec45dc2dd 8225082: Remove IdenTrust certificate that is expiring in September 2021
Reviewed-by: shade, mullan
2021-07-29 00:22:09 +00:00
bobpengxie
25f00d787c 8269851: OperatingSystemMXBean getProcessCpuLoad reports incorrect process cpu usage in containers
Co-authored-by: Severin Gehwolf <sgehwolf@openjdk.org>
Reviewed-by: sgehwolf
2021-07-28 23:12:44 +00:00
Igor Ignatyev
20d2dc1f35 8271403: mark hotspot runtime/memory tests which ignore external VM flags
Reviewed-by: dholmes
2021-07-28 23:12:03 +00:00
Igor Ignatyev
e593e3de4c 8271402: mark hotspot runtime/os tests which ignore external VM flags
Reviewed-by: dholmes
2021-07-28 23:11:11 +00:00
Xin Liu
41b4c19086 8271353: PerfDataManager::destroy crashes in VM_Exit
Reviewed-by: dholmes, stuefe, minqi
2021-07-28 23:07:42 +00:00
Ioi Lam
357947acd8 8270061: Change parameter order of ResourceHashtable
Reviewed-by: coleenp, stuefe
2021-07-28 20:39:16 +00:00
Daniel D. Daugherty
7bf72ce301 8271412: ProblemList javax/sound/midi/Sequencer/Looping.java
8271413: ProblemList 2 locale tests on macOS-x64

Reviewed-by: naoto
2021-07-28 18:52:55 +00:00
Dean Long
034788a02c 8270925: replay dump using CICrashAt does not include inlining data
Reviewed-by: kvn, thartmann
2021-07-28 18:50:21 +00:00
Fernando Guallini
9711033780 8209776: Refactor jdk/security/JavaDotSecurity/ifdefs.sh to plain java test
Reviewed-by: rhalade
2021-07-28 18:29:55 +00:00
Liam Miller-Cushon
60c11fef00 8261088: Repeatable annotations without @Target cannot have containers that target module declarations
Reviewed-by: jfranck
2021-07-28 18:21:19 +00:00
Patricio Chilano Mateo
6878b05f8f 8271251: JavaThread::java_suspend() fails with "fatal error: Illegal threadstate encountered: 6"
Reviewed-by: dholmes, dcubed
2021-07-28 16:59:21 +00:00
Prasanta Sadhukhan
dcdb1b6aaa 8137101: [TEST_BUG] javax/swing/plaf/basic/BasicHTML/4251579/bug4251579.java failure due to timing
Reviewed-by: azvegint
2021-07-28 16:12:47 +00:00
Igor Ignatyev
c8ae7e5b03 8271174: runtime/ClassFile/UnsupportedClassFileVersion.java can be run in driver mode
Reviewed-by: mseledtsov, dholmes
2021-07-28 15:38:26 +00:00
Kim Barrett
5fcf72086f 8271352: Extend jcc erratum mitigation to additional processors
Reviewed-by: thartmann, eosterlund
2021-07-28 15:31:14 +00:00
Christoph Göttschkes
6e1da6440b 8270908: TestParallelRefProc fails on single core machines
Reviewed-by: tschatzl, kbarrett
2021-07-28 14:49:02 +00:00
Christoph Göttschkes
a066c7bed0 8270086: ARM32-softfp: Do not load CONSTANT_double using the condy helper methods in the interpreter
Reviewed-by: shade
2021-07-28 13:18:19 +00:00
Yi Yang
072fe486c9 8270901: Typo PHASE_CPP in CompilerPhaseType
Reviewed-by: jiefu
2021-07-28 08:03:29 +00:00
Vladimir Kozlov
d7b5cb6889 8271368: [BACKOUT] JDK-8266054 VectorAPI rotate operation optimization
Reviewed-by: dholmes, iklam
2021-07-28 06:58:36 +00:00
Tejpal Rebari
ecd445562f 8266510: Nimbus JTree default tree cell renderer does not use selected text color
Reviewed-by: psadhukhan, pbansal
2021-07-28 04:29:27 +00:00
Jatin Bhateja
d994b93e21 8266054: VectorAPI rotate operation optimization
Reviewed-by: psandoz, sviswanathan
2021-07-28 02:18:17 +00:00
Yi Yang
ed1cb24027 8271118: C2: StressGCM should have higher priority than frequency-based policy
Reviewed-by: iveresov, kvn
2021-07-28 02:17:30 +00:00
Nick Gasson
9bc52afa48 8271323: [TESTBUG] serviceability/sa/ClhsdbCDSCore.java fails with -XX:TieredStopAtLevel=1
Reviewed-by: cjplummer, kvn
2021-07-28 01:58:02 +00:00
Nick Gasson
752b6df34c 8261236: C2: ClhsdbJstackXcompStress test fails when StressGCM is enabled
Reviewed-by: never, kvn
2021-07-28 01:54:33 +00:00
Jesper Wilhelmsson
a50161b750 Merge 2021-07-28 00:36:16 +00:00
Igor Ignatyev
f1e15c8c8f 8271350: runtime/Safepoint tests use OutputAnalyzer::shouldMatch instead of shouldContaint
Reviewed-by: mseledtsov, dholmes
2021-07-27 23:20:19 +00:00
Hannes Wallnöfer
fbe28e4ee1 8270866: NPE in DocTreePath.getTreePath()
Reviewed-by: jjg
2021-07-27 19:28:54 +00:00
Weijun Wang
90cd2fa164 8270859: Post JEP 411 refactoring: client libs with maximum covering > 10K
Reviewed-by: serb
2021-07-27 17:34:19 +00:00
Markus Grönlund
f662127390 8270491: SEGV at read_string_field(oopDesc*, char const*, JavaThread*)+0x54
Reviewed-by: egahlin
2021-07-27 17:14:04 +00:00
Bradford Wetmore
c8af8238b4 8267485: Remove the dependency on SecurityManager in JceSecurityManager.java
Reviewed-by: mchung
2021-07-27 17:11:13 +00:00
Roman Kennke
ea49691f1d 8270794: Avoid loading Klass* twice in TypeArrayKlass::oop_size()
Reviewed-by: shade, coleenp
2021-07-27 16:37:31 +00:00
Sean Mullan
fc80a6b493 8270946: X509CertImpl.getFingerprint should not return the empty String
Reviewed-by: weijun
2021-07-27 13:49:03 +00:00
Thomas Stuefe
45d277feb0 8270308: Arena::Amalloc may return misaligned address on 32-bit
Reviewed-by: coleenp, kbarrett
2021-07-27 04:21:56 +00:00
Igor Ignatyev
cea7bc2dea 8271223: two runtime/ClassFile tests don't check exit code
Reviewed-by: dholmes
2021-07-27 02:59:40 +00:00
David Holmes
fde183130b 8212961: [TESTBUG] vmTestbase/nsk/stress/jni/ native code cleanup
Reviewed-by: stuefe, iignatyev
2021-07-27 02:49:34 +00:00
Ian Graves
bb508e1303 8269753: Misplaced caret in PatternSyntaxException's detail message
Reviewed-by: prappo
2021-07-27 02:25:30 +00:00
Jaikiran Pai
c3d8e9228d 8190753: (zipfs): Accessing a large entry (> 2^31 bytes) leads to a negative initial size for ByteArrayOutputStream
Reviewed-by: lancea
2021-07-27 01:57:13 +00:00
Jesper Wilhelmsson
eb6da88817 Merge 2021-07-27 00:57:58 +00:00
Dean Long
fcc7d59b99 8269342: CICrashAt=1 does not always catch first Java method
Reviewed-by: kvn, thartmann
2021-07-26 22:09:17 +00:00
Alex Menkov
8785737ba5 8269616: serviceability/dcmd/framework/VMVersionTest.java fails with Address already in use error
Reviewed-by: sspitsyn, kevinw
2021-07-26 20:16:32 +00:00
Andreas Woess
3aadae2077 8271140: Fix native frame handling in vframeStream::asJavaVFrame()
Reviewed-by: dnsimon, kvn, never
2021-07-26 19:47:34 +00:00
Andrey Turbanov
b8f79a7ff7 8268873: Unnecessary Vector usage in java.base
Reviewed-by: mullan
2021-07-26 18:18:56 +00:00
Jim Laskey
b76a83888b 8269150: UnicodeReader not translating \u005c\\u005d to \\]
Reviewed-by: jjg, jlahoda, darcy
2021-07-26 18:04:28 +00:00
Brian Burkhalter
0b12e7c82c 8075806: divideExact is missing in java.lang.Math
Reviewed-by: darcy
2021-07-26 17:19:53 +00:00
Igor Ignatyev
7ddabbff74 8271175: runtime/jni/FindClassUtf8/FindClassUtf8.java doesn't have to be run in othervm
Reviewed-by: dholmes
2021-07-26 17:19:33 +00:00
Igor Ignatyev
3c27f91986 8271222: two runtime/Monitor tests don't check exit code
Reviewed-by: dholmes
2021-07-26 17:18:26 +00:00
Naoto Sato
efa63dc1c6 8171382: java.time.Duration missing isPositive method
Reviewed-by: rriggs, joehw, iris, bpb, scolebourne
2021-07-26 16:33:16 +00:00
Andrey Turbanov
ee5536183a 8265474: Dubious 'null' assignment in CompactByteArray.expand
Reviewed-by: alanb, naoto
2021-07-26 16:31:13 +00:00
Aleksey Shipilev
515113d858 8269924: Shenandoah: Introduce weak/strong marking asserts
Reviewed-by: rkennke
2021-07-26 14:42:14 +00:00
Kim Barrett
f2c359a882 8271215: Fix data races in G1PeriodicGCTask
Reviewed-by: iwalulya, shade
2021-07-26 14:23:47 +00:00
Christian Hagedorn
36aefa351a 8270447: [IR Framework] Add missing compilation level restriction when using FlipC1C2 stress option
Reviewed-by: kvn, thartmann
2021-07-26 07:54:22 +00:00
Xiaohong Gong
e4295ccfcd 8270519: Move several vector helper methods to shared header file
Reviewed-by: jiefu, njian
2021-07-26 04:52:10 +00:00
Clive Verghese
e627caec84 8270317: Large Allocation in CipherSuite
Reviewed-by: xuelei, simonis
2021-07-24 10:14:53 +00:00
Alexander Zvegintsev
049b2ad4df 8015886: java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.java sometimes failed on ubuntu
Reviewed-by: kizune, serb
2021-07-24 08:14:05 +00:00
Jesper Wilhelmsson
0dcfc42f23 Merge 2021-07-24 01:06:15 +00:00
Igor Veresov
7468bbcd64 8266988: compiler/jvmci/compilerToVM/IsMatureTest.java fails with Unexpected isMature state for multiple times invoked method: expected false to equal true
Reviewed-by: kvn
2021-07-23 22:18:51 +00:00
Coleen Phillimore
286106dd2a 8271219: [REDO] JDK-8271063 Print injected fields for InstanceKlass
Reviewed-by: dcubed, fparain
2021-07-23 20:52:45 +00:00
Ian Graves
a1c0a6aafb 8199594: Add doc describing how (?x) ignores spaces in character classes
Reviewed-by: darcy, naoto, iris, lancea, bpb
2021-07-23 19:17:02 +00:00
Vladimir Kozlov
4ed548b3ee 8268261: C2: assert(n != __null) failed: Bad immediate dominator info.
Reviewed-by: iveresov, vlivanov
2021-07-23 18:51:25 +00:00
Alexander Zuev
8adf008b15 8269984: [macos] JTabbedPane title looks like disabled
Reviewed-by: kcr, psadhukhan
2021-07-23 17:36:44 +00:00
Daniel D. Daugherty
ec71e2d891 8271221: [BACKOUT] JDK-8271063 Print injected fields for InstanceKlass
Reviewed-by: coleenp
2021-07-23 15:53:49 +00:00
Igor Ignatyev
e90ed6cc38 8271173: serviceability/jvmti/GetObjectSizeClass.java doesn't check exit code
Reviewed-by: dholmes
2021-07-23 15:53:48 +00:00
Igor Ignatyev
b4c6229fd4 8271189: runtime/handshake/HandshakeTimeoutTest.java can be run in driver mode
Reviewed-by: dholmes
2021-07-23 15:32:42 +00:00
Rajan Halade
f4b3ee5dca 8270280: security/infra/java/security/cert/CertPathValidator/certification/LetsEncryptCA.java OCSP response error
Reviewed-by: mullan
2021-07-23 15:03:45 +00:00
Rajan Halade
45abbeed2f 8243543: jtreg test security/infra/java/security/cert/CertPathValidator/certification/BuypassCA.java fails
Reviewed-by: mullan
2021-07-23 14:18:55 +00:00
Pavel Rappo
c9251db175 8271209: Fix doc comment typos in JavadocTokenizer
Reviewed-by: jlaskey
2021-07-23 14:05:37 +00:00
Albert Mingkun Yang
96247ae8fb 8270187: G1: Remove ConcGCThreads constraint
Reviewed-by: kbarrett, iwalulya
2021-07-23 13:52:55 +00:00
Coleen Phillimore
9b27df6a4f 8271063: Print injected fields for InstanceKlass
Reviewed-by: fparain, hseigel, yyang
2021-07-23 12:23:12 +00:00
Kim Barrett
0cc4bb729e 8270870: Simplify G1ServiceThread
Reviewed-by: tschatzl, iwalulya
2021-07-23 12:14:45 +00:00
Thomas Schatzl
8c8e3a0df2 8271163: G1 uses wrong degree of MT processing since JDK-8270169
Reviewed-by: kbarrett, ayang
2021-07-23 11:56:52 +00:00
David Holmes
8a789b71fe 8263840: PeriodicTask should declare its destructor virtual
Reviewed-by: xliu, kbarrett
2021-07-23 11:40:19 +00:00
Roman Kennke
f22619032d 8270894: Use acquire semantics in ObjectSynchronizer::read_stable_mark()
Reviewed-by: dholmes
2021-07-23 10:42:00 +00:00
Thomas Schatzl
ea182b5c6e 8271060: Merge G1CollectedHeap::determine_start_concurrent_mark_gc and G1Policy::decide_on_conc_mark_initiation
Reviewed-by: ayang, kbarrett
2021-07-23 09:51:14 +00:00
Matthias Baesken
fb85960015 8271149: remove unreferenced functions from EncodingSupport_md.c
Reviewed-by: alanb
2021-07-23 06:38:47 +00:00
Jaikiran Pai
8156ff609b 8271147: java/nio/file/Path.java javadoc typo
Reviewed-by: iris
2021-07-23 04:06:59 +00:00
Jesper Wilhelmsson
9935440ede Merge 2021-07-23 01:41:14 +00:00
Daniel D. Daugherty
a7d30123f0 8271165: ProblemList serviceability/dcmd/gc/HeapDumpAllTest.java on X64
8271166: ProblemList applications/jcstress/copy.java on Linux-X64

Reviewed-by: darcy
2021-07-22 23:56:22 +00:00
Igor Ignatyev
e3800e6497 8271162: runtime/StackTrace/LargeClassTest.java can be run in driver mode
Reviewed-by: dholmes
2021-07-22 23:54:28 +00:00
Igor Ignatyev
ee93cef8aa 8271158: runtime/handshake/HandshakeTimeoutTest.java test doesn't check exit code
Reviewed-by: dcubed
2021-07-22 23:53:36 +00:00
Igor Ignatyev
84be910e1d 8271169: runtime/Safepoint/TestAbortVMOnSafepointTimeout.java can be run in driver mode
Reviewed-by: dholmes
2021-07-22 23:21:39 +00:00
Igor Ignatyev
2d165a2bdf 8271160: runtime/jni/checked/TestCheckedJniExceptionCheck.java doesn't set -Djava.library.path
Reviewed-by: dcubed, dholmes
2021-07-22 22:15:25 +00:00
Alexey Semenyuk
7165b3f105 8271155: Wrong path separator in env variable
Reviewed-by: herrick, kcr, iris, almatvee
2021-07-22 22:14:31 +00:00
Daniel D. Daugherty
9b93d816c1 8271161: [BACKOUT] JDK-8249634 doclint should report implicit constructor as missing javadoc comments
Reviewed-by: iignatyev
2021-07-22 21:15:20 +00:00
Brian Burkhalter
1362e09479 8211002: test/jdk/java/lang/Math/PowTests.java skips testing for non-corner-case values
Reviewed-by: darcy
2021-07-22 20:35:05 +00:00
Joe Darcy
ecc37b06f2 8270916: Update java.lang.annotation.Target for changes in JLS 9.6.4.1
Reviewed-by: bpb, naoto
2021-07-22 19:50:23 +00:00
Alexey Semenyuk
984003d5c9 8268974: GetJREPath() JLI function fails to locate libjava.so if not standard Java launcher is used
Reviewed-by: almatvee, herrick, alanb
2021-07-22 18:53:51 +00:00
Jonathan Gibbons
c1c404896c 8249634: doclint should report implicit constructor as missing javadoc comments
Reviewed-by: hannesw
2021-07-22 18:52:19 +00:00
Leonid Mesnik
09e5321763 8225313: serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatObjectCorrectnessTest.java failed with Unexpected high difference percentage
Reviewed-by: dholmes, kevinw
2021-07-22 18:19:16 +00:00
Leonid Mesnik
258f188bff 8270961: [TESTBUG] Move GotWrongOOMEException into vm.share.gc package
Reviewed-by: kbarrett, tschatzl
2021-07-22 18:18:14 +00:00
Leonid Mesnik
3cadc36060 8270336: [TESTBUG] Fix initialization in NonbranchyTree
Reviewed-by: kbarrett, tschatzl
2021-07-22 18:17:09 +00:00
Igor Ignatyev
4812e53791 8271094: runtime/duplAttributes/DuplAttributesTest.java doesn't check exit code
Reviewed-by: jiefu, dholmes
2021-07-22 17:14:30 +00:00
Igor Ignatyev
6a9ab6a2cf 8271093: remove deadcode from runtime/Thread/TestThreadDumpSMRInfo.java test
Reviewed-by: jiefu, dholmes, dcubed
2021-07-22 17:13:26 +00:00
Thomas Schatzl
c2ed336828 8270912: Clean up G1CollectedHeap::process_discovered_references()
Reviewed-by: iwalulya, kbarrett
2021-07-22 15:20:32 +00:00
Thomas Schatzl
8e27d4e8ce 8271043: Rename G1CollectedHeap::g1mm()
Reviewed-by: kbarrett, iwalulya
2021-07-22 14:38:28 +00:00
Patricio Chilano Mateo
e7f9009315 8270085: Suspend during block transition may deadlock if lock held
Co-authored-by: Robbin Ehn <rehn@openjdk.org>
Co-authored-by: Patricio Chilano Mateo <pchilanomate@openjdk.org>
Reviewed-by: dcubed, dholmes, coleenp
2021-07-22 14:30:19 +00:00
Daniel D. Daugherty
39b486db6d 8271126: ProblemList runtime/InvocationTests/invokevirtualTests.java
Backport-of: d1257d54f9
2021-07-22 14:04:34 +00:00
Jamsheed Mohammed C M
d1257d54f9 8271126: ProblemList runtime/InvocationTests/invokevirtualTests.java
Reviewed-by: thartmann
2021-07-22 12:04:55 +00:00
Julia Boes
50bb7313a7 8270286: com.sun.net.httpserver.spi.HttpServerProvider: remove use of deprecated API
Reviewed-by: chegar
2021-07-22 09:45:49 +00:00
Tobias Hartmann
4119a52c4b 8270461: ZGC: Invalid oop passed to ZBarrierSetRuntime::load_barrier_on_oop_array
Reviewed-by: chagedorn, kvn
2021-07-22 05:59:12 +00:00
Prasanta Sadhukhan
9131a8f5f2 8267940: [macos] java/awt/print/Dialog/DialogOwnerTest.java fails
Reviewed-by: azvegint, prr
2021-07-22 04:29:20 +00:00
Thomas Stuefe
6096dd9765 8268893: jcmd to trim the glibc heap
Reviewed-by: simonis, dholmes
2021-07-22 04:07:10 +00:00
Jesper Wilhelmsson
c36755dedf Merge 2021-07-22 00:46:18 +00:00
Jamsheed Mohammed C M
89f7998aa7 8266347: assert(Dependencies::is_concrete_root_method(fm, ctxk) == Dependencies::is_concrete_method(m, ctxk)) failed: mismatch
Reviewed-by: vlivanov, thartmann
2021-07-21 20:28:57 +00:00
Igor Veresov
e1051ae069 8264066: Enhance compiler validation
Reviewed-by: ahgross, kvn, rhalade, thartmann
2021-07-21 20:28:57 +00:00
Sean Mullan
add995be46 8265201: JarFile.getInputStream not validating invalid signed jars
Reviewed-by: pkoppula, coffeys
2021-07-21 20:28:56 +00:00
Rahul Yadav
ca6b222c97 8258432: Improve File Transfers
Reviewed-by: michaelm, aefimov, dfuchs, chegar, ahgross, rhalade
2021-07-21 20:28:56 +00:00
Jamsheed Mohammed C M
a3acce5210 8264079: Improve abstractions
Reviewed-by: vlivanov, ahgross, thartmann, rhalade
2021-07-21 20:28:56 +00:00
Joe Wang
138f59806f 8262380: Enhance XML processing passes
Reviewed-by: lancea, naoto, ahgross, rhalade
2021-07-21 20:28:56 +00:00
Conor Cleary
0e6c01163f 8262967: Improve Zip file support
Reviewed-by: ahgross, rhalade, aefimov
2021-07-21 20:28:56 +00:00
Weijun Wang
e48af0069e 8264460: Improve NTLM support
Reviewed-by: xuelei
2021-07-21 20:28:56 +00:00
Patrick Concannon
b87e526af1 8256491: Better HTTP transport
Reviewed-by: dfuchs, michaelm, rhalade, ahgross
2021-07-21 20:28:56 +00:00
Phil Race
1c8b9727b7 8262477: Enhance String Conclusions
Reviewed-by: rhalade, mschoene, psadhukhan, jdv, serb
2021-07-21 20:28:56 +00:00
Sergey Bylokhov
9accf7c894 8262403: Enhanced data transfers
Reviewed-by: rhalade, prr, vdyakov, ahgross
2021-07-21 20:28:55 +00:00
Weijun Wang
ef9315bead 8260967: Better jar file validation
Reviewed-by: hchao, valeriep
2021-07-21 20:28:55 +00:00
Hai-May Chao
fc38331f44 8260960: Signs of jarsigner signing
Reviewed-by: weijun, rhalade
2021-07-21 20:28:55 +00:00
Naoto Sato
175b65c0a1 8262410: Enhanced rules for zones
Reviewed-by: rriggs, rhalade
2021-07-21 20:28:55 +00:00
Phil Race
7b6410f213 8260453: Improve Font Bounding
Reviewed-by: rhalade, psadhukhan, mschoene, serb
2021-07-21 20:28:55 +00:00
Vicente Romero
7ad6c23c32 8256157: Improve bytecode assembly
Reviewed-by: jlahoda, rhalade, mschoene
2021-07-21 20:28:55 +00:00
Igor Ignatyev
9b177a7486 8268612: a few runtime/memory tests don't check exit code
Reviewed-by: dholmes, mseledtsov
2021-07-21 19:47:03 +00:00
Ioi Lam
0790f04d8a 8271015: Split cds/SharedBaseAddress.java test into smaller parts
Reviewed-by: ccheung, minqi
2021-07-21 19:07:07 +00:00
Ioi Lam
024c4027d8 8271014: Refactor HeapShared::is_archived_object()
Reviewed-by: ccheung, minqi
2021-07-21 18:49:19 +00:00
Mandy Chung
ddce47cd3c 8270949: Make dynamically generated classes with the class file version of the current release
Reviewed-by: alanb
2021-07-21 18:09:38 +00:00
Leonid Mesnik
b7245c6164 8269849: vmTestbase/gc/gctests/PhantomReference/phantom002/TestDescription.java failed with "OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects"
Reviewed-by: kbarrett
2021-07-21 18:07:43 +00:00
Alexander Zvegintsev
6ce52e6277 8159904: [TEST_BUG] Failure on solaris of java/awt/Window/MultiWindowApp/MultiWindowAppTest.java
Reviewed-by: prr
2021-07-21 16:29:56 +00:00
Daniel D. Daugherty
08c52fd33c 8271070: ProblemList 3 client tests on Linux-X64
Reviewed-by: prr
2021-07-21 16:13:38 +00:00
Thomas Schatzl
57611b3021 8270991: G1 Full GC always performs heap verification after JDK-8269295
Reviewed-by: iwalulya, kbarrett
2021-07-21 15:41:34 +00:00
Matthias Baesken
cd8783c08e 8270820: remove unused stiFileTableIndex from SDE.c
Reviewed-by: cjplummer, sspitsyn
2021-07-21 06:41:02 +00:00
Rado Smogura
1f51e13ea7 8270147: Increase stride size allowing unrolling more loops
Reviewed-by: kvn, iveresov
2021-07-21 05:05:13 +00:00
Ioi Lam
7dd19af259 8270803: Reduce CDS API verbosity
Reviewed-by: minqi, ccheung
2021-07-21 03:52:19 +00:00
Fernando Guallini
6346793c64 8269933: test/jdk/javax/net/ssl/compatibility/JdkInfo incorrect verification of protocol and cipher support
Reviewed-by: xuelei, rhalade
2021-07-21 03:38:40 +00:00
Jesper Wilhelmsson
1eeb1791ab Merge
Reviewed-by: jvernee
2021-07-21 00:24:17 +00:00
Jesper Wilhelmsson
61359c46a7 8270993: Missing forward declaration of ZeroFrame
Reviewed-by: kvn
2021-07-21 00:17:31 +00:00
Daniel D. Daugherty
8e8e87a765 8268223: Problemlist vmTestbase/nsk/jdi/HiddenClass/events/events001.java
Backport-of: 1e1039a7c8
2021-07-20 21:55:38 +00:00
Jorn Vernee
845c31dc4b 8269240: java/foreign/stackwalk/TestAsyncStackWalk.java test failed with concurrent GC
Reviewed-by: vlivanov, dholmes
2021-07-20 13:10:42 +00:00
Tobias Hartmann
38694aa970 8270939: ProblemList java/lang/invoke/RicochetTest.java until JDK-8251969 is fixed
Reviewed-by: chagedorn
2021-07-20 09:45:17 +00:00
Corey Ashford
754352f4c9 8270340: Base64 decodeBlock intrinsic for Power64 needs cleanup
Reviewed-by: ogatak, mdoerr
2021-07-20 08:07:11 +00:00
Yi Yang
0cec11d3eb 8270307: C2: assert(false) failed: bad AD file after JDK-8267687
Co-authored-by: Kuai Wei <kuaiwei.kw@alibaba-inc.com>
Reviewed-by: kvn, thartmann
2021-07-20 06:10:58 +00:00
David Holmes
8cd0769ef2 8270875: Deprecate the FilterSpuriousWakeups flag so it can be removed
Reviewed-by: kbarrett
2021-07-20 05:55:06 +00:00
Alexander Zuev
534f00510e 8268284: javax/swing/JComponent/7154030/bug7154030.java fails with "Exception: Failed to hide opaque button"
Reviewed-by: serb
2021-07-20 03:31:22 +00:00
Calvin Cheung
00195b85ed 8265604: Support unlinked classes in dynamic CDS archive
Reviewed-by: minqi, iklam
2021-07-20 02:06:42 +00:00
Kim Barrett
7f35e5bac9 8270869: G1ServiceThread may not terminate
Reviewed-by: ayang, tschatzl
2021-07-20 00:27:28 +00:00
Jesper Wilhelmsson
c3519c3e20 Merge 2021-07-19 23:12:55 +00:00
Joe Darcy
f644365441 8269689: Update --release 17 symbol information for JDK 17 build 31
Reviewed-by: jlahoda
2021-07-19 17:23:29 +00:00
Kim Barrett
3fc761d97d 8269032: Stringdedup tests are failing if the ergonomically select GC does not support it
Reviewed-by: tschatzl, lkorinth
2021-07-19 13:43:46 +00:00
Thomas Schatzl
a8f1542715 8270455: Remove unused JFR tracer related code in G1CollectedHeap
Reviewed-by: ayang, kbarrett
2021-07-19 09:30:06 +00:00
Roland Westrelin
c1304519b5 8269752: C2: assert(false) failed: Bad graph detected in build_loop_late
Reviewed-by: chagedorn, kvn
2021-07-19 07:31:28 +00:00
Koichi Sakata
edff55607b 8263385: IGV: Graph is not opened in the window that has focus.
Reviewed-by: rrich, chagedorn
2021-07-19 05:46:04 +00:00
David Holmes
e7cdfebbee 8270862: Fix problem list entries for 32-bit
Reviewed-by: sspitsyn
2021-07-17 07:42:14 +00:00
Ioi Lam
f8ec3b68f3 8270801: Print VM arguments with java -Xlog:arguments
Reviewed-by: dholmes, xliu, stuefe, minqi
2021-07-17 04:52:47 +00:00
Jesper Wilhelmsson
a5c9094fdb Merge 2021-07-17 02:06:19 +00:00
Phil Race
2dddcce29b 8270858: Problem List java/awt/Window/MultiWindowApp/MultiWindowAppTest.java on Linux
Reviewed-by: mikael, pbansal
2021-07-16 20:02:08 +00:00
Calvin Cheung
58f1ada271 8269636: Change outputStream's print_raw() and print_raw_cr() second parameter to size_t type
Reviewed-by: iklam, minqi
2021-07-16 19:22:49 +00:00
Christoph Langer
1350e2bd22 8270556: Exclude security/infra/java/security/cert/CertPathValidator/certification/LetsEncryptCA
Reviewed-by: mbaesken
2021-07-16 19:02:50 +00:00
Harold Seigel
67dc1c5bf3 8270837: fix typos in test TestSigParse.java
Reviewed-by: jiefu
2021-07-16 14:02:12 +00:00
Ivan Walulya
1d8d72d2c2 8270540: G1: Refactor range checking in G1BlockOffsetTablePart::block_start* to asserts
Reviewed-by: ayang, tschatzl
2021-07-16 12:00:23 +00:00
Jan Lahoda
90c219f37b 8270547: java.util.Random contains unnecessary @SuppressWarnings("exports")
Reviewed-by: darcy, bpb
2021-07-16 08:54:04 +00:00
David Holmes
4927ee426a 8270814: ProblemList the failing serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitor* tests
Reviewed-by: tschatzl, jiefu
2021-07-16 06:56:46 +00:00
Jie Fu
676d425c6b 8270459: Conflict inlining decisions by C1/C2 with the same CompileCommand
Reviewed-by: kvn, xliu
2021-07-16 05:45:25 +00:00
Alexander Zuev
eab959cbfa 8269269: [macos11] SystemIconTest fails with ClassCastException
Reviewed-by: jdv
2021-07-16 04:43:53 +00:00
David Holmes
e35005d5ce 8268773: Improvements related to: Failed to start thread - pthread_create failed (EAGAIN)
Reviewed-by: stuefe, iklam
2021-07-16 02:49:40 +00:00
Xiaohong Gong
ea77ef8348 8269725: AArch64: Add VectorMask query implementation for NEON
Reviewed-by: aph
2021-07-16 01:54:10 +00:00
Jesper Wilhelmsson
7240d67868 Merge 2021-07-16 00:51:56 +00:00
Christoph Göttschkes
bb82005a81 8270468: TestRangeCheckEliminated fails because methods are not compiled
Reviewed-by: kvn, thartmann
2021-07-15 19:53:31 +00:00
Andy Herrick
057992f206 8269387: jpackage --add-launcher should have option to not create shortcuts for additional launchers
Reviewed-by: asemenyuk, almatvee
2021-07-15 17:04:54 +00:00
Zhengyu Gu
746fe5dc68 8270366: C2: Add associative rule to add/sub node
Reviewed-by: kvn, adinn
2021-07-15 16:40:30 +00:00
William Kemper
e104dede6e 8268635: Corrupt oop in ClassLoaderData
Reviewed-by: coleenp
Backport-of: 3586a233a4
2021-07-15 16:27:30 +00:00
Jonathan Gibbons
1f995e52b2 8265888: StandardJavaFileManager::setLocationForModule specification misses 'Implementation Requirements:'
Reviewed-by: jlahoda
2021-07-15 16:06:40 +00:00
Vicente Romero
c962e6ec0b 8261006: 'super' qualified method references cannot occur in a static context
Reviewed-by: sadayapalam
2021-07-15 15:33:23 +00:00
Ivan Walulya
99d7f9a772 8264908: Investigate adding BOT range check in G1BlockOffsetTablePart::block_at_or_preceding
Reviewed-by: ayang, tschatzl
2021-07-15 08:49:23 +00:00
Ao Qi
e92e2fd4e0 8270517: Add Zero support for LoongArch
Reviewed-by: dholmes, erikj, shade
2021-07-15 08:26:05 +00:00
Thomas Schatzl
7a89ffeddd 8270014: Add scoped objects for g1 young gc verification and young gc internal timing
Reviewed-by: ayang, iwalulya, kbarrett
2021-07-15 08:12:36 +00:00
Thomas Schatzl
793d772afd 8270475: Remove unused G1STWDrainQueueClosure
Reviewed-by: iwalulya, kbarrett
2021-07-15 08:11:21 +00:00
Sibabrata Sahoo
a32d2eefea 8269276: Additional tests for MessageDigest with different providers
Reviewed-by: valeriep, wetmore
2021-07-15 05:42:55 +00:00
Ioi Lam
1ebd9469db 8270333: -XX:+VerifyStringTableAtExit should not do linear search
Reviewed-by: dholmes, minqi
2021-07-15 05:15:24 +00:00
Thejasvi Voniadka
04b73bc4e0 8269656: The test test/langtools/tools/javac/versions/Versions.java has duplicate test cycles
Reviewed-by: darcy
2021-07-15 04:52:38 +00:00
Joshua Zhu
7c23491918 8269598: Regressions up to 5% on aarch64 seems due to JDK-8268858
Reviewed-by: kvn, dlong
2021-07-15 01:57:31 +00:00
Jesper Wilhelmsson
7d0edb5743 Merge 2021-07-14 22:35:40 +00:00
Alexander Zuev
a033866d78 8269637: javax/swing/JFileChooser/FileSystemView/SystemIconTest.java fails on windows
Reviewed-by: aivanov
2021-07-14 18:25:57 +00:00
Doug Simon
14da658d1c 8270453: [JVMCI] remove duplicates in vmStructs_jvmci.cpp
Reviewed-by: kvn
2021-07-14 17:47:08 +00:00
Volker Simonis
fb86d13ec4 8270100: Fix some inaccurate GC logging
Reviewed-by: ayang, tschatzl
2021-07-14 17:39:16 +00:00
Andreas Woess
b1bb05bcf4 8269592: [JVMCI] Optimize c2v_iterateFrames
Reviewed-by: kvn, never, dlong
2021-07-14 17:32:55 +00:00
Brian Burkhalter
c0d4efff3c 6506405: Math.abs(float) is slow
Reviewed-by: darcy
2021-07-14 15:50:51 +00:00
Erik Joelsson
7b4d84c654 8270422: Test build/AbsPathsInImage.java fails after JDK-8259848
Reviewed-by: mikael
2021-07-14 13:00:57 +00:00
Jim Laskey
72db09b1f3 8266313: (JEP-356) - RandomGenerator spec implementation requirements tightly coupled to JDK internal classes
Reviewed-by: rriggs
2021-07-14 12:00:01 +00:00
Jim Laskey
3bbd2332bd 8270075: SplittableRandom extends AbstractSplittableGenerator
Reviewed-by: rriggs, bpb
2021-07-14 11:51:06 +00:00
Anton Kozlov
381bd62107 8266889: [macosx-aarch64] Crash with SIGBUS in MarkActivationClosure::do_code_blob during vmTestbase/nsk/jvmti/.../bi04t002 test run
Reviewed-by: dholmes, aph, sspitsyn
2021-07-14 10:36:04 +00:00
Nick Gasson
357fe09f2e 8247351: [aarch64] NullPointerException during stack walking (clhsdb "where -a")
Reviewed-by: cjplummer
2021-07-14 09:02:43 +00:00
Aleksey Shipilev
589a1d53df 8270155: ARM32: Improve register dump in hs_err
Reviewed-by: dholmes, stuefe
2021-07-14 08:14:12 +00:00
Ivan Walulya
b6d765386e 8264419: Remove has_max_index argument from G1BlockOffsetTablePart::block_at_or_preceding
Reviewed-by: ayang, tschatzl
2021-07-14 07:52:57 +00:00
Hannes Wallnöfer
82c256eb61 8259499: Handling type arguments from outer classes for inner class in javadoc
Reviewed-by: jjg
2021-07-14 06:49:45 +00:00
Christoph Langer
e5db9a9405 8268620: InfiniteLoopException test may fail on x86 platforms
Backport-of: 0b09129fae
2021-07-14 05:38:17 +00:00
Xin Liu
67273ae63c 8269865: Async UL needs to handle ERANGE on exceeding SEM_VALUE_MAX
Reviewed-by: dholmes, pchilanomate
2021-07-14 01:43:53 +00:00
Jesper Wilhelmsson
4a7ccf36e9 Merge 2021-07-14 01:07:52 +00:00
David Holmes
770e2aa3c6 8215948: [TESTBUG] gtest pseudo-JavaThreads could be more regular JavaThreads
Reviewed-by: coleenp, pchilanomate
2021-07-14 01:05:10 +00:00
Yi Yang
0f5470715e 8270056: Generated lambda class can not access protected static method of target class
Reviewed-by: mchung
Backport-of: 07e9052457
2021-07-14 00:46:06 +00:00
Scott Gibbons
9cac94d581 8269404: Base64 Encoding optimization enhancements for x86 using AVX-512
Reviewed-by: kvn, sviswanathan
2021-07-13 23:52:08 +00:00
Vicente Romero
8583aab374 8270025: DynamicCallSiteDesc::withArgs doesn't throw NPE
Reviewed-by: jvernee, mchung
2021-07-13 17:48:21 +00:00
Christoph Langer
ca806ef319 8263531: Remove unused buffer int
Reviewed-by: chegar, vtewari, wetmore
2021-07-13 16:55:54 +00:00
Severin Gehwolf
d32e42cdd4 8270184: [TESTBUG] Add coverage for jvmci ResolvedJavaType.toJavaName() for lambdas
Backport-of: 6a9bc10873
2021-07-13 14:34:35 +00:00
Roman Kennke
7ac08161a8 8269897: Shenandoah: Resolve UNKNOWN access strength, where possible
Reviewed-by: shade
2021-07-13 13:30:04 +00:00
Coleen Phillimore
460c4bb6ce 8270179: Rename Amalloc_4
8270217: Fix Arena::Amalloc to check for overflow better

Reviewed-by: kbarrett, stuefe
2021-07-13 13:06:20 +00:00
Thomas Schatzl
375fc2a2b2 8270009: Factor out and shuffle methods in G1CollectedHeap::do_collection_pause_at_safepoint_helper
Reviewed-by: kbarrett, ayang
2021-07-13 11:27:41 +00:00
Maurizio Cimadamore
b2416b60fb 8269281: java/foreign/Test{Down,Up}call.java time out
Reviewed-by: jvernee
2021-07-13 10:53:49 +00:00
Jesper Wilhelmsson
6b123b0591 Merge 2021-07-13 10:50:18 +00:00
Albert Mingkun Yang
565ec8518b 8270282: Semantically rename reference processing subphases
Reviewed-by: kbarrett, tschatzl
2021-07-13 10:36:55 +00:00
Markus Grönlund
bd95c0c9e0 8269635: Stress test SEGV while emitting OldObjectSample
Reviewed-by: jbachorik
2021-07-13 09:43:49 +00:00
Markus Grönlund
00ef65f34d 8269525: Deadlock during Volano with JFR
Reviewed-by: egahlin
2021-07-13 09:41:56 +00:00
Erik Joelsson
e631addd70 8259848: Interim javadoc build does not support platform links
Reviewed-by: hannesw, jjg, ihse
2021-07-13 09:27:27 +00:00
Christian Hagedorn
040c02b942 8269795: C2: Out of bounds array load floats above its range check in loop peeling resulting in SEGV
Reviewed-by: thartmann, roland, kvn
2021-07-13 08:50:09 +00:00
Erik Joelsson
0f32982872 8270203: Missing build dependency between jdk.jfr-gendata and buildtools-hotspot
Reviewed-by: tbell
2021-07-13 05:55:04 +00:00
Yi Yang
07e9052457 8270056: Generated lambda class can not access protected static method of target class
Co-authored-by: NekoCaffeine <nekocaffeine@qq.com>
Reviewed-by: mchung
2021-07-13 02:24:14 +00:00
Yi Yang
afe957cd97 8268698: Use Objects.check{Index,FromToIndex,FromIndexSize} for java.base
Reviewed-by: mchung, rriggs
2021-07-13 02:23:16 +00:00
Yumin Qi
a4e5f08fef 8267281: Call prepare_for_dynamic_dumping for jcmd dynamic_dump
Reviewed-by: iklam, ccheung
2021-07-12 19:03:38 +00:00
Magnus Ihse Bursie
353e9c8607 8270320: JDK-8270110 committed invalid copyright headers
Reviewed-by: kvn
2021-07-12 18:54:39 +00:00
Albert Mingkun Yang
7d2825e421 8270169: G1: Incorrect reference discovery MT degree in concurrent marking
Reviewed-by: tschatzl, iwalulya, kbarrett
2021-07-12 18:25:33 +00:00
Magnus Ihse Bursie
41a5eb4372 8270117: Broken jtreg link in "Building the JDK" page
Reviewed-by: sgehwolf
2021-07-12 18:14:55 +00:00
Ignasi Marimon-Clos
1aef372ed8 8266578: Disambiguate BigDecimal description of scale
Reviewed-by: darcy, bpb
2021-07-12 16:54:39 +00:00
Sean Mullan
4fc3180f75 8266345: (fs) Custom DefaultFileSystemProvider security related loops
Co-authored-by: Brian Burkhalter <bpb@openjdk.org>
Reviewed-by: bpb, chegar
2021-07-12 14:54:38 +00:00
Harold Seigel
92ae6a5123 8244162: Additional opportunities to use NONCOPYABLE
Reviewed-by: dholmes, kbarrett, shade
2021-07-12 14:21:44 +00:00
Zhengyu Gu
548bb3119c 8270110: Shenandoah: Add test for JDK-8269661
Reviewed-by: rkennke
2021-07-12 12:22:06 +00:00
Jatin Bhateja
c3a42eddec 8269878: Handle redundant reg-2-reg moves in X86 backend
Reviewed-by: kvn, vlivanov
2021-07-12 11:36:14 +00:00
Christoph Göttschkes
999ced03cc 8269873: serviceability/sa/Clhsdb tests are using a C2 specific VMStruct field
Reviewed-by: cjplummer, dholmes, sspitsyn
2021-07-12 11:23:38 +00:00
Anton Kozlov
7cbb67a3f8 8267666: Add option to jcmd GC.heap_dump to use existing file
Reviewed-by: rschmelter, clanger
2021-07-12 11:12:52 +00:00
Alexey Bakhtin
e1d3e73d4e 8268965: TCP Connection Reset when connecting simple socket to SSL server
Reviewed-by: xuelei
Backport-of: 6f171b9f0d
2021-07-12 10:24:39 +00:00
Thomas Schatzl
8973867fb9 8269295: Verification time before/after young collection only covers parts of the verification
Reviewed-by: kbarrett, iwalulya
2021-07-12 08:41:28 +00:00
Severin Gehwolf
6a9bc10873 8270184: [TESTBUG] Add coverage for jvmci ResolvedJavaType.toJavaName() for lambdas
Reviewed-by: kvn
2021-07-12 08:25:22 +00:00
Albert Mingkun Yang
86a20081ae 8051680: (ref) unnecessary process_soft_ref_reconsider
Reviewed-by: kbarrett, tschatzl
2021-07-12 07:53:20 +00:00
Coleen Phillimore
ac75a53fc5 8253779: Amalloc may be wasting space by overaligning
Reviewed-by: kbarrett, stuefe
2021-07-11 18:15:59 +00:00
Serguei Spitsyn
3d82b0e634 8269558: fix of JDK-8252657 missed to update history at the end of JVM TI spec
Reviewed-by: dcubed, cjplummer
2021-07-11 11:03:35 +00:00
Phil Race
254600658a 8270216: [macOS] Update named used for Java run loop mode
Reviewed-by: serb
2021-07-10 19:12:59 +00:00
Yasumasa Suenaga
68b6e11e48 8270083: -Wnonnull errors happen with GCC 11.1.1
Reviewed-by: erikj, dlong, kbarrett
2021-07-10 05:01:23 +00:00
Jesper Wilhelmsson
ec975c6a05 Merge 2021-07-10 01:23:18 +00:00
Ioi Lam
d6c0f5fa22 8270059: Remove KVHashtable
Reviewed-by: dholmes, coleenp
2021-07-09 19:29:13 +00:00
Alexandre Iline
7bfa39f59a 8270108: Update JCov version to 3.0.9
Reviewed-by: serb, erikj
2021-07-09 18:29:39 +00:00
Zhengyu Gu
e4c24f01ef 8270171: Shenandoah: Cleanup TestStringDedup and TestStringDedupStress tests
Reviewed-by: shade
2021-07-09 17:34:34 +00:00
Jonathan Gibbons
3588634d54 8268420: new Reporter method to report a diagnostic within a DocTree node
Reviewed-by: prappo
2021-07-09 16:14:29 +00:00
Jonathan Gibbons
5a74291013 8266565: Spec of ForwardingJavaFileManager/ForwardingFileObject/ForwardingJavaFileObject methods should mention delegation instead of being copied
Reviewed-by: vromero
2021-07-09 14:52:37 +00:00
Roger Riggs
6889a39a3f 8268826: Cleanup Override in Context-Specific Deserialization Filters
Reviewed-by: dfuchs, bchristi
2021-07-09 14:33:56 +00:00
Christian Hagedorn
f791fdf23e 8261147: C2: Node is wrongly marked as reduction resulting in a wrong execution due to wrong vector instructions
Reviewed-by: thartmann, kvn
2021-07-09 11:53:45 +00:00
Jan Lahoda
1196b35684 8270151: IncompatibleClassChangeError on empty pattern switch statement case
Reviewed-by: mcimadamore
2021-07-09 11:03:40 +00:00
Albert Mingkun Yang
3d193adbec 8270082: Remove unnecessary gc_timer null check in ReferenceProcessorPhaseTimes
Reviewed-by: tschatzl, kbarrett
2021-07-09 10:03:10 +00:00
Jan Lahoda
885f7b1141 8269146: Missing unreported constraints on pattern and other case label combination
8269301: Switch statement with a pattern, constant and default label elements crash javac

Reviewed-by: mcimadamore
2021-07-09 08:03:56 +00:00
Aleksey Shipilev
676f1d76ca 8270094: Shenandoah: Provide human-readable labels for test configurations
Reviewed-by: zgu
2021-07-09 07:54:40 +00:00
Thomas Schatzl
c93204ce3d 8269914: Factor out heap printing for G1 young and full gc
8270018: Add scoped object for g1 young gc JFR notification

Reviewed-by: ayang, iwalulya, kbarrett
2021-07-09 06:51:09 +00:00
Jatin Bhateja
62ff55d383 8269952: compiler/vectorapi/VectorCastShape*Test.java tests failed on avx2 machines
Reviewed-by: kvn, dlong
2021-07-09 03:20:59 +00:00
Mikhailo Seledtsov
46c610cbd8 8269840: Update Platform.isDefaultCDSArchiveSupported() to return true for aarch64 platforms
Reviewed-by: minqi, iklam
2021-07-09 01:55:33 +00:00
Jesper Wilhelmsson
dfd6b2be7d Merge 2021-07-08 23:21:00 +00:00
Jonathan Gibbons
6401633800 8269722: NPE in HtmlDocletWriter
Reviewed-by: hannesw
2021-07-08 20:23:02 +00:00
Daniel D. Daugherty
9acb2a69a9 8270109: ProblemList 4 SA tests on macOS-aarch64
Reviewed-by: mikael
2021-07-08 19:23:21 +00:00
Brian Burkhalter
f46a917270 6766844: ByteArrayInputStream#read with a byte array of length 0 not consistent with InputStream when at EOF
Reviewed-by: naoto, lancea, joehw
2021-07-08 19:05:29 +00:00
Anthony Scarpino
5832882492 8269827: JMH tests for AES/GCM byte[] and bytebuffers
Reviewed-by: ecaspole, weijun
2021-07-08 17:19:46 +00:00
Alexey Bakhtin
6f171b9f0d 8268965: TCP Connection Reset when connecting simple socket to SSL server
Reviewed-by: xuelei
2021-07-08 16:44:55 +00:00
Aleksey Shipilev
4f322a9b6c 8270096: Shenandoah: Optimize gc/shenandoah/TestRefprocSanity.java for interpreter mode
Reviewed-by: zgu
2021-07-08 16:42:03 +00:00
Coleen Phillimore
bca570c56e 8269962: SA has unused Hashtable, Dictionary classes
Reviewed-by: cjplummer, iklam, dholmes
2021-07-08 14:28:32 +00:00
Guoxiong Li
9e75f922b1 8269738: AssertionError when combining pattern matching and function closure
Reviewed-by: jlahoda, vromero
2021-07-08 14:15:07 +00:00
Jatin Bhateja
168af2e6b2 8269828: corrections in some instruction patterns for KNL x86 platform
Reviewed-by: kvn, dlong
2021-07-08 12:19:19 +00:00
Jan Lahoda
fa08cc62df 8268766: Desugaring of pattern matching enum switch should be improved
Reviewed-by: mcimadamore, psandoz
2021-07-08 11:56:53 +00:00
Albert Mingkun Yang
4a45d95719 8270021: Incorrect log decorators in gc/g1/plab/TestPLABEvacuationFailure.java
Reviewed-by: tschatzl, iwalulya
2021-07-08 10:39:44 +00:00
Jan Lahoda
30bba54b97 8270064: Problem list tools/jdeprscan/tests/jdk/jdeprscan/TestRelease.java due to JDK-8270060
Reviewed-by: mcimadamore
2021-07-08 10:37:27 +00:00
sunguoyun
2c883eeed4 8267982: Set the node after peephole optimization to be removed
Reviewed-by: kvn, thartmann
2021-07-08 09:12:35 +00:00
Jan Lahoda
4f70759175 8270006: Switches with 'case null:' should be exhaustive
Reviewed-by: vromero
2021-07-08 08:03:09 +00:00
Roland Westrelin
8f798b8222 8269746: C2: assert(!in->is_CFG()) failed: CFG Node with no controlling input?
Reviewed-by: chagedorn, thartmann
2021-07-08 07:25:21 +00:00
Lin Zang
4fbcce119b 8269886: Inaccurate error message for compressed hprof test
Reviewed-by: dholmes, cjplummer
2021-07-08 06:30:24 +00:00
Albert Mingkun Yang
a96012f958 8269803: G1: remove unnecessary NoRefDiscovery
Reviewed-by: tschatzl, kbarrett
2021-07-08 06:15:30 +00:00
Thejasvi Voniadka
4e18ec26dd 8269993: [Test]: java/net/httpclient/DigestEchoClientSSL.java contains redundant @run tags
Reviewed-by: dfuchs, vtewari
2021-07-08 06:01:31 +00:00
TatWai Chong
e54585be57 8268363: AArch64: Implement string_indexof_char intrinsic in SVE
Reviewed-by: aph, njian
2021-07-08 02:29:17 +00:00
Jesper Wilhelmsson
270fbcb3f5 Merge 2021-07-08 00:55:53 +00:00
Roger Riggs
c812bbbe8f 8269929: (test) Add diagnostic info to ProceessBuilder/Basic.java for unexpected output
Reviewed-by: iris, bpb, naoto
2021-07-07 21:46:11 +00:00
Yumin Qi
f741e4ca74 8264735: Make dynamic dump repeatable
Reviewed-by: ccheung, iklam
2021-07-07 19:41:45 +00:00
Alexey Semenyuk
6000950b33 8269185: Directories in /opt/runtimepackagetest and /path/to/jdk-17 are different
Reviewed-by: almatvee, herrick
2021-07-07 16:57:07 +00:00
Brian Burkhalter
d1cecaaa22 8269481: SctpMultiChannel never releases own file descriptor
Reviewed-by: alanb, chegar
2021-07-07 15:49:21 +00:00
Daniel D. Daugherty
2209e3ec65 8270027: ProblemList jdk/jfr/event/oldobject/TestObjectSize.java on macOS-x64
Reviewed-by: mgronlun
2021-07-07 14:05:56 +00:00
Martin Doerr
1f2bf1d194 8269879: [PPC64] C2: Math.rint intrinsic uses wrong rounding mode
Reviewed-by: lucy, goetz
2021-07-07 12:52:18 +00:00
Coleen Phillimore
2dc5486415 8267303: Replace MinObjectAlignmentSize usages for non-Java heap objects
Reviewed-by: kbarrett, tschatzl, minqi
2021-07-07 12:46:07 +00:00
Coleen Phillimore
3586a233a4 8268635: Corrupt oop in ClassLoaderData
Reviewed-by: iklam, dholmes
2021-07-07 12:40:34 +00:00
Zhengyu Gu
bffb1a7199 8269923: runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java failed with "FATAL ERROR in native method: Primitive type array expected but not received for JNI array operation"
Reviewed-by: dcubed, dholmes
2021-07-07 11:47:02 +00:00
Jorn Vernee
77a5b7b27e 8269761: idea.sh missing .exe suffix when invoking javac on WSL
Reviewed-by: mcimadamore, erikj
2021-07-07 10:05:33 +00:00
Jan Lahoda
7fcd5ca025 8266036: class file for sun.misc.Contended not found
8258421: (jdeprscan) tools/jdeprscan/tests/jdk/jdeprscan/TestRelease.java failed with "error: cannot access jdk.internal.ValueBased"

Reviewed-by: darcy
2021-07-07 09:49:53 +00:00
Thomas Schatzl
248aa5014b 8269294: Verify_before/after_young_collection should execute all verification
Reviewed-by: iwalulya, kbarrett
2021-07-07 07:56:41 +00:00
Daniel Fuchs
a49b1dc704 8269772: [macos-aarch64] test compilation failed with "SocketException: No buffer space available"
Reviewed-by: chegar, vtewari
2021-07-07 07:50:45 +00:00
Thomas Schatzl
18b80c70f8 8269908: Move MemoryService::track_memory_usage call into G1MonitoringScope
Reviewed-by: ayang, kbarrett
2021-07-07 07:39:31 +00:00
Thomas Schatzl
a6850111ac 8269022: Put evacuation failure string directly into gc=info log message
Reviewed-by: iwalulya, lkorinth, kbarrett
2021-07-07 07:32:57 +00:00
Jan Lahoda
820f2900d8 8268859: jshell throws exception while parsing illegal "case true"
Reviewed-by: mcimadamore
2021-07-07 07:26:41 +00:00
Richard Reingruber
72530ef666 8269574: C2: Avoid redundant uncommon traps in GraphKit::builtin_throw() for JVMTI exception events
Reviewed-by: kvn, roland, neliasso
2021-07-07 07:17:24 +00:00
Jan Lahoda
815e4af35d 8269802: javac fails to compile nested pattern matching switches
8269808: javac generates class with invalid stack map

Reviewed-by: mcimadamore
2021-07-07 06:24:58 +00:00
Chris Plummer
2daf39a59b 8269830: SA's vm object vtable matching code sometimes matches on incorrect type
Reviewed-by: kevinw, sspitsyn
2021-07-07 02:32:25 +00:00
Nick Gasson
3d090e7ee5 8267625: AARCH64: typo in LIR_Assembler::emit_profile_type
Reviewed-by: aph, dlong
2021-07-07 01:47:11 +00:00
Yi Yang
a9e201016d 8268425: Show decimal nid of OSThread instead of hex format one
Reviewed-by: stuefe, kevinw
2021-07-07 01:37:50 +00:00
Vicente Romero
01c29d8f2c 8266407: remove jdk.internal.javac.PreviewFeature.Feature.SEALED_CLASSES
Reviewed-by: jlahoda
2021-07-06 23:06:00 +00:00
Jesper Wilhelmsson
7a4f08ae32 Merge 2021-07-06 23:00:31 +00:00
Yumin Qi
e8206dbb17 8263538: SharedArchiveConsistency.java should test -Xshare:auto as well
Reviewed-by: iklam, ccheung
2021-07-06 22:27:13 +00:00
Ioi Lam
0ebf8aa9d7 8268778: CDS check_excluded_classes needs DumpTimeTable_lock
Reviewed-by: minqi, ccheung
2021-07-06 22:21:06 +00:00
Vladimir Kozlov
0d1cd3a745 8269825: [TESTBUG] Missing testing for x86 KNL platforms
Reviewed-by: dlong, jbhateja
2021-07-06 21:52:23 +00:00
Vladimir Kozlov
e0c130f484 8269955: ProblemList compiler/vectorapi/VectorCastShape[64|128]Test.java tests on x86
Reviewed-by: iignatyev, dlong
2021-07-06 21:30:48 +00:00
Daniel D. Daugherty
4dfcf53a8b 8269935: ProblemList runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java on windows
Reviewed-by: jjg
2021-07-06 17:00:55 +00:00
Eric Liu
1166ef25e9 8268966: AArch64: 'bad AD file' in some vector conversion tests
Reviewed-by: aph
2021-07-06 15:59:04 +00:00
Patrick Concannon
1578979df7 8269917: Insert missing commas in copyrights in java.net
Reviewed-by: chegar, dfuchs
2021-07-06 15:10:58 +00:00
Mandy Chung
3a69024033 8225667: Clarify the behavior of System::gc w.r.t. reference processing
Reviewed-by: rriggs, kbarrett, tschatzl
2021-07-06 14:59:42 +00:00
Patrick Concannon
326b2e1344 8253119: Remove the legacy PlainSocketImpl and PlainDatagramSocketImpl implementation
Reviewed-by: alanb, dfuchs, chegar
2021-07-06 13:46:02 +00:00
Julia Boes
f485171ce8 8269692: sun.net.httpserver.ServerImpl::createContext should throw IAE
Reviewed-by: dfuchs
2021-07-06 13:29:40 +00:00
Zhengyu Gu
16aa8cbf8d 8269697: JNI_GetPrimitiveArrayCritical() should not accept object array
Reviewed-by: kbarrett, dholmes
2021-07-06 12:25:11 +00:00
Aleksei Voitylov
e47803a84f 8266310: deadlock between System.loadLibrary and JNI FindClass loading another class
Reviewed-by: dholmes, plevart, chegar, mchung
2021-07-06 11:15:10 +00:00
Xiaohong Gong
2b20778225 8269568: JVM crashes when running VectorMask query tests
Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org>
Reviewed-by: psandoz, jiefu, jbhateja, sviswanathan
2021-07-06 08:17:27 +00:00
Kim Barrett
0f4e07b7d9 8269661: JNI_GetStringCritical does not lock char array
8269650: Optimize gc-locker in [Get|Release]StringCritical for latin string

Reviewed-by: dholmes, tschatzl
2021-07-06 07:40:56 +00:00
Roland Westrelin
df1364b508 8269575: C2: assert(false) failed: graph should be schedulable after JDK-8252372
Reviewed-by: kvn, thartmann
2021-07-06 07:03:08 +00:00
Roland Westrelin
6d8fc7249a 8268883: C2: assert(false) failed: unscheduable graph
Reviewed-by: chagedorn, kvn, yyang
2021-07-06 06:47:45 +00:00
Tobias Hartmann
4ad8b04421 8268369: SIGSEGV in PhaseCFG::implicit_null_check due to missing null check
Reviewed-by: chagedorn, kvn
2021-07-06 05:44:59 +00:00
David Holmes
20eba35515 8269882: stack-use-after-scope in NewObjectA
Reviewed-by: kbarrett
2021-07-06 02:20:14 +00:00
Yi Yang
df0e11bb0c 8269672: C1: Remove unaligned move on all architectures
Co-authored-by: Martin Doerr <mdoerr@openjdk.org>
Reviewed-by: thartmann
2021-07-06 02:13:04 +00:00
Yi Yang
2926769800 8267956: C1 code cleanup
Reviewed-by: thartmann
2021-07-06 02:11:56 +00:00
Magnus Ihse Bursie
acc3d99535 8268860: Windows-Aarch64 build is failing in GitHub actions
Reviewed-by: dholmes
2021-07-06 00:28:40 +00:00
Jesper Wilhelmsson
a18a112963 Merge 2021-07-06 00:12:23 +00:00
Erik Gahlin
5b8e1a266e 8266595: jdk/jfr/jcmd/TestJcmdDump.java with slowdebug bits fails with AttachNotSupportedException
Reviewed-by: mseledtsov, dholmes
2021-07-05 15:18:47 +00:00
Jaikiran Pai
fd4de1ed40 8233020: (fs) UnixFileSystemProvider should use StaticProperty.userDir().
Reviewed-by: alanb
2021-07-05 13:54:30 +00:00
Jorn Vernee
76783cd8cb 8269760: idea.sh should not invoke cygpath directly
Reviewed-by: mcimadamore, erikj
2021-07-05 10:24:31 +00:00
Jorn Vernee
73198968e2 8269758: idea.sh doesn't work when there are multiple configurations available.
Reviewed-by: mcimadamore, erikj
2021-07-05 10:18:28 +00:00
James Fuller
164eff8c8a 8263389: IGV: Zooming changes the point that is currently centered
Reviewed-by: rrich, neliasso
2021-07-05 09:59:18 +00:00
Sergei Ustimenko
371d996a89 8269700: source level for IntelliJ JDK project is set incorrectly
Reviewed-by: mcimadamore
2021-07-05 09:09:23 +00:00
Patrick Concannon
8a7b380ebb 8269124: Update java.time to use switch expressions (part II)
Reviewed-by: dfuchs, vtewari, aefimov, iris, lancea, naoto
2021-07-05 09:08:13 +00:00
Severin Gehwolf
e14801cdd9 8269668: [aarch64] java.library.path not including /usr/lib64
Reviewed-by: aph, dholmes
2021-07-05 08:01:51 +00:00
Thomas Schatzl
675a9520b2 8269821: Remove is-queue-active check in inner loop of write_ref_array_pre_work
Reviewed-by: ayang, kbarrett
2021-07-05 07:24:10 +00:00
Ioi Lam
4da52eaf53 8269004: Implement ResizableResourceHashtable
Reviewed-by: coleenp, kbarrett
2021-07-05 02:29:23 +00:00
David Holmes
390d1025ca 8269652: Factor out the common code for creating system j.l.Thread objects
Reviewed-by: coleenp, dcubed, kvn, xliu
2021-07-04 21:58:16 +00:00
Jesper Wilhelmsson
17f53f2f9c Merge 2021-07-02 20:50:11 +00:00
Ian Graves
0d0f6a4bec 8268664: The documentation of the Scanner.hasNextLine is incorrect
Reviewed-by: rriggs, bpb, iris
2021-07-02 19:46:54 +00:00
Alexander Zuev
97e0e9e73d 8268775: Password is being converted to String in AccessibleJPasswordField
Reviewed-by: prr
2021-07-02 19:37:15 +00:00
Brian Burkhalter
cb795893be 8188046: java.lang.Math.mutliplyHigh does not run in constant time
Reviewed-by: rriggs, darcy
2021-07-02 18:21:39 +00:00
Brian Burkhalter
ca4bea4665 8188044: We need Math.unsignedMultiplyHigh
Reviewed-by: rriggs, aph, darcy
2021-07-02 18:15:35 +00:00
Coleen Phillimore
3d84398d12 8268364: jmethod clearing should be done during unloading
Reviewed-by: dcubed, eosterlund
2021-07-02 18:04:45 +00:00
Mikael Vidstedt
1c18f91438 8269768: JFR Terminology Refresh
Reviewed-by: iignatyev, egahlin
2021-07-02 17:58:12 +00:00
Sandhya Viswanathan
6f0e8e79aa 8269775: compiler/codegen/ClearArrayTest.java failed with "assert(false) failed: bad AD file"
Reviewed-by: kvn, dlong
2021-07-02 15:33:07 +00:00
Christoph Göttschkes
53ad903a82 8269135: TestDifferentProtectionDomains runs into timeout in client VM
Reviewed-by: dholmes, dcubed
2021-07-02 15:16:31 +00:00
Weijun Wang
c4ea13edd0 8269543: The warning for System::setSecurityManager should only appear once for each caller
Reviewed-by: lancea, alanb, dfuchs
2021-07-02 14:31:50 +00:00
Albert Mingkun Yang
f8bcbf0172 8269596: Snapshot soft ref policy before marking/copying
Reviewed-by: tschatzl, kbarrett
2021-07-02 09:19:58 +00:00
Christian Hagedorn
2db9005c07 8262017: C2: assert(n != __null) failed: Bad immediate dominator info.
Reviewed-by: roland, neliasso, kvn
2021-07-02 07:43:57 +00:00
Nils Eliasson
7bc96dbc02 8269771: assert(tmp == _callprojs.fallthrough_catchproj) failed: allocation control projection
Reviewed-by: rbackman, kvn
2021-07-02 07:17:55 +00:00
David Holmes
4107dcf6ec 8269466: Factor out the common code for initializing and starting internal VM JavaThreads
Reviewed-by: sspitsyn, pchilanomate, dcubed, coleenp, kvn
2021-07-02 04:29:47 +00:00
Jamsheed Mohammed C M
5644c4f942 8265132: C2 compilation fails with assert "missing precedence edge"
Reviewed-by: iveresov, kvn
2021-07-02 04:26:09 +00:00
miao zheng
2baf498eb5 8269743: test/hotspot/jtreg/vmTestbase/vm/mlvm/meth/stress/jni/nativeAndMH/Test.java crash with small heap (-Xmx50m)
Reviewed-by: dholmes
2021-07-02 03:15:55 +00:00
Hamlin Li
589f084161 8269110: ZGC: Remove dead code in zBarrier
Reviewed-by: pliden
2021-07-02 01:30:41 +00:00
Jesper Wilhelmsson
b0e186792e Merge 2021-07-02 01:07:50 +00:00
Vladimir Kozlov
a4d2a9a77f 8269745: [JVMCI] restore original qualified exports to Graal
Reviewed-by: dnsimon, iveresov
2021-07-01 18:51:15 +00:00
Maurizio Cimadamore
e3773977cf 8268566: java/foreign/TestResourceScope.java timed out
Reviewed-by: jvernee
2021-07-01 16:28:48 +00:00
Vicente Romero
de61328d30 8225559: assertion error at TransTypes.visitApply
Reviewed-by: sadayapalam, jlahoda
2021-07-01 16:18:12 +00:00
Kim Barrett
6c76e77158 8260684: vmTestbase/gc/gctests/PhantomReference/phantom002/TestDescription.java timed out
Reviewed-by: pliden, lkorinth
2021-07-01 16:09:30 +00:00
Jatin Bhateja
4bbf11d4a9 8269580: assert(is_valid()) failed: invalid register (-1)
Reviewed-by: kvn, dlong
2021-07-01 15:08:43 +00:00
Naoto Sato
54dd510bd5 8269704: Typo in j.t.Normalizer.normalize()
Reviewed-by: joehw, prappo, iris
2021-07-01 12:08:21 +00:00
Jan Lahoda
a8385feb30 8269354: javac crashes when processing parenthesized pattern in instanceof
Reviewed-by: vromero
2021-07-01 10:10:03 +00:00
Julia Boes
82bfc5d45c 8268960: com/sun/net/httpserver/Headers.java: Ensure mutators normalize keys and disallow null for keys and values
Reviewed-by: chegar, dfuchs, michaelm
2021-07-01 09:56:22 +00:00
Maxim Kartashev
18f356a38e 8267307: Introduce new client property for XAWT: xawt.mwm_decor_title
Reviewed-by: azvegint, serb
2021-07-01 09:53:28 +00:00
Aleksey Shipilev
c16d1fc981 8269285: Crash/miscompile in CallGenerator::for_method_handle_inline after JDK-8191998
Reviewed-by: kvn, iveresov, vlivanov
2021-07-01 09:27:55 +00:00
Roland Westrelin
ad27d9b3ec 8269088: C2 fails with assert(!n->is_Store() && !n->is_LoadStore()) failed: no node with a side effect
Reviewed-by: kvn, iveresov, neliasso
2021-07-01 08:11:59 +00:00
Albert Mingkun Yang
54a9c3e39f 8133873: Simplify {Register,Unregister}NMethodOopClosure
Reviewed-by: tschatzl, kbarrett
2021-07-01 07:57:54 +00:00
Roland Westrelin
c67a7b039d 8269230: C2: main loop in micro benchmark never executed
Co-authored-by: Maurizio Cimadamore <mcimadamore@openjdk.org>
Reviewed-by: kvn, iveresov
2021-07-01 07:41:22 +00:00
Hannes Wallnöfer
962f1c1a9b 8262886: javadoc generates broken links with {@inheritDoc}
Reviewed-by: jjg
2021-07-01 07:25:39 +00:00
Jayathirth D V
f7ffd5872d 8267602: [macos] [lanai] java/awt/PrintJob/Text/stringwidth.sh doesn't exit on cancelling print dialog
Reviewed-by: aghaisas, serb
2021-07-01 03:01:30 +00:00
Denghui Dong
06d26208c5 8268298: jdk/jfr/api/consumer/log/TestVerbosity.java fails: unexpected log message
Reviewed-by: egahlin
2021-07-01 02:15:19 +00:00
Yi Yang
d89e630cdf 8266746: C1: Replace UnsafeGetRaw with UnsafeGet when setting up OSR entry block
Replace UnsafeGetRaw with UnsafeGetObject when setting up OSR entry block, and rename Unsafe{Get,Put}Object to Unsafe{Get,Put}

Reviewed-by: thartmann, dlong, mdoerr
2021-07-01 01:39:50 +00:00
Hamlin Li
4660f72c38 8268870: Remove dead code in metaspaceShared
Reviewed-by: tschatzl
2021-07-01 01:19:32 +00:00
Jesper Wilhelmsson
9def3b068e Merge 2021-07-01 01:01:34 +00:00
Liam Miller-Cushon
4930ae96d8 8268592: JDK-8262891 causes an NPE in Lint.augment
Reviewed-by: vromero
2021-07-01 00:16:23 +00:00
Mandy Chung
9ac63a6e08 8262841: Clarify the behavior of PhantomReference::refersTo
Reviewed-by: kbarrett, rriggs
2021-06-30 22:43:23 +00:00
Daniel D. Daugherty
aba6c55dac 8269703: ProblemList vmTestbase/nsk/jvmti/scenarios/sampling/SP07/sp07t002/TestDescription.java on Windows-X64 with -Xcomp
Reviewed-by: dholmes
2021-06-30 22:13:06 +00:00
Naoto Sato
3e022247d2 8269513: Clarify the spec wrt useOldISOCodes system property
Reviewed-by: lancea, bpb, iris, joehw
2021-06-30 22:11:58 +00:00
Joe Darcy
85262c7183 8268637: Update --release 17 symbol information for JDK 17 build 28
Reviewed-by: iris
2021-06-30 21:45:48 +00:00
Nils Eliasson
0dc65d3c74 8268897: [TESTBUG] compiler/compilercontrol/mixed/RandomCommandsTest.java must not fail on Command.quiet
Reviewed-by: kvn
2021-06-30 21:05:15 +00:00
Zhengyu Gu
5c08344b64 8269678: Remove unimplemented and unused os::bind_to_processor()
Reviewed-by: dcubed
2021-06-30 19:52:39 +00:00
Hannes Wallnöfer
3826012281 8268557: Module page uses unstyled table class
Reviewed-by: jjg
2021-06-30 18:40:17 +00:00
Daniel D. Daugherty
2b17e95e20 8269691: ProblemList sun/management/jdp/JdpDefaultsTest.java on Linux-aarch64
Reviewed-by: kvn, darcy
2021-06-30 17:39:22 +00:00
Christoph Göttschkes
1da5d4bb78 8269486: CallerAccessTest fails for non server variant
Reviewed-by: dholmes, stuefe, mchung, jvernee
2021-06-30 17:08:36 +00:00
Masanori Yano
83bce94cc8 8268457: XML Transformer outputs Unicode supplementary character incorrectly to HTML
Reviewed-by: lancea, naoto, iris, joehw
2021-06-30 16:25:40 +00:00
Andrew Haley
1810b1c2ad 8269516: AArch64: Assembler cleanups
Reviewed-by: ngasson, adinn
2021-06-30 13:59:39 +00:00
Aleksey Shipilev
a96012a7af 8261495: Shenandoah: reconsider update references memory ordering
Reviewed-by: zgu, rkennke
2021-06-30 13:32:32 +00:00
Martin Doerr
be0ac92e18 8269614: [s390] Interpreter checks wrong bit for slow path instance allocation
Reviewed-by: shade, rrich
2021-06-30 13:32:19 +00:00
Aleksey Shipilev
23d2996fee 8269478: Shenandoah: gc/shenandoah/mxbeans tests should be more resilient
Reviewed-by: rkennke
2021-06-30 13:22:38 +00:00
Doug Simon
a6b253d85c 8269416: [JVMCI] capture libjvmci crash data to a file
Reviewed-by: kvn, dholmes
2021-06-30 12:33:06 +00:00
Zhengyu Gu
4b4bef4e1e 8269594: assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark
Reviewed-by: coleenp, jvernee
2021-06-30 11:37:09 +00:00
Jan Lahoda
4ee400ae43 8268320: Better error recovery for broken patterns in switch
Reviewed-by: vromero
2021-06-30 09:47:22 +00:00
Thomas Schatzl
a0f32cb140 8268906: gc/g1/mixedgc/TestOldGenCollectionUsage.java assumes that GCs take 1ms minimum
Reviewed-by: kbarrett, ayang, lkorinth
2021-06-30 09:14:26 +00:00
Wang Huang
ca283c3ac0 8265907: JVM crashes when matching VectorMaskCmp Node
Co-authored-by: Wang Huang <whuang@openjdk.org>
Co-authored-by: Ai Jiaming <aijiaming1@huawei.com>
Reviewed-by: njian, jbhateja, sviswanathan, dlong, adinn
2021-06-30 08:52:27 +00:00
Jan Lahoda
c3c918928c 8269141: Switch statement containing pattern case label element gets in the loop during execution
Reviewed-by: vromero
2021-06-30 08:45:12 +00:00
Thomas Schatzl
ee0247f056 8263461: jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java uses wrong mechanism to cause evacuation failure
Reviewed-by: kbarrett, iwalulya, ayang
2021-06-30 08:05:44 +00:00
Leo Korinth
6b64a7956c 8268350: Remove assert that ensures thread identifier remains the same
Reviewed-by: tschatzl, kbarrett
2021-06-30 07:45:39 +00:00
Thomas Stuefe
3ad20fcdfa 8269571: NMT should print total malloc bytes and invocation count
Reviewed-by: zgu, xliu
2021-06-30 04:38:33 +00:00
Jatin Bhateja
90eb1189ae 8269528: VectorAPI Long512VectorTest fails on X86 KNL target
Reviewed-by: kvn, sviswanathan
2021-06-30 02:33:01 +00:00
Leonid Mesnik
b969136b9f 8245877: assert(_value != __null) failed: resolving NULL _value in JvmtiExport::post_compiled_method_load
Reviewed-by: sspitsyn, dholmes, coleenp
2021-06-30 02:05:25 +00:00
Jie Fu
a661686e1e 8269065: [REDO] vmTestbase/vm/mlvm/anonloader/stress/oome/metaspace/Test.java failed with OutOfMemoryError
Reviewed-by: stuefe, iignatyev
2021-06-30 01:25:28 +00:00
Jesper Wilhelmsson
ee526a2ea8 Merge 2021-06-30 01:19:39 +00:00
Sean Coffey
0d745ae8fd 8269034: AccessControlException for SunPKCS11 daemon threads
Reviewed-by: valeriep
2021-06-29 22:52:45 +00:00
Christoph Langer
d042029509 8269529: javax/swing/reliability/HangDuringStaticInitialization.java fails in Windows debug build
Reviewed-by: serb, psadhukhan, pbansal
2021-06-29 21:02:06 +00:00
Calvin Cheung
1ac8deef4c 8269615: Fix for 8263640 broke Windows build
Reviewed-by: iklam, dcubed
2021-06-29 19:52:06 +00:00
Chris Plummer
7ca753bf0c 8269268: JDWP: Properly fix thread lookup assert in findThread()
Reviewed-by: kevinw, amenkov, sspitsyn
2021-06-29 18:45:52 +00:00
Chris Plummer
401cb0ad55 8269232: assert(!is_jweak(handle)) failed: wrong method for detroying jweak
Reviewed-by: rkennke, amenkov, sspitsyn, sgehwolf
2021-06-29 18:41:19 +00:00
Alex Menkov
7a23c9cbb7 8260540: serviceability/jdwp/AllModulesCommandTest.java failed with "Debuggee error: 'ERROR: transport error 202: bind failed: Address already in use'"
Reviewed-by: sspitsyn, kevinw
2021-06-29 18:39:42 +00:00
Nils Eliasson
b8a16e931b 8268884: C2: Compile::remove_speculative_types must iterate top-down
Reviewed-by: roland, kvn
2021-06-29 18:38:25 +00:00
Calvin Cheung
c1e2a29448 8263640: hs_err improvement: handle class path longer than O_BUFLEN
Reviewed-by: iklam, minqi, dholmes
2021-06-29 17:57:15 +00:00
Man Cao
bb42d75161 8269417: Minor clarification on NonblockingQueue utility
Reviewed-by: kbarrett, iwalulya
2021-06-29 17:03:35 +00:00
Patricio Chilano Mateo
e238cbd596 8269530: runtime/ParallelLoad/ParallelSuperTest.java timeout
Reviewed-by: dholmes, coleenp
2021-06-29 14:35:13 +00:00
Jonathan Gibbons
25f9f19af9 8249646: Runtime.exec(String, String[], File) documentation contains literal {@link ...}
Reviewed-by: sundar, iris
2021-06-29 14:31:01 +00:00
Thomas Schatzl
3f2c372396 8269126: Rename G1AllowPreventiveGC option to G1UsePreventiveGC
Reviewed-by: iwalulya, kbarrett
2021-06-29 14:16:21 +00:00
Zhengyu Gu
0d83dc2411 8268699: Shenandoah: Add test for JDK-8268127
Backport-of: e59acd9860
2021-06-29 12:29:06 +00:00
Jie Fu
7010dfdffa 8269517: compiler/loopopts/TestPartialPeelingSinkNodes.java crashes with -XX:+VerifyGraphEdges
Reviewed-by: kvn, dlong
2021-06-29 11:18:23 +00:00
Thomas Schatzl
fc0fd96a5f 8269126: Rename G1AllowPreventiveGC option to G1UsePreventiveGC
Reviewed-by: kbarrett, iwalulya
2021-06-29 08:34:55 +00:00
Andrew Haley
a97715755d 8261579: AArch64: Support for weaker memory ordering in Atomic
Reviewed-by: adinn, shade
2021-06-29 07:39:24 +00:00
Yumin Qi
ee1e202bc3 8268821: Split systemDictionaryShared.cpp
Reviewed-by: erikj, ccheung, iklam
2021-06-28 23:20:28 +00:00
Jesper Wilhelmsson
03d54e6ef1 Merge 2021-06-28 23:00:32 +00:00
Mandy Chung
56240690f6 8269426: Rename test/jdk/java/lang/invoke/t8150782 to accessClassAndFindClass
Reviewed-by: jvernee
2021-06-28 19:52:27 +00:00
Weijun Wang
e9b2c058a4 8269409: Post JEP 411 refactoring: core-libs with maximum covering > 10K
Reviewed-by: lancea, naoto
2021-06-28 19:05:33 +00:00
Xin Liu
09bb84685f 8267952: async logging supports to dynamically change tags and decorators
Reviewed-by: dholmes, phh
2021-06-28 18:17:45 +00:00
Daniel D. Daugherty
20640a57f3 8269534: Remove java/util/concurrent/locks/Lock/TimedAcquireLeak.java from ProblemList.txt
Reviewed-by: iignatyev, tschatzl
2021-06-28 17:30:41 +00:00
Alexey Semenyuk
efe8423d8c 8269403: Fix jpackage tests to gracefully handle jpackage app launcher crashes
Reviewed-by: almatvee, herrick
2021-06-28 16:55:20 +00:00
Vladimir Kozlov
8d09596f27 8269304: Regression ~5% in 2005 in b27
Reviewed-by: dlong, roland
2021-06-28 15:52:09 +00:00
Albert Mingkun Yang
d0d26f5c55 8269433: Remove effectively unused ReferenceProcessor::_enqueuing_is_done
Reviewed-by: kbarrett, tschatzl
2021-06-28 14:13:32 +00:00
Jim Laskey
e4c5446340 8268236: The documentation of the String.regionMatches method contains error
Reviewed-by: rriggs, dfuchs
2021-06-28 13:51:07 +00:00
Coleen Phillimore
29bc381da5 8268902: Testing for threadObj != NULL is unnecessary in suspend handshake
Reviewed-by: pchilanomate, dcubed
2021-06-28 13:13:32 +00:00
Albert Mingkun Yang
87ff27786b 8269222: Incorrect number of workers reported for reference processing
Reviewed-by: tschatzl, sangheki
2021-06-28 10:47:20 +00:00
Andrew Haley
4d2412ef3e 8269122: The use of "extern const" for Register definitions generates poor code
Reviewed-by: adinn, kbarrett, kvn
2021-06-28 09:14:41 +00:00
David Holmes
f45be1519e 8269003: Update the java manpage for JDK 18
Reviewed-by: minqi
2021-06-28 02:23:23 +00:00
Jesper Wilhelmsson
a29953d805 Merge 2021-06-27 23:51:05 +00:00
David Holmes
8bed35343d 8269261: The PlaceHolder code uses Thread everywhere but is always dealing with JavaThreads
Reviewed-by: ccheung, coleenp
2021-06-27 22:23:42 +00:00
Christoph Göttschkes
561a3a5077 8269129: Multiple tier1 tests in hotspot/jtreg/compiler are failing for client VMs
Reviewed-by: kvn, iveresov
2021-06-27 13:12:51 +00:00
Dean Long
d9cb068f4b 8258746: illegal access to global field _jvmci_old_thread_counters by terminated thread causes crash
Reviewed-by: dholmes, kvn
2021-06-26 20:07:04 +00:00
Mandy Chung
6eb734a60f 8266269: Lookup::accessClass fails with IAE when accessing an arrayClass with a protected inner class as component class
Reviewed-by: chegar, alanb
2021-06-26 18:27:28 +00:00
Mandy Chung
3d0d27ce57 8269351: Proxy::newProxyInstance and MethodHandleProxies::asInterfaceInstance should reject sealed interfaces
Reviewed-by: darcy, alanb
2021-06-26 16:46:57 +00:00
Alexander Zvegintsev
51a1299b68 8264125: Specification of Taskbar::getIconImage doesn't mention that the returned image might not be equal to the Taskbar::setIconImage one. (eg on Mac OS)
Reviewed-by: kizune, prr
2021-06-26 15:57:45 +00:00
Dongbo He
3b83bc1bc3 8268427: Improve AlgorithmConstraints:checkAlgorithm performance
Co-authored-by: GaofengZhang <zhanggaofeng9@huawei.com>
Reviewed-by: xuelei, ascarpino
2021-06-26 09:54:47 +00:00
Vladimir Kozlov
824a51693e 8269260: Add AVX512 and other SSE + AVX combinations testing for tests which generate vector instructions
Reviewed-by: iveresov, dlong
2021-06-25 22:48:56 +00:00
Alex Menkov
1404e4bf44 8269302: serviceability/dcmd/framework/InvalidCommandTest.java still fails after JDK-8268433
Reviewed-by: kevinw, dcubed
2021-06-25 22:10:48 +00:00
Alexander Matveev
fb0a95fed4 8269036: tools/jpackage/share/AppImagePackageTest.java failed with "hdiutil: create failed - Resource busy"
Reviewed-by: asemenyuk, herrick
2021-06-25 21:27:35 +00:00
Brian Burkhalter
68ef21db41 4847239: (spec) File.createTempFile() should make it clear that it doesn't create the temporary directory
Reviewed-by: naoto, lancea
2021-06-25 19:08:35 +00:00
Brian Burkhalter
3fae4b3720 6633375: FileOutputStream_md.c should be merged into FileOutputStream.c
Reviewed-by: naoto
2021-06-25 19:07:39 +00:00
Brian Burkhalter
5ebed06e8a 8269074: (fs) Files.copy fails to copy from /proc on some linux kernel versions
Reviewed-by: alanb, vtewari
2021-06-25 19:06:42 +00:00
Joe Wang
d799563ac0 8256919: BCEL: Utility.encode forget to close
Reviewed-by: lancea, bpb, naoto
2021-06-25 18:42:07 +00:00
Sandhya Viswanathan
1e3b418a53 8269335: Unable to load svml library
Reviewed-by: psandoz
2021-06-25 18:31:18 +00:00
Naoto Sato
223759fb8a 8266901: Clarify the method description of Duration.toDaysPart()
Reviewed-by: bpb, rriggs, lancea, iris, scolebourne
2021-06-25 18:25:57 +00:00
Patrick Concannon
35c4702055 8268967: Update java.security to use switch expressions
Reviewed-by: xuelei
2021-06-25 16:34:18 +00:00
Thomas Stuefe
b565459f83 8267138: Stray suffix when starting gtests via GTestWrapper.java
Reviewed-by: shade
2021-06-25 16:33:19 +00:00
Patrick Concannon
1d167978e5 8268469: Update java.time to use switch expressions
Reviewed-by: lancea, naoto, dfuchs, iris, chegar
2021-06-25 15:42:38 +00:00
Jan Lahoda
4eb321298a 8268871: Adjust javac to updated exhaustiveness specification
Reviewed-by: vromero
2021-06-25 09:52:06 +00:00
Markus Grönlund
ffa34ed429 8265919: RunThese30M fails "assert((!(((((JfrTraceIdBits::load(value)) & ((1 << 4) << 8)) != 0))))) failed: invariant"
Reviewed-by: egahlin
2021-06-25 09:41:23 +00:00
Ludovic Henry
fdcae6653c 8269092: Add OldObjectSampleEvent.allocationSize field
Reviewed-by: egahlin, jbachorik
2021-06-25 08:30:30 +00:00
Denghui Dong
fd43d9cb40 8269225: JFR.stop misses the written info when the filename is only specified by JFR.start
Reviewed-by: egahlin
2021-06-25 08:15:34 +00:00
Aleksey Shipilev
3a8f3d6cac 8269280: (bf) Replace StringBuffer in *Buffer.toString()
Reviewed-by: alanb, chegar, bpb
2021-06-25 08:08:10 +00:00
Scott Gibbons
c37988d079 8268276: Base64 Decoding optimization for x86 using AVX-512
Reviewed-by: erikj, sviswanathan, kvn
2021-06-25 03:19:48 +00:00
David Holmes
08ee7ae672 8268855: Cleanup name handling in the Thread class and subclasses
Reviewed-by: lfoltan, coleenp
2021-06-24 23:58:32 +00:00
Zhengyu Gu
c79034e0c9 8269303: Remove unnecessary forward declaration of PSPromotionManager in cpCache.hpp
Reviewed-by: kbarrett
2021-06-24 21:02:16 +00:00
Coleen Phillimore
42968db173 8269293: ObjectMonitor thread id fields should be 64 bits.
Reviewed-by: mgronlun, dcubed
2021-06-24 19:34:17 +00:00
Patricio Chilano Mateo
2fd7943ec1 8256425: Obsolete Biased Locking in JDK 18
Reviewed-by: kvn, dholmes, dcubed, rrich
2021-06-24 18:54:41 +00:00
Christoph Göttschkes
595446bff4 8269087: CheckSegmentedCodeCache test fails in an emulated-client VM
Reviewed-by: iveresov, kvn
2021-06-24 16:49:45 +00:00
Yumin Qi
7c31903dd3 8267075: jcmd VM.cds should print directory of the output files
Reviewed-by: ccheung
2021-06-24 14:52:47 +00:00
Aleksey Shipilev
e515873f88 8269216: Useless initialization in com/sun/crypto/provider/PBES2Parameters.java
Reviewed-by: valeriep
2021-06-24 06:36:30 +00:00
Alex Menkov
51d915979c 8236212: CompiledMethodLoad and CompiledMethodUnload events can be posted in START phase
Reviewed-by: sspitsyn, cjplummer
2021-06-24 00:29:36 +00:00
Alex Menkov
280f2d57d1 8268433: serviceability/dcmd/framework/VMVersionTest.java fails with Unable to send object throw not established PipeIO Listener Thread connection
Reviewed-by: sspitsyn, cjplummer
2021-06-24 00:28:45 +00:00
Coleen Phillimore
f375916417 8269186: [REDO] Remove CodeCache::mark_for_evol_deoptimization() method
Reviewed-by: hseigel, lfoltan, sspitsyn
2021-06-23 21:11:06 +00:00
Mahendra Chhipa
7621fa37ef 8268464: Remove dependancy of TestHttpsServer, HttpTransaction, HttpCallback from open/test/jdk/sun/net/www/protocol/https/ tests
Reviewed-by: dfuchs, michaelm
2021-06-23 15:19:10 +00:00
Coleen Phillimore
f3ba2690c5 8256306: ObjectMonitor::_contentions field should not be 'jint'
Reviewed-by: dholmes, stuefe, dcubed
2021-06-23 14:27:31 +00:00
Coleen Phillimore
52d5d1b361 8269188: [BACKOUT] Remove CodeCache::mark_for_evol_deoptimization() method
Reviewed-by: dholmes, sspitsyn
2021-06-23 14:26:30 +00:00
Harold Seigel
f2e690e0ee 8268720: Unspecified checks on NameAndType constants should not be performed
Reviewed-by: dholmes, lfoltan
2021-06-23 12:11:37 +00:00
miao zheng
2c29d790ca 8269206: A small typo in comment in test/lib/sun/hotspot/WhiteBox.java
Reviewed-by: dholmes
2021-06-23 08:51:35 +00:00
Aleksey Shipilev
6237630664 8269120: Build failure with GCC 6.3.0 after JDK-8017163
Reviewed-by: iwalulya, tschatzl, kbarrett
2021-06-23 07:03:51 +00:00
Thomas Schatzl
a5e4307050 8269134: Remove sparsePRT.inline.hpp after JDK-8017163
Reviewed-by: iwalulya, kbarrett
2021-06-23 06:51:53 +00:00
Aleksey Shipilev
17daf32a07 8269138: Move typeArrayOop.inline.hpp include to vectorSupport.cpp
Reviewed-by: stefank, vlivanov
2021-06-23 06:27:40 +00:00
Joshua Zhu
36d82b6ef1 8268858: Determine register pressure automatically by the number of available registers for allocation
Reviewed-by: kvn, dlong
2021-06-23 03:54:00 +00:00
miao zheng
ae3eedce9d 8268727: Remove unused slowpath locking method in OptoRuntime
Reviewed-by: dlong
2021-06-23 02:45:58 +00:00
Guoxiong Li
cd678a383f 8268368: Adopt cast notation for JavaThread conversions
Reviewed-by: dholmes, stefank
2021-06-23 02:21:24 +00:00
Jesper Wilhelmsson
b6cfca8a89 Merge 2021-06-23 01:05:44 +00:00
Kim Barrett
0c693e2f03 8268290: Improve LockFreeQueue<> utility
Reviewed-by: iwalulya, tschatzl
2021-06-22 17:43:59 +00:00
Coleen Phillimore
33c23a1cf2 8264941: Remove CodeCache::mark_for_evol_deoptimization() method
Reviewed-by: kvn, vlivanov, sspitsyn
2021-06-22 16:09:17 +00:00
Matthias Baesken
18a1dd261c 8269031: linux x86_64 check for binutils 2.25 or higher after 8265783
Reviewed-by: ihse, erikj
2021-06-22 13:28:41 +00:00
Yi Yang
2e639dd34a 8267657: Add missing PrintC1Statistics before incrementing counters
Reviewed-by: iveresov
2021-06-22 08:30:08 +00:00
Denghui Dong
1f0ea7c3d6 8268857: Merge VM_PrintJNI and VM_PrintThreads and remove the unused field 'is_deadlock' of DeadlockCycle
Reviewed-by: dholmes
2021-06-22 08:28:18 +00:00
Stefan Karlsson
1a818154cf 8269077: TestSystemGC uses "require vm.gc.G1" for large pages subtest
Reviewed-by: tschatzl, kbarrett
2021-06-22 07:44:25 +00:00
Jesper Wilhelmsson
0458113c6b Merge 2021-06-21 23:09:01 +00:00
Thomas Schatzl
cd20c01942 8268458: Add verification type for evacuation failures
Reviewed-by: kbarrett, iwalulya
2021-06-21 11:12:29 +00:00
Thomas Schatzl
a58c477c49 8268952: Automatically update heap sizes in G1MonitoringScope
Reviewed-by: kbarrett, iwalulya
2021-06-21 11:11:14 +00:00
Christoph Göttschkes
cbec37d45d 8269029: compiler/codegen/TestCharVect2.java fails for client VMs
Reviewed-by: kvn, jiefu
2021-06-21 11:08:33 +00:00
Thomas Schatzl
1692fd2eba 8017163: G1: Refactor remembered sets
8048504: G1: Investigate replacing the coarse and fine grained data structures in the remembered sets
6949259: G1: Merge sparse and fine remembered set hash tables

Co-authored-by: Ivan Walulya <iwalulya@openjdk.org>
Co-authored-by: Thomas Schatzl <tschatzl@openjdk.org>
Reviewed-by: sjohanss, iwalulya
2021-06-21 10:06:05 +00:00
Joel Borggrén-Franck
0b8a0e2b58 8266082: AssertionError in Annotate.fromAnnotations with -Xdoclint
Reviewed-by: vromero
2021-06-21 08:39:35 +00:00
Jesper Wilhelmsson
b7d78a5b66 Merge 2021-06-18 23:04:20 +00:00
Boris Ulasevich
8f2456e5b0 8267042: bug in monitor locking/unlocking on ARM32 C1 due to uninitialized BasicObjectLock::_displaced_header
Co-authored-by: Chris Cole <chris@sageembedded.com>
Reviewed-by: dsamersoff
2021-06-18 16:25:25 +00:00
Albert Mingkun Yang
5ae9a12858 8268964: Remove unused ReferenceProcessorAtomicMutator
Reviewed-by: tschatzl, pliden
2021-06-18 11:48:59 +00:00
Julia Boes
f4d20b215e 8268900: com/sun/net/httpserver/Headers.java: Fix indentation and whitespace
Reviewed-by: dfuchs, chegar, michaelm
2021-06-18 09:35:48 +00: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
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
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
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
Jesper Wilhelmsson
3637e50b30 Merge 2021-06-17 01:05:54 +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
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
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
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
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
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
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
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
Leonid Mesnik
2e70bc35df 8268626: Remove native pre-jdk9 support for jtreg failure handler
Reviewed-by: erikj
2021-06-14 19:35:24 +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
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
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
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
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
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
Calvin Cheung
4fd2a14997 8267556: Enhance class paths check during runtime
Reviewed-by: minqi, iklam
2021-06-10 19:50:44 +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
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
6928 changed files with 364123 additions and 125514 deletions

View File

@@ -10,7 +10,7 @@ on:
platforms:
description: "Platform(s) to execute on"
required: true
default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows x64, macOS x64"
default: "Linux additional (hotspot only), Linux x64, Linux x86, Windows aarch64, Windows x64, macOS x64"
jobs:
prerequisites:
@@ -22,6 +22,7 @@ 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 }}
@@ -38,6 +39,7 @@ 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'))) }}"
@@ -847,6 +849,94 @@ 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 cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- 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.29.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.29
--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"
@@ -883,7 +973,7 @@ jobs:
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
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Checkout the source
uses: actions/checkout@v2
@@ -1055,7 +1145,7 @@ jobs:
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
Start-Process -FilePath "$HOME\cygwin\setup-x86_64.exe" -ArgumentList "--quiet-mode --packages cygwin=3.2.0-1,autoconf,make,zip,unzip --root $HOME\cygwin\cygwin64 --local-package-dir $HOME\cygwin\packages --site http://mirrors.kernel.org/sourceware/cygwin --no-desktop --no-shortcuts --no-startmenu --no-admin" -Wait -NoNewWindow
- name: Restore jtreg artifact
id: jtreg_restore
@@ -1571,6 +1661,7 @@ jobs:
needs:
- prerequisites
- linux_additional_build
- windows_aarch64_build
- linux_x64_test
- linux_x86_test
- windows_x64_test

4
.gitignore vendored
View File

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

664
.hgtags
View File

@@ -1,664 +0,0 @@
3cc80be736f24704e505ad8ddaa598dec3fa2ed3 jdk-9+181
e2b70be325bd10dae4c06f74c46d70d480854916 jdk-9+179
5b16a1c3ccffff2a82c88bb7ea894c4ff1c9ebde jdk-9+180
43bf6f30fcba031ecf0cc7e511efe3a8179d0f77 jdk-9+176
d9f6bc6ba599d0487dc18b2fbdb6c34eedf6f958 jdk-9+177
bc9df7dd63ec76f50fafeb4acc44465044662f0a jdk-9+178
994036e74ab805bcc09afa0646be17a725bec42f jdk-9+175
94680c6d60ecd9ed3ffd1847706efde7eb947afc jdk-9+174
6dd7fda42bab7ecf648cafb0a4e9b4ca11b3094f jdk-9+173
dad6746278facbbea57dd462cb56fb743dc0a5f0 jdk-9+172
643b5f18c2656fe91b69fea85b07b98d5fad394d jdk-9+171
898cbe31fbdae2d25d141384fac746cc244a730c jdk-9+170
c7efde2b60fc1ec04630be769d9ad60efb39c39c jdk-9+169
8fd0a4569191f33c98ee90c2709174a342fefb0d jdk-9+167
fcabc74bd44e56c7419d111d59b95669ecb33c55 jdk-9+168
d3e973f1809606c67412361041ad197e50fe8cec jdk-9+166
3965b747cfe1e6cbd66b8739da5a1ea6ec6985e9 jdk-9+165
d16aebbb56d37f12e0c0b0a4fb427db65e1fb1a8 jdk-9+162
18c41483a082e097ac2f5f983c1226ed94aa4215 jdk-9+163
32db52c675e7d5bc413605d2e89b68b608b19be0 jdk-9+164
fd1497902bbe3aa24b21f270ecdcb8de5f7aa9ac jdk-9+159
6aa8be0c4e054fe8b3ab016ae00d16d680f92145 jdk-9+160
f6883b1a5a6478437cd4181c4bd45328ab24feaf jdk-9+161
fa3e76b477829afc4476f0b725cfaa440a6fd917 jdk-9+157
b5015f742ba648184bb7fc547197bd33ebfde30d jdk-9+158
1cc8dd79fd1cd13d36b385196271a29632c67c3b jdk7-b24
bf2517e15f0c0f950e5b3143c4ca11e2df73dcc1 jdk7-b25
5ae7db536e3fcf6be78e45b240a9058095e0ed38 jdk7-b26
67052ac87fc927d048e62ec54ff42adb230d3f7c jdk7-b27
18dc4ba4739a537fd146f77da51db16efce28da2 jdk7-b28
bfe4572fd301a6fcd120373cdb2eff5d2da0c72c jdk7-b29
bee4731164a06ddece1297ae58db24aca6a1c626 jdk7-b30
cd8b8f500face60d1566d850857a7fccadbd383a jdk7-b31
a9f1805e3ba9ca520cad199d522c84af5433e85a jdk7-b32
6838c1a3296aaa3572364d2ce7d70826cee96286 jdk7-b33
90cf935adb353bb0af4b46fb0677e841fd24c000 jdk7-b34
6d909d5803e3a22850e6c4e5a75b888742ee7e20 jdk7-b35
d718a441936196b93d8bc9f084933af9a4c2a350 jdk7-b36
c2036bf76829c03b99108fffab52e20910a9be4f jdk7-b37
a2879b2837f5a4c87e9542efe69ef138194af8ff jdk7-b38
126f365cec6c3c2c72de934fa1c64b5f082b55b5 jdk7-b39
3c53424bbe3bb77e01b468b4b0140deec33e11fc jdk7-b40
3cb2a607c347934f8e7e86f840a094c28b08d9ea jdk7-b41
caf58ffa084568990cbb3441f9ae188e36b31770 jdk7-b42
41bd0a702bc8ec6feebd725a63e7c3227f82ab11 jdk7-b43
5843778bda89b1d5ac8e1aa05e26930ac90b3145 jdk7-b44
54dffad0bf066791a2793305875250c395011d5f jdk7-b45
04b2620edc72de93671646e4720c5992c74ac8b5 jdk7-b46
0c4657194eec95c08ba478aee9cfc3c295e41657 jdk7-b47
1bf51a4c2627c2f0e0cbcc2cf0421bdb37f1f2b2 jdk7-b48
6b84b04a80afe23262377c60913eebfc898f14c4 jdk7-b49
5da0e6b9f4f18ef483c977337214b12ee0e1fc8f jdk7-b50
a25c5ec5e40e07733d1ff9898a0abe36159288ff jdk7-b51
7a90e89e36d103038f8667f6a7daae34ecfa1ad8 jdk7-b52
d52186ee770dac57950536cd00ccbfdef360b04c jdk7-b53
15096652c4d48dfb9fc0b2cb135304db94c65ba0 jdk7-b54
c8b275d62d6b0a980c510e839b70292245863e85 jdk7-b55
a8134c4ee2cf451cf9b5e1609f39d83ecd53acc5 jdk7-b56
b44f05654c26fcd1f995e712992f9b07ffd7c0c6 jdk7-b57
d60a9ce3c3eabf28f5d50ae839d18be04a551bc2 jdk7-b58
c33e7d38c9210741dbc285507403a4b20bd802a0 jdk7-b59
5a10e4d0b14d7beac53a7b2213ae6864afe1fd3e jdk7-b60
dbb955b1ee59b876dd1f133952b557b48b1d7732 jdk7-b61
6107cbff3130c747d243c25a7874cd59db5744a8 jdk7-b62
dfd8506f74c3731bb169ce93c72612d78ee0413b jdk7-b63
d22867c5f1b295a0a2b3b4bc8999a2676f6e20c3 jdk7-b64
7d3bf00f3cc4f8125de1842521e7567f37dc84b8 jdk7-b65
62109d1b9e7310f29ab51ca6f1d71b899c0ce6b0 jdk7-b66
eb24af1404aec8aa140c4cd4d13d2839b150dd41 jdk7-b67
bca2225b66d78c4bf4d9801f54cac7715a598650 jdk7-b68
1b662b1ed14eb4ae31d5138a36c433b13d941dc5 jdk7-b69
207f694795c448c17753eff1a2f50363106960c2 jdk7-b70
c5d39b6be65cba0effb5f466ea48fe43764d0e0c jdk7-b71
df4bcd06e1d0ab306efa5a44f24a409dc0c0c742 jdk7-b72
ce74bd35ce948d629a356e168797f44b593b1578 jdk7-b73
4e7661eaa211e186674f6cbefec4aef1144ac2a0 jdk7-b74
946518568340c4e511549318f19f47f06b7f5f9b jdk7-b75
09e0b33177af2b98a03c9ca19eedf61440bd1cf6 jdk7-b76
1d0121b741f029dc4b828e4b36ba6fda92907dd7 jdk7-b77
4061c66ba1af1a2e27c2c839ba887407dd3ce050 jdk7-b78
e9c98378f6b9256c0595ef2985ca5899f0c0e274 jdk7-b79
e6abd38682d237306d6c147c17538ec9e7f8e3a7 jdk7-b80
dcc938ac40cc45f1ef454d76020b5db5d943001c jdk7-b81
a30062be6d9ca1d48579826f870f85974300004e jdk7-b82
34c8199936a1682aa8587857f44cfaf37c2b6381 jdk7-b83
b1e55627a6980b9508854ed0c0f21d4f981b4494 jdk7-b84
b6f633a93ae0ec4555ff4bf756f5e2150c9bdede jdk7-b85
c94d9cc81f495d97817eba9d71b84fc45f7661a5 jdk7-b86
b7456c473862048fa70ed8092313a4ef0a55d403 jdk7-b87
7077b95d42f6b3942a8751bba033801ff50e5889 jdk7-b88
44158f6d3b94c0fa020e33632532473d92d1ea96 jdk7-b89
1d1927f9ec097b62c913921e2dfa5dbaf5dc325b jdk7-b90
308ad8f68b8dd68e22d73dd490e110059b732422 jdk7-b91
ff9031a745d9cc52318f2148e43ca3b07ee08098 jdk7-b92
b5dab6a313fdff4c043250e4d9c8f66fd624d27e jdk7-b93
8bb281f0f91582104d65d032be22522bfd2d8110 jdk7-b94
654298d26561b76dfe3cfcffbbd7078080837300 jdk7-b95
d260f892491e040ae385a8e6df59557a7d721abf jdk7-b96
7e406ebed9a5968b584f3c3e6b60893b5d6d9741 jdk7-b97
db6e660120446c407e2d908d52ec046592b21726 jdk7-b98
c4c8a5bc54f66abc68cd185d9294042121922154 jdk7-b99
2d6ba7a221915bdf0311acc5641c7f3875cb793e jdk7-b100
2548ac036b8fca3326d058d758e6df8355a42469 jdk7-b101
88db80c8e49cea352c2900f689600dc410761c1f jdk7-b102
64770970865839b0443066370e7d476ef47e90cd jdk7-b103
10bc903a228d3a8efdf46fb8c3fcf82a59b88bc5 jdk7-b104
1ce7938efb03224ccc8b3cdd7803eb39e889539c jdk7-b105
6bdae472f77205046703b685eff2ac4f7a0ecf4e jdk7-b106
439de530aac531a360beedba6e2fe51e17292cc0 jdk7-b107
044d31b99ef5609389fc771c422e722e5e224228 jdk7-b108
e02b4d709e177d08d56130a4bc68061e4bbacc7d jdk7-b109
a6442d6bc38a44152e0662688213ce4d2701f42a jdk7-b110
69f3edf083477955b5bd2f754252c7504167d8e1 jdk7-b111
f960f117f1623629f64203e2b09a92a8f6f14ff5 jdk7-b112
1fee41c7ed2b3388970a756a85aa693c0de8407a jdk7-b113
750c1ccb2f2d1ddfa95ab6c7f897fdab2f87f7e9 jdk7-b114
9cb24917216bc68997154f6e9566c3de62acb2f4 jdk7-b115
a4e6aa1f45ad23a6f083ed98d970b5006ea4d292 jdk7-b116
228e73f288c543a8c34e2a54227103ae5649e6af jdk7-b117
2e876e59938a853934aa738c811b26c452bd9fe8 jdk7-b118
4951967a61b4dbbf514828879f57bd1a0d4b420b jdk7-b119
8c840d3ab24f8d0f422b991638acb44b6ab1d98c jdk7-b120
0ce0a2c3a6926677dc507839a820ab6625541e5a jdk7-b121
6f09ea1c034f087916d2a8cf0d22be768400118f jdk7-b122
142129d8599d1f56b29387e7f9a5fad53b6d61df jdk7-b123
aa894c225b1a517b665ac2a58295217ea2245134 jdk7-b124
f658ec2730fa29323c36d23c27e54c7219ef5e16 jdk7-b125
f1df068076986679ea1105532a65529d63a89060 jdk7-b126
f83cd8bd35c678f94e526990e03dc838d0ec2717 jdk7-b127
7da3f5f30855dec6bf3a86529e87dee883b90c72 jdk7-b128
6823ea7eb8eb6fab405d7edb7a5c2f690887a2fa jdk7-b129
a36beda9b9de91231d92a2c529f21cc218fcf8d5 jdk7-b130
d8af56da89bc0fc02a6b6ad78f51157a46d665ab jdk7-b131
d61280d36755d1941fb487f554e8b7a6d0bca6a1 jdk7-b132
fd444c61e7ed3d92b2a730da7c737b02191b682f jdk7-b133
def8e16dd237a47fc067d66d4c616d7baaec6001 jdk7-b134
f75a1efb141210901aabe00a834e0fc32bb8b337 jdk7-b135
46acf76a533954cfd594bb88fdea79938abfbe20 jdk7-b136
d1cf7d4ee16c341f5b8c7e7f1d68a8c412b6c693 jdk7-b137
62b8e328f8c8c66c14b0713222116f2add473f3f jdk7-b138
955488f34ca418f6cdab843d61c20d2c615637d9 jdk7-b139
f4298bc3f4b6baa315643be06966f09684290068 jdk7-b140
5d86d0c7692e8f4a58d430d68c03594e2d3403b3 jdk7-b141
92bf0655022d4187e9b49c1400f98fb3392a4630 jdk7-b142
4a05062d8c4dfa3edec3faf1052af28baba5adff jdk7-b143
07a8728ad49ef6dfa469c3a8bf5ab1e9c80bed5c jdk7-b144
8294c99e685a1f6d1d37c45cd97854cf74be771e jdk7-b145
dca1e8a87e8f756f95b99bac8fe795750d42e1b0 jdk7-b146
a2a589fc29543ed32919c78a1810ad93a6fcf5bc jdk7-b147
de9223c94f9c710b3eebb599cd3586f36c8b94a9 jdk8-b01
1b9d19620eb4606a25b1e28f86d66c8bfa867e06 jdk8-b02
6815e85bf96d6d3875954f9777660372cd70d065 jdk8-b03
31f5c34d78081572ad9a2401c0bb0c6b9711dd65 jdk8-b04
c4f9ea1ecb55ff44e0dd21d2888ead308c86a3aa jdk8-b05
429da7734bf491bccde2a752fae97e9f225896dc jdk8-b06
bc5710332b294676661103bb20d47d2ea3ba8def jdk8-b07
24ee504f80412770c6874836cd9e55b536427b1d jdk8-b08
fbf3cabc9e3bb1fcf710941d777cb0400505fbe6 jdk8-b09
f651ce87127980c58e3599daba964eba2f3b4026 jdk8-b10
cc1f5ce8e504d350e0b0c28c5f84333f8d540132 jdk8-b11
86db042b3385c338e17f7664447fdc7d406dd19e jdk8-b12
4cc0ef72c812943743ef4765f1100e2fbe2b1a08 jdk8-b13
9ffaa48dbfb0f5936c2b789867d0785faec7071d jdk8-b14
b5060eae3b32fd9f884a09774338cd8186d7fafa jdk8-b15
736a63b854f321c7824b7e47890135f80aee05e3 jdk8-b16
f0eccb2946986fb9626efde7d8ed9c8192623f5c jdk8-b17
885050364691ac1ac978305c63f3368a197fb04d jdk8-b18
0ff7113a0882ec82d642cb9f0297b4e497807ced jdk8-b19
6561530ea757c3f3a6fb171c9cc7b3885cdeca85 jdk8-b20
b3a426170188f52981cf4573a2f14d487fddab0d jdk8-b21
e8f03541af27e38aafb619b96863e17f65ffe53b jdk8-b22
498124337041ad53cbaa7eb110f3d7acd6d4eac4 jdk8-b23
7d3720d8c595d1519c31e9ff7366203fc2c61350 jdk8-b24
0071a6d64113a35ba345bb1580c256de5ce17d3e jdk8-b25
6c805d8ed4e5449ea5e4d158c7bdbd7b0b70efd1 jdk8-b26
c51754cddc037b9609e202b9ed38363d8683e7a8 jdk8-b27
16ba58282d117247f480aae7a79b88141ade52a3 jdk8-b28
e070119aa56ee4dc5506c19d2c4d2eecab8ad429 jdk8-b29
23da7804aca0c9c4e6e86532a1453125a76d95ee jdk8-b30
bac81e9f7d57b75fba5ab31b571f3fe0dc08af69 jdk8-b31
2c5208ccb863db936eab523f49450b3fcd230348 jdk8-b32
a6e6d42203e6d35f9e8b31eac25b0021b4dd58ad jdk8-b33
0ae89825c75c9492e44efb3aca3d9ee3d8a209df jdk8-b34
f151d5833912a82cd4f203944da0305c3be83ecc jdk8-b35
98ce9816ae089c959ba1e70fba98423a31c4e9fa jdk8-b36
b3a91113026c99b0da010d41055719ab0d8938f0 jdk8-b37
4cc5610a6dd6227da766ebf9742eb11ff5ded6c0 jdk8-b38
35a5397278779a2f8f3013f81586dc8f30cb149d jdk8-b39
6e4e654931b976304bf6e7b4d0d6db8f75bac5d9 jdk8-b40
c029c972396cea042a0dc67c0f7ccf2fe68007d4 jdk8-b41
5c5a64ec0839df5affe9394b99ff338c363acbca jdk8-b42
69d8a827cdf9236be9694a46d75c710d71dac7d7 jdk8-b43
7e981cb0ad6a194f1fa859f9ad47586db461f269 jdk8-b44
9b19b2302c28f4da6d4078f66234abecfed5688a jdk8-b45
600c9a1feb01633cbcf2341a43d1d21e6497ecd0 jdk8-b46
b820143a6f1ce993c6e6f31db4d64de990f42654 jdk8-b47
086271e35b0a419b38e8bda9bebd70693811df0a jdk8-b48
cecd7026f30cbd83b0601925a7a5e059aec98138 jdk8-b49
38fe5ab028908cf64dd73a43336ba3211577bfc3 jdk8-b50
382651d28f2502d371eca751962232c0e535e57a jdk8-b51
b67041a6cb508da18d2f5c7687e6a31e08bea4fc jdk8-b52
c7aa5cca1c01689a7b1a92411daf83684af05a33 jdk8-b53
7c6aa31ff1b2ae48c1c686ebe1aadf0c3da5be15 jdk8-b54
319f583f66db47395fa86127dd3ddb729eb7c64f jdk8-b55
ffe6bce5a521be40146af2ac03c509b7bac30595 jdk8-b56
2c21c080b11b93efb3851e39e1363e45da805943 jdk8-b57
479d3302a26d7607ba271d66973e59ebf58825b6 jdk8-b58
3bd874584fc01aae92fbc8827e2bd04d8b6ace04 jdk8-b59
5e3adc681779037a2d33b7be6f75680619085492 jdk8-b60
cdaa6122185f9bf512dcd6600f56bfccc4824e8c jdk8-b61
8d9d430b4244b95f5cf1ebe719f834a1ac5d6cd5 jdk8-b62
21ee1dd7b809639284900a128b9b656a592ebc7a jdk8-b63
70fa4b11f26522e69b51fd652215f60ce350bac3 jdk8-b64
a2cf4d4a484378caea2e827ed604b2bbae58bdba jdk8-b65
17820b958ae84f7c1cc6719319c8e2232f7a4f1d jdk8-b66
76cc9bd3ece407d3a15d3bea537b57927973c5e7 jdk8-b67
cb33628d4e8f11e879c371959e5948b66a53376f jdk8-b68
adb5171c554e14cd86f618b5584f6e3d693d5889 jdk8-b69
0d625373c69e2ad6f546fd88ab50c6c9aad01271 jdk8-b70
a41ada2ed4ef735449531c6ebe6cec593d890a1c jdk8-b71
6725b3961f987cf40f446d1c11cd324a3bec545f jdk8-b72
fe94b40ffd9390f6cffcdf51c0389b0e6dde0c13 jdk8-b73
f627eff819628822a0777af8062244352f2a29cf jdk8-b74
f1478a6d25fddd311a84dcbfac50824cc1858bdd jdk8-b75
f407160c280d1c5b00d314c535441ac26f195fee jdk8-b76
d17eb2e13e362085e866d46235314c50cc4661cc jdk8-b77
6d3dcd34b5b962ea1ef9eed0dafdee9e812401bc jdk8-b78
a1313a8d90d17d363a3b2a645dc4030ec204b168 jdk8-b79
3fa21fbf9be7e6b482af43aacb6a09acfa30bdb6 jdk8-b80
e41d716405b209d3eddef8bd4240cec2bd34dcca jdk8-b81
5e8c55025644730385a6f8fa029ecdb2d2c98a07 jdk8-b82
bcebd3fdefc91abb9d7fa0c5af6211b3f8720da6 jdk8-b83
d7ad0dfaa41151bd3a9ae46725b0aec3730a9cd0 jdk8-b84
1872c12529090e1c1dbf567f02ad7ae6231b8f0c jdk8-b85
da9a4c9312816451884aa6db6f18be51a07bff13 jdk8-b86
5ebf6c63714de2c9dcf831074086d31daec819df jdk8-b87
e517701a4d0e25ae9c7945bca6e1762a8c5d8aa6 jdk8-b88
4dec41b3c5e3bb616f0c6f15830d940905aa5d16 jdk8-b89
f09ab0c416185e3cba371e81bcb6a16060c90f44 jdk8-b90
80b6c3172dc2cfceb022411292d290a967f9c728 jdk8-b91
2fd6acba737b01e705e1f7c33588c922a3787f13 jdk8-b92
b72ae39e1329fefae50d4690db4fde43f3841a95 jdk8-b93
0d804e3b955dce406af6a79ac1cc35c696aff7fb jdk8-b94
49fe9c8049132647ad38837a877dd473e6c9b0e5 jdk8-b95
ea73f01b9053e7165e7ba80f242bafecbc6af712 jdk8-b96
0a85476a0b9cb876d5666d45097dac68bef3fce1 jdk8-b97
711eb4aa87de68de78250e0549980936bab53d54 jdk8-b98
2d3875b0d18b3ad1c2bebf385a697e309e4005a4 jdk8-b99
3d34036aae4ea90b2ca59712d5a69db3221f0875 jdk8-b100
edb01c460d4cab21ff0ff13512df7b746efaa0e7 jdk8-b101
bbe43d712fe08e650808d774861b256ccb34e500 jdk8-b102
30a1d677a20c6a95f98043d8f20ce570304e3818 jdk8-b103
b5ed503c26ad38869c247c5e32debec217fd056b jdk8-b104
589f4fdc584e373a47cde0162e9eceec9165c381 jdk8-b105
514b0b69fb9683ef52062fd962a3e0644431f64d jdk8-b106
892889f445755790ae90e61775bfb59ddc6182b5 jdk8-b107
74049f7a28b48c14910106a75d9f2504169c352e jdk8-b108
af9a674e12a16da1a4bd53e4990ddb1121a21ef1 jdk8-b109
b5d2bf482a3ea1cca08c994512804ffbc73de0a1 jdk8-b110
b9a0f6c693f347a6f4b9bb994957f4eaa05bdedd jdk8-b111
ad67c34f79c28a8e755f4a49f313868619d6702c jdk8-b112
4a4dbcf7cb7d3e1a81beaa3b11cd909f69ebc79a jdk8-b113
dfa34ab293faad9b543a24646dbb381bc3ab5586 jdk8-b114
3dd9732b17034f45d111996d1d50287b05a3998c jdk8-b115
aaf663f591aba43ec942263b15ba62759ce26a1e jdk8-b116
31b0e03fcad73d7886b306b4c2e57ad270780d0d jdk8-b117
f5b521ade7a35cea18df78ee86322207729f5611 jdk8-b118
87b743b2263cc53955266411b7797b365a0fb050 jdk8-b119
a1ee9743f4ee165eae59389a020f2552f895dac8 jdk8-b120
13b877757b0b1c0d5813298df85364f41d7ba6fe jdk9-b00
f130ca87de6637acae7d99fcd7a8573eea1cbaed jdk9-b01
b32e2219736e42baaf45daf0ad67ed34f6033799 jdk9-b02
7f655f31f9bcee618cf832f08176ad8c1ed3fdd3 jdk9-b03
099891b1d86f3719e116ac717ffdafc90d037fb7 jdk9-b04
dd311791ad6895a3989020dd6c6c46db87972ab8 jdk9-b05
85dbdc227c5e11429b4fc4a8ba763f50107edd6e jdk9-b06
c826d05f1fb0773f6a28caa763307dd30d90d36e jdk9-b07
b47e021195757f8f45582124ea7cad48ccf5f872 jdk9-b08
efe7dbc6088691757404e0c8745f894e3ca9c022 jdk9-b09
8c0bdeecd7c0f9ce3f3762a51991f755cb3a972c jdk9-b10
0809c9a4d36e6291f1c4384604c4bbf29e975722 jdk9-b11
0d1f816217dce5e72187f167cc1816080cbeb453 jdk9-b12
1a30593dcb9802faec3b6edb24d86ca088594e4e jdk9-b13
97932f6ad950ae5a73a9da5c96e6e58503ff646b jdk9-b14
74eb0778e4f2dbff6628e718378449fba27c4265 jdk9-b15
4a09f5d30be844ac6f714bdb0f63d8c3c08b9a98 jdk9-b16
410bccbded9e9cce80f1e13ad221e37ae97a3986 jdk9-b17
c5495e25c7258ab5f96a1ae14610887d76d2be63 jdk9-b18
2dcf544eb7ed5ac6a3f7813a32e33acea7442405 jdk9-b19
89731ae72a761afdf4262e8b9513f302f6563f89 jdk9-b20
28dd0c7beb3cad9cf95f17b4b5ad87eb447a4084 jdk9-b21
9678e0db8ff6ed845d4c2ee4a3baf7f386a777e5 jdk9-b22
39cfdc2dcaf3f195c55398e4e677ab053b07e3d2 jdk9-b23
d9ce05f36ffec3e5e8af62a92455c1c66a63c320 jdk9-b24
13a5c76976fe48e55c9727c25fae2d2ce7c05da0 jdk9-b25
cd6f4557e7fea5799ff3762ed7a80a743e75d5fd jdk9-b26
d06a6d3c66c08293b2a9650f3cc01fd55c620e65 jdk9-b27
f4269e8f454eb77763ecee228a88ae102a9aef6e jdk9-b28
c36c0092693707a8255561433647e8c3cd724ccd jdk9-b29
b2287cac7813c70ed7f679d9a46fe774bd4005f8 jdk9-b30
9d0e6639a4d71b63507dd94b1a028e963b27e798 jdk9-b31
1b1ec4291abc0ba6da7bf79b754f08dd759a4a0c jdk9-b32
f0c5e4b732da823bdaa4184133675f384e7cd68d jdk9-b33
9618201c5df28a460631577fad1f61e96f775c34 jdk9-b34
a137992d750c72f6f944f341aa19b0d0d96afe0c jdk9-b35
41df50e7303daf73c0d661ef601c4fe250915de5 jdk9-b36
b409bc51bc23cfd51f2bd04ea919ec83535af9d0 jdk9-b37
948cceef81ba4cb34bc233e7cc5952951ff04e88 jdk9-b38
4e7c4d692e934cb9023af8201e7c2b510e9c4ee1 jdk9-b39
82f4cb44b2d7af2352f48568a64b7b6a5ae960cd jdk9-b40
9fffb959eb4197ff806e4ac12244761815b4deee jdk9-b41
3107be2ba9c6e208a0b86bc7100a141abbc5b5fb jdk9-b42
6494b13f88a867026ee316b444d9a4fa589dd6bd jdk9-b43
abbfccd659b91a7bb815d5e36fed635dcdd40f31 jdk9-b44
bfc24ae2b900187585079bb11e66e459d1e525fe jdk9-b45
722378bc599e38d9a1dd484de30f10dfd7b21438 jdk9-b46
8327024a99559982b848e9c2191da9c0bf8838fd jdk9-b47
b2f9702efbe95527ea3a991474fda23987ff1c5c jdk9-b48
5b8db585a33c3cc48e70e688ceee57dd9271dc5d jdk9-b49
1550b2f6b63d1411fa84dc7bbc6f04809aedb43f jdk9-b50
6efe265424e3f1ea596408a1f71baf2de316c772 jdk9-b51
d6224d6021459ac8b3832e822f5acc849fa944af jdk9-b52
874d76e4699dfcd61ae1826c9fe0ddc1610ad598 jdk9-b53
82cd31c5d6ca8d4c1653f4eb1c09eb2d9a3b2813 jdk9-b54
c97e2d1bad9708d379793ba2a4c848eda14c741e jdk9-b55
47544495db2d3d2edf0f85862d8715592fdb919f jdk9-b56
ddb95d8f169b09544cc17e72a6baaff2400092f5 jdk9-b57
f40752db7773ca0c737f2ad88371e35c57fdfed7 jdk9-b58
da950f343762a856d69751570a4c07cfa68a415b jdk9-b59
38f98cb6b33562a926ec3b79c7b34128be37647d jdk9-b60
ac3f5a39d4ff14d70c365e12cf5ec8f2abd52a04 jdk9-b61
e7dbbef69d12b6a74dfad331b7188e7f893e8d29 jdk9-b62
989253a902c34dcb7564695161c9200a5fbb7412 jdk9-b63
8ffdeabc7c2b9a8280bf46cae026ac46b4d31c26 jdk9-b64
4915246064b2f89d5f00c96e758686b7fdad36a6 jdk9-b65
ff3fc75f3214ad7e03595be1b0d0f38d887b6f0e jdk9-b66
56166ce66037952fa21e9f680b31bf8eb47312c0 jdk9-b67
5b500c93ce4822d47061cd518ff3f72d9d8cb5b5 jdk9-b68
d69c968463f0ae5d0b45de3fc14fe65171b23948 jdk9-b69
43d0179ee9de3bfffae3417f09e07eb6d8efc963 jdk9-b70
f66c185284727f6e6ffd27e9c45ed2dd9da0a691 jdk9-b71
61d2d0629b6dbf4c091dc86151ade1b3ef34fffe jdk9-b72
9b3a9d72f07b40c648de79961679f42283af1bb5 jdk9-b73
7c577fda1855d03c04546694d514678f596508c9 jdk9-b74
f55df5cfe11c97e4b58998b76f5bd00a73cde12d jdk9-b75
eeea9adfd1e3d075ef82148c00a4847a1aab4d26 jdk9-b76
c25e882cee9622ec75c4e9d60633539a2f0a8809 jdk9-b77
c8753d0be1778944dc512ec86a459941ea1ad2c3 jdk9-b78
3966bd3b8167419aa05c6718a4af1cf54b1e3c58 jdk9-b79
3c9f5bd909ae7187f24622ee4b69f8a5756a9271 jdk9-b80
2050b3a0aadcb0e024bf798197421d58e54ec8bf jdk9-b81
6521875cb63e1d0121b30af56ebbc36db078c4c6 jdk9-b82
f61a63b7d1e52e307abc0bfc751203155d362ec4 jdk9-b83
51b2db2fa04c16d767b66113dbf08c5349ce382a jdk9-b84
8392405ab038b22e69a3728e17dbdd9e3d3a22ed jdk9-b85
7db0663a5e968059fa7c772172187ebd60b6492d jdk9-b86
1a52a30674cd28c24d4d388150336121f2e9ddf9 jdk9-b87
16b4968f9bb8f34371b42c0ba483d76e91ba84d8 jdk9-b88
4a0312f2894bcbe1fd20266c8fda8d983bd2fcf6 jdk9-b89
d131f4b8433a79408f935eff9bf92a0664229b60 jdk9-b90
8077fd2f055d31e50b46fcf62d9c035bc385a215 jdk9-b91
f242d4332f563648426a1b0fa02d8741beba19ef jdk9-b92
09206c6513b300e1ac8541f3be012e1a49312104 jdk9-b93
25a2cab05cfbe6034b71d9e72d64c65b0572ce63 jdk9-b94
5ac6287ec71aafe021cc839d8bc828108d23aaba jdk-9+95
139f19d70350238e15e107945cea75082b6380b3 jdk-9+96
4edcff1b9a8875eb6380a2165dfec599e8e3f7c0 jdk-9+97
d00ad2d9049ac60815f70bff445e95df85648bd2 jdk-9+98
f9bcdce2df26678c3fe468130b535c0342c69b89 jdk-9+99
4379223f8806626852c46c52d4e7a27a584b406e jdk-9+100
80f67512daa15cf37b4825c1c62a675d524d7c49 jdk-9+101
2dc4c11fe48831854916d53c3913bdb7d49023ea jdk-9+102
4a652e4ca9523422149958673033e0ac740d5e1e jdk-9+103
086c682bd8c5f195c324f61e2c61fbcd0226d63b jdk-9+104
db483b34fa7148d257a429acddbde9c13687dcae jdk-9+105
6c644cca3f3fc2763e2ff7d669849a75d34543ba jdk-9+106
1c076468bf7dad5b8f2ee5dcf66e2279caa3e208 jdk-9+107
257b579d813201682931d6b42f0445ffe5b4210d jdk-9+108
c870cb782aca71093d2584376f27f0cfbfec0e3a jdk-9+109
4a95f4b1bd8bfce85dc02a593896749feab96c34 jdk-9+110
a6614ff7bf09da74be1d0ef3d9755090d244697a jdk-9+111
7359994942f8d8e723b584d66a3a92c2e9e95e5c jdk-9+112
6072af7a98be3922f26bdce71b53bb3646cb2ac9 jdk-9+113
c84d0cce090e161d736de69e941830adf8c2f87a jdk-9+114
8d78fb40648dd221ce4ef19f9d5aa41ee1a3a884 jdk-9+115
84aba7335005a3a47751dcf1f37935f97df9f99a jdk-9+116
82b8d12a553f5617737c238cec060281d52e351c jdk-9+117
7c04fcb12bd4a31570a238e663fa846dfa5ec3b8 jdk-9+118
caf97b37ebec84288c112d21d3a60cb628cba1e8 jdk-9+119
9330543436402b8f3bd070524846a464d8143557 jdk-9+120
18e5cdecb37a2f03ba74f6c8f022858bcbaacf56 jdk-9+121
7693aa00e131493ceb42b93305e2f014c9922a3b jdk-9+122
d53037a90c441cb528dc41c30827985de0e67c62 jdk-9+123
2a5697a98620c4f40e4a1a71478464399b8878de jdk-9+124
3aa52182b3ad7c5b3a61cf05a59dd07e4c5884e5 jdk-9+125
03e7b2c5ae345be3caf981d76ceb3efe5ff447f8 jdk-9+126
8e45018bde9de4ad15b972ae62874bba52dba2d5 jdk-9+127
5bf88dce615f6804f9e101a96ffa7c9dfb4fbbbe jdk-9+128
e8373543a3f0f60589b7d72b1f9b172721124caf jdk-9+129
e613affb88d178dc7c589f1679db113d589bddb4 jdk-9+130
4d2a15091124488080d65848b704e25599b2aaeb jdk-9+131
2e83d21d78cd9c1d52e6cd2599e9c8aa36ea1f52 jdk-9+132
e17429a7e843c4a4ed3651458d0f950970edcbcc jdk-9+133
a71210c0d9800eb6925b61ecd6198abd554f90ee jdk-9+134
e384420383a5b79fa0012ebcb25d8f83cff7f777 jdk-9+135
1b4b5d01aa11edf24b6fadbe3d2f3e411e3b02cd jdk-9+136
9cb87c88ed851c0575b8ead753ea238ed5b544e9 jdk-9+137
d273dfe9a126d3bffe92072547fef2cd1361b0eb jdk-9+138
65477538bec32963dc41153d89c4417eb46c45fc jdk-9+139
0875007901f7d364a08220b052f0c81003e9c8c5 jdk-9+140
9aadd2163b568d76f8969ad2fb404a63733da359 jdk-9+141
df0e03e3ca0ed1307793017dfc1a054c8726131c jdk-9+142
d62173b931bf5b6bffc6e80a9060bb2e8b8efc75 jdk-9+143
31f5023200d42185b70c4c00ba5672391e4642d0 jdk-9+144
3ee4e7827413fa5c5c4fca58597b0ad89e921bfb jdk-9+145
581331db696a62dd411926ba7fd437252252a71d jdk-9+146
f4e854a77aa38749bd90f722b06974a56e7233d5 jdk-9+147
5c71ea43933b6c7e8a85eb1a4eb2213011b95d82 jdk-9+148
cf139f925da04c8bd7efd33270a0315d72b338d3 jdk-9+149
17469f16fbb406ec9f0dd262ce776ab6efbc38f1 jdk-9+150
37b95df0042ae0687324e1f7dc4a2519e230e704 jdk-9+151
ab2c8b03c3284fcbdd157551a66f807e3a182d9b jdk-9+152
d7034ff7f8e257e81c9f95c7785dd4eaaa3c2afc jdk-9+153
8c70d170e62c0c58b5bc3ba666bd140399b98c9c jdk-10+0
45b751afd11e6c05991cf4913c5a0ac3304fcc4e jdk-9+154
f4aff695ffe05cfdb69d8af25a4ddc6a029754ea jdk-9+155
06bce0388880b5ff8e040e4a9d72a3ea11dac321 jdk-9+156
74116beae88a8f17a80301aa6c83865c82f10ece jdk-10+1
4a79ad46e578112fce68f1af9dd931025cc235cb jdk-10+2
d1cab6c7e608479be4ebfad48a25b0ed48600f62 jdk-10+3
02253db2ace1422f576f58502fc7831ead77424b jdk-10+4
f113ce12fe24fbd24acf02711372d9f1e1c12426 jdk-10+5
1407b19a2ddf6baae162f5a1a5b96af473f4d7d1 jdk-10+6
30e75693ae99fd8e47fd2f5116527aff1b59aff9 jdk-10+7
c42dc7b58b4d4301ea676a76326fd9bbd403d595 jdk-10+8
aa5b01f5e5620438fd39efdb2e2f6365a2c7d898 jdk-10+9
b0f2b8ff25a2209b2c807785d75f20e5086bbfc2 jdk-10+10
036dbf8b381798e5d31065109714d04d97bf98a4 jdk-10+11
e6d70017f5b9adbb2ec82d826973d0251800a3c3 jdk-10+12
9927a9f16738e240ab7014f0118f41e314ef8f99 jdk-10+13
9ef5029b247b4d940080417a287440bbdbab995b jdk-10+14
878e216039322cb3f0ecbd0944642a2b4e2593f3 jdk-10+15
4bbea012e5676e8025ade2bcfab4d6581e6e9f4b jdk-10+16
7db699468b4f84abbcc01647e5a964409737411a jdk-10+17
3739654290616e533fc6f51bf9ad69ed47a6abba jdk-10+18
14df107500cc3b8ab238c3e4ad2c74e12bfe6067 jdk-10+19
4586bc5d28d13d3147b993e6237eaf29a7073bbb jdk-10+20
a85884d55ce32799f5c7382b7ea4839052b362a2 jdk-10+21
e5357aa85dadacc6562175ff74714fecfb4470cf jdk-10+22
22850b3a55240253841b9a425ad60a7fcdb22d47 jdk-10+23
3b201865d5c1f244f555cad58da599c9261286d8 jdk-10+24
8eb5e3ccee560c28ac9b1df2670adac2b3d36fad jdk-10+25
1129253d3bc728a2963ba411ab9dd1adf358fb6b jdk-10+26
b87d7b5d5dedc1185e5929470f945b7378cdb3ad jdk-10+27
92f08900cb3c0d694e5c529a676c1c9e5909193f jdk-10+28
a6e591e12f122768f675428e1e5a838fd0e9c7ec jdk-10+29
8fee80b92e65149f7414250fd5e34b6f35d417b4 jdk-10+30
e6278add9ff28fab70fe1cc4c1d65f7363dc9445 jdk-10+31
a2008587c13fa05fa2dbfcb09fe987576fbedfd1 jdk-10+32
bbd692ad4fa300ecca7939ffbe3b1d5e52a28cc6 jdk-10+33
89deac44e51517841491ba86ff44aa82a5ca96b3 jdk-10+34
d8c634b016c628622c9abbdc6bf50509e5dedbec jdk-10+35
0ee20aad71c4f33c426372b4c8bcc1235ce2ec08 jdk-11+0
959f2f7cbaa6d2ee45d50029744efb219721576c jdk-10+36
4f830b447edf04fb4a52151a5ad44d9bb60723cd jdk-10+37
e569e83139fdfbecfeb3cd9014d560917787f158 jdk-10+38
5b834ec962366e00d4445352a999a3ac14e26f64 jdk-10+39
860326263d1f6a83996d7da0f4c66806ae4aa1eb jdk-10+40
3eae36c6baa5f916a3024cf1513e22357e00185d jdk-10+41
4b62b815b4f49970b91a952929cf50115c263cb3 jdk-10+42
107413b070b92c88bde6230ceb4a19b579781068 jdk-10+43
dfa46cfe56346884a61efdc30dc50f7505d66761 jdk-11+1
03ae177c26b016353e5ea1cab6ffd051dfa086ca jdk-11+2
663f20fc51091bd7f95d18448850ba091207b7bd jdk-10+44
4f96cf952e71cb8a127334494faf28880c26181b jdk-10+45
1fd4d6068f54561cfc67d54fc9ca84af7212c4f8 jdk-11+3
e59941f7247d451fa7df9eaef3fce0f492f8420c jdk-11+4
d5c43e9f08fb9a7c74aae0d48daf17f2ad2afaef jdk-11+5
3acb379b86725c47e7f33358cb22efa8752ae532 jdk-11+6
f7363de371c9a1f668bd0a01b7df3d1ddb9cc58b jdk-11+7
755e1b55a4dff510f9639cdb5c5e82549a7e09b3 jdk-11+8
0c3e252cea44f06aef570ef464950ab97c669970 jdk-11+9
6fa770f9f8ab296e1ce255ec17ccf6d4e1051886 jdk-10+46
69d7398038c54774d9395b6810e0cca335edc02c jdk-11+10
e1e60f75cd39312a7f59d2a4f91d624e5aecc95e jdk-11+11
3ab6ba9f94a9045a526d645af26c933235371d6f jdk-11+12
758deedaae8406ae60147486107a54e9864aa7b0 jdk-11+13
3595bd343b65f8c37818ebe6a4c343ddeb1a5f88 jdk-11+14
a11c1cb542bbd1671d25b85efe7d09b983c48525 jdk-11+15
02934b0d661b82b7fe1052a04998d2091352e08d jdk-11+16
64e4b1686141e57a681936a8283983341484676e jdk-11+17
e1b3def126240d5433902f3cb0e91a4c27f6db50 jdk-11+18
36ca515343e00b021dcfc902e986d26ec994a2e5 jdk-11+19
95aad0c785e497f1bade3955c4e4a677b629fa9d jdk-12+0
9816d7cc655e53ba081f938b656e31971b8f097a jdk-11+20
14708e1acdc3974f4539027cbbcfa6d69f83cf51 jdk-11+21
00b16d0457e43d23f6ca5ade6b243edce62750a0 jdk-12+1
9937ef7499dcd7673714517fd5e450410c14ba4e jdk-11+22
69b438908512d3dfef5852c6a843a5778333a309 jdk-12+2
1edcf36fe15f79d6228d1a63eb680878e2386480 jdk-11+23
990db216e7199b2ba9989d8fa20b657e0ca7d969 jdk-12+3
ea900a7dc7d77dee30865c60eabd87fc24b1037c jdk-11+24
499b873761d8e8a1cc4aa649daf04cbe98cbce77 jdk-12+4
331888ea4a788df801b1edf8836646cd25fc758b jdk-11+25
f8696e0ab9b795030429fc3374ec03e378fd9ed7 jdk-12+5
945ba9278a272a5477ffb1b3ea1b04174fed8036 jdk-11+26
7939b3c4e4088bf4f70ec5bbd8030393b653372f jdk-12+6
9d7d74c6f2cbe522e39fa22dc557fdd3f79b32ad jdk-11+27
ef57958c7c511162da8d9a75f0b977f0f7ac464e jdk-12+7
76072a077ee1d815152d45d1692c4b36c53c5c49 jdk-11+28
492b366f8e5784cc4927c2c98f9b8a3f16c067eb jdk-12+8
31b159f30fb281016c5f0c103552809aeda84063 jdk-12+9
8f594f75e0547d4ca16649cb3501659e3155e81b jdk-12+10
f0f5d23449d31f1b3580c8a73313918cafeaefd7 jdk-12+11
15094d12a632f452a2064318a4e416d0c7a9ce0c jdk-12+12
511a9946f83e3e3c7b9dbe1840367063fb39b4e1 jdk-12+13
8897e41b327c0a5601c6ba2bba5d07f15a3ffc91 jdk-12+14
8897e41b327c0a5601c6ba2bba5d07f15a3ffc91 jdk-12+14
6f04692c7d5137ee34a6bd94c0c8a6c9219cb127 jdk-12+14
f8626bcc169813a4b2a15880386b952719d1d6d1 jdk-12+15
199658d1ef860cdc17055b4fd3e94b057f292fe9 jdk-12+16
eefa65e142af305923d2adcd596fab9c639723a1 jdk-12+17
e38473506688e0995e701fc7f77d5a91b438ef93 jdk-12+18
dc1f9dec2018a37fedba47d8a2aedef99faaec64 jdk-12+19
40098289d5804c3b5e7074bc75501a81e70d9b0d jdk-12+20
f8fb0c86f2b3d24294d39c5685a628e1beb14ba7 jdk-12+21
732bec44c89e8b93a38296bf690f97b7230c5b6d jdk-12+22
eef755718cb24813031a842bbfc716a6cea18e9a jdk-12+23
cc4098b3bc10d1c390384289025fea7b0d4b9e93 jdk-13+0
7d4397b43fa305806160785a4c7210600d59581a jdk-12+24
11033c4ada542f9c9a873314b6ecf60af19e8256 jdk-13+1
7496df94b3b79f3da53925d2d137317715f11d97 jdk-12+25
50677f43ac3df9a8684222b8893543c60f3aa0bd jdk-13+2
de9fd809bb475401aad188eab2264226788aad81 jdk-12+26
642346a11059b9f283110dc301a24ed43b76a94e jdk-13+3
f15d443f97318e9b40e6f451e327ff69ed4ec361 jdk-12+27
a47b8125b7cc9ef59619745c163975fe935b57ed jdk-13+4
659b004b6a1bd8c31e766cbdf328d8f8473fd4d7 jdk-12+28
e3ed960609927b5fdfd0a797159835cd83a81a31 jdk-13+5
44f41693631f9b5ac78ff4d2bfabd6734fe46df2 jdk-12+29
b5f05fe4a6f8b3996a000c20078b356d991ca8ec jdk-13+6
6c377af36a5c4203f16aed8a5e4c2ecc08fcd8bd jdk-12+30
021917019cda1c0c5853255322274f37693a2431 jdk-13+7
b5f7bb57de2f797be34f6c75d45c3245ad37ab97 jdk-12+31
a535ba736cabc6886acdff36de3a096c46e5ddc5 jdk-13+8
4ce47bc1fb92cf94c6e3d1f49d582f02dcb851ab jdk-12+32
c081f3ea6b9300265a4a34e38f970b1e3ddaae9f jdk-13+9
b67884871b5fff79c5ef3eb8ac74dd48d71ea9b1 jdk-12+33
8e069f7b4fabfe05d9f500783e6d56cb0196d25c jdk-13+10
21ea4076a275a0f498afa517e9ee1b94a9cf0255 jdk-13+11
1d7aec80147a6d92b101a76aef92f3ddc88bedf4 jdk-13+12
b67884871b5fff79c5ef3eb8ac74dd48d71ea9b1 jdk-12-ga
83cace4142c8563b6a921787db02388e1bc48d01 jdk-13+13
46cf212cdccaf4fb064d913b12004007d3322b67 jdk-13+14
f855ec13aa2501ae184c8b3e0626a8cec9966116 jdk-13+15
9d0ae9508d5337b0dc7cc4684be42888c4023755 jdk-13+16
93b702d2a0cb9e32160208f6700aede1f8492773 jdk-13+17
bebb82ef3434a25f8142edafec20165f07ac562d jdk-13+18
a43d6467317d8f1e160f67aadec37919c9d64443 jdk-13+19
6ccc7cd7931e34129f6b7e04988fc9a63958dde0 jdk-13+20
f2f11d7f7f4e7128f8aba6ffa576cfa76fbf7d1a jdk-13+21
181986c5476468bc2dd4532af49599003ee8af37 jdk-13+22
b034d2dee5fc93d42a81b65e58ce3f91e42586ff jdk-13+23
7e2238451585029680f126ccbb46d01f2ff5607f jdk-13+24
22b3b7983adab54e318f75aeb94471f7a4429c1e jdk-14+0
22b3b7983adab54e318f75aeb94471f7a4429c1e jdk-13+25
2f4e214781a1d597ed36bf5a36f20928c6c82996 jdk-14+1
0692b67f54621991ba7afbf23e55b788f3555e69 jdk-13+26
43627549a488b7d0b4df8fad436e36233df89877 jdk-14+2
b7f68ddec66f996ae3aad03291d129ca9f02482d jdk-13+27
e64383344f144217c36196c3c8a2df8f588a2af3 jdk-14+3
1e95931e7d8fa7e3899340a9c7cb28dbea50c10c jdk-13+28
19d0b382f0869f72d4381b54fa129f1c74b6e766 jdk-14+4
3081f39a3d30d63b112098386ac2bb027c2b7223 jdk-13+29
0f1e29c77e50c7da11d83df410026392c4d1a28c jdk-14+5
2e63fb0a885fa908a97bbb0da8d7c3de11536aca jdk-13+30
443f7359b34d60e7821216ffc60f88b6ffe0ccdd jdk-14+6
6a159c6c23ccd0029140ab91653442e412305ce5 jdk-13+31
28ab01c067551ef158abaef08e154e1051ca0893 jdk-14+7
929f37a9c35d530d4e866f6e832001aeb4cfb371 jdk-13+32
c0023e364b6f130cb1e93747b796d8718d544db1 jdk-14+8
9c250a7600e12bdb1e611835250af3204d4aa152 jdk-13+33
18f189e69b29f8215a3500b875127ed4fb2d977a jdk-14+9
ececb6dae777e622abda42c705fd984a42f46b5a jdk-14+10
bf4c808a4488025a415f867e54c8b088417e08a0 jdk-14+11
8570f22b9b6ac6bec673899b582150865696e425 jdk-14+12
fbbe6672ae15deaf350a9e935290a36f57ba9c25 jdk-14+13
cddef3bde924f3ff4f17f3d369280cf69d0450e5 jdk-14+14
9c250a7600e12bdb1e611835250af3204d4aa152 jdk-13-ga
778fc2dcbdaa8981e07e929a2cacef979c72261e jdk-14+15
d29f0181ba424a95d881aba5eabf2e393abcc70f jdk-14+16
5c83830390baafb76a1fbe33443c57620bd45fb9 jdk-14+17
e84d8379815ba0d3e50fb096d28c25894cb50b8c jdk-14+18
9b67dd88a9313e982ec5f710a7747161bc8f0c23 jdk-14+19
54ffb15c48399dd59922ee22bb592d815307e77c jdk-14+20
c16ac7a2eba4e73cb4f7ee9294dd647860eebff0 jdk-14+21
83810b7d12e7ff761ad3dd91f323a22dad96f108 jdk-14+22
15936b142f86731afa4b1a2c0fe4a01e806c4944 jdk-14+23
438337c846fb071900ddb6922bddf8b3e895a514 jdk-14+24
17d242844fc9e7d18b3eac97426490a9c246119e jdk-14+25
288777cf0702914e5266bc1e5d380eed9032ca41 jdk-14+26
2c724dba4c3cf9516b2152e151c9aea66b21b30b jdk-15+0
91a3f092682fc715d991a87eb6ec6f28886d2035 jdk-14+27
63e17cf29bed191ea21020b4648c9cdf893f80f5 jdk-15+1
2069b4bfd23b56b6fc659fba8b75aaaa23debbe0 jdk-14+28
f33197adda9ad82fdef46ac0f7dc0126204f35b2 jdk-15+2
563fa900fa17c290ae516c7a3a69e8c069dde304 jdk-14+29
d05fcdf25717d85e80a3a39a6b719458b22be5fe jdk-15+3
d54ce919da90dab361995bb4d87be9851f00537a jdk-14+30
bb0a7975b31ded63d594ee8dbfc4d4ead587f79b jdk-15+4
decd3d2953b640f1043ee76953ff89238bff92e8 jdk-14+31
b97c1773ccafae4a8c16cc6aedb10b2a4f9a07ed jdk-15+5
2776da28515e087cc8849acf1e131a65ea7e77b6 jdk-14+32
ef7d53b4fccd4a0501b17d974e84f37aa99fa813 jdk-15+6
f728b6c7f4910d6bd6070cb4dde8393f4ba95113 jdk-14+33
e2bc57500c1b785837982f7ce8af6751387ed73b jdk-15+7
a96bc204e3b31ddbf909b20088964112f052927e jdk-14+34
c7d4f2849dbfb755fc5860b362a4044ea0c9e082 jdk-15+8
4a87bb7ebfd7f6a25ec59a5982fe3607242777f8 jdk-14+35
62b5bfef8d618e08e6f3a56cf1fb0e67e89e9cc2 jdk-15+9
bc54620a3848c26cff9766e5e2a6e5ddab98ed18 jdk-14+36
1bee69801aeea1a34261c93f35bc9de072a98704 jdk-15+10
b2dd4028a6de4e40dda8b76109e4b5c6b294f980 jdk-15+11
2ec0ff3042630ddbd3587e340fe0dd40391cb6c4 jdk-15+12
1c06a8ee8acad4d93c782626a233693a73de0add jdk-15+13
1d6ceb13e142665ea833fca01c8c8598e0ddd211 jdk-15+14
bc54620a3848c26cff9766e5e2a6e5ddab98ed18 jdk-14-ga
82b7c62cf4cc56828a8fb724f57087967232a2a7 jdk-15+15
5c7ec21f5d13f6eb5cd32288c69b8be2f9cac256 jdk-15+16
dd5198db2e5b1ebcafe065d987c03ba9fcb50fc3 jdk-15+17
44aef192b488a48cce12422394691a6b1d16b98e jdk-15+18
7cc27caabe6e342151e8baf549beb07a9c755ec2 jdk-15+19
46bca5e5e6fb26efd07245d26fe96a9c3260f51e jdk-15+20
12b55fad80f30d24b1f8fdb3b947ea6465ef9518 jdk-15+21
7223c6d610343fd8323af9d07d501e01fa1a7696 jdk-15+22
f143729ca00ec14a98ea5c7f73acba88da97746e jdk-15+23
497fd9f9129c4928fd5a876dd55e0daf6298b511 jdk-15+24
90b266a84c06f1b3dc0ed8767856793e8c1c357e jdk-15+25
0a32396f7a690015d22ca3328ac441a358295d90 jdk-15+26
93813843680bbe1b7efbca56c03fd137f20a2c31 jdk-16+0
93813843680bbe1b7efbca56c03fd137f20a2c31 jdk-15+27
4a485c89d5a08b495961835f5308a96038678aeb jdk-16+1
06c9f89459daba98395fad726100feb44f89ba71 jdk-15+28
bcbe7b8a77b8971bc221c0be1bd2abb6fb68c2d0 jdk-16+2
b58fc60580550a4a587cab729d8fd87223ad6932 jdk-15+29
76810b3a88c8c641ae3850a8dfd7c40c984aea9d jdk-16+3
6909e4a1f25bfe9a2727026f5845fc1fc44a36aa jdk-15+30
e2622818f0bd30e736252eba101fe7d2c27f400b jdk-16+4
a32f58c6b8be81877411767de7ba9c4cf087c1b5 jdk-15+31
143e258f64af490010eb7e0bacc1cfaeceff0993 jdk-16+5
2dad000726b8d5db9f3df647fb4949d88f269dd4 jdk-15+32
4a8fd81d64bafa523cddb45f82805536edace106 jdk-16+6
6b65f4e7a975628df51ef755b02642075390041d jdk-15+33
c3a4a7ea7c304cabdacdc31741eb94c51351668d jdk-16+7
b0817631d2f4395508cb10e81c3858a94d9ae4de jdk-15+34
0a73d6f3aab48ff6d7e61e47f0bc2d87a054f217 jdk-16+8
fd60c3146a024037cdd9be34c645bb793995a7cc jdk-15+35
c075a286cc7df767cce28e8057d6ec5051786490 jdk-16+9
b01985b4f88f554f97901e53e1ba314681dd9c19 jdk-16+10
e3f940bd3c8fcdf4ca704c6eb1ac745d155859d5 jdk-15+36
5c18d696c7ce724ca36df13933aa53f50e12b9e0 jdk-16+11
fc8e62b399bd93d06e8d13dc3b384c450e853dcd jdk-16+12
fd07cdb26fc70243ef23d688b545514f4ddf1c2b jdk-16+13
36b29df125dc88f11657ce93b4998aa9ff5f5d41 jdk-16+14

179
README.md
View File

@@ -1,11 +1,174 @@
# Welcome to the JDK!
[![official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
For build instructions please see the
[online documentation](https://openjdk.java.net/groups/build/doc/building.html),
or either of these files:
# Welcome to JetBrains Runtime!
- [doc/building.html](doc/building.html) (html version)
- [doc/building.md](doc/building.md) (markdown version)
JetBrains Runtime is a fork of [OpenJDK](https://github.com/openjdk/jdk) available for Windows, Mac OS X, and Linux.
It includes a number enhancements in font rendering, HiDPI support, ligatures, performance improvements, and bugfixes.
See <https://openjdk.java.net/> for more information about
the OpenJDK Community and the JDK.
> **_NOTE_**: This is a **development** branch that is periodically synhronized with
> the [OpenJDK master](https://github.com/openjdk/jdk/tree/master) branch.
>
> Release builds are based on these branches:
> * [master](https://github.com/JetBrains/JetBrainsRuntime/tree/master) (JDK 11)
> * [master17](https://github.com/JetBrains/JetBrainsRuntime/tree/master17) (JDK 17)
## Contents
- [Welcome to JetBrains Runtime](#jetbrains-runtime)
- [Products Built on JetBrains Runtime](#products-built-on-jetbrains-runtime)
- [Getting Sources](#getting-sources)
- [macOS, Linux](#macos-linux)
- [Windows](#sources-windows)
- [Configuring the Build Environment](#configuring-the-build-environment)
- [Linux (Docker)](#linux-docker)
- [Ubuntu Linux](#ubuntu-linux)
- [Windows](#build-windows)
- [macOS](#macos)
- [Developing](#developing)
- [Contributing](#contributing)
- [Resources](#resources)
## Products Built on JetBrains Runtime
* [Android Studio](https://developer.android.com/studio). The official IDE for Google's Android operating system.
* [CLion](https://www.jetbrains.com/clion/). A cross-platform IDE for C and C++ from JetBrains.
* [DataGrip](https://www.jetbrains.com/datagrip/). The IDE for Databases and SQL from JetBrains.
* [GoLand](https://www.jetbrains.com/go/). The cross-platform Go IDE from JetBrains.
* [IntelliJ IDEA](https://www.jetbrains.com/idea/). The IDE for JVM from JetBrains.
* [JProfiler](https://www.ej-technologies.com/products/jprofiler/overview.html). The Java profiler.
* [PhpStorm](https://www.jetbrains.com/phpstorm/). The PHP IDE from JetBrains.
* [PyCharm](https://www.jetbrains.com/pycharm/). The Python IDE from JetBrains.
* [Rider](https://www.jetbrains.com/rider/). The cross-platform .NET IDE from JetBrains.
* [RubyMine](https://www.jetbrains.com/ruby/). The Ruby and Rails IDE from JetBrains.
* [WebStorm](https://www.jetbrains.com/webstorm/). The JavaScript IDE from JetBrains.
* [YourKit](https://www.yourkit.com/). Java and .NET profilers.
## Getting Sources
### macOS, Linux
```
git config --global core.autocrlf input
git clone git@github.com:JetBrains/JetBrainsRuntime.git
```
### Windows
<a name="sources-windows"></a>
```
git config --global core.autocrlf false
git clone git@github.com:JetBrains/JetBrainsRuntime.git
```
## Configuring the Build Environment
Here are quick per-platform instructions for those who can't wait to get started.
Please refer to [OpenJDK build docs](https://openjdk.java.net/groups/build/doc/building.html) for in-depth
coverage of all the details.
> **_TIP:_** To get a preliminary report of what's missing, run `./configure` and check its output.
> It would usually have a meaningful advice on how to solve the problem.
### Linux (Docker)
Create a container:
```
$ cd jb/project/docker
$ docker build .
...
Successfully built 942ea9900054
```
Run these commands in the new container:
```
$ docker run -v `pwd`../../../../:/JetBrainsRuntime -it 942ea9900054
# cd /JetBrainsRuntime
# sh ./configure
# make images CONF=linux-x86_64-normal-server-release
```
### Ubuntu Linux
Install the necessary tools, libraries, and headers with:
```
$ sudo apt-get install autoconf make build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev \
libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev
```
Get Java 17 (for instance, [Azul Zulu Builds of OpenJDK 17](https://www.azul.com/downloads/?version=java-17-ea&package=jdk)).
Then run the following:
```
$ cd JetBrainsRuntime
$ git checkout jbr-dev
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/linux-x86_64-server-release/`.
### Windows
<a name="build-windows"></a>
Install the following:
* [Cygwin x64](http://www.cygwin.com/).
Required packages: `autoconf`, `binutils`, `cpio`, `diffutils`, `file`, `gawk`, `gcc-core`, `make`, `m4`, `unzip`, `zip`.
Install those together with Cygwin.
* [Visual Studio compiler toolset](https://visualstudio.microsoft.com/downloads/).
Install with the desktop development kit, which includes Windows SDK and compilers.
Visual Studio 2019 is supported by default.
* Java 17 (for instance, [Azul Zulu Builds of OpenJDK 17](https://www.azul.com/downloads/?version=java-17-ea&os=windows&architecture=x86-64-bit&package=jdk).
If you have problems while configuring, read [Java tips on Cygwin](http://horstmann.com/articles/cygwin-tips.html).
From the command line:
```
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
"c:\Program_Files\cygwin64\bin\mintty.exe" /bin/bash -l
```
The first command sets up environment variables, the second starts a Cygwin shell with the proper environment.
In the Cygwin shell:
```
$ cd JetBrainsRuntime
$ git checkout jbr-dev
$ bash configure --with-toolchain-version=2019
$ make images
```
This will build the release configuration under `./build/windows-x86_64-server-release/`.
### macOS
Install the following:
* Xcode command line developer tools and `autoconf` via [Homebrew](https://brew.sh/).
* Java 17 (for instance, [Azul Zulu Builds of OpenJDK 17](https://www.azul.com/downloads/?version=java-17-ea&package=jdk)).
From the command line:
```
$ cd JetBrainsRuntime
$ git checkout jbr-dev
$ sh ./configure
$ make images
```
This will build the release configuration under `./build/macosx-x86_64-server-release/`.
## Developing
You can use [CLion](https://www.jetbrains.com/clion/) to develop native parts of the JetBrains Runtime and
[IntelliJ IDEA](https://www.jetbrains.com/idea/) for the parts written in Java.
Both require projects to be created.
### CLion
Run
```
$ make compile-commands
```
in the git root and open the resulting `build/.../compile_commands.json` file as a project.
Then use `Tools | Compilation Database | Change Project Root` to point to git root of this repository.
See also this detailed step-by-step tutorial for all platforms:
[How to develop OpenJDK with CLion](https://blog.jetbrains.com/clion/2020/03/openjdk-with-clion/).
### IDEA
Run
```
$ sh ./bin/idea.sh
```
in the git root to generate project files (add `--help` for options). If you have multiple
configurations (for example, `release` and `fastdebug`), supply the `--conf <conf_name>` argument.
Then open the git root directory as a project in IDEA.
## Contributing
We are happy to receive your pull requests!
Before you submit one, please sign our [Contributor License Agreement (CLA)](https://www.jetbrains.com/agreements/cla/).
## Resources
* [JetBrains Runtime on github](https://github.com/JetBrains/JetBrainsRuntime).
* [OpenJDK build instructions](https://openjdk.java.net/groups/build/doc/building.html).
* [OpenJDK test instructions](https://htmlpreview.github.io/?https://raw.githubusercontent.com/openjdk/jdk/master/doc/building.html#running-tests).

View File

@@ -25,7 +25,26 @@
# 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>] [-c|--conf <conf_name>] [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 " -c | --conf <conf_name>
make configuration (release, slowdebug etc)"
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 +52,14 @@ 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
CONF_ARG=
while [ $# -gt 0 ]
do
case $1 in
@@ -44,12 +67,26 @@ 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
;;
-c | --conf )
CONF_ARG="CONF_NAME=$2"
shift
;;
@@ -64,20 +101,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 +124,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="$*" $CONF_ARG || 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 +159,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 +219,106 @@ 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
"src/"*) MAIN_SOURCE_DIRS="$MAIN_SOURCE_DIRS <sourceFolder url=\"file://$MODULE_DIR/$dir\" isTestSource=\"false\" />" ;;
*"/support/gensrc/$module") ;; # Exclude generated sources to avoid module-info conflicts, see https://youtrack.jetbrains.com/issue/IDEA-185108
*) 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

@@ -96,6 +96,7 @@
<li><a href="#specific-build-issues">Specific Build Issues</a></li>
<li><a href="#getting-help">Getting Help</a></li>
</ul></li>
<li><a href="#reproducible-builds">Reproducible Builds</a></li>
<li><a href="#hints-and-suggestions-for-advanced-users">Hints and Suggestions for Advanced Users</a><ul>
<li><a href="#bash-completion">Bash Completion</a></li>
<li><a href="#using-multiple-configurations">Using Multiple Configurations</a></li>
@@ -488,7 +489,7 @@
<li><code>CONF</code> and <code>CONF_NAME</code> - Selecting the configuration(s) to use. See <a href="#using-multiple-configurations">Using Multiple Configurations</a></li>
</ul>
<h4 id="test-make-control-variables">Test Make Control Variables</h4>
<p>These make control variables only make sense when running tests. Please see <a href="testing.html">Testing the JDK</a> for details.</p>
<p>These make control variables only make sense when running tests. Please see <strong>Testing the JDK</strong> (<a href="testing.html">html</a>, <a href="testing.md">markdown</a>) for details.</p>
<ul>
<li><code>TEST</code></li>
<li><code>TEST_JOBS</code></li>
@@ -506,7 +507,7 @@
</ul>
<h2 id="running-tests">Running Tests</h2>
<p>Most of the JDK tests are using the <a href="http://openjdk.java.net/jtreg">JTReg</a> test framework. Make sure that your configuration knows where to find your installation of JTReg. If this is not picked up automatically, use the <code>--with-jtreg=&lt;path to jtreg home&gt;</code> option to point to the JTReg framework. Note that this option should point to the JTReg home, i.e. the top directory, containing <code>lib/jtreg.jar</code> etc.</p>
<p>The <a href="https://wiki.openjdk.java.net/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptopenjdk.net/view/Dependencies/job/jtreg/lastSuccessfulBuild/artifact">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
<p>The <a href="https://wiki.openjdk.java.net/display/Adoption">Adoption Group</a> provides recent builds of jtreg <a href="https://ci.adoptopenjdk.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/">here</a>. Download the latest <code>.tar.gz</code> file, unpack it, and point <code>--with-jtreg</code> to the <code>jtreg</code> directory that you just unpacked.</p>
<p>Building of Hotspot Gtest suite requires the source code of Google Test framework. The top directory, which contains both <code>googletest</code> and <code>googlemock</code> directories, should be specified via <code>--with-gtest</code>. The supported version of Google Test is 1.8.1, whose source code can be obtained:</p>
<ul>
<li>by downloading and unpacking the source bundle from <a href="https://github.com/google/googletest/releases/tag/release-1.8.1">here</a></li>
@@ -514,7 +515,7 @@
</ul>
<p>To execute the most basic tests (tier 1), use:</p>
<pre><code>make run-test-tier1</code></pre>
<p>For more details on how to run tests, please see the <a href="testing.html">Testing the JDK</a> document.</p>
<p>For more details on how to run tests, please see <strong>Testing the JDK</strong> (<a href="testing.html">html</a>, <a href="testing.md">markdown</a>).</p>
<h2 id="cross-compiling">Cross-compiling</h2>
<p>Cross-compiling means using one platform (the <em>build</em> platform) to generate output that can ran on another platform (the <em>target</em> platform).</p>
<p>The typical reason for cross-compiling is that the build is performed on a more powerful desktop computer, but the resulting binaries will be able to run on a different, typically low-performing system. Most of the complications that arise when building for embedded is due to this separation of <em>build</em> and <em>target</em> systems.</p>
@@ -884,6 +885,32 @@ spawn failed</code></pre>
<h3 id="getting-help">Getting Help</h3>
<p>If none of the suggestions in this document helps you, or if you find what you believe is a bug in the build system, please contact the Build Group by sending a mail to <a href="mailto:build-dev@openjdk.java.net">build-dev@openjdk.java.net</a>. Please include the relevant parts of the configure and/or build log.</p>
<p>If you need general help or advice about developing for the JDK, you can also contact the Adoption Group. See the section on <a href="#contributing-to-openjdk">Contributing to OpenJDK</a> for more information.</p>
<h2 id="reproducible-builds">Reproducible Builds</h2>
<p>Build reproducibility is the property of getting exactly the same bits out when building, every time, independent on who builds the product, or where. This is for many reasons a harder goal than it initially appears, but it is an important goal, for security reasons and others. Please see <a href="https://reproducible-builds.org">Reproducible Builds</a> for more information about the background and reasons for reproducible builds.</p>
<p>Currently, it is not possible to build OpenJDK fully reproducibly, but getting there is an ongoing effort. There are some things you can do to minimize non-determinism and make a larger part of the build reproducible:</p>
<ul>
<li>Turn on build system support for reproducible builds</li>
</ul>
<p>Add the flag <code>--enable-reproducible-build</code> to your <code>configure</code> command line. This will turn on support for reproducible builds where it could otherwise be lacking.</p>
<ul>
<li>Do not rely on <code>configure</code>'s default adhoc version strings</li>
</ul>
<p>Default adhoc version strings OPT segment include user name, source directory and timestamp. You can either override just the OPT segment using <code>--with-version-opt=&lt;any fixed string&gt;</code>, or you can specify the entire version string using <code>--with-version-string=&lt;your version&gt;</code>.</p>
<ul>
<li>Specify how the build sets <code>SOURCE_DATE_EPOCH</code></li>
</ul>
<p>The JDK build system will set the <code>SOURCE_DATE_EPOCH</code> environment variable during building, depending on the value of the <code>--with-source-date</code> option for <code>configure</code>. The default value is <code>updated</code>, which means that <code>SOURCE_DATE_EPOCH</code> will be set to the current time each time you are running <code>make</code>.</p>
<p>The <a href="https://reproducible-builds.org/docs/source-date-epoch/"><code>SOURCE_DATE_EPOCH</code> environment variable</a> is an industry standard, that many tools, such as gcc, recognize, and use in place of the current time when generating output.</p>
<p>For reproducible builds, you need to set this to a fixed value. You can use the special value <code>version</code> which will use the nominal release date for the current JDK version, or a value describing a date, either an epoch based timestamp as an integer, or a valid ISO-8601 date.</p>
<p><strong>Hint:</strong> If your build environment already sets <code>SOURCE_DATE_EPOCH</code>, you can propagate this using <code>--with-source-date=$SOURCE_DATE_EPOCH</code>.</p>
<ul>
<li>Specify a hotspot build time</li>
</ul>
<p>Set a fixed hotspot build time. This will be included in the hotspot library (<code>libjvm.so</code> or <code>jvm.dll</code>) and defaults to the current time when building hotspot. Use <code>--with-hotspot-build-time=&lt;any fixed string&gt;</code> for reproducible builds. It's a string so you don't need to format it specifically, so e.g. <code>n/a</code> will do. Another solution is to use the <code>SOURCE_DATE_EPOCH</code> variable, e.g. <code>--with-hotspot-build-time=$(date --date=@$SOURCE_DATE_EPOCH)</code>.</p>
<ul>
<li>Copyright year</li>
</ul>
<p>The copyright year in some generated text files are normally set to the current year. This can be overridden by <code>--with-copyright-year=&lt;year&gt;</code>. For fully reproducible builds, this needs to be set to a fixed value.</p>
<h2 id="hints-and-suggestions-for-advanced-users">Hints and Suggestions for Advanced Users</h2>
<h3 id="bash-completion">Bash Completion</h3>
<p>The <code>configure</code> and <code>make</code> commands tries to play nice with bash command-line completion (using <code>&lt;tab&gt;</code> or <code>&lt;tab&gt;&lt;tab&gt;</code>). To use this functionality, make sure you enable completion in your <code>~/.bashrc</code> (see instructions for bash in your operating system).</p>

View File

@@ -818,7 +818,7 @@ configuration, as opposed to the "configure time" configuration.
#### Test Make Control Variables
These make control variables only make sense when running tests. Please see
[Testing the JDK](testing.html) for details.
**Testing the JDK** ([html](testing.html), [markdown](testing.md)) for details.
* `TEST`
* `TEST_JOBS`
@@ -848,7 +848,7 @@ containing `lib/jtreg.jar` etc.
The [Adoption Group](https://wiki.openjdk.java.net/display/Adoption) provides
recent builds of jtreg [here](
https://ci.adoptopenjdk.net/view/Dependencies/job/jtreg/lastSuccessfulBuild/artifact).
https://ci.adoptopenjdk.net/view/Dependencies/job/dependency_pipeline/lastSuccessfulBuild/artifact/jtreg/).
Download the latest `.tar.gz` file, unpack it, and point `--with-jtreg` to the
`jtreg` directory that you just unpacked.
@@ -865,8 +865,8 @@ To execute the most basic tests (tier 1), use:
make run-test-tier1
```
For more details on how to run tests, please see the [Testing
the JDK](testing.html) document.
For more details on how to run tests, please see **Testing the JDK**
([html](testing.html), [markdown](testing.md)).
## Cross-compiling
@@ -1503,6 +1503,68 @@ If you need general help or advice about developing for the JDK, you can also
contact the Adoption Group. See the section on [Contributing to OpenJDK](
#contributing-to-openjdk) for more information.
## Reproducible Builds
Build reproducibility is the property of getting exactly the same bits out when
building, every time, independent on who builds the product, or where. This is
for many reasons a harder goal than it initially appears, but it is an important
goal, for security reasons and others. Please see [Reproducible Builds](
https://reproducible-builds.org) for more information about the background and
reasons for reproducible builds.
Currently, it is not possible to build OpenJDK fully reproducibly, but getting
there is an ongoing effort. There are some things you can do to minimize
non-determinism and make a larger part of the build reproducible:
* Turn on build system support for reproducible builds
Add the flag `--enable-reproducible-build` to your `configure` command line.
This will turn on support for reproducible builds where it could otherwise be
lacking.
* Do not rely on `configure`'s default adhoc version strings
Default adhoc version strings OPT segment include user name, source directory
and timestamp. You can either override just the OPT segment using
`--with-version-opt=<any fixed string>`, or you can specify the entire version
string using `--with-version-string=<your version>`.
* Specify how the build sets `SOURCE_DATE_EPOCH`
The JDK build system will set the `SOURCE_DATE_EPOCH` environment variable
during building, depending on the value of the `--with-source-date` option for
`configure`. The default value is `updated`, which means that
`SOURCE_DATE_EPOCH` will be set to the current time each time you are running
`make`.
The [`SOURCE_DATE_EPOCH` environment variable](
https://reproducible-builds.org/docs/source-date-epoch/) is an industry
standard, that many tools, such as gcc, recognize, and use in place of the
current time when generating output.
For reproducible builds, you need to set this to a fixed value. You can use the
special value `version` which will use the nominal release date for the current
JDK version, or a value describing a date, either an epoch based timestamp as an
integer, or a valid ISO-8601 date.
**Hint:** If your build environment already sets `SOURCE_DATE_EPOCH`, you can
propagate this using `--with-source-date=$SOURCE_DATE_EPOCH`.
* Specify a hotspot build time
Set a fixed hotspot build time. This will be included in the hotspot library
(`libjvm.so` or `jvm.dll`) and defaults to the current time when building
hotspot. Use `--with-hotspot-build-time=<any fixed string>` for reproducible
builds. It's a string so you don't need to format it specifically, so e.g. `n/a`
will do. Another solution is to use the `SOURCE_DATE_EPOCH` variable, e.g.
`--with-hotspot-build-time=$(date --date=@$SOURCE_DATE_EPOCH)`.
* Copyright year
The copyright year in some generated text files are normally set to the current
year. This can be overridden by `--with-copyright-year=<year>`. For fully
reproducible builds, this needs to be set to a fixed value.
## Hints and Suggestions for Advanced Users
### Bash Completion

View File

@@ -50,6 +50,7 @@
<li><a href="#nullptr">nullptr</a></li>
<li><a href="#atomic">&lt;atomic&gt;</a></li>
<li><a href="#uniform-initialization">Uniform Initialization</a></li>
<li><a href="#local-function-objects">Local Function Objects</a></li>
<li><a href="#additional-permitted-features">Additional Permitted Features</a></li>
<li><a href="#excluded-features">Excluded Features</a></li>
<li><a href="#undecided-features">Undecided Features</a></li>
@@ -194,7 +195,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<p>Similar discussions for some other projects:</p>
<ul>
<li><p><a href="https://google.github.io/styleguide/cppguide.html">Google C++ Style Guide</a> — Currently (2020) targeting C++17.</p></li>
<li><p><a href="https://chromium-cpp.appspot.com">C++11 and C++14 use in Chromium</a> — Categorizes features as allowed, banned, or to be discussed.</p></li>
<li><p><a href="https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++11.md">C++11 and C++14 use in Chromium</a> — Categorizes features as allowed, banned, or to be discussed.</p></li>
<li><p><a href="https://llvm.org/docs/CodingStandards.html">llvm Coding Standards</a> — Currently (2020) targeting C++14.</p></li>
<li><p><a href="https://firefox-source-docs.mozilla.org/code-quality/coding-style/using_cxx_in_firefox_code.html">Using C++ in Mozilla code</a> — C++17 support is required for recent versions (2020).</p></li>
</ul>
@@ -254,8 +255,7 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><p>Function argument deduction. This is always permitted, and indeed encouraged. It is nearly always better to allow the type of a function template argument to be deduced rather than explicitly specified.</p></li>
<li><p><code>auto</code> variable declarations (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1984.pdf">n1984</a>)<br> For local variables, this can be used to make the code clearer by eliminating type information that is obvious or irrelevant. Excessive use can make code much harder to understand.</p></li>
<li><p>Function return type deduction (<a href="https://isocpp.org/files/papers/N3638.html">n3638</a>)<br> Only use if the function body has a very small number of <code>return</code> statements, and generally relatively little other code.</p></li>
<li><p>Generic lambdas. Lambdas are not (yet) permitted.</p></li>
<li><p>Lambda init captures. Lambdas are not (yet) permitted.</p></li>
<li><p>Also see <a href="#lambdaexpressions">lambda expressions</a>.</p></li>
</ul>
<h3 id="expression-sfinae">Expression SFINAE</h3>
<p><a href="https://en.cppreference.com/w/cpp/language/sfinae" title="Substitution Failure Is Not An Error">Substitution Failure Is Not An Error</a> (SFINAE) is a template metaprogramming technique that makes use of template parameter substitution failures to make compile-time decisions.</p>
@@ -288,6 +288,121 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><a href="https://en.cppreference.com/w/cpp/language/aggregate_initialization">aggregate initialization</a></li>
</ul>
<p>Although related, the use of <code>std::initializer_list</code> remains forbidden, as part of the avoidance of the C++ Standard Library in HotSpot code.</p>
<h3 id="local-function-objects">Local Function Objects</h3>
<ul>
<li>Local function objects, including lambda expressions, may be used.</li>
<li>Lambda expressions must only be used as a downward value.</li>
<li>Prefer <code>[&amp;]</code> as the capture list of a lambda expression.</li>
<li>Return type deduction for lambda expressions is permitted, and indeed encouraged.</li>
<li>An empty parameter list for a lambda expression may be elided.</li>
<li>A lambda expression must not be <code>mutable</code>.</li>
<li>Generic lambda expressions are permitted.</li>
<li>Lambda expressions should be relatively simple.</li>
<li>Anonymous lambda expressions should not overly clutter the enclosing expression.</li>
<li>An anonymous lambda expression must not be directly invoked.</li>
<li>Bind expressions are forbidden.</li>
</ul>
<p>Single-use function objects can be defined locally within a function, directly at the point of use. This is an alternative to having a function or function object class defined at class or namespace scope.</p>
<p>This usage was somewhat limited by C++03, which does not permit such a class to be used as a template parameter. That restriction was removed by C++11 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm">n2657</a>). Use of this feature is permitted.</p>
<p>Many HotSpot protocols involve &quot;function-like&quot; objects that involve some named member function rather than a call operator. For example, a function that performs some action on all threads might be written as</p>
<pre><code>void do_something() {
struct DoSomething : public ThreadClosure {
virtual void do_thread(Thread* t) {
... do something with t ...
}
} closure;
Threads::threads_do(&amp;closure);
}</code></pre>
<p>HotSpot code has historically usually placed the DoSomething class at namespace (or sometimes class) scope. This separates the function's code from its use, often to the detriment of readability. It requires giving the class a globally unique name (if at namespace scope). It also loses the information that the class is intended for use in exactly one place, and does not have any subclasses. (However, the latter can now be indicated by declaring it <code>final</code>.) Often, for simplicity, a local class will skip things like access control and accessor functions, giving the enclosing function direct access to the implementation and eliminating some boilerplate that might be provided if the class is in some outer (more accessible) scope. On the other hand, if there is a lot of surrounding code in the function body or the local class is of significant size, defining it locally can increase clutter and reduce readability.</p>
<p><a name="lambdaexpressions"></a> C++11 added <em>lambda expressions</em> as a new way to write a function object. Simple lambda expressions can be significantly more concise than a function object, eliminating a lot of boiler-plate. On the other hand, a complex lambda expression may not provide much, if any, readability benefit compared to an ordinary function object. Also, while a lambda can encapsulate a call to a &quot;function-like&quot; object, it cannot be used in place of such.</p>
<p>A common use for local functions is as one-use <a href="https://en.cppreference.com/w/cpp/language/raii" title="Resource Acquisition Is Initialization">RAII</a> objects. The amount of boilerplate for a function object class (local or not) makes such usage somewhat clumsy and verbose. But with the help of a small amount of supporting utility code, lambdas work particularly well for this use case.</p>
<p>Another use for local functions is <a href="https://en.wikipedia.org/wiki/Partial_application" title="Partial Application">partial application</a>. Again here, lambdas are typically much simpler and less verbose than function object classes.</p>
<p>Because of these benefits, lambda expressions are permitted in HotSpot code, with some restrictions and usage guidance. An anonymous lambda is one which is passed directly as an argument. A named lambda is the value of a variable, which is its name.</p>
<p>Lambda expressions should only be passed downward. In particular, a lambda should not be returned from a function or stored in a global variable, whether directly or as the value of a member of some other object. Lambda capture is syntactically subtle (by design), and propagating a lambda in such ways can easily pass references to captured values to places where they are no longer valid. In particular, members of the enclosing <code>this</code> object are effectively captured by reference, even if the default capture is by-value. For such uses-cases a function object class should be used to make the desired value capturing and propagation explicit.</p>
<p>Limiting the capture list to <code>[&amp;]</code> (implicitly capture by reference) is a simplifying restriction that still provides good support for HotSpot usage, while reducing the cases a reader must recognize and understand.</p>
<ul>
<li><p>Many common lambda uses require reference capture. Not permitting it would substantially reduce the utility of lambdas.</p></li>
<li><p>Referential transparency. Implicit reference capture makes variable references in the lambda body have the same meaning they would have in the enclosing code. There isn't a semantic barrier across which the meaning of a variable changes.</p></li>
<li><p>Explicit reference capture introduces significant clutter, especially when lambda expressions are relatively small and simple, as they should be in HotSpot code.</p></li>
<li><p>There are a number of reasons why by-value capture might be used, but for the most part they don't apply to HotSpot code, given other usage restrictions.</p>
<ul>
<li><p>A primary use-case for by-value capture is to support escaping uses, where values captured by-reference might become invalid. That use-case doesn't apply if only downward lambdas are used.</p></li>
<li><p>By-value capture can also make a lambda-local copy for mutation, which requires making the lambda <code>mutable</code>; see below.</p></li>
<li><p>By-value capture might be viewed as an optimization, avoiding any overhead for reference capture of cheap to copy values. But the compiler can often eliminate any such overhead.</p></li>
<li><p>By-value capture by a non-<code>mutable</code> lambda makes the captured values const, preventing any modification by the lambda and making the captured value unaffected by modifications to the outer variable. But this only applies to captured auto variables, not member variables, and is inconsistent with referential transparency.</p></li>
</ul></li>
<li><p>Non-capturing lambdas (with an empty capture list - <code>[]</code>) have limited utility. There are cases where no captures are required (pure functions, for example), but if the function is small and simple then that's obvious anyway.</p></li>
<li><p>Capture initializers (a C++14 feature - <a href="https://isocpp.org/files/papers/N3649.html">N3649</a>) are not permitted. Capture initializers inherently increase the complexity of the capture list, and provide little benefit over an additional in-scope local variable.</p></li>
</ul>
<p>The use of <code>mutable</code> lambda expressions is forbidden because there don't seem to be many, if any, good use-cases for them in HotSpot. A lambda expression needs to be mutable in order to modify a by-value captured value. But with only downward lambdas, such usage seems likely to be rare and complicated. It is better to use a function object class in any such cases that arise, rather than requiring all HotSpot developers to understand this relatively obscure feature.</p>
<p>While it is possible to directly invoke an anonymous lambda expression, that feature should not be used, as such a form can be confusing to readers. Instead, name the lambda and call it by name.</p>
<p>Some reasons to prefer a named lambda instead of an anonymous lambda are</p>
<ul>
<li><p>The body contains non-trivial control flow or declarations or other nested constructs.</p></li>
<li><p>Its role in an argument list is hard to guess without examining the function declaration. Give it a name that indicates its purpose.</p></li>
<li><p>It has an unusual capture list.</p></li>
<li><p>It has a complex explicit return type or parameter types.</p></li>
</ul>
<p>Lambda expressions, and particularly anonymous lambda expressions, should be simple and compact. One-liners are good. Anonymous lambdas should usually be limited to a couple lines of body code. More complex lambdas should be named. A named lambda should not clutter the enclosing function and make it long and complex; do continue to break up large functions via the use of separate helper functions.</p>
<p>An anonymous lambda expression should either be a one-liner in a one-line expression, or isolated in its own set of lines. Don't place part of a lambda expression on the same line as other arguments to a function. The body of a multi-line lambda argument should be indented from the start of the capture list, as if that were the start of an ordinary function definition. The body of a multi-line named lambda should be indented one step from the variable's indentation.</p>
<p>Some examples:</p>
<ol type="1">
<li><code>foo([&amp;] { ++counter; });</code></li>
<li><code>foo(x, [&amp;] { ++counter; });</code></li>
<li><code>foo([&amp;] { if (predicate) ++counter; });</code></li>
<li><code>foo([&amp;] { auto tmp = process(x); tmp.f(); return tmp.g(); })</code></li>
<li><p>Separate one-line lambda from other arguments:</p>
<pre><code>foo(c.begin(), c.end(),
[&amp;] (const X&amp; x) { do_something(x); return x.value(); });</code></pre></li>
<li><p>Indentation for multi-line lambda:</p>
<pre><code>c.do_entries([&amp;] (const X&amp; x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
});</code></pre></li>
<li><p>Separate multi-line lambda from other arguments:</p>
<pre><code>foo(c.begin(), c.end(),
[&amp;] (const X&amp; x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
});</code></pre></li>
<li><p>Multi-line named lambda:</p>
<pre><code>auto do_entry = [&amp;] (const X&amp; x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
};</code></pre></li>
</ol>
<p>Item 4, and especially items 6 and 7, are pushing the simplicity limits for anonymous lambdas. Item 6 might be better written using a named lambda:</p>
<pre><code>c.do_entries(do_entry);</code></pre>
<p>Note that C++11 also added <em>bind expressions</em> as a way to write a function object for partial application, using <code>std::bind</code> and related facilities from the Standard Library. <code>std::bind</code> generalizes and replaces some of the binders from C++03. Bind expressions are not permitted in HotSpot code. They don't provide enough benefit over lambdas or local function classes in the cases where bind expressions are applicable to warrant the introduction of yet another mechanism in this space into HotSpot code.</p>
<p>References:</p>
<ul>
<li>Local and unnamed types as template parameters (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm">n2657</a>)</li>
<li>New wording for C++0x lambdas (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2927.pdf">n2927</a>)</li>
<li>Generalized lambda capture (init-capture) (<a href="https://isocpp.org/files/papers/N3648.html">N3648</a>)</li>
<li>Generic (polymorphic) lambda expressions (<a href="https://isocpp.org/files/papers/N3649.html">N3649</a>)</li>
</ul>
<p>References from C++17</p>
<ul>
<li>Wording for constexpr lambda (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0170r1.pdf">p0170r1</a>)</li>
<li>Lambda capture of *this by Value (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0018r3.html">p0018r3</a>)</li>
</ul>
<p>References from C++20</p>
<ul>
<li>Allow lambda capture [=, this] (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0409r2.html">p0409r2</a>)</li>
<li>Familiar template syntax for generic lambdas (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0428r2.pdf">p0428r2</a>)</li>
<li>Simplifying implicit lambda capture (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0588r1.html">p0588r1</a>)</li>
<li>Default constructible and assignable stateless lambdas (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0624r2.pdf">p0624r2</a>)</li>
<li>Lambdas in unevaluated contexts (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0315r4.pdf">p0315r4</a>)</li>
<li>Allow pack expansion in lambda init-capture (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0780r2.html">p0780r2</a>) (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2095r0.html">p2095r0</a>)</li>
<li>Deprecate implicit capture of this via [=] (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0806r2.html">p0806r2</a>)</li>
</ul>
<p>References from C++23</p>
<ul>
<li>Make () more optional for lambdas (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1102r2.html">p1102r2</a>)</li>
</ul>
<h3 id="additional-permitted-features">Additional Permitted Features</h3>
<ul>
<li><p><code>constexpr</code> (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf">n2235</a>) (<a href="https://isocpp.org/files/papers/N3652.html">n3652</a>)</p></li>
@@ -305,7 +420,6 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<li><p>Dynamic initialization and destruction with concurrency (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm">n2660</a>)</p></li>
<li><p><code>final</code> virtual specifiers for classes and virtual functions (<a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm">n2928</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm">n3206</a>), (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm">n3272</a>)</p></li>
<li><p><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>
<h3 id="excluded-features">Excluded Features</h3>
@@ -337,7 +451,6 @@ while ( test_foo(args...) ) { // No, excess spaces around control</code></pre></
<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>
<li><p><code>[[noreturn]]</code> attribute (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf">n2761</a>)</p></li>
<li><p>Rvalue references and move semantics</p></li>
<li><p>Lambdas</p></li>
</ul>
</body>
</html>

View File

@@ -409,7 +409,7 @@ Similar discussions for some other projects:
* [Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html) &mdash;
Currently (2020) targeting C++17.
* [C++11 and C++14 use in Chromium](https://chromium-cpp.appspot.com) &mdash;
* [C++11 and C++14 use in Chromium](https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++11.md) &mdash;
Categorizes features as allowed, banned, or to be discussed.
* [llvm Coding Standards](https://llvm.org/docs/CodingStandards.html) &mdash;
@@ -596,9 +596,7 @@ use can make code much harder to understand.
Only use if the function body has a very small number of `return`
statements, and generally relatively little other code.
* Generic lambdas. Lambdas are not (yet) permitted.
* Lambda init captures. Lambdas are not (yet) permitted.
* Also see [lambda expressions](#lambdaexpressions).
### Expression SFINAE
@@ -703,6 +701,273 @@ Some relevant sections from cppreference.com:
Although related, the use of `std::initializer_list` remains forbidden, as
part of the avoidance of the C++ Standard Library in HotSpot code.
### Local Function Objects
* Local function objects, including lambda expressions, may be used.
* Lambda expressions must only be used as a downward value.
* Prefer `[&]` as the capture list of a lambda expression.
* Return type deduction for lambda expressions is permitted, and indeed encouraged.
* An empty parameter list for a lambda expression may be elided.
* A lambda expression must not be `mutable`.
* Generic lambda expressions are permitted.
* Lambda expressions should be relatively simple.
* Anonymous lambda expressions should not overly clutter the enclosing expression.
* An anonymous lambda expression must not be directly invoked.
* Bind expressions are forbidden.
Single-use function objects can be defined locally within a function,
directly at the point of use. This is an alternative to having a function
or function object class defined at class or namespace scope.
This usage was somewhat limited by C++03, which does not permit such a class
to be used as a template parameter. That restriction was removed by C++11
([n2657]). Use of this feature is permitted.
Many HotSpot protocols involve "function-like" objects that involve some
named member function rather than a call operator. For example, a function
that performs some action on all threads might be written as
```
void do_something() {
struct DoSomething : public ThreadClosure {
virtual void do_thread(Thread* t) {
... do something with t ...
}
} closure;
Threads::threads_do(&closure);
}
```
HotSpot code has historically usually placed the DoSomething class at
namespace (or sometimes class) scope. This separates the function's code
from its use, often to the detriment of readability. It requires giving the
class a globally unique name (if at namespace scope). It also loses the
information that the class is intended for use in exactly one place, and
does not have any subclasses. (However, the latter can now be indicated by
declaring it `final`.) Often, for simplicity, a local class will skip
things like access control and accessor functions, giving the enclosing
function direct access to the implementation and eliminating some
boilerplate that might be provided if the class is in some outer (more
accessible) scope. On the other hand, if there is a lot of surrounding code
in the function body or the local class is of significant size, defining it
locally can increase clutter and reduce readability.
<a name="lambdaexpressions"></a>
C++11 added _lambda expressions_ as a new way to write a function object.
Simple lambda expressions can be significantly more concise than a function
object, eliminating a lot of boiler-plate. On the other hand, a complex
lambda expression may not provide much, if any, readability benefit compared
to an ordinary function object. Also, while a lambda can encapsulate a call
to a "function-like" object, it cannot be used in place of such.
A common use for local functions is as one-use [RAII] objects. The amount
of boilerplate for a function object class (local or not) makes such usage
somewhat clumsy and verbose. But with the help of a small amount of
supporting utility code, lambdas work particularly well for this use case.
Another use for local functions is [partial application][PARTIALAPP]. Again
here, lambdas are typically much simpler and less verbose than function
object classes.
Because of these benefits, lambda expressions are permitted in HotSpot code,
with some restrictions and usage guidance. An anonymous lambda is one which
is passed directly as an argument. A named lambda is the value of a
variable, which is its name.
Lambda expressions should only be passed downward. In particular, a lambda
should not be returned from a function or stored in a global variable,
whether directly or as the value of a member of some other object. Lambda
capture is syntactically subtle (by design), and propagating a lambda in
such ways can easily pass references to captured values to places where they
are no longer valid. In particular, members of the enclosing `this` object
are effectively captured by reference, even if the default capture is
by-value. For such uses-cases a function object class should be used to
make the desired value capturing and propagation explicit.
Limiting the capture list to `[&]` (implicitly capture by reference) is a
simplifying restriction that still provides good support for HotSpot usage,
while reducing the cases a reader must recognize and understand.
* Many common lambda uses require reference capture. Not permitting it
would substantially reduce the utility of lambdas.
* Referential transparency. Implicit reference capture makes variable
references in the lambda body have the same meaning they would have in the
enclosing code. There isn't a semantic barrier across which the meaning of
a variable changes.
* Explicit reference capture introduces significant clutter, especially when
lambda expressions are relatively small and simple, as they should be in
HotSpot code.
* There are a number of reasons why by-value capture might be used, but for
the most part they don't apply to HotSpot code, given other usage restrictions.
* A primary use-case for by-value capture is to support escaping uses,
where values captured by-reference might become invalid. That use-case
doesn't apply if only downward lambdas are used.
* By-value capture can also make a lambda-local copy for mutation, which
requires making the lambda `mutable`; see below.
* By-value capture might be viewed as an optimization, avoiding any
overhead for reference capture of cheap to copy values. But the
compiler can often eliminate any such overhead.
* By-value capture by a non-`mutable` lambda makes the captured values
const, preventing any modification by the lambda and making the captured
value unaffected by modifications to the outer variable. But this only
applies to captured auto variables, not member variables, and is
inconsistent with referential transparency.
* Non-capturing lambdas (with an empty capture list - `[]`) have limited
utility. There are cases where no captures are required (pure functions,
for example), but if the function is small and simple then that's obvious
anyway.
* Capture initializers (a C++14 feature - [N3649]) are not permitted.
Capture initializers inherently increase the complexity of the capture list,
and provide little benefit over an additional in-scope local variable.
The use of `mutable` lambda expressions is forbidden because there don't
seem to be many, if any, good use-cases for them in HotSpot. A lambda
expression needs to be mutable in order to modify a by-value captured value.
But with only downward lambdas, such usage seems likely to be rare and
complicated. It is better to use a function object class in any such cases
that arise, rather than requiring all HotSpot developers to understand this
relatively obscure feature.
While it is possible to directly invoke an anonymous lambda expression, that
feature should not be used, as such a form can be confusing to readers.
Instead, name the lambda and call it by name.
Some reasons to prefer a named lambda instead of an anonymous lambda are
* The body contains non-trivial control flow or declarations or other nested
constructs.
* Its role in an argument list is hard to guess without examining the
function declaration. Give it a name that indicates its purpose.
* It has an unusual capture list.
* It has a complex explicit return type or parameter types.
Lambda expressions, and particularly anonymous lambda expressions, should be
simple and compact. One-liners are good. Anonymous lambdas should usually
be limited to a couple lines of body code. More complex lambdas should be
named. A named lambda should not clutter the enclosing function and make it
long and complex; do continue to break up large functions via the use of
separate helper functions.
An anonymous lambda expression should either be a one-liner in a one-line
expression, or isolated in its own set of lines. Don't place part of a
lambda expression on the same line as other arguments to a function. The
body of a multi-line lambda argument should be indented from the start of
the capture list, as if that were the start of an ordinary function
definition. The body of a multi-line named lambda should be indented one
step from the variable's indentation.
Some examples:
1. `foo([&] { ++counter; });`
2. `foo(x, [&] { ++counter; });`
3. `foo([&] { if (predicate) ++counter; });`
4. `foo([&] { auto tmp = process(x); tmp.f(); return tmp.g(); })`
5. Separate one-line lambda from other arguments:
```
foo(c.begin(), c.end(),
[&] (const X& x) { do_something(x); return x.value(); });
```
6. Indentation for multi-line lambda:
```
c.do_entries([&] (const X& x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
});
```
7. Separate multi-line lambda from other arguments:
```
foo(c.begin(), c.end(),
[&] (const X& x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
});
```
8. Multi-line named lambda:
```
auto do_entry = [&] (const X& x) {
do_something(x, a);
do_something1(x, b);
do_something2(x, c);
};
```
Item 4, and especially items 6 and 7, are pushing the simplicity limits for
anonymous lambdas. Item 6 might be better written using a named lambda:
```
c.do_entries(do_entry);
```
Note that C++11 also added _bind expressions_ as a way to write a function
object for partial application, using `std::bind` and related facilities
from the Standard Library. `std::bind` generalizes and replaces some of the
binders from C++03. Bind expressions are not permitted in HotSpot code.
They don't provide enough benefit over lambdas or local function classes in
the cases where bind expressions are applicable to warrant the introduction
of yet another mechanism in this space into HotSpot code.
References:
* Local and unnamed types as template parameters ([n2657])
* New wording for C++0x lambdas ([n2927])
* Generalized lambda capture (init-capture) ([N3648])
* Generic (polymorphic) lambda expressions ([N3649])
[n2657]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm
[n2927]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2927.pdf
[N3648]: https://isocpp.org/files/papers/N3648.html
[N3649]: https://isocpp.org/files/papers/N3649.html
References from C++17
* Wording for constexpr lambda ([p0170r1])
* Lambda capture of *this by Value ([p0018r3])
[p0170r1]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0170r1.pdf
[p0018r3]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0018r3.html
References from C++20
* Allow lambda capture [=, this] ([p0409r2])
* Familiar template syntax for generic lambdas ([p0428r2])
* Simplifying implicit lambda capture ([p0588r1])
* Default constructible and assignable stateless lambdas ([p0624r2])
* Lambdas in unevaluated contexts ([p0315r4])
* Allow pack expansion in lambda init-capture ([p0780r2]) ([p2095r0])
* Deprecate implicit capture of this via [=] ([p0806r2])
[p0409r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0409r2.html
[p0428r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0428r2.pdf
[p0588r1]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0588r1.html
[p0624r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0624r2.pdf
[p0315r4]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0315r4.pdf
[p0780r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0780r2.html
[p2095r0]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2095r0.html
[p0806r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0806r2.html
References from C++23
* Make () more optional for lambdas ([p1102r2])
[p1102r2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1102r2.html
### Additional Permitted Features
* `constexpr`
@@ -757,9 +1022,6 @@ 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))
* Local and unnamed types as template parameters
([n2657](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm))
* Range-based `for` loops
([n2930](http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html))
([range-for](https://en.cppreference.com/w/cpp/language/range-for))
@@ -837,9 +1099,6 @@ features that have not yet been discussed.
* Rvalue references and move semantics
* Lambdas
[ADL]: https://en.cppreference.com/w/cpp/language/adl
"Argument Dependent Lookup"
@@ -854,3 +1113,6 @@ features that have not yet been discussed.
[SFINAE]: https://en.cppreference.com/w/cpp/language/sfinae
"Substitution Failure Is Not An Error"
[PARTIALAPP]: https://en.wikipedia.org/wiki/Partial_application
"Partial Application"

View File

@@ -27,6 +27,7 @@
<li><a href="#configuration">Configuration</a></li>
</ul></li>
<li><a href="#test-selection">Test selection</a><ul>
<li><a href="#common-test-groups">Common Test Groups</a></li>
<li><a href="#jtreg">JTReg</a></li>
<li><a href="#gtest">Gtest</a></li>
<li><a href="#microbenchmarks">Microbenchmarks</a></li>
@@ -67,6 +68,19 @@ $ make exploded-test TEST=tier2</code></pre>
<p>All functionality is available using the <code>test</code> make target. In this use case, the test or tests to be executed is controlled using the <code>TEST</code> variable. To speed up subsequent test runs with no source code changes, <code>test-only</code> can be used instead, which do not depend on the source and test image build.</p>
<p>For some common top-level tests, direct make targets have been generated. This includes all JTReg test groups, the hotspot gtest, and custom tests (if present). This means that <code>make test-tier1</code> is equivalent to <code>make test TEST=&quot;tier1&quot;</code>, but the latter is more tab-completion friendly. For more complex test runs, the <code>test TEST=&quot;x&quot;</code> solution needs to be used.</p>
<p>The test specifications given in <code>TEST</code> is parsed into fully qualified test descriptors, which clearly and unambigously show which tests will be run. As an example, <code>:tier1</code> will expand to <code>jtreg:$(TOPDIR)/test/hotspot/jtreg:tier1 jtreg:$(TOPDIR)/test/jdk:tier1 jtreg:$(TOPDIR)/test/langtools:tier1 jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1</code>. You can always submit a list of fully qualified test descriptors in the <code>TEST</code> variable if you want to shortcut the parser.</p>
<h3 id="common-test-groups">Common Test Groups</h3>
<p>Ideally, all tests are run for every change but this may not be practical due to the limited testing resources, the scope of the change, etc.</p>
<p>The source tree currently defines a few common test groups in the relevant <code>TEST.groups</code> files. There are test groups that cover a specific component, for example <code>hotspot_gc</code>. It is a good idea to look into <code>TEST.groups</code> files to get a sense what tests are relevant to a particular JDK component.</p>
<p>Component-specific tests may miss some unintended consequences of a change, so other tests should also be run. Again, it might be impractical to run all tests, and therefore <em>tiered</em> test groups exist. Tiered test groups are not component-specific, but rather cover the significant parts of the entire JDK.</p>
<p>Multiple tiers allow balancing test coverage and testing costs. Lower test tiers are supposed to contain the simpler, quicker and more stable tests. Higher tiers are supposed to contain progressively more thorough, slower, and sometimes less stable tests, or the tests that require special configuration.</p>
<p>Contributors are expected to run the tests for the areas that are changed, and the first N tiers they can afford to run, but at least tier1.</p>
<p>A brief description of the tiered test groups:</p>
<ul>
<li><p><code>tier1</code>: This is the lowest test tier. Multiple developers run these tests every day. Because of the widespread use, the tests in <code>tier1</code> are carefully selected and optimized to run fast, and to run in the most stable manner. The test failures in <code>tier1</code> are usually followed up on quickly, either with fixes, or adding relevant tests to problem list. GitHub Actions workflows, if enabled, run <code>tier1</code> tests.</p></li>
<li><p><code>tier2</code>: This test group covers even more ground. These contain, among other things, tests that either run for too long to be at <code>tier1</code>, or may require special configuration, or tests that are less stable, or cover the broader range of non-core JVM and JDK features/components (for example, XML).</p></li>
<li><p><code>tier3</code>: This test group includes more stressful tests, the tests for corner cases not covered by previous tiers, plus the tests that require GUIs. As such, this suite should either be run with low concurrency (<code>TEST_JOBS=1</code>), or without headful tests (<code>JTREG_KEYWORDS=\!headful</code>), or both.</p></li>
<li><p><code>tier4</code>: This test group includes every other test not covered by previous tiers. It includes, for example, <code>vmTestbase</code> suites for Hotspot, which run for many hours even on large machines. It also runs GUI tests, so the same <code>TEST_JOBS</code> and <code>JTREG_KEYWORDS</code> caveats apply.</p></li>
</ul>
<h3 id="jtreg">JTReg</h3>
<p>JTReg tests can be selected either by picking a JTReg test group, or a selection of files or directories containing JTReg tests.</p>
<p>JTReg test groups can be specified either without a test root, e.g. <code>:tier1</code> (or <code>tier1</code>, the initial colon is optional), or with, e.g. <code>hotspot:tier1</code>, <code>test/jdk:jdk_util</code> or <code>$(TOPDIR)/test/hotspot/jtreg:hotspot_all</code>. The test root can be specified either as an absolute path, or a path relative to the JDK top directory, or the <code>test</code> directory. For simplicity, the hotspot JTReg test root, which really is <code>hotspot/jtreg</code> can be abbreviated as just <code>hotspot</code>.</p>
@@ -180,6 +194,8 @@ TEST FAILURE</code></pre>
<p>Generate AOT modules before testing for the specified module, or set of modules. If multiple modules are specified, they should be separated by space (or, to help avoid quoting issues, the special value <code>%20</code>).</p>
<h4 id="retry_count">RETRY_COUNT</h4>
<p>Retry failed tests up to a set number of times. Defaults to 0.</p>
<h4 id="repeat_count">REPEAT_COUNT</h4>
<p>Repeat the tests for a set number of times. Defaults to 0.</p>
<h3 id="gtest-keywords">Gtest keywords</h3>
<h4 id="repeat">REPEAT</h4>
<p>The number of times to repeat the tests (<code>--gtest_repeat</code>).</p>
@@ -215,7 +231,7 @@ TEST FAILURE</code></pre>
JTREG=&quot;JAVA_OPTIONS=-Djdk.test.docker.image.name=ubuntu
-Djdk.test.docker.image.version=latest&quot;</code></pre>
<h3 id="non-us-locale">Non-US locale</h3>
<p>If your locale is non-US, some tests are likely to fail. To work around this you can set the locale to US. On Unix platforms simply setting <code>LANG=&quot;en_US&quot;</code> in the environment before running tests should work. On Windows, setting <code>JTREG=&quot;VM_OPTIONS=-Duser.language=en -Duser.country=US&quot;</code> helps for most, but not all test cases.</p>
<p>If your locale is non-US, some tests are likely to fail. To work around this you can set the locale to US. On Unix platforms simply setting <code>LANG=&quot;en_US&quot;</code> in the environment before running tests should work. On Windows or MacOS, setting <code>JTREG=&quot;VM_OPTIONS=-Duser.language=en -Duser.country=US&quot;</code> helps for most, but not all test cases.</p>
<p>For example:</p>
<pre><code>$ export LANG=&quot;en_US&quot; &amp;&amp; make test TEST=...
$ make test JTREG=&quot;VM_OPTIONS=-Duser.language=en -Duser.country=US&quot; TEST=...</code></pre>

View File

@@ -64,6 +64,52 @@ jtreg:$(TOPDIR)/test/nashorn:tier1 jtreg:$(TOPDIR)/test/jaxp:tier1`. You can
always submit a list of fully qualified test descriptors in the `TEST` variable
if you want to shortcut the parser.
### Common Test Groups
Ideally, all tests are run for every change but this may not be practical due to the limited
testing resources, the scope of the change, etc.
The source tree currently defines a few common test groups in the relevant `TEST.groups`
files. There are test groups that cover a specific component, for example `hotspot_gc`.
It is a good idea to look into `TEST.groups` files to get a sense what tests are relevant
to a particular JDK component.
Component-specific tests may miss some unintended consequences of a change, so other
tests should also be run. Again, it might be impractical to run all tests, and therefore
_tiered_ test groups exist. Tiered test groups are not component-specific, but rather cover
the significant parts of the entire JDK.
Multiple tiers allow balancing test coverage and testing costs. Lower test tiers are supposed to
contain the simpler, quicker and more stable tests. Higher tiers are supposed to contain
progressively more thorough, slower, and sometimes less stable tests, or the tests that require
special configuration.
Contributors are expected to run the tests for the areas that are changed, and the first N tiers
they can afford to run, but at least tier1.
A brief description of the tiered test groups:
- `tier1`: This is the lowest test tier. Multiple developers run these tests every day.
Because of the widespread use, the tests in `tier1` are carefully selected and optimized to run
fast, and to run in the most stable manner. The test failures in `tier1` are usually followed up
on quickly, either with fixes, or adding relevant tests to problem list. GitHub Actions workflows,
if enabled, run `tier1` tests.
- `tier2`: This test group covers even more ground. These contain, among other things,
tests that either run for too long to be at `tier1`, or may require special configuration,
or tests that are less stable, or cover the broader range of non-core JVM and JDK features/components
(for example, XML).
- `tier3`: This test group includes more stressful tests, the tests for corner cases
not covered by previous tiers, plus the tests that require GUIs. As such, this suite
should either be run with low concurrency (`TEST_JOBS=1`), or without headful tests
(`JTREG_KEYWORDS=\!headful`), or both.
- `tier4`: This test group includes every other test not covered by previous tiers. It includes,
for example, `vmTestbase` suites for Hotspot, which run for many hours even on large
machines. It also runs GUI tests, so the same `TEST_JOBS` and `JTREG_KEYWORDS` caveats
apply.
### JTReg
JTReg tests can be selected either by picking a JTReg test group, or a selection
@@ -375,6 +421,10 @@ modules. If multiple modules are specified, they should be separated by space
Retry failed tests up to a set number of times. Defaults to 0.
#### REPEAT_COUNT
Repeat the tests for a set number of times. Defaults to 0.
### Gtest keywords
#### REPEAT
@@ -460,7 +510,7 @@ $ make test TEST="jtreg:test/hotspot/jtreg/containers/docker" \
If your locale is non-US, some tests are likely to fail. To work around this
you can set the locale to US. On Unix platforms simply setting `LANG="en_US"`
in the environment before running tests should work. On Windows, setting
in the environment before running tests should work. On Windows or MacOS, setting
`JTREG="VM_OPTIONS=-Duser.language=en -Duser.country=US"` helps for most, but
not all test cases.

230
jb/jdkdiff.py Executable file
View File

@@ -0,0 +1,230 @@
#!/usr/bin/env python3
import argparse
import math
import os.path
import sys
import subprocess
def fatal(msg):
sys.stderr.write(f"[fatal] {msg}\n")
sys.exit(1)
def verbose(options, *msg):
if options.verbose:
sys.stdout.write(f"[verbose] ")
sys.stdout.write(*msg)
sys.stdout.write('\n')
def first_line(str):
return "" if not str else str.splitlines()[0]
class Options:
def __init__(self):
ap = argparse.ArgumentParser(description="Show bugfixes differences between JBR and OpenJDK git repos",
epilog="Example: %(prog)s --jdk ./jdk11u/ --jbr ./JetBrainsRuntime/ --path src/hotspot --limit 200")
ap.add_argument('--jdk', dest='jdkpath', help='path to OpenJDK git repo', required=True)
ap.add_argument('--jbr', dest='jbrpath', help='path to JBR git repo', required=True)
ap.add_argument('--path', dest='path', help='limit to changes in this path (relative to git root)')
ap.add_argument('--limit', dest='limit', help='limit to this many log entries in --jdk repo', type=int, default=-1)
ap.add_argument('-o', dest="output_dir", help="save patches to this directory (created if necessary)")
ap.add_argument('-v', dest='verbose', help="verbose output", default=False, action='store_true')
args = ap.parse_args()
if not os.path.isdir(args.jdkpath):
fatal(f"{args.jdkpath} not a directory")
if not os.path.isdir(args.jbrpath):
fatal(f"{args.jbrpath} not a directory")
if not git_is_available():
fatal("can't run git commands; make sure git is in PATH")
self.jdkpath = args.jdkpath
self.jbrpath = args.jbrpath
self.path = args.path
self.limit = args.limit
self.output_dir = args.output_dir
self.verbose = args.verbose
class GitRepo:
def __init__(self, rootpath):
self.rootpath = rootpath
def run_git_cmd(self, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
p = subprocess.run(args, capture_output=True, text=True)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
return p.stdout
def save_git_cmd(self, fname, git_args):
args = ["git", "-C", self.rootpath]
args.extend(git_args)
# print(f"Runnig git cmd '{' '.join(args)}'")
with open(fname, "w") as stdout_file:
p = subprocess.run(args, stdout=stdout_file)
if p.returncode != 0:
fatal(f"git returned non-zero code in {self.rootpath} ({first_line(p.stderr)})")
def current_branch(self):
branch_name = self.run_git_cmd(["branch", "--show-current"]).strip()
return branch_name
def log(self, path=None, limit=None):
cmds = ["log", "--no-decorate"]
if limit:
cmds.extend(["-n", str(limit)])
if path:
cmds.append(path)
full_log = self.run_git_cmd(cmds)
return full_log
class Commit:
def __init__(self, lines):
self.sha = lines[0].split()[1]
self.message = ""
self.bugid = None
# Commit message starts after one blank line
read_message = False
for l in lines:
if read_message:
self.message += l + "\n"
if not read_message and l == "":
read_message = True
if self.message and self.message != "" and ":" in self.message:
maybe_bugid = self.message.split(":")[0].strip()
if 10 >= len(maybe_bugid) >= 4:
self.bugid = maybe_bugid
class History:
def __init__(self, log):
log_itr = iter(log.splitlines())
self.commits = []
commit_lines = []
for line in log_itr:
if line.startswith("commit ") and len(commit_lines) > 0:
commit = Commit(commit_lines)
self.commits.append(commit)
commit_lines = []
commit_lines.append(line)
if len(commit_lines) > 0:
commit = Commit(commit_lines)
self.commits.append(commit)
def contains(self, str):
return any(str in commit.message for commit in self.commits)
def size(self):
return len(self.commits)
def print_explanation(options, jdk, jbr):
verbose(options, f"Reading history from '{jdk.rootpath}' on branch '{jdk.current_branch()}'")
if options.path:
verbose(options, f"\t(only under '{options.path}')")
verbose(options, f"Searching for same fixes in '{jbr.rootpath}' on branch '{jbr.current_branch()}'")
def git_is_available():
p = None
try:
p = subprocess.run(["git", "--help"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
except:
pass
return p is not None and p.returncode == 0
def main():
check_python_min_requirements()
options = Options()
jdk = GitRepo(options.jdkpath)
jbr = GitRepo(options.jbrpath)
print_explanation(options, jdk, jbr)
commits_to_save = []
try:
jdk_log = jdk.log(options.path, options.limit)
jdk_history = History(jdk_log)
jbr_log = jbr.log(options.path)
jbr_history = History(jbr_log)
verbose(options, f"Read {jdk_history.size()} commits in JDK, {jbr_history.size()} in JBR")
for c in jdk_history.commits:
if c.bugid:
verbose(options, f"Looking for bugfix for {c.bugid}")
if not jbr_history.contains(c.bugid):
commits_to_save.append(c)
print(f"[note] Fix for {c.bugid} not found in JBR ({jbr.rootpath})")
print(f" commit {c.sha}")
print(f" {first_line(c.message).strip()}")
except KeyboardInterrupt:
fatal("Interrupted")
if len(commits_to_save) > 0 and options.output_dir:
print()
if not os.path.exists(options.output_dir):
verbose(options, f"Creating output directory {options.output_dir}")
os.makedirs(options.output_dir)
nzeroes = len(str(len(commits_to_save)))
for i, c in enumerate(reversed(commits_to_save)):
fname = os.path.join(options.output_dir, f"{str(i).zfill(nzeroes)}-{c.bugid}.patch")
print(f"[note] {c.bugid} saved as {fname}")
fname = os.path.abspath(fname)
jdk.save_git_cmd(fname, ["format-patch", "-1", c.sha, "--stdout"])
script_fname = os.path.join(options.output_dir, "apply.sh")
with open(script_fname, "w") as script_file:
print(apply_script_code.format(os.path.abspath(jbr.rootpath), os.path.abspath(options.output_dir)),
file=script_file)
print(f"[note] Execute 'bash {script_fname}' to apply patches to {jbr.rootpath}")
def check_python_min_requirements():
if sys.version_info < (3, 6):
fatal("Minimum version 3.6 is required to run this script")
apply_script_code = """
#!/bin/bash
GITROOT={0}
PATCHROOT={1}
cd $PATCHROOT || exit 1
PATCHES=$(find $PATCHROOT -name '*.patch' | sort -n)
for P in $PATCHES; do
git -C $GITROOT am $P
if [ $? != 0 ]; then
mv "$P" "$P.failed"
echo "[ERROR] Patch $P did not apply cleanly. Try applying it manually."
echo "[NOTE] Execute this script to apply the remaining patches."
exit 1
else
mv "$P" "$P.done"
fi
done
echo "[NOTE] Done applying patches; check $PATCHROOT for .patch and .patch.failed to see if all have been applied."
"""
if __name__ == '__main__':
main()

View File

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

View File

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

View File

@@ -0,0 +1,7 @@
FROM i386/ubuntu:xenial
RUN linux32 apt-get update && apt-get install -y --no-install-recommends apt-utils
COPY jbrsdk-11.0.5-b1 /jbrsdk-11.0.5-b1
RUN linux32 apt-get -y install file build-essential zip unzip curl libx11-dev libxext-dev \
libxrender-dev libxrandr-dev libxtst-dev libxt-dev libcups2-dev libasound2-data \
libpng12-0 libasound2 libfreetype6 libfontconfig1-dev libasound2-dev autoconf

View File

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

View File

@@ -0,0 +1,9 @@
<component name="CopyrightManager">
<copyright>
<option name="notice" value="Copyright &amp;#36;originalComment.match(&quot;Copyright (\d+)&quot;, 1, &quot;-&quot;)&amp;#36;today.year JetBrains s.r.o.&#10;DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.&#10;&#10;This code is free software; you can redistribute it and/or modify it&#10;under the terms of the GNU General Public License version 2 only, as&#10;published by the Free Software Foundation.&#10;&#10;This code is distributed in the hope that it will be useful, but WITHOUT&#10;ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#10;FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License&#10;version 2 for more details (a copy is included in the LICENSE file that&#10;accompanied this code).&#10;&#10;You should have received a copy of the GNU General Public License version&#10;2 along with this work; if not, write to the Free Software Foundation,&#10;Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.&#10;&#10;Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA&#10;or visit www.oracle.com if you need additional information or have any&#10;questions." />
<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,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$/src/jetbrains.api">
<sourceFolder url="file://$MODULE_DIR$/src/jetbrains.api/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/jetbrains.api/templates" isTestSource="false" />
</content>
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="inheritedJdk" />
</component>
</module>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/jdk.iml" filepath="$PROJECT_DIR$/.idea/jdk.iml" />
###MODULE_IMLS###
<module fileurl="file://$PROJECT_DIR$/.idea/jetbrains.api.iml" filepath="$PROJECT_DIR$/.idea/jetbrains.api.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/test.iml" filepath="$PROJECT_DIR$/.idea/test.iml" />
</modules>
</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

@@ -0,0 +1,135 @@
apply plugin: 'java'
import org.gradle.internal.os.OperatingSystem
repositories {
mavenCentral()
}
def test_jvm = {
if (project.hasProperty('jbsdkhome')) {
file(jbsdkhome + (OperatingSystem.current().isWindows()?"/bin/java.exe" : "/bin/java")).absolutePath
} else {
if (OperatingSystem.current().isMacOsX()) {
file('../../../build/macosx-x86_64-normal-server-release/images/jdk-bundle/jdk-11.0.4.jdk/Contents/Home/bin/java').absolutePath
} else if (OperatingSystem.current().isLinux()) {
file('../../../build/linux-x86_64-normal-server-release/images/jdk/bin/java').absolutePath
} else {
file('../../../build/windows-x86_64-normal-server-release/images/jdk/bin/java.exe').absolutePath
}
}
}
dependencies {
testCompile('junit:junit:4.12'){
exclude group: 'org.hamcrest'
}
testCompile 'org.hamcrest:hamcrest-library:1.3'
testCompile 'net.java.dev.jna:jna:4.4.0'
testCompile 'com.twelvemonkeys.imageio:imageio-tiff:3.3.2'
testCompile 'org.apache.commons:commons-lang3:3.0'
}
def jdk_modules = ["java.base", "java.logging", "java.prefs",
"java.se.ee", "java.sql", "java.datatransfer",
"java.management", "java.rmi", "java.security.jgss",
"java.sql.rowset", "java.desktop", "java.management.rmi",
"java.scripting", "java.security.sasl", "java.transaction",
"java.instrument", "java.naming", "java.se",
"java.smartcardio", "java.xml.crypto"]
def jdk_class_dirs = []
jdk_modules.collect(jdk_class_dirs) {
new File("../../../src/" + it + "/share/classes")
}
if (OperatingSystem.current().isMacOsX())
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/macosx/classes"
}
else if (OperatingSystem.current().isLinux()) {
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/solaris/classes"
}
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/unix/classes"
}
} else
jdk_modules.collect(jdk_class_dirs) {
"../../../src/" + it + "/windows/classes"
}
sourceSets.main.java.srcDirs = jdk_class_dirs
sourceSets {
test {
java {
srcDir "../../../test/jdk/jbu"
}
}
}
test.dependsOn.clear()
test.dependsOn tasks.compileTestJava
test {
systemProperty "jb.java2d.metal", "true"
systemProperty "testdata", file('../../../test/jdk/jbu/testdata').absolutePath
// Generate golden images for DroidFontTest and MixedTextTest
// systemProperty "gentestdata", ""
// Enable Java2D logging (https://confluence.jetbrains.com/display/JRE/Java2D+Rendering+Logging)
// systemProperty "sun.java2d.trace", "log"
// systemProperty "sun.java2d.trace", "log,pimpl"
outputs.upToDateWhen { false }
executable = test_jvm()
// Enable async/dtrace profiler
jvmArgs "-XX:+PreserveFramePointer"
// Enable native J2D logging (only in debug build)
// Can be turned on for J2D by adding "#define DEBUG 1" into jdk/src/share/native/sun/java2d/Trace.h
// environment 'J2D_TRACE_LEVEL', '4'
}
def buildDir = project.buildscript.sourceFile.parentFile.parentFile.parentFile.parentFile
def make_cmd = "make"
if (OperatingSystem.current().isWindows()) {
def cyg_make_cmd = new File("c:/cygwin64/bin/make.exe")
if (cyg_make_cmd.exists()) make_cmd = cyg_make_cmd.absolutePath
}
def test_run = false
task make_images {
doLast {
if (!test_run) {
def pb = new ProcessBuilder().command(make_cmd.toString(), "-C", buildDir.absolutePath, "images")
def proc = pb.redirectErrorStream(true).start()
proc.inputStream.eachLine { println it }
assert proc.waitFor() == 0
}
}
}
task make_clean {
doLast {
def pb = new ProcessBuilder().command(make_cmd.toString(), "-C", buildDir.absolutePath, "clean")
def proc = pb.redirectErrorStream(true).start()
proc.inputStream.eachLine { println it }
assert proc.waitFor() == 0
}
}
task run_test {
doLast {
test_run = true
}
}
tasks.cleanTest.dependsOn tasks.run_test
classes.dependsOn.clear()
classes.dependsOn tasks.make_images
tasks.cleanClasses.dependsOn tasks.make_clean

View File

@@ -0,0 +1,16 @@
#!/bin/sh
# $1 - Boot JDK
# $2 - JBR part of API version
cd "`dirname "$0"`/../../../../.."
PWD="`pwd`"
CONF="$PWD/build/jbr-api.conf"
./configure --with-debug-level=release --with-boot-jdk=$1 || exit $?
make jbr-api CONF=release MAKEOVERRIDES= "JBR_API_CONF_FILE=$CONF" JBR_API_JBR_VERSION=$2 || exit $?
. $CONF || exit $?
echo "##teamcity[buildNumber '$VERSION']"
cp "$JAR" ./jbr-api-${VERSION}.jar || exit $?
cp "$SOURCES_JAR" ./jbr-api-${VERSION}-sources.jar || exit $?
echo "##teamcity[publishArtifacts '$PWD/jbr-api-${VERSION}.jar']"
echo "##teamcity[publishArtifacts '$PWD/jbr-api-${VERSION}-sources.jar']"

View File

@@ -0,0 +1,95 @@
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
OS_NAME=$(uname -s)
# Enable reproducible builds
TZ=UTC
export TZ
SOURCE_DATE_EPOCH="$(git log -1 --pretty=%ct)"
export SOURCE_DATE_EPOCH
case "$OS_NAME" in
Linux)
COPYRIGHT_YEAR="$(date --utc --date=@$SOURCE_DATE_EPOCH +%Y)"
BUILD_TIME="$(date --utc --date=@$SOURCE_DATE_EPOCH +%F)"
REPRODUCIBLE_TAR_OPTS="--mtime=@$SOURCE_DATE_EPOCH --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime"
;;
Darwin)
COPYRIGHT_YEAR="$(date -u -r $SOURCE_DATE_EPOCH +%Y)"
BUILD_TIME="$(date -u -r $SOURCE_DATE_EPOCH +%F)"
TOUCH_TIME="$(date -u -r $SOURCE_DATE_EPOCH +%Y%m%d%H%M.%S)"
REPRODUCIBLE_TAR_OPTS="--uid 0 --gid 0 --numeric-owner"
;;
*)
# TODO: Windows
;;
esac
REPRODUCIBLE_BUILD_OPTS="--enable-reproducible-build
--with-source-date=$SOURCE_DATE_EPOCH
--with-hotspot-build-time=$BUILD_TIME
--with-copyright-year=$COPYRIGHT_YEAR
--with-native-debug-symbols=none
--with-build-user=builduser"
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
}
function copy_jmods() {
__mods_list=$1
__jmods_from=$2
__jmods_to=$3
mkdir -p $__jmods_to
echo "${__mods_list}," | while read -d, mod; do cp $__jmods_from/$mod.jmod $__jmods_to/; done
}

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,200 @@
#!/bin/bash -x
# The following parameters must be specified:
# JBSDK_VERSION - specifies major version of OpenJDK e.g. 11_0_6 (instead of dots '.' underbars "_" are used)
# JDK_BUILD_NUMBER - specifies update release of OpenJDK build or the value of --with-version-build argument to configure
# build_number - specifies the number of JetBrainsRuntime build
# bundle_type - specifies bundle to be built; possible values:
# <empty> or nomod - the release bundles without any additional modules (jcef)
# jcef - the release bundles with jcef
# fd - the fastdebug bundles which also include the jcef module
#
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
#
# $ ./java --version
# openjdk 11.0.6 2020-01-14
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
#
# Environment variables:
# JCEF_PATH - specifies the path to the directory with JCEF binaries.
# By default JCEF binaries should be located in ./jcef_mac
while getopts ":i?" o; do
case "${o}" in
i)
i="incremental build"
INC_BUILD=1
;;
esac
done
shift $((OPTIND-1))
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}
BOOT_JDK=${BOOT_JDK:=$(/usr/libexec/java_home -v 16)}
source jb/project/tools/common/scripts/common.sh
function do_configure {
if [[ "${architecture}" == *aarch64* ]]; then
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="${VENDOR_NAME}" \
--with-vendor-version-string="${VENDOR_VERSION_STRING}" \
--with-macosx-bundle-name-base=${VENDOR_VERSION_STRING} \
--with-macosx-bundle-id-base="com.jetbrains.jbr" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--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" \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
else
sh configure \
$WITH_DEBUG_LEVEL \
--with-vendor-name="$VENDOR_NAME" \
--with-vendor-version-string="$VENDOR_VERSION_STRING" \
--with-macosx-bundle-name-base=${VENDOR_VERSION_STRING} \
--with-macosx-bundle-id-base="com.jetbrains.jbr" \
--with-jvm-features=shenandoahgc \
--with-version-pre= \
--with-version-build="$JDK_BUILD_NUMBER" \
--with-version-opt=b"$build_number" \
--with-boot-jdk="$BOOT_JDK" \
--enable-cds=yes \
$REPRODUCIBLE_BUILD_OPTS \
|| do_exit $?
fi
}
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" ] && [ "$__arch_name" == "$JBRSDK_BUNDLE" ] && __bundle_name=$__arch_name && 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 [ "$__arch_name" == "$JBRSDK_BUNDLE" ]; then
sed 's/JBR/JBRSDK/g' $JRE_CONTENTS/Home/release > release
mv release $JRE_CONTENTS/Home/release
copy_jmods "$__modules" "$__modules_path" "$JRE_CONTENTS"/Home/jmods
fi
cp -R "$JSDK"/../MacOS "$JRE_CONTENTS"
cp "$JSDK"/../Info.plist "$JRE_CONTENTS"
[ -n "$bundle_type" ] && (cp -a $JCEF_PATH/Frameworks "$JRE_CONTENTS" || do_exit $?)
echo Creating "$JBR".tar.gz ...
# Normalize timestamp
find "$tmp"/"$__arch_name" -print0 | xargs -0 touch -c -h -t "$TOUCH_TIME"
(cd "$tmp" &&
find "$__arch_name" -print0 | LC_ALL=C sort -z | \
COPYFILE_DISABLE=1 tar $REPRODUCIBLE_TAR_OPTS --no-recursion --null -T - \
-czf "$JBR".tar.gz --exclude='*.dSYM' --exclude='man') || do_exit $?
mv "$tmp"/"$JBR".tar.gz "$JBR".tar.gz
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
case "$bundle_type" in
"jcef")
do_reset_changes=0
;;
"dcevm")
HEAD_REVISION=$(git rev-parse HEAD)
git am jb/project/tools/patches/dcevm/*.patch || do_exit $?
do_reset_dcevm=0
do_reset_changes=0
;;
"nomod" | "")
bundle_type=""
;;
"fd")
do_reset_changes=0
WITH_DEBUG_LEVEL="--with-debug-level=fastdebug"
RELEASE_NAME=macosx-${CONF_ARCHITECTURE}-server-fastdebug
JBSDK=macosx-${architecture}-server-release
;;
esac
if [ -z "$INC_BUILD" ]; then
do_configure || do_exit $?
make clean CONF=$RELEASE_NAME || do_exit $?
fi
make images CONF=$RELEASE_NAME || do_exit $?
IMAGES_DIR=build/$RELEASE_NAME/images
major_version=$(echo "$JBSDK_VERSION_WITH_DOTS" | awk -F "." '{print $1}')
minor_version=$(echo "$JBSDK_VERSION_WITH_DOTS" | awk -F "." '{print $3}')
[ -z "$minor_version" -o "$minor_version" = "0" ] && version_dir=$major_version || version_dir=$JBSDK_VERSION_WITH_DOTS
JSDK=$IMAGES_DIR/jdk-bundle/jdk-$version_dir.jdk/Contents/Home
JSDK_MODS_DIR=$IMAGES_DIR/jmods
JBRSDK_BUNDLE=jbrsdk
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ]; then
git apply -p0 < jb/project/tools/patches/add_jcef_module.patch || do_exit $?
update_jsdk_mods "$JSDK" "$JCEF_PATH"/jmods "$JSDK"/jmods "$JSDK_MODS_DIR" || do_exit $?
cp $JCEF_PATH/jmods/* $JSDK_MODS_DIR # $JSDK/jmods is not changed
jbr_name_postfix="_${bundle_type}"
fi
# create runtime image bundle
modules=$(xargs < modules.list | sed s/" "//g) || do_exit $?
create_image_bundle "jbr${jbr_name_postfix}" "jbr" $JSDK_MODS_DIR "$modules" || do_exit $?
# create sdk image bundle
modules=$(cat "$JSDK"/release | grep MODULES | sed s/MODULES=//g | sed s/' '/','/g | sed s/\"//g | sed s/\\n//g) || do_exit $?
if [ "$bundle_type" == "jcef" ] || [ "$bundle_type" == "dcevm" ] || [ "$bundle_type" == "fd" ] || [ "$bundle_type" == "$JBRSDK_BUNDLE" ]; then
modules=${modules},$(get_mods_list "$JCEF_PATH"/jmods)
fi
create_image_bundle "$JBRSDK_BUNDLE${jbr_name_postfix}" "$JBRSDK_BUNDLE" "$JSDK_MODS_DIR" "$modules" || do_exit $?
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
do_exit 0

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,30 @@
diff --git modules.list modules.list
index 054f21d1ee0..d9a121f0273 100644
--- modules.list
+++ modules.list
@@ -49,4 +49,7 @@ jdk.unsupported,
jdk.xml.dom,
jdk.zipfs,
jdk.hotspot.agent,
-jdk.jcmd
+jdk.jcmd,
+jcef,
+gluegen.rt,
+jogl.all
diff --git src/java.desktop/share/classes/module-info.java src/java.desktop/share/classes/module-info.java
index 897647ee368..781d1809493 100644
--- src/java.desktop/share/classes/module-info.java
+++ src/java.desktop/share/classes/module-info.java
@@ -116,7 +116,11 @@ module java.desktop {
// see make/GensrcModuleInfo.gmk
exports sun.awt to
jdk.accessibility,
- jdk.unsupported.desktop;
+ jdk.unsupported.desktop,
+ jcef,
+ jogl.all;
+
+ exports java.awt.peer to jcef;
exports java.awt.dnd.peer to jdk.unsupported.desktop;
exports sun.awt.dnd to jdk.unsupported.desktop;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -71,11 +71,11 @@ define SetupInterimModule
SRC := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim \
$$(wildcard $(SUPPORT_OUTPUTDIR)/gensrc/$1) \
$(TOPDIR)/src/$1/share/classes, \
EXCLUDES := sun, \
EXCLUDES := sun javax/tools/snippet-files, \
EXCLUDE_FILES := $(TOPDIR)/src/$1/share/classes/module-info.java \
Standard.java, \
EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/$1.interim/module-info.java, \
COPY := .gif .png .xml .css .js .js.template .txt javax.tools.JavaCompilerTool, \
COPY := .gif .png .xml .css .svg .js .js.template .txt javax.tools.JavaCompilerTool, \
BIN := $(BUILDTOOLS_OUTPUTDIR)/interim_langtools_modules/$1.interim, \
DISABLED_WARNINGS := module options, \
JAVAC_FLAGS := \

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
@@ -196,6 +196,11 @@ else # not java.base
endif
endif
# Set main class of jdk.httpserver module
ifeq ($(MODULE), jdk.httpserver)
JMOD_FLAGS += --main-class sun.net.httpserver.simpleserver.Main
endif
# Changes to the jmod tool itself should also trigger a rebuild of all jmods.
# The variable JMOD_CMD could contain an environment variable assignment before
# the actual command. Filter that out using wildcard before adding to DEPS.
@@ -213,12 +218,12 @@ endif
ifeq ($(call isTargetOs, windows), true)
ifeq ($(SHIP_DEBUG_SYMBOLS), )
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.pdb,*.map}'
JMOD_FLAGS += --exclude '**{_the.*,_*.marker*,*.diz,*.pdb,*.map}'
else
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.map}'
JMOD_FLAGS += --exclude '**{_the.*,_*.marker*,*.diz,*.map}'
endif
else
JMOD_FLAGS += --exclude '**{_the.*,_*.marker,*.diz,*.debuginfo,*.dSYM/**,*.dSYM}'
JMOD_FLAGS += --exclude '**{_the.*,_*.marker*,*.diz,*.debuginfo,*.dSYM/**,*.dSYM}'
endif
# Create jmods in the support dir and then move them into place to keep the

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
@@ -88,7 +88,10 @@ $(CLASSLIST_FILE): $(INTERIM_IMAGE_DIR)/bin/java$(EXECUTABLE_SUFFIX) $(CLASSLIST
$(CAT) $(LINK_OPT_DIR)/stderr $(JLI_TRACE_FILE) ; \
exit $$exitcode \
)
$(GREP) -v HelloClasslist $@.raw.2 > $@
$(GREP) -v HelloClasslist $@.raw.2 > $@.raw.3
$(FIXPATH) $(INTERIM_IMAGE_DIR)/bin/java \
-cp $(SUPPORT_OUTPUTDIR)/classlist.jar \
build.tools.classlist.SortClasslist $@.raw.3 > $@
# The jli trace is created by the same recipe as classlist. By declaring these
# dependencies, make will correctly rebuild both jli trace and classlist

146
make/Hsdis.gmk Normal file
View File

@@ -0,0 +1,146 @@
#
# 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
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
default: all
include $(SPEC)
include MakeBase.gmk
include JdkNativeCompilation.gmk
################################################################################
# This makefile compiles and installs the hsdis library
#
################################################################################
HSDIS_OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/hsdis
ifeq ($(call isTargetOs, windows), true)
INSTALLED_HSDIS_DIR := $(JDK_OUTPUTDIR)/bin
# On windows, we need to "fake" a completely different toolchain using gcc
# instead of the normal microsoft toolchain. This is quite hacky...
MINGW_BASE := x86_64-w64-mingw32
MINGW_SYSROOT = $(shell $(MINGW_BASE)-gcc -print-sysroot)
ifeq ($(wildcard $(MINGW_SYSROOT)), )
# Use fallback path
MINGW_SYSROOT := /usr/$(MINGW_BASE)
ifeq ($(wildcard $(MINGW_SYSROOT)), )
$(error mingw sysroot not found)
endif
endif
$(eval $(call DefineNativeToolchain, TOOLCHAIN_MINGW, \
CC := $(MINGW_BASE)-gcc, \
LD := $(MINGW_BASE)-ld, \
OBJCOPY := $(MINGW_BASE)-objcopy, \
RC := $(RC), \
SYSROOT_CFLAGS := --sysroot=$(MINGW_SYSROOT), \
SYSROOT_LDFLAGS := --sysroot=$(MINGW_SYSROOT), \
))
MINGW_SYSROOT_LIB_PATH := $(MINGW_SYSROOT)/mingw/lib
ifeq ($(wildcard $(MINGW_SYSROOT_LIB_PATH)), )
# Try without mingw
MINGW_SYSROOT_LIB_PATH := $(MINGW_SYSROOT)/lib
ifeq ($(wildcard $(MINGW_SYSROOT_LIB_PATH)), )
$(error mingw sysroot lib path not found)
endif
endif
MINGW_VERSION = $(shell $(MINGW_BASE)-gcc -v 2>&1 | $(GREP) "gcc version" | $(CUT) -d " " -f 3)
MINGW_GCC_LIB_PATH := /usr/lib/gcc/$(MINGW_BASE)/$(MINGW_VERSION)
ifeq ($(wildcard $(MINGW_GCC_LIB_PATH)), )
# Try using only major version number
MINGW_VERSION_MAJOR := $(firstword $(subst ., , $(MINGW_VERSION)))
MINGW_GCC_LIB_PATH := /usr/lib/gcc/$(MINGW_BASE)/$(MINGW_VERSION_MAJOR)
ifeq ($(wildcard $(MINGW_GCC_LIB_PATH)), )
$(error mingw gcc lib path not found)
endif
endif
TOOLCHAIN_TYPE := gcc
OPENJDK_TARGET_OS := linux
CC_OUT_OPTION := -o$(SPACE)
LD_OUT_OPTION := -o$(SPACE)
GENDEPS_FLAGS := -MMD -MF
CFLAGS_DEBUG_SYMBOLS := -g
DISABLED_WARNINGS :=
DISABLE_WARNING_PREFIX := -Wno-
CFLAGS_WARNINGS_ARE_ERRORS := -Werror
SHARED_LIBRARY_FLAGS := -shared
HSDIS_TOOLCHAIN := TOOLCHAIN_MINGW
HSDIS_TOOLCHAIN_CFLAGS :=
HSDIS_TOOLCHAIN_LDFLAGS := -L$(MINGW_GCC_LIB_PATH) -L$(MINGW_SYSROOT_LIB_PATH)
MINGW_DLLCRT := $(MINGW_SYSROOT_LIB_PATH)/dllcrt2.o
HSDIS_TOOLCHAIN_LIBS := $(MINGW_DLLCRT) -lmingw32 -lgcc -lgcc_eh -lmoldname \
-lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32
else
INSTALLED_HSDIS_DIR := $(JDK_OUTPUTDIR)/lib
HSDIS_TOOLCHAIN := TOOLCHAIN_DEFAULT
HSDIS_TOOLCHAIN_CFLAGS := $(CFLAGS_JDKLIB)
HSDIS_TOOLCHAIN_LDFLAGS := $(LDFLAGS_JDKLIB)
HSDIS_TOOLCHAIN_LIBS := -ldl
endif
$(eval $(call SetupJdkLibrary, BUILD_HSDIS, \
NAME := hsdis, \
SRC := $(TOPDIR)/src/utils/hsdis, \
TOOLCHAIN := $(HSDIS_TOOLCHAIN), \
OUTPUT_DIR := $(HSDIS_OUTPUT_DIR), \
OBJECT_DIR := $(HSDIS_OUTPUT_DIR), \
DISABLED_WARNINGS_gcc := undef format-nonliteral sign-compare, \
DISABLED_WARNINGS_clang := undef format-nonliteral, \
CFLAGS := $(HSDIS_TOOLCHAIN_CFLAGS) $(HSDIS_CFLAGS), \
LDFLAGS := $(HSDIS_TOOLCHAIN_LDFLAGS) $(SHARED_LIBRARY_FLAGS), \
LIBS := $(HSDIS_LIBS) $(HSDIS_TOOLCHAIN_LIBS), \
))
build: $(BUILD_HSDIS)
TARGETS += build
INSTALLED_HSDIS_NAME := hsdis-$(OPENJDK_TARGET_CPU_LEGACY_LIB)$(SHARED_LIBRARY_SUFFIX)
INSTALLED_HSDIS := $(INSTALLED_HSDIS_DIR)/$(INSTALLED_HSDIS_NAME)
$(INSTALLED_HSDIS): $(BUILD_HSDIS_TARGET)
$(call LogWarn, NOTE: The resulting build might not be redistributable. Seek legal advice before distibuting.)
$(install-file)
install: $(INSTALLED_HSDIS)
TARGETS += install
################################################################################
all: $(TARGETS)
.PHONY: all default build install

84
make/JBRApi.gmk Normal file
View File

@@ -0,0 +1,84 @@
#
# Copyright 2000-2021 JetBrains s.r.o.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
include $(SPEC)
include MakeBase.gmk
include JavaCompilation.gmk
JBR_API_ROOT_DIR := $(TOPDIR)/src/jetbrains.api
JBR_API_TOOLS_DIR := $(JBR_API_ROOT_DIR)/tools
JBR_API_SRC_DIR := $(JBR_API_ROOT_DIR)/src
JBR_API_OUTPUT_DIR := $(OUTPUTDIR)/jbr-api
JBR_API_GENSRC_DIR := $(JBR_API_OUTPUT_DIR)/gensrc
JBR_API_BIN_DIR := $(JBR_API_OUTPUT_DIR)/bin
JBR_API_VERSION_PROPERTIES := $(JBR_API_ROOT_DIR)/version.properties
JBR_API_VERSION_GENSRC := $(JBR_API_OUTPUT_DIR)/jbr-api.version
JBR_API_GENSRC_BATCH := $(JBR_API_VERSION_GENSRC)
JBR_API_SRC_FILES := $(call FindFiles, $(JBR_API_SRC_DIR))
JBR_API_GENSRC_FILES := $(foreach f, $(call FindFiles, $(JBR_API_SRC_DIR)), \
$(JBR_API_GENSRC_DIR)/$(call RelativePath, $f, $(JBR_API_SRC_DIR)))
ifeq ($(JBR_API_JBR_VERSION),)
JBR_API_JBR_VERSION := <DEVELOPMENT>
JBR_API_FAIL_ON_HASH_MISMATCH := false
else
.PHONY: $(JBR_API_VERSION_PROPERTIES)
JBR_API_FAIL_ON_HASH_MISMATCH := true
endif
ARCHIVE_BUILD_JBR_API_BIN := $(JBR_API_BIN_DIR)
$(eval $(call SetupJavaCompilation, BUILD_JBR_API, \
SMALL_JAVA := true, \
COMPILER := bootjdk, \
SRC := $(JBR_API_GENSRC_DIR), \
EXTRA_FILES := $(JBR_API_GENSRC_FILES), \
BIN := $(JBR_API_BIN_DIR), \
JAR := $(JBR_API_OUTPUT_DIR)/jbr-api.jar, \
))
$(eval $(call SetupJarArchive, BUILD_JBR_API_SOURCES_JAR, \
DEPENDENCIES := $(JBR_API_GENSRC_FILES), \
SRCS := $(JBR_API_GENSRC_DIR), \
JAR := $(JBR_API_OUTPUT_DIR)/jbr-api-sources.jar, \
SUFFIXES := .java, \
BIN := $(JBR_API_BIN_DIR), \
))
# Grouped targets may not be supported, so hack dependencies: sources -> version file -> generated sources
$(JBR_API_VERSION_GENSRC): $(JBR_API_SRC_FILES) $(JBR_API_VERSION_PROPERTIES) $(JBR_API_TOOLS_DIR)/Gensrc.java
$(ECHO) Generating sources for JBR API
$(JAVA_CMD) $(JAVA_FLAGS_SMALL) "$(JBR_API_TOOLS_DIR)/Gensrc.java" \
"$(TOPDIR)/src" "$(JBR_API_OUTPUT_DIR)" "$(JBR_API_JBR_VERSION)"
$(JBR_API_GENSRC_FILES): $(JBR_API_VERSION_GENSRC)
$(TOUCH) $@
jbr-api-check-version: $(JBR_API_GENSRC_FILES) $(JBR_API_VERSION_PROPERTIES)
$(JAVA_CMD) $(JAVA_FLAGS_SMALL) "$(JBR_API_TOOLS_DIR)/CheckVersion.java" \
"$(JBR_API_ROOT_DIR)" "$(JBR_API_GENSRC_DIR)" "$(JBR_API_FAIL_ON_HASH_MISMATCH)"
jbr-api: $(BUILD_JBR_API) $(BUILD_JBR_API_SOURCES_JAR) jbr-api-check-version
.PHONY: jbr-api jbr-api-check-version
ifneq ($(JBR_API_CONF_FILE),)
$(JBR_API_CONF_FILE): $(JBR_API_GENSRC_FILES)
$(ECHO) "VERSION=`$(CAT) $(JBR_API_VERSION_GENSRC)`" > $(JBR_API_CONF_FILE)
$(ECHO) "JAR=$(JBR_API_OUTPUT_DIR)/jbr-api.jar" >> $(JBR_API_CONF_FILE)
$(ECHO) "SOURCES_JAR=$(JBR_API_OUTPUT_DIR)/jbr-api-sources.jar" >> $(JBR_API_CONF_FILE)
jbr-api: $(JBR_API_CONF_FILE)
.PHONY: $(JBR_API_CONF_FILE)
endif

View File

@@ -324,7 +324,7 @@ $(eval $(call SetupTarget, vscode-project-ccls, \
# aren't built until after libjava and libjvm are available to link to.
$(eval $(call SetupTarget, demos-jdk, \
MAKEFILE := CompileDemos, \
DEPS := java.base-libs exploded-image, \
DEPS := java.base-libs exploded-image buildtools-jdk, \
))
$(eval $(call SetupTarget, test-image-demos-jdk, \
@@ -383,12 +383,12 @@ bootcycle-images:
$(eval $(call SetupTarget, zip-security, \
MAKEFILE := ZipSecurity, \
DEPS := java.base-java java.security.jgss-java java.security.jgss-libs, \
DEPS := buildtools-jdk java.base-java java.security.jgss-java java.security.jgss-libs, \
))
$(eval $(call SetupTarget, zip-source, \
MAKEFILE := ZipSource, \
DEPS := gensrc, \
DEPS := buildtools-jdk gensrc, \
))
$(eval $(call SetupTarget, jrtfs-jar, \
@@ -508,13 +508,13 @@ $(eval $(call SetupTarget, docs-jdk-index, \
$(eval $(call SetupTarget, docs-zip, \
MAKEFILE := Docs, \
TARGET := docs-zip, \
DEPS := docs-jdk, \
DEPS := docs-jdk buildtools-jdk, \
))
$(eval $(call SetupTarget, docs-specs-zip, \
MAKEFILE := Docs, \
TARGET := docs-specs-zip, \
DEPS := docs-jdk-specs, \
DEPS := docs-jdk-specs buildtools-jdk, \
))
$(eval $(call SetupTarget, update-build-docs, \
@@ -526,6 +526,18 @@ $(eval $(call SetupTarget, update-x11wrappers, \
DEPS := java.base-copy buildtools-jdk, \
))
ifneq ($(HSDIS_BACKEND), none)
$(eval $(call SetupTarget, build-hsdis, \
MAKEFILE := Hsdis, \
TARGET := build, \
))
$(eval $(call SetupTarget, install-hsdis, \
MAKEFILE := Hsdis, \
TARGET := install, \
))
endif
################################################################################
# Cross compilation support
@@ -857,6 +869,9 @@ else
# virtual target.
jdk.jdwp.agent-libs: jdk.jdwp.agent-gensrc
# jdk.jfr-gendata uses TOOL_JFR_GEN from buildtools-hotspot
jdk.jfr-gendata: buildtools-hotspot
# The swing beans need to have java base properly generated to avoid errors
# in javadoc. The X11 wrappers need the java.base include files to have been
# copied and processed.
@@ -1322,6 +1337,14 @@ create-main-targets-include:
@$(ECHO) ALL_MAIN_TARGETS := $(sort $(ALL_TARGETS)) > \
$(MAKESUPPORT_OUTPUTDIR)/main-targets.gmk
################################################################################
# JBR API
$(eval $(call SetupTarget, jbr-api, \
MAKEFILE := JBRApi, \
TARGET := jbr-api \
))
################################################################################
# Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, Main-post.gmk))

View File

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

View File

@@ -75,11 +75,15 @@ TOOL_MAKEJAVASECURITY = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_clas
build.tools.makejavasecurity.MakeJavaSecurity
TOOL_GENERATECACERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
-Dkeystore.pkcs12.certProtectionAlgorithm=NONE \
-Dkeystore.pkcs12.macAlgorithm=NONE \
build.tools.generatecacerts.GenerateCacerts
TOOL_GENERATEEMOJIDATA = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.generateemojidata.GenerateEmojiData
TOOL_MAKEZIPREPRODUCIBLE = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
build.tools.makezipreproducible.MakeZipReproducible
# TODO: There are references to the jdwpgen.jar in jdk/make/netbeans/jdwpgen/build.xml
# and nbproject/project.properties in the same dir. Needs to be looked at.

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 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,11 +94,6 @@ AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
# Locate the directory of this script.
AUTOCONF_DIR=$TOPDIR/make/autoconf
# Setup username (for use in adhoc version strings etc)
# Outer [ ] to quote m4.
[ USERNAME=`$ECHO "$USER" | $TR -d -c '[a-z][A-Z][0-9]'` ]
AC_SUBST(USERNAME)
])
###############################################################################

View File

@@ -356,6 +356,14 @@ AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
fi
AC_SUBST(IS_GNU_TIME)
# Check if it's GNU date
check_date=`$DATE --version 2>&1 | $GREP GNU`
if test "x$check_date" != x; then
IS_GNU_DATE=yes
else
IS_GNU_DATE=no
fi
if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then
UTIL_REQUIRE_PROGS(DSYMUTIL, dsymutil)
UTIL_REQUIRE_PROGS(MIG, mig)

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
@@ -34,9 +34,10 @@ AC_DEFUN([BASIC_SETUP_PATHS_WINDOWS],
OPENJDK_BUILD_OS_ENV=windows.wsl1
else
# This test is not guaranteed, but there is no documented way of
# distinguishing between WSL1 and WSL2. Assume only WSL2 has WSL_INTEROP
# in /run/WSL
if test -d "/run/WSL" ; then
# distinguishing between WSL1 and WSL2.
# Check whether "Hyper-V" appears in /proc/interrupts because WSL2 runs on Hyper-V.
$GREP -q Hyper-V /proc/interrupts
if test $? -eq 0; then
OPENJDK_BUILD_OS_ENV=windows.wsl2
else
OPENJDK_BUILD_OS_ENV=windows.wsl1

View File

@@ -298,6 +298,28 @@ AC_DEFUN([BOOTJDK_CHECK_TOOL_IN_BOOTJDK],
])
])
# Setup CLASSPATH environment variable
AC_DEFUN([BOOTJDK_SETUP_CLASSPATH],
[
AC_ARG_WITH([classpath], [AS_HELP_STRING([--with-classpath],
[Optional classpath to set as CLASSPATH to all Java invocations @<:@none@:>@])])
if test "x$CLASSPATH" != x; then
AC_MSG_WARN([CLASSPATH is set in the environment. This will be ignored. Use --with-classpath instead.])
fi
CLASSPATH=
if test "x$with_classpath" != x && test "x$with_classpath" != xyes &&
test "x$with_classpath" != xno ; then
CLASSPATH="$with_classpath"
AC_MSG_CHECKING([for classpath to use for all Java invocations])
AC_MSG_RESULT([$CLASSPATH])
fi
AC_SUBST(CLASSPATH)
])
###############################################################################
#
# We need a Boot JDK to bootstrap the build.
@@ -394,6 +416,8 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
BOOTJDK_USE_LOCAL_CDS=false
AC_MSG_RESULT([no, -XX:SharedArchiveFile not supported])
fi
BOOTJDK_SETUP_CLASSPATH
])
AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS],

View File

@@ -102,6 +102,15 @@ if [ "x$OUT" = x ]; then
fi
fi
# Test and fix LoongArch64.
if [ "x$OUT" = x ]; then
if [ `uname -s` = Linux ]; then
if [ `uname -m` = loongarch64 ]; then
OUT=loongarch64-unknown-linux-gnu
fi
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

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.
@@ -249,6 +252,7 @@ JDKOPT_EXCLUDE_TRANSLATIONS
JDKOPT_ENABLE_DISABLE_MANPAGES
JDKOPT_ENABLE_DISABLE_CDS_ARCHIVE
JDKOPT_ENABLE_DISABLE_COMPATIBLE_CDS_ALIGNMENT
JDKOPT_SETUP_HSDIS
###############################################################################
#

View File

@@ -137,7 +137,7 @@ AC_DEFUN([FLAGS_SETUP_WARNINGS],
DISABLED_WARNINGS="4800"
if test "x$TOOLCHAIN_VERSION" = x2017; then
# VS2017 incorrectly triggers this warning for constexpr
DISABLED_WARNINGS+=" 4307"
DISABLED_WARNINGS="$DISABLED_WARNINGS 4307"
fi
;;
@@ -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"

View File

@@ -32,16 +32,10 @@ AC_DEFUN([FLAGS_SETUP_LDFLAGS],
# Setup the target toolchain
# The target dir matches the name of VM variant
TARGET_JVM_VARIANT_PATH=$JVM_VARIANT_MAIN
# On some platforms (mac) the linker warns about non existing -L dirs.
# For any of the variants server, client or minimal, the dir matches the
# variant name. The "main" variant should be used for linking. For the
# rest, the dir is just server.
if HOTSPOT_CHECK_JVM_VARIANT(server) || HOTSPOT_CHECK_JVM_VARIANT(client) \
|| HOTSPOT_CHECK_JVM_VARIANT(minimal); then
TARGET_JVM_VARIANT_PATH=$JVM_VARIANT_MAIN
else
TARGET_JVM_VARIANT_PATH=server
fi
FLAGS_SETUP_LDFLAGS_CPU_DEP([TARGET])
# Setup the build toolchain

View File

@@ -89,11 +89,12 @@ AC_DEFUN([FLAGS_SETUP_ASFLAGS],
# 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 \
JVM_BASIC_ASFLAGS="$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 \
JVM_BASIC_ASFLAGS="$JVM_BASIC_ASFLAGS $OS_CFLAGS \
-DMAC_OS_X_VERSION_MAX_ALLOWED=$MACOSX_VERSION_MAX_NODOTS"
fi
fi

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -42,21 +42,21 @@ AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
PKGHANDLER_COMMAND=
case $PKGHANDLER in
apt-get)
*apt-get)
apt_help $MISSING_DEPENDENCY ;;
yum)
*yum)
yum_help $MISSING_DEPENDENCY ;;
brew)
*brew)
brew_help $MISSING_DEPENDENCY ;;
port)
*port)
port_help $MISSING_DEPENDENCY ;;
pkgutil)
*pkgutil)
pkgutil_help $MISSING_DEPENDENCY ;;
pkgadd)
*pkgadd)
pkgadd_help $MISSING_DEPENDENCY ;;
zypper)
*zypper)
zypper_help $MISSING_DEPENDENCY ;;
pacman)
*pacman)
pacman_help $MISSING_DEPENDENCY ;;
esac
@@ -80,6 +80,14 @@ cygwin_help() {
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P make )"
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'."
;;
i686-w64-mingw32-gcc)
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P gcc-core i686-w64-mingw32-gcc-core mingw64-i686-glib2.0 )"
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'."
;;
x86_64-w64-mingw32-gcc)
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P gcc-core x86_64-w64-mingw32-gcc-core mingw64-x86_64-glib2.0 )"
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'."
;;
esac
}
@@ -274,7 +282,7 @@ AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS],
printf "\n"
printf "Build performance summary:\n"
printf "* Cores to use: $JOBS\n"
printf "* Build jobs: $JOBS\n"
printf "* Memory limit: $MEMORY_SIZE MB\n"
if test "x$CCACHE_STATUS" != "x"; then
printf "* ccache status: $CCACHE_STATUS\n"

View File

@@ -83,19 +83,10 @@ AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_VARIANTS],
AC_MSG_ERROR([Cannot continue])
fi
# All "special" variants share the same output directory ("server")
VALID_MULTIPLE_JVM_VARIANTS="server client minimal"
UTIL_GET_NON_MATCHING_VALUES(INVALID_MULTIPLE_VARIANTS, $JVM_VARIANTS, \
$VALID_MULTIPLE_JVM_VARIANTS)
if test "x$INVALID_MULTIPLE_VARIANTS" != x && \
test "x$BUILDING_MULTIPLE_JVM_VARIANTS" = xtrue; then
AC_MSG_ERROR([You can only build multiple variants using these variants: '$VALID_MULTIPLE_JVM_VARIANTS'])
fi
# The "main" variant is the one used by other libs to link against during the
# build.
if test "x$BUILDING_MULTIPLE_JVM_VARIANTS" = "xtrue"; then
MAIN_VARIANT_PRIO_ORDER="server client minimal"
MAIN_VARIANT_PRIO_ORDER="server client minimal zero"
for variant in $MAIN_VARIANT_PRIO_ORDER; do
if HOTSPOT_CHECK_JVM_VARIANT($variant); then
JVM_VARIANT_MAIN="$variant"

View File

@@ -169,6 +169,23 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
fi
AC_SUBST(CACERTS_FILE)
# Choose cacerts source folder for user provided PEM files
AC_ARG_WITH(cacerts-src, [AS_HELP_STRING([--with-cacerts-src],
[specify alternative cacerts source folder containing certificates])])
CACERTS_SRC=""
AC_MSG_CHECKING([for cacerts source])
if test "x$with_cacerts_src" == x; then
AC_MSG_RESULT([default])
else
CACERTS_SRC=$with_cacerts_src
if test ! -d "$CACERTS_SRC"; then
AC_MSG_RESULT([fail])
AC_MSG_ERROR([Specified cacerts source folder "$CACERTS_SRC" does not exist])
fi
AC_MSG_RESULT([$CACERTS_SRC])
fi
AC_SUBST(CACERTS_SRC)
# Enable or disable unlimited crypto
UTIL_ARG_ENABLE(NAME: unlimited-crypto, DEFAULT: true, RESULT: UNLIMITED_CRYPTO,
DESC: [enable unlimited crypto policy])
@@ -199,6 +216,12 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
AC_MSG_ERROR([Copyright year must have a value])
elif test "x$with_copyright_year" != x; then
COPYRIGHT_YEAR="$with_copyright_year"
elif test "x$SOURCE_DATE_EPOCH" != x; then
if test "x$IS_GNU_DATE" = xyes; then
COPYRIGHT_YEAR=`date --date=@$SOURCE_DATE_EPOCH +%Y`
else
COPYRIGHT_YEAR=`date -j -f %s $SOURCE_DATE_EPOCH +%Y`
fi
else
COPYRIGHT_YEAR=`$DATE +'%Y'`
fi
@@ -436,6 +459,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
@@ -696,7 +758,7 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
if test "x$OPENJDK_BUILD_OS" = xwindows && \
test "x$ALLOW_ABSOLUTE_PATHS_IN_OUTPUT" = xfalse && \
test "x$ENABLE_REPRODUCIBLE_BUILD" = xfalse; then
AC_MSG_NOTICE([On Windows it is not possible to combine --disable-reproducible-builds])
AC_MSG_NOTICE([On Windows it is not possible to combine --disable-reproducible-build])
AC_MSG_NOTICE([with --disable-absolute-paths-in-output.])
AC_MSG_ERROR([Cannot continue])
fi
@@ -704,3 +766,172 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_REPRODUCIBLE_BUILD],
AC_SUBST(SOURCE_DATE)
AC_SUBST(ENABLE_REPRODUCIBLE_BUILD)
])
################################################################################
#
# Helper function to build binutils from source.
#
AC_DEFUN([JDKOPT_BUILD_BINUTILS],
[
BINUTILS_SRC="$with_binutils_src"
UTIL_FIXUP_PATH(BINUTILS_SRC)
if ! test -d $BINUTILS_SRC; then
AC_MSG_ERROR([--with-binutils-src is not pointing to a directory])
fi
if ! test -x $BINUTILS_SRC/configure; then
AC_MSG_ERROR([--with-binutils-src does not look like a binutils source directory])
fi
if test -e $BINUTILS_SRC/bfd/libbfd.a && \
test -e $BINUTILS_SRC/opcodes/libopcodes.a && \
test -e $BINUTILS_SRC/libiberty/libiberty.a && \
test -e $BINUTILS_SRC/zlib/libz.a; then
AC_MSG_NOTICE([Found binutils binaries in binutils source directory -- not building])
else
# On Windows, we cannot build with the normal Microsoft CL, but must instead use
# a separate mingw toolchain.
if test "x$OPENJDK_BUILD_OS" = xwindows; then
if test "x$OPENJDK_TARGET_CPU" = "xx86"; then
target_base="i686-w64-mingw32"
else
target_base="$OPENJDK_TARGET_CPU-w64-mingw32"
fi
binutils_cc="$target_base-gcc"
binutils_target="--host=$target_base --target=$target_base"
# Somehow the uint typedef is not included when building with mingw
binutils_cflags="-Duint=unsigned"
compiler_version=`$binutils_cc --version 2>&1`
if ! [ [[ "$compiler_version" =~ GCC ]] ]; then
AC_MSG_NOTICE([Could not find correct mingw compiler $binutils_cc.])
HELP_MSG_MISSING_DEPENDENCY([$binutils_cc])
AC_MSG_ERROR([Cannot continue. $HELP_MSG])
else
AC_MSG_NOTICE([Using compiler $binutils_cc with version $compiler_version])
fi
elif test "x$OPENJDK_BUILD_OS" = xmacosx; then
if test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
binutils_target="--enable-targets=aarch64-darwin"
else
binutils_target=""
fi
else
binutils_cc="$CC $SYSROOT_CFLAGS"
binutils_target=""
fi
binutils_cflags="$binutils_cflags $MACHINE_FLAG $JVM_PICFLAG $C_O_FLAG_NORM"
AC_MSG_NOTICE([Running binutils configure])
AC_MSG_NOTICE([configure command line: ./configure --disable-nls CFLAGS="$binutils_cflags" CC="$binutils_cc" $binutils_target])
saved_dir=`pwd`
cd "$BINUTILS_SRC"
./configure --disable-nls CFLAGS="$binutils_cflags" CC="$binutils_cc" $binutils_target
if test $? -ne 0 || ! test -e $BINUTILS_SRC/Makefile; then
AC_MSG_NOTICE([Automatic building of binutils failed on configure. Try building it manually])
AC_MSG_ERROR([Cannot continue])
fi
AC_MSG_NOTICE([Running binutils make])
$MAKE all-opcodes
if test $? -ne 0; then
AC_MSG_NOTICE([Automatic building of binutils failed on make. Try building it manually])
AC_MSG_ERROR([Cannot continue])
fi
cd $saved_dir
AC_MSG_NOTICE([Building of binutils done])
fi
BINUTILS_DIR="$BINUTILS_SRC"
])
################################################################################
#
# Determine if hsdis should be built, and if so, with which backend.
#
AC_DEFUN_ONCE([JDKOPT_SETUP_HSDIS],
[
AC_ARG_WITH([hsdis], [AS_HELP_STRING([--with-hsdis],
[what hsdis backend to use ('none', 'binutils') @<:@none@:>@])])
AC_ARG_WITH([binutils], [AS_HELP_STRING([--with-binutils],
[where to find the binutils files needed for hsdis/binutils])])
AC_ARG_WITH([binutils-src], [AS_HELP_STRING([--with-binutils-src],
[where to find the binutils source for building])])
AC_MSG_CHECKING([what hsdis backend to use])
if test "x$with_hsdis" = xyes; then
AC_MSG_ERROR([--with-hsdis must have a value])
elif test "x$with_hsdis" = xnone || test "x$with_hsdis" = xno || test "x$with_hsdis" = x; then
HSDIS_BACKEND=none
AC_MSG_RESULT(['none', hsdis will not be built])
elif test "x$with_hsdis" = xbinutils; then
HSDIS_BACKEND=binutils
AC_MSG_RESULT(['binutils'])
# We need the binutils static libs and includes.
if test "x$with_binutils_src" != x; then
# Try building the source first. If it succeeds, it sets $BINUTILS_DIR.
JDKOPT_BUILD_BINUTILS
fi
if test "x$with_binutils" != x; then
BINUTILS_DIR="$with_binutils"
fi
binutils_system_error=""
HSDIS_LIBS=""
if test "x$BINUTILS_DIR" = xsystem; then
AC_CHECK_LIB(bfd, bfd_openr, [ HSDIS_LIBS="-lbfd" ], [ binutils_system_error="libbfd not found" ])
AC_CHECK_LIB(opcodes, disassembler, [ HSDIS_LIBS="$HSDIS_LIBS -lopcodes" ], [ binutils_system_error="libopcodes not found" ])
AC_CHECK_LIB(iberty, xmalloc, [ HSDIS_LIBS="$HSDIS_LIBS -liberty" ], [ binutils_system_error="libiberty not found" ])
AC_CHECK_LIB(z, deflate, [ HSDIS_LIBS="$HSDIS_LIBS -lz" ], [ binutils_system_error="libz not found" ])
elif test "x$BINUTILS_DIR" != x; then
if test -e $BINUTILS_DIR/bfd/libbfd.a && \
test -e $BINUTILS_DIR/opcodes/libopcodes.a && \
test -e $BINUTILS_DIR/libiberty/libiberty.a; then
HSDIS_CFLAGS="-I$BINUTILS_DIR/include -I$BINUTILS_DIR/bfd -DLIBARCH_$OPENJDK_TARGET_CPU_LEGACY_LIB"
HSDIS_LIBS="$BINUTILS_DIR/bfd/libbfd.a $BINUTILS_DIR/opcodes/libopcodes.a $BINUTILS_DIR/libiberty/libiberty.a $BINUTILS_DIR/zlib/libz.a"
fi
fi
AC_MSG_CHECKING([for binutils to use with hsdis])
case "x$BINUTILS_DIR" in
xsystem)
if test "x$OPENJDK_TARGET_OS" != xlinux; then
AC_MSG_RESULT([invalid])
AC_MSG_ERROR([binutils on system is supported for Linux only])
elif test "x$binutils_system_error" = x; then
AC_MSG_RESULT([system])
HSDIS_CFLAGS="-DSYSTEM_BINUTILS"
else
AC_MSG_RESULT([invalid])
AC_MSG_ERROR([$binutils_system_error])
fi
;;
x)
AC_MSG_RESULT([missing])
AC_MSG_NOTICE([--with-hsdis=binutils requires specifying a binutils installation.])
AC_MSG_NOTICE([Download binutils from https://www.gnu.org/software/binutils and unpack it,])
AC_MSG_NOTICE([and point --with-binutils-src to the resulting directory, or use])
AC_MSG_NOTICE([--with-binutils to point to a pre-built binutils installation.])
AC_MSG_ERROR([Cannot continue])
;;
*)
if test "x$HSDIS_LIBS" != x; then
AC_MSG_RESULT([$BINUTILS_DIR])
else
AC_MSG_RESULT([invalid])
AC_MSG_ERROR([$BINUTILS_DIR does not contain a proper binutils installation])
fi
;;
esac
else
AC_MSG_RESULT([invalid])
AC_MSG_ERROR([Incorrect hsdis backend "$with_hsdis"])
fi
AC_SUBST(HSDIS_BACKEND)
AC_SUBST(HSDIS_CFLAGS)
AC_SUBST(HSDIS_LIBS)
])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2015, 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
@@ -69,6 +69,17 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
AC_SUBST(JDK_RC_PLATFORM_NAME)
AC_SUBST(HOTSPOT_VM_DISTRO)
# Setup username (for use in adhoc version strings etc)
AC_ARG_WITH([build-user], [AS_HELP_STRING([--with-build-user],
[build username to use in version strings])])
if test "x$with_build_user" != x; then
USERNAME="$with_build_user"
else
# Outer [ ] to quote m4.
[ USERNAME=`$ECHO "$USER" | $TR -d -c '[a-z][A-Z][0-9]'` ]
fi
AC_SUBST(USERNAME)
# Set the JDK RC name
AC_ARG_WITH(jdk-rc-name, [AS_HELP_STRING([--with-jdk-rc-name],
[Set JDK RC name. This is used for FileDescription and ProductName properties
@@ -525,7 +536,7 @@ AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS],
MACOSX_BUNDLE_BUILD_VERSION="$VERSION_BUILD"
# If VERSION_OPT consists of only numbers and periods, add it.
if [ [[ $VERSION_OPT =~ ^[0-9\.]+$ ]] ]; then
MACOSX_BUNDLE_BUILD_VERSION+=".$VERSION_OPT"
MACOSX_BUNDLE_BUILD_VERSION="$MACOSX_BUNDLE_BUILD_VERSION.$VERSION_OPT"
fi
fi
AC_SUBST(MACOSX_BUNDLE_BUILD_VERSION)

View File

@@ -307,7 +307,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_SHENANDOAHGC],
JVM_FEATURES_CHECK_AVAILABILITY(shenandoahgc, [
AC_MSG_CHECKING([if platform is supported by Shenandoah])
if test "x$OPENJDK_TARGET_CPU_ARCH" = "xx86" || \
test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then
test "x$OPENJDK_TARGET_CPU" = "xaarch64" || \
test "x$OPENJDK_TARGET_CPU" = "xppc64le"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_CPU])
@@ -357,6 +358,13 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
elif test "x$OPENJDK_TARGET_CPU" = "xppc64le"; then
if test "x$OPENJDK_TARGET_OS" = "xlinux"; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false
fi
else
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
AVAILABLE=false

View File

@@ -149,7 +149,7 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBFFI],
else
AC_MSG_ERROR([Could not locate libffi.so.? for bundling])
fi
elif test "x${OPENJDK_TARGET_CPU}" = "xx86_64"; then
elif test "x${OPENJDK_TARGET_CPU}" = "xx86_64" || test "x${OPENJDK_TARGET_CPU}" = "xaarch64"; then
if test -e ${SYSROOT}/usr/lib64/libffi.so.? ; then
LIBFFI_LIB_FILE="${SYSROOT}/usr/lib64/libffi.so.?"
elif test -e ${SYSROOT}/usr/lib/x86_64-linux-gnu/libffi.so.? ; then

View File

@@ -43,11 +43,9 @@ AC_DEFUN_ONCE([LIB_DETERMINE_DEPENDENCIES],
if test "x$OPENJDK_TARGET_OS" = xwindows || test "x$OPENJDK_TARGET_OS" = xmacosx; then
# No X11 support on windows or macosx
NEEDS_LIB_X11=false
elif test "x$ENABLE_HEADLESS_ONLY" = xtrue; then
# No X11 support needed when building headless only
NEEDS_LIB_X11=false
else
# All other instances need X11
# All other instances need X11, even if building headless only, libawt still
# needs X11 headers.
NEEDS_LIB_X11=true
fi

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