[PATCH] D110508: [SelectionDAG] Fix shift libcall ABI mismatch in shift-amount argument

Bjorn Pettersson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 27 13:40:09 PDT 2021


bjope added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp:4001
+        EVT::getIntegerVT(*DAG.getContext(), DAG.getLibInfo().getIntSize());
+    SDValue ShAmt = DAG.getAnyExtOrTrunc(N->getOperand(1), dl, ShAmtTy);
+    SDValue Ops[2] = {N->getOperand(0), ShAmt};
----------------
AnyExt seem a bit weird as I assume the lib function will use all bits. I think getZExtOrTrunc would be a more correct choice here.


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

https://reviews.llvm.org/D110508



More information about the llvm-commits mailing list