teak-llvm/clang/test/Driver
Peter Collingbourne 87f477b5e4 hwasan: Implement lazy thread initialization for the interceptor ABI.
The problem is similar to D55986 but for threads: a process with the
interceptor hwasan library loaded might have some threads started by
instrumented libraries and some by uninstrumented libraries, and we
need to be able to run instrumented code on the latter.

The solution is to perform per-thread initialization lazily. If a
function needs to access shadow memory or add itself to the per-thread
ring buffer its prologue checks to see whether the value in the
sanitizer TLS slot is null, and if so it calls __hwasan_thread_enter
and reloads from the TLS slot. The runtime does the same thing if it
needs to access this data structure.

This change means that the code generator needs to know whether we
are targeting the interceptor runtime, since we don't want to pay
the cost of lazy initialization when targeting a platform with native
hwasan support. A flag -fsanitize-hwaddress-abi={interceptor,platform}
has been introduced for selecting the runtime ABI to target. The
default ABI is set to interceptor since it's assumed that it will
be more common that users will be compiling application code than
platform code.

Because we can no longer assume that the TLS slot is initialized,
the pthread_create interceptor is no longer necessary, so it has
been removed.

Ideally, lazy initialization should only cost one instruction in the
hot path, but at present the call may cause us to spill arguments
to the stack, which means more instructions in the hot path (or
theoretically in the cold path if the spills are moved with shrink
wrapping). With an appropriately chosen calling convention for
the per-thread initialization function (TODO) the hot path should
always need just one instruction and the cold path should need two
instructions with no spilling required.

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

