[PATCH] D101234: GlobalISel: Use DAG call lowering infrastructure in a more compatible way

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 4 10:45:37 PDT 2021


arsenm added inline comments.


================
Comment at: llvm/lib/CodeGen/GlobalISel/CallLowering.cpp:1122
+
+  return (SrcTy.isPointer() && DstTy.isScalar()) ||
+         (DstTy.isScalar() && SrcTy.isPointer());
----------------
paquette wrote:
> Why is `SrcTy.isPointer() == DstTy.isPointer()` not allowed?
The whole point of the function is to hack around using LLTs on top of the MVT infrastructure. One of these types is derived from an MVT and therefore can never be a pointer. If both were pointers, they would have to have the same address space to use a plain copy, and would be handled by the early exit for exact type match


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

https://reviews.llvm.org/D101234



More information about the llvm-commits mailing list