; RUN: llc -mtriple=thumb-eabi %s -o - | FileCheck %s
-; RUN: llc -mtriple=thumb-apple-darwin %s -o - | FileCheck %s -check-prefix CHECK-DARWIN
+; RUN: llc -mtriple=thumb-apple-darwin %s -o - | \
+; RUN: FileCheck %s -check-prefix CHECK -check-prefix CHECK-DARWIN
define i64 @f1() {
entry:
define i64 @f5() {
entry:
ret i64 9223372036854775807
+; CHECK-LABEL: f5:
+; CHECK: mvn
+; CHECK-NOT: mvn
}
define i64 @f6(i64 %x, i64 %y) {
entry:
%tmp1 = add i64 %y, 1 ; <i64> [#uses=1]
ret i64 %tmp1
+; CHECK-LABEL: f6:
+; CHECK: adc
+; CHECK-NOT: adc
}
define void @f7() {
entry:
%tmp = sub i64 %a, %b ; <i64> [#uses=1]
ret i64 %tmp
+; CHECK-LABEL: f9:
+; CHECK: sbc
+; CHECK-NOT: sbc
}
define i64 @f(i32 %a, i32 %b) {
%tmp1 = sext i32 %b to i64 ; <i64> [#uses=1]
%tmp2 = mul i64 %tmp1, %tmp ; <i64> [#uses=1]
ret i64 %tmp2
+; CHECK-LABEL: f:
+; CHECK-DARWIN: __muldi3
}
define i64 @g(i32 %a, i32 %b) {
%tmp1 = zext i32 %b to i64 ; <i64> [#uses=1]
%tmp2 = mul i64 %tmp1, %tmp ; <i64> [#uses=1]
ret i64 %tmp2
+; CHECK-LABEL: g:
+; CHECK-DARWIN: __muldi3
}
define i64 @f10() {
%retval = load i64, i64* %a ; <i64> [#uses=1]
ret i64 %retval
}
-
-; CHECK: mvn
-; CHECK-NOT: mvn
-
-; CHECK: adc
-; CHECK-NOT: adc
-
-; CHECK: sbc
-; CHECK-NOT: sbc
-
-; CHECK-DARWIN: __muldi3
-