[llvm] 9f97577 - [LoopDistribute] Add LAA invalidation test for #50940.

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 26 04:21:34 PDT 2022


Author: Florian Hahn
Date: 2022-09-26T12:21:14+01:00
New Revision: 9f97577e80d84e27ad666b62597635596ebb827f

URL: https://github.com/llvm/llvm-project/commit/9f97577e80d84e27ad666b62597635596ebb827f
DIFF: https://github.com/llvm/llvm-project/commit/9f97577e80d84e27ad666b62597635596ebb827f.diff

LOG: [LoopDistribute] Add LAA invalidation test for #50940.

Test case for #50940, to be fixed by D134606.

Added: 
    llvm/test/Transforms/LoopDistribute/laa-invalidation.ll

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/llvm/test/Transforms/LoopDistribute/laa-invalidation.ll b/llvm/test/Transforms/LoopDistribute/laa-invalidation.ll
new file mode 100644
index 0000000000000..2bf507bfe5d89
--- /dev/null
+++ b/llvm/test/Transforms/LoopDistribute/laa-invalidation.ll
@@ -0,0 +1,34 @@
+; RUN: opt  -passes='loop-load-elim,indvars,loop-distribute' -enable-loop-distribute %s
+
+; REQUIRES: asserts
+; XFAIL: *
+
+define void @test_pr50940(ptr %A, ptr %B) {
+entry:
+  %gep.A.1 = getelementptr inbounds i16, ptr %A, i64 1
+  br label %outer.header
+
+outer.header:
+  %gep.A.2 = getelementptr inbounds i16, ptr %gep.A.1, i64 1
+  br i1 false, label %outer.latch, label %inner.ph
+
+inner.ph:                             ; preds = %for.body5
+  %lcssa.gep = phi ptr [ %gep.A.2, %outer.header ]
+  %gep.A.3 = getelementptr inbounds i16, ptr %A, i64 3
+  br label %inner
+
+inner:
+  %iv = phi i16 [ 0, %inner.ph ], [ %iv.next, %inner ]
+  %l = load <2 x i16>, ptr %lcssa.gep, align 1
+  store i16 0, ptr %gep.A.3, align 1
+  store i16 1, ptr %B, align 1
+  %iv.next = add nuw nsw i16 %iv, 1
+  %c.1 = icmp ult i16 %iv, 38
+  br i1 %c.1, label %inner, label %exit
+
+outer.latch:
+  br label %outer.header
+
+exit:
+  ret void
+}


        


More information about the llvm-commits mailing list