Skip to content

Commit dbdbfa8

Browse files
OracleLabsAutomationzapster
authored andcommitted
[GR-65610] Update labsjdk to 25+26-jvmci-b01
PullRequest: graal/21036
2 parents 10afb04 + 6296463 commit dbdbfa8

File tree

63 files changed

+902
-165
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+902
-165
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+26-3156", "platformspecific": true, "extrabundles": ["static-libs"]},
11+
"galahad-jdk": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+26-3319", "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": "25", "build_id": "jdk-25+25", "platformspecific": true, "extrabundles": ["static-libs"]},
49-
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+25-jvmci-b01", "platformspecific": true },
50-
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+25-jvmci-b01-debug", "platformspecific": true },
51-
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+25-jvmci-b01-sulong", "platformspecific": true },
52-
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+25-jvmci-b01", "platformspecific": true },
53-
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+25-jvmci-b01-debug", "platformspecific": true },
54-
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+25-jvmci-b01-sulong", "platformspecific": true }
48+
"oraclejdk-latest": {"name": "jpg-jdk", "version": "25", "build_id": "jdk-25+26", "platformspecific": true, "extrabundles": ["static-libs"]},
49+
"labsjdk-ce-latest": {"name": "labsjdk", "version": "ce-25+26-jvmci-b01", "platformspecific": true },
50+
"labsjdk-ce-latestDebug": {"name": "labsjdk", "version": "ce-25+26-jvmci-b01-debug", "platformspecific": true },
51+
"labsjdk-ce-latest-llvm": {"name": "labsjdk", "version": "ce-25+26-jvmci-b01-sulong", "platformspecific": true },
52+
"labsjdk-ee-latest": {"name": "labsjdk", "version": "ee-25+26-jvmci-b01", "platformspecific": true },
53+
"labsjdk-ee-latestDebug": {"name": "labsjdk", "version": "ee-25+26-jvmci-b01-debug", "platformspecific": true },
54+
"labsjdk-ee-latest-llvm": {"name": "labsjdk", "version": "ee-25+26-jvmci-b01-sulong", "platformspecific": true }
5555
},
5656

