@@ -53,11 +53,14 @@ public static void assertResults() {
5353 }
5454
5555 @ Test
56- // Match a generic SubNode, because scalar Float16 operations are often
57- // performed as float operations.
58- @ IR (counts = { IRNode .SUB , "2" }, applyIfPlatform = {"riscv64" , "false" })
59- @ IR (counts = { IRNode .SUB , "2" }, applyIfCPUFeature = {"zfh" , "false" })
60- @ IR (counts = { IRNode .SUB_HF , "2" }, applyIfCPUFeature = {"zfh" , "true" })
56+ @ IR (counts = { IRNode .SUB , "2" }, applyIfPlatform = {"x64" , "true" }, applyIfCPUFeature = {"avx512_fp16" , "false" })
57+ @ IR (counts = { IRNode .SUB_HF , "2" }, applyIfPlatform = {"x64" , "true" }, applyIfCPUFeature = {"avx512_fp16" , "true" })
58+ // TODO: uncomment once Float16 support lands in aarch64 with JDK-8345125
59+ //@IR(counts = { IRNode.SUB, "2" }, applyIfPlatform = {"aarch64", "true"}, applyIfCPUFeatureAnd = {"fphp", "false", "asimdhp", "false"})
60+ //@IR(counts = { IRNode.SUB_HF, "2" }, applyIfPlatform = {"aarch64", "true"}, applyIfCPUFeatureAnd = {"fphp", "true", "asimdhp", "true"})
61+ @ IR (counts = { IRNode .SUB , "2" }, applyIfPlatform = {"riscv64" , "true" }, applyIfCPUFeature = {"zfh" , "false" })
62+ @ IR (counts = { IRNode .SUB_HF , "2" }, applyIfPlatform = {"riscv64" , "true" }, applyIfCPUFeature = {"zfh" , "true" })
63+ @ IR (counts = { IRNode .SUB , "2" }, applyIfPlatformAnd = {"x64" , "false" , "aarch64" , "false" , "riscv64" , "false" })
6164 // Checks that the subtractions in 0 - (0 - hf) do not get eliminiated
6265 public static Float16 testHalfFloat (Float16 hf ) {
6366 return Float16 .subtract (
0 commit comments