[PATCH] AAPCS-VFP: Do not use any more VFP registers after allocating a CPRC to the stack

Oliver Stannard oliver.stannard at arm.com
Thu Feb 6 09:33:54 PST 2014


Hi,

 

According the the AAPCS, if an argument is a CPRC (co-processor register
candidate) but cannot be allocated to a co-processor register, the argument
must be allocated on the stack and all co-processor registers of that class
must be marked as unavailable (AAPCS, rule C.2.cp). However, llvm does not
currently mark the VFP registers as unavailable, so can allocate a later
CPRC to a register after an earlier one has been allocated to the stack.

 

The attached patch corrects this.

 

Oliver
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140206/1d0a215c/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: aapcs-vfp-register-shadowing.patch
Type: application/octet-stream
Size: 6102 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140206/1d0a215c/attachment.obj>


More information about the llvm-commits mailing list