Skip to content

Crash targeting i386-elf-win32 with debugging information #87140

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
LoveMHz opened this issue Mar 30, 2024 · 4 comments · Fixed by #87149
Closed

Crash targeting i386-elf-win32 with debugging information #87140

LoveMHz opened this issue Mar 30, 2024 · 4 comments · Fixed by #87149
Labels
clang:driver 'clang' and 'clang++' user-facing binaries. Not 'clang-cl' crash Prefer [crash-on-valid] or [crash-on-invalid]

Comments

@LoveMHz
Copy link

LoveMHz commented Mar 30, 2024

Confirmed crashing a385a91 (release/18.x)

Stack dump:
0.      Program arguments: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang -target i386-pc-win32-elf -ffreestanding -fno-builtin -nostdlib -c -g test.c -o test.o
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'test.c'.
4.      Running pass 'X86 Assembly Printer' on function '@test'
 #0 0x0000555a4e641de4 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:723:22
 #1 0x0000555a4e642205 PrintStackTraceSignalHandler(void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:798:1
 #2 0x0000555a4e63f655 llvm::sys::RunSignalHandlers() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Signals.cpp:105:20
 #3 0x0000555a4e641545 llvm::sys::CleanupOnSignal(unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:367:31
 #4 0x0000555a4e55fa66 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
 #5 0x0000555a4e55ff92 CrashRecoverySignalHandler(int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:391:1
 #6 0x00007f1d16442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #7 0x0000555a4c86fe0b llvm::X86AsmPrinter::emitFunctionBodyStart() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:105:0
 #8 0x0000555a4fc77769 llvm::AsmPrinter::emitFunctionBody() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:1685:16
 #9 0x0000555a4c86fd72 llvm::X86AsmPrinter::runOnMachineFunction(llvm::MachineFunction&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:91:0
