rust/src/test/codegen
bors 409920873c Auto merge of #81451 - nikic:llvm-12, r=nagisa
Upgrade to LLVM 12

This implements the necessary adjustments to make rustc work with LLVM 12. I didn't encounter any major issues so far.

r? `@cuviper`
2021-03-04 15:16:44 +00:00
..
auxiliary Remove licenses 2018-12-25 21:08:33 -07:00
avr Assert that locals have storage when used 2020-10-31 21:06:29 +01:00
dllimports Drop support for cloudabi targets 2020-11-22 17:11:41 -05:00
intrinsics remove move_val_init leftovers 2020-12-31 10:53:37 +01:00
non-terminate Gate llvm.sideeffect under -Z insert-sideeffect 2019-09-28 07:13:53 +08:00
remap_path_prefix Add hash of source files in debug info 2020-04-02 14:13:19 -07:00
riscv-abi Update tests for extern block linting 2021-01-13 07:49:16 -05:00
simd-intrinsic args may be passed by value 2020-11-29 18:36:30 +10:00
src-hash-algorithm Add support for SHA256 source file hashing for LLVM 11+. 2020-10-14 15:09:51 -07:00
abi-efiapi.rs fully exploited the dropped support of LLVM 8 2020-11-12 14:39:47 +01:00
abi-main-signature-16bit-c-int.rs test: codegen: skip tests inappropriate for riscv64 2020-06-04 12:02:03 +01:00
abi-main-signature-32bit-c-int.rs Update codegen tests with unnamed arguments 2020-01-07 21:28:22 +01:00
abi-repr-ext.rs Consider Scalar to be a bool only if its unsigned 2021-01-30 00:49:10 +02:00
abi-sysv64.rs test: codegen: skip tests inappropriate for riscv64 2020-06-04 12:02:03 +01:00
abi-x86-interrupt.rs test: codegen: skip tests inappropriate for riscv64 2020-06-04 12:02:03 +01:00
abi-x86_64_sysv.rs Remove licenses 2018-12-25 21:08:33 -07:00
adjustments.rs codegen: use "_N" (like for other locals) instead of "argN", for argument names. 2019-09-13 19:25:05 +03:00
align-enum.rs Disable MIR optimization for alignment codegen tests 2020-05-16 17:15:24 -07:00
align-struct.rs Disable MIR optimization for alignment codegen tests 2020-05-16 17:15:24 -07:00
alloc-optimisation.rs Gate llvm.sideeffect under -Z insert-sideeffect 2019-09-28 07:13:53 +08:00
arg-return-value-in-reg.rs make test work in llvm 9 2020-11-30 01:21:47 -05:00
asm-multiple-options.rs Add codegen test for multiple asm! options 2020-06-20 11:12:42 -07:00
asm-options.rs Add tests for asm! 2020-05-18 14:41:32 +01:00
asm-sanitize-llvm.rs Add a test for escaping LLVMisms in inline asm 2021-02-06 15:18:37 +02:00
async-fn-debug-msvc.rs Split out async fn and generator test 2020-06-24 15:08:59 -07:00
async-fn-debug.rs Split out async fn and generator test 2020-06-24 15:08:59 -07:00
atomic-operations.rs Test codegen of compare_exchange operations 2020-07-17 00:00:00 +00:00
bool-cmp.rs Update bool-cmp.rs codegen 2020-01-07 21:28:22 +01:00
box-maybe-uninit.rs stabilize core parts of MaybeUninit and deprecate mem::uninitialized in the future 2019-05-20 10:44:02 +02:00
c-variadic-copy.rs Expose VaListImpl as the Rust equivalent of __va_list_tag and implement Clone for it. 2019-06-17 16:04:49 -07:00
c-variadic-opt.rs Expose VaListImpl as the Rust equivalent of __va_list_tag and implement Clone for it. 2019-06-17 16:04:49 -07:00
c-variadic.rs Use call instead of invoke for functions that cannot unwind 2020-04-15 05:45:21 -04:00
call-llvm-intrinsics.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
call-metadata.rs Remove licenses 2018-12-25 21:08:33 -07:00
catch-unwind.rs test: codegen: skip catch-unwind on riscv64 2020-06-04 12:15:26 +01:00
cdylib-external-inline-fns.rs Fix exports with #[inline(always)] 2020-06-15 09:40:56 +01:00
cfguard-checks.rs Stabilize control-flow-guard codegen option 2020-07-14 15:27:42 +01:00
cfguard-disabled.rs Stabilize control-flow-guard codegen option 2020-07-14 15:27:42 +01:00
cfguard-nochecks.rs Stabilize control-flow-guard codegen option 2020-07-14 15:27:42 +01:00
cfguard-non-msvc.rs Stabilize control-flow-guard codegen option 2020-07-14 15:27:42 +01:00
coercions.rs Remove licenses 2018-12-25 21:08:33 -07:00
consts.rs Make codegen test bitwidth-independent 2020-09-20 09:09:56 +02:00
dealloc-no-unwind.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
debug-column-msvc.rs Test that column information is not emitted for MSVC targets 2020-02-26 21:45:34 +01:00
debug-column.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
debug-compile-unit-path.rs Test CU directory is the work_dir 2021-02-20 15:56:36 +02:00
debug-linkage-name.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
drop.rs Defer creating drop trees in MIR lowering until leaving that scope 2020-10-04 07:54:01 -04:00
enum-bounds-check-derived-idx.rs Add codegen tests 2020-08-31 08:19:15 +02:00
enum-bounds-check-issue-13926.rs Add codegen tests 2020-08-31 08:19:15 +02:00
enum-bounds-check.rs Add codegen tests 2020-08-31 08:19:15 +02:00
enum-debug-clike.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
enum-debug-niche-2.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
enum-debug-niche.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
enum-debug-tagged.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
enum-discriminant-value.rs Update tests to remove old numeric constants 2020-11-29 00:55:55 -05:00
export-no-mangle.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
external-no-mangle-fns.rs Fix exports with #[inline(always)] 2020-06-15 09:40:56 +01:00
external-no-mangle-statics.rs Upgrade Emscripten targets to use upstream LLVM backend 2019-10-16 17:06:48 -07:00
fastcall-inreg.rs test: codegen: skip tests inappropriate for riscv64 2020-06-04 12:02:03 +01:00
fatptr.rs Remove licenses 2018-12-25 21:08:33 -07:00
fewer-names.rs Allow using -Z fewer-names=no to retain value names 2020-11-23 00:00:00 +00:00
ffi-const.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
ffi-out-of-bounds-loads.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
ffi-pure.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
ffi-returns-twice.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
float_math.rs Remove licenses 2018-12-25 21:08:33 -07:00
fn-impl-trait-self.rs Add codegen test 2019-03-31 20:09:30 -04:00
foo.s Add global_asm tests 2017-04-12 19:12:50 -05:00
force-frame-pointers.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
force-unwind-tables.rs fully exploited the dropped support of LLVM 8 2020-11-12 14:39:47 +01:00
function-arguments.rs Support LLVM 12 in rustc 2021-02-28 10:19:44 +01:00
gdb_debug_script_load.rs Disable gdb pretty printer global section on wasm targets 2019-12-04 20:15:21 -08:00
generator-debug-msvc.rs Split out async fn and generator test 2020-06-24 15:08:59 -07:00
generator-debug.rs Split out async fn and generator test 2020-06-24 15:08:59 -07:00
generic-debug.rs Remove unnecessary ignore-tidy-linelength 2019-04-23 11:42:14 +01:00
global_asm.rs Remove licenses 2018-12-25 21:08:33 -07:00
global_asm_include.rs Remove licenses 2018-12-25 21:08:33 -07:00
global_asm_x2.rs Remove licenses 2018-12-25 21:08:33 -07:00
i686-macosx-deployment-target.rs choose a more specific LLVM target on OS X when necessary 2019-05-07 11:09:39 -04:00
i686-no-macosx-deployment-target.rs default to $ARCH-apple-macosx10.7.0 LLVM triple for darwin targets 2019-05-13 17:04:59 -04:00
inline-always-works-always.rs Support revisions for codegen tests 2019-01-24 20:13:51 +02:00
inline-debuginfo.rs Ignore long lines in test 2020-10-26 14:09:27 +00:00
inline-hint.rs Fix setting inline hint based on InstanceDef::requires_inline 2020-11-17 00:00:00 +00:00
instrument-mcount.rs Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
integer-cmp.rs Small improvement for Ord implementation of integers 2019-08-29 03:52:18 +00:00
integer-overflow.rs Added a codegen test for a recent optimization for overflow-checks=on 2020-05-24 16:20:02 -04:00
internalize-closures.rs Ensure that closure call is not removed by MIR optimizations in a test 2020-11-12 00:00:00 +00:00
intrinsic-no-unnamed-attr.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-13018.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-15953.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-27130.rs Make sure the functions don't get merged 2020-08-28 01:16:20 +02:00
issue-32031.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-32364.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-34634.rs Add test for issue #34634 2020-09-20 11:15:00 +02:00
issue-34947-pow-i32.rs Gate llvm.sideeffect under -Z insert-sideeffect 2019-09-28 07:13:53 +08:00
issue-37945.rs Fix codegen test for issue 37945 2020-11-12 00:00:00 +00:00
issue-44056-macos-tls-align.rs Ignore changes when debug assertions are enabled. 2020-07-09 10:41:33 -07:00
issue-45222.rs Disable failing codegen test 2020-02-08 18:47:41 -05:00
issue-45466.rs ignore some codegen tests in debug mode 2019-07-15 16:56:43 +02:00
issue-45964-bounds-check-slice-pos.rs Add codegen test for #45964 2020-10-23 01:15:08 +02:00
issue-47278.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
issue-47442.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-56267-2.rs rustc_codegen_llvm: don't overalign loads of pair operands. 2018-11-29 00:37:38 +02:00
issue-56267.rs Fix alignment of stores to scalar pair 2018-11-28 00:31:03 +01:00
issue-56927.rs Update tests to remove old numeric constants 2020-11-29 00:55:55 -05:00
issue-58881.rs Fix LLVM IR generated for C-variadic arguments 2019-03-31 17:37:37 +00:00
issue-59352.rs Add test for #59352 2021-01-15 18:44:50 +01:00
issue-69101-bounds-check.rs Slightly improve panic messages when range indices are out of bounds 2020-07-20 00:40:42 +02:00
issue-73396-bounds-check-after-position.rs Test that bounds checks are elided for indexing after .[r]position() 2020-09-14 22:19:48 -04:00
issue-73827-bounds-check-index-in-subexpr.rs Add codegen test for issue #73827 2020-10-17 13:18:29 +02:00
issue-75659.rs Only test on x86_64 2020-10-01 16:02:32 +02:00
lifetime_start_end.rs simplify-locals: Remove unused assignments regardless of rvalue kind 2020-10-26 10:48:28 +01:00
link-dead-code.rs test: support both (legacy and v0) choices of mangling. 2019-05-31 18:24:53 +03:00
link_section.rs Upgrade Emscripten targets to use upstream LLVM backend 2019-10-16 17:06:48 -07:00
loads.rs simplify-locals: Remove unused assignments regardless of rvalue kind 2020-10-26 10:48:28 +01:00
local-generics-in-exe-internalized.rs test: support both (legacy and v0) choices of mangling. 2019-05-31 18:24:53 +03:00
loop.rs Prevent miscompilation in trivial loop {} 2020-10-15 09:42:06 -04:00
lto-removes-invokes.rs Remove licenses 2018-12-25 21:08:33 -07:00
mainsubprogram.rs Adjust codegen tests for DISPFlagMainSubprogram 2019-07-09 21:55:29 +02:00
mainsubprogramstart.rs Adjust codegen tests for DISPFlagMainSubprogram 2019-07-09 21:55:29 +02:00
match-optimizes-away.rs Remove licenses 2018-12-25 21:08:33 -07:00
match.rs Introduce MIR optimizations for simplifying x? on Results. 2019-11-21 20:05:16 +01:00
mir_zst_stores.rs Remove licenses 2018-12-25 21:08:33 -07:00
naked-functions.rs Validate use of parameters in naked functions 2020-11-25 00:00:00 +00:00
naked-noinline.rs Never inline naked functions 2020-11-20 00:00:00 +00:00
no-assumes-on-casts.rs Remove licenses 2018-12-25 21:08:33 -07:00
no-dllimport-w-cross-lang-lto.rs Stabilize linker-plugin based LTO. 2019-02-12 15:10:29 +01:00
no-output-asm-is-volatile.rs Update tests to use llvm_asm! 2020-03-26 15:49:22 +00:00
no-plt.rs Remove licenses 2018-12-25 21:08:33 -07:00
noreturn-uninhabited.rs Remove unnecessary ignore-tidy-linelength 2019-04-23 11:42:14 +01:00
noreturnflag.rs Remove unnecessary ignore-tidy-linelength 2019-04-23 11:42:14 +01:00
nounwind.rs Remove double trailing newlines 2019-04-22 16:57:01 +01:00
nrvo.rs Test that NRVO elides the call to memcpy 2020-05-17 10:24:06 -07:00
optimize-attr-1.rs [mir-opt] Turn on the ConstProp pass by default 2019-11-11 20:57:26 -05:00
packed.rs Support LLVM 12 in rustc 2021-02-28 10:19:44 +01:00
panic-abort-windows.rs Drop support for cloudabi targets 2020-11-22 17:11:41 -05:00
personality_lifetimes.rs Re-enable Emscripten's exception handling support 2019-10-25 15:16:36 -07:00
pgo-instrumentation.rs Relax checks in pgo-instrumentation codegen test 2019-07-15 14:01:26 +02:00
README.md add link to FileCheck docs 2019-08-26 20:40:30 +02:00
refs.rs simplify-locals: Remove unused assignments regardless of rvalue kind 2020-10-26 10:48:28 +01:00
repeat-trusted-len.rs fix a codegen test 2020-03-14 14:05:26 +01:00
repr-transparent-aggregates-1.rs Support LLVM 12 in rustc 2021-02-28 10:19:44 +01:00
repr-transparent-aggregates-2.rs Support LLVM 12 in rustc 2021-02-28 10:19:44 +01:00
repr-transparent-aggregates-3.rs Support LLVM 12 in rustc 2021-02-28 10:19:44 +01:00
repr-transparent-sysv64.rs Update codegen tests with unnamed arguments 2020-01-07 21:28:22 +01:00
repr-transparent.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
sanitizer-memory-track-orgins.rs compiletest: Add directives to detect sanitizer support 2020-06-13 14:24:30 +02:00
sanitizer-no-sanitize-inlining.rs Rollup merge of #73044 - tmiasko:compiletest-san, r=nikomatsakis 2020-06-19 14:29:22 +02:00
sanitizer-no-sanitize.rs Fix typo in code comment 2020-12-10 19:06:29 -05:00
sanitizer-recover.rs Prepare for LLVM 11 2020-06-25 18:52:41 -07:00
scalar-pair-bool.rs Match scalar-pair-bool more flexibly for LLVM 11 2020-08-22 13:44:54 -07:00
set-discriminant-invalid.rs use abort instead of unreachable 2019-12-06 00:10:01 +01:00
slice-as_chunks.rs Try ignore-debug in the codegen test 2021-01-16 14:52:48 -08:00
slice-init.rs Remove licenses 2018-12-25 21:08:33 -07:00
slice-iter-len-eq-zero.rs Help LLVM better optimize slice::Iter(Mut)::len 2019-06-15 21:15:25 -07:00
slice-position-bounds-check.rs Remove licenses 2018-12-25 21:08:33 -07:00
slice-ref-equality.rs Remove pointer comparison from slice equality 2020-12-26 06:43:51 +00:00
slice-windows-no-bounds-check.rs Add codegen test 2020-10-07 16:17:01 +03:00
some-global-nonnull.rs Emit == null instead of <= null 2020-08-08 10:45:15 +02:00
sparc-struct-abi.rs Remove licenses 2018-12-25 21:08:33 -07:00
stack-probes.rs Use probe-stack=inline-asm in LLVM 11+ 2021-01-14 22:49:16 -05:00
staticlib-external-inline-fns.rs Fix exports with #[inline(always)] 2020-06-15 09:40:56 +01:00
stores.rs Update the minimum external LLVM to 7 2019-12-02 11:36:21 -08:00
swap-small-types.rs ignore some codegen tests in debug mode 2019-07-15 16:56:43 +02:00
target-cpu-on-functions.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
target-feature-multiple.rs cmdline: Make target features individually overridable 2020-05-11 02:04:53 +03:00
target-feature-on-functions.rs Remove licenses 2018-12-25 21:08:33 -07:00
to_vec.rs Change slice::to_vec to not use extend_from_slice 2020-11-22 22:22:03 +00:00
transmute-scalar.rs tests: codegen/transmute-scalar needs optimizations enabled. 2020-12-10 13:24:47 +02:00
try-panic-abort.rs Simplify the try intrinsic by using a callback in the catch block 2020-03-05 17:36:50 +00:00
try_identity.rs Use -O in try_identity test that requires storage markers 2021-02-28 00:00:00 +00:00
tune-cpu-on-functions.rs Pass tune-cpu to LLVM 2020-10-05 07:50:44 +08:00
tuple-layout-opt.rs add tests related to tuple scalar layout with ZST in last field 2020-08-30 14:58:03 -04:00
unchecked-float-casts.rs Improve codegen for unchecked float casts on wasm 2020-07-22 15:05:05 -07:00
union-abi.rs Pass arguments up to 2*usize by value 2020-11-29 20:08:00 -05:00
unwind-extern-exports.rs Update code to account for extern ABI requirement 2021-01-13 07:49:45 -05:00
unwind-extern-imports.rs Update tests for extern block linting 2021-01-13 07:49:16 -05:00
var-names.rs rustc_codegen_llvm: give names to non-alloca variable values. 2019-09-06 16:57:20 +03:00
vec-clear.rs we can enable one more codegen test in debug mode now 2020-06-16 16:01:30 -04:00
vec-iter-collect-len.rs Gate llvm.sideeffect under -Z insert-sideeffect 2019-09-28 07:13:53 +08:00
vec-optimizes-away.rs we can enable one more codegen test in debug mode now 2020-06-16 16:01:30 -04:00
vec-shrink-panic.rs shrink_to shouldn't panic on len greater than capacity 2021-01-26 19:25:37 +01:00
vecdeque_no_panic.rs Remove unreachable panics from VecDeque 2021-01-14 19:31:56 +01:00
vtabletype.rs Remove unnecessary ignore-tidy-linelength 2019-04-23 11:42:14 +01:00
wasm_casts_nontrapping.rs Add codegen tests 2020-07-02 09:32:09 +02:00
wasm_casts_trapping.rs rustc: Improving safe wasm float->int casts 2020-07-28 10:17:11 -07:00
x86_64-macosx-deployment-target.rs choose a more specific LLVM target on OS X when necessary 2019-05-07 11:09:39 -04:00
x86_64-no-macosx-deployment-target.rs default to $ARCH-apple-macosx10.7.0 LLVM triple for darwin targets 2019-05-13 17:04:59 -04:00
zip.rs Remove licenses 2018-12-25 21:08:33 -07:00
zst-offset.rs handle vector layout 2020-08-30 14:58:03 -04:00

The files here use the LLVM FileCheck framework, documented at https://llvm.org/docs/CommandGuide/FileCheck.html.