[Debug Info] add DISubroutineType and its creation takes DITypeArray.
[oota-llvm.git] / test / CodeGen / X86 / x86-64-mem.ll
index 4426dc204796b8c84f01c15fe30b050c8e00a31f..d15f516cddee36e0c4806398bdcd0ffeee5f9588 100644 (file)
@@ -1,36 +1,36 @@
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | grep GOTPCREL | wc -l | grep 4 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | grep rip | wc -l | grep 6 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | grep movq | wc -l | grep 6 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 | grep leaq | wc -l | grep 1 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 -relocation-model=static | grep rip | wc -l | grep 4 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 -relocation-model=static | grep movl | wc -l | grep 2 &&
-; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86-64 -relocation-model=static | grep movq | wc -l | grep 2
+; RUN: llc < %s -mtriple=x86_64-apple-darwin -o %t1
+; RUN: grep GOTPCREL %t1 | count 4
+; RUN: grep %%rip      %t1 | count 6
+; RUN: grep movq     %t1 | count 6
+; RUN: grep leaq     %t1 | count 1
+; RUN: llc < %s -mtriple=x86_64-pc-linux -relocation-model=static -o %t2
+; RUN: grep movl %t2 | count 2
+; RUN: grep movq %t2 | count 2
 
-%ptr = external global int*
-%src = external global [0 x int]
-%dst = external global [0 x int]
-%lptr = internal global int* null
-%ldst = internal global [500 x int] zeroinitializer, align 32
-%lsrc = internal global [500 x int] zeroinitializer, align 32
-%bsrc = internal global [500000 x int] zeroinitializer, align 32
-%bdst = internal global [500000 x int] zeroinitializer, align 32
+@ptr = external global i32*            ; <i32**> [#uses=1]
+@src = external global [0 x i32]               ; <[0 x i32]*> [#uses=1]
+@dst = external global [0 x i32]               ; <[0 x i32]*> [#uses=1]
+@lptr = internal global i32* null              ; <i32**> [#uses=1]
+@ldst = internal global [500 x i32] zeroinitializer, align 32          ; <[500 x i32]*> [#uses=1]
+@lsrc = internal global [500 x i32] zeroinitializer, align 32          ; <[500 x i32]*> [#uses=0]
+@bsrc = internal global [500000 x i32] zeroinitializer, align 32               ; <[500000 x i32]*> [#uses=0]
+@bdst = internal global [500000 x i32] zeroinitializer, align 32               ; <[500000 x i32]*> [#uses=0]
 
-void %test1() {
-       %tmp = load int* getelementptr ([0 x int]* %src, int 0, int 0)
-       store int %tmp, int* getelementptr ([0 x int]* %dst, int 0, int 0)
+define void @test1() nounwind {
+       %tmp = load i32* getelementptr ([0 x i32]* @src, i32 0, i32 0)          ; <i32> [#uses=1]
+       store i32 %tmp, i32* getelementptr ([0 x i32]* @dst, i32 0, i32 0)
        ret void
 }
 
-void %test2() {
-       store int* getelementptr ([0 x int]* %dst, int 0, int 0), int** %ptr
+define void @test2() nounwind {
+       store i32* getelementptr ([0 x i32]* @dst, i32 0, i32 0), i32** @ptr
        ret void
 }
 
-void %test3() {
-       store int* getelementptr ([500 x int]* %ldst, int 0, int 0), int** %lptr
+define void @test3() nounwind {
+       store i32* getelementptr ([500 x i32]* @ldst, i32 0, i32 0), i32** @lptr
        br label %return
 
-return:
+return:                ; preds = %0
        ret void
 }