[PATCH] D74506: [SystemZ]  Support the kernel backchain
    Jonas Paulsson via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Feb 12 13:47:07 PST 2020
    
    
  
jonpa added a comment.
> allow packed-stack in most of the cases where it's currently forbidden (with varargs, if the frame address is taken, and with backchain) -- since packed-stack is then not just an optimization, but an ABI change
Packed-stack stack is now also allowed with the back chain and with the frame address taken. I am however unsure of what to do with the varargs since this is hard coded all the way from the front end. It seems that GCC is keeping the standard offsets into the reg-save area. What would varargs with packed-stack in llvm mean?
lowerFRAMEADDR(): According to the documentation, zero can be returned if it cannot be identified, which this patch does when the back chain is not present. GCC seems to return just the address of where it would have been even if it is not present (then containing the saved %r15 reg instead). Doing it this way simplifies lowerFRAMEADDR(), I would think.
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74506/new/
https://reviews.llvm.org/D74506
    
    
More information about the llvm-commits
mailing list