[PATCH] D146951: [Xtensa] Support for variable arguments

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 17 15:22:14 PDT 2023


arsenm requested changes to this revision.
arsenm added a comment.
This revision now requires changes to proceed.
Herald added a subscriber: sstefan1.

Needs tests



================
Comment at: llvm/lib/Target/Xtensa/XtensaISelLowering.cpp:410
+    XtensaFI->setVarArgsStackOffset(MFI.CreateFixedObject(
+        PtrVT.getSizeInBits() / 8, CCInfo.getNextStackOffset(), true));
+
----------------
getStoreSize


================
Comment at: llvm/lib/Target/Xtensa/XtensaISelLowering.cpp:436
+      const unsigned Reg = RegInfo.createVirtualRegister(RC);
+      unsigned FrameReg = Subtarget.getRegisterInfo()->getFrameRegister(MF);
+
----------------
subtarget should be available in the class already


================
Comment at: llvm/lib/Target/Xtensa/XtensaISelLowering.cpp:451-453
+      cast<StoreSDNode>(Store.getNode())
+          ->getMemOperand()
+          ->setValue((Value *)nullptr);
----------------
this is broken, you shouldn't do this


================
Comment at: llvm/lib/Target/Xtensa/XtensaMachineFunctionInfo.h:34
+  unsigned getVarArgsFirstGPR() const { return VarArgsFirstGPR; }
+  void setVarArgsFirstGPR(unsigned GPR) { VarArgsFirstGPR = GPR; }
+
----------------
Register / MCRegister instead of unsigned?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D146951



More information about the llvm-commits mailing list