[patch, documentation] Patch for PR target/30687, IA64 attribute documentation

Steve Ellcey sje@cup.hp.com
Fri Jan 16 18:35:00 GMT 2009

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

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.

More information about the Gcc-patches mailing list