Skip to content

Revert "[DebugInfo][DWARF] Emit DW_AT_abstract_origin for concrete/inlined DW_TAG_lexical_blocks" #137237

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

dwblaikie
Copy link
Collaborator

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.

@dwblaikie dwblaikie added the skip-precommit-approval PR for CI feedback, not intended for review label Apr 24, 2025
@llvmbot llvmbot added debuginfo and removed skip-precommit-approval PR for CI feedback, not intended for review labels Apr 24, 2025
@dwblaikie dwblaikie merged commit dd9f92c into main Apr 24, 2025
8 of 12 checks passed
@dwblaikie dwblaikie deleted the revert-136205-debuginfo-rfc-krisb/lb-abstract-origin/ls branch April 24, 2025 19:14
@llvmbot
Copy link
Member

llvmbot commented Apr 24, 2025

@llvm/pr-subscribers-debuginfo

Author: David Blaikie (dwblaikie)

Changes

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.


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

7 Files Affected:

  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp (-15)
  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h (-5)
  • (modified) llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp (-1)
  • (modified) llvm/test/DebugInfo/Generic/inline-scopes.ll (+1-14)
  • (removed) llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll (-56)
  • (modified) llvm/test/DebugInfo/X86/lexical-block-file-inline.ll (+5-9)
  • (modified) llvm/test/DebugInfo/X86/missing-abstract-variable.ll (+2-4)
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
index a20c374e08935..3939dae81841f 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
@@ -782,8 +782,6 @@ 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());
@@ -1493,19 +1491,6 @@ void DwarfCompileUnit::finishEntityDefinition(const DbgEntity *Entity) {
     getDwarfDebug().addAccelName(*this, CUNode->getNameTableKind(), Name, *Die);
 }
 
