Commit Graph

24 Commits

Author SHA1 Message Date
Matthew Jasper a277c901d9 Remove MIR unsafe check
This also remove safety information from MIR.
2024-04-03 08:50:12 +00:00
Nadrieril d1d9aa3108 Consistently merge simplifiable or-patterns 2024-03-25 23:52:17 +01:00
DianQK 3d7f8b4e5b
Get all variants to eliminate the default branching if we cannot get the layout of type 2024-03-07 22:58:51 +08:00
许杰友 Jieyou Xu (Joe) 6e48b96692
[AUTO_GENERATED] Migrate compiletest to use `ui_test`-style `//@` directives 2024-02-22 16:04:04 +00:00
Scott McMurray 23483664a2 Split out `option::unwrap_failed` like we have `result::unwrap_failed`
...and like `option::expect_failed`
2024-01-14 12:45:01 -08:00
Camille GILLOT 4ff03cd1a4 Allow to run filecheck in mir-opt tests. 2023-10-19 15:51:52 +00:00
Camille GILLOT 27d6a57e58 Preserve DebugInfo in DeadStoreElimination. 2023-10-06 15:46:11 +00:00
Camille GILLOT e63d19c4dd Remove mir::LocalDecl::internal. 2023-10-04 17:55:15 +00:00
Camille GILLOT 933b618360 Revert "Implement references VarDebugInfo."
This reverts commit 2ec0071913.
2023-08-17 17:02:04 +00:00
Camille GILLOT f5feb3e3ca Turn copy into moves during DSE. 2023-07-19 09:59:12 +00:00
Camille GILLOT b74a144a5f Enable by default. 2023-07-10 16:01:18 +00:00
Gary Guo 19ce326a08 Bless tests 2023-06-23 18:36:25 +01:00
Ben Kimock 0a1fa411ed Remove comments from mir-opt MIR dumps 2023-06-15 15:19:11 -04:00
Pietro Albini 4668123945
bless mir-opt
To reproduce the changes in this commit locally:

- Run `./x test tidy` and remove all the output files not associated
  with a test file anymore, as reported by tidy.
- Run `./x test tests/mir-opt --bless` to generate the new outputs.
2023-06-12 09:34:17 +02:00
Pietro Albini 070cc836e9
properly mark tests that require panic=abort 2023-06-12 09:34:15 +02:00
Scott McMurray d69725d5d5 Normalize block and local orders in mir-opt tests
Since this only affects `PreCodegen MIR, and it would be nice for that to be resilient to permutations of things that don't affect the actual semantic behaviours.
2023-05-21 17:48:37 -07:00
Wesley Wiser 4e8b642646 Turn on ConstDebugInfo pass. 2023-04-22 23:41:48 +02:00
Gary Guo 04126398c2 Ignore many tests on wasm32 2023-04-06 10:08:07 +01:00
Scott McMurray 64cce5fc7d Add `CastKind::Transmute` to MIR
Updates `interpret`, `codegen_ssa`, and `codegen_cranelift` to consume the new cast instead of the intrinsic.

Includes `CastTransmute` for custom MIR building, to be able to test the extra UB.
2023-03-22 15:15:41 -07:00
Camille GILLOT 19a8bb16c8 Generalize operation. 2023-03-13 18:22:55 +00:00
Ben Kimock 640ede7b0a Enable CopyProp by default, tune the impl a bit 2023-02-12 13:23:53 -05:00
Camille GILLOT 6a0b218161 Stop deaggregating enums in MIR. 2023-02-02 23:20:27 +00:00
Ulrich Weigand 6885733c41 Fix mir-opt tests for big-endian platforms
The test cases src/test/mir-opt/building/custom/consts.rs and
src/test/mir-opt/const_prop/mutable_variable_no_prop.rs are
currently failing on big-endian platforms as the binary encoding
of some constants is hard-coded in the MIR test files.  Fix this
by choosing constant values that have the same encoding on big-
and little-endian platforms.

The test case src/test/mir-opt/issues/issue_75439.rs is failing
as well, but since the purpose of the test is to validate handling
of big-endian integer encodings on a little-endian platform, it does
not make much sense to run it on big-endian platforms in the first
place - we can just ignore it there.

Fixed part of https://github.com/rust-lang/rust/issues/105383.
2023-01-12 18:05:30 +01:00
Albert Larsan cf2dff2b1e
Move /src/test to /tests 2023-01-11 09:32:08 +00:00