[all-commits] [llvm/llvm-project] eb0e19: [TargetLowering] SimplifyDemandedBits - call Simpl...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Sat Jan 4 05:16:13 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: eb0e1978df7b9e7df3e645bb48fbf655f8aab69a
https://github.com/llvm/llvm-project/commit/eb0e1978df7b9e7df3e645bb48fbf655f8aab69a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2020-01-04 (Sat, 04 Jan 2020)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll
M llvm/test/CodeGen/ARM/dagcombine-anyexttozeroext.ll
M llvm/test/CodeGen/Thumb2/lsll0.ll
M llvm/test/CodeGen/Thumb2/mve-vld3.ll
M llvm/test/CodeGen/Thumb2/mve-vld4.ll
M llvm/test/CodeGen/WebAssembly/simd-arith.ll
M llvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
M llvm/test/CodeGen/X86/promote-vec3.ll
M llvm/test/CodeGen/X86/vec_smulo.ll
M llvm/test/CodeGen/X86/vec_umulo.ll
M llvm/test/CodeGen/X86/xor.ll
Log Message:
-----------
[TargetLowering] SimplifyDemandedBits - call SimplifyMultipleUseDemandedBits for ISD::EXTRACT_VECTOR_ELT (REAPPLIED)
This patch attempts to peek through vectors based on the demanded bits/elt of a particular ISD::EXTRACT_VECTOR_ELT node, allowing us to avoid dependencies on ops that have no impact on the extract.
In particular this helps remove some unnecessary scalar->vector->scalar patterns.
The wasm shift patterns are annoying - @tlively has indicated that the wasm vector shift codegen are to be refactored in the near-term and isn't considered a major issue.
Reapplied after reversion at rL368660 due to PR42982 which was fixed at rGca7fdd41bda0.
Differential Revision: https://reviews.llvm.org/D65887
More information about the All-commits
mailing list