[llvm-bugs] [Bug 49087] New: [GlobalISel] Crash on llc due to usub intrinsic
via llvm-bugs
llvm-bugs at lists.llvm.org
Sun Feb 7 22:10:57 PST 2021
https://bugs.llvm.org/show_bug.cgi?id=49087
Bug ID: 49087
Summary: [GlobalISel] Crash on llc due to usub intrinsic
Product: new-bugs
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: max.kazantsev at azul.com
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
Run: llc test.ll -o - -global-isel
test.ll:
define i32 @test_01(i32* %p, i64 %len, i32 %x) {
entry:
%scevgep = getelementptr i32, i32* %p, i64 -1
br label %loop
loop: ; preds = %backedge, %entry
%iv = phi i64 [ %iv.next, %backedge ], [ %len, %entry ]
%iv.next = add i64 %iv, -1
%cond_1 = icmp eq i64 %iv, 0
br i1 %cond_1, label %exit, label %backedge
backedge: ; preds = %loop
%scevgep1 = getelementptr i32, i32* %scevgep, i64 %iv
%loaded = load atomic i32, i32* %scevgep1 unordered, align 4
%cond_2 = icmp eq i32 %loaded, %x
br i1 %cond_2, label %failure, label %loop
exit: ; preds = %loop
ret i32 -1
failure:
unreachable
}
Crash:
.text
.file "bug.ll"
LLVM ERROR: unable to legalize instruction: %4:_(s64), %5:_(s1) = G_USUBO %3:_,
%6:_ (in function: test_01)
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.
Stack dump:
0. Program arguments: /localhome/mkazantsev/work/llvm/build/RA/bin/llc
test/CodeGen/X86/bug.ll -o - -global-isel
1. Running pass 'Function Pass Manager' on module
'test/CodeGen/X86/bug.ll'.
2. Running pass 'Legalizer' on function '@test_01'
#0 0x00000000028328ac llvm::sys::PrintStackTrace(llvm::raw_ostream&, int)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/Support/Unix/Signals.inc:569:0
#1 0x00000000028307b4 llvm::sys::RunSignalHandlers()
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/Support/Signals.cpp:71:0
#2 0x00000000028310f3 SignalHandler(int)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/Support/Unix/Signals.inc:397:0
#3 0x00007f565d6c1630 __restore_rt (/lib64/libpthread.so.0+0xf630)
#4 0x00007f565c21d387 raise (/lib64/libc.so.6+0x36387)
#5 0x00007f565c21ea78 abort (/lib64/libc.so.6+0x37a78)
#6 0x00000000027aec73
llvm::raw_svector_ostream::raw_svector_ostream(llvm::SmallVectorImpl<char>&)
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/Support/raw_ostream.h:652:0
#7 0x00000000027aec73 llvm::report_fatal_error(llvm::Twine const&, bool)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/Support/ErrorHandling.cpp:114:0
#8 0x00000000027aedbe
(/localhome/mkazantsev/work/llvm/build/RA/bin/llc+0x27aedbe)
#9 0x0000000002e9078f reportGISelDiagnostic(llvm::DiagnosticSeverity,
llvm::MachineFunction&, llvm::TargetPassConfig const&,
llvm::MachineOptimizationRemarkEmitter&,
llvm::MachineOptimizationRemarkMissed&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/CodeGen/GlobalISel/Utils.cpp:234:0
#10 0x0000000002e918e2
llvm::DiagnosticInfoOptimizationBase::~DiagnosticInfoOptimizationBase()
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/IR/DiagnosticInfo.h:407:0
#11 0x0000000002e918e2
llvm::DiagnosticInfoMIROptimization::~DiagnosticInfoMIROptimization()
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h:28:0
#12 0x0000000002e918e2
llvm::MachineOptimizationRemarkMissed::~MachineOptimizationRemarkMissed()
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h:82:0
#13 0x0000000002e918e2 llvm::reportGISelFailure(llvm::MachineFunction&,
llvm::TargetPassConfig const&, llvm::MachineOptimizationRemarkEmitter&, char
const*, llvm::StringRef, llvm::MachineInstr const&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/CodeGen/GlobalISel/Utils.cpp:257:0
#14 0x0000000002e4168a
llvm::Legalizer::runOnMachineFunction(llvm::MachineFunction&) (.part.268)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp:351:0
#15 0x0000000001d3ec67
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/CodeGen/MachineFunctionPass.cpp:72:0
#16 0x000000000213d75b llvm::FPPassManager::runOnFunction(llvm::Function&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/IR/LegacyPassManager.cpp:1445:0
#17 0x000000000213e1d9
llvm::ilist_node_impl<llvm::ilist_detail::node_options<llvm::Function, true,
false, void> >::getNext()
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/ADT/ilist_node.h:66:0
#18 0x000000000213e1d9
llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Function, true,
false, void>, false, false>::operator++()
/localhome/mkazantsev/work/llvm/llvm/llvm/include/llvm/ADT/ilist_iterator.h:157:0
#19 0x000000000213e1d9 llvm::FPPassManager::runOnModule(llvm::Module&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/IR/LegacyPassManager.cpp:1480:0
#20 0x000000000213d08e runOnModule
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/IR/LegacyPassManager.cpp:1557:0
#21 0x000000000213d08e llvm::legacy::PassManagerImpl::run(llvm::Module&)
/localhome/mkazantsev/work/llvm/llvm/llvm/lib/IR/LegacyPassManager.cpp:541:0
#22 0x00000000007f60fa compileModule(char**, llvm::LLVMContext&)
/localhome/mkazantsev/work/llvm/llvm/llvm/tools/llc/llc.cpp:687:0
#23 0x000000000072dd7e main
/localhome/mkazantsev/work/llvm/llvm/llvm/tools/llc/llc.cpp:385:0
#24 0x00007f565c209555 __libc_start_main (/lib64/libc.so.6+0x22555)
#25 0x00000000007ee049 _start
(/localhome/mkazantsev/work/llvm/build/RA/bin/llc+0x7ee049)
Aborted (core dumped)
--
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/20210208/0da3ac93/attachment.html>
More information about the llvm-bugs
mailing list