49 |
#define uint32_t unsigned int |
#define uint32_t unsigned int |
50 |
#define int64_t __int64 |
#define int64_t __int64 |
51 |
#define uint64_t unsigned __int64 |
#define uint64_t unsigned __int64 |
52 |
|
#define ptr_t uint32_t |
53 |
|
|
54 |
#define EMMS() __asm {emms} |
#define EMMS() __asm {emms} |
55 |
|
|
106 |
#define DEBUGCBR(A,B,C) |
#define DEBUGCBR(A,B,C) |
107 |
#endif |
#endif |
108 |
|
|
|
#define CACHE_LINE 16 |
|
|
|
|
109 |
#if defined(LINUX) |
#if defined(LINUX) |
110 |
|
|
111 |
#include <stdint.h> |
#include <stdint.h> |
112 |
|
|
113 |
#define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \ |
#define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \ |
114 |
type name##_storage[(sizex)*(sizey)+(alignment)-1]; \ |
type name##_storage[(sizex)*(sizey)+(alignment)-1]; \ |
115 |
type * name = (type *) (((int32_t) name##_storage+(alignment - 1)) & ~((int32_t)(alignment)-1)) |
type * name = (type *) (((ptr_t) name##_storage+(alignment - 1)) & ~((ptr_t)(alignment)-1)) |
116 |
|
|
117 |
#else |
#else |
118 |
|
|
164 |
} while (tb != get_tbl()); |
} while (tb != get_tbl()); |
165 |
return (((int64_t) tu) << 32) | (int64_t) tb; |
return (((int64_t) tu) << 32) | (int64_t) tb; |
166 |
} |
} |
167 |
|
|
168 |
|
#define ptr_t uint32_t |
169 |
|
|
170 |
|
#define CACHE_LINE 16 |
171 |
|
|
172 |
|
#elif defined(ARCH_IA64) |
173 |
|
|
174 |
|
#define ptr_t uint64_t |
175 |
|
|
176 |
|
#define CACHE_LINE 32 |
177 |
|
|
178 |
|
#define EMMS() |
179 |
|
|
180 |
|
// needed for bitstream.h |
181 |
|
#define BSWAP(a) \ |
182 |
|
((a) = ( ((a)&0xff)<<24) | (((a)&0xff00)<<8) | (((a)>>8)&0xff00) | (((a)>>24)&0xff)) |
183 |
|
|
184 |
|
// rdtsc command most likely not supported, |
185 |
|
// so just dummy code here |
186 |
|
static __inline int64_t read_counter() { |
187 |
|
return 0; |
188 |
|
} |
189 |
|
|
190 |
#else |
#else |
191 |
#define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) ) |
#define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) ) |
192 |
#define EMMS() __asm__("emms\n\t") |
#define EMMS() __asm__("emms\n\t") |
207 |
return ts; |
return ts; |
208 |
} |
} |
209 |
|
|
210 |
|
#define ptr_t uint32_t |
211 |
|
|
212 |
|
#define CACHE_LINE 16 |
213 |
|
|
214 |
#endif |
#endif |
215 |
|
|
216 |
#else // OTHER OS |
#else // OTHER OS |
238 |
return 0; |
return 0; |
239 |
} |
} |
240 |
|
|
241 |
|
#define ptr_t uint32_t |
242 |
|
|
243 |
#define CACHE_LINE 16 |
#define CACHE_LINE 16 |
244 |
#define CACHE_ALIGN |
#define CACHE_ALIGN |
|
#define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \ |
|
|
type name[(sizex)*(sizey)] |
|
245 |
|
|
246 |
#endif |
#endif |
247 |
|
|