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

    <tr>
        <th>Summary</th>
        <td>
            [Flang][OpenMP] undefined reference to `__kmpc_fork_call_if'
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          yus3710-fj
      </td>
    </tr>
</table>

<pre>
    This is an issue from Fujitsu testsuite.

Flang-new terminates with linker error when compiling `if` clause of OpenMP.

The following are the test program, Flang-new and gfortran compilation result.

```fortran
! test.f90
      logical x
!$omp parallel if(x)
      print *,'test'
!$omp endparallel
 end
```
```console
$ flang-new -v -fopenmp test.f90 
flang-new version 17.0.0 (https://github.com/llvm/llvm-project.git 289828b1c0a6bc6eed8a634376a5152adae2283b)
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /path/to/install/bin
Found candidate GCC installation: /usr/lib/gcc/aarch64-redhat-linux/8
Selected GCC installation: /usr/lib/gcc/aarch64-redhat-linux/8
Candidate multilib: .;@m64
Selected multilib: .;@m64
 "/path/to/install/bin/flang-new" -fc1 -triple aarch64-unknown-linux-gnu -emit-obj -fopenmp -fcolor-diagnostics -mrelocation-model pic -pic-level 2 -pic-is-pie -target-cpu generic -target-feature +neon -target-feature +v8a -o /tmp/test-f13bdb.o -x f95-cpp-input test.f90
 "/usr/bin/ld" -pie -EL --hash-style=gnu --eh-frame-hdr -m aarch64linux -dynamic-linker /lib/ld-linux-aarch64.so.1 -o a.out /usr/lib/gcc/aarch64-redhat-linux/8/../../../../lib64/Scrt1.o /usr/lib/gcc/aarch64-redhat-linux/8/../../../../lib64/crti.o /usr/lib/gcc/aarch64-redhat-linux/8/crtbeginS.o -L/path/to/install/lib/clang/17/lib/aarch64-unknown-linux-gnu -L/usr/lib/gcc/aarch64-redhat-linux/8 -L/usr/lib/gcc/aarch64-redhat-linux/8/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/lib -L/usr/lib /tmp/test-f13bdb.o -L/path/to/install/lib -lFortran_main -lFortranRuntime -lFortranDecimal -lm -lomp -L/path/to/install/lib -lgcc --as-needed -lgcc_s --no-as-needed -lpthread -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/aarch64-redhat-linux/8/crtendS.o /usr/lib/gcc/aarch64-redhat-linux/8/../../../../lib64/crtn.o
/tmp/test-f13bdb.o: In function `_QQmain':
FIRModule:(.text+0x4c): undefined reference to `__kmpc_fork_call_if'
flang-new: error: linker command failed with exit code 1 (use -v to see invocation)
```
```console
$ gfortran -v -fopenmp test.f90 
Driving: gfortran -v -fopenmp test.f90 -l gfortran -l m -shared-libgcc
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-redhat-linux/8/lto-wrapper
Target: aarch64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-gnu-indirect-function --build=aarch64-redhat-linux
Thread model: posix
gcc version 8.3.1 20190507 (Red Hat 8.3.1-4) (GCC) 
 :
$
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysV1tv4zjS_TX0S4GCTPmWBz8kdmu-BjLonnQ-7KNBUSWJCUVqeUmc-fUL6mIn3k62M-jAcKxi8bB4qlQ85M7JWiNuyfKGLPczHnxj7PYluGw9T2n1MCtM-bK9b6QD6YBrkM4FhMqaFvLwIL0L4NF5F6THhKR7kl4P37niuqYan8GjbaXmHh08S9-AkvoRLaC1xsJzgxqEaTuppK6BrFJZkVUKQvHgEEwF3zrUf35_g33fIFRGKfMc53CL4Bvs44DOmtrylrAdnCPguoS6MtZbPi3GvTQaLLqg_BtsskqHz-g_Wtm8x0-qq3SwQP-nTC0FV3A8uRG2MG0HHbdcKVQgK8I2R8KuXk_rrNQeCLsmbEfYOiITtr7EQF1OMONk1OVFlBePwmhnFE5IC6hOJNAnoJXpULfdaSswOJ6dntC6SMx8naRJCoRtGu87R7JrwnLC8lr6JhSJMC1huVJP0z_aWfOAwie19MA2Vxu2KeYi5atCrBDLDV9li2y94sv5kvGSI2ObrDiRcs9tjZ5k18C5Fc1qQYN-1OZZUyV1ONJahynxFnkJrSlRRffOODlS_1U7H6kq99LGIcLyjvuGsNwbwnI5DBOWF3LMaW6CLkFwXcqSe4Q_djsY3frqGFGCs3GTsojbF4KwfArSYtlwP8RIWL4ZYH-gQuGx_F14u1OAbVBexonZNSQkuyGLtF0tLlb9yAkIYx_ywvJTKRDGgFZiDtRb2Sl8PzVAsZWemuLhXGC0EkYZS0vJa22cl8IBbS0qI3ouaJ9C6KQA2klBFT6hAjY8SEc7iUB9XxZUdAFq1Gij82irkPtgEQi70Wj0z-xPGw7URMZ928VvdJ5W86woi8QAPUJ1taSi66jUXfCXb_fA1JCrgRlV9pT0kX25BUob7hrq_ItCku17Hig2tLK8RdqUFmg7cdZTBbR80byNmx0a4KkKVDmSObonziTzGDtPTPCfrBmWJ8l_fylZrBaE5T-E9fPE_FZMYb38B5DC-gJrqX_EbNy-W5YDmohlSVg-X59MH9Tj7adi-az_R3QMWAPKpfX1Cj-ZceH0buF-SBVQlQ_n1qHlUp8f74L2ssWzYY9CtlwBVS1QFY-b_4lcCwGUckc1YonlYDk4oFSbN-bOD32aKvHr0_5B_aAuf_z-YtaJmc7Pn2UgNtavGqqgRa8hyCo9_PVXZDse4dkkf77e_WnKEHvDNWGbxOPRE3aTHhciHnvZNQRdYiU1lmCxQotaIHjTwx0e204cKmMfD4IrdYgaYn1xVEeIXkLFH2NHEaZto9apuFRYDmoLj9KDMCXCPB7nUVTRp7iQQwSpn8aGfDqLf1lZnATVB8Jib-WT1HUM8WN3ql45KGiBuoZbjI2xiPns0f7fRblXBKk8lRpch8KN2m337fb2y-7-8MduF5vxG-02jd3efzv86-76-_cvdyTbvy4aPKL4lcJR3tBny7sO7XvC5c2sYXmjK1kHOyakP5djxYnJHs8NzQuFtDDGO295dzbFdAdeoyPZXhC2E4Td9J_dtEe2U94ApZ3FSh5POwNKYy1EMXTea08qYXkbaaZSV-YdhzgElMaAaRHqYBXJ9lEKnpRgEeq_pVI8GXY8SsLJet7AkMfz89Aa4nZ68XYeEA2Kx75Y9hYVcveKmEnUTCG5F-expX8PptHpcBBHfuC-r3hKS-kGBmUR9LPUJcWjwC4WuztPqnWgQct_B4wCBoV_RX3_UtFYbyWV5bR2LQRt-YOxdBTL1Gj1Mo2Ok36mDQbUToU6NubpWWrpK6kl5dbyE4x06u0W2u74NmgZc4vC01MjokOoJNu_X4wfCOjYpif5v0myZA4snV-ly3Qd-8YdlvB_3A8jdEHYVbTG1y3-GjXT1PwIW1x0j1m5zcqr7IrPcDtfbTbrdLVYb2bNlvP5PFttUtzwlVhfsWJeVtU6FRsUuOCsmMktS1mWrtN1DGW5SSrBeLVcVayaV-uqYGSRYsulSuI9JDG2nvV31O0qW7PFTPEClevvt4zFG04_GNXdcj-z2_7uUoTakUWqpPPujOKlV_3FuL9HkuWeLG-GuyhZ7j_dvWfBqu3n7lLxNYzBOsLyfjP_CQAA__9F5fpF">