14 Commits

Author SHA1 Message Date
Fangrui Song
1b90095b7d [Driver,test] Improve msvc-link.c 2024-05-04 15:15:12 -07:00
Jacek Caban
556bf03a57
[clang][NFC] Fix ARM64EC clang-cl linker driver tests. (#87160)
Add '--' argument to clang-cl to avoid interpreting input files with /U
option. Fix for llvm-clang-aarch64-darwin buildbot failure after #86835.
2024-03-30 17:18:12 +01:00
Jacek Caban
37c175af95
[clang][Driver] Pass -machine argument to the linker explicitly for ARM64EC targets. (#86835)
This is required by the linker. Also add a new -marm64x command line argument to allow specifying -machine:arm64x.
2024-03-30 16:43:33 +01:00
Haohai Wen
289828b1c0 [Driver][MSVC] Move lld specific flags before inputs
Check linker earlier so that lld specific flags can be append before
inputs. Just like position of other flags. The intention is to make
expanded cmd more consistent and elegent so that user can easily
look for inputs when using -###.

Reviewed By: mstorsjo

Differential Revision: https://reviews.llvm.org/D154176
2023-07-02 09:29:09 +08:00
Alex Brachet
87046744e6 [Driver] Allow test to use lld-link.exe not just lld-link 2023-02-14 23:54:25 +00:00
Alex Brachet
df5beebc98 [Driver] Add --vfsoverlay flag
This flag implies `-ivfsoverlay`, and additionally passes the same
argument to the linker if it supports it. At present the only linker
which does is lld-link, so this functionality has only been added to
the MSVC toolchain. Additionally this option has been made a
CoreOption so that clang-cl can use it without `-Xclang`

Differential Revision: https://reviews.llvm.org/D141808
2023-02-13 17:25:45 +00:00
Maxim Kuvyrkov
2049fe5890 [WoA][MSVC] Use default linker setting in MSVC-compatible driver [take 2]
At the moment "link.exe" is hard-coded as default linker in MSVC.cpp,
so there's no way to use LLD as default linker for MSVC driver.

This patch adds checking of CLANG_DEFAULT_LINKER to MSVC.cpp and
updates unit-tests that expect link.exe linker to explicitly select it
via -fuse-ld=link, so that buildbots and other builds that set
-DCLANG_DEFAULT_LINKER=foobar don't fail these tests.

This is a squash of
- https://reviews.llvm.org/D98493 (MSVC.cpp change) and
- https://reviews.llvm.org/D98862 (unit-tests change)

Reviewed By: maxim-kuvyrkov

Differential Revision: https://reviews.llvm.org/D98935
2021-03-19 13:38:03 +00:00
Martin Storsjö
5eece137bc [clang] Automatically link against oldnames just as linking against libcmt
Differential Revision: https://reviews.llvm.org/D89702
2020-10-20 00:07:00 +03:00
Nico Weber
50824c9caf Reland r341390 clang-cl: Pass /Brepro to linker if it was passed to the compiler
The test was missing  '--' on mac as pointed out by -Wslash-u-filename:
<stdin>:5:69: note: possible intended match here
clang: warning: '/Users/thakis/src/llvm-mono/clang/test/Driver/msvc-link.c' treated as the '/U' option [-Wslash-u-filename]

Differential Revision: https://reviews.llvm.org/D51635

llvm-svn: 341654
2018-09-07 12:47:02 +00:00
A Bergen
51fdaba4ad Reverting r 341390 because it is causing test failures on GreenDragon.
http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental/52810/

llvm-svn: 341560
2018-09-06 16:29:40 +00:00
Nico Weber
88f7285415 clang-cl: Pass /Brepro to linker if it was passed to the compiler
Differential Revision: https://reviews.llvm.org/D51635

llvm-svn: 341390
2018-09-04 18:00:14 +00:00
Saleem Abdulrasool
1f5ceb0b5d Driver: support -L for MSVC toolchain under the GNU driver
When not using clang in the CL emulation mode, honour the -L flags as additional
library paths to pass to the linker invocation.

llvm-svn: 274356
2016-07-01 15:36:31 +00:00
Hans Wennborg
bb49a5de12 Fix msvc-link.c test for environments with link.exe on PATH
Patch by Michael Edwards!

llvm-svn: 231339
2015-03-05 02:26:58 +00:00
Hans Wennborg
e4c47f2e8b Pass -dll to link.exe when building with -shared (PR22697)
And start building a test for non-clang-cl link.exe invocations.

llvm-svn: 231312
2015-03-04 23:16:21 +00:00