#10 0x0000555a4d5117d8 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/MachineFunctionPass.cpp:93:33
#11 0x0000555a4dd208f4 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1443:20
#12 0x0000555a4dd20bca llvm::FPPassManager::runOnModule(llvm::Module&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1489:13
#13 0x0000555a4dd2102b (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1558:20
#14 0x0000555a4dd1bca6 llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:541:13
#15 0x0000555a4dd21921 llvm::legacy::PassManager::run(llvm::Module&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1686:1
#16 0x0000555a4e9fffa7 (anonymous namespace)::EmitAssemblyHelper::RunCodegenPipeline(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>&, std::unique_ptr<llvm::ToolOutputFile, std::default_delete<llvm::ToolOutputFile>>&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1145:3
#17 0x0000555a4ea001bb (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1169:17
#18 0x0000555a4ea01307 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1328:25
#19 0x0000555a4f3ae263 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:379:20
#20 0x0000555a52570da8 clang::ParseAST(clang::Sema&, bool, bool) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Parse/ParseAST.cpp:183:14
#21 0x0000555a4f6bca36 clang::ASTFrontendAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1183:11
#22 0x0000555a4f3b2536 clang::CodeGenAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:1154:5
#23 0x0000555a4f6bc2e0 clang::FrontendAction::Execute() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1073:38
#24 0x0000555a4f5cbe31 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/CompilerInstance.cpp:1057:42
#25 0x0000555a4f86917b clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:272:38
#26 0x0000555a4a8b69d7 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/cc1_main.cpp:294:40
#27 0x0000555a4a8a60ac ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:365:20
#28 0x0000555a4a8a62cb clang_main(int, char**, llvm::ToolContext const&)::'lambda'(llvm::SmallVectorImpl<char const*>&)::operator()(llvm::SmallVectorImpl<char const*>&) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:505:5
#29 0x0000555a4a8a79b7 int llvm::function_ref<int (llvm::SmallVectorImpl<char const*>&)>::callback_fn<clang_main(int, char**, llvm::ToolContext const&)::'lambda'(llvm::SmallVectorImpl<char const*>&)>(long, llvm::SmallVectorImpl<char const*>&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:47:3
#30 0x0000555a4f42ca91 llvm::function_ref<int (llvm::SmallVectorImpl<char const*>&)>::operator()(llvm::SmallVectorImpl<char const*>&) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:3
#31 0x0000555a4f42b786 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:32
#32 0x0000555a4f42bc45 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:40
#33 0x0000555a4d259d94 llvm::function_ref<void ()>::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:62
#34 0x0000555a4e5601af llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:427:10
#35 0x0000555a4f42b9a3 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:7
#36 0x0000555a4f3c79a7 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:199:22
#37 0x0000555a4f3c7d28 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:253:62
#38 0x0000555a4f3db1f1 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Driver.cpp:1921:28
#39 0x0000555a4a8a74ee clang_main(int, char**, llvm::ToolContext const&) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:540:39
#40 0x0000555a4a8e23b8 main /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/tools/clang/tools/driver/clang-driver.cpp:17:20
#41 0x00007f1d16429d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#42 0x00007f1d16429e40 call_init ./csu/../csu/libc-start.c:128:20
#43 0x00007f1d16429e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#44 0x0000555a4a8a4525 _start (/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang+0x13d9525)
clang: error: clang frontend command failed with exit code 139 (use -v to see invocation)
clang version 18.1.2 ([email protected]:MakeMHz/stellar-llvm.git 439260f7074e551a0c3258d50c5264678766a2b9)
Target: i386-pc-windows-elf
Thread model: posix
InstalledDir: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin
clang: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/test-f5bc62.c
clang: note: diagnostic msg: /tmp/test-f5bc62.sh
clang: note: diagnostic msg: ```

# Driver args: "-target" "i386-pc-win32-elf" "-ffreestanding" "-fno-builtin" "-nostdlib" "-c" "-g" "test.c" "-o" "test.o"
# Original command:  "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-resource-dir" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18" "-internal-isystem" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18/include" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-o" "test.o" "-x" "c" "test.c"
 "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-x" "c" "test-f5bc62.c"
# 1 "test.c"
int test(void) {
    int a = 1;
    return a;
}
@EugeneZelenko EugeneZelenko added backend:X86 crash Prefer [crash-on-valid] or [crash-on-invalid] and removed new issue labels Mar 30, 2024
@llvmbot
Copy link
Member

llvmbot commented Mar 30, 2024

@llvm/issue-subscribers-backend-x86

Author: Dustin Holden (LoveMHz)

Confirmed crashing a385a91 (release/18.x)
Stack dump:
0.      Program arguments: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang -target i386-pc-win32-elf -ffreestanding -fno-builtin -nostdlib -c -g test.c -o test.o
1.      &lt;eof&gt; parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'test.c'.
4.      Running pass 'X86 Assembly Printer' on function '@<!-- -->test'
 #<!-- -->0 0x0000555a4e641de4 llvm::sys::PrintStackTrace(llvm::raw_ostream&amp;, int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:723:22
 #<!-- -->1 0x0000555a4e642205 PrintStackTraceSignalHandler(void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:798:1
 #<!-- -->2 0x0000555a4e63f655 llvm::sys::RunSignalHandlers() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Signals.cpp:105:20
 #<!-- -->3 0x0000555a4e641545 llvm::sys::CleanupOnSignal(unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:367:31
 #<!-- -->4 0x0000555a4e55fa66 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
 #<!-- -->5 0x0000555a4e55ff92 CrashRecoverySignalHandler(int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:391:1
 #<!-- -->6 0x00007f1d16442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #<!-- -->7 0x0000555a4c86fe0b llvm::X86AsmPrinter::emitFunctionBodyStart() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:105:0
 #<!-- -->8 0x0000555a4fc77769 llvm::AsmPrinter::emitFunctionBody() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:1685:16
 #<!-- -->9 0x0000555a4c86fd72 llvm::X86AsmPrinter::runOnMachineFunction(llvm::MachineFunction&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:91:0
#<!-- -->10 0x0000555a4d5117d8 llvm::MachineFunctionPass::runOnFunction(llvm::Function&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/MachineFunctionPass.cpp:93:33
#<!-- -->11 0x0000555a4dd208f4 llvm::FPPassManager::runOnFunction(llvm::Function&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1443:20
#<!-- -->12 0x0000555a4dd20bca llvm::FPPassManager::runOnModule(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1489:13
#<!-- -->13 0x0000555a4dd2102b (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1558:20
#<!-- -->14 0x0000555a4dd1bca6 llvm::legacy::PassManagerImpl::run(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:541:13
#<!-- -->15 0x0000555a4dd21921 llvm::legacy::PassManager::run(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1686:1
#<!-- -->16 0x0000555a4e9fffa7 (anonymous namespace)::EmitAssemblyHelper::RunCodegenPipeline(clang::BackendAction, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;&amp;, std::unique_ptr&lt;llvm::ToolOutputFile, std::default_delete&lt;llvm::ToolOutputFile&gt;&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1145:3
#<!-- -->17 0x0000555a4ea001bb (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1169:17
#<!-- -->18 0x0000555a4ea01307 clang::EmitBackendOutput(clang::DiagnosticsEngine&amp;, clang::HeaderSearchOptions const&amp;, clang::CodeGenOptions const&amp;, clang::TargetOptions const&amp;, clang::LangOptions const&amp;, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr&lt;llvm::vfs::FileSystem&gt;, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1328:25
#<!-- -->19 0x0000555a4f3ae263 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:379:20
#<!-- -->20 0x0000555a52570da8 clang::ParseAST(clang::Sema&amp;, bool, bool) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Parse/ParseAST.cpp:183:14
#<!-- -->21 0x0000555a4f6bca36 clang::ASTFrontendAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1183:11
#<!-- -->22 0x0000555a4f3b2536 clang::CodeGenAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:1154:5
#<!-- -->23 0x0000555a4f6bc2e0 clang::FrontendAction::Execute() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1073:38
#<!-- -->24 0x0000555a4f5cbe31 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/CompilerInstance.cpp:1057:42
#<!-- -->25 0x0000555a4f86917b clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:272:38
#<!-- -->26 0x0000555a4a8b69d7 cc1_main(llvm::ArrayRef&lt;char const*&gt;, char const*, void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/cc1_main.cpp:294:40
#<!-- -->27 0x0000555a4a8a60ac ExecuteCC1Tool(llvm::SmallVectorImpl&lt;char const*&gt;&amp;, llvm::ToolContext const&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:365:20
#<!-- -->28 0x0000555a4a8a62cb clang_main(int, char**, llvm::ToolContext const&amp;)::'lambda'(llvm::SmallVectorImpl&lt;char const*&gt;&amp;)::operator()(llvm::SmallVectorImpl&lt;char const*&gt;&amp;) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:505:5
#<!-- -->29 0x0000555a4a8a79b7 int llvm::function_ref&lt;int (llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;::callback_fn&lt;clang_main(int, char**, llvm::ToolContext const&amp;)::'lambda'(llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;(long, llvm::SmallVectorImpl&lt;char const*&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:47:3
#<!-- -->30 0x0000555a4f42ca91 llvm::function_ref&lt;int (llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;::operator()(llvm::SmallVectorImpl&lt;char const*&gt;&amp;) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:3
#<!-- -->31 0x0000555a4f42b786 clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const::'lambda'()::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:32
#<!-- -->32 0x0000555a4f42bc45 void llvm::function_ref&lt;void ()&gt;::callback_fn&lt;clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const::'lambda'()&gt;(long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:40
#<!-- -->33 0x0000555a4d259d94 llvm::function_ref&lt;void ()&gt;::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:62
#<!-- -->34 0x0000555a4e5601af llvm::CrashRecoveryContext::RunSafely(llvm::function_ref&lt;void ()&gt;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:427:10
#<!-- -->35 0x0000555a4f42b9a3 clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:7
#<!-- -->36 0x0000555a4f3c79a7 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&amp;, clang::driver::Command const*&amp;, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:199:22
#<!-- -->37 0x0000555a4f3c7d28 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&amp;, llvm::SmallVectorImpl&lt;std::pair&lt;int, clang::driver::Command const*&gt;&gt;&amp;, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:253:62
#<!-- -->38 0x0000555a4f3db1f1 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&amp;, llvm::SmallVectorImpl&lt;std::pair&lt;int, clang::driver::Command const*&gt;&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Driver.cpp:1921:28
#<!-- -->39 0x0000555a4a8a74ee clang_main(int, char**, llvm::ToolContext const&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:540:39
#<!-- -->40 0x0000555a4a8e23b8 main /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/tools/clang/tools/driver/clang-driver.cpp:17:20
#<!-- -->41 0x00007f1d16429d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#<!-- -->42 0x00007f1d16429e40 call_init ./csu/../csu/libc-start.c:128:20
#<!-- -->43 0x00007f1d16429e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#<!-- -->44 0x0000555a4a8a4525 _start (/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang+0x13d9525)
clang: error: clang frontend command failed with exit code 139 (use -v to see invocation)
clang version 18.1.2 (git@<!-- -->github.com:MakeMHz/stellar-llvm.git 439260f7074e551a0c3258d50c5264678766a2b9)
Target: i386-pc-windows-elf
Thread model: posix
InstalledDir: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin
clang: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/test-f5bc62.c
clang: note: diagnostic msg: /tmp/test-f5bc62.sh
clang: note: diagnostic msg: ```

