This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch, documentation] Patch for PR target/30687, IA64 attribute documentation
- From: Steve Ellcey <sje at cup dot hp dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 16 Jan 2009 09:42:02 -0800 (PST)
- Subject: [patch, documentation] Patch for PR target/30687, IA64 attribute documentation
- Reply-to: sje at cup dot hp dot com
This documentation change adds an entry for syscall_linkage, an IA64
attribute that is currently undocumented and changes the format for the
version_id attribute entry because no other attribute mentions a
platform on the @cindex line.
I'll wait a bit to check the change in, in case anyone has comments on
the specific text or the formatting.
Steve Ellcey
sje@cup.hp.com
2009-01-16 Steve Ellcey <sje@cup.hp.com>
PR target/30687
* doc/extend.texi (syscall_linkage): New.
(version_id): Modify.
Index: doc/extend.texi
===================================================================
--- doc/extend.texi (revision 143419)
+++ doc/extend.texi (working copy)
@@ -2885,6 +2885,14 @@ On the Intel 386, the @code{stdcall} att
assume that the called function will pop off the stack space used to
pass arguments, unless it takes a variable number of arguments.
+@item syscall_linkage
+@cindex @code{syscall_linkage} attribute
+This attribute is used to modify the IA64 calling convention by marking
+all input registers as live at all function exits. This makes it possible
+to restart a system call after an interrupt without having to save/restore
+the input registers. This also prevents kernel data from leaking into
+application code.
+
@item target
@cindex @code{target} function attribute
The @code{target} attribute is used to specify that a function is to
@@ -3085,8 +3093,8 @@ This is useful, for example, when the fu
inline assembly.
@item version_id
-@cindex @code{version_id} attribute on IA64 HP-UX
-This attribute, attached to a global variable or function, renames a
+@cindex @code{version_id} attribute
+This IA64 HP-UX attribute, attached to a global variable or function, renames a
symbol to contain a version string, thus allowing for function level
versioning. HP-UX system header files may use version level functioning
for some system calls.