Skip to content

[ObjectYAML][ELF] Take alignment into account when generating notes #118157

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 2 commits into from
Dec 3, 2024

Conversation

igorkudrin
Copy link
Collaborator

@igorkudrin igorkudrin commented Nov 30, 2024

The System V ABI states that the note entries and their descriptor fields must be aligned to 4 or 8 bytes for 32-bit or 64-bit objects respectively. In practice, 64-bit systems can use both alignments, with the actual format being determined by the alignment of the segment. For example, the Linux gABI extension contains a special note on this, see 2.1.7 "Alignment of Note Sections".

This patch adjusts the format of the generated notes to the specified section alignment. Since llvm-readobj was fixed in a similar way in D150022, "[Object] Fix handling of Elf_Nhdr with sh_addralign=8", the generated notes can now be parsed successfully by the tool.

The [System V ABI](https://www.sco.com/developers/gabi/latest/ch5.pheader.html#note_section)
states that the note entries and their descriptor fields must be aligned
to 4 or 8 bytes for 32-bit and 64-bit objects respectively. In practice,
64-bit systems can use both alignments, with the actual format being
distinguished by the alignment of the segment. For example, the
[Linux gABI extension](https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf)
contains a special note on this, see 2.1.7 "Alignment of Note Sections".

This patch adjusts the format of the generated notes to the specified
section alignment. Since `llvm-readobj` was fixed in a similar way in
[D150022](https://reviews.llvm.org/D150022], `[Object] Fix handling of Elf_Nhdr with sh_addralign=8`,
the generated notes can now be parsed successfully by the tool.
@llvmbot
Copy link
Member

llvmbot commented Nov 30, 2024

@llvm/pr-subscribers-objectyaml

Author: Igor Kudrin (igorkudrin)

Changes

The System V ABI states that the note entries and their descriptor fields must be aligned to 4 or 8 bytes for 32-bit and 64-bit objects respectively. In practice, 64-bit systems can use both alignments, with the actual format being distinguished by the alignment of the segment. For example, the Linux gABI extension contains a special note on this, see 2.1.7 "Alignment of Note Sections".

This patch adjusts the format of the generated notes to the specified section alignment. Since llvm-readobj was fixed in a similar way in [D150022](https://reviews.llvm.org/D150022], [Object] Fix handling of Elf_Nhdr with sh_addralign=8, the generated notes can now be parsed successfully by the tool.


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

2 Files Affected:

  • (modified) llvm/lib/ObjectYAML/ELFEmitter.cpp (+16-2)
  • (modified) llvm/test/tools/yaml2obj/ELF/note-section.yaml (+71)
diff --git a/llvm/lib/ObjectYAML/ELFEmitter.cpp b/llvm/lib/ObjectYAML/ELFEmitter.cpp
index 476334024151a9..8603f2f73b858d 100644
--- a/llvm/lib/ObjectYAML/ELFEmitter.cpp
+++ b/llvm/lib/ObjectYAML/ELFEmitter.cpp
@@ -1799,6 +1799,20 @@ void ELFState<ELFT>::writeSectionContent(Elf_Shdr &SHeader,
   if (!Section.Notes)
     return;
 
+  unsigned Align;
+  switch (SHeader.sh_addralign) {
+  case 0:
+  case 4:
+    Align = 4;
+    break;
+  case 8:
+    Align = 8;
+    break;
+  default:
+    reportError(Section.Name + ": invalid alignment for a note section: 0x" +
+                Twine::utohexstr(SHeader.sh_addralign));
+  }
+
   uint64_t Offset = CBA.tell();
   for (const ELFYAML::NoteEntry &NE : *Section.Notes) {
     // Write name size.
@@ -1820,13 +1834,13 @@ void ELFState<ELFT>::writeSectionContent(Elf_Shdr &SHeader,
     if (!NE.Name.empty()) {
       CBA.write(NE.Name.data(), NE.Name.size());
       CBA.write('\0');
-      CBA.padToAlignment(4);
+      CBA.padToAlignment(Align);
     }
 
     // Write description and padding.
     if (NE.Desc.binary_size() != 0) {
       CBA.writeAsBinary(NE.Desc);
-      CBA.padToAlignment(4);
+      CBA.padToAlignment(Align);
     }
   }
 
diff --git a/llvm/test/tools/yaml2obj/ELF/note-section.yaml b/llvm/test/tools/yaml2obj/ELF/note-section.yaml
index 80359c4ec01833..067690f8f25b00 100644
--- a/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+++ b/llvm/test/tools/yaml2obj/ELF/note-section.yaml
@@ -333,3 +333,74 @@ Sections:
       - Name: ABC
         Desc: '123456'
         Type: NT_VERSION
+
+## Check that an incorrect alignment is reported
+
+# RUN: not yaml2obj --docnum=16 %s 2>&1 | FileCheck %s --check-prefix=ERR_ALIGN1
+# ERR_ALIGN1: error: .note.foo: invalid alignment for a note section: 0x1
+
+--- !ELF
+FileHeader:
+  Class: ELFCLASS64
+  Data:  ELFDATA2LSB
+  Type:  ET_EXEC
+Sections:
+  - Name:         .note.foo
+    Type:         SHT_NOTE
+    AddressAlign: 1
+    Notes:
+      - Type: 0x1
+
+## Check that note entries and their `Desc` fields are aligned according to the
+## specified section alignment
+
+# RUN: yaml2obj --docnum=17 %s -o - | \
+# RUN:   llvm-readobj --sections --section-data - | \
+# RUN:   FileCheck %s --check-prefix=TEST17
+
+# TEST17:      Name: .note.foo4
+# TEST17:      SectionData (
+# TEST17-NEXT:   0000: 05000000 02000000 01000000 41424344  |............ABCD|
+# TEST17-NEXT:   0010: 00000000 01020000 03000000 03000000  |................|
+# TEST17-NEXT:   0020: 02000000 41420000 03040500 03000000  |....AB..........|
+# TEST17-NEXT:   0030: 00000000 03000000 41420000           |........AB..|
+# TEST17-NEXT: )
+# TEST17:      Name: .note.foo8
+# TEST17:      SectionData (
+# TEST17-NEXT:   0000: 05000000 02000000 01000000 41424344  |............ABCD|
+# TEST17-NEXT:   0010: 00000000 00000000 01020000 00000000  |................|
+# TEST17-NEXT:   0020: 03000000 03000000 02000000 41420000  |............AB..|
+# TEST17-NEXT:   0030: 03040500 00000000 03000000 00000000  |................|
+# TEST17-NEXT:   0040: 03000000 41420000                    |....AB..|
+# TEST17-NEXT: )
+
+--- !ELF
+FileHeader:
+  Class: ELFCLASS64
+  Data:  ELFDATA2LSB
+  Type:  ET_EXEC
+Sections:
+  - Name:         .note.foo4
+    Type:         SHT_NOTE
+    AddressAlign: 4
+    Notes:
+      - Name: ABCD
+        Desc: 0102
+        Type: NT_VERSION
+      - Name: AB
+        Desc: 030405
+        Type: NT_ARCH
+      - Name: AB
+        Type: NT_GNU_BUILD_ID
+  - Name:        .note.foo8
+    Type:         SHT_NOTE
+    AddressAlign: 8
+    Notes:
+      - Name: ABCD
+        Desc: 0102
+        Type: NT_VERSION
+      - Name: AB
+        Desc: 030405
+        Type: NT_ARCH
+      - Name: AB
+        Type: NT_GNU_BUILD_ID

@MaskRay
Copy link
Member

MaskRay commented Nov 30, 2024

[D150022]([https://reviews.llvm.org/D150022]](https://reviews.llvm.org/D150022%5D), [

Stray %5D in the URI

@igorkudrin igorkudrin merged commit 1724188 into llvm:main Dec 3, 2024
8 checks passed
@igorkudrin igorkudrin deleted the yaml2obj-notes-alignment branch December 3, 2024 02:00
@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 3, 2024

LLVM Buildbot has detected a new failure on builder lldb-x86_64-debian running on lldb-x86_64-debian while building llvm at step 6 "test".

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

Here is the relevant piece of the build log for the reference
Step 6 (test) failure: build (failure)
...
PASS: lldb-api :: functionalities/step-avoids-no-debug/TestStepNoDebug.py (195 of 2716)
PASS: lldb-api :: functionalities/thread/concurrent_events/TestConcurrentWatchpointDelayWatchpointOneBreakpoint.py (196 of 2716)
PASS: lldb-api :: commands/expression/call-function/TestCallUserDefinedFunction.py (197 of 2716)
PASS: lldb-api :: lang/cpp/stl/TestStdCXXDisassembly.py (198 of 2716)
PASS: lldb-api :: lang/c/step-target/TestStepTarget.py (199 of 2716)
PASS: lldb-shell :: Subprocess/fork-follow-child-wp.test (200 of 2716)
PASS: lldb-api :: lang/c/bitfields/TestBitfields.py (201 of 2716)
PASS: lldb-api :: functionalities/breakpoint/breakpoint_ids/TestBreakpointIDs.py (202 of 2716)
PASS: lldb-shell :: Subprocess/clone-follow-child-wp.test (203 of 2716)
PASS: lldb-api :: lang/cpp/template/TestTemplateArgs.py (204 of 2716)
FAIL: lldb-api :: functionalities/thread/thread_specific_break_plus_condition/TestThreadSpecificBpPlusCondition.py (205 of 2716)
******************** TEST 'lldb-api :: functionalities/thread/thread_specific_break_plus_condition/TestThreadSpecificBpPlusCondition.py' FAILED ********************
Script:
--
/usr/bin/python3 /home/worker/2.0.1/lldb-x86_64-debian/llvm-project/lldb/test/API/dotest.py -u CXXFLAGS -u CFLAGS --env LLVM_LIBS_DIR=/home/worker/2.0.1/lldb-x86_64-debian/build/./lib --env LLVM_INCLUDE_DIR=/home/worker/2.0.1/lldb-x86_64-debian/build/include --env LLVM_TOOLS_DIR=/home/worker/2.0.1/lldb-x86_64-debian/build/./bin --arch x86_64 --build-dir /home/worker/2.0.1/lldb-x86_64-debian/build/lldb-test-build.noindex --lldb-module-cache-dir /home/worker/2.0.1/lldb-x86_64-debian/build/lldb-test-build.noindex/module-cache-lldb/lldb-api --clang-module-cache-dir /home/worker/2.0.1/lldb-x86_64-debian/build/lldb-test-build.noindex/module-cache-clang/lldb-api --executable /home/worker/2.0.1/lldb-x86_64-debian/build/./bin/lldb --compiler /home/worker/2.0.1/lldb-x86_64-debian/build/./bin/clang --dsymutil /home/worker/2.0.1/lldb-x86_64-debian/build/./bin/dsymutil --make /usr/bin/make --llvm-tools-dir /home/worker/2.0.1/lldb-x86_64-debian/build/./bin --lldb-obj-root /home/worker/2.0.1/lldb-x86_64-debian/build/tools/lldb --lldb-libs-dir /home/worker/2.0.1/lldb-x86_64-debian/build/./lib -t /home/worker/2.0.1/lldb-x86_64-debian/llvm-project/lldb/test/API/functionalities/thread/thread_specific_break_plus_condition -p TestThreadSpecificBpPlusCondition.py
--
Exit Code: 1

Command Output (stdout):
--
lldb version 20.0.0git (https://github.com/llvm/llvm-project.git revision 1724188c19f363c877fcf1bca86d92af3864b338)
  clang revision 1724188c19f363c877fcf1bca86d92af3864b338
  llvm revision 1724188c19f363c877fcf1bca86d92af3864b338
Skipping the following test categories: ['libc++', 'dsym', 'gmodules', 'debugserver', 'objc']

--
Command Output (stderr):
--
Change dir to: /home/worker/2.0.1/lldb-x86_64-debian/llvm-project/lldb/test/API/functionalities/thread/thread_specific_break_plus_condition
UNSUPPORTED: LLDB (/home/worker/2.0.1/lldb-x86_64-debian/build/bin/clang-x86_64) :: test_python_dsym (TestThreadSpecificBpPlusCondition.ThreadSpecificBreakPlusConditionTestCase.test_python_dsym) (test case does not fall in any category of interest for this run) 
runCmd: settings clear -all

output: 

runCmd: settings set symbols.enable-external-lookup false

output: 

runCmd: settings set target.inherit-tcc true

output: 

runCmd: settings set target.disable-aslr false

output: 

runCmd: settings set target.detach-on-error false

output: 

@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 3, 2024

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 8 "Add check check-llvm".

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

Here is the relevant piece of the build log for the reference
Step 8 (Add check check-llvm) failure: test (failure)
******************** TEST 'LLVM :: tools/yaml2obj/ELF/note-section.yaml' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 8: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=1 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=1 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
RUN: at line 9: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
RUN: at line 57: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=2 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=2 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 58: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
RUN: at line 80: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=3 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=3 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 81: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
RUN: at line 82: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=4 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=4 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 83: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 119: not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=5 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
+ not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=5 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
RUN: at line 136: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=6 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=6 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 137: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 157: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=7 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=7 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
RUN: at line 158: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readobj --sections --section-data /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
RUN: at line 177: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=8 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=8 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
RUN: at line 178: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readelf --sections /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8 | /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/llvm-readelf --sections /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
RUN: at line 194: not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=9 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=9 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 211: not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=10 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=10 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/FileCheck /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 226: /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/bin/yaml2obj --docnum=11 /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /home/botworker/bbot/builds/openmp-offload-sles-build/llvm.build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp11
...

igorkudrin added a commit that referenced this pull request Dec 3, 2024
… notes (#118157)"

This reverts commit 1724188.

Some build bots reported a failure in the updated test
@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 3, 2024

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/13522

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 :: tools/yaml2obj/ELF/note-section.yaml' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 8: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=1 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=1 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
RUN: at line 9: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
RUN: at line 57: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=2 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=2 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 58: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
RUN: at line 80: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=3 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=3 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 81: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
RUN: at line 82: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=4 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=4 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 83: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 119: not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=5 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
+ not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=5 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
RUN: at line 136: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=6 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=6 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 137: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
RUN: at line 157: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=7 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=7 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
RUN: at line 158: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readobj --sections --section-data /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
RUN: at line 177: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=8 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=8 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
RUN: at line 178: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readelf --sections /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llvm-readelf --sections /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
RUN: at line 194: not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=9 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=9 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 211: not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=10 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=10 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml
RUN: at line 226: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/yaml2obj --docnum=11 /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/clang-x86_64-debian-fast/llvm.obj/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp11
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 3, 2024

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/14147

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 :: tools/yaml2obj/ELF/note-section.yaml' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 8: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=1 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=1 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
RUN: at line 9: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
RUN: at line 57: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=2 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=2 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 58: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 80: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=3 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=3 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 81: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 82: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=4 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=4 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 83: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
RUN: at line 119: not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=5 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
+ not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=5 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
RUN: at line 136: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=6 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=6 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 137: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 157: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=7 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=7 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
RUN: at line 158: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readobj --sections --section-data /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
RUN: at line 177: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=8 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=8 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
RUN: at line 178: /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readelf --sections /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llvm-readelf --sections /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
RUN: at line 194: not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=9 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=9 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 211: not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=10 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=10 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 226: /b/1/llvm-x86_64-debian-dylib/build/bin/yaml2obj --docnum=11 /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-x86_64-debian-dylib/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp11
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Dec 3, 2024

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/9941

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 :: tools/yaml2obj/ELF/note-section.yaml' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 8: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=1 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=1 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
RUN: at line 9: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp1
RUN: at line 57: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=2 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=2 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 58: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp2
RUN: at line 80: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=3 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=3 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 81: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp3
RUN: at line 82: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=4 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=4 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 83: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NOTE-BE
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp4
RUN: at line 119: not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=5 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
+ not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=5 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=TYPE-REQ
RUN: at line 136: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=6 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=6 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 137: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NAME-DESC
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp6
RUN: at line 157: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=7 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=7 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
RUN: at line 158: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readobj --sections --section-data /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp7
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT
RUN: at line 177: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=8 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=8 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
RUN: at line 178: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readelf --sections /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=NO-TAGS
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llvm-readelf --sections /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp8
RUN: at line 194: not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=9 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=9 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 211: not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=10 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml 2>&1 | /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
+ not /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=10 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml
+ /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/tools/yaml2obj/ELF/note-section.yaml --check-prefix=CONTENT-NOTES
RUN: at line 226: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/yaml2obj --docnum=11 /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/tools/yaml2obj/ELF/note-section.yaml -o /b/1/llvm-clang-x86_64-expensive-checks-debian/build/test/tools/yaml2obj/ELF/Output/note-section.yaml.tmp11
...

igorkudrin added a commit to igorkudrin/llvm-project that referenced this pull request Dec 3, 2024
… notes"

This relands llvm#118157 with a fix for the use of an uninitialised variable.

The [System V ABI](https://www.sco.com/developers/gabi/latest/ch5.pheader.html#note_section)
states that the note entries and their descriptor fields must be aligned
to 4 or 8 bytes for 32-bit or 64-bit objects respectively. In practice,
64-bit systems can use both alignments, with the actual format being
determined by the alignment of the segment. For example, the
[Linux gABI extension](https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf)
contains a special note on this, see 2.1.7 "Alignment of Note Sections".

This patch adjusts the format of the generated notes to the specified
section alignment. Since `llvm-readobj` was fixed in a similar way in
[D150022](https://reviews.llvm.org/D150022), "[Object] Fix handling of
Elf_Nhdr with sh_addralign=8", the generated notes can now be parsed
successfully by the tool.
igorkudrin added a commit that referenced this pull request Dec 5, 2024
… notes" (#118434)

This relands #118157 with a fix for the use of an uninitialized
variable and additional tests.

The System V ABI
(https://www.sco.com/developers/gabi/latest/ch5.pheader.html#note_section)
states that the note entries and their descriptor fields must be aligned
to 4 or 8 bytes for 32-bit or 64-bit objects respectively. In practice,
64-bit systems can use both alignments, with the actual format being
determined by the alignment of the segment. For example, the Linux
gABI extension (https://github.com/hjl-tools/linux-abi/wiki/linux-abi-draft.pdf)
contains a special note on this, see 2.1.7 "Alignment of Note Sections".

This patch adjusts the format of the generated notes to the specified
section alignment. Since `llvm-readobj` was fixed in a similar way in
https://reviews.llvm.org/D150022, "[Object] Fix handling of Elf_Nhdr
with sh_addralign=8", the generated notes can now be parsed
successfully by the tool.
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