# Driver args: "-target" "i386-pc-win32-elf" "-ffreestanding" "-fno-builtin" "-nostdlib" "-c" "-g" "test.c" "-o" "test.o"
# Original command:  "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-resource-dir" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18" "-internal-isystem" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18/include" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-o" "test.o" "-x" "c" "test.c"
 "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-x" "c" "test-f5bc62.c"
# 1 "test.c"
int test(void) {
    int a = 1;
    return a;
}

phoebewang added a commit to phoebewang/llvm-project that referenced this issue Mar 30, 2024
We have many problems to use CodeView for a win32-elf target, e.g., llvm#87140
and `error: .seh_* directives are not supported on this target`.

Fixes: llvm#87140
@phoebewang
Copy link
Contributor

A possible fix #87149.

phoebewang added a commit to phoebewang/llvm-project that referenced this issue Mar 30, 2024
We have many problems to use CodeView for a win32-elf target, e.g., llvm#87140
and `error: .seh_* directives are not supported on this target`.

Fixes: llvm#87140
@EugeneZelenko EugeneZelenko added clang:driver 'clang' and 'clang++' user-facing binaries. Not 'clang-cl' and removed backend:X86 labels Mar 30, 2024
@llvmbot
Copy link
Member

llvmbot commented Mar 30, 2024

