[PATCH] D120094: [CallingConv] Generate isCCArgumentReg() predicate via tablegen

Ulrich Weigand via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 24 02:24:41 PST 2022


uweigand added inline comments.


================
Comment at: llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp:480
+  else
+    llvm_unreachable("Unknown Calling Convention!");
+
----------------
void wrote:
> uweigand wrote:
> > Thanks for reworking this, this looks much simpler.   However, this version now solely returns **general purpose registers** used for argument passing.   The SystemZ calling convention may in addition also use floating-point registers (and, for XPLINK64, vector registers) to pass arguments of certain types; these are ignored by this implementation.
> > 
> > Is the semantics of `isCCArgRegister` such that only GPRs *should* be returned?   In that case, I think this should be clearly documented (and also, some of the other implementations may have to be adapted?).   However, if **all** registers need to be returned here, then you'll also have to check those other lists mentioned above.
> I ARE DUMM! I didn't look at your comment above well-enough. Instead, I looked at some of the other code in the SystemZ directory. My mistake. I'll fix this.
SystemZ changes LGTM now, thanks!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D120094



More information about the llvm-commits mailing list