https://bugs.llvm.org/show_bug.cgi?id=49141
Bug ID: 49141
Summary: opt -indvars -loop-load-elim fails with old PM
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Scalar Optimizations
Assignee: unassignedb...@nondot.org
Reporter: mikael.hol...@ericsson.com
CC: llvm-bugs@lists.llvm.org
Created attachment 24513
--> https://bugs.llvm.org/attachment.cgi?id=24513&action=edit
bbi-52668.ll reproducer
Reproduce with
opt -enable-new-pm=0 -S -o /dev/null bbi-52668.ll -indvars -loop-load-elim
Result
opt: ../include/llvm/IR/ValueHandle.h:490: ValueTy
*llvm::PoisoningVH<llvm::BasicBlock>::getValPtr() const [ValueTy =
llvm::BasicBlock]: Assertion `!Poisoned && "Accessed a poisoned value handle!"'
failed.
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.
This starts happening with commit 664e1da485d2:
[LoopLoadElim] Make sure all loops are in simplify form. PR48150
LoopLoadElim may end up expanding an AddRec from a loop
which is not the current loop. This loop may not be in simplify
form. We figure it out after the no-return point, so cannot bail
in this case.
AddRec requires simplify form to expand. The only way to ensure
this does not crash is to simplify all loops beforehand.
The issue only exists in new PM. Old PM requests LoopSimplify
required pass and it simplifies all loops before the opt begins.
Differential Revision: https://reviews.llvm.org/D91525
Reviewed By: asbirlea, aeubanks
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs