Skip to content

Commit 8eef57c

Browse files
OracleLabsAutomationzapster
authored andcommitted
[GR-69666] Update labsjdk to 25+37-jvmci-b04
PullRequest: graal/22251
2 parents 8b715ab + cce9976 commit 8eef57c

File tree

22 files changed

+178
-20
lines changed

22 files changed

+178
-20
lines changed

common.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@
5555
"graalvm-ee-25-ea": {"name": "graalvm-jdk", "version": "25.0.0", "ea": "36", "platformspecific": true },
5656

5757
"oraclejdk-latest": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+37", "platformspecific": true, "extrabundles": ["static-libs"]},
58-
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+37-jvmci-b03", "platformspecific": true },
59-
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+37-jvmci-b03-debug", "platformspecific": true },
60-
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+37-jvmci-b03-sulong", "platformspecific": true },
61-
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+37-jvmci-b03", "platformspecific": true },
62-
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+37-jvmci-b03-debug", "platformspecific": true },
63-
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+37-jvmci-b03-sulong", "platformspecific": true }
58+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+37-jvmci-b04", "platformspecific": true },
59+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+37-jvmci-b04-debug", "platformspecific": true },
60+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+37-jvmci-b04-sulong", "platformspecific": true },
61+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+37-jvmci-b04", "platformspecific": true },
62+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+37-jvmci-b04-debug", "platformspecific": true },
63+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+37-jvmci-b04-sulong", "platformspecific": true }
6464
},
6565

