Index: tests_lit/llvm2ice_tests/fp.cmp.ll |
diff --git a/tests_lit/llvm2ice_tests/fp.cmp.ll b/tests_lit/llvm2ice_tests/fp.cmp.ll |
index 427a82c059901b15784eaaa964316d8836b49e29..3feca8918ae656f69a802fd1fa4966afd7268c65 100644 |
--- a/tests_lit/llvm2ice_tests/fp.cmp.ll |
+++ b/tests_lit/llvm2ice_tests/fp.cmp.ll |
@@ -6,7 +6,8 @@ |
; RUN: %p2i --filetype=obj --disassemble -i %s --args -O2 \ |
; RUN: -allow-externally-defined-symbols | FileCheck %s |
; RUN: %p2i --filetype=obj --disassemble -i %s --args -Om1 \ |
-; RUN: -allow-externally-defined-symbols | FileCheck %s |
+; RUN: -allow-externally-defined-symbols | FileCheck %s \ |
+; RUN: --check-prefix=CHECK-OM1 |
; RUN: %if --need=allow_dump --need=target_ARM32 --command %p2i --filetype=asm \ |
; RUN: --target arm32 -i %s --args -O2 \ |
@@ -42,13 +43,21 @@ if.end3: ; preds = %if.then2, %if.end |
} |
; CHECK-LABEL: fcmpEq |
; CHECK: ucomiss |
-; CHECK: jne |
+; CHECK-NEXT: jne |
; CHECK-NEXT: jp |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: jne |
+; CHECK-NEXT: jne |
; CHECK-NEXT: jp |
; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpEq |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1: jne |
+; CHECK-OM1-NEXT: jp |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1: jne |
+; CHECK-NEXT-OM1: jp |
; ARM32-LABEL: fcmpEq |
; ARM32: vcmp.f32 |
; ARM32: vmrs |
@@ -86,13 +95,26 @@ if.end3: ; preds = %if.then2, %if.end |
} |
; CHECK-LABEL: fcmpNe |
; CHECK: ucomiss |
-; CHECK: jne |
+; CHECK-NEXT: jne |
; CHECK-NEXT: jp |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jmp |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: jne |
+; CHECK-NEXT: jne |
; CHECK-NEXT: jp |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jmp |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpNe |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1: jne |
+; CHECK-OM1: jp |
+; CHECK-OM1: jmp |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1: jne |
+; CHECK-OM1: jp |
+; CHECK-OM1: jmp |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
; ARM32-LABEL: fcmpNe |
; ARM32: vcmp.f32 |
; ARM32: vmrs |
@@ -127,11 +149,18 @@ if.end3: ; preds = %if.then2, %if.end |
} |
; CHECK-LABEL: fcmpGt |
; CHECK: ucomiss |
-; CHECK: seta |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jbe |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: seta |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jbe |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpGt |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1: seta |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1: seta |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
; ARM32-LABEL: fcmpGt |
; ARM32: vcmp.f32 |
; ARM32: vmrs |
@@ -166,11 +195,18 @@ if.end3: ; preds = %if.end, %if.then2 |
} |
; CHECK-LABEL: fcmpGe |
; CHECK: ucomiss |
-; CHECK: setb |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jb |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: setb |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jb |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpGe |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1-NEXT: setb |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1-NEXT: setb |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
; ARM32-LABEL: fcmpGe |
; ARM32: vcmp.f32 |
; ARM32: vmrs |
@@ -205,11 +241,18 @@ if.end3: ; preds = %if.then2, %if.end |
} |
; CHECK-LABEL: fcmpLt |
; CHECK: ucomiss |
-; CHECK: seta |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jbe |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: seta |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jbe |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpLt |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1-NEXT: seta |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1-NEXT: seta |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
; ARM32-LABEL: fcmpLt |
; ARM32: vcmp.f32 |
; ARM32: vmrs |
@@ -244,11 +287,18 @@ if.end3: ; preds = %if.end, %if.then2 |
} |
; CHECK-LABEL: fcmpLe |
; CHECK: ucomiss |
-; CHECK: setb |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jb |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
; CHECK: ucomisd |
-; CHECK: setb |
-; CHECK: call {{.*}} R_{{.*}} func |
+; CHECK-NEXT: jb |
+; CHECK-NEXT: call {{.*}} R_{{.*}} func |
+; CHECK-OM1-LABEL: fcmpLe |
+; CHECK-OM1: ucomiss |
+; CHECK-OM1-NEXT: setb |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
+; CHECK-OM1: ucomisd |
+; CHECK-OM1-NEXT: setb |
+; CHECK-OM1: call {{.*}} R_{{.*}} func |
; ARM32-LABEL: fcmpLe |
; ARM32: vcmp.f32 |
; ARM32: vmrs |