-void DwarfCompileUnit::attachLexicalScopesAbstractOrigins() {
-  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 09be22ce35e36..104039db03c7c 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
@@ -82,10 +82,6 @@ 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.
@@ -303,7 +299,6 @@ class DwarfCompileUnit final : public DwarfUnit {
 
   void finishSubprogramDefinition(const DISubprogram *SP);
   void finishEntityDefinition(const DbgEntity *Entity);
-  void attachLexicalScopesAbstractOrigins();
 
   /// 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 6c932651750ee..39f1299a24e81 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
@@ -1262,7 +1262,6 @@ void DwarfDebug::finalizeModuleInfo() {
     auto &TheCU = *P.second;
     if (TheCU.getCUNode()->isDebugDirectivesOnly())
       continue;
-    TheCU.attachLexicalScopesAbstractOrigins();
     // 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 45ecdd0594f64..8e7543eb16e69 100644
--- a/llvm/test/DebugInfo/Generic/inline-scopes.ll
+++ b/llvm/test/DebugInfo/Generic/inline-scopes.ll
@@ -20,29 +20,16 @@
 ; }
 
 ; 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-NOT: {{DW_TAG|NULL}}
-; CHECK:      DW_AT_abstract_origin ([[ADDR1]]
+; CHECK: DW_TAG_lexical_block
 ; 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
deleted file mode 100644
index cbe2b818fba38..0000000000000
--- a/llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
+++ /dev/null
@@ -1,56 +0,0 @@
-; 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 e8136f8eea965..15d0785bde93d 100644
--- a/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
+++ b/llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
@@ -28,11 +28,9 @@
 ; 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:        DW_AT_abstract_origin {{.*}}[[Offset_lb:0x[0-9a-f]+]]
-; CHECK-NOT:    {{DW_TAG|NULL}}
+; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:        DW_TAG_variable
 
 ;; Abstract "bar" function
@@ -42,7 +40,7 @@
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:      DW_AT_inline
 ; CHECK-NOT: {{DW_TAG|NULL}}
-; CHECK:      [[Offset_lb]]: DW_TAG_lexical_block
+; CHECK:      DW_TAG_lexical_block
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:        DW_TAG_variable
 ; CHECK-NOT: {{DW_TAG|NULL}}
@@ -58,10 +56,8 @@
 ; 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_AT_abstract_origin {{.*}}[[Offset_lb]]
-; CHECK-NOT:    {{DW_TAG|NULL}}
-; CHECK:        DW_TAG_variable
+; 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 21363805aff2f..572dca2c2cb6c 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:       [[LB_DECL:.*]]: DW_TAG_lexical_block
+; CHECK:       DW_TAG_lexical_block
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:   DW_TAG_variable
 ; CHECK-NOT: DW_TAG
@@ -82,9 +82,7 @@
 
 ; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:     DW_TAG_lexical_block
-; CHECK-NOT:   {{DW_TAG|NULL}}
-; CHECK:       DW_AT_abstract_origin {{.*}}[[LB_DECL]]
-; CHECK-NOT:   {{DW_TAG|NULL}}
+; CHECK-NOT: {{DW_TAG|NULL}}
 ; CHECK:       DW_TAG_variable
 ; CHECK-NOT: DW_TAG
 ; CHECK:         DW_AT_abstract_origin {{.*}} "s"

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder ml-opt-dev-x86-64 running on ml-opt-dev-x86-64-b1 while building llvm at step 6 "test-build-unified-tree-check-all".

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/b/ml-opt-dev-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/ml-opt-dev-x86-64-b1/build/bin/llvm-dwarfdump -debug-info - | /b/ml-opt-dev-x86-64-b1/build/bin/FileCheck /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/ml-opt-dev-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/ml-opt-dev-x86-64-b1/build/bin/FileCheck /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
+ /b/ml-opt-dev-x86-64-b1/build/bin/llvm-dwarfdump -debug-info -
/b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder ml-opt-rel-x86-64 running on ml-opt-rel-x86-64-b2 while building llvm at step 6 "test-build-unified-tree-check-all".

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/b/ml-opt-rel-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/ml-opt-rel-x86-64-b1/build/bin/llvm-dwarfdump -debug-info - | /b/ml-opt-rel-x86-64-b1/build/bin/FileCheck /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/ml-opt-rel-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/ml-opt-rel-x86-64-b1/build/bin/llvm-dwarfdump -debug-info -
+ /b/ml-opt-rel-x86-64-b1/build/bin/FileCheck /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
/b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

LLVM Buildbot has detected a new failure on builder ml-opt-devrel-x86-64 running on ml-opt-devrel-x86-64-b2 while building llvm at step 6 "test-build-unified-tree-check-all".

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/b/ml-opt-devrel-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/ml-opt-devrel-x86-64-b1/build/bin/llvm-dwarfdump -debug-info - | /b/ml-opt-devrel-x86-64-b1/build/bin/FileCheck /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/ml-opt-devrel-x86-64-b1/build/bin/llc -filetype=obj -O0 /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/ml-opt-devrel-x86-64-b1/build/bin/llvm-dwarfdump -debug-info -
+ /b/ml-opt-devrel-x86-64-b1/build/bin/FileCheck /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@dzhidzhoev
Copy link
Member

Oops, I have fixed these failures in 92dc18b.
Since the test file was moved, it stays in the repo currently, so we should probably revert the revert.

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/build/buildbot/premerge-monolithic-linux/build/bin/llc -filetype=obj -O0 /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /build/buildbot/premerge-monolithic-linux/build/bin/llvm-dwarfdump -debug-info - | /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /build/buildbot/premerge-monolithic-linux/build/bin/llvm-dwarfdump -debug-info -
+ /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
+ /build/buildbot/premerge-monolithic-linux/build/bin/llc -filetype=obj -O0 /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
/build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/llc -filetype=obj -O0 /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/llvm-dwarfdump -debug-info - | /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/FileCheck /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/llvm-dwarfdump -debug-info -
+ /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/FileCheck /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
+ /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/build/bin/llc -filetype=obj -O0 /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
/home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /home/buildbot/worker/as-builder-4/ramdisk/lld-x86_64/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc -filetype=obj -O0 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-dwarfdump -debug-info - | /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc -filetype=obj -O0 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-dwarfdump -debug-info -
/b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

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

Command Output (stderr):
--
/b/1/llvm-x86_64-debian-dylib/build/bin/llc -filetype=obj -O0 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-dwarfdump -debug-info - | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llc -filetype=obj -O0 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-dwarfdump -debug-info -
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
/b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Apr 24, 2025

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

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

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/AArch64/lexical-block-abstract-origin.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/b/1/clang-x86_64-debian-fast/llvm.obj/bin/llc -filetype=obj -O0 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o - | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-dwarfdump -debug-info - | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll # RUN: at line 1
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llc -filetype=obj -O0 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll -o -
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-dwarfdump -debug-info -
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
/b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll:28:10: error: CHECK: expected string not found in input
; CHECK: DW_AT_abstract_origin {{.*}}[[LB]]
         ^
<stdin>:56:33: note: scanning from here
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:56:33: note: with "LB" equal to "0x0000002e"
0x0000006c: DW_TAG_lexical_block
                                ^
<stdin>:62:2: note: possible intended match here
 DW_AT_abstract_origin (0x0000002f "y")
 ^

Input file: <stdin>
Check file: /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           51:  DW_AT_high_pc (0x0000000000000014) 
           52:  DW_AT_call_file ("test.c") 
           53:  DW_AT_call_line (9) 
           54:  DW_AT_call_column (11) 
           55:  
           56: 0x0000006c: DW_TAG_lexical_block 
check:28'0                                     X error: no match found
check:28'1                                       with "LB" equal to "0x0000002e"
           57:  DW_AT_low_pc (0x0000000000000004) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           58:  DW_AT_high_pc (0x0000000000000014) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           59:  
check:28'0     ~
           60: 0x00000079: DW_TAG_variable 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61:  DW_AT_location (DW_OP_fbreg +12) 
check:28'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...

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

Reverts llvm/llvm-project#137237, as the problem was fixed with
92dc18b.
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
…crete/inlined DW_TAG_lexical_blocks"" (llvm#137243)

Reverts llvm#137237, as the problem was fixed with
92dc18b.
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
…crete/inlined DW_TAG_lexical_blocks"" (llvm#137243)

Reverts llvm#137237, as the problem was fixed with
92dc18b.
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
…crete/inlined DW_TAG_lexical_blocks"" (llvm#137243)

Reverts llvm#137237, as the problem was fixed with
92dc18b.
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]>
Ankur-0429 pushed a commit to Ankur-0429/llvm-project that referenced this pull request May 9, 2025
…crete/inlined DW_TAG_lexical_blocks"" (llvm#137243)

Reverts llvm#137237, as the problem was fixed with
92dc18b.
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.

4 participants