[PATCH] D75553: [ARM] Constant long shift combines

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 4 02:20:29 PST 2020


samparker added inline comments.


================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:14090
+
+  // Turn X << -C -> X >> C and viceversa. The negative shifts can come up from
+  // uses of the intrinsics.
----------------
Well this answers my question in the other review...


================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:14102
+      unsigned NewOpcode =
+          N->getOpcode() == ARMISD::LSLL ? ARMISD::LSRL : ARMISD::LSLL;
+      SDValue NewShift = DAG.getNode(NewOpcode, DL, N->getVTList(), Op0, Op1,
----------------
And why don't we have to worry about arithmetic shifts?


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

https://reviews.llvm.org/D75553





More information about the llvm-commits mailing list