136
137 // Portability macros
138 #define PRAGMA_INTERFACE #pragma interface
139 #define PRAGMA_IMPLEMENTATION #pragma implementation
140 #define VALUE_OBJ_CLASS_SPEC
141
142 // Formatting.
143 #ifdef _LP64
144 #define FORMAT64_MODIFIER "l"
145 #else // !_LP64
146 #define FORMAT64_MODIFIER "ll"
147 #endif // _LP64
148
149 // Cannot use xlc's offsetof as implementation of hotspot's
150 // offset_of(), because xlc warns about applying offsetof() to non-POD
151 // object and xlc cannot compile the expression offsetof(DataLayout,
152 // _cells[index]) in DataLayout::cell_offset() . Therefore we define
153 // offset_of as it is defined for gcc.
154 #define offset_of(klass,field) (size_t)((intx)&(((klass*)16)->field) - 16)
155
156 #ifndef USE_LIBRARY_BASED_TLS_ONLY
157 #define THREAD_LOCAL_DECL __thread
158 #endif
159
160 // Inlining support
161 #define NOINLINE
162 #define ALWAYSINLINE inline __attribute__((always_inline))
163
164 #endif // SHARE_VM_UTILITIES_GLOBALDEFINITIONS_XLC_HPP
|
136
137 // Portability macros
138 #define PRAGMA_INTERFACE #pragma interface
139 #define PRAGMA_IMPLEMENTATION #pragma implementation
140 #define VALUE_OBJ_CLASS_SPEC
141
142 // Formatting.
143 #ifdef _LP64
144 #define FORMAT64_MODIFIER "l"
145 #else // !_LP64
146 #define FORMAT64_MODIFIER "ll"
147 #endif // _LP64
148
149 // Cannot use xlc's offsetof as implementation of hotspot's
150 // offset_of(), because xlc warns about applying offsetof() to non-POD
151 // object and xlc cannot compile the expression offsetof(DataLayout,
152 // _cells[index]) in DataLayout::cell_offset() . Therefore we define
153 // offset_of as it is defined for gcc.
154 #define offset_of(klass,field) (size_t)((intx)&(((klass*)16)->field) - 16)
155
156 // AIX 5.3 has buggy __thread support. (see JDK-8176442).
157 #define USE_LIBRARY_BASED_TLS_ONLY 1
158
159 #ifndef USE_LIBRARY_BASED_TLS_ONLY
160 #define THREAD_LOCAL_DECL __thread
161 #endif
162
163 // Inlining support
164 #define NOINLINE
165 #define ALWAYSINLINE inline __attribute__((always_inline))
166
167 #endif // SHARE_VM_UTILITIES_GLOBALDEFINITIONS_XLC_HPP
|