llvm-svn: 350429
2019-01-04 19:27:04 +00:00
..
Inputs [darwin] parse the SDK settings from SDKSettings.json if it exists and 2018-12-17 19:19:15 +00:00
XRay [XRay][clang] Propagate -fxray-instrumentation-bundle to -cc1 2018-09-21 08:32:49 +00:00
aarch64-call-saved-x-register.c [AArch64] Support adding X[8-15,18] registers as CSRs. 2018-09-25 16:48:40 +00:00
aarch64-cpus.c [darwin][arm64] use the "cyclone" CPU for Darwin even when -arch 2018-12-17 19:30:46 +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 Remove -cc1 option "-backend-option". 2018-04-12 22:21:36 +00:00
aarch64-fixed-call-saved-x-register.c [AArch64] Support adding X[8-15,18] registers as CSRs. 2018-09-25 16:48:40 +00:00
aarch64-fixed-x-register.c [AArch64] Support reserving x1-7 registers. 2018-09-12 23:45:04 +00:00
aarch64-mgeneral_regs_only.c
aarch64-mte.c [AArch64][v8.5A] Test clang option for the Memory Tagging Extension 2018-10-02 09:38:59 +00:00
aarch64-outliner.c [MachineOutliner] Properly pass -moutline along to the toolchain 2018-07-06 22:24:56 +00:00
aarch64-rand.c [AArch64][v8.5A] Test optional Armv8.5-A random number extension 2018-09-27 14:20:59 +00:00
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
aarch64-security-options.c [NFC][Clang][Aarch64] Add missing test file 2018-11-07 11:42:02 +00:00
aarch64-ssbs.c [AArch64] Add command-line option for SSBS 2018-12-03 14:40:37 +00:00
addrsig.c [Driver] Disable -faddrsig on Gentoo by default 2018-12-23 15:07:26 +00:00
altivec-asm.S
amdgcn-toolchain-pic.cl Add -no-canonical-prefixes to allow different build modes. 2018-02-15 13:50:07 +00:00
amdgpu-features.c AMDGPU: Add sram-ecc feature options 2018-11-05 22:44:59 +00:00
amdgpu-macros.cl AMDGPU: Handle gfx909 in AMDGPUTargetInfo::initFeatureMap 2018-10-24 19:07:56 +00:00
amdgpu-mcpu.cl AMDGPU: Handle gfx909 in AMDGPUTargetInfo::initFeatureMap 2018-10-24 19:07:56 +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: Switch default dwarf version to 2 2018-07-20 20:46:25 +00:00
amdgpu-visibility.cl AMDGPU: Default to hidden visibility 2018-08-30 08:18:06 +00:00
analyze.c
analyzer-target-enabled-checkers.cpp
ananas.c ananas: Add shared library support 2018-01-09 09:18:14 +00:00
android-aarch64-link.cpp set default max-page-size to 4KB in lld for Android Aarch64 2018-11-29 18:52:22 +00:00
android-gcc-toolchain.c [Driver] fix broken test 2018-10-22 21:25:53 +00:00
android-ndk-standalone.cpp [Driver] Reland again again: Default Android toolchains to libc++. 2018-11-05 20:57:46 +00:00
android-pie.c Don't use -pie in relocatable link. 2018-03-09 19:35:16 +00:00
android-standalone.cpp
apple-kext-mkernel.c Remove -cc1 option "-backend-option". 2018-04-12 22:21:36 +00:00
appletvos-version-min.c
arc-exceptions.m
arc.c
arch-armv7k.c
arch-specific-libdir-rpath.c [Driver] Wire up the -f[no-]rtlib-add-rpath flag and tests 2018-04-02 23:36:14 +00:00
arch-specific-libdir.c
arch.c
arclite-link.c Fix which Darwin versions have ObjC runtime with full subscripting support. 2018-02-26 23:10:23 +00:00
arm64-as.s
arm64-darwinpcs.c
arm-abi.c
arm-alignment.c
arm-arch-darwin.c
arm-compiler-rt.c
arm-cortex-cpus.c [ARM] Alter test to account for change to armv6k default CPU 2018-09-28 09:04:31 +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 [ARM] disable FPU features when using soft floating point. 2018-02-19 12:40:26 +00:00
arm-execute-only.c Remove unused CHECK lines leftover from r306928. 2018-03-30 18:39:28 +00:00
arm-features.c [AArch64][ARM] Context sensitive meaning of crypto 2018-10-04 07:38:53 +00:00
arm-fixed-r9.c
arm-float-abi.c
arm-hwdiv.c
arm-ias-Wa.s [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
arm-implicit-it.s
arm-long-calls.c
arm-mfpu.c [Driver] Add defaults for Android ARM FPUs. 2018-10-12 17:06:31 +00:00
arm-multilibs.c
arm-no-movt.c
arm-no-neg-immediates.c
arm-ras.c [ARM][AArch64] Cortex-A75 and Cortex-A55 tests 2017-08-21 08:52:45 +00:00
arm-restrict-it.c Remove -cc1 option "-backend-option". 2018-04-12 22:21:36 +00:00
arm-target-as-mthumb.s [ADT] Normalize empty triple components 2018-08-08 22:23:57 +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
armv8-crc.c
as-default-dwarf.s
as-dwarf-cie.s
as-mcpu.c [Driver] Turns out the GNU assembler does support falkor/saphira. 2017-11-29 16:42:44 +00:00
as-options.s
asan.c hwasan: add -fsanitize=kernel-hwaddress flag 2018-04-13 18:05:21 +00:00
ast.c
at_file_missing.c
at_file_win.c
at_file_win.c.args
at_file.c
at_file.c.args
at_file.c.args.utf16le
autocomplete.c [autocompletion] Handle the space before pressing tab 2018-10-24 12:43:25 +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
B-opt.c
baremetal.cpp [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
biarch.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
bindings.c
cc1-response-files.c
cc-log-diagnostics.c
cc-print-options.c
ccc-as-cpp.c
ccc-host-triple-no-integrated-as.c
cf-runtime-abi.c Driver,CodeGen: introduce support for Swift CFString layout 2018-10-24 23:28:28 +00:00
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
cl-fallback.c
cl-idl.cpp [clang-cl] Treat inputs as C++ with /E, like MSVC 2018-12-26 21:04:08 +00:00
cl-include.c Attempt to fix cl-include.c on Windows. 2018-02-28 20:58:06 +00:00
cl-inputs.c
cl-link-at-file.c
cl-link.c [Driver] Don't force .exe suffix for lld 2017-06-06 02:06:28 +00:00
cl-options.c [clang-cl] Do not allow using both /Zc:dllexportInlines- and /fallback flag 2018-11-13 04:14:09 +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
cl-pch-search.cpp [clang-cl, PCH] Implement support for MS-style PCH through headers 2018-07-05 17:22:13 +00:00
cl-pch-showincludes.cpp test: adjust the target for some Windows tests 2018-01-23 17:05:57 +00:00
cl-pch.c
cl-pch.cpp [clang-cl, PCH] Support for /Yc and /Yu without filename and #pragma hdrstop 2018-09-11 17:10:44 +00:00
cl-response-file.c
cl-runtime-flags.c
cl-showfilenames.c Try harder to fix test/Driver/cl-showfilenames.c 2018-10-13 22:22:03 +00:00
cl-x86-flags.c Don't let test write to the source dir after r323426. 2018-01-25 21:49:03 +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
claim-unused.c
clang_cpp.c
clang_f_opts.c Automatic variable initialization 2018-12-18 05:12:21 +00:00
clang_f_opts.h
clang_wrapv_opts.c
clang-c-as-cxx.c
clang-exception-flags.cpp
clang-g-opts.c [Driver][Darwin] Use Host Triple to infer target os version 2018-07-03 04:15:49 +00:00
clang-offload-bundler.c [PowerPC] Make no-PIC default to match GCC - CLANG 2018-12-18 15:08:03 +00:00
clang-offload-bundler.c.o
clang-s-opts.s
clang-translation.c [Driver] Don't override '-march' when using '-arch x86_64h' 2018-12-17 19:29:27 +00:00
clang-translation.cppm Modules: Fix implicit output file for .cppm to .pcm instead of stdout 2018-06-14 23:09:06 +00:00
cloudabi.c
cloudabi.cpp
code-model.c [AArch64] Add Tiny Code Model for AArch64 2018-08-22 11:34:28 +00:00
codeview-column-info.c [Driver] Don't add -dwarf-column-info when using -gcodeview on non-msvc targets 2018-05-08 20:55:23 +00:00
color-diagnostics.c
compilation_database.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
complete-member-pointers.cpp Protect a clang-cl file path with --. 2018-05-30 04:08:34 +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-file2.c Fix typos in clang 2018-04-06 15:14:32 +00:00
config-file3.c [Driver] Fix implicit config files from prefixed symlinks 2018-04-25 21:23:59 +00:00
config-file4.c This test fails if there is no integrated assembler, so change the -c option to -S as it is not important to the test and allows it to pass when there is no integrated assembler. 2018-05-01 23:32:09 +00:00
config-file-errs.c Enable configuration files in clang 2018-01-01 13:27:01 +00:00
config-file.c [Driver] Don't warn about unused inputs in config files 2018-05-04 06:05:58 +00:00
constructors.c Request init/fini array on FreeBSD 12 and later 2018-06-29 19:18:17 +00:00
coroutines.c
coroutines.cpp
coverage_no_integrated_as.c [CMake] Use normalized Windows target triples 2018-08-09 02:16:18 +00:00
coverage-ld.c
coverage.c Fix coverage test on Windows bot 2017-11-17 21:55:23 +00:00
cpath.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
cpp-precomp.c
crash-diagnostics-dir.c Update crash diagnostics test to avoid attempting to write into various 2018-07-10 01:01:38 +00:00
crash-report-crashfile.m
crash-report-header.h Re-apply r334418 "Enable crash recovery tests on Windows, globs work in the lit internal shell now" 2018-06-12 11:51:22 +00:00
crash-report-modules.m Disable clang crash-report-modules.m test on Windows again 2018-07-20 22:36:33 +00:00
crash-report-null.test [CMake] Use normalized Windows target triples 2018-08-09 02:16:18 +00:00
crash-report-spaces.c Re-apply r334418 "Enable crash recovery tests on Windows, globs work in the lit internal shell now" 2018-06-12 11:51:22 +00:00
crash-report.c Re-apply r334418 "Enable crash recovery tests on Windows, globs work in the lit internal shell now" 2018-06-12 11:51:22 +00:00
cross-linux.c
cuda-arch-translation.cu [CUDA] Add amdgpu sub archs 2018-04-04 21:19:27 +00:00
cuda-bad-arch.cu [HIP] Diagnose unsupported host triple 2018-05-11 19:14:34 +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
cuda-constructor-alias.cu
cuda-detect-path.cu [CUDA] Detect installation in PATH 2018-01-31 08:26:51 +00:00
cuda-detect.cu [CUDA] Fix two failed test cases using --cuda-path-ignore-env 2018-09-26 07:07:48 +00:00
cuda-dwarf-2.cu [CUDA][OPENMP][NVPTX]Improve logic of the debug info support. 2018-12-12 14:52:27 +00:00
cuda-external-tools.cu [HIP] Support early finalization of device code for -fno-gpu-rdc 2018-10-02 17:48:54 +00:00
cuda-macosx.cu [CUDA] Fix two failed test cases using --cuda-path-ignore-env 2018-09-26 07:07:48 +00:00
cuda-march.cu
cuda-no-pgo-or-coverage.cu [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
cuda-no-sanitizers.cu [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
cuda-no-stack-protector.cu [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
cuda-not-found.cu [CUDA] Detect installation in PATH 2018-01-31 08:26:51 +00:00
cuda-options.cu [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
cuda-output-asm.cu [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
cuda-phases.cu [HIP] Fix device only compilation 2018-11-14 04:47:31 +00:00
cuda-ptxas-path.cu
cuda-simple.cu
cuda-unsupported-debug-options.cu [DEBUG_INFO] Fix tests, NFC. 2018-07-27 20:16:44 +00:00
cuda-unused-arg-warning.cu
cuda-version-check.cu [CUDA] Detect installation in PATH 2018-01-31 08:26:51 +00:00
cuda-windows.cu
cxa-atexit.cpp [hexagon] restore -fuse-cxa-atexit by default 2018-08-17 03:53:51 +00:00
darwin-arch-default.c
darwin-as.c
darwin-asan-nofortify.c Revert r337635 "[Driver] Sanitizer support based on runtime library presence" 2018-07-31 21:57:35 +00:00
darwin-debug-flags.c
darwin-dsymutil.c
darwin-embedded.c
darwin-infer-simulator-sdkroot.c Add REQUIRES: native to a test that assumes it 2018-08-01 13:41:11 +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
darwin-ld-demangle.c
darwin-ld-lto.c [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
darwin-ld-pthread.c
darwin-ld.c [gcov/Darwin] Ensure external symbols are exported when using an export list 2018-12-03 20:53:58 +00:00
darwin-max-type-align.c
darwin-multiarch-arm.c
darwin-objc-defaults.m
darwin-objc-options.m
darwin-sanitizer-ld.c Revert r337635 "[Driver] Sanitizer support based on runtime library presence" 2018-07-31 21:57:35 +00:00
darwin-sdk-version.c Make test/Driver/darwin-sdk-version.c pass if the host triple is 32-bit 2019-01-03 00:17:02 +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 Split test/Driver/darwin-sdkroot.c into two tests 2018-04-04 02:11:20 +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 Fix test change from r348365 to deal with Windows paths correctly. 2018-12-05 23:10:14 +00:00
darwin-verify-debug.c
darwin-version.c Fix typos in clang 2018-04-06 15:14:32 +00:00
darwin-xarch.c
debug-comp-dir.S
debug-main-file.S
debug-options-as.c
debug-options.c Implement -frecord-command-line (-frecord-gcc-switches) 2018-12-14 15:38:15 +00:00
debug-prefix-map.c
debug-prefix-map.S Support -fdebug-prefix-map for assembler source (pass to cc1as). This 2018-07-10 15:15:24 +00:00
debug-unsupported.c
debug.c
default-image-name.c
default-toolchain.c
defsym.s
denormal-fp-math.c
diagnostics.c
disable-llvm.c
dragonfly.c
dyld-prefix.c
dynamic-linker.c
eabi.c
elfiamcu-header-search.c
embed-bitcode.c
embed-bitcode.s [Driver] Add support for -fembed-bitcode for assembly file 2018-12-12 17:30:16 +00:00
emulated-tls.cpp [Driver] Pass -f[no-]emulated-tls and set up ExplicitEmulatedTLS 2018-03-01 22:26:19 +00:00
env.c
esan.c
exceptions.m
fast-math.c [Android] Default to -fno-math-errno 2018-08-22 17:43:05 +00:00
fatal-warnings.c
fcomment-block-commands.c
fembed-bitcode.c Driver: render arguments for the embedded bitcode correctly 2018-09-24 23:50:02 +00:00
flags.c Add flag to request Clang is ABI-compatible with older versions of itself 2017-08-26 01:04:35 +00:00
fno-escaping-block-tail-calls.c [Driver] Pass Default=false to hasFlag. 2018-03-10 05:55:21 +00:00
fno-rtti-data.cpp Driver: hoist -fno-rtti-data to a driver flag 2018-03-01 19:13:43 +00:00
fopenmp.c [MinGW] Link to correct openmp library 2018-10-23 06:33:22 +00:00
fortran.f95
fpack-struct.c
fparse-all-comments.c
fplugin.c
frame-pointer-elim.c For NetBSD, unwind data is emitted by default, so also enable frame 2018-07-17 12:38:57 +00:00
frame-pointer.c [RISCV] Fix logic to check if frame pointer should be used 2018-04-12 19:31:37 +00:00
freebsd-mips-as.c [mips] Use more conservative default CPUs for MIPS on FreeBSD. 2018-06-26 19:48:05 +00:00
freebsd.c [mips][ias] Enable IAS by default for OpenBSD / FreeBSD mips64/mips64el. 2018-06-29 19:03:03 +00:00
freebsd.cpp
fsanitize-blacklist.c Relax a FileCheck pattern to make it pass on Windows. 2018-05-07 21:40:53 +00:00
fsanitize-coverage.c [MSan] add KMSAN support to Clang driver 2018-09-07 09:21:09 +00:00
fsanitize-object-size.c [Driver] Conform warn_drv_object_size_disabled_O0 to DefaultWarnNoError 2018-07-12 19:53:15 +00:00
fsanitize.c hwasan: Implement lazy thread initialization for the interceptor ABI. 2019-01-04 19:27:04 +00:00
fsjlj-exceptions.c
fubsan-strip-path-components.cpp
fuchsia.c [Driver] Support XRay on Fuchsia 2018-11-22 02:36:47 +00:00
fuchsia.cpp [Driver] Use -Bstatic/dynamic for libc++ on Fuchsia 2018-11-04 22:38:47 +00:00
function-alignment.c Implement proper support for -falign-functions 2018-04-19 23:14:57 +00:00
function-sections.c
fuse-ld-windows.c [Driver] Allow using a canonical form of '-fuse-ld=' when cross-compiling on Windows. 2018-02-27 02:51:30 +00:00
fuse-ld.c Vary Windows toolchain selection by -fuse-ld 2017-11-06 21:18:05 +00:00
fuzzer.c Revert r337635 "[Driver] Sanitizer support based on runtime library presence" 2018-07-31 21:57:35 +00:00
fveclib.c
gcc_forward.c [Driver] Don't forward -m[no-]unaligned-access options to GCC when assembling/linking 2018-04-11 14:20:37 +00:00
gcc-toolchain.cpp
gcc-version-debug.c
gcodeview-ghash.c Add missing test for r347072 -gcodeview-ghash 2018-11-16 23:17:11 +00:00
gfortran.f90 Driver must return non-zero code on errors in command line 2017-05-24 14:57:17 +00:00
global-isel.c [Driver] Add an -fexperimental-isel driver option to enable/disable GlobalISel. 2018-01-26 00:27:22 +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
gold-lto-sections.c
gold-lto.c Revert "Revert "Revert "Revert "Fix LLVMgold plugin name/path for non-Linux."""" 2017-08-22 21:05:01 +00:00
header-module.cpp Reapply "Fix regression in behavior of clang -x c++-header -fmodule-name=XXX" 2018-11-05 12:46:02 +00:00
hexagon-hvx.c [Hexagon] Add support for Hexagon V66 2018-12-05 21:38:35 +00:00
hexagon-long-calls.c
hexagon-memops.c [Hexagon] Add driver options for subtarget features 2018-05-15 18:15:59 +00:00
hexagon-nvj.c [Hexagon] Add driver options for subtarget features 2018-05-15 18:15:59 +00:00
hexagon-nvs.c [Hexagon] Add driver options for subtarget features 2018-05-15 18:15:59 +00:00
hexagon-packets.c [Hexagon] Clang side of r327302 in LLVM 2018-03-13 13:30:43 +00:00
hexagon-toolchain-elf.c [Hexagon] Add support for Hexagon V66 2018-12-05 21:38:35 +00:00
hexagon-vectorize.c Revert r345170 [along with its llvm counterpart r345169] as it makes Halide builds timeout. 2018-10-27 04:51:09 +00:00
hip-binding.hip [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
hip-device-libs.hip [HIP] Replace irif library with hip.amdgcn.bc 2018-10-11 19:41:54 +00:00
hip-inputs.hip [HIP] Set proper triple and offload kind for the toolchain 2018-05-11 19:21:39 +00:00
hip-link-shared-library.hip [HIP][DRIVER][OFFLOAD] Do not unbundle unsupported file types 2019-01-04 19:09:20 +00:00
hip-output-file-name.hip [HIP] Support early finalization of device code for -fno-gpu-rdc 2018-10-02 17:48:54 +00:00
hip-toolchain-no-rdc.hip Disable code object version 3 for HIP toolchain 2018-10-16 17:36:23 +00:00
hip-toolchain-rdc.hip Disable code object version 3 for HIP toolchain 2018-10-16 17:36:23 +00:00
hurd.c Add Hurd target to Clang driver (2/2) 2018-11-29 03:49:14 +00:00
ident_md.c
immediate-options.c
implicit-function-as-error.c
include-default-header.cl
incompatible_sysroot.c
incremental-linker-compatible.c
index-header-map.c
indirect-tls-seg-refs.c [X86][Tests] Make sure tls-direct-seg-refs tests only run where supported 2018-10-18 14:44:25 +00:00
inhibit-downstream-commands.c [CMake] Use normalized Windows target triples 2018-08-09 02:16:18 +00:00
inline-asm.c
instrprof-ld.c
integrated-as.c Use a dummy target so the test passes when default target is for a toolchain implements useIntegratedAs() -> true 2018-08-01 13:41:42 +00:00
integrated-as.s Allow forwarding -fdebug-compilation-dir to cc1as 2018-12-06 18:50:39 +00:00
ios-simulator-arcruntime.c
ios-version-min.c
krait-cpu.c
lanai-toolchain.c
lanai-unknown-unknown.cpp Recommit r324107 again. 2018-02-07 22:15:33 +00:00
le32-toolchain.c
le32-unknown-nacl.cpp Recommit r324107 again. 2018-02-07 22:15:33 +00:00
le64-unknown-unknown.cpp Recommit r324107 again. 2018-02-07 22:15:33 +00:00
linker-opts.c [CMake] Use normalized Windows target triples 2018-08-09 02:16:18 +00:00
linux-as.c [ARM][AArch64] Pass through endian flags to assembler and linker. 2018-10-16 09:21:17 +00:00
linux-header-search.cpp [Driver] Support g++ headers in include/g++ 2018-11-13 21:38:45 +00:00
linux-ld.c [ARM][AArch64] Pass through endian flags to assembler and linker. 2018-10-16 09:21:17 +00:00
linux-per-target-runtime-dir.c [Driver] Search LibraryPaths when handling -print-file-name 2018-09-12 03:26:10 +00:00
lit.local.cfg Enable .hip files for test/Driver 2018-07-24 01:03:44 +00:00
lto-dwo.c Add an option to support debug fission on implicit ThinLTO. 2018-06-25 23:05:27 +00:00
lto-jobs.c
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
lto.cu [CUDA] add REQUIRES fields for CUDA variants of LTO tests. 2018-03-22 16:47:41 +00:00
m_and_mm.c Ignore return value in test. 2017-06-16 19:29:20 +00:00
macho-embedded.c
masm.c Attempt to fix test/Driver/masm.c on the ARM bots. 2018-01-17 16:03:08 +00:00
masm.s
mbig-obj.c
mg.c
mglobal-merge.c Remove -cc1 option "-backend-option". 2018-04-12 22:21:36 +00:00
miamcu-opt.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
miamcu-opt.cpp
mingw-libgcc.c [MinGW, CrossWindows] Allow passing -static together with -shared 2018-02-27 19:42:19 +00:00
mingw-lto.c [MinGW] Allow using LTO when lld is used as linker 2018-10-12 20:15:51 +00:00
mingw-msvcrt.c [MinGW] Treat any -lucrt* as replacing -lmsvcrt 2018-07-10 10:46:45 +00:00
mingw-sanitizers.c [MinGW] Allow using ASan 2018-10-01 20:53:25 +00:00
mingw-sysroot.cpp [test] Add a testcase for MinGW sysroot detections from SVN r330244. NFC. 2018-04-25 21:24:04 +00:00
mingw-windowsapp.c [MinGW] Skip adding default win32 api libraries if -lwindowsapp is specified 2018-07-10 10:46:51 +00:00
mingw.cpp [MinGW] Predefine UNICODE if -municode is specified during compilation 2018-08-06 19:48:44 +00:00
mips-abi.c [driver][mips] Adjust target triple's environment accordingly to provided ABI name 2018-10-16 10:19:06 +00:00
mips-abicalls-error.c Replace the UTF-8 characters in the error message. 2018-11-18 22:30:58 +00:00
mips-abicalls-warning.c [mips] Improve handling of -fno-[pic/PIC] option 2018-05-07 14:30:49 +00:00
mips-as.c [mips] Improve handling of -fno-[pic/PIC] option 2018-05-07 14:30:49 +00:00
mips-cs.cpp
mips-eleb.c
mips-features.c [mips] Add '-mvirt', '-mno-virt', '-mginv', '-mno-ginv' options 2018-07-11 12:45:25 +00:00
mips-float.c
mips-fsf.cpp
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-img-v2.cpp
mips-img.cpp
mips-indirect-branch.c [mips] Spectre variant two mitigation for MIPSR2 2018-02-21 00:05:05 +00:00
mips-integrated-as.s
mips-mabs-warning.c [mips] Introducing option -mabs=[legacy/2008] 2017-08-24 16:06:30 +00:00
mips-mti-linux.c Try to fix this clang driver test case after r340709. 2018-08-27 08:49:20 +00:00
mips-mti.cpp
mips-reduced-toolchain.cpp
mipsel-nacl-defines.cpp
modules-cache-path.m
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] Turn on system header validation for implicit modules 2018-04-18 06:07:49 +00:00
modules.mm
montavista-gcc-toolchain.c
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
ms-bitfields.c
msan.c [MSan] add KMSAN support to Clang driver 2018-09-07 09:21:09 +00:00
msc-version.c
msvc_forward.c
msvc-compiler-rt.c
msvc-link.c Reland r341390 clang-cl: Pass /Brepro to linker if it was passed to the compiler 2018-09-07 12:47:02 +00:00
msvc-triple.c
myriad-toolchain.c [Myriad] Remove invalidated -elf flag for MoviAsm 2018-01-08 20:36:08 +00:00
nacl-direct.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
netbsd.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
netbsd.cpp [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
nios2-cpu.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
no-arc-exception-silence.m
no-canonical-prefixes.c Don't let test/Driver/no-canonical-prefixes.c form a symlink cycle the second time it runs. 2018-06-18 18:50:35 +00:00
no-integrated-as-win.c
no-integrated-as.c
no-integrated-as.s [CMake] Use normalized Windows target triples 2018-08-09 02:16:18 +00:00
no-objc-arr.m
no-objc-default-synthesize-properties.m
no-sibling-calls.c
nodefaultlib.c
noexecstack.c
noinline.c
nostdincxx.cpp
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 [Driver] Also obey -nostdlib++ when rewriting -lstdc++. 2018-12-18 23:29:35 +00:00
nozlibcompress.c test: fix negative test case 2017-06-23 16:52:49 +00:00
O.c
objc-convert-messages-to-runtime-calls.m Convert some ObjC msgSends to runtime calls. 2018-12-08 05:13:50 +00:00
objc-cpp-output.m
objc-sdk-migration-options.m
objc-weak.m [driver][darwin] Take the OS version specified in "-target" as the target 2017-12-19 19:05:04 +00:00
objc++-cpp-output.mm
Ofast.c
offloading-interoperability.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
openbsd.c [PowerPC] Set the default PLT mode on OpenBSD/powerpc to Secure PLT. 2018-11-19 00:21:06 +00:00
openbsd.cpp Some improvements to the OpenBSD driver. 2018-10-11 16:13:44 +00:00
opencl.cl [OpenCL] Added -std/-cl-std=c++ 2018-04-12 14:17:04 +00:00
openmp-offload-gpu.c [CUDA][OPENMP][NVPTX]Improve logic of the debug info support. 2018-12-12 14:52:27 +00:00
openmp-offload.c [DRIVER][OFFLOAD] Do not invoke unbundler on unsupported file types. 2018-09-28 16:17:59 +00:00
openmp-unsupported-debug-options.c [DEBUG_INFO] Fix tests, NFC. 2018-07-27 20:16:44 +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 test/Driver/output-file-cleanup.c: delete non-readable temporary file 2018-09-14 21:36:35 +00:00
output-file-is-dir.c
parse-progname.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
pch-deps.c
phases.c
pic.c [mips] Prevent PIC to be set to level 2 2018-04-16 10:21:24 +00:00
ppc-abi.c [PowerPC] Make no-PIC default to match GCC - CLANG 2018-12-18 15:08:03 +00:00
ppc-dependent-options.cpp
ppc-endian.c
ppc-f128-support-check.c [PowerPC] The __float128 type should only be available on Power9 2018-06-13 16:05:05 +00:00
ppc-features.cpp [PowerPC] Option for secure plt mode 2018-04-11 12:24:44 +00:00
prefixed-tools.c
preprocess-multiple.c
preprocessor.c
preserve-as-comments.c
preserve-uselistorder.c
print-effective-triple.c [Driver] -print-target-triple and -print-effective-triple options 2018-08-16 00:22:03 +00:00
print-empty-prog-name.c Driver: fix an assertion with -print-prog-name= 2018-05-01 18:40:42 +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
print-multi-directory.c [test] Use --sysroot instead of -B in print-multi-directory.c 2018-10-03 18:24:05 +00:00
print-target-triple.c [Driver] -print-target-triple and -print-effective-triple options 2018-08-16 00:22:03 +00:00
ps4-analyzer-defaults.cpp
ps4-cpu-defaults.cpp
ps4-header-search.c
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
ps4-runtime-flags.c
ps4-sdk-root.c
qa_override.c
redundant-args.c
redzone.c
relax.c
relax.s
reloc-model.c
renderscript.rs
response-file-extra-whitespace.c
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 [darwin] remove version number check when enabling -fobjc-subscripting-legacy-runtime 2018-12-06 02:44:23 +00:00
rewrite-map-files.c
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 Add a command line option 'fregister_global_dtors_with_atexit' to 2018-04-17 18:41:52 +00:00
riscv32-toolchain.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
riscv64-toolchain.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
riscv-abi.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
riscv-arch.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
riscv-features.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
riscv-gnutools.c Revert "[RISCV] Mark unit tests as "requires: riscv-registered-target"" 2018-12-05 19:19:38 +00:00
ropi-rwpi.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
rtti-options.cpp Do not enable RTTI with -fexceptions, for PS4 2018-05-18 23:32:01 +00:00
sanitize_unwind_tables.c Hardware-assisted AddressSanitizer (clang part). 2017-12-09 01:32:07 +00:00
sanitizer-ld.c [Driver][PS4] Do not implicitly link against asan or ubsan if -nostdlib or -nodefaultlibs on PS4. 2018-12-18 17:03:35 +00:00
save-stats.c Fix some tests that were failing on Windows 2018-04-20 15:33:44 +00:00
save-temps.c
show-option-names.c
solaris-header-search.cpp test/Driver: Add some --stdlib=platform, NFC. 2018-01-23 18:12:12 +00:00
solaris-ld.c Fix test Driver/solaris-ld.c for Windows. 2018-01-24 00:05:01 +00:00
solaris-opts.c
sparc-as.c [Sparc] Use the leon arch for Leon3's when using an external assembler 2018-05-24 06:16:02 +00:00
sparc-float.c
sparcv9-as.c
split-debug.c [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option. 2018-11-14 09:22:16 +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] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option. 2018-11-14 09:22:16 +00:00
split-stack-ld.c
stack-arg-probe.c Support for the mno-stack-arg-probe flag 2018-02-23 13:47:36 +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
std.c
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
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
systemz-as.s
systemz-features.cpp
systemz-march.c [SystemZ] Add support for IBM z14 processor (1/3) 2017-07-17 17:45:57 +00:00
target-abi-cc1as.s
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 [Driver][Darwin] Use Host Triple to infer target os version 2018-07-03 04:15:49 +00:00
target.c
thinlto_backend.c [ThinLTO] Pass -save-temps to LTO backend for distributed ThinLTO builds 2018-04-17 16:39:25 +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.cu [CUDA] add REQUIRES fields for CUDA variants of LTO tests. 2018-03-22 16:47:41 +00:00
thread-model.c
tsan.c
types.c [RISCV] Enable __int128_t and __uint128_t through clang flag 2018-02-25 03:58:23 +00:00
unavailable_aligned_allocation.cpp [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable. 2018-08-03 23:12:37 +00:00
unix-conformance.c [Driver] Make clang/cc conforms to UNIX standard 2017-11-10 01:32:47 +00:00
unknown-arg.c Removing -debug-info-macros from option suggestions test 2018-09-03 16:55:02 +00:00
unknown-gcc-arch.c
unknown-std.c Add language standard aliases for -std=c18, -std=gnu18, and -std=iso9899:2018. 2018-10-18 17:42:41 +00:00
unknown-std.cl [OpenCL] Added -std/-cl-std=c++ 2018-04-12 14:17:04 +00:00
unknown-std.cpp Add --cuda-path to mock a CUDA Toolkit installation to avoid 2017-12-12 18:33:39 +00:00
unknown-std.S
unsupported-faltivec.c
unsupported-option.c [Driver] Suggest correctly spelled driver options 2018-01-06 00:25:40 +00:00
unsupported-target-arch.c
verify_pch.m
vfsoverlay.c
via-file-asm.c
visibility.cpp
warning-options_pedantic.cpp
warning-options.cpp [clang] Get rid of "%T" expansions 2017-08-15 19:47:06 +00:00
wasm32-unknown-unknown.cpp [WebAssembly] clang-format (NFC) 2018-08-31 20:57:00 +00:00
wasm64-unknown-unknown.cpp [WebAssembly] clang-format (NFC) 2018-08-31 20:57:00 +00:00
wasm-toolchain.c [WebAssembly] Remove use of lld -flavor flag 2018-08-07 18:55:41 +00:00
wasm-toolchain.cpp [WebAssembly] Remove use of lld -flavor flag 2018-08-07 18:55:41 +00:00
watchos-version-min.c
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
windows-arm-minimal-arch.c [ADT] Normalize empty triple components 2018-08-08 22:23:57 +00:00
windows-cross.c [MinGW, CrossWindows] Allow passing -static together with -shared 2018-02-27 19:42:19 +00:00
windows-exceptions.cpp [Driver] Automatically enable -munwind-tables if -fseh-exceptions is enabled 2018-12-18 08:36:10 +00:00
windows-pic.cpp
windows-thumb.s
windows-wildcard-expansion.c
woa-fp.c
woa-restrict-it.c Remove -cc1 option "-backend-option". 2018-04-12 22:21:36 +00:00
working-directory-and-abs.c
working-directory.c
Wp-args.c
x86_64-nacl-defines.cpp
x86_features.c
x86_m16.c
x86-march.c [X86] Add -march=cascadelake support in clang. 2018-11-27 18:05:14 +00:00
x86-target-features.c [x86/SLH] Add a real Clang flag and LLVM IR attribute for Speculative 2018-09-04 12:38:00 +00:00
Xarch.c [clang-cl] Provide separate flags for all the /O variants 2018-09-25 14:10:26 +00:00
xcore-opts.c
Xlinker-args.c