6.31.10 IA-64 Function Attributes
These function attributes are supported on IA-64 targets:
syscall_linkage
- This attribute is used to modify the IA-64 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.
version_id
- This IA-64 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 function level versioning
for some system calls.
extern int foo () __attribute__((version_id ("20040821")));
Calls to foo
are mapped to calls to foo{20040821}
.