aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/llvm-objdump.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@sifive.com>2022-05-16 09:27:43 -0700
committerCraig Topper <craig.topper@sifive.com>2022-05-16 09:27:44 -0700
commit1c4880a2d39fbd95edced0dd97c34a9f53bf62ff (patch)
tree336664fb7135eca824b8ae4dcf1d393cec6c10d6 /llvm/tools/llvm-objdump/llvm-objdump.cpp
parente6fc8454bee5dc89be27fe1db826fb0bb30d74aa (diff)
downloadllvm-1c4880a2d39fbd95edced0dd97c34a9f53bf62ff.zip
llvm-1c4880a2d39fbd95edced0dd97c34a9f53bf62ff.tar.gz
llvm-1c4880a2d39fbd95edced0dd97c34a9f53bf62ff.tar.bz2
[TargetLowering] Expand the last stage of i16 popcnt using shift+add+and instead of mul+shift.
If we use multiply it would be with 0x0101 which is 1 more than a power of 2. On some targets we would expand this to shl+add. By avoiding the multiply earlier, we can generate better code. Note, PowerPC doesn't do the shl+add expansion of multiply so one of the tests increased in instruction count. Limiting to scalars because it almost always increased the number of instructions in vector tests. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D125638
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions