[PATCH] D76902: [PowerPC][AIX] ByVal formal argument support: multiple registers

Sean Fertile via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 2 08:06:31 PDT 2020


sfertile marked 2 inline comments as done.
sfertile added inline comments.


================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:7109
+        if (!ArgLocs[I].isRegLoc())
+          report_fatal_error("Passing ByVals split between registers and stack "
+                             "not yet implemented.");
----------------
cebowleratibm wrote:
> The first ArgLoc could be a mem loc, in which case the error is a bit odd.  I think it's sufficient to use "Passing ByVals on the stack is not yet implemented."  Change or leave it at your discretion.
If you mean the first ArgLoc for the ByVal argument is a MemLoc then that is handled elsewhere, hence why this diagnostic is specific to splitting between registers and stack.


================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:7113
+               "Expecting more RegLocs for ByVal argument.");
+        assert(I != End &&
+               "Expecting enough RegLocs to copy entire ByVal arg.");
----------------
cebowleratibm wrote:
> I think this assertion is redundant to the assertion that will occur on ArgLocs[I] anyways.
This should have come before any of the reads of `ArgLocs[I]`, I'll move it.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D76902





More information about the llvm-commits mailing list