blob: 5a8f623e6f506d9be1456642280b7b005d0c0eca [file] [log] [blame]
Saleem Abdulrasool72587352014-04-03 16:01:44 +00001; RUN: llc -mtriple=arm-eabi -mattr=+v4t %s -o - | FileCheck %s
Hal Finkelc3998302014-04-12 00:59:48 +00002; RUN: llc -mtriple=arm-eabi -mattr=+v4t -addr-sink-using-gep=1 %s -o - | FileCheck %s
Saleem Abdulrasool72587352014-04-03 16:01:44 +00003
Owen Andersonc0177ae2010-11-19 22:34:53 +00004; <rdar://problem/8686347>
5
6define i32 @test1(i1 %a, i32* %b) {
7; CHECK: test1
8entry:
9 br i1 %a, label %lblock, label %rblock
10
11lblock:
12 %lbranch = getelementptr i32* %b, i32 1
13 br label %end
14
15rblock:
16 %rbranch = getelementptr i32* %b, i32 1
17 br label %end
18
19end:
20; CHECK: ldr r0, [r1, #4]
21 %gep = phi i32* [%lbranch, %lblock], [%rbranch, %rblock]
22 %r = load i32* %gep
23; CHECK-NEXT: bx lr
24 ret i32 %r
Evan Cheng8b2bda02011-07-07 03:55:05 +000025}