Skip to content

bolt: inline-debug-info.test fails on GitHub actions runner #109231

Open
@tstellar

Description

@tstellar

I'm seeing the inline-debug-info.test test fail on the GitHub actions runner when building the 19.1.0 release. I tried to reproduce this on my local system using the exact same binary that was used on the runner, but I wasn't able to reproduce it.

The test crashes here is the backtrace:

 #1 0x0000564d0d8342ce SignalHandler(int) Signals.cpp:0:0
 #2 0x00007f4554642520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #3 0x0000564d0e045b01 llvm::bolt::BinaryContext::addDebugFilenameToUnit(unsigned int, unsigned int, unsigned int) (/mnt/build/tools/clang/stage2-bins/bin/llvm-bolt+0x51cfb01)
 #4 0x0000564d0e055ef4 (anonymous namespace)::BinaryEmitter::emitFunctionBody(llvm::bolt::BinaryFunction&, llvm::bolt::FunctionFragment&, bool) (.llvm.4007422419785425098) BinaryEmitter.cpp:0:0
 #5 0x0000564d0e057052 (anonymous namespace)::BinaryEmitter::emitFunction(llvm::bolt::BinaryFunction&, llvm::bolt::FunctionFragment&) BinaryEmitter.cpp:0:0
 #6 0x0000564d0e0567f6 (anonymous namespace)::BinaryEmitter::emitFunctions()::$_0::operator()(std::vector<llvm::bolt::BinaryFunction*, std::allocator<llvm::bolt::BinaryFunction*>> const&) const BinaryEmitter.cpp:0:0
 #7 0x0000564d0e0548dc llvm::bolt::emitBinaryContext(llvm::MCStreamer&, llvm::bolt::BinaryContext&, llvm::StringRef) (/mnt/build/tools/clang/stage2-bins/bin/llvm-bolt+0x51de8dc)
 #8 0x0000564d0d8aeff1 llvm::bolt::RewriteInstance::run() (/mnt/build/tools/clang/stage2-bins/bin/llvm-bolt+0x4a38ff1)
 #9 0x0000564d0be7bc5d main (/mnt/build/tools/clang/stage2-bins/bin/llvm-bolt+0x3005c5d)
#10 0x00007f4554629d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#11 0x00007f4554629e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#12 0x0000564d0be6e1e5 _start (/mnt/build/tools/clang/stage2-bins/bin/llvm-bolt+0x2ff81e5)

Full build log is here: https://github.com/llvm/llvm-project/actions/runs/10904034079/job/30296200517

Object disassembly from around the crash.

 51cfac4:       eb 28                   jmp    51cfaee <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x14e>
 51cfac6:       4c 8b 64 24 70          mov    0x70(%rsp),%r12
 51cfacb:       f6 44 24 78 01          testb  $0x1,0x78(%rsp)
 51cfad0:       75 0c                   jne    51cfade <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x13e>
 51cfad2:       eb 1a                   jmp    51cfaee <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x14e>
 51cfad4:       45 31 e4                xor    %r12d,%r12d
 51cfad7:       f6 44 24 78 01          testb  $0x1,0x78(%rsp)
 51cfadc:       74 10                   je     51cfaee <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x14e>
 51cfade:       48 8b 7c 24 70          mov    0x70(%rsp),%rdi
 51cfae3:       48 85 ff                test   %rdi,%rdi
 51cfae6:       74 06                   je     51cfaee <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x14e>
 51cfae8:       48 8b 07                mov    (%rdi),%rax
 51cfaeb:       ff 50 08                call   *0x8(%rax)
 51cfaee:       41 ff ce                dec    %r14d
 51cfaf1:       49 8b 44 24 60          mov    0x60(%r12),%rax
 51cfaf6:       4c 89 f1                mov    %r14,%rcx
 51cfaf9:       48 c1 e1 07             shl    $0x7,%rcx
 51cfafd:       4e 8d 2c f1             lea    (%rcx,%r14,8),%r13
 51cfb01:       4a 8b 44 28 30          mov    0x30(%rax,%r13,1),%rax
 51cfb06:       48 8d 0d 7b 21 18 fb    lea    -0x4e7de85(%rip),%rcx        # 351c88 <.str.1.llvm.14559657567292622853>
 51cfb0d:       48 89 4c 24 58          mov    %rcx,0x58(%rsp)
 51cfb12:       48 85 c0                test   %rax,%rax
 51cfb15:       0f 84 db 00 00 00       je     51cfbf6 <_ZN4llvm4bolt13BinaryContext22addDebugFilenameToUnitEjjj+0x256>
 51cfb1b:       49 8b 4c 24 48          mov    0x48(%r12),%rcx
 51cfb20:       48 8d 04 40             lea    (%rax,%rax,2),%rax
 51cfb24:       48 c1 e0 04             shl    $0x4,%rax
 51cfb28:       0f 10 44 01 d0          movups -0x30(%rcx,%rax,1),%xmm0
 51cfb2d:       0f 10 4c 01 e0          movups -0x20(%rcx,%rax,1),%xmm1
 51cfb32:       0f 10 54 01 f0          movups -0x10(%rcx,%rax,1),%xmm2
 51cfb37:       0f 29 94 24 90 00 00    movaps %xmm2,0x90(%rsp)
 51cfb3e:       00 
 51cfb3f:       0f 29 8c 24 80 00 00    movaps %xmm1,0x80(%rsp)
 51cfb46:       00 
 51cfb47:       0f 29 44 24 70          movaps %xmm0,0x70(%rsp)
 51cfb4c:       c6 84 24 a0 00 00 00    movb   $0x1,0xa0(%rsp)
 51cfb53:       01 
 51cfb54:       48 8d 7c 24 30          lea    0x30(%rsp),%rdi
 51cfb59:       48 8d 74 24 70          lea    0x70(%rsp),%rsi
 51cfb5e:       e8 ed 35 b0 00          call   5cd3150 <_ZNK4llvm14DWARFFormValue12getAsCStringEv>

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions