[Mlir-commits] [mlir] [mlir][Vector] Fix scalable InsertSlice/ExtractSlice lowering (PR #124861)

Diego Caballero llvmlistbot at llvm.org
Fri Jan 31 09:42:52 PST 2025


dcaballe wrote:

> Have you checked the debug dump?

I checked with GDB

> If the bug is triggered by existing tests, shouldn't they be updated as part of this PR?

Just to make it clearer. With this PR we go from:

```
vector.insert_slice/extract_slice op -> vector.shuffle op -> chain of llvm extract/insert ops
```

to 

```
vector.insert_slice/extract_slice op -> chain of llvm extract/insert ops
```

so the output IR is "the same". The modified CHECK rules are needed because with the PR it looks like sometimes the llvm extract/insert ops are generated in a different order. That is, we go from:

```
llvm.extractvalue
llvm.insertvalue
llvm.extractvalue
llvm.insertvalue
```

to

```
llvm.extractvalue
llvm.extractvalue
llvm.insertvalue
llvm.insertvalue
```

There are no more CHECK rules that need to be modified as part of this fix.

We can of course test this `populate...` also in isolation by adding a new test pass. We can do that for this `populate...` and others but I wouldn't do that as part of this PR. I'll add a TODO, as suggested.

https://github.com/llvm/llvm-project/pull/124861


More information about the Mlir-commits mailing list