Issue |
141541
|
Summary |
[arm64ec] llvm/test/CodeGen/AArch64/arm64ec-varargs.ll fails with -filetype=obj
|
Labels |
new issue
|
Assignees |
efriedma-quic
|
Reporter |
MaskRay
|
The test would fail with `-filetype=obj`. llvm/lib/Target/AArch64/AArch64MCInstLower.cpp:80 `Printer.OutStreamer->emitAssignment` calls `setVariableValue`, which has an assertion that `SymbolContents` must be SymContentsUnset/SymContentsVariable.
However, when using MCObjectStreamer, the SymbolContents would be SymContentsOffset.
```
% myllc -mtriple=arm64ec-pc-windows-msvc -arm64ec-generate-thunks=false < CodeGen/AArch64/arm64ec-varargs.ll -filetype=obj
llc: /home/ray/llvm/llvm/lib/MC/MCSymbol.cpp:52: void llvm::MCSymbol::setVariableValue(const MCExpr *): Assertion `(SymbolContents == SymContentsUnset || SymbolContents == SymContentsVariable) && "Cannot give common/offset symbol a variable value"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /tmp/Debug/bin/llc -mtriple=arm64ec-pc-windows-msvc -arm64ec-generate-thunks=false -filetype=obj
1. Running pass 'Function Pass Manager' on module '<stdin>'.
2. Running pass 'AArch64 Assembly Printer' on function '@varargs_caller'
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0 libLLVMSupport.so.21.0git 0x000077b2cc05303d llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 61
^Cfish: Job 1, '/tmp/Debug/bin/llc $argv' terminated by signal SIGABRT (Abort)
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs