This work has fallen out from D134648 as a requirement to loosen
the "constness" of vscale.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| llvm/lib/CodeGen/CodeGenPrepare.cpp | ||
|---|---|---|
| 2353–2355 | Just being able to remove this wholesale seems optimistic but it doesn't seem to have any relevant test coverage. | |
| llvm/test/Transforms/InstSimplify/vscale-inseltpoison.ll | ||
| 157–160 | These tests look like blind copies from vscale.ll and have no insert_eltement_poison related requirements so I've just remove them. | |
LGTM. This is slightly non-optimal in terms of constant folding (what we really want is to export a GEP-folding API in ConstantFolding and not force going through ConstExpr + ConstantFoldConstant), but I don't think we need to block on that.
| llvm/test/Transforms/InstSimplify/vscale.ll | ||
|---|---|---|
| 199 | Any reason for this change? | |
This should also get a LangRef mention that vscale is not valid in constant expression GEPs.
| llvm/test/Transforms/InstSimplify/vscale.ll | ||
|---|---|---|
| 199 | I wanted to show that even though all operands are constant this form of GEP is still not constant foldable. I figured this to be a better version of the original test, but I might have missed some subtlety that means an extra test is more appropriate? | |
| llvm/test/Transforms/InstSimplify/vscale.ll | ||
|---|---|---|
| 199 | Oh I see, that makes sense. | |
| llvm/lib/CodeGen/CodeGenPrepare.cpp | ||
|---|---|---|
| 2353–2355 | Just a note to say I've followed this advice and landed the CodeGenPrepare change via https://reviews.llvm.org/rGadbdf273efd5 and will await any fallout before landing the rest of this patch, probably towards the end of next week. | |
Just being able to remove this wholesale seems optimistic but it doesn't seem to have any relevant test coverage.