Skip to content

[DebugInfo][DWARF] Emit DW_AT_abstract_origin for concrete/inlined DW_TAG_lexical_blocks #136205

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

Conversation

dzhidzhoev
Copy link
Member

During the discussion under #119001, it was noticed that concrete DW_TAG_lexical_blocks should refer to corresponding abstract DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid ambiguity. This behavior is implemented in GCC (https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes #49297.

@llvmbot
Copy link
Member

llvmbot commented Apr 17, 2025

@llvm/pr-subscribers-debuginfo

Author: Vladislav Dzhidzhoev (dzhidzhoev)

Changes

During the discussion under #119001, it was noticed that concrete DW_TAG_lexical_blocks should refer to corresponding abstract DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid ambiguity. This behavior is implemented in GCC (https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes #49297.


Full diff: https://github.com/llvm/llvm-project/pull/136205.diff

7 Files Affected:

  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp (+16)
  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h (+5)
  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp (+1)
  • (modified) llvm/test/DebugInfo/Generic/inline-scopes.ll (+14-1)
  • (added) llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll (+56)
  • (modified) llvm/test/DebugInfo/X86/lexical-block-file-inline.ll (+9-5)
  • (modified) llvm/test/DebugInfo/X86/missing-abstract-variable.ll (+4-2)
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
index 3939dae81841f..c57722216ea8d 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
@@ -782,6 +782,8 @@ DIE *DwarfCompileUnit::constructLexicalScopeDIE(LexicalScope *Scope) {
     assert(!LexicalBlockDIEs.count(DS) &&
            "Concrete out-of-line DIE for this scope exists!");
     LexicalBlockDIEs[DS] = ScopeDIE;
+  } else {
+    InlinedLocalScopeDIEs[DS].push_back(ScopeDIE);
   }
 
   attachRangesOrLowHighPC(*ScopeDIE, Scope->getRanges());
@@ -1491,6 +1493,20 @@ void DwarfCompileUnit::finishEntityDefinition(const DbgEntity *Entity) {
     getDwarfDebug().addAccelName(*this, CUNode->getNameTableKind(), Name, *Die);
 }
 
