[PATCH] D74506: [SystemZ] Support the kernel backchain

Jonas Paulsson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 15 15:42:54 PST 2020


jonpa added a comment.

It seems that compiling a vararg function with gcc -mpacked-stack and -msoft-float places the stored GPRs in the default slots. However, by adding also -backchain (in addition to the previous two args) the GPRs are saved right below the backchain, which is at offset 152 (topmost).  This patch does currently not move up the GPRs in the case of saving the backchain, but. I am guessing it should (in order to have "constant and known distance from the backchain to the return address")? If so, I suppose the the front-end should emit a different offset for vararg reg arguments in case of packed-stack + soft-float. Could it be the same regardless of backchain, or?


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

https://reviews.llvm.org/D74506





More information about the llvm-commits mailing list