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

    <tr>
        <th>Summary</th>
        <td>
            clang19 with -fopenmp=libgomp links against wrong OpenMP implementation
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    When compiling the following program with `-fopenmp=libgomp`, clang 19.1.0 links against `libomp.so`, while previous versions of clang linked against `libgomp.so` (https://godbolt.org/z/MGorobev9).

```
#include <stdio.h>
#include <omp.h>
 
int main() {
    #pragma omp parallel
    {
        int thread_id = omp_get_thread_num();
 int total_threads = omp_get_num_threads();
        printf("Hello from thread %d of %d!\n", thread_id, total_threads);
    }
    return 0;
}
```

Output of ldd for the program compiled with clang 18.1.0:
```
linux-vdso.so.1 (0x00007ffde3155000)
libstdc++.so.6 => /opt/compiler-explorer/gcc-13.2.0/lib64/libstdc++.so.6 (0x00007c7628aee000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007c7628a07000)
libgomp.so.1 => /opt/compiler-explorer/gcc-13.2.0/lib64/libgomp.so.1 (0x00007c76289b7000)
libgcc_s.so.1 => /opt/compiler-explorer/gcc-13.2.0/lib64/libgcc_s.so.1 (0x00007c7628992000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007c7628600000)
/lib64/ld-linux-x86-64.so.2 (0x00007c7628d57000)
```
Output of ldd for the program compiled with clang 19.1.0:
```
linux-vdso.so.1 (0x00007fff291d7000)
libstdc++.so.6 => /opt/compiler-explorer/gcc-13.2.0/lib64/libstdc++.so.6 (0x0000752c3a081000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x0000752c39f9a000)
libomp.so => not found
libgcc_s.so.1 => /opt/compiler-explorer/gcc-13.2.0/lib64/libgcc_s.so.1 (0x0000752c39f75000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000752c39c00000)
/lib64/ld-linux-x86-64.so.2 (0x0000752c3a2ea000)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8lk2TpCgTxz8NXogyMH3l4GG6a-p5LhOztz12oKCyg2AAVtfup99Arepquy7bMzFGhRQm-c8k-aEw52SvhahR_oTyY8RmPxhbu3YQ-oewUWP43_Wfg9C4NeMkldQ99oPAnVHKvIbeZE1v2YhfpR8wKsihM5PQ44TSo5JNb8YJFQTBM24V0z1OaJzEBCupfzjMeia188FNycaMU-zMNvp1kErgyYqzNLPDZ2GdNNph021CQUHwnUR_08AIqsH7yaH0C4ITglNveGOUj43tEZz-QXD69j9jTSPOFAGNETki8mW7F2T7rV1IpW7VzAVG6bPzXJp4QOnXR9aQwJsNr43UHo9MagQVAopR-bSZMcYI0smyfmTYjBOemGVKCXVnvx8criDmBysYf5Eco_QYHF964V-2p3oe10AovbouPsYztY1x7_z0PF6f7x23a7JS-24xwv-FUgZ31oxbGhhBzsPChBZBgvJnjQDCKt7yXDr3CeyjoPL41rHCz1Zjchtxs-5XZrl_n_00-5CB4hx3xi6IXsFcwRV8JXSjsAoUBjQeqSqp58vhzJ2JnYmTgBK5EEJI2XVcpEmeE0LCBLbRjfO8RfCE4Ck4FKG4KP2KEZzM5BGcthTsQVwmZaywAce2PSRpDDFBcFKyKbK1_aB1C96WBVRMiF3wcR9TyQbB6VIVL0V2WOfS63k1jI9FSbkT3TZSmPxPzOVO5X1A2nwI2LYv7hdEvJPZhaSwC9n-l8K1DwtXhL9vove58E3hUhWHIgvesPfm-bsq7Cj8BNX0s1R3QBO-X5LfQ3UObcpIlfxSqoMo7Sjbia44XkW18bgzs-a_BcI1pXL_6vg5CBfR9rMQLqUHwR5CGPE65TSlLBJ1UkIJZZ4WeTTUDaWCVdDkUDJKk7KEvKIlYaxNSUZZGckaCGSEQp5kGWRZXNBK5F3XdATyPG06lBExMqlipc5j-B5H0rlZ1AmhlKaRYo1QbjmRAGjxihdr-KLkx8jWwenQzL1DGVHSefcm46VXol42Q0LXnfHxOLI7e7xao3v8fRL62x9YjpMSo9CeeWl0NFtV7w4R0g9zE7dmDOVV52tzmKz5S7SBlCVbh-C0Tedcw78BAAD__5x5uYs">