Use Twin instead of std::to_string.
[oota-llvm.git] / test / CodeGen / X86 / rip-rel-address.ll
index 863c28785f600cb2e674580c7bad92ba033ac817..b49d597d9f0589ade91590e4f76d29c8f905c712 100644 (file)
@@ -1,11 +1,14 @@
-; RUN: llvm-as < %s | llc -march=x86-64 -relocation-model=pic -mtriple=x86_64-apple-darwin10 | FileCheck %s -check-prefix=PIC64
-; RUN: llvm-as < %s | llc -mtriple=x86_64-unknown-linux-gnu -relocation-model=static | FileCheck %s -check-prefix=STATIC64
+; RUN: llc < %s -march=x86-64 -relocation-model=pic -mtriple=x86_64-apple-darwin10 | FileCheck %s -check-prefix=PIC64
+; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -relocation-model=static | FileCheck %s -check-prefix=STATIC64
+
+; Use %rip-relative addressing even in static mode on x86-64, because
+; it has a smaller encoding.
 
 @a = internal global double 3.4
 define double @foo() nounwind {
-  %a = load double* @a
+  %a = load double, double* @a
   ret double %a
   
 ; PIC64:    movsd      _a(%rip), %xmm0
-; STATIC64: movsd      a, %xmm0
+; STATIC64: movsd      a(%rip), %xmm0
 }