rust/tests/codegen
bors 3c554f5cb4 Auto merge of #112516 - erikdesjardins:loop, r=davidtwco
cg_llvm: use index-based loop in write_operand_repeatedly

This should be easier for LLVM to analyze.

Fixes #111603

This needs a perf run.

[cc](https://github.com/rust-lang/rust/issues/111603#issuecomment-1567531178) `@caojoshua`
2023-06-27 15:01:56 +00:00
..
auxiliary Also move the auxiliary file 2023-03-20 10:25:29 +00:00
avr abi: add `AddressSpace` field to `Primitive::Pointer` 2023-01-22 23:41:39 -05:00
dllimports Add more codegen tests 2023-01-17 16:23:22 +01:00
instrument-xray Test XRay only for supported targets 2023-02-09 12:29:43 +09:00
intrinsics Add a distinct `OperandValue::ZeroSized` variant for ZSTs 2023-05-31 19:10:28 -07:00
issues cg_llvm: use index-based loop in write_operand_repeatedly 2023-06-11 00:04:53 -04:00
loongarch-abi tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
non-terminate Move /src/test to /tests 2023-01-11 09:32:08 +00:00
remap_path_prefix Give the cross-crate generic some work to do 2023-04-07 15:46:45 -04:00
riscv-abi Put `noundef` on all scalars that don't allow uninit 2023-01-17 08:14:35 +01:00
simd-intrinsic Allow `transmute`s to produce `OperandValue`s instead of always using `alloca`s 2023-04-04 18:44:29 -07:00
src-hash-algorithm Move /src/test to /tests 2023-01-11 09:32:08 +00:00
unwind-abis codegen: add needs-unwind to tests that require it 2023-05-23 16:54:35 +02:00
README.md Move /src/test to /tests 2023-01-11 09:32:08 +00:00
abi-efiapi.rs Stabilize `abi_efiapi` feature 2023-01-11 20:42:13 -05:00
abi-main-signature-16bit-c-int.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
abi-main-signature-32bit-c-int.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
abi-repr-ext.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
abi-sysv64.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
abi-x86-interrupt.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
abi-x86_64_sysv.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
addr-of-mutate.rs allow mutating function args through `&raw const` 2023-05-13 00:00:51 +02:00
adjustments.rs Use poison instead of undef 2023-03-16 15:07:04 +01:00
align-enum.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
align-fn.rs Allow all associated functions and add test 2023-04-16 06:31:08 +00:00
align-offset.rs `assume` the runtime range of `align_offset` 2023-05-05 04:22:51 -07:00
align-struct.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
alloc-optimisation.rs Prevent insta-stable no alloc shim support 2023-05-11 14:35:09 +00:00
array-clone.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
array-codegen.rs Use `load`-`store` instead of `memcpy` for short integer arrays 2023-06-04 00:51:49 -07:00
array-equality.rs Merge two different equality specialization traits in `core` 2023-03-01 14:42:06 -08:00
array-map.rs Remove array_zip 2023-05-30 00:40:39 -07:00
ascii-char.rs Add the basic `ascii::Char` type 2023-05-03 22:09:33 -07:00
asm-clobber_abi.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-clobbers.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-may_unwind.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-multiple-options.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-options.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-powerpc-clobbers.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-sanitize-llvm.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
asm-target-clobbers.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
async-fn-debug-awaitee-field.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
async-fn-debug-msvc.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
async-fn-debug.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
atomic-operations.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
autovectorize-f32x4.rs Test from_fn autovectorizes 2023-05-30 20:45:40 -07:00
binary-search-index-no-bound-check.rs Stop checking for the absense of something that doesn't exist 2023-05-12 21:59:26 -07:00
bool-cmp.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
box-maybe-uninit-llvm14.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
box-maybe-uninit.rs codegen: do not require the uwtables attribute 2023-05-23 16:54:34 +02:00
bpf-alu32.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
branch-protection.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
c-variadic-copy.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
c-variadic-opt.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
c-variadic.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
call-llvm-intrinsics.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
call-metadata.rs codegen: allow extra attributes to functions when panic=abort 2023-05-23 16:54:30 +02:00
catch-unwind.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
cdylib-external-inline-fns.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cf-protection.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cfguard-checks.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cfguard-disabled.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cfguard-nochecks.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cfguard-non-msvc.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
codemodels.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
coercions.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cold-call-declare-and-call.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
comparison-operators-2-tuple.rs Use `partial_cmp` to implement tuple `lt`/`le`/`ge`/`gt` 2023-02-16 23:59:13 -08:00
comparison-operators-newtype.rs Put `noundef` on all scalars that don't allow uninit 2023-01-17 08:14:35 +01:00
const_scalar_pair.rs Explain the reason for why a test exists 2023-05-31 14:07:16 +00:00
consts.rs Fix codegen tests with hard-coded hashes 2023-04-05 15:59:29 +00:00
dealloc-no-unwind.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
debug-alignment.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
debug-column-msvc.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
debug-column.rs codegen: allow extra attributes to functions when panic=abort 2023-05-23 16:54:30 +02:00
debug-compile-unit-path.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
debug-limited.rs More in-depth documentation for the new debuginfo options 2023-03-31 07:28:39 -04:00
debug-line-directives-only.rs More in-depth documentation for the new debuginfo options 2023-03-31 07:28:39 -04:00
debug-line-tables-only.rs More in-depth documentation for the new debuginfo options 2023-03-31 07:28:39 -04:00
debug-linkage-name.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
debug-vtable.rs Fix test 2023-05-11 14:35:10 +00:00
debuginfo-constant-locals.rs Turn on ConstDebugInfo pass. 2023-04-22 23:41:48 +02:00
debuginfo-generic-closure-env-names.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
deduced-param-attrs.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
default-requires-uwtable.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
drop-in-place-noalias.rs drop-in-place-noalias test: needs -O to ensure attributes are added on nopt builders 2023-05-22 20:20:45 -04:00
drop.rs codegen: add needs-unwind to tests that require it 2023-05-23 16:54:35 +02:00
dst-vtable-align-nonzero.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
dst-vtable-size-range.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enable-lto-unit-splitting.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
enum-bounds-check-derived-idx.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-bounds-check-issue-13926.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-bounds-check-issue-82871.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-bounds-check.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-debug-clike.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-debug-niche-2.rs Fix codegen tests 2023-06-10 08:31:06 +00:00
enum-debug-niche.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-debug-tagged.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-discriminant-value.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-match.rs Update codegen test. 2023-04-14 16:26:11 +00:00
enum-u128.rs Add test 2023-06-10 16:58:51 +00:00
export-no-mangle.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
external-no-mangle-fns.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
external-no-mangle-statics.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
fastcall-inreg.rs Put `noundef` on all scalars that don't allow uninit 2023-01-17 08:14:35 +01:00
fatptr.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
fewer-names.rs Merge return place with other locals in CopyProp. 2023-05-14 12:06:34 +00:00
ffi-const.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
ffi-out-of-bounds-loads.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
ffi-pure.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
ffi-returns-twice.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
float_math.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
fn-impl-trait-self.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
foo.s Move /src/test to /tests 2023-01-11 09:32:08 +00:00
force-frame-pointers.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
force-no-unwind-tables.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
force-unwind-tables.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
frame-pointer.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
function-arguments-noopt.rs make PointerKind directly reflect pointer types 2023-02-06 11:46:32 +01:00
function-arguments.rs Make dyn* have the same scalar pair ABI as corresponding fat pointer 2023-02-18 19:47:34 +00:00
gdb_debug_script_load.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
generator-debug-msvc.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
generator-debug.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
generic-debug.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
global_asm.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
global_asm_include.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
global_asm_x2.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
i686-macosx-deployment-target.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
i686-no-macosx-deployment-target.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
inherit_overflow.rs inherit_overflow: adapt pattern to also work with v0 mangling 2023-03-15 14:22:26 -04:00
inline-always-works-always.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
inline-debuginfo.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
inline-function-args-debug-info.rs Preserve argument indexes when inlining MIR 2023-04-11 11:07:48 +10:00
inline-hint.rs Permit MIR inlining without #[inline] 2023-04-07 15:46:43 -04:00
instrument-coverage.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
instrument-mcount.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
integer-cmp.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
integer-overflow.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
internalize-closures.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
intrinsic-no-unnamed-attr.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
iter-repeat-n-trivial-drop.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
layout-size-checks.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
lifetime_start_end.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
link-dead-code.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
link_section.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
loads.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
local-generics-in-exe-internalized.rs Permit MIR inlining without #[inline] 2023-04-07 15:46:43 -04:00
lto-removes-invokes.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mainsubprogram.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mainsubprogramstart.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
match-optimized.rs Change `src/test` to `tests` in source files, fix tidy and tests 2023-01-11 09:32:13 +00:00
match-optimizes-away.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
match-unoptimized.rs Change `src/test` to `tests` in source files, fix tidy and tests 2023-01-11 09:32:13 +00:00
mem-replace-big-type.rs Merge return place with other locals in CopyProp. 2023-05-14 12:06:34 +00:00
mem-replace-simple-type.rs Use `load`-`store` instead of `memcpy` for short integer arrays 2023-06-04 00:51:49 -07:00
merge-functions.rs Update the minimum external LLVM to 14 2023-02-10 16:06:25 -08:00
mir-inlined-line-numbers.rs codegen: allow extra attributes to functions when panic=abort 2023-05-23 16:54:30 +02:00
mir_zst_stores.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
move-operands.rs Fix codegen tests 2023-02-14 19:21:58 -05:00
naked-functions.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
naked-nocoverage.rs update codegent test to be independent of panic strategy 2023-06-14 12:52:02 +02:00
naked-noinline.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
no-assumes-on-casts.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
no-dllimport-w-cross-lang-lto.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
no-jump-tables.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
no-plt.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noalias-box-off.rs make noalias-box-off filecheck more precise 2023-05-20 19:41:28 -04:00
noalias-box.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noalias-flag.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noalias-refcell.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noalias-rwlockreadguard.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noalias-unpin.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noreturn-uninhabited.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
noreturnflag.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
nounwind.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
nrvo.rs Disable nrvo mir opt 2023-05-08 03:55:41 -07:00
optimize-attr-1.rs typos 2023-04-17 09:16:07 +02:00
option-as-slice.rs ci: add a runner for vanilla LLVM 16 2023-04-16 11:50:20 -07:00
option-nonzero-eq.rs Also assume wrap-around discriminants in `as` MIR building 2023-05-18 10:28:36 -07:00
packed.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
panic-abort-windows.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
panic-in-drop-abort.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
panic-unwind-default-uwtable.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
personality_lifetimes.rs codegen: add needs-unwind to tests that require it 2023-05-23 16:54:35 +02:00
pgo-counter-bias.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
pgo-instrumentation.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
pic-relocation-model.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
pie-relocation-model.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
ptr-read-metadata.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
refs.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
repeat-trusted-len.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repr-transparent-aggregates-1.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
repr-transparent-aggregates-2.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
repr-transparent-aggregates-3.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repr-transparent-sysv64.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repr-transparent.rs tests: Add tests for LoongArch64 2023-04-30 00:06:26 +08:00
sanitizer-cfi-add-canonical-jump-tables-flag.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-add-enable-split-lto-unit-flag.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-checks-attr-no-sanitize.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-checks.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-attr-cfi-encoding.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-id-itanium-cxx-abi.rs Fix a codegen test 2023-06-22 15:36:46 +00:00
sanitizer-cfi-emit-type-metadata-itanium-cxx-abi-generalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-itanium-cxx-abi-normalized-generalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-itanium-cxx-abi-normalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-itanium-cxx-abi.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-emit-type-metadata-trait-objects.rs CFI: Fix encode_region: unexpected ReEarlyBound(0, 'a) 2023-05-23 16:44:03 +00:00
sanitizer-cfi-generalize-pointers.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-cfi-normalize-integers.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kasan-emits-instrumentation.rs Add `kernel-address` sanitizer support for freestanding targets 2023-02-14 20:54:25 -05:00
sanitizer-kcfi-add-kcfi-flag.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle-attr-no-sanitize.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle-itanium-cxx-abi-generalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle-itanium-cxx-abi-normalized-generalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle-itanium-cxx-abi-normalized.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle-itanium-cxx-abi.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-kcfi-operand-bundle.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sanitizer-kcfi-emit-type-metadata-trait-objects.rs CFI: Fix encode_region: unexpected ReEarlyBound(0, 'a) 2023-05-23 16:44:03 +00:00
sanitizer-memory-track-orgins.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sanitizer-no-sanitize-inlining.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sanitizer-no-sanitize.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sanitizer-recover.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
sanitizer-safestack-attr-check.rs Add SafeStack support to rustc 2023-05-26 15:18:54 -04:00
sanitizer_memtag_attr_check.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sanitizer_scs_attr_check.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
scalar-pair-bool.rs Put `noundef` on all scalars that don't allow uninit 2023-01-17 08:14:35 +01:00
set-discriminant-invalid.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
simd-wide-sum.rs simd-wide-sum test: adapt for LLVM 17 codegen change 2023-03-13 15:07:16 +00:00
simd_arith_offset.rs Fix codegen tests 2023-02-14 19:21:58 -05:00
slice-as_chunks.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice-indexing.rs Use `nuw` when calculating slice lengths from `Range`s 2023-03-05 15:15:22 -08:00
slice-init.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice-iter-fold.rs add codegen test for slice::Iter::fold 2023-06-12 23:47:08 +02:00
slice-iter-len-eq-zero.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice-iter-nonnull.rs Remove useless `assume`s from `slice::iter(_mut)` 2023-05-12 17:34:55 -07:00
slice-position-bounds-check.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice-ref-equality.rs Merge two different equality specialization traits in `core` 2023-03-01 14:42:06 -08:00
slice-reverse.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice-windows-no-bounds-check.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice_as_from_ptr_range.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
some-abis-do-extend-params-to-32-bits.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
some-global-nonnull.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sparc-struct-abi.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
split-lto-unit.rs Add cross-language LLVM CFI support to the Rust compiler 2023-05-03 22:41:29 +00:00
sse42-implies-crc32.rs Update the minimum external LLVM to 14 2023-02-10 16:06:25 -08:00
stack-probes-call.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
stack-probes-inline.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
stack-protector.rs tests: be even more permissive on attributes in one test 2023-06-23 09:48:00 -04:00
static-relocation-model-msvc.rs Add more codegen tests 2023-01-17 16:23:22 +01:00
staticlib-external-inline-fns.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
stores.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
swap-large-types.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
swap-simd-types.rs Use `load`-`store` instead of `memcpy` for short integer arrays 2023-06-04 00:51:49 -07:00
swap-small-types.rs Use `load`-`store` instead of `memcpy` for short integer arrays 2023-06-04 00:51:49 -07:00
target-cpu-on-functions.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
target-feature-overrides.rs Change `src/test` to `tests` in source files, fix tidy and tests 2023-01-11 09:32:13 +00:00
thread-local.rs tests: adapt for LLVM change 5b386b864c7619897c51a1da97d78f1cf6f3eff6 2023-04-17 10:53:18 -04:00
tied-features-strength.rs Create a structure to define the features from to_llvm_features. 2023-05-22 14:46:40 +01:00
to_vec.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
transmute-optimized.rs Add transmute optimization tests and some extra comments 2023-04-19 23:17:35 -07:00
transmute-scalar.rs `assume` value ranges in `transmute` 2023-04-13 00:12:39 -07:00
try_identity.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
try_question_mark_nop.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
tune-cpu-on-functions.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
tuple-layout-opt.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
unchecked-float-casts.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
unchecked_shifts.rs [libs] Simplify `unchecked_{shl,shr}` 2023-06-16 16:03:19 -07:00
uninit-consts.rs Update the minimum external LLVM to 14 2023-02-10 16:06:25 -08:00
union-abi.rs codegen: allow the dso_local attribute 2023-05-23 16:54:33 +02:00
unpadded-simd.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
unwind-and-panic-abort.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
unwind-extern-exports.rs codegen: add needs-unwind to tests that require it 2023-05-23 16:54:35 +02:00
unwind-extern-imports.rs codegen: add needs-unwind to tests that require it 2023-05-23 16:54:35 +02:00
used_with_arg.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
var-names.rs Merge return place with other locals in CopyProp. 2023-05-14 12:06:34 +00:00
vec-as-ptr.rs Remove the assume(!is_null) from Vec::as_ptr 2023-02-19 14:30:21 -05:00
vec-calloc-llvm14.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
vec-calloc.rs Auto merge of #106989 - clubby789:is-zero-num, r=scottmcm 2023-01-19 08:04:26 +00:00
vec-in-place.rs llvm 16 finally reconizes some additional vec in-place conversions as noops 2023-04-03 15:29:46 +02:00
vec-iter-collect-len.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
vec-optimizes-away.rs Prevent insta-stable no alloc shim support 2023-05-11 14:35:09 +00:00
vec-shrink-panik.rs use indexed loop instead of ptr bumping 2023-06-14 22:22:41 +02:00
vecdeque_no_panic.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
virtual-function-elimination-32bit.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
virtual-function-elimination.rs Fix a codegen test with some hard-coded hashes 2023-04-05 15:59:29 +00:00
wasm_casts_trapping.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
x86_64-macosx-deployment-target.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
x86_64-no-macosx-deployment-target.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
zip.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
zst-offset.rs Add more codegen tests 2023-01-17 16:23:22 +01:00

README.md

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

One extension worth noting is the use of revisions as custom prefixes for FileCheck. If your codegen test has different behavior based on the chosen target or different compiler flags that you want to exercise, you can use a revisions annotation, like so:

// revisions: aaa bbb
// [bbb] compile-flags: --flags-for-bbb

After specifying those variations, you can write different expected, or explicitly unexpected output by using <prefix>-SAME: and <prefix>-NOT:, like so:

// CHECK: expected code
// aaa-SAME: emitted-only-for-aaa
// aaa-NOT:                        emitted-only-for-bbb
// bbb-NOT:  emitted-only-for-aaa
// bbb-SAME:                       emitted-only-for-bbb