[all-commits] [llvm/llvm-project] 1e4d88: [InstCombine] matchFunnelShift - add support for n...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Wed Oct 14 02:44:06 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 1e4d882f9afe3fa5d0085f056b56eec21eb2c087
https://github.com/llvm/llvm-project/commit/1e4d882f9afe3fa5d0085f056b56eec21eb2c087
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2020-10-14 (Wed, 14 Oct 2020)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/funnel.ll
M llvm/test/Transforms/InstCombine/rotate.ll
Log Message:
-----------
[InstCombine] matchFunnelShift - add support for non-uniform vectors containing undefs.
Replace m_SpecificInt with m_APIntAllowUndef to matching splats containing undefs, then use ConstantExpr::mergeUndefsWith to merge the undefs together in the result.
The undef funnel shift amounts are getting replaced with zero later on - I'll address this in a later patch, otherwise we lose potential shift by splat value patterns.
More information about the All-commits
mailing list