diff options
author | Richard Lowe <richlowe@richlowe.net> | 2011-05-15 21:34:10 +0100 |
---|---|---|
committer | Richard Lowe <richlowe@richlowe.net> | 2011-07-01 16:40:54 -0400 |
commit | 3e1794b949334d3f4dfded5c18479e82c4cf5278 (patch) | |
tree | a53779c47c69d7934c32865a1730c1526d602b1d /usr/src/uts/sparc/asm/thread.h | |
parent | f566d78a11aa42921b8e4d37be29629060f90cbc (diff) | |
download | illumos-joyent-3e1794b949334d3f4dfded5c18479e82c4cf5278.tar.gz |
Use __attribute__((__gnu_inline__)) on GCC ASM
As a GCC extension, GCC used to define 'extern inline' to mean that a
function was only ever emitted inline and no visible symbol was emitted.
C99, however, made 'extern inline' mean pretty much the reverse of this, and
GCC 4.3 and above in C99 or GNU99 modes follow the standard, so we have to
decorate each definition to indicate we want the non-standard behaviour.
Diffstat (limited to 'usr/src/uts/sparc/asm/thread.h')
-rw-r--r-- | usr/src/uts/sparc/asm/thread.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/usr/src/uts/sparc/asm/thread.h b/usr/src/uts/sparc/asm/thread.h index 77e75e8cf0..2370fd236a 100644 --- a/usr/src/uts/sparc/asm/thread.h +++ b/usr/src/uts/sparc/asm/thread.h @@ -27,8 +27,7 @@ #ifndef _ASM_THREAD_H #define _ASM_THREAD_H -#pragma ident "%Z%%M% %I% %E% SMI" - +#include <sys/ccompile.h> #include <sys/types.h> #ifdef __cplusplus @@ -39,7 +38,7 @@ extern "C" { struct _kthread; -extern __inline__ struct _kthread * +extern __GNU_INLINE struct _kthread * threadp(void) { void *__value; @@ -55,7 +54,7 @@ threadp(void) return (__value); } -extern __inline__ caddr_t +extern __GNU_INLINE caddr_t caller(void) { caddr_t __value; @@ -70,7 +69,7 @@ caller(void) return (__value); } -extern __inline__ caddr_t +extern __GNU_INLINE caddr_t callee(void) { caddr_t __value; |