[all-commits] [llvm/llvm-project] 5de09e: [DAGCombiner][X86] Don't peek through ANDs on the ...
Craig Topper via All-commits
all-commits at lists.llvm.org
Sun Feb 28 13:01:57 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 5de09ef02e24d234d9fc0cd1c6dfe18a1bb784b0
https://github.com/llvm/llvm-project/commit/5de09ef02e24d234d9fc0cd1c6dfe18a1bb784b0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2021-02-28 (Sun, 28 Feb 2021)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/shift-double.ll
Log Message:
-----------
[DAGCombiner][X86] Don't peek through ANDs on the shift amount in matchRotateSub when called from MatchFunnelPosNeg.
Peeking through AND is only valid if the input to both shifts is
the same. If the inputs are different, then the original pattern
ORs the two values when the masked shift amount is 0. This is ok
if the values are the same since the OR would be a NOP which is
why its ok for rotate.
Fixes PR49365 and reverts PR34641
Differential Revision: https://reviews.llvm.org/D97637
More information about the All-commits
mailing list