diff options
| author | Trevor Gross <t.gross35@gmail.com> | 2025-05-27 20:28:31 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-27 20:28:31 -0400 |
| commit | ee4efa1f8679ebc56db040d19123deb3de49c24b (patch) | |
| tree | 5eea0129a046a725c0da5a9f02bc6d29d43ae42e /compiler/rustc_codegen_gcc | |
| parent | 0c2fbe53a69ae8e3b0b779fe5e05aacb0edd7143 (diff) | |
| parent | be5d6c5425e8dfdf1662225fb23d6deb0e124dd4 (diff) | |
| download | rust-ee4efa1f8679ebc56db040d19123deb3de49c24b.tar.gz rust-ee4efa1f8679ebc56db040d19123deb3de49c24b.zip | |
Rollup merge of #141252 - dianqk:gvn-repeat-index, r=saethlin
gvn: bail out unavoidable non-ssa locals in repeat
Fixes #141251.
We cannot transform `*elem` to `array[idx1]` in the following code, as `idx1` has already been modified.
```rust
mir! {
let array;
let elem;
{
array = [*val; 5];
elem = &array[idx1];
idx1 = idx2;
RET = *elem;
Return()
}
}
```
Perhaps I could transform it to `array[0]`, but I prefer the conservative approach.
r? mir-opt
Diffstat (limited to 'compiler/rustc_codegen_gcc')
0 files changed, 0 insertions, 0 deletions