+void DwarfCompileUnit::attachLexicalScopesAbstractOrigins(
+    LexicalScopes &LScopes) {
+  auto AttachAO = [&](const DILocalScope *LS, DIE *ScopeDIE) {
+    if (auto *AbsLSDie = getAbstractScopeDIEs().lookup(LS))
+      addDIEEntry(*ScopeDIE, dwarf::DW_AT_abstract_origin, *AbsLSDie);
+  };
+
+  for (auto [LScope, ScopeDIE] : LexicalBlockDIEs)
+    AttachAO(LScope, ScopeDIE);
+  for (auto &[LScope, ScopeDIEs] : InlinedLocalScopeDIEs)
+    for (auto *ScopeDIE : ScopeDIEs)
+      AttachAO(LScope, ScopeDIE);
+}
+
 DbgEntity *DwarfCompileUnit::getExistingAbstractEntity(const DINode *Node) {
   auto &AbstractEntities = getAbstractEntities();
   auto I = AbstractEntities.find(Node);
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
index 104039db03c7c..8a9493d9294cd 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
@@ -82,6 +82,10 @@ class DwarfCompileUnit final : public DwarfUnit {
   // List of abstract local scopes (either DISubprogram or DILexicalBlock).
   DenseMap<const DILocalScope *, DIE *> AbstractLocalScopeDIEs;
 
+  // List of inlined lexical block scopes that belong to subprograms within this
+  // CU.
+  DenseMap<const DILocalScope *, SmallVector<DIE *, 2>> InlinedLocalScopeDIEs;
+
   DenseMap<const DINode *, std::unique_ptr<DbgEntity>> AbstractEntities;
 
   /// DWO ID for correlating skeleton and split units.
@@ -299,6 +303,7 @@ class DwarfCompileUnit final : public DwarfUnit {
 
   void finishSubprogramDefinition(const DISubprogram *SP);
   void finishEntityDefinition(const DbgEntity *Entity);
+  void attachLexicalScopesAbstractOrigins(LexicalScopes &LScopes);
 
   /// Find abstract variable associated with Var.
   using InlinedEntity = DbgValueHistoryMap::InlinedEntity;
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
index 39f1299a24e81..93f9184c71c7f 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
@@ -1262,6 +1262,7 @@ void DwarfDebug::finalizeModuleInfo() {
     auto &TheCU = *P.second;
     if (TheCU.getCUNode()->isDebugDirectivesOnly())
       continue;
+    TheCU.attachLexicalScopesAbstractOrigins(LScopes);
     // Emit DW_AT_containing_type attribute to connect types with their
     // vtable holding type.
     TheCU.constructContainingTypeDIEs();
diff --git a/llvm/test/DebugInfo/Generic/inline-scopes.ll b/llvm/test/DebugInfo/Generic/inline-scopes.ll
index 8e7543eb16e69..45ecdd0594f64 100644
--- a/llvm/test/DebugInfo/Generic/inline-scopes.ll
+++ b/llvm/test/DebugInfo/Generic/inline-scopes.ll
@@ -20,16 +20,29 @@
 ; }
 
 ; Ensure that lexical_blocks within inlined_subroutines are preserved/emitted.
+; CHECK:      DW_TAG_subprogram
+; CHECK-NEXT: DW_AT_linkage_name ("_Z2f1v")
+; CHECK:      [[ADDR1:0x[0-9a-f]+]]: DW_TAG_lexical_block
+; CHECK:      DW_TAG_subprogram
+; CHECK-NEXT: DW_AT_linkage_name ("_Z2f2v")
+; CHECK:      [[ADDR2:0x[0-9a-f]+]]: DW_TAG_lexical_block
 ; CHECK: DW_TAG_inlined_subroutine
 ; CHECK-NOT: DW_TAG
 ; CHECK-NOT: NULL
-; CHECK: DW_TAG_lexical_block
+; CHECK:      DW_TAG_lexical_block
+; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK:      DW_AT_abstract_origin ([[ADDR1]]
 ; CHECK-NOT: DW_TAG
 ; CHECK-NOT: NULL
 ; CHECK: DW_TAG_variable
 ; Ensure that file changes don't interfere with creating inlined subroutines.
 ; (see the line directive inside 'f2' in thesource)
 ; CHECK: DW_TAG_inlined_subroutine
+; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK:      DW_TAG_lexical_block
+; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK:      DW_AT_abstract_origin ([[ADDR2]]
+; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:   DW_TAG_variable
 ; CHECK-NOT: DW_TAG
 ; CHECK:     DW_AT_abstract_origin
diff --git a/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll b/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
new file mode 100644
index 0000000000000..cbe2b818fba38
--- /dev/null
+++ b/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
@@ -0,0 +1,56 @@
+; RUN: %llc_dwarf -filetype=obj -O0 %s -o - | llvm-dwarfdump -debug-info - | FileCheck %s
+
+; Check that DW_AT_abstract_origin is generated for concrete lexical block.
+
+; Generated from:
+; inline __attribute__((always_inline)) int foo(int x) {
+;   {
+;     int y = x + 5;
+;     return y - 10;
+;   }
+; }
+;
+; int bar(int x) {
+;   int y = foo(7);
+;   return y + 8;
+; }
+
+; CHECK:      DW_TAG_subprogram
+; CHECK-NEXT:   DW_AT_name  ("foo")
+; CHECK-NOT:    {{DW_TAG|NULL}}
+; CHECK:        [[LB:.*]]: DW_TAG_lexical_block
+
+; CHECK:        DW_TAG_inlined_subroutine
+; CHECK-NEXT:     DW_AT_abstract_origin {{.*}} "foo"
+; CHECK-NOT:      {{DW_TAG|NULL}}
+; CHECK:          DW_TAG_lexical_block
+; CHECK-NOT:        {{DW_TAG|NULL}}
+; CHECK:            DW_AT_abstract_origin {{.*}}[[LB]]
+
+target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32"
+target triple = "arm64-apple-macosx15.0.0"
+
+define i32 @bar() !dbg !9 {
+entry:
+  %y.i = alloca i32, align 4
+    #dbg_declare(ptr %y.i, !22, !DIExpression(), !24)
+  store i32 0, ptr %y.i, align 4, !dbg !24
+  %1 = load i32, ptr %y.i, align 4
+  ret i32 %1
+}
+
+!llvm.dbg.cu = !{!0}
+!llvm.module.flags = !{!3}
+
+!0 = distinct !DICompileUnit(language: DW_LANG_C11, file: !1, emissionKind: FullDebug)
+!1 = !DIFile(filename: "test.c", directory: "")
+!3 = !{i32 2, !"Debug Info Version", i32 3}
+!9 = distinct !DISubprogram(name: "bar", scope: !1, file: !1, line: 8, type: !10, spFlags: DISPFlagDefinition, unit: !0)
+!10 = !DISubroutineType(types: !13)
+!12 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
+!13 = !{}
+!19 = distinct !DISubprogram(name: "foo", scope: !1, file: !1, line: 1, type: !10, scopeLine: 1, spFlags: DISPFlagDefinition, unit: !0)
+!21 = distinct !DILocation(line: 9, column: 11, scope: !9)
+!22 = !DILocalVariable(name: "y", scope: !23, file: !1, line: 3, type: !12)
+!23 = distinct !DILexicalBlock(scope: !19, file: !1, line: 2, column: 3)
+!24 = !DILocation(line: 3, column: 9, scope: !23, inlinedAt: !21)
diff --git a/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll b/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
index 15d0785bde93d..43c5e7ccef8c6 100644
--- a/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
+++ b/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
@@ -28,9 +28,11 @@
 ; CHECK:    DW_TAG_subprogram
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:      DW_AT_abstract_origin {{.*}} {[[Offset_bar:0x[0-9abcdef]+]]}
-; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK-NOT:  {{DW_TAG|NULL}}
 ; CHECK:      DW_TAG_lexical_block
-; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK-NOT:    {{DW_TAG|NULL}}
+; CHECK:        DW_AT_abstract_origin {{.*}}[[Offset_lb:0x[0-9a-f]+]]
+; CHECK-NOT:  {{DW_TAG|NULL}}
 ; CHECK:        DW_TAG_variable
 
 ;; Abstract "bar" function
@@ -40,7 +42,7 @@
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:      DW_AT_inline
 ; CHECK-NOT: {{DW_TAG|NULL}}
-; CHECK:      DW_TAG_lexical_block
+; CHECK:      [[Offset_lb]]: DW_TAG_lexical_block
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:        DW_TAG_variable
 ; CHECK-NOT: {{DW_TAG|NULL}}
@@ -56,8 +58,10 @@
 ; CHECK-NEXT:   DW_AT_abstract_origin {{.*}} {[[Offset_bar]]}
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:        DW_TAG_lexical_block
-; CHECK-NOT: {{DW_TAG|NULL}}
-; CHECK:          DW_TAG_variable
+; CHECK-NOT:      {{DW_TAG|NULL}}
+; CHECK:          DW_AT_abstract_origin {{.*}}[[Offset_lb]]
+; CHECK-NOT:    {{DW_TAG|NULL}}
+; CHECK:        DW_TAG_variable
 
 ; Function Attrs: alwaysinline nounwind
 define i32 @_Z3barv() #0 !dbg !4 {
diff --git a/llvm/test/DebugInfo/X86/missing-abstract-variable.ll b/llvm/test/DebugInfo/X86/missing-abstract-variable.ll
index 572dca2c2cb6c..21363805aff2f 100644
--- a/llvm/test/DebugInfo/X86/missing-abstract-variable.ll
+++ b/llvm/test/DebugInfo/X86/missing-abstract-variable.ll
@@ -37,7 +37,7 @@
 ; CHECK-NOT: DW_TAG
 ; CHECK:     DW_AT_name ("b")
 ; CHECK-NOT: {{DW_TAG|NULL}}
-; CHECK:       DW_TAG_lexical_block
+; CHECK:       [[LB_DECL:.*]]: DW_TAG_lexical_block
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:   DW_TAG_variable
 ; CHECK-NOT: DW_TAG
@@ -82,7 +82,9 @@
 
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:     DW_TAG_lexical_block
-; CHECK-NOT: {{DW_TAG|NULL}}
+; CHECK-NOT:   {{DW_TAG|NULL}}
+; CHECK:       DW_AT_abstract_origin {{.*}}[[LB_DECL]]
+; CHECK-NOT:   {{DW_TAG|NULL}}
 ; CHECK:       DW_TAG_variable
 ; CHECK-NOT: DW_TAG
 ; CHECK:         DW_AT_abstract_origin {{.*}} "s"

…_TAG_lexical_blocks

During the discussion under
llvm#119001, it was noticed, that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks to avoid ambiguity. This behavior is implemented
in GCC (https://godbolt.org/z/Khrzdq1Wx), but not in LLVM so far.

Fixes llvm#49297.
@dzhidzhoev dzhidzhoev force-pushed the debuginfo-rfc-krisb/lb-abstract-origin/ls branch from cb3f994 to 34da121 Compare April 17, 2025 22:24
@dwblaikie
Copy link
Collaborator

I think this is the right direction, and I'm not sure what we'll do about it if we have to do anything, but... could you measure the size impact of this change? (use Bloaty's comparison mode to compare, say, a Release built clang built with a compiler with/without this change)

@dzhidzhoev
Copy link
Member Author

I think this is the right direction, and I'm not sure what we'll do about it if we have to do anything, but... could you measure the size impact of this change? (use Bloaty's comparison mode to compare, say, a Release built clang built with a compiler with/without this change)

Sure!

$ bloaty ../llvm-build-llvm/bin/clang.dSYM/Contents/Resources/DWARF/clang -- ../llvm-build-llvm-old/bin/clang.dSYM/Contents/Resources/DWARF/clang
    FILE SIZE        VM SIZE
 --------------  --------------
  +0.1%  +663Ki  +0.1%  +663Ki    __DWARF,__debug_info
  +0.0% +20.8Ki  +0.0% +20.8Ki    __DWARF,__debug_str
  +0.0% +6.24Ki  +0.0% +6.24Ki    __DWARF,__debug_names
  +0.0% +2.87Ki  +0.0% +2.87Ki    __DWARF,__debug_loclists
  +0.0% +1.52Ki  +0.0% +2.39Ki    __TEXT,__text
  -0.0%    -450  +0.0% +1.96Ki    __DWARF,__debug_line
  +0.0% +1.17Ki  +0.0% +1.17Ki    __DWARF,__debug_addr
  +0.0%    +868  +0.0%    +868    __DWARF,__debug_str_offs
  +0.0%    +803  [ = ]       0    String Table
  +0.0%    +454  +0.0%    +454    __DWARF,__debug_rnglists
  +0.0%     +96  [ = ]       0    Symbol Table
  +0.2%     +54  +0.2%     +54    __DWARF,__debug_abbrev
  [ = ]       0  +0.0%      +6    __TEXT,__cstring
  -0.0%      -8  -0.0%      -8    __DWARF,__debug_line_str
  [DEL]      -3 -75.9% -2.33Ki    [__DWARF]
  [ = ]       0 -16.8% -2.40Ki    [__TEXT]
  +0.0%  +698Ki  +0.0%  +696Ki    TOTAL
 $ bloaty `find ../llvm-build-llvm/lib -iname \*.o`    | $ bloaty `find ../llvm-build-llvm-old/lib -iname \*.o`
    FILE SIZE        VM SIZE                           |    FILE SIZE        VM SIZE
 --------------  --------------                        | --------------  --------------
  60.6%  2.01Gi  61.5%  2.01Gi    ,__debug_str         |  60.6%  2.00Gi  61.5%  2.00Gi    ,__debug_str
  23.2%   787Mi  23.5%   787Mi    ,__debug_info        |  23.2%   784Mi  23.5%   784Mi    ,__debug_info
   5.0%   171Mi   5.1%   171Mi    ,__debug_names       |   5.0%   170Mi   5.1%   170Mi    ,__debug_names
   3.8%   128Mi   3.8%   128Mi    ,__debug_str_offs    |   3.8%   127Mi   3.8%   127Mi    ,__debug_str_offs
   1.6%  53.7Mi   1.6%  53.7Mi    ,__debug_loclists    |   1.6%  53.5Mi   1.6%  53.5Mi    ,__debug_loclists
   1.2%  41.1Mi   1.2%  41.1Mi    ,__text              |   1.2%  41.0Mi   1.2%  41.0Mi    ,__text
   1.0%  34.4Mi   1.0%  34.4Mi    ,__debug_line        |   1.0%  34.3Mi   1.0%  34.3Mi    ,__debug_line
   0.7%  25.1Mi   0.0%       0    [Unmapped]           |   0.7%  25.0Mi   0.0%       0    [Unmapped]
   0.6%  19.5Mi   0.0%       0    String Table         |   0.6%  19.4Mi   0.0%       0    String Table
   0.5%  17.3Mi   0.5%  17.3Mi    ,__debug_line_str    |   0.5%  17.2Mi   0.5%  17.2Mi    ,__debug_line_str
   0.5%  15.5Mi   0.5%  15.5Mi    ,__debug_addr        |   0.5%  15.4Mi   0.5%  15.4Mi    ,__debug_addr
   0.4%  13.2Mi   0.4%  13.2Mi    ,__const             |   0.4%  13.2Mi   0.4%  13.2Mi    ,__const
   0.3%  9.58Mi   0.3%  9.58Mi    ,__debug_rnglists    |   0.3%  9.54Mi   0.3%  9.54Mi    ,__debug_rnglists
   0.3%  8.71Mi   0.3%  8.71Mi    ,__debug_abbrev      |   0.3%  8.67Mi   0.3%  8.67Mi    ,__debug_abbrev
   0.2%  5.22Mi   0.0%       0    Symbol Table         |   0.2%  5.20Mi   0.0%       0    Symbol Table
   0.1%  3.86Mi   0.1%  3.86Mi    ,__compact_unwind    |   0.1%  3.84Mi   0.1%  3.84Mi    ,__compact_unwind
   0.1%  2.49Mi   0.0%       0    [Mach-O Headers]     |   0.1%  2.49Mi   0.0%       0    [Mach-O Headers]
   0.0%  1.40Mi   0.0%       0    Optimization Hints   |   0.0%  1.39Mi   0.0%       0    Optimization Hints
   0.0%  1.39Mi   0.0%  1.39Mi    ,__cstring           |   0.0%  1.38Mi   0.0%  1.38Mi    ,__cstring
   0.0%   725Ki   0.0%   755Ki    [13 Others]          |   0.0%   724Ki   0.0%   754Ki    [13 Others]
   0.0%       0   0.0%   451Ki    ,__bss               |   0.0%       0   0.0%   451Ki    ,__bss
 100.0%  3.32Gi 100.0%  3.27Gi    TOTAL                | 100.0%  3.31Gi 100.0%  3.26Gi    TOTAL

Copy link
Collaborator

@dwblaikie dwblaikie left a comment

Choose a reason for hiding this comment

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

Looks good, thanks!

@dzhidzhoev dzhidzhoev merged commit 1143a04 into llvm:main Apr 24, 2025
11 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

Here is the relevant piece of the build log for the reference
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/llc -filetype=obj -O0 /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o - | /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/llvm-dwarfdump -debug-info - | /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/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll # RUN: at line 1
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/llc -filetype=obj -O0 /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o -
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/llvm-dwarfdump -debug-info -
+ /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/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/llc: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
error: -: The file was not recognized as a valid object file
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/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder clang-m68k-linux-cross running on suse-gary-m68k-cross while building llvm at step 5 "ninja check 1".

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

Here is the relevant piece of the build log for the reference
Step 5 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/llc -filetype=obj -O0 /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o - | /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/llvm-dwarfdump -debug-info - | /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/FileCheck /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll # RUN: at line 1
+ /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/llc -filetype=obj -O0 /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o -
+ /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/llvm-dwarfdump -debug-info -
+ /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/FileCheck /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
/var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/llc: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
error: -: The file was not recognized as a valid object file
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/stage1/bin/FileCheck /var/lib/buildbot/workers/suse-gary-m68k-cross/clang-m68k-linux-cross/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

Here is the relevant piece of the build log for the reference
Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stdout):
--
# RUN: at line 1
z:\b\llvm-clang-x86_64-sie-win\build\bin\llc.exe -filetype=obj -O0 Z:\b\llvm-clang-x86_64-sie-win\llvm-project\llvm\test\DebugInfo\Generic\lexical-block-abstract-origin.ll -o - | z:\b\llvm-clang-x86_64-sie-win\build\bin\llvm-dwarfdump.exe -debug-info - | z:\b\llvm-clang-x86_64-sie-win\build\bin\filecheck.exe Z:\b\llvm-clang-x86_64-sie-win\llvm-project\llvm\test\DebugInfo\Generic\lexical-block-abstract-origin.ll
# executed command: 'z:\b\llvm-clang-x86_64-sie-win\build\bin\llc.exe' -filetype=obj -O0 'Z:\b\llvm-clang-x86_64-sie-win\llvm-project\llvm\test\DebugInfo\Generic\lexical-block-abstract-origin.ll' -o -
# .---command stderr------------
# | z:\b\llvm-clang-x86_64-sie-win\build\bin\llc.exe: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
# `-----------------------------
# error: command failed with exit status: 1
# executed command: 'z:\b\llvm-clang-x86_64-sie-win\build\bin\llvm-dwarfdump.exe' -debug-info -
# .---command stderr------------
# | error: -: The file was not recognized as a valid object file
# `-----------------------------
# error: command failed with exit status: 1
# executed command: 'z:\b\llvm-clang-x86_64-sie-win\build\bin\filecheck.exe' 'Z:\b\llvm-clang-x86_64-sie-win\llvm-project\llvm\test\DebugInfo\Generic\lexical-block-abstract-origin.ll'
# .---command stderr------------
# | FileCheck error: '<stdin>' is empty.
# | FileCheck command line:  z:\b\llvm-clang-x86_64-sie-win\build\bin\filecheck.exe Z:\b\llvm-clang-x86_64-sie-win\llvm-project\llvm\test\DebugInfo\Generic\lexical-block-abstract-origin.ll
# `-----------------------------
# error: command failed with exit status: 2

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder clang-cmake-x86_64-avx512-linux running on avx512-intel64 while building llvm at step 7 "ninja check 1".

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

Here is the relevant piece of the build log for the reference
Step 7 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/llc -filetype=obj -O0 /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o - | /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/llvm-dwarfdump -debug-info - | /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/FileCheck /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll # RUN: at line 1
+ /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/llc -filetype=obj -O0 /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o -
+ /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/llvm-dwarfdump -debug-info -
+ /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/FileCheck /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
/localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/llc: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
error: -: The file was not recognized as a valid object file
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/stage1/bin/FileCheck /localdisk2/buildbot/llvm-worker/clang-cmake-x86_64-avx512-linux/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder openmp-offload-sles-build-only running on rocm-worker-hw-04-sles while building llvm at step 9 "Add check check-llvm".

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

Here is the relevant piece of the build log for the reference
Step 9 (Add check check-llvm) failure: test (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llc -filetype=obj -O0 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o - | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-dwarfdump -debug-info - | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll # RUN: at line 1
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-dwarfdump -debug-info -
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llc -filetype=obj -O0 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o -
/home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llc: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
error: -: The file was not recognized as a valid object file
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder clang-armv8-quick running on linaro-clang-armv8-quick while building llvm at step 5 "ninja check 1".

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

Here is the relevant piece of the build log for the reference
Step 5 (ninja check 1) failure: stage 1 checked (failure)
******************** TEST 'LLVM :: DebugInfo/Generic/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/llc -filetype=obj -O0 /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o - | /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/llvm-dwarfdump -debug-info - | /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/FileCheck /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll # RUN: at line 1
+ /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/llc -filetype=obj -O0 /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll -o -
+ /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/llvm-dwarfdump -debug-info -
+ /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/FileCheck /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
/home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/llc: error: unable to get target for 'arm64-apple-macosx15.0.0', see --version and --triple.
error: -: The file was not recognized as a valid object file
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/FileCheck /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

--

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


@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder sanitizer-x86_64-linux-qemu running on sanitizer-buildbot3 while building llvm at step 2 "annotate".

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

Here is the relevant piece of the build log for the reference
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
[75/77] Generating ScudoUnitTestsObjects.combined_test.cpp.mips64.o
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
[76/77] Generating ScudoUnitTest-mips64-Test
[76/77] Running Scudo Standalone tests
llvm-lit: /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 183 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
TIMEOUT: ScudoStandalone-Unit :: ./ScudoUnitTest-mips64-Test/93/165 (183 of 183)
******************** TEST 'ScudoStandalone-Unit :: ./ScudoUnitTest-mips64-Test/93/165' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_mips64_qemu/lib/scudo/standalone/tests/./ScudoUnitTest-mips64-Test-ScudoStandalone-Unit-309450-93-165.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=165 GTEST_SHARD_INDEX=93 /home/b/sanitizer-x86_64-linux-qemu/build/qemu_build/qemu-mips64 -L /usr/mips64-linux-gnuabi64 /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_mips64_qemu/lib/scudo/standalone/tests/./ScudoUnitTest-mips64-Test
--

Note: This is test shard 94 of 165.
[==========] Running 2 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 1 test from ScudoCombinedDeathTestBasicCombined16_TestNoCacheConfig
[ RUN      ] ScudoCombinedDeathTestBasicCombined16_TestNoCacheConfig.BasicCombined16

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.
Step 15 (scudo mips64_qemu) failure: scudo mips64_qemu (failure)
...
[75/77] Generating ScudoUnitTestsObjects.combined_test.cpp.mips64.o
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
clang++: warning: -Wl,-z,execstack: 'linker' input unused [-Wunused-command-line-argument]
[76/77] Generating ScudoUnitTest-mips64-Test
[76/77] Running Scudo Standalone tests
llvm-lit: /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 183 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
TIMEOUT: ScudoStandalone-Unit :: ./ScudoUnitTest-mips64-Test/93/165 (183 of 183)
******************** TEST 'ScudoStandalone-Unit :: ./ScudoUnitTest-mips64-Test/93/165' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:/home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_mips64_qemu/lib/scudo/standalone/tests/./ScudoUnitTest-mips64-Test-ScudoStandalone-Unit-309450-93-165.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=165 GTEST_SHARD_INDEX=93 /home/b/sanitizer-x86_64-linux-qemu/build/qemu_build/qemu-mips64 -L /usr/mips64-linux-gnuabi64 /home/b/sanitizer-x86_64-linux-qemu/build/llvm_build2_mips64_qemu/lib/scudo/standalone/tests/./ScudoUnitTest-mips64-Test
--

Note: This is test shard 94 of 165.
[==========] Running 2 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 1 test from ScudoCombinedDeathTestBasicCombined16_TestNoCacheConfig
[ RUN      ] ScudoCombinedDeathTestBasicCombined16_TestNoCacheConfig.BasicCombined16

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

[WARNING] /home/b/sanitizer-x86_64-linux-qemu/build/llvm-project/compiler-rt/../third-party/unittest/googletest/src/gtest-death-test.cc:1102:: Death tests use fork(), which is unsafe particularly in a threaded context. For this test, Google Test couldn't detect the number of threads. See https://github.com/google/googletest/blob/main/docs/advanced.md#death-tests-and-threads for more explanation and suggested solutions, especially if this is the last message you see before your test times out.

dwblaikie added a commit that referenced this pull request Apr 24, 2025
…lined DW_TAG_lexical_blocks" (#137237)

Reverts #136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
@dzhidzhoev
Copy link
Member Author

Oops, I have (apparently) fixed these failures in 92dc18b.

llvm-sync bot pushed a commit to arm/arm-toolchain that referenced this pull request May 6, 2025
…concrete/inlined DW_TAG_lexical_blocks" (#137237)

Reverts llvm/llvm-project#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…_TAG_lexical_blocks (llvm#136205)

During the discussion under
llvm#119001, it was noticed that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid
ambiguity. This behavior is implemented in GCC
(https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes llvm#49297.
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…lined DW_TAG_lexical_blocks" (llvm#137237)

Reverts llvm#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…_TAG_lexical_blocks (llvm#136205)

During the discussion under
llvm#119001, it was noticed that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid
ambiguity. This behavior is implemented in GCC
(https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes llvm#49297.
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…lined DW_TAG_lexical_blocks" (llvm#137237)

Reverts llvm#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…_TAG_lexical_blocks (llvm#136205)

During the discussion under
llvm#119001, it was noticed that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid
ambiguity. This behavior is implemented in GCC
(https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes llvm#49297.
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
…lined DW_TAG_lexical_blocks" (llvm#137237)

Reverts llvm#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
Ankur-0429 pushed a commit to Ankur-0429/llvm-project that referenced this pull request May 9, 2025
…_TAG_lexical_blocks (llvm#136205)

During the discussion under
llvm#119001, it was noticed that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid
ambiguity. This behavior is implemented in GCC
(https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

Fixes llvm#49297.
Ankur-0429 pushed a commit to Ankur-0429/llvm-project that referenced this pull request May 9, 2025
…lined DW_TAG_lexical_blocks" (llvm#137237)

Reverts llvm#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

No DW_AT_abstract_origin emitted for a DW_TAG_lexical_block in an inlined function
4 participants