https://bugs.llvm.org/show_bug.cgi?id=42729
Bug ID: 42729
Summary: Verifier failure with ARMParallelDSP
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: ARM
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected], [email protected],
[email protected], [email protected],
[email protected]
Reproduce with "opt -arm-parallel-dsp reduced.ll -S"; produces:
Instruction does not dominate all uses!
%uglygep1213 = bitcast i8* %uglygep12 to i16*
%scevgep14 = getelementptr i16, i16* %uglygep1213, i32 6
in function f
LLVM ERROR: Broken function found, compilation aborted!
This is causing failures on the polly-aosp bot
(http://lab.llvm.org:8011/builders/aosp-O3-polly-before-vectorizer-unprofitable).
Testcase follows:
target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"
target triple = "thumbv7-unknown-linux-android"
define void @f(i16* %a) {
entry:
%incdec.ptr21 = getelementptr inbounds i16, i16* %a, i32 3
%incdec.ptr29 = getelementptr inbounds i16, i16* %a, i32 4
br label %for.body
for.body:
%0 = load i16, i16* %incdec.ptr21, align 2
%conv25 = sext i16 %0 to i32
%uglygep15 = getelementptr i8, i8* undef, i32 undef
%uglygep1516 = bitcast i8* %uglygep15 to i16*
%scevgep17 = getelementptr i16, i16* %uglygep1516, i32 7
%1 = load i16, i16* %scevgep17, align 2
%conv31 = sext i16 %1 to i32
%2 = load i16, i16* %incdec.ptr29, align 2
%conv33 = sext i16 %2 to i32
%uglygep12 = getelementptr i8, i8* undef, i32 undef
%uglygep1213 = bitcast i8* %uglygep12 to i16*
%scevgep14 = getelementptr i16, i16* %uglygep1213, i32 6
%3 = load i16, i16* %scevgep14, align 2
%conv39 = sext i16 %3 to i32
%mul.i287.neg.neg = mul nsw i32 %conv31, %conv25
%mul.i283.neg.neg = mul nsw i32 %conv39, %conv33
%reass.add408 = add i32 undef, %mul.i287.neg.neg
%reass.add409 = add i32 %reass.add408, %mul.i283.neg.neg
br label %for.body
}
--
You are receiving this mail because:
You are on the CC list for the bug._______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs