-
Bug
-
Resolution: Fixed
-
P3
-
repo-valhalla
We should fix the intrinsics and add the following tests:
@Test()
public MyValue1[] test59(MyValue1[] va) {
return va.clone();
}
@DontCompile
public void test59_verifier(boolean warmup) {
int len = Math.abs(rI) % 10;
MyValue1[] va = new MyValue1[len];
for (int i = 0; i < len; ++i) {
va[i] = MyValue1.createInline(rI, rL);
}
MyValue1[] result = test59(va);
for (int i = 0; i < len; ++i) {
Asserts.assertEQ(result[i].hash(), va[i].hash());
}
}
@Test()
public void test60(MyValue1[] src, MyValue1[] dst) {
System.arraycopy(src, 0, dst, 0, src.length);
}
@DontCompile
public void test60_verifier(boolean warmup) {
int len = Math.abs(rI) % 10;
MyValue1[] src = new MyValue1[len];
MyValue1[] dst = new MyValue1[len];
for (int i = 0; i < len; ++i) {
src[i] = MyValue1.createInline(rI, rL);
}
test60(src, dst);
for (int i = 0; i < len; ++i) {
Asserts.assertEQ(src[i].hash(), dst[i].hash());
}
}
@Test()
public MyValue1[] test59(MyValue1[] va) {
return va.clone();
}
@DontCompile
public void test59_verifier(boolean warmup) {
int len = Math.abs(rI) % 10;
MyValue1[] va = new MyValue1[len];
for (int i = 0; i < len; ++i) {
va[i] = MyValue1.createInline(rI, rL);
}
MyValue1[] result = test59(va);
for (int i = 0; i < len; ++i) {
Asserts.assertEQ(result[i].hash(), va[i].hash());
}
}
@Test()
public void test60(MyValue1[] src, MyValue1[] dst) {
System.arraycopy(src, 0, dst, 0, src.length);
}
@DontCompile
public void test60_verifier(boolean warmup) {
int len = Math.abs(rI) % 10;
MyValue1[] src = new MyValue1[len];
MyValue1[] dst = new MyValue1[len];
for (int i = 0; i < len; ++i) {
src[i] = MyValue1.createInline(rI, rL);
}
test60(src, dst);
for (int i = 0; i < len; ++i) {
Asserts.assertEQ(src[i].hash(), dst[i].hash());
}
}
- relates to
-
JDK-8183111 [MVT] java.lang.Class::isAssignableFrom() C2 intrinsic does not support value types
-
- Resolved
-
-
JDK-8225665 [lworld] C2 compilation fails with assert(node->Opcode() == Op_CastP2X) failed: ConvP2XNode required
-
- Resolved
-