@llvm/issue-subscribers-clang-driver

Author: Dustin Holden (LoveMHz)

Confirmed crashing a385a91 (release/18.x)
Stack dump:
0.      Program arguments: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang -target i386-pc-win32-elf -ffreestanding -fno-builtin -nostdlib -c -g test.c -o test.o
1.      &lt;eof&gt; parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'test.c'.
4.      Running pass 'X86 Assembly Printer' on function '@<!-- -->test'
 #<!-- -->0 0x0000555a4e641de4 llvm::sys::PrintStackTrace(llvm::raw_ostream&amp;, int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:723:22
 #<!-- -->1 0x0000555a4e642205 PrintStackTraceSignalHandler(void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:798:1
 #<!-- -->2 0x0000555a4e63f655 llvm::sys::RunSignalHandlers() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Signals.cpp:105:20
 #<!-- -->3 0x0000555a4e641545 llvm::sys::CleanupOnSignal(unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/Unix/Signals.inc:367:31
 #<!-- -->4 0x0000555a4e55fa66 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
 #<!-- -->5 0x0000555a4e55ff92 CrashRecoverySignalHandler(int) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:391:1
 #<!-- -->6 0x00007f1d16442520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #<!-- -->7 0x0000555a4c86fe0b llvm::X86AsmPrinter::emitFunctionBodyStart() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:105:0
 #<!-- -->8 0x0000555a4fc77769 llvm::AsmPrinter::emitFunctionBody() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:1685:16
 #<!-- -->9 0x0000555a4c86fd72 llvm::X86AsmPrinter::runOnMachineFunction(llvm::MachineFunction&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Target/X86/X86AsmPrinter.cpp:91:0
#<!-- -->10 0x0000555a4d5117d8 llvm::MachineFunctionPass::runOnFunction(llvm::Function&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/CodeGen/MachineFunctionPass.cpp:93:33
#<!-- -->11 0x0000555a4dd208f4 llvm::FPPassManager::runOnFunction(llvm::Function&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1443:20
#<!-- -->12 0x0000555a4dd20bca llvm::FPPassManager::runOnModule(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1489:13
#<!-- -->13 0x0000555a4dd2102b (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1558:20
#<!-- -->14 0x0000555a4dd1bca6 llvm::legacy::PassManagerImpl::run(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:541:13
#<!-- -->15 0x0000555a4dd21921 llvm::legacy::PassManager::run(llvm::Module&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/IR/LegacyPassManager.cpp:1686:1
#<!-- -->16 0x0000555a4e9fffa7 (anonymous namespace)::EmitAssemblyHelper::RunCodegenPipeline(clang::BackendAction, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;&amp;, std::unique_ptr&lt;llvm::ToolOutputFile, std::default_delete&lt;llvm::ToolOutputFile&gt;&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1145:3
#<!-- -->17 0x0000555a4ea001bb (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1169:17
#<!-- -->18 0x0000555a4ea01307 clang::EmitBackendOutput(clang::DiagnosticsEngine&amp;, clang::HeaderSearchOptions const&amp;, clang::CodeGenOptions const&amp;, clang::TargetOptions const&amp;, clang::LangOptions const&amp;, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr&lt;llvm::vfs::FileSystem&gt;, std::unique_ptr&lt;llvm::raw_pwrite_stream, std::default_delete&lt;llvm::raw_pwrite_stream&gt;&gt;, clang::BackendConsumer*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/BackendUtil.cpp:1328:25
#<!-- -->19 0x0000555a4f3ae263 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:379:20
#<!-- -->20 0x0000555a52570da8 clang::ParseAST(clang::Sema&amp;, bool, bool) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Parse/ParseAST.cpp:183:14
#<!-- -->21 0x0000555a4f6bca36 clang::ASTFrontendAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1183:11
#<!-- -->22 0x0000555a4f3b2536 clang::CodeGenAction::ExecuteAction() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/CodeGen/CodeGenAction.cpp:1154:5
#<!-- -->23 0x0000555a4f6bc2e0 clang::FrontendAction::Execute() /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/FrontendAction.cpp:1073:38
#<!-- -->24 0x0000555a4f5cbe31 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Frontend/CompilerInstance.cpp:1057:42
#<!-- -->25 0x0000555a4f86917b clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:272:38
#<!-- -->26 0x0000555a4a8b69d7 cc1_main(llvm::ArrayRef&lt;char const*&gt;, char const*, void*) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/cc1_main.cpp:294:40
#<!-- -->27 0x0000555a4a8a60ac ExecuteCC1Tool(llvm::SmallVectorImpl&lt;char const*&gt;&amp;, llvm::ToolContext const&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:365:20
#<!-- -->28 0x0000555a4a8a62cb clang_main(int, char**, llvm::ToolContext const&amp;)::'lambda'(llvm::SmallVectorImpl&lt;char const*&gt;&amp;)::operator()(llvm::SmallVectorImpl&lt;char const*&gt;&amp;) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:505:5
#<!-- -->29 0x0000555a4a8a79b7 int llvm::function_ref&lt;int (llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;::callback_fn&lt;clang_main(int, char**, llvm::ToolContext const&amp;)::'lambda'(llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;(long, llvm::SmallVectorImpl&lt;char const*&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:47:3
#<!-- -->30 0x0000555a4f42ca91 llvm::function_ref&lt;int (llvm::SmallVectorImpl&lt;char const*&gt;&amp;)&gt;::operator()(llvm::SmallVectorImpl&lt;char const*&gt;&amp;) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:69:3
#<!-- -->31 0x0000555a4f42b786 clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const::'lambda'()::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:32
#<!-- -->32 0x0000555a4f42bc45 void llvm::function_ref&lt;void ()&gt;::callback_fn&lt;clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const::'lambda'()&gt;(long) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:46:40
#<!-- -->33 0x0000555a4d259d94 llvm::function_ref&lt;void ()&gt;::operator()() const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:62
#<!-- -->34 0x0000555a4e5601af llvm::CrashRecoveryContext::RunSafely(llvm::function_ref&lt;void ()&gt;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/llvm/lib/Support/CrashRecoveryContext.cpp:427:10
#<!-- -->35 0x0000555a4f42b9a3 clang::driver::CC1Command::Execute(llvm::ArrayRef&lt;std::optional&lt;llvm::StringRef&gt;&gt;, std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt;&gt;*, bool*) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Job.cpp:440:7
#<!-- -->36 0x0000555a4f3c79a7 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&amp;, clang::driver::Command const*&amp;, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:199:22
#<!-- -->37 0x0000555a4f3c7d28 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&amp;, llvm::SmallVectorImpl&lt;std::pair&lt;int, clang::driver::Command const*&gt;&gt;&amp;, bool) const /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Compilation.cpp:253:62
#<!-- -->38 0x0000555a4f3db1f1 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&amp;, llvm::SmallVectorImpl&lt;std::pair&lt;int, clang::driver::Command const*&gt;&gt;&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/lib/Driver/Driver.cpp:1921:28
#<!-- -->39 0x0000555a4a8a74ee clang_main(int, char**, llvm::ToolContext const&amp;) /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/clang/tools/driver/driver.cpp:540:39
#<!-- -->40 0x0000555a4a8e23b8 main /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/tools/clang/tools/driver/clang-driver.cpp:17:20
#<!-- -->41 0x00007f1d16429d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#<!-- -->42 0x00007f1d16429e40 call_init ./csu/../csu/libc-start.c:128:20
#<!-- -->43 0x00007f1d16429e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#<!-- -->44 0x0000555a4a8a4525 _start (/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang+0x13d9525)
clang: error: clang frontend command failed with exit code 139 (use -v to see invocation)
clang version 18.1.2 (git@<!-- -->github.com:MakeMHz/stellar-llvm.git 439260f7074e551a0c3258d50c5264678766a2b9)
Target: i386-pc-windows-elf
Thread model: posix
InstalledDir: /home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin
clang: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/test-f5bc62.c
clang: note: diagnostic msg: /tmp/test-f5bc62.sh
clang: note: diagnostic msg: ```

# Driver args: "-target" "i386-pc-win32-elf" "-ffreestanding" "-fno-builtin" "-nostdlib" "-c" "-g" "test.c" "-o" "test.o"
# Original command:  "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-resource-dir" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18" "-internal-isystem" "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/lib/clang/18/include" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-o" "test.o" "-x" "c" "test.c"
 "/home/dustin/Projects/MakeMHz/Stellar/stellar-llvm/build/bin/clang-18" "-cc1" "-triple" "i386-pc-windows-elf" "-emit-obj" "-mrelax-all" "-mincremental-linker-compatible" "-disable-free" "-clear-ast-before-backend" "-main-file-name" "test.c" "-mrelocation-model" "static" "-mframe-pointer=all" "-fmath-errno" "-ffp-contract=on" "-fno-rounding-math" "-mconstructor-aliases" "-ffreestanding" "-target-cpu" "pentium4" "-tune-cpu" "generic" "-gno-column-info" "-gcodeview" "-debug-info-kind=constructor" "-fdebug-compilation-dir=/home/dustin/llvm-crash" "-object-file-name=/home/dustin/llvm-crash/test.o" "-fcoverage-compilation-dir=/home/dustin/llvm-crash" "-ferror-limit" "19" "-fno-builtin" "-fno-use-cxa-atexit" "-fms-extensions" "-fms-compatibility" "-fms-compatibility-version=19.33" "-fskip-odr-check-in-gmf" "-fdelayed-template-parsing" "-fcolor-diagnostics" "-faddrsig" "-D__GCC_HAVE_DWARF2_CFI_ASM=1" "-x" "c" "test-f5bc62.c"
# 1 "test.c"
int test(void) {
    int a = 1;
    return a;
}

@LoveMHz
Copy link
Author

LoveMHz commented Mar 30, 2024

A possible fix #87149.

Thank you so much! That resolves the reported issue.

phoebewang added a commit that referenced this issue Apr 3, 2024
…7149)

We have many problems to use CodeView for a win32-elf target, e.g.,
#87140 and `error: .seh_* directives are not supported on this target`.

Fixes: #87140
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang:driver 'clang' and 'clang++' user-facing binaries. Not 'clang-cl' crash Prefer [crash-on-valid] or [crash-on-invalid]
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants