71 |
#define DPRINTF_MB 0x00000010 |
#define DPRINTF_MB 0x00000010 |
72 |
#define DPRINTF_COEFF 0x00000020 |
#define DPRINTF_COEFF 0x00000020 |
73 |
#define DPRINTF_MV 0x00000040 |
#define DPRINTF_MV 0x00000040 |
|
#define DPRINTF_RC 0x00000080 |
|
74 |
#define DPRINTF_DEBUG 0x80000000 |
#define DPRINTF_DEBUG 0x80000000 |
75 |
|
|
76 |
/* debug level for this library */ |
/* debug level for this library */ |
77 |
#ifdef _DEBUG |
#define DPRINTF_LEVEL 0 |
|
#define DPRINTF_LEVEL (DPRINTF_RC|0x0000000f) |
|
|
#else |
|
|
#define DPRINTF_LEVEL DPRINTF_RC |
|
|
#endif |
|
78 |
|
|
79 |
/* Buffer size for non C99 compliant compilers (msvc) */ |
/* Buffer size for non C99 compliant compilers (msvc) */ |
80 |
#define DPRINTF_BUF_SZ 1024 |
#define DPRINTF_BUF_SZ 1024 |
194 |
# if defined(ARCH_X86) |
# if defined(ARCH_X86) |
195 |
# define BSWAP(a) __asm mov eax,a __asm bswap eax __asm mov a, eax |
# define BSWAP(a) __asm mov eax,a __asm bswap eax __asm mov a, eax |
196 |
# define EMMS() __asm {emms} |
# define EMMS() __asm {emms} |
|
# define FEMMS() __asm {femms} |
|
197 |
|
|
198 |
static __inline int64_t read_counter(void) |
static __inline int64_t read_counter(void) |
199 |
{ |
{ |
212 |
| msvc unknown architecture |
| msvc unknown architecture |
213 |
*---------------------------------------------------------------------------*/ |
*---------------------------------------------------------------------------*/ |
214 |
# else |
# else |
215 |
/* ANSI C version of BSWAP */ |
/* ANSI C version of BSWAP, and POSIX clock() for timer */ |
216 |
#define BSWAP(x) \ |
#define BSWAP(x) \ |
217 |
x = ((((x) & 0xff000000) >> 24) | \ |
x = ((((x) & 0xff000000) >> 24) | \ |
218 |
(((x) & 0x00ff0000) >> 8) | \ |
(((x) & 0x00ff0000) >> 8) | \ |
219 |
(((x) & 0x0000ff00) << 8) | \ |
(((x) & 0x0000ff00) << 8) | \ |
220 |
(((x) & 0x000000ff) << 24)) |
(((x) & 0x000000ff) << 24)) |
221 |
|
|
222 |
#define EMMS() |
#define EMMS() clock() |
|
#define FEMMS() |
|
223 |
# endif |
# endif |
224 |
|
|
225 |
|
|
266 |
# if defined(ARCH_X86) |
# if defined(ARCH_X86) |
267 |
# define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) ); |
# define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) ); |
268 |
# define EMMS() __asm__ ("emms\n\t"); |
# define EMMS() __asm__ ("emms\n\t"); |
|
# define FEMMS() __asm__ ("femms\n\t"); |
|
269 |
|
|
270 |
static __inline int64_t read_counter(void) |
static __inline int64_t read_counter(void) |
271 |
{ |
{ |
283 |
# define BSWAP(a) __asm__ __volatile__ \ |
# define BSWAP(a) __asm__ __volatile__ \ |
284 |
( "lwbrx %0,0,%1; eieio" : "=r" (a) : "r" (&(a)), "m" (a)); |
( "lwbrx %0,0,%1; eieio" : "=r" (a) : "r" (&(a)), "m" (a)); |
285 |
# define EMMS() |
# define EMMS() |
|
# define FEMMS() |
|
286 |
|
|
287 |
static __inline unsigned long get_tbl(void) |
static __inline unsigned long get_tbl(void) |
288 |
{ |
{ |
316 |
("mux1 %1 = %0, @rev" ";;" \ |
("mux1 %1 = %0, @rev" ";;" \ |
317 |
"shr.u %1 = %1, 32" : "=r" (a) : "r" (a)); |
"shr.u %1 = %1, 32" : "=r" (a) : "r" (a)); |
318 |
# define EMMS() |
# define EMMS() |
|
# define FEMMS() |
|
319 |
|
|
320 |
static __inline int64_t read_counter(void) { |
static __inline int64_t read_counter(void) { |
321 |
unsigned long result; |
unsigned long result; |
331 |
((a) = (((a) & 0xff) << 24) | (((a) & 0xff00) << 8) | \ |
((a) = (((a) & 0xff) << 24) | (((a) & 0xff00) << 8) | \ |
332 |
(((a) >> 8) & 0xff00) | (((a) >> 24) & 0xff)) |
(((a) >> 8) & 0xff00) | (((a) >> 24) & 0xff)) |
333 |
# define EMMS() |
# define EMMS() |
|
# define FEMMS() |
|
334 |
|
|
335 |
static __inline int64_t read_counter(void) |
static __inline int64_t read_counter(void) |
336 |
{ |
{ |
345 |
((a) = (((a) & 0xff) << 24) | (((a) & 0xff00) << 8) | \ |
((a) = (((a) & 0xff) << 24) | (((a) & 0xff00) << 8) | \ |
346 |
(((a) >> 8) & 0xff00) | (((a) >> 24) & 0xff)) |
(((a) >> 8) & 0xff00) | (((a) >> 24) & 0xff)) |
347 |
# define EMMS() |
# define EMMS() |
|
# define FEMMS() |
|
348 |
|
|
349 |
static __inline int64_t read_counter(void) |
static __inline int64_t read_counter(void) |
350 |
{ |
{ |
355 |
| XviD + gcc unsupported Architecture |
| XviD + gcc unsupported Architecture |
356 |
*---------------------------------------------------------------------------*/ |
*---------------------------------------------------------------------------*/ |
357 |
# else |
# else |
358 |
/* ANSI C version of BSWAP */ |
/* ANSI C version of BSWAP, and POSIX clock() for timer */ |
359 |
#define BSWAP(x) \ |
#define BSWAP(x) \ |
360 |
x = ((((x) & 0xff000000) >> 24) | \ |
x = ((((x) & 0xff000000) >> 24) | \ |
361 |
(((x) & 0x00ff0000) >> 8) | \ |
(((x) & 0x00ff0000) >> 8) | \ |
362 |
(((x) & 0x0000ff00) << 8) | \ |
(((x) & 0x0000ff00) << 8) | \ |
363 |
(((x) & 0x000000ff) << 24)) |
(((x) & 0x000000ff) << 24)) |
364 |
|
|
365 |
#define EMMS() |
#define EMMS() clock() |
|
#define FEMMS() |
|
366 |
# endif /* Architecture checking */ |
# endif /* Architecture checking */ |
367 |
|
|
368 |
/***************************************************************************** |
/***************************************************************************** |