[PATCH] D71442: [X86] Add calculation for elements in structures in getting uniform base for the Gather/Scatter intrinsic.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 17 18:45:53 PST 2019


craig.topper added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:4376
+    return false;
+  if (!dyn_cast<Constant>(GEP->getOperand(FinalIndex)) &&
+      !SDB->findValue(IndexVal))
----------------
use isa instead of dyn_cast if you don't need the casted pointer.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:4376
+    return false;
+  if (!dyn_cast<Constant>(GEP->getOperand(FinalIndex)) &&
+      !SDB->findValue(IndexVal))
----------------
craig.topper wrote:
> use isa instead of dyn_cast if you don't need the casted pointer.
Isn't GEP->getOperand(FinalIndex) already in IndexVal?


================
Comment at: llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:4386
+    const StructLayout *SL = DL.getStructLayout(STy);
+    auto *C = cast<Constant>(GTI.getOperand());
+    if (isa<VectorType>(C->getType())) {
----------------
Can this just be cast<Constant>(IndexVal)?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D71442





More information about the llvm-commits mailing list