<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/109231>109231</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            bolt:  inline-debug-info.test fails on GitHub actions runner
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            BOLT
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          tstellar
      </td>
    </tr>
</table>

<pre>
    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](https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.0/LLVM-19.1.0-Linux-X64.tar.xz) that was used on the runner, but I wasn't able to reproduce it.

The test crashes here is the backtrace: 
``` #0 0x0000564d0d8338e1 PrintStackTraceSignalHandler(void*) (.llvm.6619503402611545084) Signals.cpp:0:0
 #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>
```


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0WF1v2zrS_jXMzSAGSZESdeELx6nfU7w9exZt9-xibwJ-yVaOPgyRSpX99QtKciypdjdBUyOxJZF8ZuaZDw4lncv3lbVrxO8Qv7-RrT_Uzdo7b4tCNjeqNs_rj4gmJThr82oP_mAB8qrIK3trrGr3t3mV1StvnYf-K5N5AXXVT_y_3P_WKpDa53XloGmryjbw7WArUG1emBMgSVdkhaGxhZXOruAj-Ca3BnwNjT02tWm1BX_IXQAun6GotSzAPTtvS2jdCcZ2UntwsrSA-J3KK9k8I36PqDh4f3Qo2iC6Q3S3z_2hVStdl4juiuLp9HN7bOpHqz2iu1EVh-jO1N-qopZmnFQ3-9tBX0R3nz79-ft4d_spr9ru9l8xW3nZrLr_IJqCP0gP36SD1llzYmWgAdEtqNbDxzBeIZp4kKqwc5tzv0L4HuHN8P31YAeSdSPdwTo42MZC7npYJfVfvpHaomgD46oYD3-AaIQBdxhjzGNmsBFRJCyBvzd55b94qf_6GpZ-yfeVLH6TlSmChuKpzg2im2AKomIV7F_FMUk5jhimMSGccSxYGB-WupU-HlG0wf1_r0SQTRayGdUWlsLyyv9PIDoCJRnjnMWMchqME8E5uUJ014n4IWa3Re-MfdUOA3rl6lWM6B3u-iWIpmfMaKqcxYwrTKAPi2iDoo2qCz9c3fURta0rb7vxkTTmPmTBLi9sJUv7tf5HlXtERVv1mWWgt2oLP75PRxvKcLPrcwPRna_rIkSgLmS1R3TnvNxbeqvyKjxVeXWK217FYBwnOlOYzMxjc_M4txkL4mRVV89l3ToIirtjiByaTi39UObe22Z4ZMvc79qqT-W72jwjKq5zdJqIaByMvTTxNGXXyH1pg939VFXXxSzcGMYJo5SRNBGcUY5TEcZnGl6OFb4wPMGc_qThv8ToVxkTL4yJkyz-SWNcH3PjXETZAx4u66NtpK-bcZgK580w8mR1eB5tX0PCJpDwslQWoWi_ZXX0AUUfQNeVO9HUX7-GrGRBFhNGX_RHoGOe1VMH_7794hsry1Cdrrp0sXwx74tv8mr_2WbvmePGCqNnOS7m9VXaLLtcwj7bb03u7cfKeVn1WwWKNk1bDb5-Jw2ZjESWzatQOtVQ2URpbqCUefVOMiOMuebmRWbYdPB8s6CpSd-4WfRLZphkiWkZhoeHsOzBedn4h4lRr5Zi2VwKnbMVW2I5DPjvxBfNMkEsP0udNwzD7a4tiqFTg6Leh0YjNByhv3hzQyVPJWfXtP0PwSlmoY1IUkR3j3VgKsI0jSnGnCRTrf5QAQRM7qRztlTFM2RNXYJs6rYyffPTN0SrH5gCYWuUmgXlh49VQAU8lsdw049aCyjaPvz7bywozwJXJJrlN6WXN_wPj4-PPa2E2VC4piLjIJJpEApiBpRBguHlU9ZP4Qd3Ce79yht37IvuNlwTOkNSZ-WzGNgAJgCTM17oDhUAogx3BNEt7hIxA57gGXzGSzhgDY-VfSHDvAMZ0ZIMQ4NIq4BI-P7zy31hevczDhEBy5biu7oJPwPx5sUFZoaQvLMP9MQHDAiGx94Fv5KEPoGZCAGZ6LcFpMmnSDY6Kx_wOGTZktT-uDKQavLLKPGMAhz_egqsOFOAk6XKIwWj-UHrk_mym6FM8zEDjgEL0LIo-sUb3J28LruF162dEEfCYm3BWP0SfmwWdBmZTE-D0kPcxQu_4S4-OY3Qa1pnE7pDVUohI5cYGPQYIfQcIp35XROwZMmjOxSDNQx3yWUUM0GxIAxQvdSlsHLiCt2dkjLoJSZ1MpoAh_NP8K48ESUguhTgEZ645wRDt-QKcQrHp6AxgA0kCigBIiBTE01vccdsYqzgI3g-yR7dnZRANIKIEy1EiO6V882KDMcdwjhPY57wOKEpjSkVPJpHr8JmnnZp8CNlwMU5dEeycMevlR5F6DJ7Nb6YvTOO5pwQfsbAGQgGRgHG49_wmWSzCmeWn8xmyuMFH6TPwzExeiaYuOBvJi7kxiwkFcVzSgxgBgz_ICSnvNDttaRTlH2XMThgT7OEXV4pZgwTHEIaEzDzkG6PLsTeS0zrmV7nmO7KEs_gzXfwOsDbi_D0FfBkCh_RJTzvtc8uwpNXwNMZfDKDpymkfWFMJxFY1k_y6OC0OuREiq_lRDQpzBjDbChbyhJ9rIlrsoatX1yVxeKrsth3drFLneNZFh7ajOuyJm2GjkOeUgYSz1K1rJ8UzNoWeRWPT3Z-TGa6c7bMoaHJmNbgMYcm8Xq1yVA8_Q7vxMULzMVexc1hJp61AqyBiIPqbR-3bK5NRDgeC9T_9xWKsPt_bj7vdnVT_imL1hK6t37jtsOx_sPTSyVanDaG7xuzjkwapfLGrklC44QSnIqbw1pmKsGR0MrEjJLMSBspEZsszbiICMtu8jXFlOGUpJgxxsUKC64VlZxKw7JwzmXYljIvhk2jbvY3uXOtXROc0ojcFFLZwvVv9Sm9--PTV0Qp4vc3zXo4BbZ7hxgucufdGcHnvrDr8V3B1Zf8mcyL_j38xZf7N21TrN98OOx1Hw-FQf2nNf1vAAAA__9Zys5b">