blob: 8e119761ec1afe13bdba7544750866a8e4a15462 [file] [log] [blame]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001; RUN: llvm-upgrade < %s | llvm-as | llc -mtriple=x86_64-apple-darwin -o %t1 -f
2; RUN: grep GOTPCREL %t1 | wc -l | grep 4
3; RUN: grep rip %t1 | wc -l | grep 6
4; RUN: grep movq %t1 | wc -l | grep 6
5; RUN: grep leaq %t1 | wc -l | grep 1
6; RUN: llvm-upgrade < %s | llvm-as | \
7; RUN: llc -mtriple=x86_64-apple-darwin -relocation-model=static -o %t2 -f
8; RUN: grep rip %t2 | wc -l | grep 4
9; RUN: grep movl %t2 | wc -l | grep 2
10; RUN: grep movq %t2 | wc -l | grep 2
11
12%ptr = external global int*
13%src = external global [0 x int]
14%dst = external global [0 x int]
15%lptr = internal global int* null
16%ldst = internal global [500 x int] zeroinitializer, align 32
17%lsrc = internal global [500 x int] zeroinitializer, align 32
18%bsrc = internal global [500000 x int] zeroinitializer, align 32
19%bdst = internal global [500000 x int] zeroinitializer, align 32
20
21void %test1() {
22 %tmp = load int* getelementptr ([0 x int]* %src, int 0, int 0)
23 store int %tmp, int* getelementptr ([0 x int]* %dst, int 0, int 0)
24 ret void
25}
26
27void %test2() {
28 store int* getelementptr ([0 x int]* %dst, int 0, int 0), int** %ptr
29 ret void
30}
31
32void %test3() {
33 store int* getelementptr ([500 x int]* %ldst, int 0, int 0), int** %lptr
34 br label %return
35
36return:
37 ret void
38}