PFUNC 1.0
pfunc/environ.hpp
Go to the documentation of this file.
00001 #ifndef PFUNC_ENVIRON_HPP
00002 #define PFUNC_ENVIRON_HPP
00003 
00017 #include <pfunc/config.h>
00018 
00020 #if PFUNC_WINDOWS == 1
00021 #define ALIGN16 __declspec(align(16))
00022 #define ALIGN32 __declspec(align(32))
00023 #define ALIGN64 __declspec(align(64))
00024 #define ALIGN128 __declspec(align(128))
00025 #elif PFUNC_LINUX == 1 || PFUNC_AIX == 1 || PFUNC_DARWIN == 1
00026 #define ALIGN16 __attribute__((aligned(16)))
00027 #define ALIGN32 __attribute__((aligned(32)))
00028 #define ALIGN64 __attribute__((aligned(64)))
00029 #define ALIGN128 __attribute__((aligned(128)))
00030 #else
00031 #define ALIGN16 
00032 #define ALIGN32 
00033 #define ALIGN64 
00034 #define ALIGN128
00035 #endif
00036 
00040 #if defined (c_plusplus) || defined (__cplusplus)
00041 #define PFUNC_INLINE inline
00042 #else 
00043 #if PFUNC_HAVE_INLINE == 1
00044 #define PFUNC_INLINE inline
00045 #elif PFUNC_HAVE_UNDERSCORE_INLINE == 1
00046 #define PFUNC_INLINE __inline
00047 #elif PFUNC_HAVE_UNDERSCORE_INLINE_UNDERSCORE == 1
00048 #define PFUNC_INLINE __inline__
00049 #else
00050 #define PFUNC_INLINE /*nothing*/
00051 #endif
00052 #endif
00053 
00054 #endif /* PFUNC_ENVIRON_HPP */