Move zext and sext casts fed by loads into the same block as the
[oota-llvm.git] / test / CodeGen / X86 / call-imm.ll
index b99149b687fc3d0e439b253ad7befc8f8a4535f0..87785bc3f3f40ed85a4f6f6f91938f3a29cc2560 100644 (file)
@@ -1,8 +1,15 @@
-; RUN: llvm-as < %s | llc -march=x86    | grep call | not grep {*}
-; RUN: llvm-as < %s | llc -march=x86    | grep call | grep 12345678
-; RUN: llvm-as < %s | llc -march=x86-64 | grep call | grep 12345678
+; RUN: llc < %s -mtriple=i386-darwin-apple -relocation-model=static | grep {call.*12345678}
+; RUN: llc < %s -mtriple=i386-darwin-apple -relocation-model=pic | not grep {call.*12345678}
+; RUN: llc < %s -mtriple=i386-pc-linux -relocation-model=dynamic-no-pic | grep {call.*12345678}
+
+; Call to immediate is not safe on x86-64 unless we *know* that the
+; call will be within 32-bits pcrel from the dest immediate.
+
+; RUN: llc < %s -march=x86-64 | grep {call.*\*%rax}
+
 ; PR3666
 ; PR3773
+; rdar://6904453
 
 define i32 @main() nounwind {
 entry: