File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff line change
1
+ ; RUN: llc -o - -global-isel < %s 2>&1 | FileCheck %s
2
+ ; REQUIRES: asserts
3
+ ; XFAIL: *
4
+
5
+ define i32 @test_01 (i32* %p , i64 %len , i32 %x ) {
6
+ ; CHECK-LABEL: test_01
7
+
8
+ entry:
9
+ %scevgep = getelementptr i32 , i32* %p , i64 -1
10
+ br label %loop
11
+
12
+ loop: ; preds = %backedge, %entry
13
+ %iv = phi i64 [ %iv.next , %backedge ], [ %len , %entry ]
14
+ %iv.next = add i64 %iv , -1
15
+ %cond_1 = icmp eq i64 %iv , 0
16
+ br i1 %cond_1 , label %exit , label %backedge
17
+
18
+ backedge: ; preds = %loop
19
+ %scevgep1 = getelementptr i32 , i32* %scevgep , i64 %iv
20
+ %loaded = load atomic i32 , i32* %scevgep1 unordered , align 4
21
+ %cond_2 = icmp eq i32 %loaded , %x
22
+ br i1 %cond_2 , label %failure , label %loop
23
+
24
+ exit: ; preds = %loop
25
+ ret i32 -1
26
+
27
+ failure:
28
+ unreachable
29
+ }
30
+
You can’t perform that action at this time.
0 commit comments