Search through associative operators for BMI patterns (BLSI, BLSR, BLSMSK)
(a & (-b)) & b is often lowered as: %sub = sub i32 0, %b %and0 = and i32 %sub, %a %and1 = and i32 %and0, %b Which won't get detected by the BLSI pattern as b & -b are never in the same SDNode. This patch will do a small search through associative operators and try and place BMI patterns in the same node so they will hit the pattern. Reviewed By: pengfei Differential Revision: https://reviews.llvm.org/D141179
Loading
Please sign in to comment