[llvm-bugs] [Bug 47757] New: getSizeInBits called on extended MVT
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Oct 7 18:20:59 PDT 2020
https://bugs.llvm.org/show_bug.cgi?id=47757
Bug ID: 47757
Summary: getSizeInBits called on extended MVT
Product: new-bugs
Version: 11.0
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: tmandry at google.com
CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org
Created attachment 24031
--> https://bugs.llvm.org/attachment.cgi?id=24031&action=edit
LLVM IR
When compiling Rust code targeting aarch64, I hit this assertion:
getSizeInBits called on extended MVT.
UNREACHABLE executed at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Support/MachineValueType.h:756!
Backtrace below. I'm attaching the IR but have not yet been able to reproduce
using opt or llc. The assertion failure occurs in a pass that's only enabled
when emitting object code.
Using the options from --debug-pass=Arguments resulted in a lot of "unknown
option" failures from opt; when I cleaned out all of these, I got a segfault
during pass initialization. I'm not sure what to do next.
=== Backtrace ===
#0 __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff2237537 in __GI_abort () at abort.c:79
#2 0x00007fffefb3c443 in llvm::llvm_unreachable_internal (msg=<optimized out>,
file=0x7fffee651927 <str.13.llvm>
"/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Support/MachineValueType.h",
line=756)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Support/ErrorHandling.cpp:210
#3 0x00007fffefb92b3c in llvm::MVT::getSizeInBits (this=<optimized out>)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Support/MachineValueType.h:756
#4 0x00007ffff061eaef in llvm::CallLowering::handleAssignments
(this=<optimized out>, CCInfo=..., ArgLocs=..., MIRBuilder=..., Args=...,
Handler=...) at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp:380
#5 0x00007ffff061dd42 in llvm::CallLowering::handleAssignments (this=0x2,
MIRBuilder=..., Args=..., Handler=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp:183
#6 0x00007ffff1b12c1c in llvm::AArch64CallLowering::lowerFormalArguments
(this=0x7fffc011b460, MIRBuilder=..., F=..., VRegs=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp:467
#7 0x00007ffff0641e9d in llvm::IRTranslator::runOnMachineFunction
(this=<optimized out>, CurMF=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp:2410
#8 0x00007fffeffefa9d in llvm::MachineFunctionPass::runOnFunction
(this=0x7fffc006e390, F=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:73
#9 0x00007fffefd826b1 in llvm::FPPassManager::runOnFunction
(this=0x7fffc005a6d0, F=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1516
#10 0x00007fffefd899e8 in llvm::FPPassManager::runOnModule
(this=0x7fffc005a6d0, M=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1552
#11 0x00007fffefd82d5a in (anonymous namespace)::MPPassManager::runOnModule
(this=<optimized out>, M=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1617
#12 llvm::legacy::PassManagerImpl::run (this=<optimized out>, M=...)
at
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:614
#13 0x00007ffff417165a in LLVMRustWriteOutputFile (Target=<optimized out>,
PMR=0x7fffc027a230, M=0x7fffd46de190, Path=<optimized out>,
RustFileType=<optimized out>) at llvm-wrapper/PassWrapper.cpp:646
=== opt failure ===
~/frust/build/x86_64-unknown-linux-gnu/llvm/bin/opt -disable-output -tti
-targetlibinfo -assumption-cache-tracker -profile-summary-info
-machine-branch-prob -pre-isel-intrinsic-lowering -atomic-expand -verify
-lower-constant-intrinsics -unreachableblockelim -post-inline-ee-instrument
-scalarize-masked-mem-intrin -expand-reductions -stack-tagging -rewrite-symbols
-dwarfehprepare -safe-stack -cseinfo -irtranslator -gisel-known-bits
-aarch64-prelegalizer-combiner -cseinfo -legalizer -regbankselect -localizer
-gisel-known-bits -instruction-select -aarch64-expand-pseudo
-aarch64-speculation-hardening -aarch64-sls-hardening -aarch64-branch-targets
-live-debug-variables obj/src/connectivity/wlan/lib/mlme/rust/libwlan_mlme.ll
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.
Stack dump:
0. Program arguments:
/usr/local/google/home/tmandry/frust/build/x86_64-unknown-linux-gnu/llvm/bin/opt
-disable-output -tti -targetlibinfo -assumption-cache-tracker
-profile-summary-info -machine-branch-prob -pre-isel-intrinsic-lowering
-atomic-expand -verify -lower-constant-intrinsics -unreachableblockelim
-post-inline-ee-instrument -scalarize-masked-mem-intrin -expand-reductions
-stack-tagging -rewrite-symbols -dwarfehprepare -safe-stack -cseinfo
-irtranslator -gisel-known-bits -aarch64-prelegalizer-combiner -cseinfo
-legalizer -regbankselect -localizer -gisel-known-bits -instruction-select
-aarch64-expand-pseudo -aarch64-speculation-hardening -aarch64-sls-hardening
-aarch64-branch-targets -live-debug-variables
obj/src/connectivity/wlan/lib/mlme/rust/libwlan_mlme.ll
#0 0x00007f51ed21c4fc llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:572:8
#1 0x00007f51ed21c4fc PrintStackTraceSignalHandler(void*)
(.llvm.11314778404941524178)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:624:3
#2 0x00007f51ed21a110 llvm::sys::RunSignalHandlers()
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Support/Signals.cpp:69:18
#3 0x00007f51ed21c775 SignalHandler(int)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3
#4 0x00007f51eb52f140 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x14140)
#5 0x00007f51ed62740e std::__2::unique_ptr<llvm::MCAsmInfo const,
std::__2::default_delete<llvm::MCAsmInfo const> >::get() const
/usr/local/google/home/tmandry/fuchsia/prebuilt/third_party/clang/linux-x64/bin/../include/c++/v1/memory:2443:19
#6 0x00007f51ed62740e llvm::TargetMachine::getMCAsmInfo() const
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Target/TargetMachine.h:189:58
#7 0x00007f51ed62740e
llvm::MachineModuleInfo::MachineModuleInfo(llvm::LLVMTargetMachine const*)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/MachineModuleInfo.cpp:193:28
#8 0x00007f51ed62740e
llvm::MachineModuleInfoWrapperPass::MachineModuleInfoWrapperPass(llvm::LLVMTargetMachine
const*)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/CodeGen/MachineModuleInfo.cpp:294:26
#9 0x00007f51ed627c28 llvm::Pass*
llvm::callDefaultCtor<llvm::MachineModuleInfoWrapperPass>()
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/PassSupport.h:80:56
#10 0x00007f51ed3917e8 llvm::PassInfo::createPass() const
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/PassInfo.h:101:12
#11 0x00007f51ed3917e8 llvm::PMTopLevelManager::schedulePass(llvm::Pass*)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:789:28
#12 0x000000000022f963 llvm::cl::opt_storage<bool, false, false>::getValue()
const
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Support/CommandLine.h:1398:38
#13 0x000000000022f963 llvm::cl::opt_storage<bool, false, false>::operator
bool() const
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/include/llvm/Support/CommandLine.h:1402:38
#14 0x000000000022f963 addPass(llvm::legacy::PassManagerBase&, llvm::Pass*)
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/tools/opt/opt.cpp:375:7
#15 0x000000000022f963 main
/usr/local/google/home/tmandry/frust/src/llvm-project/llvm/tools/opt/opt.cpp:891:7
#16 0x00007f51eb238cca __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x26cca)
#17 0x000000000021e419 _start
(/usr/local/google/home/tmandry/frust/build/x86_64-unknown-linux-gnu/llvm/bin/opt+0x21e419)
fish: “~/frust/build/x86_64-unknown-li…” terminated by signal SIGSEGV (Address
boundary error)
--
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/20201008/f50b8325/attachment-0001.html>
More information about the llvm-bugs
mailing list