Skip to content

Commit 54e7d71

Browse files
[GR-65034] Update labsjdk to 25+23-jvmci-b01
PullRequest: graal/20830
2 parents ed067f1 + 935ab2f commit 54e7d71

File tree

14 files changed

+120
-44
lines changed

14 files changed

+120
-44
lines changed

common.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
"COMMENT.jdks": "When adding or removing JDKs keep in sync with JDKs in ci/common.jsonnet",
1010
"jdks": {
11-
"galahad-jdk": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+22-2657", "platformspecific": true, "extrabundles": ["static-libs"]},
11+
"galahad-jdk": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+23-2725", "platformspecific": true, "extrabundles": ["static-libs"]},
1212

1313
"oraclejdk17": {"name": "jpg-jdk", "version": "17.0.7", "build_id": "jdk-17.0.7+8", "platformspecific": true, "extrabundles": ["static-libs"]},
1414
"labsjdk-ce-17": {"name": "labsjdk", "version": "ce-17.0.7+4-jvmci-23.1-b02", "platformspecific": true },
@@ -45,13 +45,13 @@
4545

4646
"oraclejdk23": {"name": "jpg-jdk", "version": "23", "build_id": "jdk-23+37", "platformspecific": true, "extrabundles": ["static-libs"]},
4747

48-
"oraclejdk-latest": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+22", "platformspecific": true, "extrabundles": ["static-libs"]},
49-
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+22-jvmci-b01", "platformspecific": true },
50-
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+22-jvmci-b01-debug", "platformspecific": true },
51-
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+22-jvmci-b01-sulong", "platformspecific": true },
52-
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+22-jvmci-b01", "platformspecific": true },
53-
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+22-jvmci-b01-debug", "platformspecific": true },
54-
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+22-jvmci-b01-sulong", "platformspecific": true }
48+
"oraclejdk-latest": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+23", "platformspecific": true, "extrabundles": ["static-libs"]},
49+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+23-jvmci-b01", "platformspecific": true },
50+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+23-jvmci-b01-debug", "platformspecific": true },
51+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+23-jvmci-b01-sulong", "platformspecific": true },
52+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+23-jvmci-b01", "platformspecific": true },
53+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+23-jvmci-b01-debug", "platformspecific": true },
54+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+23-jvmci-b01-sulong", "platformspecific": true }
5555
},
5656