6666
"eclipse": {

compiler/ci/ci_common/gate.jsonnet

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -550,8 +550,7 @@
550550
local style_builds = [self.make_build(self.jdk_latest, "linux-amd64", "style").build + {
551551
environment+: {
552552
# Run the strict JVMCI version check, i.e., that JVMCIVersionCheck.JVMCI_MIN_VERSION matches the versions in common.json.
553-
# temporarily disable until labsjdk-ce|ee-25 is gone from common.json
554-
# JVMCI_VERSION_CHECK: "strict",
553+
JVMCI_VERSION_CHECK: "strict",
555554
},
556555
}],
557556

compiler/mx.compiler/mx_compiler.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1243,12 +1243,13 @@ def get_latest_jvmci_version():
12431243
# only compare the same major versions
12441244
if latest == 'not found':
12451245
latest = current
1246-
elif latest != current:
1247-
# All JVMCI JDKs in common.json with the same major version
1248-
# are expected to have the same JVMCI version.
1249-
# If they don't then the repo is in some transitionary state
1250-
# (e.g. making a JVMCI release) so skip the check.
1251-
return False, distribution
1246+
# [GR-69961] temporarily disable until labsjdk-ce|ee-25 is gone from common.json
1247+
# elif latest != current:
1248+
# # All JVMCI JDKs in common.json with the same major version
1249+
# # are expected to have the same JVMCI version.
1250+
# # If they don't then the repo is in some transitionary state
1251+
# # (e.g. making a JVMCI release) so skip the check.
1252+
# return False, distribution
12521253
return not isinstance(latest, str), latest
12531254

12541255
version_check_setting = os.environ.get('JVMCI_VERSION_CHECK', None)

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
@@ -57,8 +57,8 @@ public final class JVMCIVersionCheck {
5757
// Checkstyle: stop stable iteration order check
5858
private static final Map<String, Map<String, Version>> JVMCI_MIN_VERSIONS = Map.of(
5959
"25", Map.of(
60-
"Oracle Corporation", createLabsJDKVersion("25+37", 1),
61-
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+37", 1)));
60+
"Oracle Corporation", createLabsJDKVersion("25+37", 4),
61+
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+37", 4)));
6262
// Checkstyle: resume stable iteration order check
6363

6464
private static final int NA = 0;

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

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@
3131

3232
import jdk.graal.compiler.core.common.LibGraalSupport;
3333
import jdk.graal.compiler.debug.GraalError;
34-
3534
import jdk.vm.ci.meta.Assumptions;
3635
import jdk.vm.ci.meta.JavaConstant;
3736
import jdk.vm.ci.meta.JavaKind;
37+
import jdk.vm.ci.meta.JavaType;
3838
import jdk.vm.ci.meta.MetaUtil;
3939
import jdk.vm.ci.meta.ResolvedJavaField;
4040
import jdk.vm.ci.meta.ResolvedJavaMethod;
@@ -240,6 +240,11 @@ public ResolvedJavaType getArrayClass() {
240240
return arrayOfType;
241241
}
242242

243+
@Override
244+
public List<JavaType> getPermittedSubclasses() {
245+
throw new UnsupportedOperationException();
246+
}
247+
243248
@Override
244249
public JavaKind getJavaKind() {
245250
return JavaKind.Object;

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/hotspot/replaycomp/proxy/HotSpotResolvedJavaTypeProxy.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import jdk.vm.ci.meta.Assumptions;
4848
import jdk.vm.ci.meta.JavaConstant;
4949
import jdk.vm.ci.meta.JavaKind;
50+
import jdk.vm.ci.meta.JavaType;
5051
import jdk.vm.ci.meta.ResolvedJavaField;
5152
import jdk.vm.ci.meta.ResolvedJavaMethod;
5253
import jdk.vm.ci.meta.ResolvedJavaType;
@@ -84,6 +85,15 @@ public final HotSpotResolvedObjectType getArrayClass() {
8485
return (HotSpotResolvedObjectType) handle(getArrayClassMethod, getArrayClassInvokable);
8586
}
8687

88+
private static final SymbolicMethod getPermittedSubclassesMethod = method("getPermittedSubclasses");
89+
private static final InvokableMethod getPermittedSubclassesInvokable = (receiver, args) -> ((HotSpotResolvedJavaType) receiver).getPermittedSubclasses();
90+
91+
@Override
92+
@SuppressWarnings("unchecked")
93+
public List<JavaType> getPermittedSubclasses() {
94+
return (List<JavaType>) handle(getPermittedSubclassesMethod, getPermittedSubclassesInvokable);
95+
}
96+
8797
@Override
8898
protected final boolean isBeingInitialized() {
8999
throw new UnsupportedOperationException("isBeingInitialized");

espresso/src/com.oracle.truffle.espresso.jvmci/src/com/oracle/truffle/espresso/jvmci/meta/EspressoResolvedArrayType.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import jdk.vm.ci.common.JVMCIError;
3434
import jdk.vm.ci.meta.Assumptions;
3535
import jdk.vm.ci.meta.JavaKind;
36+
import jdk.vm.ci.meta.JavaType;
3637
import jdk.vm.ci.meta.ResolvedJavaField;
3738
import jdk.vm.ci.meta.ResolvedJavaMethod;
3839
import jdk.vm.ci.meta.ResolvedJavaType;
@@ -216,6 +217,11 @@ public EspressoResolvedArrayType getArrayClass() {
216217
return arrayType;
217218
}
218219

220+
@Override
221+
public List<JavaType> getPermittedSubclasses() {
222+
return null;
223+
}
224+
219225
@Override
220226
public EspressoResolvedJavaType resolve(ResolvedJavaType accessingClass) {
221227
EspressoResolvedJavaType resolvedElementalType = getElementalType().resolve(accessingClass);

espresso/src/com.oracle.truffle.espresso.jvmci/src/com/oracle/truffle/espresso/jvmci/meta/EspressoResolvedInstanceType.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import java.lang.annotation.Annotation;
3737
import java.lang.reflect.Modifier;
3838
import java.util.Arrays;
39+
import java.util.Collections;
3940
import java.util.Comparator;
4041
import java.util.List;
4142

@@ -270,6 +271,22 @@ public ResolvedJavaType getComponentType() {
270271
return null;
271272
}
272273

274+
@Override
275+
public List<JavaType> getPermittedSubclasses() {
276+
Class<?>[] permittedSubclass = getPermittedSubclasses0(getMirror());
277+
if (permittedSubclass == null) {
278+
return null;
279+
}
280+
ResolvedJavaType[] permittedSubtypes = new ResolvedJavaType[permittedSubclass.length];
281+
MetaAccessProvider metaAccess = runtime().getHostJVMCIBackend().getMetaAccess();
282+
for (int i = 0; i != permittedSubtypes.length; i++) {
283+
permittedSubtypes[i] = metaAccess.lookupJavaType(permittedSubclass[i]);
284+
}
285+
return Collections.unmodifiableList(Arrays.asList(permittedSubtypes));
286+
}
287+
288+
private static native Class<?>[] getPermittedSubclasses0(Class<?> mirror);
289+
273290
@Override
274291
public boolean isDefinitelyResolvedWithRespectTo(ResolvedJavaType accessingClass) {
275292
assert accessingClass != null;

espresso/src/com.oracle.truffle.espresso.jvmci/src/com/oracle/truffle/espresso/jvmci/meta/EspressoResolvedPrimitiveType.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import jdk.vm.ci.meta.Assumptions;
3434
import jdk.vm.ci.meta.JavaConstant;
3535
import jdk.vm.ci.meta.JavaKind;
36+
import jdk.vm.ci.meta.JavaType;
3637
import jdk.vm.ci.meta.ResolvedJavaField;
3738
import jdk.vm.ci.meta.ResolvedJavaMethod;
3839
import jdk.vm.ci.meta.ResolvedJavaType;
@@ -183,6 +184,11 @@ public ResolvedJavaType getComponentType() {
183184
return null;
184185
}
185186

187+
@Override
188+
public List<JavaType> getPermittedSubclasses() {
189+
return null;
190+
}
191+
186192
@Override
187193
public JavaKind getJavaKind() {
188194
return kind;

espresso/src/com.oracle.truffle.espresso/src/com/oracle/truffle/espresso/substitutions/jvmci/Target_com_oracle_truffle_espresso_jvmci_meta_EspressoResolvedInstanceType.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,11 @@ static StaticObject doDefault(StaticObject self,
8484
}
8585
}
8686

87+
@Substitution
88+
public static @JavaType(Class[].class) StaticObject getPermittedSubclasses0(@JavaType(Class.class) StaticObject self, @Inject EspressoContext context) {
89+
return context.getVM().JVM_GetPermittedSubclasses(self);
90+
}
91+
8792
private static StaticObject toJVMCIFields(Field[] fields, StaticObject holder, DirectCallNode fieldConstructor, EspressoContext context, Meta meta) {
8893
int count = 0;
8994
for (Field f : fields) {

0 commit comments

Comments
 (0)