Skip to content

[SystemZ] UNREACHABLE executed at llvm/lib/CodeGen/ValueTypes.cpp:252! due to call with type { i128 } argument #168460

@alexrp

Description

@alexrp
target datalayout = "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64"
target triple = "s390x-unknown-linux6.12.43-gnu2.41.0"

%main.U128 = type { i128 }

define ccc void @"main.test.C ABI integers"() {
Entry:
  call void null(%main.U128 zeroinitializer)
  ret void
}
❯ llc --version | head -n2
LLVM (http://llvm.org/):
  LLVM version 21.1.0
❯ llc reduced.ll
Unknown type!
UNREACHABLE executed at /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/ValueTypes.cpp:252!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: llc reduced.ll
1.      Running pass 'Function Pass Manager' on module 'reduced.ll'.
2.      Running pass 'SystemZ DAG->DAG Pattern Instruction Selection' on function '@"main.test.C ABI integers"'
 #0 0x0000772e5e391af0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/alexrp/Source/llvm-project/llvm/lib/Support/Unix/Signals.inc:838:3
 #1 0x0000772e5e38e9b4 llvm::sys::RunSignalHandlers() /home/alexrp/Source/llvm-project/llvm/lib/Support/Signals.cpp:104:20
 #2 0x0000772e5e38f1e9 SignalHandler(int, siginfo_t*, void*) /home/alexrp/Source/llvm-project/llvm/lib/Support/Unix/Signals.inc:426:14
 #3 0x0000772e5cc458d0 (/lib/x86_64-linux-gnu/libc.so.6+0x458d0)
 #4 0x0000772e5cca49bc __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x0000772e5cca49bc __pthread_kill_internal ./nptl/pthread_kill.c:89:10
 #6 0x0000772e5cca49bc pthread_kill ./nptl/pthread_kill.c:100:10
 #7 0x0000772e5cc4579e raise ./signal/../sysdeps/posix/raise.c:27:6
 #8 0x0000772e5cc288cd internal_signal_block_all ./stdlib/../sysdeps/unix/sysv/linux/internal-signals.h:81:3
 #9 0x0000772e5cc288cd __abort_lock_wrlock ./stdlib/abort.c:58:3
#10 0x0000772e5cc288cd abort ./stdlib/abort.c:81:3
#11 0x0000772e5e2a543e (/opt/llvm-21/bin/../lib/libLLVM.so.21.1+0xea543e)
#12 0x0000772e5ec0ed9b (/opt/llvm-21/bin/../lib/libLLVM.so.21.1+0x180ed9b)
#13 0x0000772e5ec0ee6c llvm::EVT::getEVT(llvm::Type*, bool) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/ValueTypes.cpp:302:40
#14 0x0000772e626fb2e4 llvm::SystemZTargetLowering::LowerCall(llvm::TargetLowering::CallLoweringInfo&, llvm::SmallVectorImpl<llvm::SDValue>&) const /home/alexrp/Source/llvm-project/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp:2284:37
#15 0x0000772e5eebcf27 llvm::SmallVectorBase<unsigned int>::size() const /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/SmallVector.h:79:32
#16 0x0000772e5eebcf27 llvm::SmallVectorImpl<llvm::SDValue>::operator=(llvm::SmallVectorImpl<llvm::SDValue> const&) /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/SmallVector.h:1012:28
#17 0x0000772e5eebcf27 llvm::SmallVector<llvm::SDValue, 4u>::operator=(llvm::SmallVector<llvm::SDValue, 4u> const&) /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/SmallVector.h:1243:34
#18 0x0000772e5eebcf27 llvm::TargetLowering::LowerCallTo(llvm::TargetLowering::CallLoweringInfo&) const /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:11255:16
#19 0x0000772e5eec7c3b llvm::SelectionDAGBuilder::lowerInvokable(llvm::TargetLowering::CallLoweringInfo&, llvm::BasicBlock const*) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:8841:3
#20 0x0000772e5eede236 llvm::SelectionDAGBuilder::LowerCallTo(llvm::CallBase const&, llvm::SDValue, bool, bool, llvm::BasicBlock const*, llvm::TargetLowering::PtrAuthInfo const*) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:8988:3
#21 0x0000772e5ef083b8 llvm::SelectionDAGBuilder::visitCall(llvm::CallInst const&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:9603:16
#22 0x0000772e5ef08774 llvm::Value::getValueID() const /home/alexrp/Source/llvm-project/llvm/include/llvm/IR/Value.h:544:12
#23 0x0000772e5ef08774 llvm::Instruction::getOpcode() const /home/alexrp/Source/llvm-project/llvm/include/llvm/IR/Instruction.h:312:49
#24 0x0000772e5ef08774 llvm::Instruction::isTerminator() const /home/alexrp/Source/llvm-project/llvm/include/llvm/IR/Instruction.h:315:50
#25 0x0000772e5ef08774 llvm::SelectionDAGBuilder::visit(llvm::Instruction const&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:1338:22
#26 0x0000772e5ef8c171 llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator_w_bits<llvm::ilist_detail::node_options<llvm::Instruction, true, false, void, true, llvm::BasicBlock>, false, true>, llvm::ilist_iterator_w_bits<llvm::ilist_detail::node_options<llvm::Instruction, true, false, void, true, llvm::BasicBlock>, false, true>, bool&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:854:17
#27 0x0000772e5ef8ccac llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1891:33
#28 0x0000772e5ef8e3d9 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:605:22
#29 0x0000772e5ef85137 llvm::OptLevelChanger::~OptLevelChanger() /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:267:11
#30 0x0000772e5ef85137 llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:373:1
#31 0x0000772e5ef85137 llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:345:6
#32 0x0000772e5e8d947b llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) /home/alexrp/Source/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:108:30
#33 0x0000772e5e54cd34 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/alexrp/Source/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1408:7
#34 0x0000772e5e54cf45 llvm::ilist_detail::node_base_prevnext<llvm::ilist_node_base<true, void>, true>::getNext() const /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/ilist_node_base.h:42:38
#35 0x0000772e5e54cf45 llvm::ilist_node_impl<llvm::ilist_detail::node_options<llvm::Function, true, false, void, false, void>>::getNext() /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/ilist_node.h:119:66
#36 0x0000772e5e54cf45 llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Function, true, false, void, false, void>, false, false>::operator++() /home/alexrp/Source/llvm-project/llvm/include/llvm/ADT/ilist_iterator.h:187:25
#37 0x0000772e5e54cf45 llvm::FPPassManager::runOnModule(llvm::Module&) /home/alexrp/Source/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1443:22
#38 0x0000772e5e54d75b runOnModule /home/alexrp/Source/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1520:7
#39 0x0000772e5e54d75b llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/alexrp/Source/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:55
#40 0x000058f6f43ec16d compileModule(char**, llvm::LLVMContext&) /home/alexrp/Source/llvm-project/llvm/tools/llc/llc.cpp:761:34
#41 0x000058f6f43e04cf main /home/alexrp/Source/llvm-project/llvm/tools/llc/llc.cpp:404:35
#42 0x0000772e5cc2a578 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#43 0x0000772e5cc2a63b call_init ./csu/../csu/libc-start.c:128:20
#44 0x0000772e5cc2a63b __libc_start_main ./csu/../csu/libc-start.c:347:5
#45 0x000058f6f43e1aa5 _start (/opt/llvm-21/bin/llc+0x14aa5)

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions