Skip to content

[KeyInstr][Clang] For range stmt atoms #134647

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

Merged
merged 6 commits into from
Jun 3, 2025
Merged

Conversation

OCHyams
Copy link
Contributor

@OCHyams OCHyams commented Apr 7, 2025

This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.

The Key Instructions project is introduced, including a "quick summary" section
at the top which adds context for this PR, here:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668

The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.

The Clang-side work is demoed here:
#130943

This was referenced Apr 7, 2025
@OCHyams OCHyams force-pushed the users/OCHyams/ki-clang-for branch from 375ca9f to c4b2db1 Compare May 21, 2025 14:50
@OCHyams OCHyams force-pushed the users/OCHyams/ki-clang-for-range branch from 2484a49 to bd77fcb Compare May 21, 2025 14:52
@OCHyams OCHyams force-pushed the users/OCHyams/ki-clang-for branch from 2317236 to 74a6ebd Compare May 23, 2025 13:43
@OCHyams OCHyams marked this pull request as draft May 23, 2025 13:44
@OCHyams OCHyams force-pushed the users/OCHyams/ki-clang-for-range branch from bd77fcb to 9e7139b Compare May 23, 2025 13:45
@OCHyams OCHyams changed the base branch from users/OCHyams/ki-clang-for to main May 23, 2025 13:45
@OCHyams OCHyams marked this pull request as ready for review May 23, 2025 13:45
@OCHyams OCHyams requested a review from jmorse May 23, 2025 13:45
Copy link
Contributor

@SLTozer SLTozer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Broadly LGTM, just a few style comments.

// RUN: %clang_cc1 -gkey-instructions %s -debug-info-kind=line-tables-only -emit-llvm -o - \
// RUN: | FileCheck %s --implicit-check-not atomGroup --implicit-check-not atomRank

// Perennial quesiton: should the inc be its own source atom or not
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Perennial quesiton: should the inc be its own source atom or not
// Perennial question: should the inc be its own source atom or not


// The stores in the setup (stores to __RANGE1, __BEGIN1, __END1) are all
// marked as Key. Unclear whether that's desirable. Keep for now as that's
// least risky.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For posterity, maybe explain what "risky" means in this context?

Comment on lines 1456 to 1457
if (auto *I = dyn_cast<llvm::Instruction>(BoolCondVal))
addInstToNewSourceAtom(I, nullptr);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a big fan of the shadowing here, it seems like it'd make things harder to parse at a glance?

OCHyams added 4 commits June 3, 2025 14:37
This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.

The Key Instructions project is introduced, including a "quick summary" section
at the top which adds context for this PR, here:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668

The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.

The Clang-side work is demoed here:
#130943
@OCHyams OCHyams force-pushed the users/OCHyams/ki-clang-for-range branch from 9e7139b to f01b5ff Compare June 3, 2025 13:51
Copy link
Contributor

@SLTozer SLTozer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with some nits.

OCHyams and others added 2 commits June 3, 2025 15:09
Co-authored-by: Stephen Tozer <stephen.tozer@sony.com>
Co-authored-by: Stephen Tozer <stephen.tozer@sony.com>
@OCHyams OCHyams merged commit 1002436 into main Jun 3, 2025
6 of 10 checks passed
@OCHyams OCHyams deleted the users/OCHyams/ki-clang-for-range branch June 3, 2025 14:44
@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 3, 2025

LLVM Buildbot has detected a new failure on builder sanitizer-aarch64-linux-fuzzer running on sanitizer-buildbot12 while building clang at step 1 "update-annotate-scripts".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/159/builds/23586

Here is the relevant piece of the build log for the reference
Step 1 (update-annotate-scripts) failure: update (failure)
git version 2.43.0
fatal: unable to access 'https://github.com/llvm/llvm-zorg.git/': The requested URL returned error: 502
fatal: unable to access 'https://github.com/llvm/llvm-zorg.git/': The requested URL returned error: 503

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 3, 2025

LLVM Buildbot has detected a new failure on builder llvm-clang-x86_64-sie-ubuntu-fast running on sie-linux-worker while building clang at step 6 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/144/builds/26730

Here is the relevant piece of the build log for the reference
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'Clang :: CoverageMapping/terminate-statements.cpp' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-scei-ps4-unknown -main-file-name terminate-statements.cpp -I /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/Inputs /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp | /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp # RUN: at line 1
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-scei-ps4-unknown -main-file-name terminate-statements.cpp -I /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/Inputs /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-scei-ps4-unknown -main-file-name terminate-statements.cpp -I /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/Inputs /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
1.	/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:45:1: current parser token 'int'
2.	/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: LLVM IR generation of declaration 'f6'
3.	/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: Generating code for declaration 'f6'
 #0 0x000057078c7e6500 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x2244500)
 #1 0x000057078c7e390f llvm::sys::RunSignalHandlers() (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x224190f)
 #2 0x000057078c7e3a5a SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
 #3 0x00007ee6660ea520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x000057078cc921a3 clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(clang::CXXForRangeStmt const&, llvm::ArrayRef<clang::Attr const*>) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x26f01a3)
 #5 0x000057078cc966dc clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x26f46dc)
 #6 0x000057078ccfc46d clang::CodeGen::CodeGenFunction::EmitFunctionBody(clang::Stmt const*) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x275a46d)
 #7 0x000057078cd1317f clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x277117f)
 #8 0x000057078cd756cd clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x27d36cd)
 #9 0x000057078cd701c4 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x27ce1c4)
#10 0x000057078cd7096b clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x27ce96b)
#11 0x000057078cd7a93f clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) (.part.0) CodeGenModule.cpp:0:0
#12 0x000057078d1665f6 (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) ModuleBuilder.cpp:0:0
#13 0x000057078d155001 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x2bb3001)
#14 0x000057078ec8c7d4 clang::ParseAST(clang::Sema&, bool, bool) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x46ea7d4)
#15 0x000057078d496b29 clang::FrontendAction::Execute() (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x2ef4b29)
#16 0x000057078d410935 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x2e6e935)
#17 0x000057078d5815b8 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0x2fdf5b8)
#18 0x000057078b284146 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0xce2146)
#19 0x000057078b27a2ba ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#20 0x000057078b27ed5d clang_main(int, char**, llvm::ToolContext const&) (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0xcdcd5d)
#21 0x000057078b16746b main (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0xbc546b)
#22 0x00007ee6660d1d90 __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#23 0x00007ee6660d1e40 call_init ./csu/../csu/libc-start.c:128:20
#24 0x00007ee6660d1e40 __libc_start_main ./csu/../csu/libc-start.c:379:5
#25 0x000057078b2799e5 _start (/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang+0xcd79e5)
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp

--

********************


@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 3, 2025

LLVM Buildbot has detected a new failure on builder premerge-monolithic-linux running on premerge-linux-1 while building clang at step 7 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/153/builds/33693

Here is the relevant piece of the build log for the reference
Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'Clang :: CoverageMapping/terminate-statements.cpp' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/build/buildbot/premerge-monolithic-linux/build/bin/clang -cc1 -internal-isystem /build/buildbot/premerge-monolithic-linux/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/Inputs /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp | /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp # RUN: at line 1
+ /build/buildbot/premerge-monolithic-linux/build/bin/clang -cc1 -internal-isystem /build/buildbot/premerge-monolithic-linux/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/Inputs /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
+ /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /build/buildbot/premerge-monolithic-linux/build/bin/clang -cc1 -internal-isystem /build/buildbot/premerge-monolithic-linux/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/Inputs /build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
1.	/build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:45:1: current parser token 'int'
2.	/build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: LLVM IR generation of declaration 'f6'
3.	/build/buildbot/premerge-monolithic-linux/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: Generating code for declaration 'f6'
 #0 0x00005ca145940d88 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/lib/Support/Unix/Signals.inc:804:13
 #1 0x00005ca14593e8be llvm::sys::RunSignalHandlers() /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/lib/Support/Signals.cpp:106:18
 #2 0x00005ca145941461 SignalHandler(int, siginfo_t*, void*) /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3
 #3 0x00007e8d6d900520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x00005ca145c8fff9 asInt /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:41:5
 #5 0x00005ca145c8fff9 operator long /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:45:48
 #6 0x00005ca145c8fff9 getPointer /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/PointerIntPair.h:94:58
 #7 0x00005ca145c8fff9 getPrev /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/ilist_node_base.h:41:54
 #8 0x00005ca145c8fff9 getPrev /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/ilist_node.h:123:59
 #9 0x00005ca145c8fff9 empty /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/ilist_node.h:319:45
