llvm-project/clang/test/Driver
Chandler Carruth c58f2166ab Introduce the "retpoline" x86 mitigation technique for variant #2 of the speculative execution vulnerabilities disclosed today, specifically identified by CVE-2017-5715, "Branch Target Injection", and is one of the two halves to Spectre..
Summary:
First, we need to explain the core of the vulnerability. Note that this
is a very incomplete description, please see the Project Zero blog post
for details:
https://googleprojectzero.blogspot.com/2018/01/reading-privileged-memory-with-side.html

The basis for branch target injection is to direct speculative execution
of the processor to some "gadget" of executable code by poisoning the
prediction of indirect branches with the address of that gadget. The
gadget in turn contains an operation that provides a side channel for
reading data. Most commonly, this will look like a load of secret data
followed by a branch on the loaded value and then a load of some
predictable cache line. The attacker then uses timing of the processors
cache to determine which direction the branch took *in the speculative
execution*, and in turn what one bit of the loaded value was. Due to the
nature of these timing side channels and the branch predictor on Intel
processors, this allows an attacker to leak data only accessible to
a privileged domain (like the kernel) back into an unprivileged domain.

The goal is simple: avoid generating code which contains an indirect
branch that could have its prediction poisoned by an attacker. In many
cases, the compiler can simply use directed conditional branches and
a small search tree. LLVM already has support for lowering switches in
this way and the first step of this patch is to disable jump-table
lowering of switches and introduce a pass to rewrite explicit indirectbr
sequences into a switch over integers.

However, there is no fully general alternative to indirect calls. We
introduce a new construct we call a "retpoline" to implement indirect
calls in a non-speculatable way. It can be thought of loosely as
a trampoline for indirect calls which uses the RET instruction on x86.
Further, we arrange for a specific call->ret sequence which ensures the
processor predicts the return to go to a controlled, known location. The
retpoline then "smashes" the return address pushed onto the stack by the
call with the desired target of the original indirect call. The result
is a predicted return to the next instruction after a call (which can be
used to trap speculative execution within an infinite loop) and an
actual indirect branch to an arbitrary address.

On 64-bit x86 ABIs, this is especially easily done in the compiler by
using a guaranteed scratch register to pass the target into this device.
For 32-bit ABIs there isn't a guaranteed scratch register and so several
different retpoline variants are introduced to use a scratch register if
one is available in the calling convention and to otherwise use direct
stack push/pop sequences to pass the target address.

This "retpoline" mitigation is fully described in the following blog
post: https://support.google.com/faqs/answer/7625886

We also support a target feature that disables emission of the retpoline
thunk by the compiler to allow for custom thunks if users want them.
These are particularly useful in environments like kernels that
routinely do hot-patching on boot and want to hot-patch their thunk to
different code sequences. They can write this custom thunk and use
`-mretpoline-external-thunk` *in addition* to `-mretpoline`. In this
case, on x86-64 thu thunk names must be:
```
  __llvm_external_retpoline_r11
```
or on 32-bit:
```
  __llvm_external_retpoline_eax
  __llvm_external_retpoline_ecx
  __llvm_external_retpoline_edx
  __llvm_external_retpoline_push
```
And the target of the retpoline is passed in the named register, or in
the case of the `push` suffix on the top of the stack via a `pushl`
instruction.

There is one other important source of indirect branches in x86 ELF
binaries: the PLT. These patches also include support for LLD to
generate PLT entries that perform a retpoline-style indirection.

The only other indirect branches remaining that we are aware of are from
precompiled runtimes (such as crt0.o and similar). The ones we have
found are not really attackable, and so we have not focused on them
here, but eventually these runtimes should also be replicated for
retpoline-ed configurations for completeness.

For kernels or other freestanding or fully static executables, the
compiler switch `-mretpoline` is sufficient to fully mitigate this
particular attack. For dynamic executables, you must compile *all*
libraries with `-mretpoline` and additionally link the dynamic
executable and all shared libraries with LLD and pass `-z retpolineplt`
(or use similar functionality from some other linker). We strongly
recommend also using `-z now` as non-lazy binding allows the
retpoline-mitigated PLT to be substantially smaller.

When manually apply similar transformations to `-mretpoline` to the
Linux kernel we observed very small performance hits to applications
running typical workloads, and relatively minor hits (approximately 2%)
even for extremely syscall-heavy applications. This is largely due to
the small number of indirect branches that occur in performance
sensitive paths of the kernel.

When using these patches on statically linked applications, especially
C++ applications, you should expect to see a much more dramatic
performance hit. For microbenchmarks that are switch, indirect-, or
virtual-call heavy we have seen overheads ranging from 10% to 50%.

However, real-world workloads exhibit substantially lower performance
impact. Notably, techniques such as PGO and ThinLTO dramatically reduce
the impact of hot indirect calls (by speculatively promoting them to
direct calls) and allow optimized search trees to be used to lower
switches. If you need to deploy these techniques in C++ applications, we
*strongly* recommend that you ensure all hot call targets are statically
linked (avoiding PLT indirection) and use both PGO and ThinLTO. Well
tuned servers using all of these techniques saw 5% - 10% overhead from
the use of retpoline.

We will add detailed documentation covering these components in
subsequent patches, but wanted to make the core functionality available
as soon as possible. Happy for more code review, but we'd really like to
get these patches landed and backported ASAP for obvious reasons. We're
planning to backport this to both 6.0 and 5.0 release streams and get
a 5.0 release with just this cherry picked ASAP for distros and vendors.

This patch is the work of a number of people over the past month: Eric, Reid,
Rui, and myself. I'm mailing it out as a single commit due to the time
sensitive nature of landing this and the need to backport it. Huge thanks to
everyone who helped out here, and everyone at Intel who helped out in
discussions about how to craft this. Also, credit goes to Paul Turner (at
Google, but not an LLVM contributor) for much of the underlying retpoline
design.

Reviewers: echristo, rnk, ruiu, craig.topper, DavidKreitzer

Subscribers: sanjoy, emaste, mcrosier, mgorny, mehdi_amini, hiraditya, llvm-commits

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

