rjmccall added inline comments.

================
Comment at: include/clang/Basic/AttrDocs.td:1749-1750
+On 64-bit ARM targets, this argument causes the function to obey the vector
+procedural call standard (VPCS) rules as described in the Vector ABI for
+AArch64. In particular, the register caller/callee saves ratio is set to 16/16.
+  }];
----------------
aaron.ballman wrote:
> If you can add a link to the vector ABI here, or to something that gives more 
> detail about the ABI, that'd be great.
Describing this in terms of the "caller/callee saves ratio" is pretty obscure 
for most users.  As Aaron suggestions, it's good include a link to the detailed 
documentation for people who want to know *exactly* what this means.  For 
everyone else, your goal is to convince them to use your attribute in 
appropriate situations, so you should frame the documentation in those terms.  
Try this as a starting point:

> Functions declared with this calling convention preserve additional 
> floating-point and vector registers relative to the standard C convention, 
> which makes it more efficient to call such functions within complex 
> floating-point and vector calculations.  However, this also makes it more 
> expensive to call a standard C function within such a function.  Therefore, 
> it is recommended that this attribute be used on "leaf" functions that are 
> likely to be used by code performing floating-point and vector calculations 
> but that don't need to use any functions not declared with this attribute.


https://reviews.llvm.org/D54425



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to