#10 0x00005ca145c8fff9 empty /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/ADT/simple_ilist.h:139:54
#11 0x00005ca145c8fff9 getTerminator /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/IR/BasicBlock.h:244:18
#12 0x00005ca145c8fff9 getTerminator /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/IR/BasicBlock.h:250:48
#13 0x00005ca145c8fff9 clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(clang::CXXForRangeStmt const&, llvm::ArrayRef<clang::Attr const*>) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CGStmt.cpp:1549:39
#14 0x00005ca145c917a0 clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CGStmt.cpp:588:22
#15 0x00005ca145c6d2af EmitFunctionBody /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp:0:5
#16 0x00005ca145c6d2af clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp:1620:5
#17 0x00005ca145b9f1ce clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp:6174:3
#18 0x00005ca145b9675a clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp:0:12
#19 0x00005ca145b9bb6f clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp:4009:5
#20 0x00005ca145b95071 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp:7078:5
#21 0x00005ca146101a7c (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/ModuleBuilder.cpp:189:73
#22 0x00005ca1460f9526 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/CodeGen/CodeGenAction.cpp:172:7
#23 0x00005ca147e4743a clang::ParseAST(clang::Sema&, bool, bool) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/Parse/ParseAST.cpp:174:11
#24 0x00005ca146711b76 clang::FrontendAction::Execute() /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1225:10
#25 0x00005ca14668092d getPtr /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/Support/Error.h:278:42
#26 0x00005ca14668092d operator bool /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/include/llvm/Support/Error.h:241:16
#27 0x00005ca14668092d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1055:23
#28 0x00005ca14680af10 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:300:25
#29 0x00005ca142e1e737 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/tools/driver/cc1_main.cpp:297:15
#30 0x00005ca142e1ac5e ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/tools/driver/driver.cpp:223:12
#31 0x00005ca142e19c4a clang_main(int, char**, llvm::ToolContext const&) /build/buildbot/premerge-monolithic-linux/llvm-project/clang/tools/driver/driver.cpp:264:12
#32 0x00005ca142e2b067 main /build/buildbot/premerge-monolithic-linux/build/tools/clang/tools/driver/clang-driver.cpp:17:10
#33 0x00007e8d6d8e7d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#34 0x00007e8d6d8e7e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#35 0x00005ca142e18725 _start (/build/buildbot/premerge-monolithic-linux/build/bin/clang+0x5d0c725)
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 3, 2025

LLVM Buildbot has detected a new failure on builder clang-x86_64-debian-fast running on gribozavr4 while building clang at step 5 "build-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/56/builds/27497

Here is the relevant piece of the build log for the reference
Step 5 (build-unified-tree) failure: build (failure)
...
3.565 [183/98/214] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_symbolizer_markup_fuchsia.cpp.o
3.589 [182/98/215] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_symbolizer_report_fuchsia.cpp.o
3.601 [181/98/216] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_symbolizer_win.cpp.o
3.609 [180/98/217] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_unwind_linux_libcdep.cpp.o
3.621 [179/98/218] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_unwind_fuchsia.cpp.o
3.637 [178/98/219] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.i386.dir/sanitizer_unwind_win.cpp.o
3.661 [177/98/220] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.x86_64.dir/sanitizer_stacktrace_sparc.cpp.o
3.663 [176/98/221] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.x86_64.dir/sanitizer_symbolizer_mac.cpp.o
3.664 [175/98/222] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.x86_64.dir/sanitizer_symbolizer_markup_fuchsia.cpp.o
3.674 [174/98/223] Building CXX object compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o
FAILED: compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o 
/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang++ --target=x86_64-unknown-linux-gnu -DHAVE_RPC_XDR_H=1 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/.. -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 -Wall -Wno-unused-parameter -O3 -DNDEBUG -m32 -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 -ftrivial-auto-var-init=pattern -nostdinc++ -Wno-format -fno-rtti -Wframe-larger-than=570 -Wglobal-constructors -std=c++17 -MD -MT compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o -MF compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o.d -o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o -c /b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang++ --target=x86_64-unknown-linux-gnu -DHAVE_RPC_XDR_H=1 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/.. -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 -Wall -Wno-unused-parameter -O3 -DNDEBUG -m32 -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 -ftrivial-auto-var-init=pattern -nostdinc++ -Wno-format -fno-rtti -Wframe-larger-than=570 -Wglobal-constructors -std=c++17 -MD -MT compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o -MF compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o.d -o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.i386.dir/sanitizer_libignore.cpp.o -c /b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
1.	<eof> parser at end of file
2.	/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp:19:11: LLVM IR generation of declaration '__sanitizer'
3.	/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp:38:17: Generating code for declaration '__sanitizer::LibIgnore::OnLibraryLoaded'
4.	/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp:55:37: LLVM IR generation of compound statement ('{}')
5.	/b/1/clang-x86_64-debian-fast/llvm.src/compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp:58:37: LLVM IR generation of compound statement ('{}')
 #0 0x0000000003a11857 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3a11857)
 #1 0x0000000003a0f30e llvm::sys::RunSignalHandlers() (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3a0f30e)
 #2 0x0000000003a10c3d llvm::sys::CleanupOnSignal(unsigned long) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3a10c3d)
 #3 0x0000000003976d28 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #4 0x00007fdff0525140 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x13140)
 #5 0x0000000003e4e401 clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(clang::CXXForRangeStmt const&, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e4e401)
 #6 0x0000000003e41341 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e41341)
 #7 0x0000000003e424f1 clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e424f1)
 #8 0x0000000003e405f6 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e405f6)
 #9 0x0000000003e4e22c clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(clang::CXXForRangeStmt const&, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e4e22c)
#10 0x0000000003e41341 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e41341)
#11 0x0000000003e424f1 clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e424f1)
#12 0x0000000003e405f6 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e405f6)
#13 0x0000000003e44cd6 clang::CodeGen::CodeGenFunction::EmitForStmt(clang::ForStmt const&, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e44cd6)
#14 0x0000000003e40be0 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e40be0)
#15 0x0000000003e4fa9c clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3e4fa9c)
#16 0x0000000003ec1a90 clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3ec1a90)
#17 0x0000000003eeda76 clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3eeda76)
#18 0x0000000003ee5162 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3ee5162)
#19 0x0000000003eea042 clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3eea042)
#20 0x0000000003ee39d7 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3ee39d7)
#21 0x0000000003ef5afb clang::CodeGen::CodeGenModule::EmitDeclContext(clang::DeclContext const*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x3ef5afb)
#22 0x00000000042ddd4d (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) ModuleBuilder.cpp:0:0
#23 0x00000000042d35d6 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x42d35d6)
#24 0x00000000059e34f5 clang::ParseAST(clang::Sema&, bool, bool) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x59e34f5)
#25 0x000000000459d1d6 clang::FrontendAction::Execute() (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x459d1d6)
#26 0x0000000004509b42 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x4509b42)
#27 0x000000000467e190 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0x467e190)
#28 0x0000000000d25fa8 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/b/1/clang-x86_64-debian-fast/llvm.obj/./bin/clang+++0xd25fa8)

@llvm-ci
Copy link
Collaborator

llvm-ci commented Jun 3, 2025

LLVM Buildbot has detected a new failure on builder llvm-x86_64-debian-dylib running on gribozavr4 while building clang at step 6 "test-build-unified-tree-check-clang".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/60/builds/29238

Here is the relevant piece of the build log for the reference
Step 6 (test-build-unified-tree-check-clang) failure: test (failure)
******************** TEST 'Clang :: CoverageMapping/terminate-statements.cpp' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/b/1/llvm-x86_64-debian-dylib/build/bin/clang -cc1 -internal-isystem /b/1/llvm-x86_64-debian-dylib/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/Inputs /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp # RUN: at line 1
+ /b/1/llvm-x86_64-debian-dylib/build/bin/clang -cc1 -internal-isystem /b/1/llvm-x86_64-debian-dylib/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/Inputs /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /b/1/llvm-x86_64-debian-dylib/build/bin/clang -cc1 -internal-isystem /b/1/llvm-x86_64-debian-dylib/build/lib/clang/21/include -nostdsysteminc -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -fexceptions -fcxx-exceptions -emit-llvm-only -triple x86_64-unknown-linux-gnu -main-file-name terminate-statements.cpp -I /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/Inputs /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp
1.	/b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:45:1: current parser token 'int'
2.	/b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: LLVM IR generation of declaration 'f6'
3.	/b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp:37:5: Generating code for declaration 'f6'
 #0 0x00007f5b89962477 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/b/1/llvm-x86_64-debian-dylib/build/lib/libLLVM.so.21.0git+0x100d477)
 #1 0x00007f5b8995ff2e llvm::sys::RunSignalHandlers() (/b/1/llvm-x86_64-debian-dylib/build/lib/libLLVM.so.21.0git+0x100af2e)
 #2 0x00007f5b89962b9a SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
 #3 0x00007f5b97a21140 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x13140)
 #4 0x00007f5b95556731 clang::CodeGen::CodeGenFunction::EmitCXXForRangeStmt(clang::CXXForRangeStmt const&, llvm::ArrayRef<clang::Attr const*>) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x24fa731)
 #5 0x00007f5b95549671 clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x24ed671)
 #6 0x00007f5b95557dcc clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x24fbdcc)
 #7 0x00007f5b955d3e10 clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x2577e10)
 #8 0x00007f5b955ff1d6 clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x25a31d6)
 #9 0x00007f5b955f6771 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x259a771)
#10 0x00007f5b955fb7a2 clang::CodeGen::CodeGenModule::EmitGlobal(clang::GlobalDecl) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x259f7a2)
#11 0x00007f5b955f5137 clang::CodeGen::CodeGenModule::EmitTopLevelDecl(clang::Decl*) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x2599137)
#12 0x00007f5b956b192d (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl(clang::DeclGroupRef) ModuleBuilder.cpp:0:0
#13 0x00007f5b955be966 clang::BackendConsumer::HandleTopLevelDecl(clang::DeclGroupRef) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x2562966)
#14 0x00007f5b93b70035 clang::ParseAST(clang::Sema&, bool, bool) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0xb14035)
#15 0x00007f5b95fd3fe6 clang::FrontendAction::Execute() (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x2f77fe6)
#16 0x00007f5b95f40e62 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x2ee4e62)
#17 0x00007f5b96074890 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/b/1/llvm-x86_64-debian-dylib/build/lib/libclang-cpp.so.21.0git+0x3018890)
#18 0x0000000000412ff8 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/b/1/llvm-x86_64-debian-dylib/build/bin/clang+0x412ff8)
#19 0x000000000040f450 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#20 0x000000000040eacd clang_main(int, char**, llvm::ToolContext const&) (/b/1/llvm-x86_64-debian-dylib/build/bin/clang+0x40eacd)
#21 0x000000000041f297 main (/b/1/llvm-x86_64-debian-dylib/build/bin/clang+0x41f297)
#22 0x00007f5b88477d7a __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23d7a)
#23 0x000000000040ccca _start (/b/1/llvm-x86_64-debian-dylib/build/bin/clang+0x40ccca)
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/clang/test/CoverageMapping/terminate-statements.cpp

--

********************


OCHyams added a commit that referenced this pull request Jun 4, 2025
This reverts commit e6529dc with crash fixed.

Original PR #134647

This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.

RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668

The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
llvm-sync bot pushed a commit to arm/arm-toolchain that referenced this pull request Jun 4, 2025
This reverts commit e6529dc with crash fixed.

Original PR llvm/llvm-project#134647

This patch is part of a stack that teaches Clang to generate Key Instructions
metadata for C and C++.

RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668

The feature is only functional in LLVM if LLVM is built with CMake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONs. Eventually that flag will be removed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang:codegen IR generation bugs: mangling, exceptions, etc. clang Clang issues not falling into any other category
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants