< prev index next > test/hotspot/jtreg/compiler/vectorization/TestFloatConversionsVectorNaN.java
Print this page
System.out.println("PASSED");
}
@Test
@IR(counts = {IRNode.VECTOR_CAST_F2HF, IRNode.VECTOR_SIZE + "min(max_float, max_short)", "> 0"},
- applyIfOr = {"UseCompactObjectHeaders", "false", "AlignVector", "false"})
public void test_float_float16(short[] sout, float[] finp) {
for (int i = 0; i < finp.length; i++) {
sout[i] = Float.floatToFloat16(finp[i]);
- // With AlignVector, we need 8-byte alignment of vector loads/stores.
- // UseCompactObjectHeaders=false UseCompactObjectHeaders=true
- // F_adr = base + 16 + 4*i -> i % 2 = 0 F_adr = base + 12 + 4*i -> i % 2 = 1
- // S_adr = base + 16 + 2*i -> i % 4 = 0 S_adr = base + 12 + 2*i -> i % 4 = 2
- // -> vectorize -> no vectorization
}
}
@Run(test = {"test_float_float16"}, mode = RunMode.STANDALONE)
public void kernel_test_float_float16() {
}
return 0;
}
@Test
! @IR(counts = {IRNode.VECTOR_CAST_HF2F, IRNode.VECTOR_SIZE + "min(max_float, max_short)", "> 0"},
- applyIfOr = {"UseCompactObjectHeaders", "false", "AlignVector", "false"})
public void test_float16_float(float[] fout, short[] sinp) {
for (int i = 0; i < sinp.length; i++) {
fout[i] = Float.float16ToFloat(sinp[i]);
- // With AlignVector, we need 8-byte alignment of vector loads/stores.
- // UseCompactObjectHeaders=false UseCompactObjectHeaders=true
- // F_adr = base + 16 + 4*i -> i % 2 = 0 F_adr = base + 12 + 4*i -> i % 2 = 1
- // S_adr = base + 16 + 2*i -> i % 4 = 0 S_adr = base + 12 + 2*i -> i % 4 = 2
- // -> vectorize -> no vectorization
}
}
@Run(test = {"test_float16_float"}, mode = RunMode.STANDALONE)
public void kernel_test_float16_float() {
}
return 0;
}
@Test
! @IR(counts = {IRNode.VECTOR_CAST_HF2F, IRNode.VECTOR_SIZE + "min(max_float, max_short)", "> 0"})
public void test_float16_float(float[] fout, short[] sinp) {
for (int i = 0; i < sinp.length; i++) {
fout[i] = Float.float16ToFloat(sinp[i]);
}
}
@Run(test = {"test_float16_float"}, mode = RunMode.STANDALONE)
public void kernel_test_float16_float() {
< prev index next >