5757
"eclipse": {
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
/*
2+
* Copyright (c) 2025, Oracle and/or its affiliates. All rights reserved.
3+
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4+
*
5+
* This code is free software; you can redistribute it and/or modify it
6+
* under the terms of the GNU General Public License version 2 only, as
7+
* published by the Free Software Foundation. Oracle designates this
8+
* particular file as subject to the "Classpath" exception as provided
9+
* by Oracle in the LICENSE file that accompanied this code.
10+
*
11+
* This code is distributed in the hope that it will be useful, but WITHOUT
12+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14+
* version 2 for more details (a copy is included in the LICENSE file that
15+
* accompanied this code).
16+
*
17+
* You should have received a copy of the GNU General Public License version
18+
* 2 along with this work; if not, write to the Free Software Foundation,
19+
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20+
*
21+
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22+
* or visit www.oracle.com if you need additional information or have any
23+
* questions.
24+
*/
25+
package jdk.graal.compiler.replacements.test;
26+
27+
import org.junit.Test;
28+
29+
import jdk.graal.compiler.jtt.JTTTest;
30+
31+
public class MathCbrtTest extends JTTTest {
32+
33+
public double cbrt(double d) {
34+
return Math.cbrt(d);
35+
}
36+
37+
@Test
38+
public void testCbrt() {
39+
for (double d = -3.0d; d <= 3.0D; d += 0.01D) {
40+
test("cbrt", d);
41+
}
42+
43+
double[] inputs = {Math.PI / 2, Math.PI, -1.0D, Double.MAX_VALUE, Double.MIN_VALUE, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY,
44+
Double.longBitsToDouble(0x7fffffffffffffffL), Double.longBitsToDouble(0xffffffffffffffffL)};
45+
for (double d : inputs) {
46+
test("cbrt", d);
47+
}
48+
}
49+
}

compiler/src/jdk.graal.compiler.test/src/jdk/graal/compiler/replacements/test/StandardMethodSubstitutionsTest.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2012, 2024, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2012, 2025, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -53,17 +53,21 @@ public class StandardMethodSubstitutionsTest extends MethodSubstitutionTest {
5353
public void testMathSubstitutions() {
5454
assertInGraph(assertNotInGraph(testGraph("mathAbs"), IfNode.class), AbsNode.class); // Java
5555
double value = 34567.891D;
56+
5657
testGraph("mathCos");
5758
testGraph("mathLog");
5859
testGraph("mathLog10");
5960
testGraph("mathSin");
6061
testGraph("mathSqrt");
6162
testGraph("mathTan");
6263
testGraph("mathAll");
63-
6464
if (getReplacements().hasSubstitution(getResolvedJavaMethod(Math.class, "tanh"), getInitialOptions())) {
6565
testGraph("mathTanh");
6666
}
67+
if (getReplacements().hasSubstitution(getResolvedJavaMethod(Math.class, "cbrt"), getInitialOptions())) {
68+
testGraph("mathCbrt");
69+
}
70+
testGraph("mathCbrt");
6771

6872
test("mathCos", value);
6973
test("mathLog", value);
@@ -72,6 +76,7 @@ public void testMathSubstitutions() {
7276
test("mathSqrt", value);
7377
test("mathTan", value);
7478
test("mathTanh", value);
79+
test("mathCbrt", value);
7580
test("mathAll", value);
7681
}
7782

@@ -141,6 +146,10 @@ public static double mathTanh(double value) {
141146
return Math.tanh(value);
142147
}
143148

149+
public static double mathCbrt(double value) {
150+
return Math.cbrt(value);
151+
}
152+
144153
public static double mathAll(double value) {
145154
return Math.sqrt(value) + Math.log(value) + Math.log10(value) + Math.sin(value) + Math.cos(value) + Math.tan(value);
146155
}

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/asm/amd64/AMD64Assembler.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5036,6 +5036,10 @@ public final void incq(AMD64Address dst) {
50365036
AMD64MOp.INC.emit(this, OperandSize.QWORD, dst);
50375037
}
50385038

5039+
public final void movapd(Register dst, AMD64Address src) {
5040+
SSEOp.MOVAPD.emit(this, OperandSize.PD, dst, src);
5041+
}
5042+
50395043
public final void movapd(Register dst, Register src) {
50405044
SSEOp.MOVAPD.emit(this, OperandSize.PD, dst, src);
50415045
}
@@ -5299,6 +5303,10 @@ public final void orl(Register dst, int imm32) {
52995303
AMD64BinaryArithmetic.OR.getMIOpcode(OperandSize.DWORD, isByte(imm32)).emit(this, OperandSize.DWORD, dst, imm32);
53005304
}
53015305

5306+
public final void orpd(Register dst, Register src) {
5307+
SSEOp.OR.emit(this, OperandSize.PD, dst, src);
5308+
}
5309+
53025310
public final void orq(Register dst, Register src) {
53035311
AMD64BinaryArithmetic.OR.rmOp.emit(this, OperandSize.QWORD, dst, src);
53045312
}

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/core/amd64/AMD64ArithmeticLIRGenerator.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@
135135
import jdk.graal.compiler.lir.amd64.AMD64CountTrailingZerosOp;
136136
import jdk.graal.compiler.lir.amd64.AMD64FloatToHalfFloatOp;
137137
import jdk.graal.compiler.lir.amd64.AMD64HalfFloatToFloatOp;
138+
import jdk.graal.compiler.lir.amd64.AMD64MathCbrtOp;
138139
import jdk.graal.compiler.lir.amd64.AMD64MathCopySignOp;
139140
import jdk.graal.compiler.lir.amd64.AMD64MathCosOp;
140141
import jdk.graal.compiler.lir.amd64.AMD64MathExpOp;
@@ -1311,6 +1312,11 @@ public Value emitMathExp(Value input) {
13111312
return new AMD64MathExpOp().emitLIRWrapper(getLIRGen(), input);
13121313
}
13131314

1315+
@Override
1316+
public Value emitMathCbrt(Value input) {
1317+
return new AMD64MathCbrtOp().emitLIRWrapper(getLIRGen(), input);
1318+
}
1319+
13141320
@Override
13151321
public Value emitMathPow(Value x, Value y) {
13161322
return new AMD64MathPowOp().emitLIRWrapper(getLIRGen(), x, y);

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,7 @@ private long getZGCAddressField(String name) {
682682
public final long arithmeticLogAddress = getFieldValue("CompilerToVM::Data::dlog", Long.class, "address");
683683
public final long arithmeticLog10Address = getFieldValue("CompilerToVM::Data::dlog10", Long.class, "address");
684684
public final long arithmeticPowAddress = getFieldValue("CompilerToVM::Data::dpow", Long.class, "address");
685+
public final long arithmeticCbrtAddress = getFieldValue("CompilerToVM::Data::dcbrt", Long.class, "address");
685686

686687
public final long fremAddress = getAddress("SharedRuntime::frem");
687688
public final long dremAddress = getAddress("SharedRuntime::drem");

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+25", 1),
59-
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+25", 1)));
58+
"Oracle Corporation", createLabsJDKVersion("25+26", 1),
59+
DEFAULT_VENDOR_ENTRY, createLabsJDKVersion("25+26", 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/SnippetResolvedJavaMethod.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,11 @@ public boolean isDefault() {
115115
throw new UnsupportedOperationException();
116116
}
117117

118+
@Override
119+
public boolean isDeclared() {
120+
throw new UnsupportedOperationException();
121+
}
122+
118123
@Override
119124
public boolean isClassInitializer() {
120125
throw new UnsupportedOperationException();

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import java.lang.annotation.Annotation;
2828
import java.util.Arrays;
29+
import java.util.List;
2930
import java.util.Objects;
3031

3132
import jdk.graal.compiler.core.common.LibGraalSupport;
@@ -318,6 +319,11 @@ public ResolvedJavaMethod[] getDeclaredMethods(boolean forceLink) {
318319
return methods.clone();
319320
}
320321

322+
@Override
323+
public List<ResolvedJavaMethod> getAllMethods(boolean forceLink) {
324+
throw new UnsupportedOperationException();
325+
}
326+
321327
@Override
322328
public ResolvedJavaMethod getClassInitializer() {
323329
throw new UnsupportedOperationException();

compiler/src/jdk.graal.compiler/src/jdk/graal/compiler/hotspot/amd64/AMD64HotSpotForeignCallsProvider.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2013, 2025, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
3333
import static jdk.graal.compiler.hotspot.HotSpotForeignCallLinkage.RegisterEffect.DESTROYS_ALL_CALLER_SAVE_REGISTERS;
3434
import static jdk.graal.compiler.hotspot.meta.HotSpotForeignCallDescriptor.Transition.LEAF;
3535
import static jdk.graal.compiler.replacements.nodes.BinaryMathIntrinsicNode.BinaryOperation.POW;
36+
import static jdk.graal.compiler.replacements.nodes.UnaryMathIntrinsicNode.UnaryOperation.CBRT;
3637
import static jdk.graal.compiler.replacements.nodes.UnaryMathIntrinsicNode.UnaryOperation.COS;
3738
import static jdk.graal.compiler.replacements.nodes.UnaryMathIntrinsicNode.UnaryOperation.EXP;
3839
import static jdk.graal.compiler.replacements.nodes.UnaryMathIntrinsicNode.UnaryOperation.LOG;
@@ -110,6 +111,7 @@ protected void registerMathStubs(GraalHotSpotVMConfig hotSpotVMConfig, HotSpotPr
110111
link(new AMD64MathStub(LOG, options, providers, registerStubCall(LOG.foreignCallSignature, LEAF, NO_SIDE_EFFECT, COMPUTES_REGISTERS_KILLED, NO_LOCATIONS)));
111112
link(new AMD64MathStub(LOG10, options, providers, registerStubCall(LOG10.foreignCallSignature, LEAF, NO_SIDE_EFFECT, COMPUTES_REGISTERS_KILLED, NO_LOCATIONS)));
112113
link(new AMD64MathStub(POW, options, providers, registerStubCall(POW.foreignCallSignature, LEAF, NO_SIDE_EFFECT, COMPUTES_REGISTERS_KILLED, NO_LOCATIONS)));
114+
link(new AMD64MathStub(CBRT, options, providers, registerStubCall(CBRT.foreignCallSignature, LEAF, NO_SIDE_EFFECT, COMPUTES_REGISTERS_KILLED, NO_LOCATIONS)));
113115
} else {
114116
super.registerMathStubs(hotSpotVMConfig, providers, options);
115117
}

0 commit comments

Comments
 (0)