[PATCH] D136582: [InstCombine] fold sub pattern to and

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 24 03:17:41 PDT 2022


RKSimon added a comment.

vector test?



================
Comment at: llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp:2012
+      if (C2AndC3 == *Op0C && (*C3 - CMinus1).isPowerOf2() &&
+          (C2AddC3 & CMinus1).eq(CMinus1))
+        return BinaryOperator::CreateAnd(X, ConstantInt::get(I.getType(), *C2));
----------------
use C2AddC3 .isSubsetOf(CMinus1)?


================
Comment at: llvm/test/Transforms/InstCombine/sub.ll:2122
 }
+
+define i10 @sub_to_and(i10 %x) {
----------------
Add a comment describing the general fold


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136582/new/

https://reviews.llvm.org/D136582



More information about the llvm-commits mailing list