aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/IR/ConstantRangeTest.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2021-11-12 16:47:43 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2021-11-12 16:48:10 +0000
commit6bb71738e26ca3ba4f2894bf6542bf33625a52c0 (patch)
tree0577e59fbd12fe9b3f01d3b0606d6e3abc1a3b1a /llvm/unittests/IR/ConstantRangeTest.cpp
parentbd81c39107e35ffa89df7df573f2719dee59ecef (diff)
downloadllvm-6bb71738e26ca3ba4f2894bf6542bf33625a52c0.zip
llvm-6bb71738e26ca3ba4f2894bf6542bf33625a52c0.tar.gz
llvm-6bb71738e26ca3ba4f2894bf6542bf33625a52c0.tar.bz2
[X86] convertShiftLeftToScale - improve vXi8 constant handling
Add support for v32i8/v64i8 converting shift-by-constant to multiply-by-constant. This helps us avoid the generic vXi8 shift lowering, and a lot of VPBLENDVB ops which can be particularly slow. We also needed to reorder a few shift lowering patterns to prevent regressions, particularly for XOP+AVX2 (Excavator) targets (which can split to fast v16i8 shifts) and AVX512-BWI targets (which prefers to extend to fast v32i16 shifts).
Diffstat (limited to 'llvm/unittests/IR/ConstantRangeTest.cpp')
0 files changed, 0 insertions, 0 deletions