rust/tests
bors 2836482241 Auto merge of #129283 - saethlin:unreachable-allocas, r=scottmcm
Don't alloca for unused locals

We already have a concept of mono-unreachable basic blocks; this is primarily useful for ensuring that we do not compile code under an `if false`. But since we never gave locals the same analysis, a large local only used under an `if false` will still have stack space allocated for it.

There are 3 places we traverse MIR during monomorphization: Inside the collector, `non_ssa_locals`, and the walk to generate code. Unfortunately, https://github.com/rust-lang/rust/pull/129283#issuecomment-2297925578 indicates that we cannot afford the expense of tracking reachable locals during the collector's traversal, so we do need at least two mono-reachable traversals. And of course caching is of no help here because the benchmarks that regress are incr-unchanged; they don't do any codegen.

This fixes the second problem in https://github.com/rust-lang/rust/issues/129282, and brings us anther step toward `const if` at home.
2024-09-21 13:48:14 +00:00
..
assembly Add arm64e-apple-tvos target 2024-09-20 18:53:09 +04:00
auxiliary
codegen Auto merge of #129283 - saethlin:unreachable-allocas, r=scottmcm 2024-09-21 13:48:14 +00:00
codegen-units Fix and enable disabled codegen-units tests 2024-08-10 14:03:27 -04:00
coverage Update the minimum external LLVM to 18 2024-09-18 13:53:31 -07:00
coverage-run-rustdoc coverage: Extract hole spans from HIR instead of MIR 2024-07-08 21:22:56 +10:00
crashes Rollup merge of #130598 - gurry:130310-improper-types-stack-overflow, r=compiler-errors 2024-09-21 07:22:47 +02:00
debuginfo Auto merge of #130052 - khuey:clear-dilocation-after-const-emission, r=michaelwoerister 2024-09-13 08:57:41 +00:00
incremental simd_shuffle: require index argument to be a vector 2024-09-14 14:43:24 +02:00
mir-opt Remove semi-nondeterminism of DefPathHash ordering from inliner 2024-09-16 21:41:15 -04:00
pretty Use doc(hidden) instead of allow(missing_docs) in the test harness 2024-09-11 12:14:35 +02:00
run-make Pass the current cargo to run-make tests 2024-09-20 15:47:36 -07:00
run-pass-valgrind rustfmt tests/run-pass-valgrind/. 2024-06-04 09:53:02 +10:00
rustdoc rustdoc: rename issue-\d+.rs tests to have meaningful names 2024-09-12 13:47:51 -07:00
rustdoc-gui Add GUI tests for line numbers padding 2024-09-20 16:02:32 +02:00
rustdoc-js rustdoc-search: allow trailing Foo -> arg search 2024-09-05 17:58:05 -07:00
rustdoc-js-std rustdoc-search: allow trailing Foo -> arg search 2024-09-05 17:58:05 -07:00
rustdoc-json rustdoc: normalise type/field names in rustdoc-json-types/jsondoclint 2024-09-01 23:58:08 +03:00
rustdoc-ui rustdoc: use the correct span for doctests 2024-09-19 13:57:44 -07:00
ui Auto merge of #130599 - jieyouxu:snake_case_binary_cleanup, r=petrochenkov 2024-09-21 11:16:38 +00:00
ui-fulldeps Auto merge of #130483 - matthiaskrgr:rollup-q1r0g0y, r=matthiaskrgr 2024-09-17 19:37:03 +00:00
COMPILER_TESTS.md