Skip to content

Commit a20c8ff

Browse files
committed
[LV] Pre-commit test for narrow-store-user-mask-op
1 parent 02c68b3 commit a20c8ff

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
; REQUIRES: asserts
2+
; RUN: not --crash opt -p loop-vectorize -mcpu=skylake -S %s
3+
4+
target triple = "x86_64-unknown-linux-gnu"
5+
6+
@p = external global [3952 x i8], align 8
7+
@q = external global [3952 x i8], align 8
8+
9+
define void @narrow_store_user_mask_operand(i32 %x) {
10+
entry:
11+
br label %loop.ph
12+
13+
loop.ph:
14+
%iv = phi i64 [ 0, %entry ], [ %iv.next, %loop.tail ]
15+
%x.pos = icmp sgt i32 %x, 0
16+
br i1 %x.pos, label %loop.body, label %loop.tail
17+
18+
loop.body:
19+
%ld.p = load double, ptr @p
20+
%gep.q.iv = getelementptr double, ptr @q, i64 %iv
21+
%gep.q.iv.8 = getelementptr i8, ptr %gep.q.iv, i64 -8
22+
store double %ld.p, ptr %gep.q.iv.8
23+
br label %loop.tail
24+
25+
loop.tail:
26+
%iv.next = add i64 %iv, 1
27+
%ec = icmp eq i64 %iv, 1
28+
br i1 %ec, label %exit, label %loop.ph
29+
30+
exit:
31+
ret void
32+
}

0 commit comments

Comments
 (0)