[PATCH] D152116: [DAGCombiner] Transform `(icmp eq/ne (and X,C0),(shift X,C1))` to use rotate or to getter constants.

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 15 03:02:47 PDT 2023


RKSimon added inline comments.


================
Comment at: llvm/include/llvm/CodeGen/TargetLowering.h:818
+  // If ShiftOpc (current Opcode) is returned, do nothing.
+  virtual unsigned preferedOpcodeForCmpEqOperandPieces(
+      EVT VT, unsigned ShiftOpc, bool MayTransformRotate,
----------------
This function name seems very general and yet the transform seems very specific.


================
Comment at: llvm/include/llvm/CodeGen/TargetLowering.h:819
+  virtual unsigned preferedOpcodeForCmpEqOperandPieces(
+      EVT VT, unsigned ShiftOpc, bool MayTransformRotate,
+      const APInt &ShiftOrRotateAmt,
----------------
Maybe EVT /*VT*/ style would be better than all the (void) ?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D152116



More information about the llvm-commits mailing list