[llvm-bugs] [Bug 35747] New: Crash in LegalizeTypes.cpp

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Dec 25 14:46:23 PST 2017


https://bugs.llvm.org/show_bug.cgi?id=35747

            Bug ID: 35747
           Summary: Crash in LegalizeTypes.cpp
           Product: new-bugs
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: vitalybuka at google.com
                CC: llvm-bugs at lists.llvm.org

command line: llc ~/src/b69635594/bugpoint-reduced-simplified.bc.ll

Crash:
llc: llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:408: bool
llvm::DAGTypeLegalizer::run(): Assertion `NodeId == Unanalyzed && "Unknown node
ID!"' failed.
#0 0x0000000004ce79b9 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
llvm-project/llvm/lib/Support/Unix/Signals.inc:398:11
#1 0x0000000004ce7b69 PrintStackTraceSignalHandler(void*)
llvm-project/llvm/lib/Support/Unix/Signals.inc:462:1
#2 0x0000000004ce6113 llvm::sys::RunSignalHandlers()
llvm-project/llvm/lib/Support/Signals.cpp:0:5
#3 0x0000000004ce7ec4 SignalHandler(int)
llvm-project/llvm/lib/Support/Unix/Signals.inc:252:1
#4 0x00007f0d0120b0c0 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0)
#5 0x00007f0cffda0fcf gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
#6 0x00007f0cffda23fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
#7 0x00007f0cffd99e37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
#8 0x00007f0cffd99ee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
#9 0x0000000004b21649 llvm::DAGTypeLegalizer::run()
llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:409:7
#10 0x0000000004b26b9e llvm::SelectionDAG::LegalizeTypes()
llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp:1187:34
#11 0x0000000004b01bf0 llvm::SelectionDAGISel::CodeGenAndEmitDAG()
llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:761:23
#12 0x0000000004b01280
llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Instruction,
true, false, void>, false, true>,
llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Instruction, true,
false, void>, false, true>, bool&)
llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:665:1
#13 0x0000000004b00f81
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&)
llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:0:7
#14 0x0000000004afe2e9
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&)
llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:467:22
#15 0x00000000038929fb (anonymous
namespace)::X86DAGToDAGISel::runOnMachineFunction(llvm::MachineFunction&)
llvm-project/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp:174:25
#16 0x0000000003eefe41
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:62:8
#17 0x000000000438f2af llvm::FPPassManager::runOnFunction(llvm::Function&)
llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1520:27
#18 0x000000000438f5c5 llvm::FPPassManager::runOnModule(llvm::Module&)
llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1541:16
#19 0x000000000438fd5a (anonymous
namespace)::MPPassManager::runOnModule(llvm::Module&)
llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1597:27
#20 0x000000000438f886 llvm::legacy::PassManagerImpl::run(llvm::Module&)
llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1700:16
#21 0x0000000004390271 llvm::legacy::PassManager::run(llvm::Module&)
llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1731:3
#22 0x0000000002542253 compileModule(char**, llvm::LLVMContext&)
llvm-project/llvm/tools/llc/llc.cpp:572:41
#23 0x000000000254088a main llvm-project/llvm/tools/llc/llc.cpp:346:13
#24 0x00007f0cffd8e2b1 __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x202b1)
#25 0x000000000254002a _start (out/build-clang-none/bin/llc+0x254002a)
Stack dump:
0.  Program arguments: out/build-clang-none/bin/llc
bugpoint-reduced-simplified.bc.ll 
1.  Running pass 'Function Pass Manager' on module
'bugpoint-reduced-simplified.bc.ll'.
2.  Running pass 'X86 DAG->DAG Instruction Selection' on function
'@_Z11get_symmopsP2RT'


Attaching simplified reproducer.
It's quite large. Simplifycfg hides the bug. Removing any instruction hides
crash but compilation can take significant time.

-- 
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/20171225/2d511590/attachment.html>


More information about the llvm-bugs mailing list