| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2025-05-21 | Add some track_caller info to precondition panics | Ben Kimock | -1/+1 | |
| 2025-04-02 | Make slice iterator constructors unstably const | Daniel Bloom | -14/+12 | |
| 2025-01-18 | Update tests for std::simd subtree sync | Caleb Zulawski | -1/+1 | |
| 2025-01-15 | Less unsafe in `dangling`/`without_provenance` | Scott McMurray | -6/+8 | |
| 2025-01-08 | Refactor the cast-then-cast cases together, and support transmute-then-transmute | Scott McMurray | -3/+5 | |
| 2025-01-08 | [mir-opt] GVN some more transmute cases | Scott McMurray | -70/+60 | |
| We already did `Transmute`-then-`PtrToPtr`; this adds the nearly-identical `PtrToPtr`-then-`Transmute`. It also adds `transmute(Foo(x))` → `transmute(x)`, when `Foo` is a single-field transparent type. That's useful for things like `NonNull { pointer: p }.as_ptr()`. Found these as I was looking at MCP807-related changes. | ||||
| 2024-12-03 | Update `NonZero` and `NonNull` to not field-project (per MCP807) | Scott McMurray | -62/+70 | |
| 2024-09-27 | Add 'from_ref' and 'from_mut' constructors to 'core::ptr::NonNull'; | Gabriel Bjørnager Jensen | -10/+12 | |
| 2024-08-18 | Bless *all* the mir-opt tests | Scott McMurray | -12/+12 | |
| 2024-07-01 | Avoid MIR bloat in inlining | Scott McMurray | -205/+32 | |
| In 126578 we ended up with more binary size increases than expected. This change attempts to avoid inlining large things into small things, to avoid that kind of increase, in cases when top-down inlining will still be able to do that inlining later. | ||||
| 2024-06-23 | Make MIR inlining costs in build-std independent of config.toml | Scott McMurray | -32/+205 | |
| 2024-06-20 | Replace `NormalizeArrayLen` with `GVN` | Scott McMurray | -1/+1 | |
| GVN is actually on in release, and covers all the same things (or more), with `LowerSliceLen` changed to produce `PtrMetadata`. | ||||
| 2024-06-19 | Ban `ArrayToPointer` and `MutToConstPointer` from runtime MIR | Scott McMurray | -1/+1 | |
| Apparently MIR borrowck cares about at least one of these for checking variance. In runtime MIR, though, there's no need for them as `PtrToPtr` does the same thing. (Banning them simplifies passes like GVN that no longer need to handle multiple cast possibilities.) | ||||
| 2024-06-10 | Add `SingleUseConsts` mir-opt pass | Scott McMurray | -50/+46 | |
| 2024-05-31 | Revert "Auto merge of #115105 - cjgillot:dest-prop-default, r=oli-obk" | Camille GILLOT | -35/+39 | |
| This reverts commit cfb730450f847bb622243eaaab15e77e58d91767, reversing changes made to 91c0823ee63e793d990bb9fed898dc95b5d6db51. | ||||
| 2024-05-29 | Enable DestinationPropagation by default. | Camille GILLOT | -39/+35 | |
| 2024-04-18 | At debuginfo=0, don't inline debuginfo when inlining | Scott McMurray | -83/+61 | |
| 2024-04-03 | Remove MIR unsafe check | Matthew Jasper | -30/+20 | |
| This also remove safety information from MIR. | ||||
| 2024-03-10 | MIR printing: print the path of uneval'd const; refer to promoteds in a ↵ | Ralf Jung | -1/+1 | |
| consistent way | ||||
| 2024-02-21 | rename ptr::invalid -> ptr::without_provenance | Ralf Jung | -1/+1 | |
| also introduce ptr::dangling matching NonNull::dangling | ||||
| 2024-02-09 | Fold consecutive PtrToPtr casts. | Camille GILLOT | -83/+75 | |
| 2024-02-08 | Bless/fix tests | Ben Kimock | -125/+119 | |
| 2024-01-11 | Sandwich MIR optimizations between DSE. | Camille GILLOT | -8/+11 | |
| 2023-11-26 | Update std::simd usage and test outputs | Caleb Zulawski | -5/+5 | |
| 2023-10-06 | Preserve DebugInfo in DeadStoreElimination. | Camille GILLOT | -24/+25 | |
| 2023-08-24 | make MIR less verbose | Ralf Jung | -1/+1 | |
| 2023-08-24 | bless more mir-opt tests by hand | Ralf Jung | -1/+1 | |
| 2023-08-17 | Bless mir-opt tests. | Camille GILLOT | -7/+8 | |
| 2023-07-20 | Get `!nonnull` metadata consistently in slice iterators, without needing ↵ | Scott McMurray | -2/+2 | |
| `assume`s | ||||
| 2023-07-10 | Enable by default. | Camille GILLOT | -31/+29 | |
| 2023-07-07 | Rename `adjustment::PointerCast` and variants using it to `PointerCoercion` | Nilstrieb | -1/+1 | |
| It makes it sound like the `ExprKind` and `Rvalue` are supposed to represent all pointer related casts, when in reality their just used to share a some enum variants. Make it clear there these are only coercion to make it clear why only some pointer related "casts" are in the enum. | ||||
| 2023-06-23 | Bless tests | Gary Guo | -1/+1 | |
| 2023-06-15 | Remove comments from mir-opt MIR dumps | Ben Kimock | -139/+128 | |
| 2023-06-12 | bless mir-opt | Pietro Albini | -0/+217 | |
| 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. | ||||