5757
"eclipse": {

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/hotspot/JVMCIVersionCheck.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ public final class JVMCIVersionCheck {
5555
*/
5656
private static final Map<String, Map<String, Version>> JVMCI_MIN_VERSIONS = Map.of(
5757
"25", Map.of(
58-
"Oracle Corporation", createLabsJDKVersion("25+22", 1),
59-
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+22", 1)));
58+
"Oracle Corporation", createLabsJDKVersion("25+23", 1),
59+
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+23", 1)));
6060
private static final int NA = 0;
6161
/**
6262
* Minimum Java release supported by Graal.

substratevm/mx.substratevm/mx_substratevm.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -609,6 +609,9 @@ def run_nic_conditional_config_test(agent_path, conditional_config_filter_path):
609609
'experimental-conditional-config-part']
610610
jvm_unittest(['-agentpath:' + agent_path + '=' + ','.join(agent_opts),
611611
'-Dcom.oracle.svm.configure.test.conditionalconfig.PartialConfigurationGenerator.enabled=true',
612+
'--add-exports=jdk.graal.compiler/jdk.graal.compiler.options=ALL-UNNAMED',
613+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=ALL-UNNAMED',
614+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=ALL-UNNAMED',
612615
'com.oracle.svm.configure.test.conditionalconfig.PartialConfigurationGenerator#' + test_case])
613616
config_output_dir = join(nic_test_dir, 'config-output')
614617
nic_exe = mx.cmd_suffix(join(mx.JDKConfig(home=mx_sdk_vm_impl.graalvm_output()).home, 'bin', 'native-image-configure'))
@@ -621,6 +624,9 @@ def run_nic_conditional_config_test(agent_path, conditional_config_filter_path):
621624
jvm_unittest(
622625
['-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier.configpath=' + config_output_dir,
623626
"-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier.enabled=true",
627+
'--add-exports=jdk.graal.compiler/jdk.graal.compiler.options=ALL-UNNAMED',
628+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=ALL-UNNAMED',
629+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=ALL-UNNAMED',
624630
'com.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier'])
625631

626632

@@ -635,10 +641,16 @@ def run_agent_conditional_config_test(agent_path, conditional_config_filter_path
635641
# This run generates the configuration from different test cases
636642
jvm_unittest(['-agentpath:' + agent_path + '=' + ','.join(agent_opts),
637643
'-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationGenerator.enabled=true',
644+
'--add-exports=jdk.graal.compiler/jdk.graal.compiler.options=ALL-UNNAMED',
645+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=ALL-UNNAMED',
646+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=ALL-UNNAMED',
638647
'com.oracle.svm.configure.test.conditionalconfig.ConfigurationGenerator'])
639648
# This run verifies that the generated configuration matches the expected one
640649
jvm_unittest(['-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier.configpath=' + config_dir,
641-
"-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier.enabled=true",
650+
'-Dcom.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier.enabled=true',
651+
'--add-exports=jdk.graal.compiler/jdk.graal.compiler.options=ALL-UNNAMED',
652+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=ALL-UNNAMED',
653+
'--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=ALL-UNNAMED',
642654
'com.oracle.svm.configure.test.conditionalconfig.ConfigurationVerifier'])
643655

644656

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/amd64/AMD64LibCHelper.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
* - substratevm/src/com.oracle.svm.native.libchelper/include/amd64hotspotcpuinfo.h
4444
* - substratevm/src/com.oracle.svm.native.libchelper/src/cpuid.c
4545
*/
46-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+10/src/hotspot/cpu/x86/vm_version_x86.hpp#L41-L328")
46+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/cpu/x86/vm_version_x86.hpp#L41-L348")
4747
@CLibrary(value = "libchelper", requireStatic = true)
4848
public class AMD64LibCHelper {
4949
@Platforms(Platform.AMD64.class)
@@ -314,6 +314,14 @@ public interface CPUFeatures extends PointerBase {
314314
@AllowNarrowingCast
315315
@CField
316316
boolean fAVX512_FP16();
317+
318+
@AllowNarrowingCast
319+
@CField
320+
boolean fAVX10_1();
321+
322+
@AllowNarrowingCast
323+
@CField
324+
boolean fAVX10_2();
317325
}
318326
// Checkstyle: resume
319327
}

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/locale/LocaleCHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939

4040
@CContext(LocaleDirectives.class)
4141
@CLibrary(value = "libchelper", requireStatic = true, dependsOn = "java")
42-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-24+13/src/java.base/unix/native/libjava/locale_str.h")
42+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/java.base/unix/native/libjava/locale_str.h")
4343
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-24+13/src/java.base/windows/native/libjava/locale_str.h")
4444
class LocaleCHelper {
4545
// Checkstyle: stop

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/ContainerLibrary.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
// The following annotations are for files in `src/hotspot`, which are copied from the JDK
5151
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/java.base/share/native/include/jni.h")
5252
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/java.base/unix/native/include/jni_md.h")
53-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+19/src/hotspot/os/linux/cgroupSubsystem_linux.cpp")
53+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/os/linux/cgroupSubsystem_linux.cpp")
5454
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupSubsystem_linux.hpp")
5555
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupUtil_linux.cpp")
5656
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupUtil_linux.hpp")
@@ -60,7 +60,7 @@
6060
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp")
6161
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/osContainer_linux.cpp")
6262
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/osContainer_linux.hpp")
63-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+21/src/hotspot/os/linux/os_linux.cpp")
63+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/os/linux/os_linux.cpp")
6464
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/os_linux.hpp")
6565
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/os_linux.inline.hpp")
6666
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/posix/include/jvm_md.h")
@@ -78,13 +78,13 @@
7878
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+22/src/hotspot/share/utilities/compilerWarnings_gcc.hpp")
7979
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+22/src/hotspot/share/utilities/compilerWarnings.hpp")
8080
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/utilities/globalDefinitions_gcc.hpp")
81-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+21/src/hotspot/share/utilities/globalDefinitions.hpp")
81+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/share/utilities/globalDefinitions.hpp")
8282
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+21/src/hotspot/share/utilities/macros.hpp")
83-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/utilities/ostream.cpp")
84-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+21/src/hotspot/share/utilities/ostream.hpp")
83+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/share/utilities/ostream.cpp")
84+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/share/utilities/ostream.hpp")
8585
// The following annotations are for files in `src/svm`, which are completely customized for SVM
8686
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/logging/log.hpp")
87-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/memory/allocation.cpp")
87+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/share/memory/allocation.cpp")
8888
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+22/src/hotspot/share/runtime/globals.hpp")
8989
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+21/src/hotspot/share/utilities/debug.cpp")
9090
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/utilities/debug.hpp")
Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,31 +30,23 @@
3030

3131
import com.oracle.svm.core.annotate.Alias;
3232
import com.oracle.svm.core.annotate.RecomputeFieldValue;
33-
import com.oracle.svm.core.annotate.Substitute;
3433
import com.oracle.svm.core.annotate.TargetClass;
3534

3635
/**
37-
* Substitution to initialize {@link #catalog} at build time.
36+
* Substitution to initialize {@link #JDKCATALOG} at build time.
3837
*
3938
* JDK-8306055 introduced a built-in Catalog to JDK XML module in JDK 22. Without special treatment,
4039
* the initialization code would pull intermediate types (e.g. {@code CatalogReader}) into the image
41-
* heap. To avoid this, we initialize the catalog at build time and substitute the {@link #init}
42-
* method to be empty.
40+
* heap. To avoid this, we initialize the catalog at build time.
4341
*
4442
* Ideally, we would initialize all of {@code jdk.xml} at run time, but that is too intrusive at the
4543
* current point in time (GR-50683).
4644
*/
47-
@TargetClass(className = "jdk.xml.internal.JdkCatalog")
48-
public final class Target_jdk_xml_internal_JdkCatalog {
45+
@TargetClass(className = "jdk.xml.internal.JdkXmlConfig$CatalogHolder")
46+
public final class Target_jdk_xml_internal_JdkXmlConfig_CatalogHolder {
4947
@Alias //
5048
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = JdkCatalogSupplier.class, isFinal = true) //
51-
public static Target_javax_xml_catalog_Catalog catalog;
52-
53-
@Substitute
54-
@SuppressWarnings("unused")
55-
public static void init(String resolve) {
56-
// initialized at build time
57-
}
49+
public static Target_javax_xml_catalog_Catalog JDKCATALOG;
5850
}
5951

6052
@TargetClass(className = "javax.xml.catalog.Catalog")
@@ -75,8 +67,8 @@ final class Target_javax_xml_parsers_SAXParser {
7567
final class JdkCatalogSupplier implements FieldValueTransformer {
7668

7769
/**
78-
* Verifies that {@link Target_jdk_xml_internal_JdkCatalog#catalog} is non-null. The
79-
* initialization is triggered in
70+
* Verifies that {@link Target_jdk_xml_internal_JdkXmlConfig_CatalogHolder#JDKCATALOG} is
71+
* non-null. The initialization is triggered in
8072
* {@code com.oracle.svm.hosted.xml.JavaxXmlClassAndResourcesLoaderFeature#initializeJdkCatalog()}
8173
*/
8274
@Override

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jvmti/headers/JvmtiDirectives.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
import com.oracle.svm.core.SubstrateOptions;
3636
import com.oracle.svm.core.util.BasedOnJDKFile;
3737

38-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+6/src/hotspot/share/prims/jvmti.xml")
38+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+23/src/hotspot/share/prims/jvmti.xml")
3939
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-24+11/src/hotspot/share/prims/jvmtiH.xsl")
4040
class JvmtiDirectives implements CContext.Directives {
4141
private final Path jdkIncludeDir = Paths.get(System.getProperty("java.home")).resolve("include");

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/xml/JavaxXmlClassAndResourcesLoaderFeature.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,16 +74,16 @@ public void beforeAnalysis(BeforeAnalysisAccess access) {
7474
}
7575

7676
/**
77-
* Initialize the {@code JdkCatalog#catalog} field. We do this eagerly (instead of e.g. in a
77+
* Initialize the {@code CatalogHolder#catalog} field. We do this eagerly (instead of e.g. in a
7878
* {@link FieldValueTransformer}) to work around a race condition in
7979
* XMLSecurityManager#prepareCatalog (JDK-8350189).
8080
*/
8181
private static void initializeJdkCatalog() {
8282
if (ModuleLayer.boot().findModule("java.xml").isPresent()) {
83-
// Ensure the JdkCatalog#catalog field is initialized.
84-
Class<?> xmlSecurityManager = ReflectionUtil.lookupClass(false, "jdk.xml.internal.XMLSecurityManager");
83+
// Ensure the JdkXmlConfig$CatalogHolder#catalog field is initialized.
84+
Class<?> xmlSecurityManager = ReflectionUtil.lookupClass(false, "jdk.xml.internal.JdkXmlConfig$CatalogHolder");
8585
// The constructor call prepareCatalog which will call JdkCatalog#init.
86-
ReflectionUtil.newInstance(xmlSecurityManager);
86+
ReflectionUtil.readStaticField(xmlSecurityManager, "JDKCATALOG");
8787
}
8888
}
8989
}

substratevm/src/com.oracle.svm.native.libchelper/include/amd64cpufeatures.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,6 @@ typedef struct {
8989
uint8_t fAPX_F;
9090
uint8_t fSHA512;
9191
uint8_t fAVX512_FP16;
92+
uint8_t fAVX10_1;
93+
uint8_t fAVX10_2;
9294
} CPUFeatures;

0 commit comments

Comments
 (0)