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

    <tr>
        <th>Summary</th>
        <td>
            libomptarget.so doesn't link on FreeBSD 14/amd64
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            platform:freebsd,
            openmp:libomptarget
      </td>
    </tr>

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

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

<pre>
    When trying to build LLVM 18.1.0 on FreeBSD 14.0/amd64 with `test-release.sh`, `libomptarget.so` `FAIL`ed to link:
```
FAILED: lib/libomptarget.so.18.1rc
[...]
ld: error: projects/openmp/libomptarget/src/CMakeFiles/omptarget.dir/device.cpp.o: Unknown attribute kind (91) (Producer: 'LLVM18.1.0rc' Reader: 'LLVM 16.0.6')
```
`/usr/bin/ld` is
```
LLD 16.0.6 (FreeBSD llvmorg-16.0.6-0-g7cbf1a259152-1400006) (compatible with GNU linkers)
```
While `lld` is built during at some point, it isn't used for this.

The error above is from `llvm/lib/Bitcode/Reader/BitcodeReader.cpp:BitcodeReader::parseAttrKind`, and the attribute kind is defined in `llvm/include/llvm/Bitcode/LLVMBitCodes.h`: `ATTR_KIND_DEAD_ON_UNWIND = 91`.  This is new in LLVM 18.

The file in question is
```
projects/openmp/libomptarget/src/CMakeFiles/omptarget.dir/device.cpp.o: LLVM IR bitcode
```

Given that I had no time or patience to debug this, I've just disabled `openmp` for that build (@DimitryAndric , @brooksdavis).
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0VF1vozgU_TXOy1WQMQTCQx5oGUbRdLqr2Xb7WBl8CXcKNmubVP33KxM63Vadx5WiCH_dj3POPdI5OmnEA9tdsV21kbPvjT1YY32_aYx6OTz0qMHbF9In8AaamQYFNzd_f4d4H8URB6OhtohXf1UQpxFnopajylJ4Jt8Dy7hH57cWB5QOI9ezjDNxHQ4Gasw4eWlP6CNnWMbDbl0eb1jGUYVsA-knlpSMV4yX4eXltyzDxS8VS0oYqGGi_hAuCuXZdn26u4qiiO2qy3JQ4Rlaa2z4mKz5ia13TNRmQj1OH6IxUTvbMlFff5dPWNOAy9VfyRRZJmqFZ2oxaqcpMiHqvX7S5lmD9N5SM3uEJ9IKmNgXMRNF-PjTGjW3uBTBRB5QvYAasuXwA6V6dwhxFvEoYyJnovgUlAXdenahoIZ0aEQFYMl9ev3mplpjhnJeaRyG82jsaXs52fLtKW-bLpZiV8Q7sY1TzjnP1h5aM07SUzPghfGvt_cLbWjd74p86GnARQGvxS2y8qBmG2QmPTgzIkyGtA9iIQ_kNBO5h9mhgs5Y8D25aA2__N_1eKEUZGPOGKJ21oyXPOfxwikT9RX51ihkol7x_bV1WQcGWVK-2wsaTMpJWoel9_YbabXqWGoFvsePLJMDhR1pVED6PyWQbod5Sb5uvFUTCL4if20UumgZk0B8xsu7ux-P34631WP1pawe_7h9vL99ON5WwJIKiphlPAK468mFpBqfQ8LX-fyITxeAJw3_zOg8Gf07Xfw_E7FUdfwBzdrzpwJe_r_SObhOLz0coZcKtAFPI4KxENSGusXgDwqb-bRIIXBxZCI_I_ycnQdFTjYDqoDg2kLGV-FIv9oYE3uW8opG8val1MpSC4s5pbyxxjw5Jc8hdBFt1CFRRVLIDR7inBcFT3mSbfoDF3kXN2nBu91-v8-x26WYdm2BXMV5W-QbOgguUp7wfZwIniRR2zRJustTvs-6VGQ5SzmOkoYoKCIy9rQh52Y87NM0LzaDbHBwiz0LMQ3Sd8aOLCk7i9g4xYRg4poJsfaYlO9pEsHU7SGE3jbzybGUD-S8e0vmyQ94-GCeoAyuAxdm-b3Hvzr8ZrbDofd-cmE8RM1EfSLfz03UmvFN4UvuVVBhAkJzQS1Lf_8GAAD__2Vj_N8">