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

    <tr>
        <th>Summary</th>
        <td>
            [flang] FLANG_DEFAULT_LINKER=lld does not use ld.lld as the linker
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            flang:driver,
            flang:build
      </td>
    </tr>

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

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

<pre>
    If I build flang with `-DFLANG_DEFAULT_LINKER=lld`, the system `ld` is used.
```
$ bin/flang-new -### t0.f90
flang-new version 18.0.0 (git@github.com:kkwli/llvm-project.git d2d29288bd4f64e0966db42b821d84587501669b)
Target: powerpc64le-unknown-linux-gnu
Thread model: posix
InstalledDir: /scratch/kli/wrk/f/build-temp/bin
 "/scratch/kli/wrk/f/build-temp/bin/flang-new" "-fc1" "-triple" "powerpc64le-unknown-linux-gnu" "-emit-obj" "-fcolor-diagnostics" "-mrelocation-model" "pic" "-pic-level" "2" "-pic-is-pie" "-target-cpu" "ppc64le" "-o" "/tmp/t0-7dd6ee.o" "-x" "f95-cpp-input" "t0.f90"
 "/usr/lib/gcc/ppc64le-redhat-linux/12/../../../../bin/ld" "--hash-style=gnu" "--eh-frame-hdr" "-m" "elf64lppc" "-pie" "-dynamic-linker" "/lib64/ld64.so.2" "-o" "a.out" "/lib/../lib64/Scrt1.o" "/lib/../lib64/crti.o" "/usr/lib/gcc/ppc64le-redhat-linux/12/crtbeginS.o" "-L/usr/lib/gcc/ppc64le-redhat-linux/12" "-L/usr/lib/gcc/ppc64le-redhat-linux/12/../../../../lib64" "-L/lib/../lib64" "-L/usr/lib/../lib64" "-L/lib" "-L/usr/lib" "/tmp/t0-7dd6ee.o" "-L/scratch/kli/wrk/f/build-temp/lib" "-lFortran_main" "-lFortranRuntime" "-lFortranDecimal" "-lm" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "/usr/lib/gcc/ppc64le-redhat-linux/12/crtendS.o" "/lib/../lib64/crtn.o"
```

However, if I use `-DCLANG_DEFAULT_LINKER=lld`, `ld.lld` is used.
```
$ bin/flang-new -### t0.f90
flang-new version 18.0.0 (git@github.com:kkwli/llvm-project.git d2d29288bd4f64e0966db42b821d84587501669b)
Target: powerpc64le-unknown-linux-gnu
Thread model: posix
InstalledDir: /scratch/kli/wrk/f/build-temp/bin
 "/scratch/kli/wrk/f/build-temp/bin/flang-new" "-fc1" "-triple" "powerpc64le-unknown-linux-gnu" "-emit-obj" "-fcolor-diagnostics" "-mrelocation-model" "pic" "-pic-level" "2" "-pic-is-pie" "-target-cpu" "ppc64le" "-o" "/tmp/end-434412.o" "-x" "f95-cpp-input" "t0.f90"
 "/scratch/kli/wrk/f/build-temp/bin/ld.lld" "--hash-style=gnu" "--eh-frame-hdr" "-m" "elf64lppc" "-pie" "-dynamic-linker" "/lib64/ld64.so.2" "-o" "a.out" "/lib/../lib64/Scrt1.o" "/lib/../lib64/crti.o" "/usr/lib/gcc/ppc64le-redhat-linux/12/crtbeginS.o" "-L/usr/lib/gcc/ppc64le-redhat-linux/12" "-L/usr/lib/gcc/ppc64le-redhat-linux/12/../../../../lib64" "-L/lib/../lib64" "-L/usr/lib/../lib64" "-L/lib" "-L/usr/lib" "/tmp/end-434412.o" "-L/scratch/kli/wrk/f/build-temp/lib" "-lFortran_main" "-lFortranRuntime" "-lFortranDecimal" "-lm" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "-lc" "-lgcc" "--as-needed" "-lgcc_s" "--no-as-needed" "/usr/lib/gcc/ppc64le-redhat-linux/12/crtendS.o" "/lib/../lib64/crtn.o"
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsV01v2zgT_jX0haAgUR-2Dj74jat3gw16aLrngCLHEmuKFEgqTv79QpT80dRNNt0FegkgCNR8cGaeGfEBmXOy0QBrlP8P5dsFG3xr7Hq_Pyi5qI14Xt_u8C2uB6kE3immG3yQvsWoiMm2utt8_v_D9lO1-evu68Pd7ec_P31B6VYpgYoY0RvsW8Du2XnoRocgxtLhwYGIULxF8WY0nJ7pk2a4lhrRKsQiGg6YIJpOD_ZxtCtn07PBI1gnjcbJKoqjGCO6aqRHWdxI3w51xE2H0k2oCNFKqceO9NZ8A-6jRnosqKAlXa1qke2KDOKyKESd0XpFE7HK8tUyj5OiKGtEyynwV2Yb8Cjd4N4cwPa8yBSQQe-1OWiipB6eSKOH2bi1wATujAA1uTj5NKlutfNMKRBbaUcVopXjlnneIlrtQ7IHux-hQLQKDSAeun78kHraAiNK3-d2ASyidPQnO54cl97KXsH89Xp1swd00hNTfztvZpSxREjWaOO85O6o6Swow5mXRpMJjjmM5EeTXnKi4PGkopcK6Ugv4ZRpaALh_TGTfsr0qDfzAtHKh-J9TJZCFADRUUWe5sWuzAnveyJ1P_hZNk8apd8BPTg7jpCsEa0azhGt5rDEgmiZn_BBtEpG6yj68TX1QIljDqRlriXOPytA6fYCWAIt2VnWAWmFPWE4L0Dtikz1_QVyp8rFs2bdCKTUe7BnGJSsiyzELrLImYi-hIpF5lT-qcqQ9NH1nlufROZVG269vDR5H2Tc-hoaqe_PXbp77ya_6Ha1XXNV5y1_rPh6uFe8rzq8Oax3__w_v4iiKmO9ZfqhY-PgfS_8MmgvO3gp3gKXHVMncXdaBQzn8WSOaAAB4lL7cPrbiTZXTPh_tdWvDBZocf_28Opgcp2cwvsPc4DH8ce6wXKkxsHBxIY3b7FhoMBIfdDgBw3-NhoELUiWZllC_w0PvgvpeeY_CO-D8H5KeNfG8oPxfjvjLcQ6FWVasgWsk2UcF8u8LJJFu4ZyRXlRAMQ51DlLdzVb0mUO6SquuVgmC7mmMU2ThNJkmZc0iZKS8mUBUNLdrixzgbIYOiZVNDJRZGyzkM4NsF6mSZ4uFKtBuXAppTQc1SjdCCsD8VJEby7EYRJGab5d2HUgtnpoHMpiJZ135wBeehUuupNnvsU_v8BiYcBhbXzg9-kIw8yFG-100CwGq9at971D6QbRamzKmWknhn1BtIhWoUiHaBXq_DsAAP__ZU11qw">