about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc
diff options
context:
space:
mode:
authorTrevor Gross <t.gross35@gmail.com>2025-05-27 20:28:31 -0400
committerGitHub <noreply@github.com>2025-05-27 20:28:31 -0400
commitee4efa1f8679ebc56db040d19123deb3de49c24b (patch)
tree5eea0129a046a725c0da5a9f02bc6d29d43ae42e /compiler/rustc_codegen_gcc
parent0c2fbe53a69ae8e3b0b779fe5e05aacb0edd7143 (diff)
parentbe5d6c5425e8dfdf1662225fb23d6deb0e124dd4 (diff)
downloadrust-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