about summary refs log tree commit diff
path: root/src/test/mir-opt/nll
AgeCommit message (Collapse)AuthorLines
2023-01-11Move /src/test to /testsAlbert Larsan-309/+0
2022-12-09Remove unneeded field from `SwitchTargets`Jakob Degen-2/+2
2022-11-02Ban dashes in miropt test file namesJakob Degen-125/+125
2022-09-08Remove ReEmptyJack Huey-38/+35
2022-07-28bless mir opt testsNilstrieb-109/+109
2022-07-09tweak names and output and blessRalf Jung-12/+12
2022-06-14manually bless 32-bit mir-opt testsb-naber-2/+2
2022-06-14implement valtrees as the type-system representation for constant valuesb-naber-2/+2
2022-06-14Rename the `ConstS::val` field as `kind`.Nicholas Nethercote-2/+2
And likewise for the `Const::val` method. Because its type is called `ConstKind`. Also `val` is a confusing name because `ConstKind` is an enum with seven variants, one of which is called `Value`. Also, this gives consistency with `TyS` and `PredicateS` which have `kind` fields. The commit also renames a few `Const` variables from `val` to `c`, to avoid confusion with the `ConstKind::Value` variant.
2022-06-03Fully stabilize NLLJack Huey-4/+4
2022-04-19Add an explicit `Span` field to `OutlivesConstraint`Aaron Hill-12/+12
Previously, we would retrieve the span from the `Body` using the `locations` field. However, we may end up changing the `locations` field when moving a constraint from a promoted to a different body. We now store the original `Span` in a dedication field, so that changes to the `locations` do not affect the quality of our diagnostics.
2022-03-09manually bless 32-bit stderrb-naber-7/+7
2022-03-09bless testsb-naber-8/+8
2021-12-31Ensure that early-bound function lifetimes are always 'local'Aaron Hill-2/+2
During borrowchecking, we treat any free (early-bound) regions on the 'defining type' as `RegionClassification::External`. According to the doc comments, we should only have 'external' regions when checking a closure/generator. However, a plain function can also have some if its regions be considered 'early bound' - this occurs when the region is constrained by an argument, appears in a `where` clause, or in an opaque type. This was causing us to incorrectly mark these regions as 'external', which caused some diagnostic code to act as if we were referring to a 'parent' region from inside a closure. This PR marks all instantiated region variables as 'local' when we're borrow-checking something other than a closure/generator/inline-const.
2021-09-02Bless 32bit MIR opt testsMatthew Jasper-15/+15
2021-09-01Fix drop handling for `if let` expressionsMatthew Jasper-15/+15
MIR lowering for `if let` expressions is now more complicated now that `if let` exists in HIR. This PR adds a scope for the variables bound in an `if let` expression and then uses an approach similar to how we handle loops to ensure that we reliably drop the correct variables.
2021-04-02Fix diagnostic issue when using FakeReads in closuresRoxane-6/+6
2021-01-07Reintroduce hir::ExprKind::IfCaio-76/+66
2020-10-04Bless mir-opt testsAaron Hill-98/+98
2020-09-26Bless mir-opt 32-bit testsvarkor-1/+1
2020-09-26Bless mir-opt testsvarkor-1/+1
2020-09-17Rename 32 bit mir files to be more tool friendlyNixon Enraght-Moony-0/+0
See #75746
2020-09-17Rename 64 bit mir files to be more tool friendlyNixon Enraght-Moony-0/+0
See #75746
2020-08-21Suppress "const" prefix of FnDef in MIR dumpLzu Tao-4/+4
2020-08-20Suppress MIR comments of Unit typeLzu Tao-24/+0
2020-08-20Suppress MIR comments for FnDef in ty::ConstLzu Tao-12/+0
2020-08-17Update MIR tests with comment verbosity fixAustin Lasher-78/+0
2020-07-29Move mir-opt tests to toplevelXavier Denis-0/+0
2020-07-29add crate name to mir dumpsXavier Denis-2/+2
2020-06-07rename FalseEdges -> FalseEdgeRalf Jung-2/+2
2020-06-04Revert "Bless mir-opt tests"Felix S. Klock II-106/+106
This reverts commit a030c923412b0a0f7b02a585debe7bf60357370d.
2020-05-09Bless mir-opt testsMatthew Jasper-106/+106
2020-04-21update ref testNiko Matsakis-71/+72
2020-04-16reserve variable for empty root regionNiko Matsakis-85/+89
2020-04-14update 32 bit mir-opt testsBastian Kauschke-2/+14
2020-04-13bless mir opt testsBastian Kauschke-2/+14
2020-04-11Use write!-style syntax for MIR assert terminatorrobojumper-2/+2
2020-04-07Add EMIT_MIR_FOR_EACH_BIT_WIDTH to tests that need it.Ana-Maria Mihalache-61/+220
2020-04-07--bless more mir-opt tests.Ana-Maria Mihalache-44/+213
2019-11-27rustc: move debug info from LocalDecl and UpvarDecl into a dedicated ↵Eduard-Mihai Burtescu-0/+4
VarDebugInfo.
2019-06-25Use `as_temp` to evaluate statement expressionsMatthew Jasper-3/+3
2019-06-13Create fewer basic blocks in match MIR loweringMatthew Jasper-3/+3
2019-05-10Adjust mir-opt tests for new HIR without IfMazdak Farrokhzad-3/+3
2019-04-24Rollup merge of #56278 - eddyb:mir-debuginfo-proof, r=nikomatsakisMazdak Farrokhzad-2/+2
Future-proof MIR for dedicated debuginfo. This is #56231 without the last commit (the one that actually moves to `VarDebuginfo`). Nothing should be broken, but it should no longer depend on debuginfo for anything else. r? @nikomatsakis
2019-04-23rustc_mir: create the `let` and "remainder" scopes in source order.Eduard-Mihai Burtescu-2/+2
2019-04-23Remove unnecessary ignore-tidy-linelengthvarkor-1/+0
2018-12-25Remove licensesMark Rousskov-20/+0
2018-09-18Update mir-opt test suiteRémy Rakic-3/+3
2018-09-10optimize `let x: T = ..` to avoid a temporaryNiko Matsakis-38/+0
For some weird reason this fixes `intrinsic-move-val`. It also affects various test heuristics. I removed one test (`reborrow_basic`) that didn't seem to really be testing anything in particular anymore, compared to all the other tests we've got.
2018-09-06Fix testsWesley Wiser-1/+1