RELEASE NOTES FOR: 18 ==================================================================================================== Notes generated: Wed Apr 03 07:40:09 CEST 2024 Hint: Prefix bug IDs with https://bugs.openjdk.org/browse/ to reach the relevant JIRA entry. JAVA ENHANCEMENT PROPOSALS (JEP): JEP 400: UTF-8 by Default Specify UTF-8 as the default charset of the standard Java APIs. With this change, APIs that depend upon the default charset will behave consistently across all implementations, operating systems, locales, and configurations. JEP 408: Simple Web Server Provide a command-line tool to start a minimal web server that serves static files only. No CGI or servlet-like functionality is available. This tool will be useful for prototyping, ad-hoc coding, and testing purposes, particularly in educational contexts. JEP 413: Code Snippets in Java API Documentation Introduce an `@snippet` tag for JavaDoc's Standard Doclet, to simplify the inclusion of example source code in API documentation. JEP 416: Reimplement Core Reflection with Method Handles Reimplement `java.lang.reflect.Method`, `Constructor`, and `Field` on top of `java.lang.invoke` method handles. Making method handles the underlying mechanism for reflection will reduce the maintenance and development cost of both the `java.lang.reflect` and `java.lang.invoke` APIs. JEP 417: Vector API (Third Incubator) Introduce an API to express vector computations that reliably compile at runtime to optimal vector instructions on supported CPU architectures, thus achieving performance superior to equivalent scalar computations. JEP 418: Internet-Address Resolution SPI Define a service-provider interface (SPI) for host name and address resolution, so that [`java.net.InetAddress`] can make use of resolvers other than the platform's built-in resolver. JEP 419: Foreign Function & Memory API (Second Incubator) Introduce an API by which Java programs can interoperate with code and data outside of the Java runtime. By efficiently invoking foreign functions (i.e., code outside the JVM), and by safely accessing foreign memory (i.e., memory not managed by the JVM), the API enables Java programs to call native libraries and process native data without the brittleness and danger of JNI. JEP 420: Pattern Matching for switch (Second Preview) Enhance the Java programming language with pattern matching for `switch` expressions and statements, along with extensions to the language of patterns. Extending pattern matching to `switch` allows an expression to be tested against a number of patterns, each with a specific action, so that complex data-oriented queries can be expressed concisely and safely. This is a [preview language feature](https://openjdk.java.net/jeps/12) in JDK 18. JEP 421: Deprecate Finalization for Removal Deprecate finalization for removal in a future release. Finalization remains enabled by default for now, but can be disabled to facilitate early testing. In a future release it will be disabled by default, and in a later release it will be removed. Maintainers of libraries and applications that rely upon finalization should consider migrating to other resource management techniques such as the [`try`-with-resources statement][try] and [cleaners][jlrCleaner]. RELEASE NOTES: tools/javac: JDK-8202056: Expand checks of javac's serial lint warning The `serial` lint warning implemented in `javac` traditionally checked that a `Serializable` class declared a `serialVersionUID` field. The structural checking done by the `serial` lint warning has been expanded to warn for cases where declarations would cause the runtime serialization mechanism to silently ignore a mis-declared entity, rendering it ineffectual. Also, the checks include several compile-time patterns that could lead to runtime failures. The specific checks include: * For `Serializable` classes and interfaces, fields and methods with names matching the special fields and methods used by the serialization mechanism are declared properly. * Additional analagous checks are done for `Externalizable` types as some serialization-related methods are ineffectual there. * A serializable class is checked that it has access to a no-arg constructor in the first non-serializable class up its superclass chain. * For enum classes, since the serialization spec states the five serialization-related methods and two fields are all ignored, the presence of any of those in an enum class will generate a warning. * For record classes, warnings are generated for the ineffectual declarations of serialization-related methods that serialization would ignore. * For interfaces, if a public `readObject`, `readObjectNoData`, or `writeObject` method is defined, a warning is issued since a class implementing the interface will be unable to declare `private` versions of those methods and the methods must be `private` to be effective. If an interface defines default `writeReplace` or `readResolve` methods, a warning will be issued since serialization only looks up the super*class* chain for those methods and not for default methods from interfaces. Since a `serialPersistentFields` field must be `private` to be effective, the presence of such a (non-private) field an in interface generates a warning. * For serializable classes without `serialPersistentFields`, the type of each non-transient instance field is examined and a warning issued if the type of the field cannot be serialized. Primitive types, types declared to be serializable, and arrays can be serialized. While by the JLS all arrays are considered serializable, a warning is issued if the innermost component type is not serializable. The new warnings can be suppressed using `@SuppressWarnings("serial")`. JDK-8278373: Corrected References to Overloaded Methods in Javadoc Documentation For a reference to a specific overload of an overloaded method, the javadoc tool might have linked to the wrong overload in the generated documentation. This fix resolves that issue, and the specified overload will now be used for the links in the generated documentation. JDK-8278318: Index Noteworthy Terms for jdk.compiler and jdk.javadoc Modules Various terms have been added to the index files in the JDK API documentation, so that these terms can be found in both the static A-Z index and in the interactive search index. The terms are: _Language Model_, _Annotation Processing_, _Compiler API_, and _Compiler Tree API_. JDK-8272234: Passing Originating Elements From Filer to JavaFileManager The `javax.tools.JavaFileManager` has been extended with two new methods, `getJavaFileForOutputForOriginatingFiles` and `getFileForOutputForOriginatingFiles`, that are used to create new files with specified originating files. The `Filer` uses these methods when creating new files (with `Filer.createSourceFile`, `Filer.createClassFile`, `Filer.createResource`) in order to pass along the files containing the _originating elements_. JDK-8271623: Enclosing Instance Fields Omitted from Inner Classes That Don't Use Them Prior to JDK 18, when javac compiles an inner class it always generates a private synthetic field with a name starting with `this$` to hold a reference to the enclosing instance, even if the inner class does not reference its enclosing instance and the field is unused. Starting in JDK 18, unused `this$` fields are omitted; the field is only generated for inner classes that reference their enclosing instance. For example, consider the following program: ``` class T { class I { } } ``` Prior to JDK 18, the program would be translated as: ``` class T { class I { private synthetic T this$0; I(T this$0) { this.this$0 = this$0; } } } ``` Starting in JDK 18, the unused `this$0` field is omitted: ``` class T { class I { I(T this$0) {} } } ``` Note that the form of the inner class constructor is not affected by this change. The change may cause enclosing instances to be garbage collected sooner, if previously they were only reachable from a reference in an inner class. This is typically desirable, since it avoids a source of potential memory leaks when creating inner classes that are intended to outlive their enclosing instance. Subclasses of `java.io.Serializable` are not affected by this change. core-libs/java.util: JDK-8231640: New System Property to Control the Default Date Comment Written Out by java.util.Properties::store Methods A new system property, `java.properties.date`, has been introduced to allow applications to control the default date comment written out by the `java.util.Properties::store` methods. This system property is expected to be set while launching `java`. Any non-empty value of this system property results in that value being used as a comment instead of the default date comment. In the absence of this system property or when the value is empty, the `Properties::store` methods continue to write the default date comment. An additional change has also been made in the implementation of the `Properties::store` methods to write out the key/value property pairs in a deterministic order. The implementation of these methods now uses the natural sort order of the property keys while writing them out. However, the implementation of these methods continues to use the iteration order when any sub-class of `java.util.Properties` overrides the `entrySet()` method to return a different `Set` than that returned by `super.entrySet()`. The combination of the deterministic ordering of the properties that get written out with the new system property is particularly useful in environments where applications require the contents of the stored properties to be reproducible. In such cases, applications are expected to provide a fixed value of their choice to this system property. core-libs/java.net: JDK-8133686: HttpURLConnection's getHeaderFields and URLConnection.getRequestProperties Methods Return Field Values in the Order They Were Added `URLConnection` has been fixed to return multiple header values for a given field-name in the order in which they were added. Previously, if a `URLConnection` contained multiple header values for a given header field-name, when retrieved by using the `HttpURLConnection::getHeaderFields` and the `URLConnection::getRequestProperties` methods, they would be returned in the reverse order to which they were added. This has been fixed to conform to RFC2616, which explicitly states that the order matters and thus, should be maintained. JDK-8260510: JEP 408: Simple Web Server jwebserver, a command-line tool to start a minimal static web server, has been introduced. The tool and the accompanying API are located in the com.sun.net.httpserver package of the jdk.httpserver module and are designed to be used for prototyping, ad-hoc coding, and testing, particularly in educational contexts. For further details, see [JEP 408](https://openjdk.java.net/jeps/408). JDK-8268960: Prohibit Null for Header Keys and Values in com.sun.net.httpserver.Headers In JDK 18, the handling of header names and values in `jdk.httpserver/com.sun.net.httpserver.Headers` has been reconciled. This includes the eager and consistent prohibition of `null` for names and values. The class represents header names and values as a key-value mapping of `Map>`. Previously, it was possible to create a headers instance with a `null` key or value, which would cause undocumented exceptions when passed to the `HttpServer`. It was also possible to query the instance for a `null` key and `false` would be returned. With this change, all methods of the class now throw a `NullPointerException` if the key or value arguments are `null`. For more information, see https://bugs.openjdk.java.net/browse/JDK-8269296. JDK-8260428: Removal of Support for Pre JDK 1.4 DatagramSocketImpl Implementations Support for pre JDK 1.4 `DatagramSocketImpl` implementations (DatagramSocketImpl implementations that don't support connected datagram sockets, peeking, or joining multicast groups on specific network interface) has been dropped in this release. Old implementations have not have been buildable since JDK 1.4 but implementations compiled with JDK 1.3 or older continued to be usable up to this release. Trying to call `connect` or `disconnect` on a `DatagramSocket` or `MulticastSocket` that uses an old implementation will now throw `SocketException` or `UncheckedIOException`. Trying to call `joinGroup` or `leaveGroup` will result in an `AbstractMethodError`. JDK-8274227: Removal of impl.prefix JDK System Property Usage From InetAddress The system property `impl.prefix` has been removed. This undocumented system property dates from early JDK releases where it was possible to add an implementation of the JDK internal and non-public `java.net.InetAddressImpl` interface to the `java.net` package, and have it be used by the `java.net.InetAddress` API. The `InetAddressResolver` SPI introduced by [JEP 418](https://openjdk.java.net/jeps/418) provides a standard way to implement a name and address resolver. JDK-8273655: `java.net.FileNameMap.getContentTypeFor(fileName)` May Return a Different MIME Type for Certain Filenames The default, built-in filename map in the JDK has been updated to include additional filename to MIME type mappings. Along with the additions, existing mappings of `.gz` and `.zip` have also been updated. This can result in the default, built-in `java.net.FileNameMap` instance returning a different MIME type from the `getContentTypeFor(String fileName)` method than what it returned in previous JDK releases. `java.net.URLConnection.guessContentTypeFromName(String fname)`, which may use this default, built-in `FileNameMap` instance, thus may return a different value than previously. JDK-8263693: JEP 418: Internet-Address Resolution SPI Introduce a service-provider interface (SPI) for host name and address resolution, so that java.net.InetAddress can make use of resolvers other than the platform's built-in resolver. This new SPI allows replacing the operating system's native resolver, which is typically configured to use a combination of a local hosts file and the Domain Name System (DNS). For further details, see [JEP 418](https://openjdk.java.net/jeps/418). JDK-8253119: Removal of Legacy PlainSocketImpl and PlainDatagramSocketImpl Implementations Legacy implementations of `java.net.SocketImpl` and `java.net.DatagramSocketImpl` have been removed from the JDK. The legacy implementation of `SocketImpl` has not been used by default since JDK 13, while the legacy implementation of `DatagramSocketImpl` has not been used by default since JDK 15. Support for system properties `jdk.net.usePlainSocketImpl` and `jdk.net.usePlainDatagramSocketImpl` used to select these implementations has also been removed. Setting these properties now has no effect. security-libs/javax.security: JDK-8267108: Alternate Subject.getSubject and doAs APIs Created That Do Not Depend on Security Manager APIs New methods `javax.security.auth.Subject::current` and `javax.security.auth.Subject::callAs` have been created as replacements for existing methods `javax.security.auth.Subject::getSubject` and `javax.security.auth.Subject::doAs`. The `javax.security.auth.Subject::getSubject` and `javax.security.auth.Subject::doAs` methods are deprecated for removal because they depend on Security Manager APIs deprecated in JEP 411. JDK-8267108: Deprecated Subject::doAs for Removal Two `javax.security.auth.Subject::doAs` methods have been deprecated for removal. This is a part of the ongoing effort to remove Security Manager related APIs. core-libs/java.lang: JDK-8277861: Terminally Deprecated Thread.stop `Thread.stop` is terminally deprecated in this release so that it can be degraded in a future release and eventually removed. The method is inherently unsafe and has been deprecated since Java 1.2 (1998). JDK-8274609: Deprecated Finalization for Removal The finalization mechanism has been deprecated for removal in a future release. The `finalize` methods in standard Java APIs, such as `Object.finalize()` and `Enum.finalize()`, have also been deprecated for removal in a future release, along with methods related to finalization, such as `Runtime.runFinalization()` and `System.runFinalization()`. Finalization remains enabled by default, but it can be disabled for testing purposes by using the command-line option `--finalization=disabled` introduced in this release. Maintainers of libraries and applications that rely upon finalization should migrate to other resource management techniques in their code, such as [try-with-resources](https://dev.java/learn/catching-and-handling-exceptions/#anchor_6) and [cleaners](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/ref/Cleaner.html). See [JEP 421](https://openjdk.java.net/jeps/421) for further information. JDK-8277502: Deprecated Finalization for Removal The finalization mechanism has been deprecated for removal in a future release. The `finalize` methods in standard Java APIs, such as `Object.finalize()` and `Enum.finalize()`, have also been deprecated for removal in a future release, along with methods related to finalization, such as `Runtime.runFinalization()` and `System.runFinalization()`. Finalization remains enabled by default, but it can be disabled for testing purposes by using the command-line option `--finalization=disabled` introduced in this release. Maintainers of libraries and applications that rely upon finalization should migrate to other resource management techniques in their code, such as [try-with-resources](https://dev.java/learn/catching-and-handling-exceptions/#anchor_6) and [cleaners](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/ref/Cleaner.html). See [JEP 421](https://openjdk.java.net/jeps/421) for further information. client-libs/2d: JDK-8273102: Removal of Empty finalize() Methods in java.desktop Module The `java.desktop` module had a few implementations of `finalize()` that did nothing. These methods were deprecated in Java 9 and terminally deprecated in Java 16. These methods have been removed in this release. See https://bugs.openjdk.java.net/browse/JDK-8273103 for details. security-libs/javax.crypto:pkcs11: JDK-8264849: SunPKCS11 Provider Supports AES Cipher With KW and KWP Modes if Supported by PKCS11 Library The SunPKCS11 provider has been enhanced to support the following crypto services and algorithms when the underlying PKCS11 library supports the corresponding PKCS#11 mechanisms: AES/KW/NoPadding Cipher <=> CKM_AES_KEY_WRAP mechanism AES/KW/PKCS5Padding Cipher <=> CKM_AES_KEY_WRAP_PAD mechanism AES/KWP/NoPadding Cipher <=> CKM_AES_KEY_WRAP_KWP mechanism JDK-8255409: SunPKCS11 Provider Now Supports Some PKCS#11 v3.0 APIs PKCS#11 v3.0 adds several new APIs that support new function entry points, as well as message-based encryption for AEAD ciphers, etc. For JDK 18, the SunPKCS11 provider has been updated to support some of the new PKCS#11 v3.0 APIs. To be more specific, if the "functionList" attribute in the provider configuration file is not set, the SunPKCS11 provider will first try to locate the new PKCS#11 v3.0 C_GetInterface() method before falling back to the C_GetFunctionList() method to load the function pointers of the native PKCS#11 library. If the loaded PKCS#11 library is v3.0, then the SunPKCS11 provider will cancel crypto operations by trying the new PKCS#11 v3.0 C_SessionCancel() method instead of finishing off remaining operations and discarding the results. Support for other new PKCS#11 v3.0 APIs will be added in later releases. specification/language: JDK-8273326: JEP 420: Pattern Matching for switch (Second Preview) Enhance the Java programming language with pattern matching for switch expressions and statements, along with extensions to the language of patterns. Extending pattern matching to switch allows an expression to be tested against a number of patterns, each with a specific action, so that complex data-oriented queries can be expressed concisely and safely. For further details, see [JEP 420](https://openjdk.java.net/jeps/420). core-libs/java.nio.charsets: JDK-8270490: Charset.forName() Taking fallback Default Value A new method `Charset.forName()` that takes `fallback` charset object has been introduced in `java.nio.charset` package. The new method returns `fallback` if `charsetName` is illegal or the charset object is not available for the name. If `fallback` is passed as `null` the caller can check if the named charset was available without having to catch the exceptions thrown by the `Charset.forName(name)` method. JDK-8187041: JEP 400: UTF-8 by Default Starting with JDK 18, UTF-8 is the default charset for the Java SE APIs. APIs that depend on the default charset now behave consistently across all JDK implementations and independently of the user’s operating system, locale, and configuration. Specifically, `java.nio.charset.Charset#defaultCharset()` now returns `UTF-8` charset by default. The `file.encoding` system property is now a part of the implementation specification, which may accept `UTF-8` or `COMPAT`. The latter is a new property value that instructs the runtime to behave as previous releases. This change is significant to users who call APIs that depend on the default charset. They can try whether they'd be affected or not, by specifying `-Dfile.encoding=UTF-8` as the command line option with the existing Java runtime environment. Refer to the JEP for more detail: https://openjdk.java.net/jeps/400 hotspot/runtime: JDK-8273229: Release Doesn't Correctly Recognize Windows Server This release doesn't correctly identify Windows Server. The property `os.name` is set to `Windows 2019` on Windows Server 2022. In HotSpot error logs, the OS is identified as `Windows 10.0` for Windows Server releases 2016, 2019, and 2022; however, the HotSpot error log does show the Build number. Windows Server 2016 has Build 14393 or above, Windows Server 2019 has Build 17763 or above, and Windows Server 2022 has Build 20348 or above. JDK-8273229: Release Doesn't Correctly Recognize Windows Server 2022 This release doesn't correctly identify Windows Server 2022. The property `os.name` is set to `Windows Server 2019` on Windows Server 2022. In HotSpot error logs the OS is identified as `Windows Server 2019`; however, the HotSpot error log does show the Build number. Windows Server 2022 has Build 20348, or above. JDK-8274840: Release Doesn't Correctly Recognize Windows 11 This release doesn't correctly identify Windows 11. The property `os.name` is set to `Windows 10` on Windows 11. In HotSpot error logs, the OS is identified as `Windows 10`; however, the HotSpot error log does show the Build number. Windows 11 has Build 22000.194 or above. JDK-8256425: Obsoleted Biased-Locking The VM option `UseBiasedLocking` along with the VM options `BiasedLockingStartupDelay`, `BiasedLockingBulkRebiasThreshold`, `BiasedLockingBulkRevokeThreshold`, `BiasedLockingDecayTime` and `UseOptoBiasInlining` have been obsoleted. Use of these options will produce an obsolete option warning but will otherwise be ignored. Biased locking has been disabled by default and deprecated since JDK 15. JDK-8269851: OperatingSystemMXBean.getProcessCpuLoad Is Now Container Aware For JVMs running in a container, `OperatingSystemMXBean.getProcessCpuLoad` now considers only the CPU resources available to the container when calculating CPU load. Prior to this change, the calculation included all CPUs on a host. After this change, management agents may report higher CPU usage by JVMs in containers that are constrained to a limited set of CPUs. security-libs/java.security: JDK-8272163: New Option -version Added to keytool and jarsigner Commands A new `-version` option has been added to the `keytool` and `jarsigner` commands. This option is used to print the program version of `keytool` and `jarsigner`. JDK-8225083: Removal of Google's GlobalSign Root Certificate The following root certificate from Google has been removed from the `cacerts` keystore: ``` + alias name "globalsignr2ca [jdk]" Distinguished Name: CN=GlobalSign, O=GlobalSign, OU=GlobalSign Root CA - R2 ``` JDK-8225181: KeyStore Has a getAttributes Method A `KeyStore::getAttributes` method has been added that returns the attributes of an entry without having to retrieve the entry first. This is especially useful for a private key entry that has attributes that are not protected but previously could only be retrieved with a password. JDK-8270380: Change the java.security.manager System Property Default Value to disallow The default value of the `java.security.manager` system property has been changed to `disallow`. Unless the system property is set to `allow` on the command line, any invocation of `System.setSecurityManager(SecurityManager)` with a non-null argument will throw an `UnsupportedOperationException`. JDK-8275252: Migrate cacerts From JKS to Password-Less PKCS12 The `cacerts` keystore file is now a password-less PKCS #12 file. All certificates inside are not encrypted and there is no MacData for password integrity. Since the PKCS12 and JKS keystore types are interoperable, existing code that uses a JKS `KeyStore` to load the `cacerts` file with any password (including null) continue to behave as expected and can view or extract the certificates contained within the keystore. JDK-8269039: Disabled SHA-1 Signed JARs JARs signed with SHA-1 algorithms are now restricted by default and treated as if they were unsigned. This applies to the algorithms used to digest, sign, and optionally timestamp the JAR. It also applies to the signature and digest algorithms of the certificates in the certificate chain of the code signer and the Timestamp Authority, and any CRLs or OCSP responses that are used to verify if those certificates have been revoked. These restrictions also apply to signed JCE providers. To reduce the compatibility risk for JARs that have been previously timestamped, there is one exception to this policy: - Any JAR signed with SHA-1 algorithms and timestamped prior to January 01, 2019 will not be restricted. This exception may be removed in a future JDK release. To determine if your signed JARs are affected by this change, run `jarsigner -verify -verbose -certs` on the signed JAR, and look for instances of "SHA1" or "SHA-1" and "disabled" and a warning that the JAR will be treated as unsigned in the output. For example: ``` - Signed by "CN="Signer"" Digest algorithm: SHA-1 (disabled) Signature algorithm: SHA1withRSA (disabled), 2048-bit key WARNING: The jar will be treated as unsigned, because it is signed with a weak algorithm that is now disabled by the security property: jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, DSA keySize < 1024, SHA1 denyAfter 2019-01-01 ``` JARs affected by these new restrictions should be replaced or re-signed with stronger algorithms. Users can, *at their own risk*, remove these restrictions by modifying the `java.security` configuration file (or override it by using the `java.security.properties` system property) and removing "SHA1 usage SignedJAR & denyAfter 2019-01-01" from the `jdk.certpath.disabledAlgorithms` security property and "SHA1 denyAfter 2019-01-01" from the `jdk.jar.disabledAlgorithms` security property. JDK-8225082: Removal of IdenTrust Root Certificate The following root certificate from IdenTrust has been removed from the `cacerts` keystore: ``` + alias name "identrustdstx3 [jdk]" Distinguished Name: CN=DST Root CA X3, O=Digital Signature Trust Co. ``` JDK-8251468: X509Certificate.get{Subject,Issuer}AlternativeNames and getExtendedKeyUsage Now Throw CertificateParsingException if Extension Is Unparseable The JDK implementation (as supplied by the SUN provider) of `X509Certificate::getSubjectAlternativeNames`, `X509Certificate::getIssuerAlternativeNames` and `X509Certificate::getExtendedKeyUsage` now throws `CertificateParsingException` instead of returning `null` when the extension is non-critical and unparseable (badly encoded or contains invalid values). This change in behavior is compliant with the specification of these methods. JDK-8274471: Support for RSASSA-PSS in OCSP Response An OCSP response signed with the RSASSA-PSS algorithm is now supported. JDK-8231107: Allow Store Password to Be Null When Saving a PKCS12 KeyStore Calling `keyStore.store(outputStream, null)` on a PKCS12 KeyStore creates a password-less PKCS12 file. The certificates inside the file are not encrypted and the file contains no MacData. This file can then be loaded with any password (including `null`) when calling `keyStore.load(inputStream, password)`. core-libs/java.lang:reflect: JDK-8271820: JEP 416: Reimplement Core Reflection With Method Handles [JEP 416](https://openjdk.java.net/jeps/416) reimplements core reflection with method handles. Code that depends upon highly implementation-specific and undocumented aspects of the existing implementation might be impacted. Issues that might arise include: - Code that inspects the internal generated reflection classes (such as, subclasses of `MagicAccessorImpl`) no longer works and must be updated. - Code that attempts to break the encapsulation and change the value of the private final `modifiers` field of `Method`, `Field` and `Constructor` class to be different from the underlying member might cause a runtime error. Such code must be updated. To mitigate this compatibility risk, you can enable the old implementation as a workaround by using `-Djdk.reflect.useDirectMethodHandle=false`. We will remove the old core reflection implementation in a future release. The `-Djdk.reflect.useDirectMethodHandle=false` workaround will stop working at that point. core-libs/java.time: JDK-8274407: Update Timezone Data to 2021c The IANA Time Zone Database, on which the JDK's Date/Time libraries are based, has made a tweak to some of the time zone rules in [2021c](https://mm.icann.org/pipermail/tz-announce/2021-October/000067.html). Note that in [2021b](https://mm.icann.org/pipermail/tz-announce/2021-September/000066.html), which is cumulatively included in this change, some of the time zone rules prior to the year 1970 have been modified according to changes introduced with 2021b. For more details, refer to the announcement of [2021b](https://mm.icann.org/pipermail/tz-announce/2021-September/000066.html). core-libs/javax.annotation.processing: JDK-8273157: printError, printWarning, and printNote methods on Messager For annotation processors, the `Messager` interface now has methods `printError`, `printWarning`, and `printNote` to directly report errors, warnings, and notes, respectively. core-libs/java.io:serialization: JDK-8276665: ObjectInputStream.GetField.get(name, object) Throws ClassNotFoundException The `java.io.ObjectInputStream.GetField.get(String name, Object val)` method now throws `ClassNotFoundException` when the class of the object is not found. Previously, null was returned, which prevented the caller from correctly handling the case where the class was not found. The signature of `GetField.get(name, val)` has been updated to throw `ClassNotFoundException`and a `ClassNotFoundException` exception is thrown when the class is not found. The source compatibility risk is low. The addition of a throws `ClassNotFoundException` should not cause a source compatibility or a compilation warning. The `GetField` object and its methods are called within the context of the `readObject` method and include `throws ClassNotFoundException`. To revert to the old behavior, a system property, `jdk.serialGetFieldCnfeReturnsNull`, has been added to the implementation. Setting the value to `true` reverts to the old behavior (returning null); leaving it unset or to any other value results in the throwing of `ClassNotFoundException`. JDK-8278087: Deserialization Filter and Filter Factory Property Error Reporting Were Under Specified Invalid values of the command line and the security properties of `jdk.serialFilter `and `jdk.serialFilterFactory` are reported by throwing `java.lang.IllegalStateException` on the first use. The property values are checked when constructing `java.io.ObjectInputStream` or when calling the methods of `java.io.ObjectInputFilter.Config` including `getSerialFilter()` and `getSerialFilterFactory()`. The `IllegalStateException` indicates that the serial filter or serial filter factory is invalid and cannot be used; deserialization is disabled. Previously, the exception thrown was `ExceptionInInitializerError`. security-libs/org.ietf.jgss:krb5: JDK-8274656: Removal of default_checksum and safe_checksum_type From krb5.conf The "default_checksum" and "safe_checksum_type" settings in the `krb5.conf` configuration file are no longer supported. The checksum type in a KRB_TGS_REQ message is derived from the type of the encryption key used to generate it. The "safe_checksum_type" setting was never used in Java. JDK-8273670: Removed Weak etypes From Default krb5 etype List Weak encryption types based on DES, 3DES, and RC4 have been removed from the default encryption types list in Kerberos. These weak encryption types can be enabled (at your own risk) by adding them to the "permitted_enctypes" property (or alternatively, the "default_tkt_enctypes" or "default_tgt_enctypes" properties) and setting "allow_weak_crypto" to "true" in the `krb5.conf` configuration file. core-libs/javax.lang.model: JDK-8140442: Method to Get Outermost Type Element In the `javax.lang.model` API, the `Elements` utility interface has a new method, `getOutermostTypeElement`, which returns the outermost class or interface syntactically enclosing an element. JDK-8224922: Map from an Element to its JavaFileObject The method `Elements.getFileObjectOf(Element)` maps from an `Element` to the file object used to create the element. JDK-8275308: Mapping between SourceVersion and Runtime.Version The `SourceVersion` enum class has methods to map between `SourceVersion` values and `Runtime.Version` values. In turn, `Runtime.Version` can be used to map from a string representation of a version to a `Runtime.Version` object. core-libs: JDK-8277863: Deprecated sun.misc.Unsafe Methods That Return Offsets Developers that use the unsupported `sun.misc.Unsafe` API should be aware that the methods that return base and field offsets have been deprecated in this release. The methods `objectFieldOffset`, `staticFieldOffset`, and `staticFieldBase` methods are an impediment to future changes. A future release will eventually degrade or remove these methods along with the heap accessor methods. The `java.lang.invoke.VarHandle` API (added in Java 9) provides a strongly typed reference to a variable that is safe and a replacement to many cases that use field offsets and the heap accessor methods. It is strongly recommended to migrate to the `VarHandle` API where possible. Multi-Release JARs can be used by libraries and frameworks that continue to support JDK 8 or older. JDK-8269306: JEP 417: Vector API (Third Incubator) Introduce an API to express vector computations that reliably compile at runtime to optimal vector instructions on supported CPU architectures, thus achieving performance superior to equivalent scalar computations. For further details, see [JEP 417](https://openjdk.java.net/jeps/417). JDK-8274073: JEP 419: Foreign Function & Memory API (Second Incubator) Introduce an API by which Java programs can interoperate with code and data outside of the Java runtime. By efficiently invoking foreign functions (i.e., code outside the JVM), and by safely accessing foreign memory (i.e., memory not managed by the JVM), the API enables Java programs to call native libraries and process native data without the brittleness and danger of JNI. For further details, see [JEP 419](https://openjdk.java.net/jeps/419). core-libs/java.util.jar: JDK-8273401: Disabled JAR Index Support JAR Index has been disabled in this release. JAR Index was an optimization to postpone downloading of JAR files when loading applets or other classes over the network. JAR Index has many long standing issues and does not interact well with newer features (such as, Multi-Release JARs and modular JARs). If a JAR file contains an INDEX.LIST file, then its contents are ignored by the application class loader and by any URLClassLoader created by user code. The system property, `jdk.net.URLClassPath.enableJarIndex`, can be used re-enable the feature if required. If set to an empty string or the value "true", then JAR Index will be re-enabled. This system property is temporary. A future release will remove the JAR Index feature and the system property. The change does not impact the `jar -i` option. The `jar` tool continues to create an index when this option is used. JDK-8193682: Default JDK Compressor Will Be Closed when IOException Is Encountered `DeflaterOutputStream.close()` and `GZIPOutputStream.finish()` methods have been modified to close out the associated default JDK compressor before propagating a Throwable up the stack. `ZIPOutputStream.closeEntry()` method has been modified to close out the associated default JDK compressor before propagating an IOException, not of type ZipException, up the stack. hotspot/compiler: JDK-8254106: Improve Compilation Replay Compilation Replay has been improved to make it more stable and catch up with new JVM features. Enhancements include: - Best-effort support for hidden classes, allowing more cases involving invokedynamic, MethodHandles, and lambdas to replay successfully - DumpReplay support for C1 - Incremental inlining support - Numerous bug fixes to improve stability Compilation Replay is a JVM feature of debug builds that is mainly used to reproduce crashes in the C1 or C2 JIT compilers. security-libs/javax.net.ssl: JDK-8262186: Call `X509KeyManager.chooseClientAlias` Once for All Key Types The (D)TLS implementation in JDK now calls `X509KeyManager.chooseClientAlias()` only once during handshaking for client authentication, even if there are multiple algorithms requested . security-libs/javax.crypto: JDK-8271745: Fix Issues With the KW and KWP Modes of SunJCE Provider Support for AES/KW/NoPadding, AES/KW/PKCS5Padding and AES/KWP/NoPadding ciphers is added to SunJCE provider since jdk 17. The cipher block size for these transformations should be 8 instead of 16. In addition, for KWP mode, only the default IV, i.e. 0xA65959A6, is allowed to ensure maximum interoperability with other implementations. Other IV values will be rejected with exception during Cipher.init(...) calls. core-libs/java.nio: JDK-8275149: ReadableByteChannel::read No Longer Throws ReadOnlyBufferException `ReadableByteChannel::read` no longer incorrectly throws `ReadOnlyBufferException`. The `read(ByteBuffer)` method of the `ReadableByteChannel` returned by `java.nio.channels.Channel.newChannel(InputStream)` was incorrectly throwing `ReadOnlyBufferException` when its `ByteBuffer` parameter specified a read-only buffer. `ReadableByteChannel::read` is, however, specified in this case to throw an `IllegalArgumentException`. The implementation has been changed for this case to throw an `IllegalArgumentException` instead of a `ReadOnlyBufferException`, as dictated by the specification. JDK-8251329: Zip File System Provider Throws ZipException When Entry Name Element Contains "." or ".." The ZIP file system provider has been changed to reject existing ZIP files that contain entries with "." or ".." in name elements. ZIP files with these entries cannot be used as a file system. Invoking the `java.nio.file.FileSystems.newFileSystem(...)` methods throw `ZipException` if the ZIP file contains these entries. hotspot/jfr: JDK-8266936: JDK Flight Recorder Event for Finalization A new JDK Flight Recorder Event, `jdk.FinalizerStatistics`, identifies classes at runtime that use finalizers. The event is enabled by default in the JDK (in the `default.jfc` and `profile.jfc` JFR configuration files). When enabled, JFR will emit a `jdk.FinalizerStatistics` event for each instantiated class with a non-empty finalize() method. The event includes: the class that overrides `finalize()`, that class's `CodeSource`, the number of times the class's finalizer has run, and the number of objects still on the heap (not yet finalized). For information about using JFR, see the [User Guide](https://docs.oracle.com/en/java/java-components/jdk-mission-control/8/user-guide/using-jdk-flight-recorder.html#GUID-D38849B6-61C7-4ED6-A395-EA4BC32A9FD6). If finalization has been disabled with the `--finalization=disabled` option, no `jdk.FinalizerStatistics` events are emitted. tools/javadoc(tool): JDK-8272374: DocLint Reports Missing Descriptions DocLint detects and reports documentation comments that do not have a description about the associate declaration before any block tags that may be present. DocLint is a feature of the `javac` and `javadoc` tools that detects and reports issues in documentation comments. JDK-8275786: Options to Include Script Files in Generated Documentation The Standard Doclet supports an `--add-script` option used to include a reference to an external script file in the file for each page of generated documentation. JDK-8273034: Improved Navigation on Small Devices The pages generated by the Standard Doclet provide improved navigation controls when the pages are viewed on small devices. JDK-8269401: Merge "Exceptions" and "Errors" into "Exception Classes" The "Exceptions" and "Errors" tabs in documentation generated by JavaDoc have been merged into a single "Exception Classes" tab, which includes all exception classes, as defined in [JLS 11.1.1](https://docs.oracle.com/javase/specs/jls/se18/html/jls-11.html#jls-11.1.1). JDK-8189591: @SuppressWarnings for DocLint Messages You can now use `@SuppressWarnings` annotations to suppress messages from DocLint about issues in documentation comments, when it is not possible or practical to fix the issues that were found. For more details, see [Suppressing Messages](https://docs.oracle.com/en/java/javase/18/docs/specs/man/javadoc.html#suppressing-messages) in the DocLint section of the [javadoc Tool Guide](https://docs.oracle.com/en/java/javase/18/docs/specs/man/javadoc.html). JDK-8276964: Indicate Invalid Input in Generated Output When the Standard Doclet encounters content in a documentation comment that it cannot process, it may create an element in the generated output to indicate clearly to the reader that the output at that position is not as the author intended. (This replaces the earlier behavior to show either nothing or the invalid content.) The element will contain a short summary message and may contain additional details. This is in addition to the existing behavior to report diagnostics and to return a suitable exit code. JDK-8201533: JEP 413: Code Snippets in Java API Documentation An @snippet tag for JavaDoc's Standard Doclet has been added, to simplify the inclusion of example source code in API documentation. For further details, see [JEP 413](https://openjdk.java.net/jeps/413) and [A Programmmer's Guide to Snippets](https://docs.us.oracle.com/en/java/javase/18/code-snippet/index.html). core-libs/java.io: JDK-8275145: file.encoding System Property Has an Incorrect Value on Windows The initialization of the `file.encoding` system property on non macOS platforms has been reverted to align with the behavior on or before JDK 11. This has been an issue especially on Windows where the system and user's locales are not the same. JDK-8276970: Default charset for PrintWriter That Wraps PrintStream The `java.io.PrintStream`, `PrintWriter`, and `OutputStreamWriter` constructors that take a `java.io.OutputStream` and no charset now inherit the charset when the output stream is a `PrintStream`. This is important for usages such as: ``` new PrintWriter(System.out) ``` where it would be problematic if `PrintStream` didn't use the same charset as that used by `System.out`. This change was needed because [JEP 400](https://openjdk.java.net/jeps/400) makes it is possible, especially on Windows, that the encoding of `System.out` is not UTF-8. This would cause problems if `PrintStream` were wrapped with a `PrintWriter` that used UTF-8. As part of this change, `java.io.PrintStream` now defines a `charset()` method to return the print stream's charset. hotspot/gc: JDK-8267186: ZGC Supports String Deduplication The Z Garbage Collector now supports string deduplication ([JEP 192](https://openjdk.java.net/jeps/192)). JDK-8277212: ZGC: Fixed Long Process Non-Strong References Times A bug has been fixed that could cause long "Concurrent Process Non-Strong References" times with ZGC. The bug blocked the GC from making significant progress, and caused both latency and throughput issues for the Java application. The long times could be seen in the GC logs when running with `-Xlog:gc*`: ``` [17606.140s][info][gc,phases ] GC(719) Concurrent Process Non-Strong References 25781.928ms ``` JDK-8267185: ParallelGC Supports String Deduplication The Parallel Garbage Collector now supports string deduplication ([JEP 192](https://openjdk.java.net/jeps/192)). JDK-8275056: Allow G1 Heap Regions up to 512MB The JDK-8275056 enhancement extends the maximum allowed heap region size from 32MB to 512MB for the G1 garbage collector. Default ergonomic heap region size selection is still limited to 32MB regions maximum. Heap region sizes beyond that must be selected manually by using the `-XX:G1HeapRegionSize` command line option. This can be used to mitigate both inner and outer fragmentation issues with large objects on large heaps. On very large heaps, using a larger heap region size may also decrease internal region management overhead and increase performance due to larger local allocation buffers. JDK-8272773: Configurable Card Table Card Size JDK-8272773 introduces the VM option `-XX:GCCardSizeInBytes` used to set a size of the area that a card table entry covers (the "card size") that is different from the previous fixed value of 512 bytes. Permissible values are now 128, 256, and 512 bytes for all platforms, and 1024 bytes for 64 bit platforms only. The default value remains 512 bytes. The card size impacts the amount of work to be done when searching for references into an area that is to be evacuated (for example, young generation) during garbage collection. Smaller card sizes give more precise information about the location of these references, often leading to less work during garbage collection. At the same time, however, smaller card sizes can lead to more memory usage in storing this information. The increase in memory usage might result in slower performance of maintenance work during the garbage collection. JDK-8017163: Obsoleted Product Options -XX:G1RSetRegionEntries and -XX:G1RSetSparseRegionEntries The options `-XX:G1RSetRegionEntries` and `-XX:G1RSetSparseRegionEntries` have been obsoleted with the changes from JDK-8017163. JDK-8017163 implements a completely new remembered set implementation in which these two options no longer apply. In this release, neither `-XX:G1RSetRegionEntries` nor `-XX:G1RSetSparseRegionEntries` have a function, and their use will trigger an obsoletion warning. JDK-8272609: SerialGC Supports String Deduplication The Serial Garbage Collector now supports string deduplication ([JEP 192](https://openjdk.java.net/jeps/192)). ALL FIXED ISSUES, BY COMPONENT AND PRIORITY: client-libs: (P3) JDK-8269637: javax/swing/JFileChooser/FileSystemView/SystemIconTest.java fails on windows (P4) JDK-8272332: --with-harfbuzz=system doesn't add -lharfbuzz after JDK-8255790 (P4) JDK-8274614: 6 open/test/jdk/:jdk_desktop testcases are failing on on Win 10 Enterprise (P4) JDK-8272805: Avoid looking up standard charsets (P4) JDK-8271456: Avoid looking up standard charsets in "java.desktop" module (P4) JDK-8276046: codestrings.validate_vm gtest fails on ppc64, s390 (P4) JDK-8275891: Deproblemlist closed/test/jdk/javax/swing/JTextArea/5042886/bug5042886.java (P4) JDK-8275851: Deproblemlist open/test/jdk/javax/swing/JComponent/6683775/bug6683775.java (P4) JDK-8278251: Enable "missing-explicit-ctor" check in the jdk.unsupported.desktop module (P4) JDK-8198626: java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html fails on mac (P4) JDK-8270859: Post JEP 411 refactoring: client libs with maximum covering > 10K (P4) JDK-8276385: Re-run blessed-modifier-order script on java.desktop and jdk.accessibility (P4) JDK-8272166: Remove java/awt/print/PrinterJob/InitToBlack.html (P4) JDK-8270058: Use Objects.check{Index,FromIndexSize} for java.desktop (P5) JDK-8273528: Avoid ByteArrayOutputStream.toByteArray when converting stream to String (P5) JDK-8276794: Change nested classes in java.desktop to static nested classes (P5) JDK-8275106: Cleanup Iterator usages in java.desktop (P5) JDK-8274882: Cleanup redundant boxing in java.desktop (P5) JDK-8274945: Cleanup unnecessary calls to Throwable.initCause() in java.desktop (P5) JDK-8274640: Cleanup unnecessary null comparison before instanceof check in java.desktop (P5) JDK-8273375: Remove redundant 'new String' calls after concatenation in java.desktop (P5) JDK-8273168: Remove superfluous use of boxing in java.desktop (P5) JDK-8274680: Remove unnecessary conversion to String in java.desktop (P5) JDK-8274016: Replace 'for' cycles with iterator with enhanced-for in java.desktop (P5) JDK-8274806: Simplify equals() call on nullable variable and a constant in java.desktop (P5) JDK-8274505: Too weak variable type leads to unnecessary cast in java.desktop (P5) JDK-8274496: Use String.contains() instead of String.indexOf() in java.desktop (P5) JDK-8274634: Use String.equals instead of String.compareTo in java.desktop client-libs/2d: (P2) JDK-8273358: macOS Monterey does not have the font Times needed by Serif (P3) JDK-8262731: [macOS] Exception from "Printable.print" is swallowed during "PrinterJob.print" (P3) JDK-8267940: [macos] java/awt/print/Dialog/DialogOwnerTest.java fails (P3) JDK-8271718: Crash when during color transformation the color profile is replaced (P3) JDK-8270874: JFrame paint artifacts when dragged from standard monitor to HiDPI monitor (P3) JDK-8266079: Lanai: AlphaComposite shows differences on Metal compared to OpenGL (P3) JDK-8272392: Lanai: SwingSet2. Black background on expanding tree node (P3) JDK-8262751: RenderPipelineState assertion error in J2DDemo (P3) JDK-8276905: Use appropriate macosx_version_minimum value while compiling metal shaders (P4) JDK-8275344: -Xcheck:jni produces some warnings in the LCMS.c (P4) JDK-8269223: -Xcheck:jni WARNINGs working with fonts on Linux (P4) JDK-8273887: [macos] java/awt/color/ICC_ColorSpace/MTTransformReplacedProfile.java timed out (P4) JDK-8273581: Change the mechanism by which JDK loads the platform-specific FontManager class (P4) JDK-8273102: Delete deprecated for removal the empty finalize() in java.desktop module (P4) JDK-8276800: Fix table headers in NumericShaper.html (P4) JDK-8273135: java/awt/color/ICC_ColorSpace/MTTransformReplacedProfile.java crashes in liblcms.dylib with NULLSeek+0x7 (P4) JDK-8198336: java/awt/FontMetrics/FontCrash.java fails in headless mode (P4) JDK-8272878: JEP 381 cleanup: Remove unused Solaris code in sun.font.TrueTypeGlyphMapper (P4) JDK-8273972: Multi-core choke point in CMM engine (LCMSTransform.doTransform) (P4) JDK-8273831: PrintServiceLookup spawns 2 threads in the current classloader, getting orphaned (P4) JDK-8192931: Regression test java/awt/font/TextLayout/CombiningPerf.java fails (P4) JDK-8275872: Sync J2DBench run and analyze Makefile targets with build.xml (P5) JDK-8274651: Possible race in FontDesignMetrics.KeyReference.dispose client-libs/demo: (P3) JDK-8278604: SwingSet2 table demo does not have accessible description set for images client-libs/java.awt: (P2) JDK-8272602: [macOS] not all KEY_PRESSED events sent when control modifier is used (P3) JDK-8272806: [macOS] "Apple AWT Internal Exception" when input method is changed (P3) JDK-8262945: [macos] Regression Manual Test for Key Events Fails (P3) JDK-8015886: java/awt/Focus/DeiconifiedFrameLoosesFocus/DeiconifiedFrameLoosesFocus.java sometimes failed on Ubuntu (P3) JDK-8238436: java/awt/Frame/FrameLocationTest/FrameLocationTest.java fails (P3) JDK-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) (P3) JDK-8277299: STACK_OVERFLOW in Java_sun_awt_shell_Win32ShellFolder2_getIconBits (P4) JDK-8255470: [macos] java/awt/FileDialog/FileDialogBufferOverflowTest/FileDialogBufferOverflowTest.html timed out (P4) JDK-8274397: [macOS] Stop setting env. var JAVA_MAIN_CLASS_ in launcher code (P4) JDK-8273808: Cleanup AddFontsToX11FontPath (P4) JDK-8275131: Exceptions after a touchpad gesture on macOS (P4) JDK-8168388: GetMousePositionTest fails with the message "Mouse position should not be null" (P4) JDK-8268620: InfiniteLoopException test may fail on x86 platforms (P4) JDK-8267307: Introduce new client property for XAWT: xawt.mwm_decor_title (P4) JDK-8202932: java/awt/Component/NativeInLightShow/NativeInLightShow.java fails (P4) JDK-8202667: java/awt/Debug/DumpOnKey/DumpOnKey.java times out on Windows (P4) JDK-8196017: java/awt/Mouse/GetMousePositionTest/GetMousePositionWithPopup.java fails (P4) JDK-8213120: java/awt/TextArea/AutoScrollOnSelectAndAppend/AutoScrollOnSelectAndAppend.java fails on mac10.13 (P4) JDK-8247973: Javadoc incorrect for IdentityArrayList, IdentityLinkedList (P4) JDK-8196440: Regression automated Test 'java/awt/TrayIcon/PopupMenuLeakTest/PopupMenuLeakTest.java' fails (P4) JDK-8273387: remove some unreferenced gtk-related functions (P4) JDK-8274396: Suppress more warnings on non-serializable non-transient instance fields in client libs (P4) JDK-8255898: Test java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.java fails on Mac OS (P4) JDK-8202926: Test java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.html fails (P5) JDK-8274317: Unnecessary reentrant synchronized block in java.awt.Cursor client-libs/java.awt:i18n: (P3) JDK-8269698: Specification for methods of java.awt.im.InputContext should mention that they do nothing client-libs/java.beans: (P4) JDK-8276678: Malformed Javadoc inline tags in JDK source in com/sun/beans/decoder/DocumentHandler.java client-libs/javax.accessibility: (P2) JDK-8278612: [macos] test/jdk/java/awt/dnd/RemoveDropTargetCrashTest crashes with VoiceOver on macOS (P2) JDK-8275809: crash in [CommonComponentAccessibility getCAccessible:withEnv:] (P2) JDK-8274381: missing CAccessibility definitions in JNI code (P3) JDK-8275071: [macos] A11y cursor gets stuck when combobox is closed (P3) JDK-8278609: [macos] accessibility frame is misplaced on a secondary monitor on macOS (P3) JDK-8274326: [macos] Ensure initialisation of sun/lwawt/macosx/CAccessibility in JavaComponentAccessibility.m (P3) JDK-8278526: [macos] Screen reader reads SwingSet2 JTable row selection as null, dimmed row for last column (P3) JDK-8275819: [TableRowAccessibility accessibilityChildren] method is ineffective (P3) JDK-8279227: Access Bridge: Wrong frame position and hit test result on HiDPI display (P3) JDK-8271071: accessibility of a table on macOS lacks cell navigation (P3) JDK-8275720: CommonComponentAccessibility.createWithParent isWrapped causes mem leak (P3) JDK-8262031: Create implementation for NSAccessibilityNavigableStaticText protocol (P3) JDK-8267387: Create implementation for NSAccessibilityOutline protocol (P3) JDK-8267388: Create implementation for NSAccessibilityTable protocol (P3) JDK-8267385: Create NSAccessibilityElement implementation for JavaComponentAccessibility (P3) JDK-8274056: JavaAccessibilityUtilities leaks JNI objects (P3) JDK-8274383: JNI call of getAccessibleSelection on a wrong thread (P3) JDK-8277497: Last column cell in the JTable row is read as empty cell (P3) JDK-8273678: TableAccessibility and TableRowAccessibility miss autorelease (P3) JDK-8152350: ☂ [macos] Rework Swing accessibility support to use macOS 10.10 SDK NSAccessibility Protocol (P4) JDK-8268824: Remove unused jdk.accessibility APIs deprecated for removal in JDK 9 (P5) JDK-8274635: Use String.equals instead of String.compareTo in jdk.accessibility client-libs/javax.imageio: (P2) JDK-8278047: Few javax/imageio test regressed after JDK-8262297 fix (P3) JDK-8041125: ColorConvertOp filter much slower in JDK 8 compared to JDK7 (P3) JDK-8262297: ImageIO.write() method will throw IndexOutOfBoundsException (P3) JDK-8270893: IndexOutOfBoundsException while reading large TIFF file (P3) JDK-8266435: WBMPImageReader.read() should not truncate the input stream client-libs/javax.swing: (P2) JDK-8272481: [macos] javax/swing/JFrame/NSTexturedJFrame/NSTexturedJFrame.java fails (P2) JDK-8277407: javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java fails to compile after JDK-8276058 (P3) JDK-8273478: [macos11] JTabbedPane selected and pressed tab is not legible (P3) JDK-8269951: [macos] Focus not painted in JButton when setBorderPainted(false) is invoked (P3) JDK-8271923: [macos] the text color on the selected disabled tabbed pane button remains white making text unreadable (P3) JDK-8272229: BasicSplitPaneDivider:oneTouchExpandableChanged() returns leftButton and rightButton as null with GTKLookAndFeel (P3) JDK-8264291: Create implementation for NSAccessibilityCell protocol peer (P3) JDK-8264286: Create implementation for NSAccessibilityColumn protocol peer (P3) JDK-8264287: Create implementation for NSAccessibilityComboBox protocol peer (P3) JDK-8264292: Create implementation for NSAccessibilityList protocol peer (P3) JDK-8264293: Create implementation for NSAccessibilityMenu protocol peer (P3) JDK-8264294: Create implementation for NSAccessibilityMenuBar protocol peer (P3) JDK-8264295: Create implementation for NSAccessibilityMenuItem protocol peer (P3) JDK-8264296: Create implementation for NSAccessibilityPopUpButton protocol peer (P3) JDK-8264297: Create implementation for NSAccessibilityProgressIndicator protocol peer (P3) JDK-8264298: Create implementation for NSAccessibilityRow protocol peer (P3) JDK-8264303: Create implementation for NSAccessibilityTabGroup protocol peer (P3) JDK-8272148: JDesktopPane:getComponentCount() returns one extra than expected with GTKLookAndFeel (P3) JDK-8266510: Nimbus JTree default tree cell renderer does not use selected text color (P3) JDK-8271315: Redo: Nimbus JTree renderer properties persist across L&F changes (P4) JDK-8268084: [macos] Disabled JMenuItem arrow is not disabled (P4) JDK-7124287: [macosx] JTableHeader doesn't get focus after pressing F8 key (P4) JDK-6350025: API documentation for JOptionPane using deprecated methods. (P4) JDK-8275605: Deproblemlist closed/test/jdk/javax/swing/JMenuItem/6458123/bug6458123.java for linux (P4) JDK-8275862: Deproblemlist closed/test/jdk/javax/swing/RepaintManager/4939857/bug4939857.java for non-linux platform (P4) JDK-8268284: javax/swing/JComponent/7154030/bug7154030.java fails with "Exception: Failed to hide opaque button" (P4) JDK-8257540: javax/swing/JFileChooser/8041694/bug8041694.java failed with "RuntimeException: The selected directory name is not the expected 'd ' but 'D '." (P4) JDK-8273638: javax/swing/JTable/4235420/bug4235420.java fails in GTK L&F (P4) JDK-8272232: javax/swing/JTable/4275046/bug4275046.java failed with "Expected value in the cell: 'rededited' but found 'redEDITED'." (P4) JDK-6789980: JEditorPane background color not honored with Nimbus L&F (P4) JDK-8276679: Malformed Javadoc inline tags in JDK source in javax/swing (P4) JDK-8058704: Nimbus does not honor JTextPane background color (P4) JDK-5015261: NPE may be thrown if JDesktopIcon is set to null on a JInternalFrame (P4) JDK-8049301: Suspicious use of string identity checks in JComponent.setUIProperty (P4) JDK-7179436: TEST_BUG: closed/javax/swing/text/html/HTMLEditorKit/6520730/bug6520730.java fails intermittently (P4) JDK-8271895: UnProblemList javax/swing/JComponent/7154030/bug7154030.java in JDK18 (P4) JDK-8267161: Write automated test case for JDK-4479161 (P5) JDK-8273907: Cleanup redundant Math.max/min calls in DefaultHighlighter (P5) JDK-8274497: Unnecessary Vector usage in AquaFileSystemModel (P5) JDK-8277504: Use String.stripTrailing instead of hand-crafted method in SwingUtilities2 core-libs: (P2) JDK-8270321: Startup regressions in 18-b5 caused by JDK-8266310 (P3) JDK-8275735: [linux] Remove deprecated Metrics api (kernel memory limit) (P3) JDK-8277957: Add test group for IPv6 exclusive testing (P3) JDK-8278897: Alignment of heap segments is not enforced correctly (P3) JDK-8279527: Dereferencing segments backed by different scopes leads to pollution (P3) JDK-8275063: Implementation of Foreign Function & Memory API (Second incubator) (P3) JDK-8278144: Javadoc for MemorySegment::set/MemorySegment::setAtIndex is missing throws tag (P3) JDK-8278341: Liveness check for global scope is not as fast as it could be (P3) JDK-8269850: Most JDK releases report macOS version 12 as 10.16 instead of 12.0 (P3) JDK-8269409: Post JEP 411 refactoring: core-libs with maximum covering > 10K (P3) JDK-8266407: remove jdk.internal.javac.PreviewFeature.Feature.SEALED_CLASSES (P3) JDK-8280592: Small javadoc tweaks to foreign API (P3) JDK-8277924: Small tweaks to foreign function and memory API (P3) JDK-8279930: Synthetic cast causes generation of store barriers when using heap segments (P3) JDK-8278071: typos in MemorySegment::set, MemorySegment::setAtIndex javadoc (P4) JDK-8278171: [vectorapi] Mask incorrectly computed for zero extending cast (P4) JDK-8278014: [vectorapi] Remove test run script (P4) JDK-8272120: Avoid looking for standard encodings in "java." modules (P4) JDK-8273351: bad tag in jdk.random module-info.java (P4) JDK-8276239: Better tables in java.util.random package summary (P4) JDK-8274276: Cache normalizedBase URL in URLClassPath.FileLoader (P4) JDK-8274071: Clean up java.lang.ref comments and documentation (P4) JDK-8269665: Clean-up toString() methods of some primitive wrappers (P4) JDK-8276447: Deprecate finalization-related methods for removal (P4) JDK-8277863: Deprecate sun.misc.Unsafe methods that return offsets (P4) JDK-8265474: Dubious 'null' assignment in CompactByteArray.expand (P4) JDK-8276572: Fake libsyslookup.so library causes tooling issues (P4) JDK-8274075: Fix miscellaneous typos in java.base (P4) JDK-8273450: Fix the copyright header of SVML files (P4) JDK-8267840: Improve URLStreamHandler.parseURL() (P4) JDK-8188046: java.lang.Math.mutliplyHigh does not run in constant time (P4) JDK-8272866: java.util.random package summary contains incorrect mixing function in table (P4) JDK-8269306: JEP 417: Vector API (Third Incubator) (P4) JDK-8274073: JEP 419: Foreign Function & Memory API (Second Incubator) (P4) JDK-8276649: MethodHandles.Lookup docs: replace the table in the cross-module access check section with list (P4) JDK-8278607: Misc issues in foreign API javadoc (P4) JDK-8272903: Missing license header in ArenaAllocator.java (P4) JDK-8276652: Missing row headers in MethodHandles.Lookup docs (P4) JDK-8263561: Re-examine uses of LinkedList (P4) JDK-8268113: Re-use Long.hashCode() where possible (P4) JDK-8273435: Remove redundant zero-length check in ClassDesc.of (P4) JDK-8272756: Remove unnecessary explicit initialization of volatile variables in java.desktop (P4) JDK-8267844: Replace Integer/Long.valueOf() with Integer/Long.parse*() where applicable (P4) JDK-8269130: Replace usages of Collection.toArray() with Collection.toArray(T[]) to avoid redundant array copying (P4) JDK-8272863: Replace usages of Collections.sort with List.sort call in public java modules (P4) JDK-8273140: Replace usages of Enum.class.getEnumConstants() with Enum.values() where possible (P4) JDK-8269700: source level for IntelliJ JDK project is set incorrectly (P4) JDK-8267630: Start of release updates for JDK 18 (P4) JDK-8231641: Suppress warnings on non-serializable non-transient instance fields in JDK libraries (umbrella) (P4) JDK-8276236: Table headers missing in Formatter api docs (P4) JDK-8268873: Unnecessary Vector usage in java.base (P4) JDK-8271603: Unnecessary Vector usage in java.desktop (P4) JDK-8268967: Update java.security to use switch expressions (P4) JDK-8276629: Use blessed modifier order in core-libs code (P4) JDK-8276348: Use blessed modifier order in java.base (P4) JDK-8268764: Use Long.hashCode() instead of int-cast where applicable (P4) JDK-8268698: Use Objects.check{Index,FromToIndex,FromIndexSize} for java.base (P4) JDK-8276926: Use String.valueOf() when initializing File.separator and File.pathSeparator (P5) JDK-8272626: Avoid C-style array declarations in java.* (P5) JDK-8274079: Cleanup unnecessary calls to Throwable.initCause() in java.base module (P5) JDK-8273616: Fix trivial doc typos in the java.base module (P5) JDK-8274333: Redundant null comparison after Pattern.split (P5) JDK-8274835: Remove unnecessary castings in java.base (P5) JDK-8274237: Replace 'for' cycles with iterator with enhanced-for in java.base (P5) JDK-8273261: Replace 'while' cycles with iterator with enhanced-for in java.base (P5) JDK-8272992: Replace usages of Collections.sort with List.sort call in jdk.* modules (P5) JDK-8274879: Replace uses of StringBuffer with StringBuilder within java.base classes (P5) JDK-8274949: Use String.contains() instead of String.indexOf() in java.base core-libs/java.io: (P3) JDK-8276970: Default charset for PrintWriter that wraps PrintStream (P3) JDK-8275145: file.encoding system property has an incorrect value on Windows (P3) JDK-8278044: ObjectInputStream methods invoking the OIF.CFG.getSerialFilterFactory() silent about error cases. (P4) JDK-4847239: (spec) File.createTempFile() should make it clear that it doesn't create the temporary directory (P4) JDK-8275536: Add test to check that File::lastModified returns same time stamp as Files.getLastModifiedTime (P4) JDK-8272297: FileInputStream should override transferTo() for better performance (P4) JDK-6633375: FileOutputStream_md.c should be merged into FileOutputStream.c (P4) JDK-8272369: java/io/File/GetXSpace.java failed with "RuntimeException: java.nio.file.NoSuchFileException: /run/user/0" (P4) JDK-8274750: java/io/File/GetXSpace.java failed: '/dev': 191488 != 190976 (P4) JDK-8276623: JDK-8275650 accidentally pushed "out" file (P4) JDK-8273513: Make java.io.FilterInputStream specification more precise about overrides (P4) JDK-8271737: Only normalize the cached user.dir property once (P4) JDK-8276164: RandomAccessFile#write method could throw IndexOutOfBoundsException that is not described in javadoc (P4) JDK-8276806: Use Objects.checkFromIndexSize where possible in java.base core-libs/java.io:serialization: (P2) JDK-8278428: ObjectInputStream.readFully range check incorrect (P3) JDK-8278087: Deserialization filter and filter factory property error reporting under specified (P3) JDK-8269336: Malformed jdk.serialFilter incorrectly handled (P3) JDK-8276665: ObjectInputStream.GetField.get(name, object) should throw ClassNotFoundException (P4) JDK-8278463: [test] Serialization WritePrimitive test revised for readFully test fails (P4) JDK-8275013: Improve discussion of serialization method declarations in java.io.Object{Input, Output}Stream (P4) JDK-8268595: java/io/Serializable/serialFilter/GlobalFilterTest.java#id1 failed in timeout (P4) JDK-8275137: jdk.unsupported/sun.reflect.ReflectionFactory.readObjectNoDataForSerialization uses wrong signature core-libs/java.lang: (P1) JDK-8271888: build error after JDK-8271599 (P2) JDK-8279833: Loop optimization issue in String.encodeUTF8_UTF16 (P2) JDK-8277980: ObjectMethods::bootstrap throws NPE when lookup is null (P2) JDK-8271732: Regression in StringBuilder.charAt bounds checking (P3) JDK-8276408: Deprecate Runtime.exec methods with a single string command line argument (P3) JDK-8274609: JEP 421: Deprecate Finalization for Removal (P3) JDK-8272347: ObjectMethods::bootstrap should specify NPE if any argument except lookup is null (P3) JDK-8275703: System.loadLibrary fails on Big Sur for libraries hidden from filesystem (P4) JDK-8273242: (test) Refactor to use TestNG for RuntimeTests ExecCommand tests (P4) JDK-8272600: (test) Use native "sleep" in Basic.java (P4) JDK-8276422: Add command-line option to disable finalization (P4) JDK-8271225: Add floorDivExact() method to java.lang.[Strict]Math (P4) JDK-8271602: Add Math.ceilDiv() family parallel to Math.floorDiv() family (P4) JDK-8271840: Add simple Integer.toString microbenchmarks (P4) JDK-8273259: Character.getName doesn't follow Unicode spec for ideographs (P4) JDK-8276188: Clarify "default charset" descriptions in String class (P4) JDK-8273541: Cleaner Thread creates with normal priority instead of MAX_PRIORITY - 2 (P4) JDK-8075806: divideExact is missing in java.lang.Math (P4) JDK-8273091: Doc of [Strict]Math.floorDiv(long,int) erroneously documents int in @return tag (P4) JDK-8273100: Improve AbstractStringBuilder.append(String) when using CompactStrings (P4) JDK-8271599: Javadoc of floorDiv() and floorMod() families is inaccurate in some places (P4) JDK-8271601: Math.floorMod(int, int) and Math.floorMod(long, long) differ in their logic (P4) JDK-8276338: Minor improve of wording for String.to(Lower|Upper)Case (P4) JDK-8276653: Missing row headers in j.l.Character docs (P4) JDK-8261847: performance of java.lang.Record::toString should be improved (P4) JDK-8277502: post-integration doc tasks (P4) JDK-8274003: ProcessHandleImpl.Info toString has an if check which is always true (P4) JDK-8274367: Re-indent stack-trace examples for Throwable.printStackTrace (P4) JDK-8276880: Remove java/lang/RuntimeTests/exec/ExecWithDir as unnecessary (P4) JDK-8270160: Remove redundant bounds check from AbstractStringBuilder.charAt() (P4) JDK-8273329: Remove redundant null check from String.getBytes(String charsetName) (P4) JDK-8277606: String(String) constructor could copy hashIsZero (P4) JDK-8277861: Terminally deprecate Thread.stop (P4) JDK-8211002: test/jdk/java/lang/Math/PowTests.java skips testing for non-corner-case values (P4) JDK-8274031: Typo in StringBuilder.readObject (P4) JDK-8266972: Use String.concat() in j.l.Class where invokedynamic-based String concatenation is not available (P4) JDK-8188044: We need Math.unsignedMultiplyHigh (P5) JDK-8271624: Avoid unnecessary ThreadGroup.checkAccess calls when creating Threads (P5) JDK-6506405: Math.abs(float) is slow (P5) JDK-8275002: Remove unused AbstractStringBuilder.MAX_ARRAY_SIZE (P5) JDK-8271627: Use local field access in favor of Class.getClassLoader0 core-libs/java.lang.invoke: (P2) JDK-8270056: Generated lambda class can not access protected static method of target class (P3) JDK-8013527: calling MethodHandles.lookup on itself leads to errors (P3) JDK-8273194: Document the two possible cases when Lookup::ensureInitialized returns (P3) JDK-8274848: LambdaMetaFactory::metafactory on REF_invokeSpecial impl method has incorrect behavior (P3) JDK-8078641: MethodHandle.asTypeCache can retain classes from unloading (P4) JDK-8155659: Bootstrapping issues with lambdas in custom SecurityManager (P4) JDK-8273656: Improve java.lang.invoke.MethodType.parameterList() and its usage (P4) JDK-8270949: Make dynamically generated classes with the class file version of the current release (P4) JDK-8273000: Remove WeakReference-based class initialisation barrier implementation (P5) JDK-8271611: Use SecurityConstants.ACCESS_PERMISSION in MethodHandles core-libs/java.lang.module: (P4) JDK-8276826: Clarify the ModuleDescriptor.Version specification’s treatment of repeated punctuation characters (P4) JDK-8262944: Improve exception message when automatic module lists provider class not in JAR file (P4) JDK-8275509: ModuleDescriptor.hashCode isn't reproducible across builds (P4) JDK-8250678: ModuleDescriptor.Version parsing treats empty segments inconsistently (P4) JDK-8271208: Typo in ModuleDescriptor.read javadoc core-libs/java.lang:class_loading: (P3) JDK-8266310: deadlock between System.loadLibrary and JNI FindClass loading another class core-libs/java.lang:reflect: (P2) JDK-8277451: java.lang.reflect.Field::set on static field with invalid argument type should throw IAE (P3) JDK-8271820: Implementation of JEP 416: Reimplement Core Reflection with Method Handle (P3) JDK-8266010: JEP 416: Reimplement Core Reflection with Method Handles (P4) JDK-8266791: Annotation property which is compiled as an array property but changed to a single element throws NullPointerException (P4) JDK-8274299: Make Method/Constructor/Field accessors @Stable core-libs/java.math: (P4) JDK-8266578: Disambiguate BigDecimal description of scale (P4) JDK-8272541: Incorrect overflow test in Toom-Cook branch of BigInteger multiplication (P4) JDK-8271616: oddPart in MutableBigInteger::mutableModInverse contains info on final result core-libs/java.net: (P3) JDK-8276774: Cookie stored in CookieHandler not sent if user headers contain cookie (P3) JDK-8260428: Drop support for pre JDK 1.4 DatagramSocketImpl implementations (P3) JDK-8274779: HttpURLConnection: HttpClient and HttpsClient incorrectly check request method when set to POST (P3) JDK-8244202: Implementation of JEP 418: Internet-Address Resolution SPI (P3) JDK-8258951: java/net/httpclient/HandshakeFailureTest.java failed with "RuntimeException: Not found expected SSLHandshakeException in java.io.IOException" (P3) JDK-8263693: JEP 418: Internet-Address Resolution SPI (P3) JDK-8278158: jwebserver should set request timeout (P3) JDK-8280441: Missing "classpath exception" in several files from jdk.httpserver (P3) JDK-8253119: Remove the legacy PlainSocketImpl and PlainDatagramSocketImpl implementation (P3) JDK-8278270: ServerSocket is not thread safe (P3) JDK-8278339: ServerSocket::isClosed may return false after accept throws (P3) JDK-8277628: Spec for InetAddressResolverProvider::get() throwing error or exception could be clearer (P4) JDK-8276559: (httpclient) Consider adding an HttpRequest.Builder.HEAD method to build a HEAD request. (P4) JDK-8238274: (sctp) JDK-7118373 is not fixed for SctpChannel (P4) JDK-8275518: accessibility issue in Inet6Address docs (P4) JDK-8277459: Add jwebserver tool (P4) JDK-8276681: Additional malformed Javadoc inline tags in JDK source (P4) JDK-8275534: com.sun.net.httpserver.BasicAuthenticator should check whether "realm" is a quoted string (P4) JDK-8272334: com.sun.net.httpserver.HttpExchange: Improve API doc of getRequestHeaders (P4) JDK-8270286: com.sun.net.httpserver.spi.HttpServerProvider: remove use of deprecated API (P4) JDK-8268960: com/sun/net/httpserver/Headers.java: Ensure mutators normalize keys and disallow null for keys and values (P4) JDK-8268900: com/sun/net/httpserver/Headers.java: Fix indentation and whitespace (P4) JDK-8273655: content-types.properties files are missing some common types (P4) JDK-8273289: Document 'jdk.net.hosts.file' system property (P4) JDK-8133686: HttpURLConnection.getHeaderFields and URLConnection.getRequestProperties methods return field values in reverse order (P4) JDK-8245095: Implementation of JEP 408: Simple Web Server (P4) JDK-8269917: Insert missing commas in copyrights in java.net (P4) JDK-8275319: java.net.NetworkInterface throws java.lang.Error instead of SocketException (P4) JDK-8269258: java/net/httpclient/ManyRequestsLegacy.java failed with connection timeout (P4) JDK-8260510: JEP 408: Simple Web Server (P4) JDK-8270290: NTLM authentication fails if HEAD request is used (P4) JDK-8273059: Redundant Math.min call in Http2ClientImpl#getConnectionWindowSize (P4) JDK-8274227: Remove "impl.prefix" jdk system property usage from InetAddress (P4) JDK-8276634: Remove `usePlainDatagramSocketImpl` option from the test DatagramChannel/SendReceiveMaxSize.java (P4) JDK-8268464: Remove dependancy of TestHttpsServer, HttpTransaction, HttpCallback from open/test/jdk/sun/net/www/protocol/https/ tests (P4) JDK-8263531: Remove unused buffer int (P4) JDK-8253178: Replace LinkedList Impl in net.http.FilterFactory (P4) JDK-8268294: Reusing HttpClient in a WebSocket.Listener hangs. (P4) JDK-8269481: SctpMultiChannel never releases own file descriptor (P4) JDK-8278154: SimpleFileServer#createFileServer() should specify that the returned server is not started (P4) JDK-8270903: sun.net.httpserver.HttpConnection: Improve toString (P4) JDK-8269692: sun.net.httpserver.ServerImpl::createContext should throw IAE (P4) JDK-8276848: sun.net.httpserver.simpleserver.CommandLinePositiveTest: test does not specify port (P4) JDK-8274793: Suppress warnings on non-serializable non-transient instance fields in sun.net (P4) JDK-8270553: Tests should not use (real, in-use, routable) 1.1.1.1 as dummy IP value (P4) JDK-8276401: Use blessed modifier order in java.net.http (P4) JDK-8277016: Use blessed modifier order in jdk.httpserver (P4) JDK-8276655: Use blessed modifier order in SCTP (P4) JDK-8277313: Validate header failed for test/jdk/java/net/httpclient/HeadTest.java (P5) JDK-8273243: Fix indentations in java.net.InetAddress methods (P5) JDK-8273910: Redundant condition and assignment in java.net.URI (P5) JDK-8275079: Remove unnecessary conversion to String in java.net.http (P5) JDK-8274894: Use Optional.empty() instead of ofNullable(null) in HttpResponse.BodySubscribers.discarding core-libs/java.nio: (P2) JDK-8276994: java/nio/channels/Channels/TransferTo.java leaves multi-GB files in /tmp (P3) JDK-8271308: (fc) FileChannel.transferTo() transfers no more than Integer.MAX_VALUE bytes in one call (P3) JDK-8233020: (fs) UnixFileSystemProvider should use StaticProperty.userDir(). (P3) JDK-8274562: (fs) UserDefinedFileAttributeView doesn't correctly determine if supported when using OverlayFS (P3) JDK-8276661: (fs) UserDefinedFileAttributeView no longer works with long path (win) (P3) JDK-8278166: java/nio/channels/Channels/TransferTo.java timed out (P3) JDK-8265261: java/nio/file/Files/InterruptCopy.java fails with java.lang.RuntimeException: Copy was not interrupted (P3) JDK-8174819: java/nio/file/WatchService/LotsOfEvents.java fails intermittently (P3) JDK-8263940: NPE when creating default file system when default file system provider is packaged as JAR file on class path (P3) JDK-8280233: Temporarily disable Unix domain sockets in Windows PipeImpl (P4) JDK-8273641: (bf) Buffer subclasses documentation contains template strings (P4) JDK-8276128: (bf) Remove unused constant ARRAY_BASE_OFFSET from Direct-X-Buffer (P4) JDK-8269280: (bf) Replace StringBuffer in *Buffer.toString() (P4) JDK-8268435: (ch) ChannelInputStream could override readAllBytes (P4) JDK-8276779: (ch) InputStream returned by Channels.newInputStream should have fast path for SelectableChannels (P4) JDK-8275149: (ch) ReadableByteChannel returned by Channels.newChannel(InputStream) throws ReadOnlyBufferException (P4) JDK-8140241: (fc) Data transfer from FileChannel to itself causes hang in case of overlap (P4) JDK-8274548: (fc) FileChannel gathering write fails with IOException "Invalid argument" on macOS 11.6 (P4) JDK-8272759: (fc) java/nio/channels/FileChannel/Transfer2GPlus.java failed in timeout (P4) JDK-8274175: (fc) java/nio/channels/FileChannel/Transfer2GPlus.java still failed in timeout (P4) JDK-8276845: (fs) java/nio/file/spi/SetDefaultProvider.java fails on x86_32 (P4) JDK-8273922: (fs) UserDefinedFileAttributeView doesn't handle file names that are just under the MAX_PATH limit (win) (P4) JDK-8274883: (se) Selector.open throws IAE when the default file system provider is changed to a custom provider (P4) JDK-8273935: (zipfs) Files.getFileAttributeView() throws UOE instead of returning null when view not supported (P4) JDK-8251329: (zipfs) Files.walkFileTree walks infinitely if zip has dir named "." inside (P4) JDK-8190753: (zipfs): Accessing a large entry (> 2^31 bytes) leads to a negative initial size for ByteArrayOutputStream (P4) JDK-8278168: Add a few missing words to the specification of Files.mismatch (P4) JDK-8275840: Add test to java/nio/channels/Channels/TransferTo.java to test transfer sizes > 2GB (P4) JDK-8273246: Amend the test java/nio/channels/DatagramChannel/ManySourcesAndTargets.java to execute in othervm mode (P4) JDK-8274780: ChannelInputStream.readNBytes(int) incorrectly calls readAllBytes() (P4) JDK-8273038: ChannelInputStream.transferTo() uses FileChannel.transferTo(FileChannel) (P4) JDK-8273507: Convert test/jdk/java/nio/channels/Channels/TransferTo.java to TestNG test (P4) JDK-8233749: Files.exists javadoc doesn't mention eating IOException (P4) JDK-8277159: Fix java/nio/file/FileStore/Basic.java test by ignoring /run/user/* mount points (P4) JDK-8275265: java/nio/channels tests needing large heap sizes fail on x86_32 (P4) JDK-8277361: java/nio/channels/Channels/ReadXBytes.java fails with OOM error (P4) JDK-8276252: java/nio/channels/Channels/TransferTo.java failed with OOM java heap space error (P4) JDK-8278172: java/nio/channels/FileChannel/BlockDeviceSize.java should only run on Linux (P4) JDK-8276199: java/nio/channels/FileChannel/LargeGatheringWrite.java fails to terminate correctly (P4) JDK-8276763: java/nio/channels/SocketChannel/AdaptorStreams.java fails with "SocketTimeoutException: Read timed out" (P4) JDK-8271194: test/jdk/java/nio/file/spi/SetDefaultProvider.java @bug tag misleading (P4) JDK-8274314: Typo in WatchService#poll(long timeout, TimeUnit unit) javadoc (P5) JDK-8274195: Doc cleanup in java.nio.file (P5) JDK-8271147: java/nio/file/Path.java javadoc typo (P5) JDK-8274509: Remove stray * and stylistic . from doc comments core-libs/java.nio.charsets: (P3) JDK-8187041: JEP 400: UTF-8 by Default (P3) JDK-8260265: UTF-8 by Default (P4) JDK-8270490: Charset.forName() taking fallback default value (P4) JDK-8275767: JDK source code contains redundant boolean operations in jdk.charsets (P4) JDK-7008363: TEST_BUG: test/java/lang/StringCoding/CheckEncodings.sh does nothing and is very slow at that (P4) JDK-8275863: Use encodeASCII for ASCII-compatible DoubleByte encodings core-libs/java.rmi: (P2) JDK-8275293: A change done with JDK-8268764 mismatches the java.rmi.server.ObjID.hashCode spec (P3) JDK-8278967: rmiregistry fails to start because SecurityManager is disabled (P4) JDK-8275686: Suppress warnings on non-serializable non-transient instance fields in java.rmi (P5) JDK-8274946: Cleanup unnecessary calls to Throwable.initCause() in java.rmi core-libs/java.text: (P4) JDK-8190748: java/text/Format/DateFormat/DateFormatTest.java and NonGregorianFormatTest fail intermittently (P4) JDK-8264792: The NumberFormat for locale sq_XK formats price incorrectly. (P5) JDK-8273546: DecimalFormat documentation contains literal HTML character references (P5) JDK-8272616: Strange code in java.text.DecimalFormat#applyPattern core-libs/java.time: (P2) JDK-8276536: Update TimeZoneNames files to follow the changes made by JDK-8275766 (P3) JDK-8274407: (tz) Update Timezone Data to 2021c (P3) JDK-8275766: (tz) Update Timezone Data to 2021e (P3) JDK-8275849: TestZoneInfo310.java fails with tzdata2021e (P3) JDK-8278434: timeouts in test java/time/test/java/time/format/TestZoneTextPrinterParser.java (P4) JDK-8276947: Clarify how DateTimeFormatterBuilder.appendFraction handles value ranges (P4) JDK-8266901: Clarify the method description of Duration.toDaysPart() (P4) JDK-8273369: Computing micros between two instants unexpectedly overflows for some cases (P4) JDK-8177819: DateTimeFormatterBuilder zone parsing should recognise DST (P4) JDK-8171382: java.time.Duration missing isPositive method (P4) JDK-8272473: Parsing epoch seconds at a DST transition with a non-UTC parser is wrong (P4) JDK-8276220: Reduce excessive allocations in DateTimeFormatter (P4) JDK-8274467: TestZoneInfo310.java fails with tzdata2021b (P4) JDK-8274468: TimeZoneTest.java fails with tzdata2021b (P4) JDK-8268469: Update java.time to use switch expressions (P4) JDK-8269124: Update java.time to use switch expressions (part II) (P4) JDK-8277049: ZonedDateTime parse in Fall DST transition fails to retain the correct zonename. (P4) JDK-8276775: ZonedDateTime/OffsetDateTime.toString return invalid ISO-8601 for years <= 1893 (P5) JDK-8275197: Remove unused fields in ThaiBuddhistChronology core-libs/java.util: (P3) JDK-8273162: AbstractSplittableWithBrineGenerator does not create a random salt (P4) JDK-8231640: (prop) Canonical property storage (P4) JDK-8274685: Documentation suggests there are ArbitrarilyJumpableGenerator when none (P4) JDK-8270547: java.util.Random contains unnecessary @SuppressWarnings("exports") (P4) JDK-8273056: java.util.random does not correctly sample exponential or Gaussian distributions (P4) JDK-8274686: java.util.UUID#hashCode() should use Long.hashCode() (P4) JDK-8272326: java/util/Random/RandomTestMoments.java had two Gaussian fails (P4) JDK-8273792: JumpableGenerator.rngs() documentation refers to wrong method (P4) JDK-8276674: Malformed Javadoc inline tags in JDK source (P4) JDK-8275821: Optimize random number generators developed in JDK-8248862 using Math.unsignedMultiplyHigh() (P4) JDK-8276904: Optional.toString() is unnecessarily expensive (P4) JDK-8276207: Properties.loadFromXML/storeToXML works incorrectly for supplementary characters (P4) JDK-8278587: StringTokenizer(String, String, boolean) documentation bug (P4) JDK-8275688: Suppress warnings on non-serializable non-transient instance fields in DualPivotQuicksort (P4) JDK-8268664: The documentation of the Scanner.hasNextLine is incorrect (P4) JDK-8277048: Tiny improvements to the specification text for java.util.Properties.load (P5) JDK-8275342: Change nested classes in java.prefs to static nested classes core-libs/java.util.concurrent: (P3) JDK-8274349: ForkJoinPool.commonPool() does not work with 1 CPU (P4) JDK-8274391: Suppress more warnings on non-serializable non-transient instance fields in java.util.concurrent core-libs/java.util.jar: (P3) JDK-8231490: Ugly racy writes to ZipUtils.defaultBuf (P3) JDK-8276123: ZipFile::getEntry will not return a file entry when there is a directory entry of the same name within a Zip File (P4) JDK-8273250: Address javadoc issues in Deflater::setDictionationary (P4) JDK-8275163: Deflater::deflate methods omit javadoc for ReadOnlyBufferException (P4) JDK-8273401: Disable JarIndex Support In URLClassPath (P4) JDK-8193682: Infinite loop in ZipOutputStream.close() (P4) JDK-8280406: JarFile.getInputStream throws unexpected NASE (P4) JDK-8277986: Typo in javadoc of java.util.zip.ZipEntry#setTime (P4) JDK-8277087: ZipException: zip END header not found at ZipFile#Source.findEND core-libs/java.util.regex: (P3) JDK-8273691: Missing comma after 2021 in GraphemeTestAccessor.java copyright notice (P3) JDK-8276216: Negated character classes performance regression in Pattern (P3) JDK-8273430: Suspicious duplicate condition in java.util.regex.Grapheme#isExcludedSpacingMark (P4) JDK-8199594: Add doc describing how (?x) ignores spaces in character classes (P4) JDK-8269753: Misplaced caret in PatternSyntaxException's detail message (P5) JDK-8271302: Regex Test Refresh core-libs/java.util.stream: (P4) JDK-8214761: Bug in parallel Kahan summation implementation (P4) JDK-8276102: JDK-8245095 integration reverted JDK-8247980 core-libs/java.util:collections: (P3) JDK-8272042: java.util.ImmutableCollections$Map1 and MapN should not be @ValueBased (P4) JDK-8274715: Implement forEach in Collections.CopiesList core-libs/java.util:i18n: (P3) JDK-8273924: ArrayIndexOutOfBoundsException thrown in java.util.JapaneseImperialCalendar.add() (P3) JDK-8274658: ISO 4217 Amendment 170 Update (P3) JDK-8275007: Java fails to start with null charset if LC_ALL is set to certain locales (P3) JDK-8273491: java.util.spi.LocaleServiceProvider spec contains statement that is too strict (P3) JDK-8275721: Name of UTC timezone in a locale changes depending on previous code (P3) JDK-8273790: Potential cyclic dependencies between Gregorian and CalendarSystem (P4) JDK-8273111: Default timezone should return zone ID if /etc/localtime is valid but not canonicalization on linux (P4) JDK-8274864: Remove Amman/Cairo hacks in ZoneInfoFile (P4) JDK-8276186: Require getAvailableLocales() methods to include Locale.ROOT (P4) JDK-8276234: Trivially clean up locale-related code core-libs/javax.annotation.processing: (P4) JDK-8273157: Add convenience methods to Messager (P4) JDK-8275368: Correct statement of kinds of elements Processor.process operates over (P4) JDK-8275360: Use @Override in javax.annotation.processing core-libs/javax.lang.model: (P3) JDK-8224922: Access JavaFileObject from Element(s) (P3) JDK-8265888: StandardJavaFileManager::setLocationForModule specification misses 'Implementation Requirements:' (P3) JDK-8277303: Terminology mismatch between JLS17-3.9 and SE17's javax.lang.model.SourceVersion method specs (P4) JDK-8140442: Add getOutermostTypeElement to javax.lang.model utility class (P4) JDK-8267631: Add SourceVersion.RELEASE_18 (P4) JDK-8275308: Add valueOf(Runtime.Version) factory to SourceVersion (P4) JDK-8277522: Make formatting of null consistent in Elements (P4) JDK-8276772: Refine javax.lang.model docs (P4) JDK-8274321: Standardize values of @since tags in javax.lang.model core-libs/javax.naming: (P4) JDK-8273402: Use derived NamingExceptions in com.sun.jndi.ldap.Connection#readReply (P5) JDK-8273484: Cleanup unnecessary null comparison before instanceof check in java.naming (P5) JDK-8276042: Remove unused local variables in java.naming (P5) JDK-8273098: Unnecessary Vector usage in java.naming core-libs/javax.sql: (P4) JDK-8274392: Suppress more warnings on non-serializable non-transient instance fields in java.sql.rowset (P4) JDK-8275187: Suppress warnings on non-serializable array component types in java.sql.rowset (P5) JDK-8153490: Cannot setBytes() if incoming buffer's length is bigger than number of elements we want to insert. (P5) JDK-8274234: Remove unnecessary boxing via primitive wrapper valueOf(String) methods in java.sql.rowset core-svc: (P3) JDK-8276628: Use blessed modifier order in serviceability code (P4) JDK-8274716: JDWP Spec: the description for the Dispose command confuses suspend with resume. core-svc/debugger: (P3) JDK-8269268: JDWP: Properly fix thread lookup assert in findThread() (P3) JDK-8265796: vmTestbase/nsk/jdi/ObjectReference/referringObjects/referringObjects002/referringObjects002.java fails when running with JEP 416 (P4) JDK-8213714: AttachingConnector/attach/attach001 failed due to "bind failed: Address already in use" (P4) JDK-8210927: JDB tests do not update source path after doing a redefine class (P4) JDK-8270434: JDI+UT: Unexpected event in JDI tests (P4) JDK-8274687: JDWP deadlocks if some Java thread reaches wait in blockOnDebuggerSuspend (P4) JDK-8271356: Modify jdb to treat an empty command as a repeat of the previous command (P4) JDK-8274621: NullPointerException because listenAddress[0] is null (P4) JDK-8273921: Refactor NSK/JDI tests to create thread using factory (P4) JDK-8270820: remove unused stiFileTableIndex from SDE.c (P4) JDK-8260540: serviceability/jdwp/AllModulesCommandTest.java failed with "Debuggee error: 'ERROR: transport error 202: bind failed: Address already in use'" (P4) JDK-8276208: vmTestbase/nsk/jdb/repeat/repeat001/repeat001.java fails with "AssertionError: Unexpected output" (P4) JDK-8273909: vmTestbase/nsk/jdi/Event/request/request001 can still fail with "ERROR: new event is not ThreadStartEvent" (P4) JDK-8277803: vmTestbase/nsk/jdi/TypeComponent/isSynthetic/issynthetic001 fails with "Synthetic fields not found" (P5) JDK-8273912: Add threadControl_dumpThread(jthread) function (P5) JDK-8275385: Change nested classes in jdk.jdi to static nested classes (P5) JDK-8274232: Cleanup unnecessary null comparison before instanceof check in jdk.jdi (P5) JDK-8274755: Replace 'while' cycles with iterator with enhanced-for in jdk.jdi core-svc/java.lang.instrument: (P2) JDK-8273188: java/lang/instrument/BootClassPath/BootClassPathTest.sh fails with "FATAL ERROR in native method: processing of -javaagent failed, processJavaStart failed" (P4) JDK-8273575: memory leak in appendBootClassPath(), paths must be deallocated (P4) JDK-8271149: remove unreferenced functions from EncodingSupport_md.c core-svc/java.lang.management: (P3) JDK-8132785: java/lang/management/ThreadMXBean/ThreadLists.java fails intermittently (P4) JDK-8268361: Fix the infinite loop in next_line core-svc/javax.management: (P4) JDK-8274398: Suppress more warnings on non-serializable non-transient instance fields in management libs (P4) JDK-8275244: Suppress warnings on non-serializable array component types in jdk.management (P5) JDK-8274168: Avoid String.compareTo == 0 to check String equality in java.management (P5) JDK-8275322: Change nested classes in java.management to static nested classes (P5) JDK-8274757: Cleanup unnecessary calls to Throwable.initCause() in java.management module (P5) JDK-8274318: Replace 'for' cycles with iterator with enhanced-for in java.management core-svc/tools: (P2) JDK-8273187: jtools tests fail with missing markerName check (P3) JDK-8274196: Crashes in VM_HeapDumper::work after JDK-8252842 (P3) JDK-8279007: jstatd fails to start because SecurityManager is disabled (P4) JDK-8267666: Add option to jcmd GC.heap_dump to use existing file (P4) JDK-8272395: Bad HTML in JVMTI man page (P4) JDK-8252842: Extend JMap to support parallel heap dump (P4) JDK-8272318: Improve performance of HeapDumpAllTest (P4) JDK-8275185: Remove dead code and clean up jvmstat LocalVmManager (P4) JDK-8273929: Remove GzipRandomAccess in heap dump test (P4) JDK-8269616: serviceability/dcmd/framework/VMVersionTest.java fails with Address already in use error (P4) JDK-8274930: sun/tools/jps/TestJps.java can fail with long VM arguments string (P4) JDK-8276139: TestJpsHostName.java not reliable, better to expand HostIdentifierCreate.java test (P5) JDK-8275240: Change nested classes in jdk.attach to static nested classes (P5) JDK-8274395: Use enhanced-for instead of plain 'for' in jdk.internal.jvmstat (P5) JDK-8274261: Use enhanced-for instead of plain 'for' in jdk.jcmd (P5) JDK-8274190: Use String.equals instead of String.compareTo in jdk.internal.jvmstat (P5) JDK-8274163: Use String.equals instead of String.compareTo in jdk.jcmd docs: (P3) JDK-8259963: MaxHeapFreeRatio not respected for SerialGC docs/guides: (P3) JDK-8280748: Update "Significant Changes in the JDK" section in JDK 18 Migration Guide with list of JEPs (P3) JDK-8273203: Update docs with new default values for jdk.certpath.disabledAlgorithms and jdk.jar.disabledAlgorithms because SHA-1 signed JARs are disabled (P4) JDK-8277988: Describe this new behavior in Provider Documentation (P4) JDK-8280455: JSSE Guide example has typo, Datagrampacket should be DatagramPacket (P4) JDK-8277117: Support for Windows SSPI isn't properly documented docs/tools: (P4) JDK-8275250: Documentation of the --generate-cds-archive jlink option (P4) JDK-8277847: Support toolGuide tag in class-level documentation hotspot: (P3) JDK-8273539: [PPC64] gtest build error after JDK-8264207 hotspot/compiler: (P1) JDK-8274060: C2: Incorrect computation after JDK-8273454 (P1) JDK-8271589: Fatal error with variable shift count integer rotate operation. (P1) JDK-8277928: Fix compilation on macosx-aarch64 after 8276108 (P1) JDK-8274527: Minimal VM build fails after JDK-8273459 (P1) JDK-8269598: Regressions up to 5% on aarch64 seems due to JDK-8268858 (P2) JDK-8275262: [BACKOUT] AArch64: Implement string_compare intrinsic in SVE (P2) JDK-8271368: [BACKOUT] JDK-8266054 VectorAPI rotate operation optimization (P2) JDK-8278871: [JVMCI] assert((uint)reason < 2* _trap_hist_limit) failed: oob (P2) JDK-8274730: AArch64: AES/GCM acceleration is broken by the fix for JDK-8273297 (P2) JDK-8270533: AArch64: size_fits_all_mem_uses should return false if its output is a CAS (P2) JDK-8267125: AES Galois CounterMode (GCM) interleaved implementation using AVX512 + VAES instructions (P2) JDK-8277621: ARM32: multiple fastdebug failures with "bad AD file" after JDK-8276162 (P2) JDK-8278267: ARM32: several vector test failures for ASHR (P2) JDK-8277324: C2 compilation fails with "bad AD file" on x86-32 after JDK-8276162 due to missing match rule (P2) JDK-8271954: C2: assert(false) failed: Bad graph detected in build_loop_late (P2) JDK-8279837: C2: assert(is_Loop()) failed: invalid node class: Region (P2) JDK-8276157: C2: Compiler stack overflow during escape analysis on Linux x86_32 (P2) JDK-8274145: C2: condition incorrectly made redundant with dominating main loop exit condition (P2) JDK-8272570: C2: crash in PhaseCFG::global_code_motion (P2) JDK-8271459: C2: Missing NegativeArraySizeException when creating StringBuilder with negative capacity (P2) JDK-8271276: C2: Wrong JVM state used for receiver null check (P2) JDK-8276429: CodeHeapState::print_names() fails with "assert(klass->is_loader_alive()) failed: must be alive" (P2) JDK-8277602: Deopt code does not extend the stack enough if the caller is an optimize entry blob (P2) JDK-8278508: Enable X86 maskAll instruction pattern for 32 bit JVM. (P2) JDK-8275638: GraphKit::combine_exception_states fails with "matching stack sizes" assert (P2) JDK-8276112: Inconsistent scalar replacement debug info at safepoints (P2) JDK-8279356: Method linking fails with guarantee(mh->adapter() != NULL) failed: Adapter blob must already exist! (P2) JDK-8271365: misc SIGSEGV failures in java/lang/invoke tests (P2) JDK-8272131: PhaseMacroExpand::generate_slow_arraycopy crash when clone null CallProjections.fallthrough_ioproj (P2) JDK-8273108: RunThese24H crashes with SEGV in markWord::displaced_mark_helper() after JDK-8268276 (P2) JDK-8277529: SIGSEGV in C2 CompilerThread Node::rematerialize() compiling Packet::readUnsignedTrint (P2) JDK-8277239: SIGSEGV in vrshift_reg_maskedNode::emit (P2) JDK-8273585: String.charAt performance degrades due to JDK-8268698 (P2) JDK-8276453: Undefined behavior in C1 LIR_OprDesc causes SEGV in fastdebug build (P2) JDK-8276108: Wrong instruction generation in aarch64 backend (P2) JDK-8271925: ZGC: Arraycopy stub passes invalid oop to load barrier (P2) JDK-8270098: ZGC: ZBarrierSetC2::clone_at_expansion fails with "Guard against surprises" assert (P3) JDK-8279204: [BACKOUT] JDK-8278413: C2 crash when allocating array of size too large (P3) JDK-8272736: [JVMCI] Add API for reading and writing JVMCI thread locals (P3) JDK-8275645: [JVMCI] avoid unaligned volatile reads on AArch64 (P3) JDK-8274120: [JVMCI] CompileBroker should resolve parameter types for JVMCI compiles (P3) JDK-8275874: [JVMCI] only support aligned reads in c2v_readFieldValue (P3) JDK-8277777: [Vector API] assert(r->is_XMMRegister()) failed: must be in x86_32.ad (P3) JDK-8265317: [vector] assert(payload->is_object()) failed: expected 'object' value for scalar-replaced boxed vector but got: NULL (P3) JDK-8280234: AArch64 "core" variant does not build after JDK-8270947 (P3) JDK-8278889: AArch64: [vectorapi] VectorMaskLoadStoreTest.testMaskCast() test fail (P3) JDK-8259948: Aarch64: Add cast nodes for Aarch64 Neon backend (P3) JDK-8270947: AArch64: C1: use zero_words to initialize all objects (P3) JDK-8276151: AArch64: Incorrect result for double to int vector conversion (P3) JDK-8267356: AArch64: Vector API SVE codegen support (P3) JDK-8244675: assert(IncrementalInline || (_late_inlines.length() == 0 && !has_mh_late_inlines())) (P3) JDK-8273635: Attempting to acquire lock StackWatermark_lock/9 out of order with lock tty_lock/3 (P3) JDK-8277417: C1 LIR instruction for load-klass (P3) JDK-8274983: C1 optimizes the invocation of private interface methods (P3) JDK-8271202: C1: assert(false) failed: live_in set of first block must be empty (P3) JDK-8279515: C1: No inlining through invokedynamic and invokestatic call sites when resolved class is not linked (P3) JDK-8278413: C2 crash when allocating array of size too large (P3) JDK-8275643: C2's unaryOp vector intrinsic does not properly handle LongVector.neg (P3) JDK-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 (P3) JDK-8271056: C2: "assert(no_dead_loop) failed: dead loop detected" due to cmoving identity (P3) JDK-8273416: C2: assert(false) failed: bad AD file after JDK-8252372 with UseSSE={0,1} (P3) JDK-8271203: C2: assert(iff->Opcode() == Op_If || iff->Opcode() == Op_CountedLoopEnd || iff->Opcode() == Op_RangeCheck) failed: Check this code when new subtype is added (P3) JDK-8268261: C2: assert(n != __null) failed: Bad immediate dominator info. (P3) JDK-8268882: C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc (P3) JDK-8275326: C2: assert(no_dead_loop) failed: dead loop detected (P3) JDK-8275854: C2: assert(stride_con != 0) failed: missed some peephole opt (P3) JDK-8279076: C2: Bad AD file when matching SqrtF with UseSSE=0 (P3) JDK-8271600: C2: CheckCastPP which should closely follow Allocate is sunk of a loop (P3) JDK-8272873: C2: Inlining should not depend on absolute call site counts (P3) JDK-8223923: C2: Missing interference with mismatched unsafe accesses (P3) JDK-8273277: C2: Move conditional negation into rc_predicate (P3) JDK-8275610: C2: Object field load floats above its null check resulting in a segfault (P3) JDK-8259609: C2: optimize long range checks in long counted loops (P3) JDK-8275830: C2: Receiver downcast is missing when inlining through method handle linkers (P3) JDK-8273359: CI: ciInstanceKlass::get_canonical_holder() doesn't respect instance size (P3) JDK-8277310: ciReplay: @cpi MethodHandle references not resolved (P3) JDK-8277316: ciReplay: dump_replay_data is not thread-safe (P3) JDK-8012267: ciReplay: fails to resolve @SignaturePolymorphic methods in replay data (P3) JDK-8275670: ciReplay: java.lang.NoClassDefFoundError when trying to load java/lang/invoke/LambdaForm$MH (P3) JDK-8012268: ciReplay: process_ciInstanceKlass: JVM_CONSTANT_MethodHandle not supported (P3) JDK-8276095: ciReplay: replay failure due to incomplete ciMethodData information (P3) JDK-8276227: ciReplay: SIGSEGV if classfile for replay compilation is not present after JDK-8275868 (P3) JDK-8276231: ciReplay: SIGSEGV when replay compiling lambdas (P3) JDK-8277964: ClassCastException with no stack trace is thrown with -Xcomp in method handle invocation (P3) JDK-8274323: compiler/codegen/aes/TestAESMain.java failed with "Error: invalid offset: -1434443640" after 8273297 (P3) JDK-8262134: compiler/uncommontrap/TestDeoptOOM.java failed with "guarantee(false) failed: wrong number of expression stack elements during deopt" (P3) JDK-8278948: compiler/vectorapi/reshape/TestVectorCastAVX1.java crashes in assembler (P3) JDK-8277449: compiler/vectorapi/TestLongVectorNeg.java fails with release VMs (P3) JDK-8270886: Crash in PhaseIdealLoop::verify_strip_mined_scheduling (P3) JDK-8271340: Crash PhaseIdealLoop::clone_outer_loop (P3) JDK-8277878: Fix compiler tests after JDK-8275908 (P3) JDK-8273612: Fix for JDK-8272873 causes timeout in running some tests with -Xcomp (P3) JDK-8271140: Fix native frame handling in vframeStream::asJavaVFrame() (P3) JDK-8274329: Fix non-portable HotSpot code in MethodMatcher::parse_method_pattern (P3) JDK-8277447: Hotspot C1 compiler crashes on Kotlin suspend fun with loop (P3) JDK-8276025: Hotspot's libsvml.so may conflict with user dependency (P3) JDK-8277846: Implement fast-path for ASCII-compatible CharsetEncoders on ppc64 (P3) JDK-8274242: Implement fast-path for ASCII-compatible CharsetEncoders on x86 (P3) JDK-8271911: improve support of replay compilations for methods which use JSR292 (P3) JDK-8278796: Incorrect behavior of FloatVector.withLane on x86 (P3) JDK-8272413: Incorrect num of element count calculation for vector cast (P3) JDK-8277906: Incorrect type for IV phi of long counted loops after CCP (P3) JDK-8278790: Inner loop of long loop nest runs for too few iterations (P3) JDK-8279045: Intrinsics missing vzeroupper instruction (P3) JDK-8276846: JDK-8273416 is incomplete for UseSSE=1 (P3) JDK-8279654: jdk/incubator/vector/Vector256ConversionTests.java crashes randomly with SVE (P3) JDK-8277753: Long*VectorTests.java fail with "bad AD file" on x86_32 after JDK-8276162 (P3) JDK-8154011: Make TraceDeoptimization a diagnostic flag (P3) JDK-8277508: need to check has_predicated_vectors before calling scalable_predicate_reg_slots (P3) JDK-8271341: Opcode() != Op_If && Opcode() != Op_RangeCheck) || outcnt() == 2 assert failure with Test7179138_1.java (P3) JDK-8279998: PPC64 debug builds fail with "untested: RangeCheckStub: predicate_failed_trap_id" (P3) JDK-8272573: Redundant unique_concrete_method_4 dependencies (P3) JDK-8273954: Regression 8% on Mac and 6% Windows on MonteCarlo (P3) JDK-8273659: Replay compilation crashes with SIGSEGV since 8271911 (P3) JDK-8274406: RunThese30M.java failed "assert(!LCA_orig->dominates(pred_block) || early->dominates(pred_block)) failed: early is high enough" (P3) JDK-8275031: runtime/ErrorHandling/MachCodeFramesInErrorFile.java fails when hsdis is present (P3) JDK-8274074: SIGFPE with C2 compiled code with -XX:+StressGCM (P3) JDK-8275173: testlibrary_tests/ir_framework/tests/TestCheckedTests.java fails after JDK-8274911 (P3) JDK-8269122: The use of "extern const" for Register definitions generates poor code (P3) JDK-8278966: two microbenchmarks tests fail "assert(!jvms->method()->has_exception_handlers()) failed: no exception handler expected" after JDK-8275638 (P3) JDK-8274855: vectorapi tests failing with assert(!vbox->is_Phi()) failed (P4) JDK-8270083: -Wnonnull errors happen with GCC 11.1.1 (P4) JDK-8270447: [IR Framework] Add missing compilation level restriction when using FlipC1C2 stress option (P4) JDK-8272567: [IR Framework] Make AbstractInfo.getRandom() static (P4) JDK-8271471: [IR Framework] Rare occurrence of "" in PrintIdeal/PrintOptoAssembly can let tests fail (P4) JDK-8268963: [IR Framework] Some default regexes matching on PrintOptoAssembly in IRNode.java do not work on all platforms (P4) JDK-8276546: [IR Framework] Whitelist and ignore CompileThreshold (P4) JDK-8269416: [JVMCI] capture libjvmci crash data to a file (P4) JDK-8276314: [JVMCI] check alignment of call displacement during code installation (P4) JDK-8269592: [JVMCI] Optimize c2v_iterateFrames (P4) JDK-8270453: [JVMCI] remove duplicates in vmStructs_jvmci.cpp (P4) JDK-8275448: [REDO] AArch64: Implement string_compare intrinsic in SVE (P4) JDK-8271366: [REDO] JDK-8266054 VectorAPI rotate operation optimization (P4) JDK-8277843: [Vector API] scalar2vector generates incorrect type info for mask operations if Op_MaskAll is unavailable (P4) JDK-8276985: AArch64: [vectorapi] Backend support of VectorMaskToLongNode (P4) JDK-8272310: AArch64: Add missing changes for shared vector helper methods in m4 files (P4) JDK-8269725: AArch64: Add VectorMask query implementation for NEON (P4) JDK-8271567: AArch64: AES Galois CounterMode (GCM) interleaved implementation using vector instructions (P4) JDK-8269516: AArch64: Assembler cleanups (P4) JDK-8271869: AArch64: build errors with GCC11 in frame::saved_oop_result (P4) JDK-8271956: AArch64: C1 build failed after JDK-8270947 (P4) JDK-8277168: AArch64: Enable arraycopy partial inlining with SVE (P4) JDK-8269559: AArch64: Implement string_compare intrinsic in SVE (P4) JDK-8268363: AArch64: Implement string_indexof_char intrinsic in SVE (P4) JDK-8272968: AArch64: Remove redundant matching rules for commutative ops (P4) JDK-8275317: AArch64: Support some type conversion vectorization in SLP (P4) JDK-8274179: AArch64: Support SVE operations with encodable immediates (P4) JDK-8267625: AARCH64: typo in LIR_Assembler::emit_profile_type (P4) JDK-8270832: Aarch64: Update algorithm annotations for MacroAssembler::fill_words (P4) JDK-8268231: Aarch64: Use Ldp in intrinsics for String.compareTo (P4) JDK-8277358: Accelerate CRC32-C (P4) JDK-8270156: Add "randomness" and "stress" keys to JTreg tests which use StressGCM, StressLCM and/or StressIGVN (P4) JDK-8278016: Add compiler tests to tier{2,3} (P4) JDK-8267657: Add missing PrintC1Statistics before incrementing counters (P4) JDK-8277617: Adjust AVX3Threshold for copy/fill stubs (P4) JDK-8272377: assert preconditions that are ensured when created in add_final_edges (P4) JDK-8272563: assert(is_double_stack() && !is_virtual()) failed: type check (P4) JDK-8268276: Base64 Decoding optimization for x86 using AVX-512 (P4) JDK-8269404: Base64 Encoding optimization enhancements for x86 using AVX-512 (P4) JDK-8267956: C1 code cleanup (P4) JDK-8265518: C1: Intrinsic support for Preconditions.checkIndex (P4) JDK-8272446: C1: Raw version of UnsafeGet generates load barriers (P4) JDK-8269672: C1: Remove unaligned move on all architectures (P4) JDK-8266746: C1: Replace UnsafeGetRaw with UnsafeGet when setting up OSR entry block (P4) JDK-8277411: C2 fast_unlock intrinsic on AArch64 has unnecessary ownership check (P4) JDK-8270366: C2: Add associative rule to add/sub node (P4) JDK-8273712: C2: Add mechanism for rejecting inlining of low frequency call sites and deprecate MinInliningThreshold. (P4) JDK-8269119: C2: Avoid redundant memory barriers in Unsafe.copyMemory0 intrinsic (P4) JDK-8269574: C2: Avoid redundant uncommon traps in GraphKit::builtin_throw() for JVMTI exception events (P4) JDK-8276105: C2: Conv(D|F)2(I|L)Nodes::Ideal should handle rounding correctly (P4) JDK-8278079: C2: expand_dtrace_alloc_probe doesn't take effect in macro.cpp (P4) JDK-8274401: C2: GraphKit::load_array_element bypasses Access API (P4) JDK-8273021: C2: Improve Add and Xor ideal optimizations (P4) JDK-8266550: C2: mirror TypeOopPtr/TypeInstPtr/TypeAryPtr with TypeKlassPtr/TypeInstKlassPtr/TypeAryKlassPtr (P4) JDK-8274130: C2: MulNode::Ideal chained transformations may act on wrong nodes (P4) JDK-8276116: C2: optimize long range checks in int counted loops (P4) JDK-8277850: C2: optimize mask checks in counted loops (P4) JDK-8276571: C2: pass compilation options as structure (P4) JDK-8274328: C2: Redundant CFG edges fixup in block ordering (P4) JDK-8271118: C2: StressGCM should have higher priority than frequency-based policy (P4) JDK-8273454: C2: Transform (-a)*(-b) into a*b (P4) JDK-8274325: C4819 warning at vm_version_x86.cpp on Windows after JDK-8234160 (P4) JDK-8276044: ciReplay: C1 does not dump a replay file when using DumpReplay as compile command option (P4) JDK-8277423: ciReplay: hidden class with comment expected error (P4) JDK-8275868: ciReplay: Inlining fails with "unloaded signature classes" due to wrong protection domains (P4) JDK-8274785: ciReplay: Potential crash due to uninitialized Compile::_ilt variable (P4) JDK-8262912: ciReplay: replay does not simulate unresolved classes (P4) JDK-8275347: ciReplay: staticfield lines not properly terminated (P4) JDK-8254108: ciReplay: Support incremental inlining (P4) JDK-8278037: Clean up PPC32 related code in C1 (P4) JDK-8251513: Code around Parse::do_lookupswitch/do_tableswitch should be cleaned up (P4) JDK-8264207: CodeStrings does not honour fixed address assumption. (P4) JDK-8271461: CompileCommand support for hidden class methods (P4) JDK-8277441: CompileQueue::add fails with assert(_last->next() == __null) failed: not last (P4) JDK-8275086: compiler/c2/irTests/TestPostParseCallDevirtualization.java fails when compiler1 is disabled (P4) JDK-8273895: compiler/ciReplay/TestVMNoCompLevel.java fails due to wrong data size with TieredStopAtLevel=2,3 (P4) JDK-8273806: compiler/cpuflags/TestSSE4Disabled.java should test for CPU feature explicitly (P4) JDK-8279032: compiler/loopopts/TestSkeletonPredicateNegation.java times out with -XX:TieredStopAtLevel < 4 (P4) JDK-8277503: compiler/onSpinWait/TestOnSpinWaitAArch64DefaultFlags.java failed with "OnSpinWaitInst with the expected value 'isb' not found." (P4) JDK-8273629: compiler/uncommontrap/TestDeoptOOM.java fails with release VMs (P4) JDK-8278291: compiler/uncommontrap/TraceDeoptimizationNoRealloc.java fails with release VMs after JDK-8154011 (P4) JDK-8277213: CompileTask_lock is acquired out of order with MethodCompileQueue_lock (P4) JDK-8270459: Conflict inlining decisions by C1/C2 with the same CompileCommand (P4) JDK-8268858: Determine register pressure automatically by the number of available registers for allocation (P4) JDK-8279195: Document the -XX:+NeverActAsServerClassMachine flag (P4) JDK-8274888: Dump "-DReproduce=true" to the test VM command line output (P4) JDK-8272586: emit abstract machine code in hs-err logs (P4) JDK-8273512: Fix the copyright header of x86 macroAssembler files (P4) JDK-8269878: Handle redundant reg-2-reg moves in X86 backend (P4) JDK-8277842: IGV: Add jvms property to know where a node came from (P4) JDK-8265443: IGV: disambiguate groups by emiting additional properties (P4) JDK-8264838: IGV: enhance graph export functionality (P4) JDK-8263385: IGV: Graph is not opened in the window that has focus. (P4) JDK-8263389: IGV: Zooming changes the point that is currently centered (P4) JDK-8186670: Implement _onSpinWait() intrinsic for AArch64 (P4) JDK-8251216: Implement MD5 intrinsics on AArch64 (P4) JDK-8255286: Implement ParametersTypeData::print_data_on fully (P4) JDK-8272315: Improve assert_different_registers (P4) JDK-8277139: Improve code readability in PredecessorValidator (c1_IR.cpp) (P4) JDK-8254106: Improve compilation replay (P4) JDK-8272973: Incorrect compile command used by TestIllegalArrayCopyBeforeInfiniteLoop (P4) JDK-8270147: Increase stride size allowing unrolling more loops (P4) JDK-8271515: Integration of JEP 417: Vector API (Third Incubator) (P4) JDK-8277180: Intrinsify recursive ObjectMonitor locking for C2 x64 and A64 (P4) JDK-8252990: Intrinsify Unsafe.storeStoreFence (P4) JDK-8275104: IR framework does not handle client VM builds correctly (P4) JDK-8273410: IR verification framework fails with "Should find method name in validIrRulesMap" (P4) JDK-8278141: LIR_OpLoadKlass::_info shadows the field of the same name from LIR_Op (P4) JDK-8272698: LoadNode::pin is unused (P4) JDK-8267928: Loop predicate gets inexact loop limit before PhaseIdealLoop::rc_predicate (P4) JDK-8277382: make c1 BlockMerger use IR::verify only when necessary (P4) JDK-8271883: Math CopySign optimization for x86 (P4) JDK-8274986: max code printed in hs-err logs should be configurable (P4) JDK-8270519: Move several vector helper methods to shared header file (P4) JDK-8277882: New subnode ideal optimization: converting "c0 - (x + c1)" into "(c0 - c1) - x" (P4) JDK-8276162: Optimise unsigned comparison pattern (P4) JDK-8275047: Optimize existing fill stubs for AVX-512 target (P4) JDK-8277426: Optimize mask reduction operations on x86 (P4) JDK-8277860: PPC: Remove duplicate info != NULL check (P4) JDK-8275729: Qualified method names in CodeHeap Analytics (P4) JDK-8273409: Receiver type narrowed by CCP does not always trigger post-parse call devirtualization (P4) JDK-8275908: Record null_check traps for calls and array_check traps in the interpreter (P4) JDK-8270848: Redundant unsafe opmask register allocation in some instruction patterns. (P4) JDK-8267930: Refine code for loading hsdis library (P4) JDK-8275975: Remove dead code in ciInstanceKlass (P4) JDK-8277496: Remove duplication in c1 Block successor lists (P4) JDK-8273934: Remove unused perfcounters (P4) JDK-8276976: Rename LIR_OprDesc to LIR_Opr (P4) JDK-8270925: replay dump using CICrashAt does not include inlining data (P4) JDK-8276066: Reset LoopPercentProfileLimit for x86 due to suboptimal performance (P4) JDK-8275847: Scheduling fails with "too many D-U pinch points" on small method (P4) JDK-8277137: Set OnSpinWaitInst/OnSpinWaitInstCount defaults to "isb"/1 for Arm Neoverse N1 (P4) JDK-8267982: Set the node after peephole optimization to be removed (P4) JDK-8273965: some testlibrary_tests/ir_framework tests fail when c1 disabled (P4) JDK-8272703: StressSeed should be set via FLAG_SET_ERGO (P4) JDK-8277793: Support vector F2I and D2L cast operations for X86 (P4) JDK-8273825: TestIRMatching.java fails after JDK-8266550 (P4) JDK-8274911: testlibrary_tests/ir_framework/tests/TestIRMatching.java fails with "java.lang.RuntimeException: Should have thrown exception" (P4) JDK-8272050: typo in MachSpillCopyNode::implementation after JDK-8131362 (P4) JDK-8270901: Typo PHASE_CPP in CompilerPhaseType (P4) JDK-8273459: Update code segment alignment to 64 bytes (P4) JDK-8266054: VectorAPI rotate operation optimization (P4) JDK-8275167: x86 intrinsic for unsignedMultiplyHigh (P4) JDK-8273807: Zero: Drop incorrect test block from compiler/startup/NumCompilerThreadsCheck.java (P5) JDK-8275909: [JVMCI] c2v_readFieldValue use long instead of jlong for the offset parameter (P5) JDK-8277042: add test for 8276036 to compiler/codecache (P5) JDK-8272330: C2: Cleanup profile counter scaling (P5) JDK-8264517: C2: make MachCallNode::return_value_is_used() only available for x86 (P5) JDK-8273317: crash in cmovP_cmpP_zero_zeroNode::bottom_type() (P5) JDK-8277102: Dubious PrintCompilation output (P5) JDK-8272720: Fix the implementation of loop unrolling heuristic with LoopPercentProfileLimit (P5) JDK-8274048: IGV: Replace usages of Collections.sort with List.sort call (P5) JDK-8272558: IR Test Framework README misses some flags (P5) JDK-8273020: LibraryCallKit::sharpen_unsafe_type does not handle narrow oop array (P5) JDK-8262341: Refine identical code in AddI/LNode. (P5) JDK-8277562: Remove dead method c1 If::swap_sux (P5) JDK-8277172: Remove stray comment mentioning instr_size_for_decode_klass_not_null on x64 (P5) JDK-8268727: Remove unused slowpath locking method in OptoRuntime (P5) JDK-8276036: The value of full_count in the message of insufficient codecache is wrong hotspot/gc: (P1) JDK-8271163: G1 uses wrong degree of MT processing since JDK-8270169 (P1) JDK-8275607: G1: G1CardSetAllocator::drop_all needs to call G1SegmentedArray::drop_all (P1) JDK-8273940: vmTestbase/vm/mlvm/meth/stress/gc/callSequencesDuringGC/Test.java crashes in full gc during VM exit (P2) JDK-8274340: [BACKOUT] JDK-8271880: Tighten condition for excluding regions from collecting cards with cross-references (P2) JDK-8275277: assert(dest_attr.is_in_cset() == (obj->forwardee() == obj)) failed: Only evac-failed objects must be in the collection set here but is not (P2) JDK-8269120: Build failure with GCC 6.3.0 after JDK-8017163 (P2) JDK-8274501: c2i entry barriers read int as long on AArch64 (P2) JDK-8270991: G1 Full GC always performs heap verification after JDK-8269295 (P2) JDK-8274259: G1: assert(check_alignment(result)) failed: address not aligned: 0x00000008baadbabe after JDK-8270009 (P2) JDK-8017163: G1: Refactor remembered sets (P2) JDK-8277212: GC accidentally cleans valid megamorphic vtable inline caches (P2) JDK-8276540: Howl Full CardSet container iteration marks too many cards (P2) JDK-8272170: Missing memory barrier when checking active state for regions (P2) JDK-8274632: Possible pointer overflow in PretouchTask chunk claiming (P2) JDK-8275426: PretouchTask num_chunks calculation can overflow (P2) JDK-8272985: Reference discovery is confused about atomicity and degree of parallelism (P2) JDK-8269897: Shenandoah: Resolve UNKNOWN access strength, where possible (P2) JDK-8274925: Shenandoah: shenandoah/TestAllocHumongousFragment.java test failed on lock rank check (P2) JDK-8278627: Shenandoah: TestHeapDump test failed (P2) JDK-8278752: String Deduplication use more Native Memory than allowed by k8s (P2) JDK-8277434: tests fail with "assert(is_forwarded()) failed: only decode when actually forwarded" (P2) JDK-8277854: The upper bound of GCCardSizeInBytes should be limited to 512 for 32-bit platforms (P2) JDK-8273383: vmTestbase/vm/gc/containers/Combination05/TestDescription.java crashes verifying length of DCQS (P2) JDK-8277631: ZGC: CriticalMetaspaceAllocation asserts (P2) JDK-8272417: ZGC: fastdebug build crashes when printing ClassLoaderData (P2) JDK-8268779: ZGC: runtime/InternalApi/ThreadCpuTimesDeadlock.java#id1 failed with "OutOfMemoryError: Java heap space" (P2) JDK-8271121: ZGC: stack overflow (segv) when -Xlog:gc+start=debug (P2) JDK-8275329: ZGC: vmTestbase/gc/gctests/SoftReference/soft004/soft004.java fails with assert(_phases->length() <= 1000) failed: Too many recored phases? (P3) JDK-8274007: [REDO] VM Exit does not abort concurrent mark (P3) JDK-8271862: C2 intrinsic for Reference.refersTo() is often not used (P3) JDK-8272651: G1 heap region info print order changed by JDK-8269914 (P3) JDK-8048504: G1: Investigate replacing the coarse and fine grained data structures in the remembered sets (P3) JDK-8276696: ParallelObjectIterator freed at the wrong time in VM_HeapDumper (P3) JDK-8276107: Preventive collections trigger before maxing out heap (P3) JDK-8276205: Shenandoah: CodeCache_lock should always be held for initializing code cache iteration (P3) JDK-8276201: Shenandoah: Race results degenerated GC to enter wrong entry point (P3) JDK-8273559: Shenandoah: Shenandoah should support multi-threaded heap dump (P3) JDK-8276229: Stop allowing implicit updates in G1BlockOffsetTable (P3) JDK-8277981: String Deduplication table is never cleaned up due to bad dead_factor_for_cleanup (P3) JDK-8278389: SuspendibleThreadSet::_suspend_all should be volatile/atomic (P3) JDK-8278824: Uneven work distribution when scanning heap roots in G1 (P3) JDK-8273605: VM Exit does not abort concurrent mark (P3) JDK-8259643: ZGC can return metaspace OOM prematurely (P4) JDK-8051680: (ref) unnecessary process_soft_ref_reconsider (P4) JDK-8274053: [BACKOUT] JDK-8270842: G1: Only young regions need to redirty outside references in remset. (P4) JDK-8276927: [ppc64] Port shenandoahgc to linux on ppc64le (P4) JDK-8274851: [ppc64] Port zgc to linux on ppc64le (P4) JDK-8274770: [PPC64] resolve_jobject needs a generic implementation to support load barriers (P4) JDK-8274516: [REDO] JDK-8271880: Tighten condition for excluding regions from collecting cards with cross-references (P4) JDK-8275049: [ZGC] missing null check in ZNMethod::log_register (P4) JDK-8277119: Add asserts in GenericTaskQueueSet methods (P4) JDK-8274054: Add custom enqueue calls during reference processing (P4) JDK-8277372: Add getters for BOT and card table members (P4) JDK-8270018: Add scoped object for g1 young gc JFR notification (P4) JDK-8270014: Add scoped objects for g1 young gc verification and young gc internal timing (P4) JDK-8267185: Add string deduplication support to ParallelGC (P4) JDK-8272609: Add string deduplication support to SerialGC (P4) JDK-8267186: Add string deduplication support to ZGC (P4) JDK-8268458: Add verification type for evacuation failures (P4) JDK-8273381: Assert in PtrQueueBufferAllocatorTest.stress_free_list_allocator_vm (P4) JDK-8268952: Automatically update heap sizes in G1MonitoringScope (P4) JDK-8274550: c2i entry barriers read int as long on PPC (P4) JDK-8277556: Call ReferenceProcessorPhaseTimes::set_processing_is_mt once (P4) JDK-8270912: Clean up G1CollectedHeap::process_discovered_references() (P4) JDK-8274069: Clean up g1ParScanThreadState a bit (P4) JDK-8271939: Clean up primitive raw accessors in oopDesc (P4) JDK-8275035: Clean up worker thread infrastructure (P4) JDK-8271946: Cleanup leftovers in Space and subclasses (P4) JDK-8266519: Cleanup resolve() leftovers from BarrierSet et al (P4) JDK-8274910: Compile in G1 evacuation failure injection code based on define (P4) JDK-8277814: ConcurrentRefineThread should report rate when deactivating (P4) JDK-8272773: Configurable card table card size (P4) JDK-8272905: Consolidate discovered lists processing (P4) JDK-8272165: Consolidate mark_must_be_preserved() variants (P4) JDK-8270041: Consolidate oopDesc::cas_forward_to() and oopDesc::forward_to_atomic() (P4) JDK-8271951: Consolidate preserved marks overflow stack in SerialGC (P4) JDK-8276098: Do precise BOT updates in G1 evacuation phase (P4) JDK-8272723: Don't use Access API to access primitive fields (P4) JDK-8278289: Drop G1BlockOffsetTablePart::_object_can_span (P4) JDK-8159979: During initial mark, preparing all regions for marking may take a significant amount of time (P4) JDK-8221360: Eliminate Shared_DirtyCardQ_lock (P4) JDK-8272093: Extract evacuation failure injection from G1CollectedHeap (P4) JDK-8253343: Extract G1 Young GC algorithm related code from G1CollectedHeap (P4) JDK-8270009: Factor out and shuffle methods in G1CollectedHeap::do_collection_pause_at_safepoint_helper (P4) JDK-8269914: Factor out heap printing for G1 young and full gc (P4) JDK-8271215: Fix data races in G1PeriodicGCTask (P4) JDK-8273439: Fix G1CollectedHeap includes and forward declarations (P4) JDK-8271953: fix mis-merge in JDK-8271878 (P4) JDK-8271217: Fix race between G1PeriodicGCTask checks and GC request (P4) JDK-8270100: Fix some inaccurate GC logging (P4) JDK-8242847: G1 should not clear mark bitmaps with no marks (P4) JDK-8272725: G1: add documentation on needs_remset_update_t vs bool (P4) JDK-8272439: G1: add documentation to G1CardSetInlinePtr (P4) JDK-8278049: G1: add precondition to set_remainder_to_point_to_start (P4) JDK-8277736: G1: Allow forced evacuation failure of first N regions in collection set (P4) JDK-8276932: G1: Annotate methods with override explicitly in g1CollectedHeap.hpp (P4) JDK-8277865: G1: Change integer division to floating point division (P4) JDK-8277985: G1: Compare max_parallel_refinement_threads to UINT_MAX (P4) JDK-8277439: G1: Correct include guard name in G1EvacFailureObjectsSet.hpp (P4) JDK-8273626: G1: Factor out concurrent segmented array from G1CardSetAllocator (P4) JDK-8275783: G1: fix incorrect region type documentation in HeapRegionType (P4) JDK-8270169: G1: Incorrect reference discovery MT degree in concurrent marking (P4) JDK-8265057: G1: Investigate removal of maintenance of two BOT thresholds (P4) JDK-8276835: G1: Make G1EvacFailureObjectsSet::record inline (P4) JDK-8276833: G1: Make G1EvacFailureRegions::par_iterate const (P4) JDK-6949259: G1: Merge sparse and fine remembered set hash tables (P4) JDK-8277428: G1: Move and inline G1STWIsAliveClosure::do_object_b (P4) JDK-8271579: G1: Move copy before CAS in do_copy_to_survivor_space (P4) JDK-8277542: G1: Move G1CardSetFreePool and related classes to separate files (P4) JDK-8276842: G1: Only calculate size in bytes from words when needed (P4) JDK-8270842: G1: Only young regions need to redirty outside references in remset. (P4) JDK-8254739: G1: Optimize evacuation failure for regions with few failed objects (P4) JDK-8254167: G1: Record regions where evacuation failed to provide targeted iteration (P4) JDK-8275381: G1: refactor 2 constructors of G1CardSetConfiguration (P4) JDK-8278139: G1: Refactor G1BlockOffsetTablePart::block_at_or_preceding (P4) JDK-8272231: G1: Refactor G1CardSet::get_card_set to return G1CardSetHashTableValue* (P4) JDK-8276047: G1: refactor G1CardSetArrayLocker (P4) JDK-8270540: G1: Refactor range checking in G1BlockOffsetTablePart::block_start* to asserts (P4) JDK-8273476: G1: refine G1CollectedHeap::par_iterate_regions_array_part_from (P4) JDK-8276721: G1: Refine G1EvacFailureObjectsSet::iterate (P4) JDK-8274988: G1: refine G1SegmentedArrayAllocOptions and G1CardSetAllocOptions (P4) JDK-8276301: G1: Refine implementation of G1CardSetFreePool::memory_sizes() (P4) JDK-8278276: G1: Refine naming of G1GCParPhaseTimesTracker::_must_record (P4) JDK-8270187: G1: Remove ConcGCThreads constraint (P4) JDK-8272461: G1: remove empty declaration of cleanup_after_scan_heap_roots (P4) JDK-8277904: G1: Remove G1CardSetArray::max_entries (P4) JDK-8277221: G1: Remove methods without implementations in G1CollectedHeap (P4) JDK-8275886: G1: remove obsolete comment in HeapRegion::setup_heap_region_size (P4) JDK-8276921: G1: Remove redundant failed evacuation regions calculation in RemoveSelfForwardPtrHRClosure (P4) JDK-8272579: G1: remove unnecesary null check for G1ParScanThreadStateSet::_states slots (P4) JDK-8275416: G1: remove unnecessary make_referent_alive in precleaning phase (P4) JDK-8269803: G1: remove unnecessary NoRefDiscovery (P4) JDK-8277045: G1: Remove unnecessary set_concurrency call in G1ConcurrentMark::weak_refs_work (P4) JDK-8276121: G1: Remove unused and uninitialized _g1h in g1SATBMarkQueueSet.hpp (P4) JDK-8276298: G1: Remove unused G1SegmentedArrayBufferList::add (P4) JDK-8275714: G1: remove unused variable in G1Policy::transfer_survivors_to_cset (P4) JDK-8276670: G1: Rename G1CardSetFreePool and related classes (P4) JDK-8273218: G1: Rename g1EvacuationInfo to g1EvacInfo (P4) JDK-8275511: G1: Rename needs_remset_update to remset_is_tracked in G1HeapRegionAttr (P4) JDK-8272216: G1: replace G1ParScanThreadState::_dest with a constant (P4) JDK-8272070: G1: Simplify age calculation after JDK-8271579 (P4) JDK-8278277: G1: Simplify implementation of G1GCPhaseTimes::record_or_add_time_secs (P4) JDK-8270454: G1: Simplify region index comparison (P4) JDK-8276299: G1: Unify the wording buffer/node/element in G1SegmentedArrayXxx, G1CardSetXxx and related classes (P4) JDK-8272235: G1: update outdated code root fixup (P4) JDK-8274466: G1: use field directly rather than method in G1CollectorState::in_mixed_phase (P4) JDK-8272576: G1: Use more accurate integer type for collection set length (P4) JDK-8271884: G1CH::_expand_heap_after_alloc_failure is no longer needed (P4) JDK-8270869: G1ServiceThread may not terminate (P4) JDK-8277916: Gather non-strong reference count logic in a single place (P4) JDK-8277866: gc/epsilon/TestMemoryMXBeans.java failed with wrong initial heap size (P4) JDK-8276801: gc/stress/CriticalNativeStress.java fails intermittently with Shenandoah (P4) JDK-8267188: gc/stringdedup/TestStringDeduplicationInterned.java fails with Shenandoah (P4) JDK-8268647: Generation::expand_and_allocate has unused "parallel" argument (P4) JDK-8273062: Generation::refs_discovery_is_xxx functions are unused (P4) JDK-8273221: Guard GCIdMark against nested calls (P4) JDK-8277336: Improve CollectedHeap::safepoint_workers comments (P4) JDK-8274191: Improve g1 evacuation failure injector performance (P4) JDK-8267833: Improve G1CardSetInlinePtr::add() (P4) JDK-8275055: Improve HeapRegionRemSet::split_card() (P4) JDK-8268290: Improve LockFreeQueue<> utility (P4) JDK-8276093: Improve naming in closures to iterate over card sets (P4) JDK-8269222: Incorrect number of workers reported for reference processing (P4) JDK-8272520: Inline GenericTaskQueue::initialize() to the constructor (P4) JDK-8264908: Investigate adding BOT range check in G1BlockOffsetTablePart::block_at_or_preceding (P4) JDK-8272161: Make evacuation failure data structures local to collection (P4) JDK-4718400: Many quantities are held as signed that should be unsigned (P4) JDK-8271060: Merge G1CollectedHeap::determine_start_concurrent_mark_gc and G1Policy::decide_on_conc_mark_initiation (P4) JDK-8269417: Minor clarification on NonblockingQueue utility (P4) JDK-8151594: Move concurrent refinement thread activation logging out of GC pause (P4) JDK-8273492: Move evacuation failure handling into G1YoungCollector (P4) JDK-8273590: Move helper classes in G1 post evacuation sub tasks to cpp files (P4) JDK-8269908: Move MemoryService::track_memory_usage call into G1MonitoringScope (P4) JDK-8236176: Parallel GC SplitInfo comment should be updated for shadow regions (P4) JDK-8277931: Parallel: Remove unused PSVirtualSpace::expand_into (P4) JDK-8277899: Parallel: Simplify PSVirtualSpace::initialize logic (P4) JDK-8272975: ParallelGC: add documentation to heap memory layout (P4) JDK-8276129: PretouchTask should page-align the chunk size (P4) JDK-8275333: Print count in "Too many recored phases?" assert (P4) JDK-8269022: Put evacuation failure string directly into gc=info log message (P4) JDK-8277450: Record number of references into collection set during gc (P4) JDK-8273597: Rectify Thread::is_ConcurrentGC_thread() (P4) JDK-8275527: Refactor forward pointer access (P4) JDK-8237567: Refactor G1-specific code in shared VM_CollectForMetadataAllocation (P4) JDK-8275717: Reimplement STATIC_ASSERT to use static_assert (P4) JDK-8273482: Remove "foreground work" concept from WorkGang (P4) JDK-8273599: Remove cross_threshold method usage around GC (P4) JDK-8273386: Remove duplicated code in G1DCQS::abandon_completed_buffers (P4) JDK-8269433: Remove effectively unused ReferenceProcessor::_enqueuing_is_done (P4) JDK-8277824: Remove empty RefProcSubPhasesWorkerTimeTracker destructor (P4) JDK-8276100: Remove G1SegmentedArray constructor name parameter (P4) JDK-8264419: Remove has_max_index argument from G1BlockOffsetTablePart::block_at_or_preceding (P4) JDK-8269821: Remove is-queue-active check in inner loop of write_ref_array_pre_work (P4) JDK-8276850: Remove outdated comment in HeapRegionManager::par_iterate (P4) JDK-8277215: Remove redundancy in ReferenceProcessor constructor args (P4) JDK-8273372: Remove scavenge trace message in psPromotionManager (P4) JDK-8274430: Remove some debug error printing code added in JDK-8017163 (P4) JDK-8269134: Remove sparsePRT.inline.hpp after JDK-8017163 (P4) JDK-8273545: Remove Thread::is_GC_task_thread() (P4) JDK-8277371: Remove unnecessary DefNewGeneration::ref_processor_init() (P4) JDK-8274927: Remove unnecessary G1ArchiveAllocator code (P4) JDK-8270082: Remove unnecessary gc_timer null check in ReferenceProcessorPhaseTimes (P4) JDK-8271896: Remove unnecessary top address checks in BOT (P4) JDK-8275298: Remove unnecessary weak_oops_do call in adjust weak roots phase (P4) JDK-8277896: Remove unused BOTConstants member methods (P4) JDK-8272196: Remove unused class ParStrongRootsScope (P4) JDK-8270475: Remove unused G1STWDrainQueueClosure (P4) JDK-8270455: Remove unused JFR tracer related code in G1CollectedHeap (P4) JDK-8272521: Remove unused PSPromotionManager::_claimed_stack_breadth (P4) JDK-8277534: Remove unused ReferenceProcessor::has_discovered_references (P4) JDK-8268964: Remove unused ReferenceProcessorAtomicMutator (P4) JDK-8277825: Remove unused ReferenceProcessorPhaseTimes::_sub_phases_total_time_ms (P4) JDK-8273144: Remove unused top level "Sample Collection Set Candidates" logging (P4) JDK-8277560: Remove WorkerDataArray::_is_serial (P4) JDK-8271043: Rename G1CollectedHeap::g1mm() (P4) JDK-8274068: Rename G1ScanInYoungSetter to G1SkipCardEnqueueSetter (P4) JDK-8273185: Rename the term "atomic" in ReferenceProcessor (P4) JDK-8273550: Replace os::cgc_thread/pgc_thread with os::gc_thread (P4) JDK-8270282: Semantically rename reference processing subphases (P4) JDK-8273033: SerialGC: remove obsolete comments (P4) JDK-8268699: Shenandoah: Add test for JDK-8268127 (P4) JDK-8270110: Shenandoah: Add test for JDK-8269661 (P4) JDK-8272327: Shenandoah: Avoid enqueuing duplicate string candidates (P4) JDK-8270171: Shenandoah: Cleanup TestStringDedup and TestStringDedupStress tests (P4) JDK-8275051: Shenandoah: Correct ordering of requested gc cause and gc request flag (P4) JDK-8277654: Shenandoah: Don't produce new memory state in C2 LRB runtime call (P4) JDK-8273614: Shenandoah: intermittent timeout with ConcurrentGCBreakpoint tests (P4) JDK-8269924: Shenandoah: Introduce weak/strong marking asserts (P4) JDK-8261495: Shenandoah: reconsider update references memory ordering (P4) JDK-8275226: Shenandoah: Relax memory constraint for worker claiming tasks/ranges (P4) JDK-8273378: Shenandoah: Remove the remaining uses of os::is_MP (P4) JDK-8274546: Shenandoah: Remove unused ShenandoahUpdateRootsTask copy (P4) JDK-8271417: SIGBUS (0x7) at when out of large pages on a NUMA node (P4) JDK-8271930: Simplify end_card calculation in G1BlockOffsetTablePart::verify (P4) JDK-8270870: Simplify G1ServiceThread (P4) JDK-8133873: Simplify {Register,Unregister}NMethodOopClosure (P4) JDK-8274286: Skip null for make_referent_alive in referenceProcessor (P4) JDK-8267894: Skip work for empty regions in G1 Full GC (P4) JDK-8269596: Snapshot soft ref policy before marking/copying (P4) JDK-8279333: Some JFR tests do not accept 'GCLocker Initiated GC' as a valid GC cause (P4) JDK-8271721: Split gc/g1/TestMixedGCLiveThreshold into separate tests (P4) JDK-8271834: TestStringDeduplicationAgeThreshold intermittent failures on Shenandoah (P4) JDK-8269077: TestSystemGC uses "require vm.gc.G1" for large pages subtest (P4) JDK-8271880: Tighten condition for excluding regions from collecting cards with cross-references (P4) JDK-8271878: UnProblemList jdk/jfr/event/gc/detailed/TestEvacuationFailedEvent.java in JDK18 (P4) JDK-8273147: Update and restructure TestGCLogMessages log message list (P4) JDK-8268556: Use bitmap for storing regions that failed evacuation (P4) JDK-8276548: Use range based visitor for Howl-Full cards (P4) JDK-8269295: Verification time before/after young collection only covers parts of the verification (P4) JDK-8269294: Verify_before/after_young_collection should execute all verification (P4) JDK-8275056: Virtualize G1CardSet containers over heap region (P4) JDK-8273730: WorkGangBarrierSync constructor unused (P4) JDK-8277397: ZGC: Add JFR event for temporary latency measurements (P4) JDK-8272138: ZGC: Adopt relaxed ordering for self-healing (P4) JDK-8270347: ZGC: Adopt release-acquire ordering for forwarding table access (P4) JDK-8276055: ZGC: Defragment address space (P4) JDK-8273872: ZGC: Explicitly use 2M large pages (P4) JDK-8277399: ZGC: Move worker thread logging out of gc+phase=debug (P4) JDK-8269110: ZGC: Remove dead code in zBarrier (P4) JDK-8276067: ZGC: Remove unused function alloc_high_address_at_most() (P4) JDK-8274738: ZGC: Use relaxed atomic load when reading bits in the live map (P5) JDK-8272983: G1 Add marking details to eager reclaim logging (P5) JDK-8277789: G1: G1CardSetConfiguration prefixes num_ and max_ used interchangeably (P5) JDK-8272228: G1: G1CardSetInlinePtr Fix tautological assertion (P5) JDK-8277786: G1: Rename log2_card_region_per_heap_region used in G1CardSet (P5) JDK-8275080: G1CollectedHeap::expand() returns the wrong value (P5) JDK-8266368: Inaccurate after_unwind hook in C2 exception handler (P5) JDK-8273186: Remove leftover comment about sparse remembered set in G1 HeapRegionRemSet hotspot/jfr: (P2) JDK-8275436: [BACKOUT] JDK-8271949 dumppath in -XX:FlightRecorderOptions does not affect (P2) JDK-8275375: [REDO] JDK-8271949 dumppath in -XX:FlightRecorderOptions does not affect (P2) JDK-8278419: JFR jcmd option contract "This value cannot be changed once JFR has been initialized" is not enforced (P2) JDK-8274298: JFR Thread Sampler thread must not acquire malloc lock after suspending a thread because of possible deadlock (P2) JDK-8275517: Off-by-one error in allocation (P2) JDK-8277919: OldObjectSample event causing bloat in the class constant pool in JFR recording (P2) JDK-8278987: RunThese24H.java failed with EXCEPTION_ACCESS_VIOLATION in __write_sample_info__ (P3) JDK-8275091: /src/jdk.management.jfr/share/classes/module-info.java has non-canonical order (P3) JDK-8266936: Add a finalization JFR event (P3) JDK-8277194: applications/runthese/RunThese30M.java crashes with jfrSymbolTable.cpp:305 assert(_instance != null) (P3) JDK-8274435: EXCEPTION_ACCESS_VIOLATION in BFSClosure::closure_impl (P3) JDK-8271447: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters (P3) JDK-8268298: jdk/jfr/api/consumer/log/TestVerbosity.java fails: unexpected log message (P3) JDK-8268297: jdk/jfr/api/consumer/streaming/TestLatestEvent.java times out (P3) JDK-8279398: jdk/jfr/api/recording/time/TestTimeMultiple.java failed with "RuntimeException: getStopTime() > afterStop" (P3) JDK-8270873: JFR: Catch DirectoryIteratorException when scanning for .jfr files (P3) JDK-8261441: JFR: Filename expansion (P3) JDK-8211230: JFR: internal events (P3) JDK-8279011: JFR: JfrChunkWriter incorrectly handles int64_t chunk size as size_t (P3) JDK-8272515: JFR: Names should only be valid Java identifiers (P3) JDK-8274315: JFR: One closed state per file or stream (P3) JDK-8273651: JFR: onMetadata(), setStartTime(), setEndTime() lacks test coverage (P3) JDK-8273613: JFR: RemoteRecordingStream::start() blocks close() (P3) JDK-8273654: JFR: Remove unused SecuritySupport.setAccessible(Field) (P3) JDK-8274559: JFR: Typo in 'jfr help configure' text (P3) JDK-8278031: MultiThreadedRefCounter should not use relaxed atomic decrement (P3) JDK-8275415: Prepare Leak Profiler for Lilliput (P3) JDK-8276125: RunThese24H.java SIGSEGV in JfrThreadGroup::thread_group_id (P3) JDK-8265919: RunThese30M fails "assert((!(((((JfrTraceIdBits::load(value)) & ((1 << 4) << 8)) != 0))))) failed: invariant" (P3) JDK-8256291: RunThese30M fails "assert(_class_unload ? true : ((((JfrTraceIdBits::load(class_loader_klass)) & ((1 << 4) << 8)) != 0))) failed: invariant" (P3) JDK-8272064: test/jdk/jdk/jfr/api/consumer/TestHiddenMethod.java needs update for JEP 416 (P3) JDK-8267579: Thread::cooked_allocated_bytes() hits assert(left >= right) failed: avoid underflow (P3) JDK-8278336: Use int64_t to represent byte quantities consistently in JfrObjectAllocationSample (P4) JDK-8271490: [ppc] [s390]: Crash in JavaThread::pd_get_top_frame_for_profiling (P4) JDK-8269092: Add OldObjectSampleEvent.allocationSize field (P4) JDK-8275074: Cleanup unused code in JFR LeakProfiler (P4) JDK-8271949: dumppath in -XX:FlightRecorderOptions does not affect (P4) JDK-8273714: jdk/jfr/api/consumer/TestRecordedFrame.java still times out after JDK-8273047 (P4) JDK-8274952: jdk/jfr/api/consumer/TestRecordedFrameType.java failed when c1 disabled (P4) JDK-8274289: jdk/jfr/api/consumer/TestRecordedFrameType.java failed with "RuntimeException: assertNotEquals: expected Interpreted to not equal Interpreted" (P4) JDK-8273206: jdk/jfr/event/gc/collection/TestG1ParallelPhases.java fails after JDK-8159979 (P4) JDK-8258734: jdk/jfr/event/oldobject/TestClassLoaderLeak.java failed with "RuntimeException: Could not find class leak" (P4) JDK-8269418: jdk/jfr/event/oldobject/TestObjectSize.java failed with "RuntimeException: No events: expected false, was true" (P4) JDK-8278628: jdk/jfr/jmx/streaming/TestMaxSize.java Expected only one or two chunks (P4) JDK-8272809: JFR thread sampler SI_KERNEL SEGV in metaspace::VirtualSpaceList::contains (P4) JDK-8269225: JFR.stop misses the written info when the filename is only specified by JFR.start (P4) JDK-8256735: JFR: 'jfr' tool displays incorrect timestamps (P4) JDK-8274560: JFR: Add test for OldObjectSample event when using Shenandoah (P4) JDK-8276218: JFR: Clean up jdk.jfr.dcmd (P4) JDK-8272867: JFR: ManagementSupport.removeBefore() lost coverage (P4) JDK-8278137: JFR: PrettyWriter uses incorrect year specifier (P4) JDK-8271726: JFR: should use equal() to check event fields in tests (P4) JDK-8276685: Malformed Javadoc inline tags in JDK source in /jdk/management/jfr/RecordingInfo.java (P4) JDK-8272739: Misformatted error message in EventHandlerCreator (P4) JDK-8275730: Relax memory constraint on MultiThreadedRefCounter (P4) JDK-8275445: RunThese30M.java failed "assert(ZAddress::is_marked(addr)) failed: Should be marked" (P4) JDK-8273047: test jfr/api/consumer/TestRecordedFrame.java timing out (P4) JDK-8276640: Use blessed modifier order in jfr code (P5) JDK-8273960: Redundant condition in Metadata.TypeComparator.compare (P5) JDK-8274319: Replace usages of Collections.sort with List.sort call in jdk.jfr (P5) JDK-8275241: Unused ArrayList is created in RequestEngine.addHooks hotspot/jvmti: (P2) JDK-8278239: vmTestbase/nsk/jvmti/RedefineClasses/StressRedefine failed with EXCEPTION_ACCESS_VIOLATION at 0x000000000000000d (P3) JDK-8245877: assert(_value != __null) failed: resolving NULL _value in JvmtiExport::post_compiled_method_load (P3) JDK-8275800: Redefinition leaks MethodData::_extra_data_lock (P3) JDK-8265795: vmTestbase/nsk/jvmti/AttachOnDemand/attach022/TestDescription.java fails when running with JEP 416 (P4) JDK-8269188: [BACKOUT] Remove CodeCache::mark_for_evol_deoptimization() method (P4) JDK-8269186: [REDO] Remove CodeCache::mark_for_evol_deoptimization() method (P4) JDK-8236212: CompiledMethodLoad and CompiledMethodUnload events can be posted in START phase (P4) JDK-8278330: dump stack trace if the jvmti test nsk/jvmti/GetThreadState/thrstat002 is failed with wrong thread state (P4) JDK-8276177: nsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with "assert(def_ik->is_being_redefined()) failed: should be being redefined to get here" (P4) JDK-8264941: Remove CodeCache::mark_for_evol_deoptimization() method (P4) JDK-8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless (P4) JDK-8225313: serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatObjectCorrectnessTest.java failed with Unexpected high difference percentage (P4) JDK-8266593: vmTestbase/nsk/jvmti/PopFrame/popframe011 fails with "assert(java_thread == _state->get_thread()) failed: Must be" hotspot/other: (P3) JDK-8272373: Example JBS issue (P4) JDK-8273927: Enable hsdis for riscv64 (P4) JDK-8274169: HotSpot Style Guide has stale link to chromium style guide (P4) JDK-8264707: HotSpot Style Guide should permit use of lambda (P4) JDK-8271396: Spelling errors (P4) JDK-8277012: Use blessed modifier order in src/utils hotspot/runtime: (P1) JDK-8271221: [BACKOUT] JDK-8271063 Print injected fields for InstanceKlass (P2) JDK-8272058: 25 Null pointer dereference defect groups in 4 files (P2) JDK-8275052: AArch64: Severe AES/GCM slowdown on MacOS for short blocks (P2) JDK-8275761: Backout: JDK-8274794 Print all owned locks in hs_err file (P2) JDK-8277343: dynamicArchive/SharedArchiveFileOption.java failed: '-XX:+RecordDynamicDumpInfo is unsupported when a dynamic CDS archive is specified in -XX:SharedArchiveFile:' missing (P2) JDK-8269615: Fix for 8263640 broke Windows build (P2) JDK-8273902: Memory leak in OopStorage due to bug in OopHandle::release() (P2) JDK-8277998: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java#custom-cl-zgc failed "assert(ZAddress::is_marked(addr)) failed: Should be marked" (P2) JDK-8273695: Safepoint deadlock on VMOperation_lock (P2) JDK-8272472: StackGuardPages test doesn't build with glibc 2.34 (P2) JDK-8274245: sun/tools/jmap/BasicJMapTest.java Mutex rank failures (P2) JDK-8277404: Test VMDeprecatedOptions.java failing with Unable to create shared archive file (P3) JDK-8280155: [PPC64, s390] frame size checks are not yet correct (P3) JDK-8279924: [PPC64, s390] implement frame::is_interpreted_frame_valid checks (P3) JDK-8261579: AArch64: Support for weaker memory ordering in Atomic (P3) JDK-8271506: Add ResourceHashtable support for deleting selected entries (P3) JDK-8274944: AppCDS dump causes SEGV in VM thread while adjusting lambda proxy class info (P3) JDK-8269865: Async UL needs to handle ERANGE on exceeding SEM_VALUE_MAX (P3) JDK-8274934: Attempting to acquire lock JNICritical_lock/41 out of order with lock MultiArray_lock/41 (P3) JDK-8267042: bug in monitor locking/unlocking on ARM32 C1 due to uninitialized BasicObjectLock::_displaced_header (P3) JDK-8272124: Cgroup v1 initialization causes NullPointerException when cgroup path contains colon (P3) JDK-8268635: Corrupt oop in ClassLoaderData (P3) JDK-8271898: disable os.release_multi_mappings_vm on macOS-X64 (P3) JDK-8273526: Extend the OSContainer API pids controller with pids.current (P3) JDK-8266490: Extend the OSContainer API to support the pids controller of cgroups (P3) JDK-8176393: Fix Mutex ranking system (P3) JDK-8273967: gtest os.dll_address_to_function_and_library_name_vm fails on macOS12 (P3) JDK-8263567: gtests don't terminate the VM safely (P3) JDK-8269138: Move typeArrayOop.inline.hpp include to vectorSupport.cpp (P3) JDK-8273342: Null pointer dereference in classFileParser.cpp:2817 (P3) JDK-8256425: Obsolete Biased Locking in JDK 18 (P3) JDK-8278489: Preserve result in native wrapper with +UseHeavyMonitors (P3) JDK-8275846: read_base_archive_name() could read past the end of buffer (P3) JDK-8257038: Remove expired flags in JDK 18 (P3) JDK-8276039: Remove unnecessary qualifications of java_lang_Class:: (P3) JDK-8273107: RunThese24H times out with "java.lang.management.ThreadInfo.getLockName()" is null (P3) JDK-8269934: RunThese24H.java failed with EXCEPTION_ACCESS_VIOLATION in java_lang_Thread::get_thread_status (P3) JDK-8273109: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest times out (P3) JDK-8273505: runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java#default-cl crashed with SIGSEGV in MetaspaceShared::link_shared_classes (P3) JDK-8269923: runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java failed with "FATAL ERROR in native method: Primitive type array expected but not received for JNI array operation" (P3) JDK-8277350: runtime/jni/checked/TestPrimitiveArrayCriticalWithBadParam.java times out (P3) JDK-8268638: semaphores of AsyncLogWriter may be broken when JVM is exiting. (P3) JDK-8270489: Support archived heap objects in EpsilonGC (P3) JDK-8275037: Test vmTestbase/nsk/sysdict/vm/stress/btree/btree011/btree011.java crashes with memory exhaustion on Windows (P3) JDK-8273639: tests fail with "assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark" (P3) JDK-8272398: Update DockerTestUtils.buildJdkDockerImage() (P3) JDK-8278575: update jcmd GC.finalizer_info to list finalization status (P3) JDK-8274840: Update OS detection code to recognize Windows 11 (P3) JDK-8273229: Update OS detection code to recognize Windows Server 2022 (P3) JDK-8273518: Update the java manpage markdown source for foldmultilines changes (P3) JDK-8278032: Update the jcmd manpage to remove the shutdown option (P3) JDK-8268927: Windows: link error: unresolved external symbol "int __cdecl convert_to_unicode(char const *,wchar_t * *)" (P3) JDK-8274753: ZGC: SEGV in MetaspaceShared::link_shared_classes (P3) JDK-8278020: ~13% variation in Renaissance-Scrabble (P4) JDK-8273112: -Xloggc: should override -verbose:gc (P4) JDK-8276769: -Xshare:auto should tolerate problems in the CDS archive (P4) JDK-8274136: -XX:+ExitOnOutOfMemoryError calls exit while threads are running (P4) JDK-8270333: -XX:+VerifyStringTableAtExit should not do linear search (P4) JDK-8265602: -XX:DumpLoadedClassList should support custom loaders (P4) JDK-8269175: [macosx-aarch64] wrong CPU speed in hs_err file (P4) JDK-8271219: [REDO] JDK-8271063 Print injected fields for InstanceKlass (P4) JDK-8278309: [windows] use of uninitialized OSThread::_state (P4) JDK-8274795: AArch64: avoid spilling and restoring r18 in macro assembler (P4) JDK-8271242: Add Arena regression tests (P4) JDK-8273956: Add checking for rank values (P4) JDK-8273471: Add foldmultilines to UL for stdout/err (P4) JDK-8275728: Add simple Producer/Consumer microbenchmark for Thread.onSpinWait (P4) JDK-8271348: Add stronger sanity check of thread state when polling for safepoint/handshakes (P4) JDK-8271186: Add UL option to replace newline char (P4) JDK-8244162: Additional opportunities to use NONCOPYABLE (P4) JDK-8268368: Adopt cast notation for JavaThread conversions (P4) JDK-8274379: Allow process of unsafe access errors in check_special_condition_for_native_trans (P4) JDK-8253779: Amalloc may be wasting space by overaligning (P4) JDK-8272112: Arena code simplifications (P4) JDK-8270308: Arena::Amalloc may return misaligned address on 32-bit (P4) JDK-8270086: ARM32-softfp: Do not load CONSTANT_double using the condy helper methods in the interpreter (P4) JDK-8273380: ARM32: Default to {ldrexd,strexd} in StubRoutines::atomic_{load|store}_long (P4) JDK-8270155: ARM32: Improve register dump in hs_err (P4) JDK-8268852: AsyncLogWriter should not overide is_Named_thread() (P4) JDK-8270794: Avoid loading Klass* twice in TypeArrayKlass::oop_size() (P4) JDK-8274293: Build failure on macOS with Xcode 13.0 as vfork is deprecated (P4) JDK-8273251: Call check_possible_safepoint() from SafepointMechanism::process_if_requested() (P4) JDK-8238649: Call new Win32 API SetThreadDescription in os::set_native_thread_name (P4) JDK-8267281: Call prepare_for_dynamic_dumping for jcmd dynamic_dump (P4) JDK-8275004: CDS build failure with gcc11 (P4) JDK-8268778: CDS check_excluded_classes needs DumpTimeTable_lock (P4) JDK-8275084: CDS warning when building with LOG=debug (P4) JDK-8276588: Change "ccc" to "CSR" in HotSpot sources (P4) JDK-8274004: Change 'nonleaf' rank name (P4) JDK-8269636: Change outputStream's print_raw() and print_raw_cr() second parameter to size_t type (P4) JDK-8270061: Change parameter order of ResourceHashtable (P4) JDK-8275286: Check current thread when calling JRT methods that expect it (P4) JDK-8273300: Check Mutex ranking during a safepoint (P4) JDK-8268416: Clarify invalid method and field ID in JNI specification (P4) JDK-8274282: Clarify special wait assert (P4) JDK-8273302: Clarify the specification of JNI DestroyJavaVM in relation to "unloading the VM" (P4) JDK-8268078: ClassListParser::_interfaces should be freed (P4) JDK-8276658: Clean up JNI local handles code (P4) JDK-8271569: Clean up the use of CDS constants and field offsets (P4) JDK-8268855: Cleanup name handling in the Thread class and subclasses (P4) JDK-8272526: Cleanup ThreadStateTransition class (P4) JDK-8276175: codestrings.validate_vm gtest still broken on ppc64 after JDK-8276046 (P4) JDK-8274338: com/sun/jdi/RedefineCrossEvent.java failed "assert(m != __null) failed: NULL mirror" (P4) JDK-8273153: Consolidate file_exists into os:file_exists (P4) JDK-8272778: Consolidate is_instance and is_instance_inlined in java_lang_String (P4) JDK-8273915: Create 'nosafepoint' rank (P4) JDK-8264543: Cross modify fence optimization for x86 (P4) JDK-8276795: Deprecate seldom used CDS flags (P4) JDK-8270875: Deprecate the FilterSpuriousWakeups flag so it can be removed (P4) JDK-8272146: Disable Fibonacci test on memory constrained systems (P4) JDK-8273456: Do not hold ttyLock around stack walking (P4) JDK-8272811: Document the effects of building with _GNU_SOURCE in os_posix.hpp (P4) JDK-8275582: Don't purge metaspace mapping lists (P4) JDK-8272856: DoubleFlagWithIntegerValue uses G1GC-only flag (P4) JDK-8272850: Drop zapping values in the Zap* option descriptions (P4) JDK-8276126: Dump time class transformation causes heap objects of non-boot classes to be archived (P4) JDK-8272164: DumpAllocStats shouldn't subclass from ResourceObj (P4) JDK-8274935: dumptime_table has stale entry (P4) JDK-8273240: Dynamic test ArchiveConsistency.java should use CDSArchiveUtils (P4) JDK-8248584: Enable CHECK_UNHANDLED_OOPS for Windows fastdebug builds (P4) JDK-8273433: Enable parallelism in vmTestbase_nsk_sysdict tests (P4) JDK-8267556: Enhance class paths check during runtime (P4) JDK-8276184: Exclude lambda proxy class from the CDS archive if its caller class is excluded (P4) JDK-8271420: Extend CDS custom loader support to Windows platform (P4) JDK-8269652: Factor out the common code for creating system j.l.Thread objects (P4) JDK-8269466: Factor out the common code for initializing and starting internal VM JavaThreads (P4) JDK-8270217: Fix Arena::Amalloc to check for overflow better (P4) JDK-8231356: Fix broken ResourceObj::operator new[] in debug builds (P4) JDK-8270837: fix typos in test TestSigParse.java (P4) JDK-8272771: frame::pd_ps() is not implemented on any platform (P4) JDK-8273958: gtest/MetaspaceGtests executes unnecessary tests in debug builds (P4) JDK-8273176: handle latest VS2019 in abstract_vm_version (P4) JDK-8276217: Harmonize StrictMath intrinsics handling (P4) JDK-8275712: Hashtable literal_size functions are broken (P4) JDK-8276825: hotspot/runtime/SelectionResolution test errors (P4) JDK-8263640: hs_err improvement: handle class path longer than O_BUFLEN (P4) JDK-8271003: hs_err improvement: handle CLASSPATH env setting longer than O_BUFLEN (P4) JDK-8269004: Implement ResizableResourceHashtable (P4) JDK-8276901: Implement UseHeavyMonitors consistently (P4) JDK-8276889: Improve compatibility discussion in instanceKlass.cpp (P4) JDK-8278310: Improve logging in CDS DynamicLoaderConstraintsTest.java (P4) JDK-8271073: Improve testing with VM option VerifyArchivedFields (P4) JDK-8276787: Improve warning messages for -XX:+RecordDynamicDumpInfo (P4) JDK-8268773: Improvements related to: Failed to start thread - pthread_create failed (EAGAIN) (P4) JDK-8274714: Incorrect verifier protected access error message (P4) JDK-8276086: Increase size of metaspace mappings (P4) JDK-8271128: InlineIntrinsics support for 32-bit ARM (P4) JDK-8276215: Intrinsics matchers should handle native method flags better (P4) JDK-8272608: java_lang_System::allow_security_manager() doesn't set its initialization flag (P4) JDK-8268893: jcmd to trim the glibc heap (P4) JDK-8267075: jcmd VM.cds should print directory of the output files (P4) JDK-8271303: jcmd VM.cds {static, dynamic}_dump should print more info (P4) JDK-8267354: JDK 18 CDS Planning Notes (P4) JDK-8268288: jdk/jfr/api/consumer/streaming/TestOutOfProcessMigration.java fails with "Error: ShouldNotReachHere()" (P4) JDK-8268364: jmethod clearing should be done during unloading (P4) JDK-8269697: JNI_GetPrimitiveArrayCritical() should not accept object array (P4) JDK-8269037: jsig/Testjsig.java doesn't have to be restricted to linux only (P4) JDK-8267752: KVHashtable doesn't deallocate entries (P4) JDK-8273610: LogTestFixture::restore_config() should not restore options (P4) JDK-8272345: macos doesn't check `os::set_boot_path()` result (P4) JDK-8271931: Make AbortVMOnVMOperationTimeout more resilient to OS scheduling (P4) JDK-8264735: Make dynamic dump repeatable (P4) JDK-8256844: Make NMT late-initializable (P4) JDK-8273217: Make ParHeapInspectTask _safepoint_check_never (P4) JDK-8272884: Make VoidClosure::do_void pure virtual (P4) JDK-8272552: mark hotspot runtime/cds tests which ignore external VM flags (P4) JDK-8271887: mark hotspot runtime/CDSCompressedKPtrs tests which ignore external VM flags (P4) JDK-8271904: mark hotspot runtime/ClassFile tests which ignore external VM flags (P4) JDK-8271828: mark hotspot runtime/classFileParserBug tests which ignore external VM flags (P4) JDK-8271824: mark hotspot runtime/CompressedOops tests which ignore external VM flags (P4) JDK-8271826: mark hotspot runtime/condy tests which ignore external VM flags (P4) JDK-8271890: mark hotspot runtime/Dictionary tests which ignore external VM flags (P4) JDK-8271744: mark hotspot runtime/getSysPackage tests which ignore external VM flags (P4) JDK-8271886: mark hotspot runtime/InvocationTests tests which ignore external VM flags (P4) JDK-8271743: mark hotspot runtime/jni tests which ignore external VM flags (P4) JDK-8271825: mark hotspot runtime/LoadClass tests which ignore external VM flags (P4) JDK-8272291: mark hotspot runtime/logging tests which ignore external VM flags (P4) JDK-8271905: mark hotspot runtime/Metaspace tests which ignore external VM flags (P4) JDK-8271821: mark hotspot runtime/MinimalVM tests which ignore external VM flags (P4) JDK-8272551: mark hotspot runtime/modules tests which ignore external VM flags (P4) JDK-8272099: mark hotspot runtime/Monitor tests which ignore external VM flags (P4) JDK-8271893: mark hotspot runtime/PerfMemDestroy/PerfMemDestroy.java test as ignoring external VM flags (P4) JDK-8271892: mark hotspot runtime/PrintStringTableStats/PrintStringTableStatsTest.java test as ignoring external VM flags (P4) JDK-8271891: mark hotspot runtime/Safepoint tests which ignore external VM flags (P4) JDK-8271829: mark hotspot runtime/Throwable tests which ignore external VM flags (P4) JDK-8272654: Mark word accesses should not use Access API (P4) JDK-8268857: Merge VM_PrintJNI and VM_PrintThreads and remove the unused field 'is_deadlock' of DeadlockCycle (P4) JDK-8276731: Metaspace chunks are uncommitted twice (P4) JDK-8273881: Metaspace: test repeated deallocations (P4) JDK-8275704: Metaspace::contains() should be threadsafe (P4) JDK-8257534: misc tests failed with "NoClassDefFoundError: Could not initialize class java.util.concurrent.ThreadLocalRandom" (P4) JDK-8271609: Misleading message for AbortVMOnVMOperationTimeoutDelay (P4) JDK-8271293: Monitor class should use ThreadBlockInVMPreprocess (P4) JDK-8275334: Move class loading Events to a separate section in hs_err files (P4) JDK-8273815: move have_special_privileges to os_posix for POSIX platforms (P4) JDK-8274434: move os::get_default_process_handle and os::dll_lookup to os_posix for POSIX platforms (P4) JDK-8273979: move some os time related functions to os_posix for POSIX platforms (P4) JDK-8272797: Mutex with rank safepoint_check_never imply allow_vm_block (P4) JDK-8275320: NMT should perform buffer overrun checks (P4) JDK-8269571: NMT should print total malloc bytes and invocation count (P4) JDK-8277990: NMT: Remove NMT shutdown capability (P4) JDK-8277946: NMT: Remove VM.native_memory shutdown jcmd command option (P4) JDK-8048190: NoClassDefFoundError omits original ExceptionInInitializerError (P4) JDK-8272788: Nonleaf ranked locks should not be safepoint_check_never (P4) JDK-8269293: ObjectMonitor thread id fields should be 64 bits. (P4) JDK-8256306: ObjectMonitor::_contentions field should not be 'jint' (P4) JDK-8259066: Obsolete -XX:+AlwaysLockClassLoader (P4) JDK-8258192: Obsolete the CriticalJNINatives flag (P4) JDK-8269851: OperatingSystemMXBean getProcessCpuLoad reports incorrect process cpu usage in containers (P4) JDK-8274320: os::fork_and_exec() should be using posix_spawn (P4) JDK-8273877: os::unsetenv unused (P4) JDK-8272970: Parallelize runtime/InvocationTests/ (P4) JDK-8269687: pauth_aarch64.hpp include name is incorrect (P4) JDK-8271353: PerfDataManager::destroy crashes in VM_Exit (P4) JDK-8263840: PeriodicTask should declare its destructor virtual (P4) JDK-8269853: Prefetch::read should accept pointer to const (P4) JDK-8274794: Print all owned locks in hs_err file (P4) JDK-8275865: Print deoptimization statistics in product builds (P4) JDK-8271063: Print injected fields for InstanceKlass (P4) JDK-8270801: Print VM arguments with java -Xlog:arguments (P4) JDK-8274322: Problems with oopDesc construction (P4) JDK-8270803: Reduce CDS API verbosity (P4) JDK-8249004: Reduce ThreadsListHandle overhead in relation to direct handshakes (P4) JDK-8267767: Redundant condition check in SafepointSynchronize::thread_not_running (P4) JDK-8273152: Refactor CDS FileMapHeader loading code (P4) JDK-8271014: Refactor HeapShared::is_archived_object() (P4) JDK-8271419: Refactor test code for modifying CDS archive contents (P4) JDK-8276824: refactor Thread::is_JavaThread_protected (P4) JDK-8273104: Refactoring option parser for UL (P4) JDK-8275718: Relax memory constraint on exception counter updates (P4) JDK-8275287: Relax memory ordering constraints on updating instance class and array class counters (P4) JDK-8272107: Removal of Unsafe::defineAnonymousClass left a dangling C++ class (P4) JDK-8273917: Remove 'leaf' ranking for Mutex (P4) JDK-8272447: Remove 'native' ranked Mutex (P4) JDK-8273916: Remove 'special' ranking (P4) JDK-8269986: Remove +3 from Symbol::identity_hash() (P4) JDK-8233724: Remove -Wc++14-compat warning suppression in operator_new.cpp (P4) JDK-8268870: Remove dead code in metaspaceShared (P4) JDK-8267189: Remove duplicated unregistered classes from dynamic archive (P4) JDK-8270059: Remove KVHashtable (P4) JDK-8272343: Remove MetaspaceClosure::FLAG_MASK (P4) JDK-8275856: Remove MetaspaceHandleDeallocations debug switch (P4) JDK-8272480: Remove Mutex::access rank (P4) JDK-8275439: Remove PrintVtableStats (P4) JDK-8277797: Remove undefined/unused SharedRuntime::trampoline_size() (P4) JDK-8269678: Remove unimplemented and unused os::bind_to_processor() (P4) JDK-8267870: Remove unnecessary char_converter during class loading (P4) JDK-8269303: Remove unnecessary forward declaration of PSPromotionManager in cpCache.hpp (P4) JDK-8278143: Remove unused "argc" from ConstantPool::copy_bootstrap_arguments_at_impl (P4) JDK-8274858: Remove unused dictionary_classes_do functions (P4) JDK-8275413: Remove unused InstanceKlass::set_array_klasses() method (P4) JDK-8273611: Remove unused ProfilePrint_lock (P4) JDK-8273675: Remove unused Universe::_verify_in_progress flag (P4) JDK-8275440: Remove VirtualSpaceList::is_full() (P4) JDK-8275506: Rename allocated_on_stack to allocated_on_stack_or_embedded (P4) JDK-8270179: Rename Amalloc_4 (P4) JDK-8267163: Rename anonymous loader tests to hidden loader tests (P4) JDK-8276790: Rename GenericCDSFileMapHeader::_base_archive_path_offset (P4) JDK-8273522: Rename test property vm.cds.archived.java.heap to vm.cds.write.archived.java.heap (P4) JDK-8267303: Replace MinObjectAlignmentSize usages for non-Java heap objects (P4) JDK-8273414: ResourceObj::operator delete should handle nullptr in debug builds (P4) JDK-8274937: Revert the timeout setting for DynamicLoaderConstraintsTest (P4) JDK-8274718: runtime/cds/appcds/LambdaEagerInit.java fails with -XX:-CompactStrings (P4) JDK-8278174: runtime/cds/appcds/LambdaWithJavaAgent.java fails with release VMs (P4) JDK-8272335: runtime/cds/appcds/MoveJDKTest.java doesn't check exit codes (P4) JDK-8273256: runtime/cds/appcds/TestEpsilonGCWithCDS.java fails due to Unrecognized VM option 'ObjectAlignmentInBytes=64' on x86_32 (P4) JDK-8274838: runtime/cds/appcds/TestSerialGCWithCDS.java fails on Windows (P4) JDK-8271224: runtime/EnclosingMethodAttr/EnclMethodAttr.java doesn't check exit code (P4) JDK-8271836: runtime/ErrorHandling/ClassPathEnvVar.java fails with release VMs (P4) JDK-8272169: runtime/logging/LoaderConstraintsTest.java doesn't build test.Empty (P4) JDK-8275608: runtime/Metaspace/elastic/TestMetaspaceAllocationMT2 too slow (P4) JDK-8269530: runtime/ParallelLoad/ParallelSuperTest.java timeout (P4) JDK-8268565: runtime/records/RedefineRecord.java should be run in driver mode (P4) JDK-8269523: runtime/Safepoint/TestAbortOnVMOperationTimeout.java failed when expecting 'VM operation took too long' (P4) JDK-8276662: Scalability bottleneck in SymbolTable::lookup_common() (P4) JDK-8272553: several hotspot runtime/CommandLine tests don't check exit code (P4) JDK-8272305: several hotspot runtime/modules don't check exit codes (P4) JDK-8263538: SharedArchiveConsistency.java should test -Xshare:auto as well (P4) JDK-8268425: Show decimal nid of OSThread instead of hex format one (P4) JDK-8273783: Simplify Metaspace arena guard handling (P4) JDK-8276096: Simplify Unsafe.{load|store}Fence fallbacks by delegating to fullFence (P4) JDK-8276983: Small fixes to DumpAllocStat::print_stats (P4) JDK-8272168: some hotspot runtime/logging tests don't check exit code (P4) JDK-8275917: Some locks shouldn't allow_vm_block (P4) JDK-8273959: Some metaspace diagnostic switches should be develop (P4) JDK-8274033: Some tier-4 CDS EpsilonGC tests throw OOM (P4) JDK-8271015: Split cds/SharedBaseAddress.java test into smaller parts (P4) JDK-8272854: split runtime/CommandLine/PrintTouchedMethods.java test (P4) JDK-8268821: Split systemDictionaryShared.cpp (P4) JDK-8269882: stack-use-after-scope in NewObjectA (P4) JDK-8273508: Support archived heap objects in SerialGC (P4) JDK-8271513: support JavaThreadIteratorWithHandle replacement by new ThreadsList::Iterator (P4) JDK-8271514: support JFR use of new ThreadsList::Iterator (P4) JDK-8274615: Support relaxed atomic add for linux-aarch64 (P4) JDK-8263375: Support stack watermarks in Zero VM (P4) JDK-8265604: Support unlinked classes in dynamic CDS archive (P4) JDK-8269135: TestDifferentProtectionDomains runs into timeout in client VM (P4) JDK-8268902: Testing for threadObj != NULL is unnecessary in suspend handshake (P4) JDK-8277092: TestMetaspaceAllocationMT2.java#ndebug-default fails with "RuntimeException: Committed seems high: NNNN expected at most MMMM" (P4) JDK-8269261: The PlaceHolder code uses Thread everywhere but is always dealing with JavaThreads (P4) JDK-8193559: ugly DO_JAVA_THREADS macro should be replaced (P4) JDK-8275301: Unify C-heap buffer overrun checks into NMT (P4) JDK-8268720: Unspecified checks on NameAndType constants should not be performed (P4) JDK-8272114: Unused _last_state in osThread_windows (P4) JDK-8272614: Unused parameters in MethodHandleNatives linking methods (P4) JDK-8272348: Update CDS tests in anticipation of JDK-8270489 (P4) JDK-8272116: Update PerfDisableSharedMem with FLAG_SET_ERGO in PerfMemory::create_memory_region (P4) JDK-8273341: Update SipHash to version 1.0 (P4) JDK-8269003: Update the java manpage for JDK 18 (P4) JDK-8272963: Update the java manpage markdown source (P4) JDK-8275150: URLClassLoaderTable should store OopHandle instead of Handle (P4) JDK-8268780: Use 'print_cr' instead of 'print' for the message 'eliminated ' (P4) JDK-8270894: Use acquire semantics in ObjectSynchronizer::read_stable_mark() (P4) JDK-8261941: Use ClassLoader for unregistered classes during -Xshare:dump (P4) JDK-8260262: Use common code in function unmap_shared() in perfMemory_posix.cpp (P4) JDK-8275950: Use only _thread_in_vm in ~ThreadBlockInVMPreprocess() (P4) JDK-8275162: Use varargs in 'def' macros in mutexLocker.cpp (P4) JDK-8270435: UT: MonitorUsedDeflationThresholdTest failed: did not find too_many string in output (P4) JDK-8268520: VirtualSpace::print_on() should be const (P4) JDK-8277383: VM.metaspace optionally show chunk freelist details (P4) JDK-8277342: vmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV in InstanceKlass::jni_id_for (P4) JDK-8251904: vmTestbase/nsk/sysdict/vm/stress/btree/btree010/btree010.java fails with ClassNotFoundException: nsk.sysdict.share.BTree0LLRLRLRRLR (P4) JDK-8273333: Zero should warn about unimplemented -XX:+LogTouchedMethods (P4) JDK-8278379: Zero VM is broken due to UseRTMForStackLocks was not declared after JDK-8276901 (P4) JDK-8273373: Zero: Cannot invoke JVM in primordial threads on Zero (P4) JDK-8273483: Zero: Clear pending JNI exception check in native method handler (P4) JDK-8273440: Zero: Disable runtime/Unsafe/InternalErrorTest.java (P4) JDK-8277385: Zero: Enable CompactStrings support (P4) JDK-8277485: Zero: Fix _fast_{i,f}access_0 bytecodes handling (P4) JDK-8273486: Zero: Handle DiagnoseSyncOnValueBasedClasses VM option (P4) JDK-8273489: Zero: Handle UseHeavyMonitors on all monitorenter paths (P4) JDK-8008243: Zero: Implement fast bytecodes (P4) JDK-8273880: Zero: Print warnings when unsupported intrinsics are enabled (P4) JDK-8275604: Zero: Reformat opclabels_data (P4) JDK-8275586: Zero: Simplify interpreter initialization (P4) JDK-8273606: Zero: SPARC64 build fails with si_band type mismatch (P4) JDK-8274903: Zero: Support AsyncGetCallTrace (P5) JDK-8270340: Base64 decodeBlock intrinsic for Power64 needs cleanup (P5) JDK-8273451: Remove unreachable return in mutexLocker::wait hotspot/svc: (P3) JDK-8272065: jcmd cannot rely on the old core reflection implementation which will be changed after JEP 416 (P3) JDK-8273216: JCMD does not work across container boundaries with Podman (P3) JDK-8276265: jcmd man page is outdated (P3) JDK-8270341: Test serviceability/dcmd/gc/HeapDumpAllTest.java timed-out (P4) JDK-8265150: AsyncGetCallTrace crashes on ResourceMark (P4) JDK-8276173: Clean up and remove unneeded casts in HeapDumper (P4) JDK-8277029: JMM GetDiagnosticXXXInfo APIs should verify output array sizes (P4) JDK-8268539: several serviceability/sa tests should be run in driver mode (P4) JDK-8276209: Some call sites doesn't pass the parameter 'size' to SharedRuntime::dtrace_object_alloc(_base) (P4) JDK-8276337: Use override specifier in HeapDumper hotspot/svc-agent: (P3) JDK-8262386: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java timed out (P3) JDK-8274026: SA tests are failing on Mac_OS_X_11.6 (P3) JDK-8275021: Test serviceability/sa/TestJmapCore.java fails with: java.io.IOException: Stack frame 0x4 not found (P4) JDK-8247351: [aarch64] NullPointerException during stack walking (clhsdb "where -a") (P4) JDK-8261236: C2: ClhsdbJstackXcompStress test fails when StressGCM is enabled (P4) JDK-8274670: Improve version string handling in SA (P4) JDK-8269685: Optimize HeapHprofBinWriter implementation (P4) JDK-8274620: resourcehogs/serviceability/sa/TestHeapDumpForLargeArray.java is timing out (P4) JDK-8269962: SA has unused Hashtable, Dictionary classes (P4) JDK-8273502: serviceability/sa/ClhsdbDumpheap.java timed out (P4) JDK-8210558: serviceability/sa/TestJhsdbJstackLock.java fails to find '^\s+- waiting to lock <0x[0-9a-f]+> \(a java\.lang\.Class ...' (P4) JDK-8258512: serviceability/sa/TestJmapCore.java timed out on macOS 10.13.6 (P5) JDK-8275075: Remove unnecessary conversion to String in jdk.hotspot.agent (P5) JDK-8277413: Remove unused local variables in jdk.hotspot.agent (P5) JDK-8274662: Replace 'while' cycles with iterator with enhanced-for in jdk.hotspot.agent (P5) JDK-8274899: Replace usages of Collections.sort with List.sort call in jdk.hotspot.agent hotspot/test: (P2) JDK-8270320: JDK-8270110 committed invalid copyright headers (P4) JDK-8273314: Add tier4 test groups (P4) JDK-8278363: Create extented container test groups (P4) JDK-8267893: Improve jtreg test failure handler do get native/mixed stack traces for cores and live processes (P4) JDK-8276054: JMH benchmarks for Fences (P4) JDK-8273804: Platform.isTieredSupported should handle the no-compiler case (P4) JDK-8268626: Remove native pre-jdk9 support for jtreg failure handler (P4) JDK-8273318: Some containers/docker/TestJFREvents.java configs are running out of memory (P4) JDK-8267138: Stray suffix when starting gtests via GTestWrapper.java (P4) JDK-8265489: Stress test times out because of long ObjectSynchronizer::monitors_iterate(...) operation (P4) JDK-8269743: test/hotspot/jtreg/vmTestbase/vm/mlvm/meth/stress/jni/nativeAndMH/Test.java crash with small heap (-Xmx50m) (P4) JDK-8269849: vmTestbase/gc/gctests/PhantomReference/phantom002/TestDescription.java failed with "OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects" (P4) JDK-8273803: Zero: Handle "zero" variant in CommandLineOptionTest.java (P5) JDK-8269206: A small typo in comment in test/lib/sun/hotspot/WhiteBox.java infrastructure: (P3) JDK-8279179: Update nroff pages in JDK 18 before RC infrastructure/build: (P1) JDK-8277071: [BACKOUT] JDK-8276743 Make openjdk build Zip Archive generation "reproducible" (P2) JDK-8258465: Headless build fails due to missing X11 headers on linux (P2) JDK-8270108: Update JCov version to 3.0.9 (P3) JDK-8279702: [macosx] ignore xcodebuild warnings on M1 (P3) JDK-8276746: Add section on reproducible builds in building.md (P3) JDK-8273072: Avoid using += in configure (P3) JDK-8275128: Build hsdis using normal build system (P3) JDK-8276654: element-list order is non deterministic (P3) JDK-8251400: Fix incorrect addition of library to test in JDK-8237858 (P3) JDK-8279379: GHA: Print tests that are in error (P3) JDK-8272067: Initial nroff manpage generation for JDK 18 (P3) JDK-8272859: Javadoc external links should only have feature version number in URL (P3) JDK-8274311: Make build.tools.jigsaw.GenGraphs more configurable (P3) JDK-8275745: Reproducible copyright headers (P3) JDK-8275512: Upgrade required version of jtreg to 6.1 (P3) JDK-8276854: Windows GHA builds fail due to broken Cygwin (P4) JDK-8270438: "Cores to use" output in configure is misleading (P4) JDK-8278163: --with-cacerts-src variable resolved after GenerateCacerts recipe setup (P4) JDK-8272700: [macos] Build failure with Xcode 13.0 after JDK-8264848 (P4) JDK-8277069: [REDO] JDK-8276743 Make openjdk build Zip Archive generation "reproducible" (P4) JDK-8272167: AbsPathsInImage.java should skip *.dSYM directories (P4) JDK-8278080: Add --with-cacerts-src='user cacerts folder' to enable deterministic cacerts generation (P4) JDK-8274170: Add hooks for custom makefiles to augment jtreg test execution (P4) JDK-8244602: Add JTREG_REPEAT_COUNT to repeat execution of a test (P4) JDK-8274610: Add linux-aarch64 to bootcycle build profiles (P4) JDK-8275569: Add linux-aarch64 to test-make profiles (P4) JDK-8275449: Add linux-aarch64-zero build profile (P4) JDK-8276841: Add support for Visual Studio 2022 (P4) JDK-8270517: Add Zero support for LoongArch (P4) JDK-8277762: Allow configuration of HOTSPOT_BUILD_USER (P4) JDK-8270117: Broken jtreg link in "Building the JDK" page (P4) JDK-8272113: Build compare script fails with differences in classlist (P4) JDK-8273497: building.md should link to both md and html (P4) JDK-8267636: Bump minimum boot jdk to JDK 17 (P4) JDK-8256977: Bump minimum GCC from 5.x to 6 for JDK (P4) JDK-8276672: Cannot build hsdis on WSL (P4) JDK-8277370: configure script cannot distinguish WSL version (P4) JDK-8278175: Enable all doclint warnings for build of java.desktop (P4) JDK-8278179: Enable all doclint warnings for build of java.naming (P4) JDK-8266839: Enable pandoc on macosx-aarch64 at Oracle (P4) JDK-8275008: gtest build failure due to stringop-overflow warning with gcc11 (P4) JDK-8273801: Handle VMTYPE for "core" VM variant (P4) JDK-8269758: idea.sh doesn't work when there are multiple configurations available. (P4) JDK-8269761: idea.sh missing .exe suffix when invoking javac on WSL (P4) JDK-8269760: idea.sh should not invoke cygpath directly (P4) JDK-8277977: Incorrect references to --enable-reproducible-builds in docs (P4) JDK-8275405: Linking error for classes with lambda template parameters and virtual functions (P4) JDK-8269031: linux x86_64 check for binutils 2.25 or higher after 8265783 (P4) JDK-8274345: make build-test-lib is broken (P4) JDK-8276743: Make openjdk build Zip Archive generation "reproducible" (P4) JDK-8271142: package help is not displayed for missing X11/extensions/Xrandr.h (P4) JDK-8254318: Remove .hgtags (P4) JDK-8278273: Remove unnecessary exclusion of doclint accessibility checks (P4) JDK-8273092: Sort classlist in JDK image (P4) JDK-8273797: Stop impersonating "server" VM in all VM variants (P4) JDK-8272667: substandard error messages from the docs build (P4) JDK-8268637: Update --release 17 symbol information for JDK 17 build 28 (P4) JDK-8269689: Update --release 17 symbol information for JDK 17 build 31 (P4) JDK-8276864: Update boot JDKs to 17.0.1 in GHA (P4) JDK-8277427: Update jib-profiles.js to use JMH 1.33 devkit (P4) JDK-8271605: Update JMH devkit to 1.32 (P4) JDK-8276057: Update JMH devkit to 1.33 (P4) JDK-8274273: Update testing docs for MacOS with Non-US locale (P4) JDK-8274083: Update testing docs to mention tiered testing (P4) JDK-8276550: Use SHA256 hash in build.tools.depend.Depend (P4) JDK-8277089: Use system binutils to build hsdis (P4) JDK-8268860: Windows-Aarch64 build is failing in GitHub actions (P4) JDK-8177043: x64 fixpath.exe doesn't setup correct environment to run x86 process (P4) JDK-8273494: Zero: Put libjvm.so into "zero" folder, not "server" infrastructure/release_eng: (P1) JDK-8277944: JDK 18 - update GA Release Date (P2) JDK-8271151: Backout JDK-8271150 from jdk/jdk (P2) JDK-8282543: Remove B37 from JDK 18 Artifactory (P2) JDK-8280415: Remove EA from JDK 18 version string starting with Initial RC promotion B35 on February 10, 2022 other-libs: (P5) JDK-8273684: Replace usages of java.util.Stack with ArrayDeque performance/libraries: (P4) JDK-8272861: Add a micro benchmark for vector api (P4) JDK-8273681: Add Vector API vs Arrays.mismatch intrinsic benchmark security-libs: (P4) JDK-8279385: [test] Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344 (P4) JDK-8278344: sun/security/pkcs12/KeytoolOpensslInteropTest.java test fails because of different openssl output (P4) JDK-8275003: Suppress warnings on non-serializable non-transient instance fields in windows mscapi (P4) JDK-8276632: Use blessed modifier order in security-libs code security-libs/java.security: (P2) JDK-8278744: KeyStore:getAttributes() not returning unmodifiable Set (P2) JDK-8278247: KeyStoreSpi::engineGetAttributes does not throws KeyStoreException (P3) JDK-8272163: Add -version option to keytool and jarsigner (P3) JDK-8274471: Add support for RSASSA-PSS in OCSP Response (P3) JDK-8231107: Allow store password to be null when saving a PKCS12 KeyStore (P3) JDK-8270380: Change the default value of the java.security.manager system property to disallow (P3) JDK-8274736: Concurrent read/close of SSLSockets causes SSLSessions to be invalidated unnecessarily (P3) JDK-8273826: Correct Manifest file name and NPE checks (P3) JDK-8269039: Disable SHA-1 Signed JARs (P3) JDK-8272385: Enforce ECPrivateKey d value to be in the range [1, n-1] for SunEC provider (P3) JDK-8275887: jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled (P3) JDK-8273739: Java Security Standard Algorithm Names spec should include names of key formats (P3) JDK-8275252: Migrate cacerts from JKS to password-less PKCS12 (P3) JDK-8185844: MSCAPI doesn't list aliases correctly (P3) JDK-8271199: Mutual TLS handshake fails signing client certificate with custom sensitive PKCS11 key (P3) JDK-8267432: Refactoring deprecated calls to make @SuppressWarning more precise after JEP 411 (P3) JDK-8225083: Remove Google certificate that is expiring in December 2021 (P3) JDK-8225082: Remove IdenTrust certificate that is expiring in September 2021 (P3) JDK-8276660: Scalability bottleneck in java.security.Provider.getService() (P3) JDK-8277224: sun.security.pkcs.PKCS9Attributes.toString() throws NPE (P3) JDK-8256252: TLSv1.2 With BC lib and RSAPSS throws NPE during ECDHServerKeyExchange on 8u272. (P3) JDK-8270946: X509CertImpl.getFingerprint should not return the empty String (P4) JDK-8272915: (doc) package-info typo in extLink (P4) JDK-8246797: A convenient method to read OPTIONAL element (P4) JDK-8243585: AlgorithmChecker::check throws confusing exception when it rejects the signer key (P4) JDK-8277246: Check for NonRepudiation as well when validating a TSA certificate (P4) JDK-8274143: Disable "invalid entry for security.provider.X" error message in log file when security.provider.X is empty (P4) JDK-8275251: Document the new -version option in keytool and jarsigner (P4) JDK-8257722: Improve "keytool -printcert -jarfile" output (P4) JDK-8268427: Improve AlgorithmConstraints:checkAlgorithm performance (P4) JDK-8274330: Incorrect encoding of the DistributionPointName object in IssuingDistributionPointExtension (P4) JDK-8279222: Incorrect legacyMap.get in java.security.Provider after JDK-8276660 (P4) JDK-8277353: java/security/MessageDigest/ThreadSafetyTest.java test times out (P4) JDK-8225181: KeyStore should have a getAttributes method (P4) JDK-4337793: Mark non-serializable fields of java.security.cert.Certificate and CertPath (P4) JDK-8209776: Refactor jdk/security/JavaDotSecurity/ifdefs.sh to plain java test (P4) JDK-8232066: Remove outdated code/methods from PKIX implementation (P4) JDK-8276863: Remove test/jdk/sun/security/ec/ECDSAJavaVerify.java (P4) JDK-8273316: Standard Names specification for MessageDigest missing SHA-512 (P4) JDK-8272391: Undeleted debug information (P4) JDK-8251468: X509Certificate.get{Subject,Issuer}AlternativeNames and getExtendedKeyUsage do not throw CertificateParsingException if extension is unparseable security-libs/javax.crypto: (P2) JDK-8273297: AES/GCM non-AVX512+VAES CPUs suffer after 8267125 (P3) JDK-8271745: Correct block size for KW,KWP mode and use fixed IV for KWP mode for SunJCE (P3) JDK-8269827: JMH tests for AES/GCM byte[] and bytebuffers (P3) JDK-8267485: Remove the dependency on SecurityManager in JceSecurityManager.java (P3) JDK-8251134: Unwrapping a key with a Private Key generated by Microsoft CNG fails (P4) JDK-8254267: javax/xml/crypto/dsig/LogParameters.java failed with "RuntimeException: Unexpected log output:" (P4) JDK-8269216: Useless initialization in com/sun/crypto/provider/PBES2Parameters.java (P5) JDK-8274050: Unnecessary Vector usage in javax.crypto security-libs/javax.crypto:pkcs11: (P3) JDK-8264849: Add KW and KWP support to PKCS11 provider (P3) JDK-8255409: Support the new C_GetInterfaceList, C_GetInterface, and C_SessionCancel APIs in PKCS#11 v3.0 (P3) JDK-8278099: two sun/security/pkcs11/Signature tests failed with AssertionError (P4) JDK-8271566: DSA signature length value is not accurate in P11Signature security-libs/javax.net.ssl: (P2) JDK-8275811: Incorrect instance to dispose (P3) JDK-8262186: Call X509KeyManager.chooseClientAlias once for all key types (P3) JDK-8270344: Session resumption errors (P3) JDK-8268965: TCP Connection Reset when connecting simple socket to SSL server (P4) JDK-8274528: Add comment to explain an HKDF optimization in SSLSecretDerivation (P4) JDK-8273045: Fix misc javadoc bugs in the java.security and javax.net.ssl code (P4) JDK-8270317: Large Allocation in CipherSuite (P4) JDK-8276677: Malformed Javadoc inline tags in JDK source in javax/net/ssl (P4) JDK-8272396: mismatching debug output streams security-libs/javax.security: (P3) JDK-8267108: Alternate Subject.getSubject and doAs APIs that do not depend on Security Manager APIs (P3) JDK-8049520: FileCredentialsCache loads cache once and is never refreshed (P3) JDK-8273026: Slow LoginContext.login() on multi threading application (P3) JDK-8277932: Subject:callAs() not throwing NPE when action is null security-libs/javax.xml.crypto: (P3) JDK-8275082: Update XML Security for Java to 2.3.0 (P4) JDK-8274393: Suppress more warnings on non-serializable non-transient instance fields in security libs security-libs/jdk.security: (P4) JDK-8274721: UnixSystem fails to provide uid, gid or groups if no username is available security-libs/org.ietf.jgss: (P5) JDK-8273299: Unnecessary Vector usage in java.security.jgss security-libs/org.ietf.jgss:krb5: (P3) JDK-8274205: Handle KDC_ERR_SVC_UNAVAILABLE error code from KDC (P3) JDK-8273670: Remove weak etypes from default krb5 etype list (P4) JDK-8273894: ConcurrentModificationException raised every time ReferralsCache drops referral (P4) JDK-8270137: Kerberos Credential Retrieval from Cache not Working in Cross-Realm Setup (P4) JDK-8272674: Logging missing keytab file in Krb5LoginModule (P4) JDK-8274656: Remove default_checksum and safe_checksum_type from krb5.conf (P4) JDK-8272162: S4U2Self ticket without forwardable flag specification/language: (P3) JDK-8273326: JEP 420: Pattern Matching for switch (Second Preview) (P4) JDK-8277344: 12.6: Note that finalization may be disabled (P4) JDK-8274938: 15.10.3: ArrayAccess is unnecessarily restrictive (P4) JDK-8273327: JLS changes for Pattern Matching for switch (Second Preview) (P4) JDK-8280586: Remove C-style arrays from code examples in JLS (P4) JDK-8275653: Remove spec change documents for sealed classes specification/vm: (P4) JDK-8267635: 4.1: Allow v62.0 class files for Java SE 18 (P4) JDK-8279039: 4.2.2: Fix misleading note about in interfaces (P4) JDK-8273245: 4.7.25: Fix misstatement about java.base for requires_flags (P4) JDK-8279019: 4.7.25: Fix typo in opens_to_count item tools: (P2) JDK-8270060: (jdeprscan) tools/jdeprscan/tests/jdk/jdeprscan/TestRelease.java failed with class file for jdk.internal.util.random.RandomSupport not found (P3) JDK-8276650: GenGraphs does not produce deterministic output (P3) JDK-8277165: jdeps --multi-release --print-module-deps fails if module-info.class in different versioned directories (P4) JDK-8264485: build.tools.depend.Depend.toString(byte[]) creates malformed hex strings (P4) JDK-8277166: Data race in jdeps VersionHelper (P4) JDK-8276764: Enable deterministic file content ordering for Jar and Jmod (P4) JDK-8277123: jdeps does not report some exceptions correctly (P4) JDK-8273710: Remove redundant stream() call before forEach in jdk.jdeps (P4) JDK-8277422: tools/jar/JarEntryTime.java fails with modified time mismatch (P4) JDK-8276635: Use blessed modifier order in compiler code tools/hprof: (P4) JDK-8269909: getStack method in hprof.parser.Reader should use try-with-resource (P4) JDK-8269886: Inaccurate error message for compressed hprof test tools/jar: (P4) JDK-8258117: jar tool sets the time stamp of module-info.class entries to the current time tools/javac: (P2) JDK-8277806: 4 tools/jar failures per platform after JDK-8272728 (P2) JDK-8277864: Compilation error thrown while doing a boxing conversion on selector expression (P2) JDK-8277965: Enclosing instance optimization affects serialization (P2) JDK-8270835: regression after JDK-8261006 (P3) JDK-8225559: assertion error at TransTypes.visitApply (P3) JDK-8274942: AssertionError at jdk.compiler/com.sun.tools.javac.util.Assert.error(Assert.java:155) (P3) JDK-8266082: AssertionError in Annotate.fromAnnotations with -Xdoclint (P3) JDK-8277106: Cannot compile certain sources with --release (P3) JDK-8268885: duplicate checkcast when destination type is not first type of intersection type (P3) JDK-8278834: Error "Cannot read field "sym" because "this.lvar[od]" is null" when compiling (P3) JDK-8202056: Expand serial warning to check for bad overloads of serial-related methods and ineffectual fields (P3) JDK-8273234: extended 'for' with expression of type tvar causes the compiler to crash (P3) JDK-8268894: forged ASTs can provoke an AIOOBE at com.sun.tools.javac.jvm.ClassWriter::writePosition (P3) JDK-8277105: Inconsistent handling of missing permitted subclasses (P3) JDK-8275233: Incorrect line number reported in exception stack trace thrown from a lambda expression (P3) JDK-8271254: javac generates unreachable code when using empty semicolon statement (P3) JDK-8269113: Javac throws when compiling switch (null) (P3) JDK-8278930: javac tries to compile a file twice via PackageElement.getEnclosedElements (P3) JDK-8278373: JavacTrees.searchMethod finds incorrect match (P3) JDK-8262095: NPE in Flow$FlowAnalyzer.visitApply: Cannot invoke getThrownTypes because tree.meth.type is null (P3) JDK-8272776: NullPointerException not reported (P3) JDK-8271623: Omit enclosing instance fields from inner classes that don't use it (P3) JDK-8272234: Pass originating elements from Filer to JavaFileManager (P3) JDK-8274347: Passing a *nested* switch expression as a parameter causes an NPE during compile (P3) JDK-8274363: Transitively sealed classes not considered exhaustive in switches (P3) JDK-8275302: unexpected compiler error: cast, intersection types and sealed (P3) JDK-8275097: Wrong span of the 'default' tag (P4) JDK-8278466: "spurious markup" warnings in snippets when building `docs-reference` (P4) JDK-8261006: 'super' qualified method references cannot occur in a static context (P4) JDK-8267632: Add source 18 and target 18 to javac (P4) JDK-8268575: Annotations not visible on model elements before they are generated (P4) JDK-8278078: Cannot reference super before supertype constructor has been called (P4) JDK-8273328: Compiler implementation for Pattern Matching for switch (Second Preview) (P4) JDK-8278318: Create {@index} entries for key LangTools terms (P4) JDK-8274729: Define Position.NOPOS == Diagnostic.NOPOS (P4) JDK-8271928: ErroneousTree with start position -1 (P4) JDK-8225488: Examine ExecutableType.getReceiverType behavior when source receiver parameter is absent (P4) JDK-8271209: Fix doc comment typos in JavadocTokenizer (P4) JDK-8274605: Fix predicate guarantees on returned values in (Doc)SourcePositions (P4) JDK-8272564: Incorrect attribution of method invocations of Object methods on interfaces (P4) JDK-8273263: Incorrect recovery attribution of record component type when j.l.Record is unavailable (P4) JDK-8160675: Issue lint warning for non-serializable non-transient instance fields in serializable type (P4) JDK-8273408: java.lang.AssertionError: typeSig ERROR on generated class property of record (P4) JDK-8282161: java.lang.NullPointerException at jdk.compiler/com.sun.tools.javac.comp.Flow (P4) JDK-8265253: javac -Xdoclint:all gives "no comment" warning for code that can't be commented (P4) JDK-8272728: javac ignores any -J option in @argfiles silently (P4) JDK-8275907: javac's manpage example for Two Argument Files does not work (P4) JDK-8275771: JDK source code contains redundant boolean operations in jdk.compiler and langtools (P4) JDK-8276683: Malformed Javadoc inline tags in JDK source in com/sun/tools/javac/util/RawDiagnosticFormatter.java (P4) JDK-8274233: Minor cleanup for ToolBox (P4) JDK-8259039: Passing different version to --release flag than javac version output warning (P4) JDK-8261088: Repeatable annotations without @Target cannot have containers that target module declarations (P4) JDK-8274244: ReportOnImportedModuleAnnotation.java fails on rerun (P4) JDK-8266565: Spec of ForwardingJavaFileManager/ForwardingFileObject/ForwardingJavaFileObject methods should mention delegation instead of being copied (P4) JDK-8273584: TypeElement.getSuperclass crashes for a record TypeElement when j.l.Record is not available (P4) JDK-8268148: unchecked warnings handle ? and ? extends Object differently (P4) JDK-8272618: Unnecessary Attr.visitIdent.noOuterThisPath (P4) JDK-8267634: Update --release 17 symbol information for JDK 17 build 26 (P4) JDK-8274255: Update javac messages to use "enum class" rather than "enum type" (P4) JDK-8272945: Use snippets in java.compiler documentation (P5) JDK-8274161: Cleanup redundant casts in jdk.compiler (P5) JDK-8273609: Fix trivial doc typos in the compiler area (P5) JDK-8266239: Some duplicated javac command-line options have repeated effect tools/javadoc(tool): (P1) JDK-8271161: [BACKOUT] JDK-8249634 doclint should report implicit constructor as missing javadoc comments (P2) JDK-8278130: Failure in jdk/javadoc/tool/CheckManPageOptions.java after JDK-8274639 (P2) JDK-8274744: TestSnippetTag test fails after recent integration (P3) JDK-8271258: @param with non-ascii variable names produces incorrect results (P3) JDK-8271159: [REDO] JDK-8249634 doclint should report implicit constructor as missing javadoc comments (P3) JDK-8276964: Better indicate that a snippet (and other invalid input) could not be processed (P3) JDK-8264274: Block tags in overview.html are ignored (P3) JDK-8275199: Bogus warning generated for serializable records (P3) JDK-8275788: Create code element with suitable attributes for code snippets (P3) JDK-8269774: doclint reports missing javadoc comments for JavaFX properties if the docs are on the property method (P3) JDK-8249634: doclint should report implicit constructor as missing javadoc comments (P3) JDK-8272374: doclint should report missing "body" comments (P3) JDK-8206181: ExceptionInInitializerError: improve handling of exceptions in user-provided taglets (P3) JDK-8278068: Fix next-line modifier (snippet markup) (P3) JDK-8266666: Implementation for snippets (P3) JDK-8273244: Improve diagnostic output related to ErroneousTree (P3) JDK-8223358: Incorrect HTML structure in annotation pages (P3) JDK-8273544: Increase test coverage for snippets (P3) JDK-8268582: javadoc throws NPE with --ignore-source-errors option (P3) JDK-8201533: JEP 413: Code Snippets in Java API Documentation (P3) JDK-8269401: Merge "Exceptions" and "Errors" into "Exception Classes" (P3) JDK-8275786: New javadoc option to add script files to generated documentation (P3) JDK-8268420: new Reporter method to report a diagnostic within a DocTree node (P3) JDK-8189591: No way to locally suppress doclint warnings (P3) JDK-8274639: Provide a way to disable warnings for cross-modular links (P3) JDK-8276124: Provide snippet support for properties files (P3) JDK-8277026: Remove blank lines remaining from snippet markup (P3) JDK-8267853: Remove unused styles from stylesheet (P3) JDK-8278538: Test langtools/jdk/javadoc/tool/CheckManPageOptions.java fails after the manpage was updated (P3) JDK-8277027: Treat unrecognized markup as snippet text, but warn about it (P3) JDK-8278516: Typos in snippet for java.compiler (P4) JDK-8273175: Add @since tags to the DocTree.Kind enum constants (P4) JDK-8275406: Add copy-to-clipboard feature to snippet UI (P4) JDK-8275273: Add missing HtmlStyle documentation (P4) JDK-8270195: Add missing links between methods of JavaFX properties (P4) JDK-8274172: Convert JavadocTester to use NIO (P4) JDK-8273452: DocTrees.getDocCommentTree should be specified as idempotent (P4) JDK-8272375: Improve phrasing of synthesized descriptions in JavaFX docs (P4) JDK-8248001: javadoc generates invalid HTML pages whose ftp:// links are broken (P4) JDK-8230130: javadoc search result dialog shows cut off headers for long results (P4) JDK-8256208: Javadoc's generated overview does not show classes of unnamed package (P4) JDK-8273034: Make javadoc navigation collapsible on small displays (P4) JDK-8271227: Missing `{@code }` in com.sun.source.* (P4) JDK-8273154: Provide a JavadocTester method for non-overlapping, unordered output matching (P4) JDK-8271711: Remove WorkArounds.isSynthetic (P4) JDK-8274666: rename HtmlStyle.descfrmTypeLabel to be less cryptic (P4) JDK-8274625: Search field placeholder behavior (P4) JDK-8276768: Snippet copy feature should use button instead of link (P4) JDK-8272158: SoftReference related bugs under memory pressure (P4) JDK-8274405: Suppress warnings on non-serializable non-transient instance fields in javac and javadoc (P4) JDK-8274211: Test man page that options are documented (P4) JDK-8267944: TestDiagsLineCaret's outcome depends on jtreg test mode (P4) JDK-8278077: Update javadoc page with new options in JDK 18 (P4) JDK-8274295: Update the javadoc man page to reflect JDK 17 changes (P4) JDK-8276573: Use blessed modifier order in jdk.javadoc (P4) JDK-8274781: Use monospace font for enclosing interface (P4) JDK-8277028: Use service type documentation as fallback for @provides (P4) JDK-8272944: Use snippets in jdk.javadoc documentation (P4) JDK-8273745: VerifyLocale.java occasionally times out (P5) JDK-8274900: Too weak variable type leads to unnecessary cast in jdk.javadoc (P5) JDK-8277536: Use String.blank in jdk.javadoc where applicable tools/jconsole: (P5) JDK-8275384: Change nested classes in jdk.jconsole to static nested classes tools/jextract: (P4) JDK-8278433: Use snippets in jdk.incubator.foreign documentation tools/jlink: (P4) JDK-8273774: CDSPluginTest should only expect classes_nocoops.jsa exists on supported 64-bit platforms (P4) JDK-8272916: Copyright year was modified unintentionally in jlink.properties and ImagePluginStack.java (P4) JDK-8278185: Custom JRE cannot find non-ASCII named module inside (P4) JDK-8264322: Generate CDS archive when creating custom JDK image (P4) JDK-8278205: jlink plugins should dump .class file in debug mode (P4) JDK-8273711: Remove redundant stream() call before forEach in jdk.jlink (P4) JDK-8275249: Suppress warnings on non-serializable array component types in jdk.jlink (P4) JDK-8278324: Update the --generate-cds-archive jlink plugin usage message (P5) JDK-8275386: Change nested classes in jdk.jlink to static nested classes (P5) JDK-8274394: Use Optional.isEmpty instead of !Optional.isPresent in jdk.jlink tools/jpackage: (P2) JDK-8277494: [BACKOUT] JDK-8276150 Quarantined jpackage apps are labeled as "damaged" (P2) JDK-8277649: [BACKOUT] JDK-8277507 Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures (P3) JDK-8278970: [macos] SigningPackageTest is failed with runtime exception (P3) JDK-8278233: [macos] tools/jpackage tests timeout due to /usr/bin/osascript (P3) JDK-8276837: [macos]: Error when signing the additional launcher (P3) JDK-8278311: Debian packaging doesn't work (P3) JDK-8274856: Failing jpackage tests with fastdebug/release build (P3) JDK-8276562: Fix to JDK-8263155 left out the help text changes (P3) JDK-8272328: java.library.path is not set properly by Windows jpackage app launcher (P3) JDK-8279370: jdk.jpackage/share/native/applauncher/JvmLauncher.cpp fails to build with GCC 6.3.0 (P3) JDK-8272639: jpackaged applications using microphone on mac (P3) JDK-8274346: Support for additional content in an app-image. (P3) JDK-8274087: Windows DLL path not set correctly. (P4) JDK-8277647: [REDO] JDK-8277507 Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures (P4) JDK-8277507: Add jlink.debug system property while launching jpackage tests to help diagonize recent intermittent failures (P4) JDK-8271170: Add unit test for what jpackage app launcher puts in the environment (P4) JDK-8263155: Allow additional contents for DMG (P4) JDK-8277429: Conflicting jpackage static library name (P4) JDK-8269387: jpackage --add-launcher should have option to not create shortcuts for additional launchers (P4) JDK-8272815: jpackage --type rpm produces an error: Invalid or unsupported type: [null] (P4) JDK-8276084: Linux DEB Bundler: release number in outputted .deb file should be optional (P4) JDK-8276150: Quarantined jpackage apps are labeled as "damaged" (P4) JDK-8273040: Turning off JpAllowDowngrades (or Upgrades) (P4) JDK-8271868: Warn user when using mac-sign option with unsigned app-image. (P4) JDK-8271344: Windows product version issue tools/jshell: (P3) JDK-8273039: JShell crashes when naming variable or method "abstract" or "strictfp" (P3) JDK-8273257: jshell doesn't compile a sealed hierarchy with a sealed interface and a non-sealed leaf (P3) JDK-8270139: jshell InternalError crash for import of @Repeatable followed by unresolved ref (P3) JDK-8274784: jshell: Garbled character was displayed by System.out.println(...) on Japanese Windows (P4) JDK-8277328: jdk/jshell/CommandCompletionTest.java failures on Windows (P4) JDK-8268725: jshell does not support the --enable-native-access option (P4) JDK-8276149: jshell throws EOF error when throwing exception inside switch expression (P4) JDK-8272135: jshell: Method cannot use its overloaded version (P4) JDK-8274734: the method jdk.jshell.SourceCodeAnalysis documentation not working (P4) JDK-8273682: Upgrade Jline to 3.20.0 (P4) JDK-8276641: Use blessed modifier order in jshell tools/launcher: (P3) JDK-8278574: update --help-extra message to include default value of --finalization option (P3) JDK-8277365: Update the `java` tool specification with the --finalization option (P4) JDK-8268974: GetJREPath() JLI function fails to locate libjava.so if not standard Java launcher is used (P4) JDK-8268869: java in source-file mode suggests javac-only Xlint flags (P4) JDK-8235876: Misleading warning message in java source-file mode (P4) JDK-8269373: some tests in jdk/tools/launcher/ fails on localized Windows platform xml: (P4) JDK-8273278: Support XSLT on GraalVM Native Image--deterministic bytecode generation in XSLT (P4) JDK-8275186: Suppress warnings on non-serializable array component types in xml (P4) JDK-8268457: XML Transformer outputs Unicode supplementary character incorrectly to HTML (P5) JDK-8274464: Remove redundant stream() call before forEach in java.* modules (P5) JDK-8274525: Replace uses of StringBuffer with StringBuilder in java.xml xml/javax.xml.stream: (P4) JDK-8274415: Suppress warnings on non-serializable non-transient instance fields in java.xml xml/jaxp: (P4) JDK-8276141: XPathFactory set/getProperty method (P4) JDK-8276657: XSLT compiler tries to define a class with empty name