llvm-svn: 323155
2018-01-22 22:05:25 +00:00
..
Inputs Revert rC322769: [RISCV] Propagate -mabi and -march values to GNU assembler. 2018-01-18 06:13:25 +00:00
XRay [XRay] Avoid actual linking when testing the driver 2017-09-26 04:29:25 +00:00
B-opt.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
O.c
Ofast.c
Wp-args.c
Xarch.c
Xlinker-args.c Handle '-r' option properly 2015-09-10 22:31:45 +00:00
aarch64-cpus.c [AArch64] Fix PR34625 -mtune without -mcpu should not set -target-cpu 2017-10-24 09:51:55 +00:00
aarch64-dotprod.c [ARM][AArch64] Cortex-A75 and Cortex-A55 tests 2017-08-21 08:52:45 +00:00
aarch64-features.c
aarch64-fix-cortex-a53-835769.c [AArch64] Enable A53 erratum workaround (835769) by default for Android targets 2014-10-16 16:35:14 +00:00
aarch64-fixed-x18.c Revert "[AArch64] Unconditionally pass subtarget feature reserve-x18 on Darwin." 2015-11-13 23:07:31 +00:00
aarch64-mgeneral_regs_only.c
aarch64-ras.c [ARM][AArch64] Cortex-A75 and Cortex-A55 tests 2017-08-21 08:52:45 +00:00
aarch64-rcpc.s [ARM][AArch64] Cortex-A75 and Cortex-A55 tests 2017-08-21 08:52:45 +00:00
aarch64-rdm.c [Driver][AArch64] Add tests for RDM feature. 2017-08-24 14:32:55 +00:00
altivec-asm.S [PPC64LE] Run some existing Altivec tests on powerpc64le as well 2014-06-13 18:30:06 +00:00
amdgpu-features.c AMDGPU: Add -mxnack/-mno-xnack options that set +/-xnack feature 2017-11-10 19:28:25 +00:00
amdgpu-mcpu.cl AMDGPU: Rename r600-mcpu.cl->amdgpu-mcpu.cl 2017-08-18 17:29:07 +00:00
amdgpu-toolchain-opencl.cl [AMDGPU] Implement infrastructure to set options in AMDGPUToolChain 2017-09-05 10:24:38 +00:00
amdgpu-toolchain.c [AMDGPU] Set default dwarf version to 2 2016-05-31 22:47:11 +00:00
analyze.c
analyzer-target-enabled-checkers.cpp [analyzer] Add checker modeling gtest APIs. 2016-12-19 22:50:31 +00:00
ananas.c ananas: Add shared library support 2018-01-09 09:18:14 +00:00
android-aarch64-link.cpp Use linker flag --fix-cortex-a53-843419 on Android ARM64 compilation. 2016-10-25 21:44:35 +00:00
android-ndk-standalone.cpp Document that Multilib flags must be actual flags 2017-05-05 00:18:27 +00:00
android-pie.c Enable -pie and --enable-new-dtags by default on Android. 2017-10-25 20:39:22 +00:00
android-standalone.cpp [driver][mips] Support MIPS targets in modern Android NDK 2016-07-19 07:09:48 +00:00
apple-kext-mkernel.c Support watchOS and tvOS driver options 2015-10-30 16:30:27 +00:00
appletvos-version-min.c [Darwin] Fix deployment target detection 2016-01-12 23:47:59 +00:00
arc-exceptions.m
arc.c [test] Don't use "UNSUPPORTED" in FileCheck prefixes 2016-04-02 05:29:00 +00:00
arch-armv7k.c ARMv7k: simplify logic for deciding sjlj-exceptions. 2016-01-27 22:14:02 +00:00
arch-specific-libdir-rpath.c Tests: strengthen CHECK line to avoid picking up stray path. 2017-05-03 19:20:45 +00:00
arch-specific-libdir.c Fix arch-specific-libdir tests on Windows 2017-03-14 18:24:41 +00:00
arch.c
arclite-link.c
arm-abi.c Set ABIs correctly for OpenBSD/arm; soft float and aapcs-linux. 2017-02-28 03:20:26 +00:00
arm-alignment.c [ARM] Add Clang targeting for ARMv8-M Baseline/Mainline 2016-03-03 13:52:22 +00:00
arm-arch-darwin.c
arm-compiler-rt.c Revert "Driver: use the canonical static library naming" 2016-08-31 19:27:07 +00:00
arm-cortex-cpus.c Revert [ARM] disable FPU features when using soft floating point. 2017-11-30 12:05:18 +00:00
arm-default-build-attributes.s Driver must return non-zero code on errors in command line 2017-05-24 14:57:17 +00:00
arm-dotprod.c Revert [ARM] disable FPU features when using soft floating point. 2017-11-30 12:05:18 +00:00
arm-execute-only.c Update clang support for -mexecute-only/-mpure-code for backend change to use subtarget feature rather than command line option. 2017-07-01 02:55:23 +00:00
arm-features.c [ARM] Add Clang targeting for ARMv8-M Baseline/Mainline 2016-03-03 13:52:22 +00:00
arm-fixed-r9.c [ARM] Pass subtarget feature "+reserve-r9" instead of passing backend 2015-07-21 01:41:08 +00:00
arm-float-abi.c [ARM] Error out if float-ab=hard and abi=apcs-gnu on macho platforms. 2015-08-26 19:00:11 +00:00
arm-hwdiv.c
arm-ias-Wa.s When running clang with an arm triple such as '--target=thumbv7m-none-eabi' 2015-10-28 10:10:03 +00:00
arm-implicit-it.s [ARM] Pass -mimplcit-it= to integrated assembler 2016-07-27 08:54:13 +00:00
arm-long-calls.c [ARM] Pass subtarget feature "+long-calls" instead of passing backend option 2015-07-07 06:42:05 +00:00
arm-mfpu.c Revert [ARM] disable FPU features when using soft floating point. 2017-11-30 12:05:18 +00:00
arm-multilibs.c Driver: add multilibs for ARM EB 2015-12-11 06:20:59 +00:00
arm-no-movt.c Add -fno-movt frontend option, to disable movt/movw on ARM 2016-01-06 07:42:18 +00:00
arm-no-neg-immediates.c [ARM] Add a driver option for +no-neg-immediates 2017-03-27 15:34:52 +00:00
arm-ras.c [ARM][AArch64] Cortex-A75 and Cortex-A55 tests 2017-08-21 08:52:45 +00:00
arm-restrict-it.c
arm-target-as-mthumb.s [ARM] For assembler files recognize -Xassembler or -Wa, -mthumb 2017-11-20 13:43:55 +00:00
arm-thumb-only-cores.c [Driver] Error if ARM mode was selected explicitly for M-profile CPUs. 2017-08-04 10:40:18 +00:00
arm-wchar_t-defaults.c Driver: default to `unsigned int` `wchar_t` for ARM 2017-10-29 06:01:14 +00:00
arm-xscale.c Add a clang test for r257376 (Ensure -mcpu=xscale works for arm targets). 2016-01-12 19:40:55 +00:00
arm64-as.s
arm64-darwinpcs.c
armv8-crc.c
as-default-dwarf.s Always pass a -dwarf-version argument to integrated as. 2015-10-13 16:22:51 +00:00
as-dwarf-cie.s cc1as: Don't crash when CIE is requested and no DWARF version is specified. 2016-04-19 20:31:19 +00:00
as-mcpu.c [Driver] Turns out the GNU assembler does support falkor/saphira. 2017-11-29 16:42:44 +00:00
as-options.s Pass -I options to integrates and external assemblers 2015-07-22 15:32:36 +00:00
asan.c Hardware-assisted AddressSanitizer (clang part). 2017-12-09 01:32:07 +00:00
ast.c Reapply "Change -save-temps to emit unoptimized bitcode files." 2014-12-21 07:00:00 +00:00
at_file.c Update test after LLVM r267556. 2016-04-26 13:54:29 +00:00
at_file.c.args Update test after LLVM r267556. 2016-04-26 13:54:29 +00:00
at_file.c.args.utf16le
at_file_missing.c Try to get at_file_missing.c passing after LLVM r267556. 2016-04-26 20:40:23 +00:00
at_file_win.c driver: Add a `--rsp-quoting` flag to pick response file quoting. 2016-04-25 21:15:49 +00:00
at_file_win.c.args driver: Add a `--rsp-quoting` flag to pick response file quoting. 2016-04-25 21:15:49 +00:00
autocomplete.c [Bash-autocomplete] Fix crash when invoking --autocomplete without value. 2017-09-05 12:41:00 +00:00
autolink_integrated_as.c
avr-mmcu.c [Driver] Add a missing -no-canonical-prefixes to test. 2017-04-20 19:06:24 +00:00
avr-toolchain.c No canonical-prefixes match in avr-toolchain.c. 2017-01-05 10:06:58 +00:00
baremetal.cpp For Windows, allow .exe extension in a test. 2017-10-06 17:12:28 +00:00
biarch.c Handle ARMv6KZ naming 2015-11-16 14:05:48 +00:00
bindings.c Pedantically rename all Tool subclasses to be nouns, not verbs. NFC 2015-06-23 20:42:09 +00:00
cc-log-diagnostics.c
cc-print-options.c
cc1-response-files.c Make '-disable-llvm-optzns' an alias for '-disable-llvm-passes'. 2016-12-23 00:23:01 +00:00
ccc-as-cpp.c
ccc-host-triple-no-integrated-as.c
cl-cc-flags.c Add default calling convention support for regcall. 2017-11-02 21:08:00 +00:00
cl-diagnostics.c Fix cl-diagnostics.c test by hardcoding the version of MSVC to mimic 2017-05-31 20:07:36 +00:00
cl-eh.cpp [clang-cl] /EHc should not have an effect on /EHa 2016-02-29 01:40:30 +00:00
cl-fallback.c clang-cl: Pass /Zc:threadSafeInit through to MSVC with /fallback (PR30948) 2016-11-09 00:56:42 +00:00
cl-include.c Make the clang-cl test less restrictive. 2017-06-01 11:41:21 +00:00
cl-inputs.c Erase REQUIRES: shell-preserves-root from more tests, see r242312. 2015-07-15 19:42:18 +00:00
cl-link-at-file.c Update clang-cl driver for MSVC 2017. 2017-03-15 16:07:35 +00:00
cl-link.c [Driver] Don't force .exe suffix for lld 2017-06-06 02:06:28 +00:00
cl-options.c [clang-cl] Alias /Wall to -Weverything 2017-11-27 23:42:20 +00:00
cl-outputs.c Driver must return non-zero code on errors in command line 2017-05-24 14:57:17 +00:00
cl-pch-errorhandling.cpp [clang-cl] Fix PCH tests to use x86_64 as target 2016-08-02 13:53:00 +00:00
cl-pch-search.cpp [clang-cl] Fix PCH tests to use x86_64 as target 2016-08-02 13:53:00 +00:00
cl-pch-showincludes.cpp [clang-cl] Fix PCH tests to use x86_64 as target 2016-08-02 13:53:00 +00:00
cl-pch.c [clang-cl] Fix test that shouldn't be running on non-x86 2016-10-20 17:41:08 +00:00
cl-pch.cpp Unrevert r280035 now that the clang-cl bug it exposed has been fixed by 2016-08-30 19:06:26 +00:00
cl-response-file.c Use the AddAllArgs overload which accepts an ArrayRef of OptSpecifier. 2015-07-29 18:39:14 +00:00
cl-runtime-flags.c Re-apply r267784, r267824 and r267830. 2016-04-28 17:09:37 +00:00
cl-x86-flags.c Erase REQUIRES: shell-preserves-root from remaining tests, see r242312.þ 2015-07-15 20:04:18 +00:00
cl-zc.cpp [clang-cl] Ignore /Zc:ternary, clang behaves this way already 2017-05-31 14:50:28 +00:00
cl.c Erase REQUIRES: shell-preserves-root from more tests, see r242312. 2015-07-15 19:42:18 +00:00
claim-unused.c
clang-c-as-cxx.c
clang-exception-flags.cpp Added a test to check that exception flags are not passed by default on PS4. 2015-02-06 13:02:39 +00:00
clang-g-opts.c Driver/Darwin: Set the DWARF version based on the deployment target. 2016-10-17 19:36:18 +00:00
clang-offload-bundler.c Fix clang-offload-bundler test. 2016-10-11 16:06:32 +00:00
clang-offload-bundler.c.o [Driver][OpenMP][CUDA] Add capability to bundle object files in sections of the host binary format. 2016-08-24 15:39:07 +00:00
clang-s-opts.s Remove -Werror from test. 2015-01-03 00:28:47 +00:00
clang-translation.c [Driver] Disable uwtable by default in -ffreestanding mode 2017-09-12 22:51:53 +00:00
clang_cpp.c
clang_f_opts.c Added Control Flow Protection Flag 2018-01-09 08:53:59 +00:00
clang_f_opts.h
clang_wrapv_opts.c
cloudabi.c Don't enable PIE on i686-unknown-cloudabi. 2016-08-11 20:03:22 +00:00
cloudabi.cpp Don't enable PIE on i686-unknown-cloudabi. 2016-08-11 20:03:22 +00:00
code-model.c Driver: parse -mcmodel earlier 2014-05-08 02:28:32 +00:00
color-diagnostics.c
compilation_database.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
compress-noias.c Revert "Revert r305164/5/7." 2017-06-23 15:34:16 +00:00
compress.c Revert "Revert r305164/5/7." 2017-06-23 15:34:16 +00:00
config-file-errs.c Enable configuration files in clang 2018-01-01 13:27:01 +00:00
config-file.c Fix test to use -S instead of -c so it doesn't unnecessarily run the assembler. 2018-01-04 00:16:57 +00:00
config-file2.c Enable configuration files in clang 2018-01-01 13:27:01 +00:00
config-file3.c Enable configuration files in clang 2018-01-01 13:27:01 +00:00
constructors.c Use -fuse-init-array if no gcc installation is found. 2017-10-26 23:26:29 +00:00
coroutines.c [coroutines] Rename driver flag -fcoroutines to -fcoroutines-ts 2016-10-02 03:31:58 +00:00
coroutines.cpp [coroutines] Rename driver flag -fcoroutines to -fcoroutines-ts 2016-10-02 03:31:58 +00:00
coverage-ld.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
coverage.c Fix coverage test on Windows bot 2017-11-17 21:55:23 +00:00
coverage_no_integrated_as.c Add -fprofile-dir= to clang. 2016-08-31 23:04:32 +00:00
cpath.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
cpp-precomp.c
crash-report-crashfile.m [Driver] Add compiler option to generate a reproducer 2017-04-12 21:46:20 +00:00
crash-report-header.h Revert 320391: Certain targets are failing, pulling back to diagnose. 2017-12-11 18:14:51 +00:00
crash-report-modules.m clang/test/Driver/crash-report-modules.m: Avoid using /tmp/. 2015-12-02 03:13:50 +00:00
crash-report-null.test Driver: Tighten up crash report tests 2014-10-21 05:13:09 +00:00
crash-report-spaces.c Revert 320391: Certain targets are failing, pulling back to diagnose. 2017-12-11 18:14:51 +00:00
crash-report.c Revert 320391: Certain targets are failing, pulling back to diagnose. 2017-12-11 18:14:51 +00:00
cross-linux.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
cuda-arch-translation.cu [CUDA] Added rudimentary support for CUDA-9 and sm_70. 2017-09-07 18:14:32 +00:00
cuda-bad-arch.cu [CUDA] Print an error if you try to compile with < sm_30 on CUDA 9. 2017-10-25 21:32:06 +00:00
cuda-bail-out.cu [Driver] Make clang/cc conforms to UNIX standard 2017-11-10 01:32:47 +00:00
cuda-bindings.cu [Driver][OpenMP] Add support to create jobs for unbundling actions. 2016-10-27 18:14:55 +00:00
cuda-constructor-alias.cu [CUDA] Add -target to cuda-constructor-alias.cu test so it doesn't fail on Mac. 2016-01-25 22:52:31 +00:00
cuda-detect.cu [CUDA] Require libdevice only if needed 2017-10-16 13:31:30 +00:00
cuda-external-tools.cu [OpenMP] Pass -v to PTXAS if it was passed to the driver. 2017-08-07 20:19:23 +00:00
cuda-macosx.cu [CUDA] Driver changes to support CUDA compilation on MacOS. 2016-11-18 00:41:22 +00:00
cuda-march.cu A follow-up fixing on cuda-march.cu: Don't match clang to other place. 2016-06-16 13:27:02 +00:00
cuda-no-sanitizers.cu [CUDA] Fix faulty test from rL288448 2016-12-02 02:04:43 +00:00
cuda-no-stack-protector.cu [CUDA] Don't pass -stack-protector to NVPTX compilations. 2017-02-19 19:05:32 +00:00
cuda-not-found.cu [CUDA] Add a test for r266496 (raise an error if a CUDA installation isn't found) 2016-04-19 18:52:28 +00:00
cuda-options.cu [CUDA,Driver] Added --no-cuda-gpu-arch= option. 2016-12-09 22:59:17 +00:00
cuda-output-asm.cu Remove check for -o option in offloading actions builder. 2016-10-27 01:08:58 +00:00
cuda-phases.cu [CUDA][OpenMP] Add a generic offload action builder 2016-09-30 15:34:19 +00:00
cuda-ptxas-path.cu [CUDA] Add --ptxas-path= flag. 2016-12-15 18:44:57 +00:00
cuda-simple.cu [CUDA] Updated CUDA tests that must run w/o CUDA installation. 2016-08-02 23:43:04 +00:00
cuda-unused-arg-warning.cu [CUDA] Add --cuda-compile-host-device, which overrides --cuda-host-only and --cuda-device-only. 2016-04-19 02:27:07 +00:00
cuda-version-check.cu [CUDA] Add a host target triple to cuda-version-check.cu 2017-01-06 18:16:03 +00:00
cuda-windows.cu [Driver] Driver changes to support CUDA compilation on Windows. 2017-01-05 16:52:29 +00:00
cxa-atexit.cpp Driver: default to `-fno-use-cxatexit` on Windows 2017-09-11 20:18:09 +00:00
darwin-arch-default.c Call powerpc-darwin external tools with -arch ppc. 2014-08-28 21:23:05 +00:00
darwin-as.c
darwin-asan-nofortify.c
darwin-debug-flags.c Update Clang for D20147 ("DebugInfo: New metadata representation for global variables.") 2016-09-13 01:13:19 +00:00
darwin-dsymutil.c Pedantically rename all Tool subclasses to be nouns, not verbs. NFC 2015-06-23 20:42:09 +00:00
darwin-embedded.c ARM: make Darwin's "-arch armv7em" default to hard-float. 2016-04-13 17:08:51 +00:00
darwin-iphone-defaults.m IRGen: Add optnone attribute on function during O0 2017-05-29 05:38:20 +00:00
darwin-ld-dedup.c [Driver][Darwin] Pass -no_deduplicate to ld64 2016-10-21 01:49:14 +00:00
darwin-ld-demangle.c CMake: Set HOST_LINK_VERSION on Darwin (PR21268) 2014-11-13 00:35:23 +00:00
darwin-ld-lto.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
darwin-ld-pthread.c Driver: Do not warn about unused -pthread when linking on darwin 2017-02-03 23:09:31 +00:00
darwin-ld.c [Driver] Export symbols needed to use profile runtime 2017-10-11 21:54:09 +00:00
darwin-max-type-align.c Introduce f[no-]max-unknown-pointer-align=[number] option 2014-08-05 18:37:48 +00:00
darwin-multiarch-arm.c Fix the unit test darwin-multiarch-arm.c for windows 2016-11-14 17:09:39 +00:00
darwin-objc-defaults.m
darwin-objc-options.m
darwin-sanitizer-ld.c Reapply SVN r274797. 2016-07-10 23:24:36 +00:00
darwin-sdk-vs-os-version.c Recommit [driver][macOS] Pick the system version for the 2017-07-07 10:41:19 +00:00
darwin-sdkroot.c [driver] Set the 'simulator' environment for Darwin when compiling for 2017-12-07 19:04:10 +00:00
darwin-simulator-macro.c [driver] Set the 'simulator' environment for Darwin when compiling for 2017-12-07 19:04:10 +00:00
darwin-stdlib.cpp XFAIL Driver/darwin-stdlib.cpp if CLANG_DEFAULT_CXX_STDLIB is set 2016-09-29 07:43:08 +00:00
darwin-verify-debug.c Pedantically rename all Tool subclasses to be nouns, not verbs. NFC 2015-06-23 20:42:09 +00:00
darwin-version.c [driver][darwin] Take the OS version from -m<os>-version-min argument when 2017-12-29 17:42:40 +00:00
darwin-xarch.c
debug-comp-dir.S Remove shell requirements from tests that use 'cd' 2015-03-02 22:42:58 +00:00
debug-main-file.S
debug-options-as.c Stop messing with the 'g' group of options in CompilerInvocation. 2015-10-08 04:24:12 +00:00
debug-options.c [PS4] Tidy up some debug-tuning v. triple decision-making. 2017-09-29 21:25:07 +00:00
debug-prefix-map.c Support Debug Info path remapping 2015-10-12 20:21:08 +00:00
debug-unsupported.c
debug.c Remove shell requirements from tests that use 'cd' 2015-03-02 22:42:58 +00:00
default-image-name.c Driver: tweak the code for determining default image name 2015-01-09 17:38:53 +00:00
default-toolchain.c
defsym.s [clang] Fix D26214: Move error handling out of MC and to the callers. 2016-12-06 02:49:16 +00:00
denormal-fp-math.c Guard flag –fdenormal-fp-math with –fno-fast-math. 2016-10-13 13:22:01 +00:00
diagnostics.c
disable-llvm.c Another fix for r291850 because there are apparently targets which add 2017-01-13 02:47:34 +00:00
dragonfly.c Fix C++ support on recent DragonFly BSD releases 2015-12-27 10:01:44 +00:00
dyld-prefix.c Driver: support exherbo's multiarch support 2016-05-23 02:17:28 +00:00
dynamic-linker.c Driver: adjust linker invocation for GNUTools 2016-02-07 06:03:38 +00:00
eabi.c [EABI] Add Clang support for -meabi flag 2015-11-09 12:40:41 +00:00
elfiamcu-header-search.c Add -fsyntax-only to fix failure in read-only directories. 2015-12-16 19:52:05 +00:00
embed-bitcode.c Fix test/Driver/embed-bitcode.c on non-Darwin host by setting the target explicitly 2017-01-24 18:49:49 +00:00
emulated-tls.cpp Enable TLS support on OpenBSD, but default to the emulatated TLS model. 2017-07-17 00:49:31 +00:00
env.c Enable passing clang tests on Windows/MSYS. 2015-07-26 04:36:39 +00:00
esan.c [EfficiencySanitizer] [MIPS64] Enables esan clang driver options for MIPS64 2016-09-07 12:23:15 +00:00
exceptions.m Revert "Driver: Objective-C should respect -fno-exceptions" 2014-12-09 00:12:30 +00:00
fast-math.c [Driver, CodeGen] pass through and apply -fassociative-math 2017-12-16 16:11:17 +00:00
fatal-warnings.c Convert MC command line flag for fatal assembler warnings into a proper 2014-08-26 18:40:25 +00:00
fcomment-block-commands.c
flags.c Add flag to request Clang is ABI-compatible with older versions of itself 2017-08-26 01:04:35 +00:00
fopenmp.c [Driver] Unify linking of OpenMP runtime. NFCI. 2017-04-19 13:55:39 +00:00
fortran.f95 Make sure we claim arguments that are going to be passed to a gcc tool, 2016-01-07 09:03:42 +00:00
fpack-struct.c
fparse-all-comments.c
fplugin.c Add -fplugin=name.so option to the driver 2015-09-23 13:55:40 +00:00
frame-pointer-elim.c ARM-Darwin: re-enable -momit-leaf-frame-pointer. 2017-01-27 17:53:42 +00:00
frame-pointer.c [RISCV] Add the RISCV target and compiler driver 2018-01-11 13:36:56 +00:00
freebsd-mips-as.c [mips] Kill 'support' for untested EABI. 2016-05-27 14:30:23 +00:00
freebsd.c Revert "Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux."""" 2017-08-22 21:05:01 +00:00
freebsd.cpp Make FreeBSD and NetBSD use CLANG_DEFAULT_CXX_STDLIB 2016-03-14 14:34:04 +00:00
fsanitize-blacklist.c Fix fsanitize-blacklist test on Windows. 2017-12-09 02:15:42 +00:00
fsanitize-coverage.c Hardware-assisted AddressSanitizer (clang part). 2017-12-09 01:32:07 +00:00
fsanitize-object-size.c [ubsan] Disable the object size check at -O0 2017-06-23 23:15:24 +00:00
fsanitize.c [MSan] Enable use-after-dtor instrumentation by default. 2018-01-10 20:27:48 +00:00
fsjlj-exceptions.c Driver: make it easier to select the SjLj EH model 2016-06-10 20:12:00 +00:00
fubsan-strip-path-components.cpp [ubsan] Add -fsanitize-undefined-strip-path-components=N 2016-05-12 16:51:36 +00:00
fuchsia.c [Fuchsia] Tests for the Fuzzer support in Fuchsia driver 2018-01-19 04:08:06 +00:00
fuchsia.cpp [Driver] Use ld.lld directly for Fuchsia rather than passing flavor 2017-10-23 21:31:05 +00:00
function-sections.c Make unique section names the default again. 2015-05-22 20:44:03 +00:00
fuse-ld.c Vary Windows toolchain selection by -fuse-ld 2017-11-06 21:18:05 +00:00
fuzzer.c [libFuzzer] switch -fsanitize=fuzzer from trace-pc-guard to inline-8bit-counters 2017-09-01 18:34:36 +00:00
fveclib.c Imply linker arguments from '-fveclib' option. 2015-03-17 22:13:05 +00:00
gcc-toolchain.cpp tests: Add explicit -stdlib=libstdc++ to tests that require it 2016-02-12 07:48:28 +00:00
gcc-version-debug.c Fix clash of gcc toolchains in driver regression tests. 2015-01-05 17:07:42 +00:00
gcc_forward.c Use an actual real architecture and massage a couple of comments. 2016-01-07 01:23:19 +00:00
gfortran.f90 Driver must return non-zero code on errors in command line 2017-05-24 14:57:17 +00:00
gnu-runtime.m
gold-lto-new-pass-man.c Enabling new pass manager in LTO (and thinLTO) link step. 2017-10-05 01:50:48 +00:00
gold-lto-samplepgo.c Add -plugin-opt=sample-profile for thinLTO build. 2017-01-04 00:33:23 +00:00
gold-lto-sections.c Pass -ffunction-sections/-fdata-sections along to gold-plugin 2016-10-13 18:05:53 +00:00
gold-lto.c Revert "Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux."""" 2017-08-22 21:05:01 +00:00
hexagon-hvx.c [Hexagon] Add front-end support for Hexagon V65 2017-12-13 13:48:07 +00:00
hexagon-long-calls.c Handle -mlong-calls on Hexagon 2016-08-30 13:57:50 +00:00
hexagon-toolchain-elf.c [Hexagon] Add front-end support for Hexagon V65 2017-12-13 13:48:07 +00:00
ident_md.c IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
immediate-options.c [Driver] Add option to print the resource directory 2017-04-04 21:46:50 +00:00
implicit-function-as-error.c watchOS & tvOS: add a few more tests. 2015-11-02 21:14:48 +00:00
include-default-header.cl Fix up testcase to: 2017-03-15 23:41:58 +00:00
incompatible_sysroot.c Stab in the dark to fix the PS4 bot 2016-04-30 05:27:17 +00:00
incremental-linker-compatible.c [clang-cl] Add support for /Brepro 2015-12-21 22:09:34 +00:00
index-header-map.c
inhibit-downstream-commands.c
inline-asm.c Adding option -fno-inline-asm to disallow inline asm 2015-01-16 23:05:28 +00:00
instrprof-ld.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
integrated-as.c
integrated-as.s test: add explicit triples to the invocation 2016-12-26 04:00:54 +00:00
ios-simulator-arcruntime.c Watch and TV OS: wire up basic ABI choices 2015-10-30 16:30:36 +00:00
ios-version-min.c Fix the test added in r240710. 2015-06-25 23:21:11 +00:00
krait-cpu.c Allow case-insensitive values for -mcpu for ARM 2015-06-04 17:56:32 +00:00
lanai-toolchain.c [lanai] Add Lanai backend to clang driver. 2016-03-28 21:02:54 +00:00
lanai-unknown-unknown.cpp [lanai] Add Lanai backend to clang driver. 2016-03-28 21:02:54 +00:00
le32-toolchain.c
le32-unknown-nacl.cpp Revert "Basic: match GCC behaviour for SuS macro" 2017-02-07 19:00:06 +00:00
le64-unknown-unknown.cpp Revert "Basic: match GCC behaviour for SuS macro" 2017-02-07 19:00:06 +00:00
linker-opts.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
linux-as.c [PowerPC] Pass CPU to assembler with -no-integrated-as 2017-07-27 08:58:28 +00:00
linux-header-search.cpp [Driver] Fix finding multilib gcc install on Gentoo (with gcc-config) 2016-12-12 15:07:43 +00:00
linux-ld.c Enable -pie and --enable-new-dtags by default on Android. 2017-10-25 20:39:22 +00:00
lit.local.cfg Enable opencl driver tests, which never ran. 2016-06-30 09:17:46 +00:00
lto-jobs.c [LTO] Add -flto-jobs=N to control backend parallelism 2016-09-23 20:38:09 +00:00
lto-plugin-darwin.c Degeneralize more tests. 2017-08-22 21:16:22 +00:00
lto-plugin-linux.c Degeneralize more tests. 2017-08-22 21:16:22 +00:00
lto-plugin-windows.c Degeneralize more tests. 2017-08-22 21:16:22 +00:00
lto-unit.c [PS4] Disable LTO unit features under ThinLTO, like for Darwin. 2017-07-13 21:25:47 +00:00
lto.c Revert "Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux."""" 2017-08-22 21:05:01 +00:00
m_and_mm.c Ignore return value in test. 2017-06-16 19:29:20 +00:00
macho-embedded.c MachO: perform ARM ABI detection even for non-Darwin triples. 2014-05-22 12:54:30 +00:00
masm.c Attempt to fix test/Driver/masm.c on the ARM bots. 2018-01-17 16:03:08 +00:00
masm.s Support -masm= flag for x86 assembly targets. 2016-07-18 18:44:51 +00:00
mbig-obj.c Use -### so the mbig-obj.c test passes when there is no registered x86 target 2017-01-04 18:50:51 +00:00
mg.c Port test/Driver/mg.c to use FileCheck instead of fgrep 2015-02-04 18:34:26 +00:00
mglobal-merge.c Fix AArch64 global-merge backend option name. 2017-01-17 03:38:45 +00:00
miamcu-opt.c Support setting default value for -rtlib at build time 2016-07-27 08:15:54 +00:00
miamcu-opt.cpp Support setting default value for -rtlib at build time 2016-07-27 08:15:54 +00:00
mingw-libgcc.c Support setting default value for -rtlib at build time 2016-07-27 08:15:54 +00:00
mingw-msvcrt.c [MinGW] Don't link -lmsvcrt if a different msvcrt version is to be linked 2017-09-25 19:24:45 +00:00
mingw.cpp Do not include GCC "resource" directory into the set of built-in include paths on MingW. 2017-03-06 09:32:56 +00:00
mips-abi.c [mips] Add missing mips-registered-target to mips test. 2017-08-11 15:23:23 +00:00
mips-abicalls-warning.c [mips] Group all `-mabicalls` related checks in the single place. NFC 2017-08-10 15:42:31 +00:00
mips-as.c [mips] Add support for static model on N64 2017-01-27 15:05:25 +00:00
mips-cs.cpp Fix clang tests 2016-10-18 19:22:20 +00:00
mips-eleb.c [mips] Correct the invocation of GAS in several cases. 2014-07-16 11:52:23 +00:00
mips-features.c [mips] Accept but ignore -m(no-)branch-likely 2017-09-26 15:01:21 +00:00
mips-float.c
mips-fsf.cpp Fix clang tests 2016-10-18 19:22:20 +00:00
mips-gpopt-warning.c [mips] Fix typo (missed space) in the warning message 2017-08-04 08:25:15 +00:00
mips-ias-Wa.s [mips] Added support for -Wa,-mips32 and similar. 2016-01-14 13:01:48 +00:00
mips-img-v2.cpp Fix clang tests 2016-10-18 19:22:20 +00:00
mips-img.cpp Fix clang tests 2016-10-18 19:22:20 +00:00
mips-integrated-as.s [mips] Don't propagate -mfpxx by default if soft/single float were also set. 2015-06-16 13:54:13 +00:00
mips-mabs-warning.c [mips] Introducing option -mabs=[legacy/2008] 2017-08-24 16:06:30 +00:00
mips-mti-linux.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
mips-mti.cpp [driver][mips] Specify stdlib used in the tests explicitly 2016-05-26 11:32:19 +00:00
mips-reduced-toolchain.cpp Fix clash of gcc toolchains in driver regression tests. 2015-01-05 17:07:42 +00:00
mipsel-nacl-defines.cpp Revert "Basic: match GCC behaviour for SuS macro" 2017-02-07 19:00:06 +00:00
modules-cache-path.m Make the default module cache user-specific 2015-02-03 19:28:37 +00:00
modules-ts.cpp P0629R0: Switch to latest proposal for distinguishing module interface from implementation. 2017-04-21 22:39:18 +00:00
modules.m [Modules] Add a command line option for loading the clang builtins modulemap. 2016-10-31 08:21:54 +00:00
modules.mm [modules] Rename -fmodule-maps to -fimplicit-module-maps (and likewise for 2015-06-16 00:20:23 +00:00
montavista-gcc-toolchain.c [Driver] Make -print-libgcc-file-name print compiler-rt lib when used 2016-10-10 12:23:40 +00:00
mprefer-vector-width.c [Driver][CodeGen] Add -mprefer-vector-width driver option and attribute during CodeGen. 2017-12-11 21:09:19 +00:00
mrecip.c add the -mrecip driver flag and process its options (3rd try) 2015-06-11 14:53:41 +00:00
ms-bitfields.c Mark clang/test/Driver/ms-bitfields.c as REQUIRES:clang-driver. 2015-11-12 22:25:38 +00:00
msan.c Teach Clang about the PPC64 memory sanitizer implementation. 2015-06-25 10:35:19 +00:00
msc-version.c Fix msc-version.c test to handle _MSC_VER=1910 2017-03-03 00:08:55 +00:00
msvc-compiler-rt.c [Driver] Enable --rtlib option for MSVC target 2016-03-14 11:19:43 +00:00
msvc-link.c Driver: support -L for MSVC toolchain under the GNU driver 2016-07-01 15:36:31 +00:00
msvc-triple.c Add more tests for MSVC version handling. 2016-12-07 23:39:44 +00:00
msvc_forward.c Fix forwarding -l to MSVC's link.exe 2014-09-16 19:22:00 +00:00
myriad-toolchain.c [Myriad] Remove invalidated -elf flag for MoviAsm 2018-01-08 20:36:08 +00:00
nacl-direct.c Adapt tests after making mcpu=generic the default for armv7-a and armv8-a. 2017-06-01 07:31:50 +00:00
netbsd.c Ensure that clang -pthread creates the right macro. -D_POSIX_THREADS 2017-01-16 14:07:24 +00:00
netbsd.cpp Extend NetBSD/AArch64 to cover Big Endian as well. 2017-01-09 11:22:14 +00:00
nios2-cpu.c Reapply "Frontend support for Nios2 target" 2017-06-27 09:48:24 +00:00
no-arc-exception-silence.m [Driver] Prevent no-arc-exception-silence.m test from writing output. 2017-01-25 12:55:53 +00:00
no-canonical-prefixes.c Fix a tiny bug in -no-canonical-prefixes that somehow we have never 2015-08-05 17:07:33 +00:00
no-integrated-as-win.c
no-integrated-as.c
no-integrated-as.s Bring back r250262: PS4 toolchain 2015-10-14 12:25:43 +00:00
no-objc-arr.m
no-objc-default-synthesize-properties.m
no-sibling-calls.c
nodefaultlib.c Fix rewrite of reserved library name in case of -nodefaultlibs 2015-11-24 16:07:21 +00:00
noexecstack.c
noinline.c [Clang] Remove unwanted --check-prefix=CHECK from unit tests. NFC. 2016-04-20 01:02:18 +00:00
nostdincxx.cpp Special-case the PS4 SDK for a clang test 2015-01-30 18:25:59 +00:00
nostdlib.c Reland r311836 - [Driver] Use arch type to find compiler-rt libraries (on Linux) 2017-08-28 20:29:52 +00:00
nostdlibinc.c
nostdlibxx.cpp Introduce -nostdlib++ flag to disable linking the C++ standard library. 2017-07-25 18:02:57 +00:00
nozlibcompress.c test: fix negative test case 2017-06-23 16:52:49 +00:00
objc++-cpp-output.mm Add -fexceptions for targets where it isn't the default. 2015-03-02 19:11:53 +00:00
objc-cpp-output.m
objc-sdk-migration-options.m [SDK modernizer]. Patch fixes driver's lack of 2015-03-03 17:15:38 +00:00
objc-weak.m [driver][darwin] Take the OS version specified in "-target" as the target 2017-12-19 19:05:04 +00:00
offloading-interoperability.c Allow .exe extension to ld to fix test with mingw. 2016-08-01 10:14:54 +00:00
openbsd.c Also pass -pie back to the linker when linking on OpenBSD. 2017-07-30 21:13:59 +00:00
opencl.cl [OpenCL] Handle -cl-fp32-correctly-rounded-divide-sqrt 2016-08-09 20:10:18 +00:00
openmp-offload-gpu.c Add target triples to openmp-offload-gpu.c 2017-11-21 15:06:28 +00:00
openmp-offload.c [test] Pass in fixed triple for openmp-offload.c 2017-10-04 13:54:09 +00:00
opt-record.c [clang] -foptimization-record-file= should imply -fsave-optimization-record 2017-12-19 17:16:45 +00:00
option-aliases.c
output-file-cleanup.c [Driver] Make clang/cc conforms to UNIX standard 2017-11-10 01:32:47 +00:00
output-file-is-dir.c
parse-progname.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
pch-deps.c Add option to switch off putting header modules into the dependency file. 2015-03-19 12:00:22 +00:00
phases.c Reapply "Change -save-temps to emit unoptimized bitcode files." 2014-12-21 07:00:00 +00:00
pic.c [driver][darwin] Take the OS version specified in "-target" as the target 2017-12-19 19:05:04 +00:00
ppc-abi.c Use PIC relocation mode by default for PowerPC64 ELF 2016-12-15 00:02:57 +00:00
ppc-dependent-options.cpp [Power9] Builtins for ELF v.2 ABI conformance - front end portion 2016-09-27 10:45:22 +00:00
ppc-endian.c [Driver] Use llvm::Triple methods to handle -EL and -EB. 2015-07-06 23:59:45 +00:00
ppc-features.cpp [PowerPC] Pass CPU to assembler with -no-integrated-as 2017-07-27 08:58:28 +00:00
prefixed-tools.c Fix tests with CLANG_DEFAULT_LINKER 2017-01-08 10:04:07 +00:00
preprocess-multiple.c
preprocessor.c
preserve-as-comments.c Replace preserve-as-comments CodeGen test with driver test 2016-07-28 00:36:34 +00:00
preserve-uselistorder.c uselistorder: -mllvm -preserve-bc-use-list-order => -emit-llvm-uselists 2015-04-15 01:16:18 +00:00
print-libgcc-file-name-clangrt.c Reland r311836 - [Driver] Use arch type to find compiler-rt libraries (on Linux) 2017-08-28 20:29:52 +00:00
print-libgcc-file-name-libgcc.c [Driver] Make -print-libgcc-file-name print compiler-rt lib when used 2016-10-10 12:23:40 +00:00
ps4-analyzer-defaults.cpp [Analyzer] Change the default SA checkers for PS4 2016-01-06 10:03:58 +00:00
ps4-cpu-defaults.cpp Shuffle tests around to more appropriate files 2015-01-30 18:25:48 +00:00
ps4-header-search.c [PS4] Change the names of some "environmental" things to what our 2016-05-16 17:22:25 +00:00
ps4-linker-non-win.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
ps4-linker-win.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
ps4-pic.c Restructure the propagation of -fPIC/-fPIE. 2016-06-23 15:07:32 +00:00
ps4-runtime-flags.c [PS4][Profile] add "--dependent-lib=libclang_rt.profile-x86_64.a" to 2015-12-16 17:25:27 +00:00
ps4-sdk-root.c [PS4] Clean up some test commentary. NFC 2016-05-18 15:35:58 +00:00
pth.c
qa_override.c
redundant-args.c
redzone.c
relax.c Handle -Wa,--mrelax-relocations=[no|yes]. 2016-05-29 02:01:14 +00:00
relax.s Handle -Wa,--mrelax-relocations=[no|yes]. 2016-05-29 02:01:14 +00:00
reloc-model.c [Driver] Don't crash on invalid values of -mrelocation-model=. 2017-04-01 21:07:07 +00:00
renderscript.rs Add a RenderScript language type 2016-06-09 21:57:40 +00:00
response-file-extra-whitespace.c Use printf instead of "echo -ne". 2016-10-26 03:38:48 +00:00
response-file.c Fix broken test. We can't assume that 2MB of args is enough to require a response file. 2017-04-13 00:46:50 +00:00
retain-comments-from-system-headers.c
rewrite-legacy-objc.m Driver: extract ObjC option rendering (NFC) 2017-09-01 17:43:59 +00:00
rewrite-map-files.c Driver: avoid failing in the backend 2016-09-26 04:48:22 +00:00
rewrite-map-in-diagnostics.c Revert 320391: Certain targets are failing, pulling back to diagnose. 2017-12-11 18:14:51 +00:00
rewrite-objc.m Driver: extract ObjC option rendering (NFC) 2017-09-01 17:43:59 +00:00
riscv-abi.c [RISCV] Add the RISCV target and compiler driver 2018-01-11 13:36:56 +00:00
riscv-features.c [RISCV] Add the RISCV target and compiler driver 2018-01-11 13:36:56 +00:00
riscv32-toolchain.c [RISCV] Implement RISCV ABI lowering 2018-01-15 17:54:52 +00:00
riscv64-toolchain.c [RISCV] Implement RISCV ABI lowering 2018-01-15 17:54:52 +00:00
ropi-rwpi.c [ARM] Command-line options for embedded position-independent code 2016-08-08 15:28:40 +00:00
rtti-options.cpp [ubsan] Have -fsanitize=vptr emit a null check if -fsanitize=null isn't available 2017-08-02 18:10:31 +00:00
sanitize_unwind_tables.c Hardware-assisted AddressSanitizer (clang part). 2017-12-09 01:32:07 +00:00
sanitizer-ld.c Hardware-assisted AddressSanitizer (clang part). 2017-12-09 01:32:07 +00:00
save-stats.c Fix test on windows 2016-09-26 20:48:34 +00:00
save-temps.c Pass dwarf-version to cc1as. 2016-04-19 17:43:54 +00:00
show-option-names.c [Driver] Use -fsyntax-only in test/Driver/show-option-names.c 2016-10-11 18:38:33 +00:00
solaris-header-search.cpp [Solaris] Use the GCC Installation detector to add the C++ include paths. 2015-09-09 13:36:00 +00:00
solaris-ld.c [Solaris] Add -lc also when linking shared libraries 2015-09-14 19:30:53 +00:00
solaris-opts.c [Solaris] Default to -fno-cxa-finalize. 2015-09-14 23:21:31 +00:00
sparc-as.c [Sparc] Allow LEON cpu models to be selected with -mcpu 2016-07-04 08:56:08 +00:00
sparc-float.c [Sparc] Add software float option -msoft-float 2016-05-24 08:30:08 +00:00
sparcv9-as.c Revert Sparc and SparcV9 to external assembler. Now that the CPU 2015-11-27 13:16:33 +00:00
split-debug.c Enable -fno-split-dwarf-inlining even when -gsplit-dwarf isn't specified. 2017-04-28 20:50:25 +00:00
split-debug.h Driver must return non-zero code on errors in command line 2017-05-24 14:57:17 +00:00
split-debug.s clang/test/Driver: Some tests don't REQUIRE asserts any more. Remove them. 2014-10-12 06:44:05 +00:00
split-stack-ld.c Pass --wrap=pthread_create to linker for -fsplit-stack. 2016-01-25 18:29:16 +00:00
stack-protector.c [Darwin] Enable -fstack-protector (back) by default with -ffreestanding 2017-09-05 23:50:58 +00:00
stack-size-section.c [Driver] Add flag enabling the function stack size section that was added in r319430 2018-01-08 13:42:26 +00:00
stackrealign.c clang/test/Driver/stackrealign.c REQUIRES clang-driver. 2015-09-12 01:29:35 +00:00
std.c Add driver flags -ftrigraphs, -fno-trigraphs. 2014-12-23 22:32:37 +00:00
std.cpp [c++2a] Add option -std=c++2a to enable support for potential/transitional C++2a features 2017-07-16 00:23:04 +00:00
symbol-rewriter.c Driver: begin threading frontend support for SymbolRewriter 2015-01-09 05:10:20 +00:00
sysroot-flags.c Revert rL301998: "Fix a bug that -isysroot is completely ignored on Unix" 2017-05-03 06:02:45 +00:00
sysroot.c Fix clang tests 2016-10-18 19:22:20 +00:00
systemz-as.s [SystemZ] Address review comments for r219679 2014-10-14 16:46:45 +00:00
systemz-features.cpp [SystemZ] Add support for z13 and its vector facility 2015-05-05 19:35:52 +00:00
systemz-march.c [SystemZ] Add support for IBM z14 processor (1/3) 2017-07-17 17:45:57 +00:00
target-abi-cc1as.s Recommit "[IAS] Teach -cc1as about the 'target-abi' option." 2015-03-05 13:39:14 +00:00
target-as.s
target-override.c Put target deduced from executable name at the start of argument list 2017-09-20 15:22:27 +00:00
target-triple-deployment.c
target.c Revert "Allow -target= and --target options" 2015-05-11 17:05:05 +00:00
thinlto.c Revert "Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux."""" 2017-08-22 21:05:01 +00:00
thinlto_backend.c Remove target specifier from new tests 2015-12-07 20:40:36 +00:00
thread-model.c [WebAssembly] Initial WebAssembly support in clang 2015-09-03 22:51:53 +00:00
tsan.c
unavailable_aligned_allocation.cpp [driver][darwin] Take the OS version specified in "-target" as the target 2017-12-19 19:05:04 +00:00
unix-conformance.c [Driver] Make clang/cc conforms to UNIX standard 2017-11-10 01:32:47 +00:00
unknown-arg.c [Driver] Suggest valid integrated tools 2018-01-15 21:05:40 +00:00
unknown-gcc-arch.c Use the integrated assembler by default on 32-bit PowerPC and SPARC. 2015-01-14 07:55:36 +00:00
unknown-std.S Stop asserting when a meaningless -std= flag is passed for a non-compilation 2017-02-14 23:41:38 +00:00
unknown-std.c Correct line endings that got mixed up in r320089; NFC. 2017-12-07 23:04:11 +00:00
unknown-std.cl Improve diagnostics for bad -std= flag. 2017-04-27 01:17:05 +00:00
unknown-std.cpp Add --cuda-path to mock a CUDA Toolkit installation to avoid 2017-12-12 18:33:39 +00:00
unsupported-faltivec.c Remove the -faltivec alias option and replace it with -maltivec everywhere. 2017-03-21 22:06:18 +00:00
unsupported-option.c [Driver] Suggest correctly spelled driver options 2018-01-06 00:25:40 +00:00
unsupported-target-arch.c Fix crash with unsupported architectures in Linux/Gnu target triples. 2016-12-01 11:02:59 +00:00
verify_pch.m
vfsoverlay.c
via-file-asm.c
visibility.cpp
warning-options.cpp [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
warning-options_pedantic.cpp Fix tests so they work when the linker is gcc 2015-02-12 03:37:55 +00:00
wasm-toolchain.c [WebAssembly] Remove `-allow-undefined-file wasm.syms` from linker args 2018-01-11 22:33:50 +00:00
wasm-toolchain.cpp Fix test on Windows that was added in r322382. 2018-01-12 22:32:01 +00:00
wasm32-unknown-unknown.cpp [WebAssembly] Enable -fvisibility=hidden by default. 2016-01-07 01:00:21 +00:00
wasm64-unknown-unknown.cpp [WebAssembly] Enable -fvisibility=hidden by default. 2016-01-07 01:00:21 +00:00
watchos-version-min.c ARMv7k: implement ABI changes for watchOS from standard iOS. 2015-10-30 16:30:45 +00:00
whole-program-vtables.c Use -- to prevent the driver from confusing paths with flags, should fix Mac bot. 2017-09-13 21:49:17 +00:00
win-macho-unwind.c Do not add uwtable attribute by default for MachO targets. 2016-05-05 01:41:07 +00:00
windows-arm-minimal-arch.c [Driver] Inject the MSVC compatibility version into the triple 2015-06-08 00:22:46 +00:00
windows-cross.c Driver: remove support for libstdc++ from CrossWindows 2017-09-22 04:01:12 +00:00
windows-pic.cpp Driver: warn on -fPIC/-fpic/-fPIE/-fpie on Windows 2016-12-26 03:35:24 +00:00
windows-thumb.s [ARM] Pass thumb as architecture to the underlying tools, when targeting windows 2016-07-27 14:12:20 +00:00
windows-wildcard-expansion.c Expand the wildcard expansion test to also cover '?' 2014-07-16 16:14:09 +00:00
woa-fp.c Driver: follow WoA ABI recommendations 2015-10-03 03:39:28 +00:00
woa-restrict-it.c Driver: force restricted IT blocks for Windows on ARM 2014-05-18 06:42:02 +00:00
working-directory-and-abs.c
working-directory.c Erase REQUIRES: shell-preserves-root from remaining tests, see r242312.þ 2015-07-15 20:04:18 +00:00
x86-march.c [X86] Add goldmont to test/Driver/x86-march.c 2018-01-19 19:43:36 +00:00
x86-target-features.c Introduce the "retpoline" x86 mitigation technique for variant #2 of the speculative execution vulnerabilities disclosed today, specifically identified by CVE-2017-5715, "Branch Target Injection", and is one of the two halves to Spectre.. 2018-01-22 22:05:25 +00:00
x86_64-nacl-defines.cpp Revert "Basic: match GCC behaviour for SuS macro" 2017-02-07 19:00:06 +00:00
x86_features.c Make the msse4/mno-sse4 flags aliases of the maximum sse values 2015-03-25 22:09:26 +00:00
x86_m16.c
xcore-opts.c [xcore] Make the exceptions test actually check for the absence of -fexceptions in the proper place 2015-01-29 15:03:36 +00:00