Magellan Linux

Diff of /trunk/mkinitrd-magellan/klibc/usr/include/klibc/compiler.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1296 by niro, Wed Aug 18 21:11:40 2010 UTC revision 1297 by niro, Fri May 27 15:12:11 2011 UTC
# Line 20  Line 20 
20  # define __cdecl /* Meaningless on non-i386 */  # define __cdecl /* Meaningless on non-i386 */
21  #endif  #endif
22    
23    /*
24     * How to declare a function which should be inlined or instantiated locally
25     */
26    #ifdef __GNUC__
27    # ifdef __GNUC_STDC_INLINE__
28    #  define __static_inline static __inline__ __attribute__((__gnu_inline__))
29    # else
30    #  define __static_inline static __inline__
31    # endif
32    #else
33    # define __static_inline inline /* Just hope this works... */
34    #endif
35    
36    /*
37     * How to declare a function which should be inlined or have a call to
38     * an external module
39     */
40    #ifdef __GNUC__
41    # ifdef __GNUC_STDC_INLINE__
42    #  define __extern_inline extern __inline__ __attribute__((__gnu_inline__))
43    # else
44    #  define __extern_inline extern __inline__
45    # endif
46    #else
47    # define __extern_inline inline /* Just hope this works... */
48    #endif
49    
50  /* How to declare a function that *must* be inlined */  /* How to declare a function that *must* be inlined */
51  /* Use "extern inline" even in the gcc3+ case to avoid warnings in ctype.h */  /* Use "extern inline" even in the gcc3+ case to avoid warnings in ctype.h */
52  #ifdef __GNUC__  #ifdef __GNUC__
53  # if __GNUC__ >= 3  # if __GNUC__ >= 3
54  #  ifdef __GNUC_STDC_INLINE__  #  define __must_inline __extern_inline __attribute__((__always_inline__))
 #   define __must_inline extern __inline__ \  
  __attribute__((__gnu_inline__,__always_inline__))  
 #  else  
 #   define __must_inline extern __inline__ __attribute__((__always_inline__))  
 #  endif  
55  # else  # else
56  #  define __must_inline extern __inline__  #  define __must_inline extern __inline__
57  # endif  # endif

Legend:
Removed from v.1296  
changed lines
  Added in v.1297