Skip to content

Commit fa4c962

Browse files
OracleLabsAutomationzapster
authored andcommitted
[GR-66545] Update labsjdk to 26+4-jvmci-b01.
PullRequest: graal/21260
2 parents 75f6db7 + 5ea09ac commit fa4c962

File tree

7 files changed

+73
-22
lines changed

7 files changed

+73
-22
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-26+2-83", "platformspecific": true, "extrabundles": ["static-libs"]},
11+
"galahad-jdk": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-26+4-323", "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
"oraclejdk24": {"name": "jpg-jdk", "version": "24", "build_id": "jdk-24.0.1+9", "platformspecific": true, "extrabundles": ["static-libs"]},
4747

48-
"oraclejdk-latest": {"name": "jpg-jdk", "version": "26", "build_id": "jdk-26+3", "platformspecific": true, "extrabundles": ["static-libs"]},
49-
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-26+3-jvmci-b01", "platformspecific": true },
50-
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-26+3-jvmci-b01-debug", "platformspecific": true },
51-
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-26+3-jvmci-b01-sulong", "platformspecific": true },
52-
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-26+3-jvmci-b01", "platformspecific": true },
53-
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-26+3-jvmci-b01-debug", "platformspecific": true },
54-
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-26+3-jvmci-b01-sulong", "platformspecific": true }
48+
"oraclejdk-latest": {"name": "jpg-jdk", "version": "26", "build_id": "jdk-26+4", "platformspecific": true, "extrabundles": ["static-libs"]},
49+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-26+4-jvmci-b01", "platformspecific": true },
50+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-26+4-jvmci-b01-debug", "platformspecific": true },
51+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-26+4-jvmci-b01-sulong", "platformspecific": true },
52+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-26+4-jvmci-b01", "platformspecific": true },
53+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-26+4-jvmci-b01-debug", "platformspecific": true },
54+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-26+4-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
"26", Map.of(
58-
"Oracle Corporation", createLabsJDKVersion("26+3", 1),
59-
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("26+3", 1)));
58+
"Oracle Corporation", createLabsJDKVersion("26+4", 1),
59+
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("26+4", 1)));
6060
private static final int NA = 0;
6161
/**
6262
* Minimum Java release supported by Graal.

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1607,13 +1607,26 @@ protected boolean useExplicitReachabilityFence(GraphBuilderContext b) {
16071607
return Options.ForceExplicitReachabilityFence.getValue(b.getOptions());
16081608
}
16091609
});
1610+
r.register(new InlineOnlyInvocationPlugin("get0", Receiver.class) {
1611+
@Override
1612+
public boolean apply(GraphBuilderContext b, ResolvedJavaMethod targetMethod, Receiver receiver) {
1613+
ValueNode offset = b.add(ConstantNode.forLong(HotSpotReplacementsUtil.referentOffset(b.getMetaAccess())));
1614+
AddressNode address = b.add(new OffsetAddressNode(receiver.get(true), offset));
1615+
FieldLocationIdentity locationIdentity = new FieldLocationIdentity(HotSpotReplacementsUtil.referentField(b.getMetaAccess()));
1616+
JavaReadNode read = b.add(new JavaReadNode(StampFactory.object(), JavaKind.Object, address, locationIdentity, BarrierType.REFERENCE_GET, MemoryOrderMode.PLAIN, true));
1617+
b.add(new MembarNode(MembarNode.FenceKind.NONE, locationIdentity));
1618+
b.addPush(JavaKind.Object, read);
1619+
return true;
1620+
}
1621+
});
16101622
r.register(new InlineOnlyInvocationPlugin("refersTo0", Receiver.class, Object.class) {
16111623
@Override
16121624
public boolean apply(GraphBuilderContext b, ResolvedJavaMethod targetMethod, Receiver receiver, ValueNode o) {
16131625
ValueNode offset = b.add(ConstantNode.forLong(HotSpotReplacementsUtil.referentOffset(b.getMetaAccess())));
16141626
AddressNode address = b.add(new OffsetAddressNode(receiver.get(true), offset));
16151627
FieldLocationIdentity locationIdentity = new FieldLocationIdentity(HotSpotReplacementsUtil.referentField(b.getMetaAccess()));
16161628
JavaReadNode read = b.add(new JavaReadNode(StampFactory.object(), JavaKind.Object, address, locationIdentity, BarrierType.WEAK_REFERS_TO, MemoryOrderMode.PLAIN, true));
1629+
b.add(new MembarNode(MembarNode.FenceKind.NONE, locationIdentity));
16171630
LogicNode objectEquals = b.add(ObjectEqualsNode.create(b.getConstantReflection(), b.getMetaAccess(), b.getOptions(), read, o, NodeView.DEFAULT));
16181631
b.addPush(JavaKind.Boolean, ConditionalNode.create(objectEquals, b.add(forBoolean(true)), b.add(forBoolean(false)), NodeView.DEFAULT));
16191632
return true;

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/hotspot/meta/UnimplementedGraalIntrinsics.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,8 +128,6 @@ public UnimplementedGraalIntrinsics(Architecture arch) {
128128
// handled by an intrinsic for StringUTF16.indexOfLatin1Unsafe
129129
"java/lang/StringUTF16.indexOfLatin1([BI[BII)I",
130130
"java/lang/StringUTF16.indexOfLatin1([B[B)I",
131-
// implemented through lowering
132-
"java/lang/ref/Reference.get()Ljava/lang/Object;",
133131
// Relevant for Java flight recorder
134132
// [GR-10106] These JFR intrinsics are used for firing socket/file events
135133
// via Java instrumentation and are of low priority.

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

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,17 +50,17 @@
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+23/src/hotspot/os/linux/cgroupSubsystem_linux.cpp")
54-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupSubsystem_linux.hpp")
53+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/cgroupSubsystem_linux.cpp")
54+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/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")
57-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupV1Subsystem_linux.cpp")
58-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupV1Subsystem_linux.hpp")
59-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp")
60-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp")
61-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/os/linux/osContainer_linux.cpp")
62-
@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-26+2/src/hotspot/os/linux/os_linux.cpp")
57+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/cgroupV1Subsystem_linux.cpp")
58+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/cgroupV1Subsystem_linux.hpp")
59+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/cgroupV2Subsystem_linux.cpp")
60+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/cgroupV2Subsystem_linux.hpp")
61+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/osContainer_linux.cpp")
62+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/os/linux/osContainer_linux.hpp")
63+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/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")
@@ -85,7 +85,7 @@
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")
8787
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+26/src/hotspot/share/memory/allocation.cpp")
88-
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+3/src/hotspot/share/runtime/globals.hpp")
88+
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+4/src/hotspot/share/runtime/globals.hpp")
8989
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-26+3/src/hotspot/share/utilities/debug.cpp")
9090
@BasedOnJDKFile("https://github.com/openjdk/jdk/blob/jdk-25+18/src/hotspot/share/utilities/debug.hpp")
9191
public class ContainerLibrary {

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/Target_java_lang_ref_Reference.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,12 @@ public final class Target_java_lang_ref_Reference<T> {
123123
@KeepOriginal
124124
native T get();
125125

126+
@Substitute
127+
@SuppressWarnings("unchecked")
128+
private T get0() {
129+
return (T) ReferenceInternals.getReferent(SubstrateUtil.cast(this, Reference.class));
130+
}
131+
126132
@KeepOriginal
127133
native void clear();
128134

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_jdk_internal_util_StaticProperty.java

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,18 @@ final class Target_jdk_internal_util_StaticProperty {
9696
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset)//
9797
private static String JAVA_PROPERTIES_DATE;
9898

99+
@Alias//
100+
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset)//
101+
private static String STDIN_ENCODING;
102+
103+
@Alias//
104+
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset)//
105+
private static String STDERR_ENCODING;
106+
107+
@Alias//
108+
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset)//
109+
private static String STDOUT_ENCODING;
110+
99111
@Alias//
100112
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset)//
101113
private static String SUN_JNU_ENCODING;
@@ -193,6 +205,10 @@ final class Target_jdk_internal_util_StaticProperty {
193205
NATIVE_ENCODING = p.getInitialProperty("native.encoding");
194206
FILE_ENCODING = p.getInitialProperty("file.encoding");
195207
JAVA_PROPERTIES_DATE = p.getInitialProperty("java.properties.date");
208+
STDIN_ENCODING = p.getInitialProperty("stdin.encoding");
209+
STDERR_ENCODING = p.getInitialProperty("stderr.encoding");
210+
STDOUT_ENCODING = p.getInitialProperty("stdout.encoding");
211+
196212
SUN_JNU_ENCODING = p.getInitialProperty("sun.jnu.encoding");
197213
JAVA_LOCALE_USE_OLD_ISO_CODES = p.getInitialProperty("java.locale.useOldISOCodes", "");
198214

@@ -297,6 +313,24 @@ public static String javaPropertiesDate() {
297313
return JAVA_PROPERTIES_DATE;
298314
}
299315

316+
@Substitute
317+
public static String stdinEncoding() {
318+
assert Objects.equals(STDIN_ENCODING, SystemPropertiesSupport.singleton().getInitialProperty("stdin.encoding"));
319+
return STDIN_ENCODING;
320+
}
321+
322+
@Substitute
323+
public static String stdoutEncoding() {
324+
assert Objects.equals(STDOUT_ENCODING, SystemPropertiesSupport.singleton().getInitialProperty("stdout.encoding"));
325+
return STDOUT_ENCODING;
326+
}
327+
328+
@Substitute
329+
public static String stderrEncoding() {
330+
assert Objects.equals(STDERR_ENCODING, SystemPropertiesSupport.singleton().getInitialProperty("stderr.encoding"));
331+
return STDERR_ENCODING;
332+
}
333+
300334
@Substitute
301335
public static String jnuEncoding() {
302336
assert Objects.equals(SUN_JNU_ENCODING, SystemPropertiesSupport.singleton().getInitialProperty("sun.jnu.encoding"));

0 commit comments

Comments
 (0)