[llvm-bugs] [Bug 45374] New: [PowerPC] Assertion failed: `!DeadOrKillToUnset && "Shouldn't kill same register twice"'
via llvm-bugs
llvm-bugs at lists.llvm.org
Tue Mar 31 08:16:36 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=45374
Bug ID: 45374
Summary: [PowerPC] Assertion failed: `!DeadOrKillToUnset &&
"Shouldn't kill same register twice"'
Product: new-bugs
Version: 10.0
Hardware: Other
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: v.churavy at gmail.com
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
Stacktrace:
```
removeRedundantLIs at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/Target/PowerPC/PPCPreEmitPeephole.cpp:113
runOnMachineFunction at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/Target/PowerPC/PPCPreEmitPeephole.cpp:184
runOnFunction at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/CodeGen/MachineFunctionPass.cpp:73
runOnFunction at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/IR/LegacyPassManager.cpp:1481
runOnModule at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/IR/LegacyPassManager.cpp:1517
runOnModule at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/IR/LegacyPassManager.cpp:1582
run at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/IR/LegacyPassManager.cpp:1694
run at
/home/vchuravy/julia/deps/srccache/llvm-10.0.0/lib/IR/LegacyPassManager.cpp:1725
operator() at /home/vchuravy/julia/src/aotcompile.cpp:509
jl_dump_native at /home/vchuravy/julia/src/aotcompile.cpp:518
```
```
(gdb) p MBB.dump()
bb.14.SP_return:
; predecessors: %bb.13
liveins: $x3
renamable $x3 = LDtocL @jl_false, killed renamable $x3, implicit $x2 :: (load
8 from got)
renamable $x3 = LD 0, killed renamable $x3 :: (dereferenceable load 8 from
@jl_false, !tbaa !11669)
dead $r4 = LI 130, implicit-def $x4, debug-location !29895;
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v1.5/Pkg/src/REP$
Mode/completions.jl:104
$x1 = ADDI8 $x1, 240, debug-location !29895;
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v1.5/Pkg/src/REPLMode/completio$
s.jl:104
$x0 = LD 16, $x1, debug-location !29895;
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v1.5/Pkg/src/REPLMode/completions.j$
:104
$x30 = LD -16, $x1, debug-location !29895 :: (load 8 from %fixed-stack.0,
align 16); /nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/juli$
/stdlib/v1.5/Pkg/src/REPLMode/completions.jl:104
$x29 = LD -24, $x1, debug-location !29895 :: (load 8 from %fixed-stack.1);
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v$
.5/Pkg/src/REPLMode/completions.jl:104
$x28 = LD -32, $x1, debug-location !29895 :: (load 8 from %fixed-stack.2,
align 16); /nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/juli$
/stdlib/v1.5/Pkg/src/REPLMode/completions.jl:104
MTLR8 killed $x0, implicit-def $lr8, debug-location !29895;
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v1.5/Pkg/src/REP$
Mode/completions.jl:104
$x27 = LD -40, $x1, debug-location !29895 :: (load 8 from %fixed-stack.3);
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v$
.5/Pkg/src/REPLMode/completions.jl:104
$x26 = LD -48, $x1, debug-location !29895 :: (load 8 from %fixed-stack.4,
align 16); /nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/juli$
/stdlib/v1.5/Pkg/src/REPLMode/completions.jl:104
$x25 = LD -56, $x1, debug-location !29895 :: (load 8 from %fixed-stack.5);
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v$
.5/Pkg/src/REPLMode/completions.jl:104
BLR8 implicit $lr8, implicit $rm, implicit killed $x3, implicit killed $x4,
debug-location !29895; /nobackup/users/vchuravy/builds/julia-dbg-10/u
sr/share/julia/stdlib/v1.5/Pkg/src/REPLMode/completions.jl:104
```
```
111 int KillIdx = AfterBBI->findRegisterUseOperandIdx(Reg, true,
TRI);
112 if (KillIdx != -1) {
113 assert(!DeadOrKillToUnset && "Shouldn't kill same register
twice");
114 DeadOrKillToUnset = &AfterBBI->getOperand(KillIdx);
115 LLVM_DEBUG(dbgs()
116 << " Kill flag of " << *DeadOrKillToUnset << "
from "
117 << *AfterBBI << " is a unsetting candidate\n");
(gdb) p AfterBBI->dump()
BLR8 implicit $lr8, implicit $rm, implicit killed $x3, implicit killed $x4,
debug-location !29895;
/nobackup/users/vchuravy/builds/julia-dbg-10/usr/share/julia/stdlib/v1.5/Pkg/src/REPLMode/completions.jl:104
```
This is the same configuration as https://bugs.llvm.org/show_bug.cgi?id=45366
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200331/372c8319/attachment-0001.html>
More information about the llvm-bugs
mailing list