[PATCH] D33017: [PPC] Properly update register save area offsets

Krzysztof Parzyszek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 15 07:01:03 PDT 2017


kparzysz added a comment.

I don't have access to PPC hardware so there isn't much that I can do in terms of testing other than running "check-llvm".



================
Comment at: lib/Target/PowerPC/PPCFrameLowering.cpp:1790
+
+    unsigned BP = RegInfo->getBaseRegister(MF);
+    if (PPC::G8RCRegClass.contains(BP)) {
----------------
nemanjai wrote:
> I am frankly not familiar enough with the frame lowering code or the concept of the base pointer, but I think a comment here is in order.
> I suppose that when a function has a base pointer and uses no callee-saved registers, we need a slot for the base pointer.
The base pointer is a "stack pointer" that is aligned to a boundary that exceeds the natural stack alignment.  The code added in this patch checks if it's a 32- or 64-bit register to update the correct variable.


Repository:
  rL LLVM

https://reviews.llvm.org/D33017





More information about the llvm-commits mailing list