diff options
author | David Sherwood <david.sherwood@arm.com> | 2021-07-19 15:18:05 +0100 |
---|---|---|
committer | David Sherwood <david.sherwood@arm.com> | 2021-08-10 09:17:21 +0100 |
commit | ce394161cb5d3fcca04b74d9a5dfafb80ff29542 (patch) | |
tree | a1624ab07db0e1184c9d688a4aef7c362c9ddc28 /llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp | |
parent | 0831f8bf79947230629fbf794ddd150ce1f2a328 (diff) | |
download | llvm-ce394161cb5d3fcca04b74d9a5dfafb80ff29542.zip llvm-ce394161cb5d3fcca04b74d9a5dfafb80ff29542.tar.gz llvm-ce394161cb5d3fcca04b74d9a5dfafb80ff29542.tar.bz2 |
[InstCombine] Add more complex folds for extractelement + stepvector
I have updated cheapToScalarize to also consider the case when
extracting lanes from a stepvector intrinsic. This required removing
the existing 'bool IsConstantExtractIndex' and passing in the actual
index as a Value instead. We do this because we need to know if the
index is <= known minimum number of elements returned by the stepvector
intrinsic. Effectively, when extracting lane X from a stepvector we
know the value returned is also X.
New tests added here:
Transforms/InstCombine/vscale_extractelement.ll
Differential Revision: https://reviews.llvm.org/D106358
Diffstat (limited to 'llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp')
0 files changed, 0 insertions, 0 deletions