| Issue |
63831
|
| Summary |
MI.getNumImplicitOperands() == 0 Assert in llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
Caslyn
|
The assert introduced in https://reviews.llvm.org/D154943 is firing on Fuchsia Linux/Mac/Windows clang builders:
```
assert(MI.getNumImplicitOperands() == 0 &&
"MOVi32imm expected to have no implicit operands");
```
eg:
https://luci-milo.appspot.com/ui/p/fuchsia/builders/toolchain.ci/clang-linux-xarm64/b8775779651113385393/overview
This is the error that gets emitted:
```
FAILED: compiler-rt/lib/xray/CMakeFiles/RTXrayBASIC.armhf.dir/xray_basic_logging.cpp.o
/b/s/w/ir/x/w/llvm_build/./bin/clang++ --target=armv7-unknown-linux-gnueabihf --sysroot=/b/s/w/ir/x/w/cipd/linux -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -DXRAY_HAS_EXCEPTIONS=1 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_LIBCPP_ENABLE_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/b/s/w/ir/x/w/llvm-llvm-project/compiler-rt/lib/xray/.. -I/b/s/w/ir/x/w/llvm-llvm-project/compiler-rt/lib/xray/../../include -resource-dir=/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/./lib/clang/17 --target=armv7-unknown-linux-gnueabihf -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffile-prefix-map=/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-armv7-unknown-linux-gnueabihf-bins=../llvm_build/tools/clang/stage2-bins/runtimes/runtimes-armv7-unknown-linux-gnueabihf-bins -ffile-prefix-map=/b/s/w/ir/x/w/llvm-llvm-project/= -no-canonical-prefixes -Wall -Wno-unused-parameter -O2 -g -DNDEBUG -std=c++17 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -nostdinc++ -isystem/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/include/c++/v1 -isystem/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/include/armv7-unknown-linux-gnueabihf/c++/v1 -isystem/b/s/w/ir/x/w/llvm-llvm-project/libcxxabi/include -Wno-format -fno-rtti -MD -MT compiler-rt/lib/xray/CMakeFiles/RTXrayBASIC.armhf.dir/xray_basic_logging.cpp.o -MF compiler-rt/lib/xray/CMakeFiles/RTXrayBASIC.armhf.dir/xray_basic_logging.cpp.o.d -o compiler-rt/lib/xray/CMakeFiles/RTXrayBASIC.armhf.dir/xray_basic_logging.cpp.o -c /b/s/w/ir/x/w/llvm-llvm-project/compiler-rt/lib/xray/xray_basic_logging.cpp
clang++: llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp:1173: void (anonymous namespace)::ARMExpandPseudo::ExpandMOV32BitImm(MachineBasicBlock &, MachineBasicBlock::iterator &): Assertion `MI.getNumImplicitOperands() == 0 && "MOVi32imm expected to have no implicit operands"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
```
Reproducer attached below:
{F28213410}
@john-brawn-arm - would you be able to take a look?
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs