[llvm-bugs] [Bug 35501] New: [LegalizeDAG] Assertion `(TLI.getTypeAction(*DAG.getContext(), Op.getValueType()) == TargetLowering::TypeLegal || TLI.isTypeLegal(Op.getValueType()) || Op.getOpcode() == ISD::TargetConstant || Op.getOpcode() == ISD::Register) && "Unexpected illegal type!"

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Dec 1 14:19:11 PST 2017


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

            Bug ID: 35501
           Summary: [LegalizeDAG] Assertion
                    `(TLI.getTypeAction(*DAG.getContext(),
                    Op.getValueType()) == TargetLowering::TypeLegal ||
                    TLI.isTypeLegal(Op.getValueType()) || Op.getOpcode()
                    == ISD::TargetConstant || Op.getOpcode() ==
                    ISD::Register) && "Unexpected illegal type!"
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: AArch64
          Assignee: unassignedbugs at nondot.org
          Reporter: mcrosier at codeaurora.org
                CC: llvm-bugs at lists.llvm.org

Reproduce with llc -O3 test.ll

Backtrack:
llc:
/local/mnt/workspace/mrosier/llvm-community/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:992:
void (anonymous namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode *):
Assertion `(TLI.getTypeAction(*DAG.getContext(), Op.getValueType()) ==
TargetLowering::TypeLegal || TLI.isTypeLegal(Op.getValueType()) ||
Op.getOpcode() == ISD::TargetConstant || Op.getOpcode() == ISD::Register) &&
"Unexpected illegal type!"' failed.
#0 0x0000000001d256b4 PrintStackTraceSignalHandler(void*)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1d256b4)
#1 0x0000000001d259d6 SignalHandler(int)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1d259d6)
#2 0x00007fe7c3999330 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
#3 0x00007fe7c35f6c37 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x36c37)
#4 0x00007fe7c35fa028 abort (/lib/x86_64-linux-gnu/libc.so.6+0x3a028)
#5 0x00007fe7c35efbf6 (/lib/x86_64-linux-gnu/libc.so.6+0x2fbf6)
#6 0x00007fe7c35efca2 (/lib/x86_64-linux-gnu/libc.so.6+0x2fca2)
#7 0x0000000001b1f4f7 (anonymous
namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode*)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1b1f4f7)
#8 0x0000000001b1c7e3 llvm::SelectionDAG::Legalize()
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1b1c7e3)
#9 0x0000000001bf4a7a llvm::SelectionDAGISel::CodeGenAndEmitDAG()
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bf4a7a)
#10 0x0000000001bf2359
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bf2359)
#11 0x0000000001bee81d
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bee81d)
#12 0x00000000014bd084
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x14bd084)
#13 0x00000000017a9bff llvm::FPPassManager::runOnFunction(llvm::Function&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17a9bff)
#14 0x00000000017a9e53 llvm::FPPassManager::runOnModule(llvm::Module&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17a9e53)
#15 0x00000000017aa355 llvm::legacy::PassManagerImpl::run(llvm::Module&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17aa355)
#16 0x00000000006d1855 compileModule(char**, llvm::LLVMContext&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x6d1855)
#17 0x00000000006cf02b main
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x6cf02b)
#18 0x00007fe7c35e1f45 __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x21f45)
#19 0x00000000006ce015 _start
/local/mnt/workspace/sysroots/.build/x86_64-dcg-linux-gnu/build/src/glibc/csu/../sysdeps/x86_64/elf/start.S:116:0
Stack dump:
0.      Program arguments:
/local/mnt/workspace/mrosier/llvm-community/install/bin/llc -O3 test.ll 
1.      Running pass 'Function Pass Manager' on module 'test.ll'.
2.      Running pass 'AArch64 Instruction Selection' on function '@fn1'
Abort (core dumped)
tranquillien{329}> /local/mnt/workspace/mrosier/llvm-community/install/bin/llc
-O3 test.ll
llc:
/local/mnt/workspace/mrosier/llvm-community/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:992:
void (anonymous namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode *):
Assertion `(TLI.getTypeAction(*DAG.getContext(), Op.getValueType()) ==
TargetLowering::TypeLegal || TLI.isTypeLegal(Op.getValueType()) ||
Op.getOpcode() == ISD::TargetConstant || Op.getOpcode() == ISD::Register) &&
"Unexpected illegal type!"' failed.
#0 0x0000000001d256b4 PrintStackTraceSignalHandler(void*)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1d256b4)
#1 0x0000000001d259d6 SignalHandler(int)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1d259d6)
#2 0x00007fd768e94330 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
#3 0x00007fd768af1c37 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x36c37)
#4 0x00007fd768af5028 abort (/lib/x86_64-linux-gnu/libc.so.6+0x3a028)
#5 0x00007fd768aeabf6 (/lib/x86_64-linux-gnu/libc.so.6+0x2fbf6)
#6 0x00007fd768aeaca2 (/lib/x86_64-linux-gnu/libc.so.6+0x2fca2)
#7 0x0000000001b1f4f7 (anonymous
namespace)::SelectionDAGLegalize::LegalizeOp(llvm::SDNode*)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1b1f4f7)
#8 0x0000000001b1c7e3 llvm::SelectionDAG::Legalize()
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1b1c7e3)
#9 0x0000000001bf4a7a llvm::SelectionDAGISel::CodeGenAndEmitDAG()
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bf4a7a)
#10 0x0000000001bf2359
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bf2359)
#11 0x0000000001bee81d
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x1bee81d)
#12 0x00000000014bd084
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x14bd084)
#13 0x00000000017a9bff llvm::FPPassManager::runOnFunction(llvm::Function&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17a9bff)
#14 0x00000000017a9e53 llvm::FPPassManager::runOnModule(llvm::Module&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17a9e53)
#15 0x00000000017aa355 llvm::legacy::PassManagerImpl::run(llvm::Module&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x17aa355)
#16 0x00000000006d1855 compileModule(char**, llvm::LLVMContext&)
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x6d1855)
#17 0x00000000006cf02b main
(/local/mnt/workspace/mrosier/llvm-community/install/bin/llc+0x6cf02b)
#18 0x00007fd768adcf45 __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x21f45)
#19 0x00000000006ce015 _start
/local/mnt/workspace/sysroots/.build/x86_64-dcg-linux-gnu/build/src/glibc/csu/../sysdeps/x86_64/elf/start.S:116:0
Stack dump:
0.      Program arguments:
/local/mnt/workspace/mrosier/llvm-community/install/bin/llc -O3 test.ll 
1.      Running pass 'Function Pass Manager' on module 'test.ll'.
2.      Running pass 'AArch64 Instruction Selection' on function '@fn1'
Abort (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/20171201/dc32602d/attachment-0001.html>


More information about the llvm-bugs mailing list