29 |
typedef unsigned short uint16_t; |
typedef unsigned short uint16_t; |
30 |
typedef unsigned int uint32_t; |
typedef unsigned int uint32_t; |
31 |
/* XXX may be done for all 64 bits targets ? */ |
/* XXX may be done for all 64 bits targets ? */ |
32 |
#if defined (__x86_64__) |
#if defined (__x86_64__) || defined(__ia64) |
33 |
typedef unsigned long uint64_t; |
typedef unsigned long uint64_t; |
34 |
#else |
#else |
35 |
typedef unsigned long long uint64_t; |
typedef unsigned long long uint64_t; |
38 |
typedef signed char int8_t; |
typedef signed char int8_t; |
39 |
typedef signed short int16_t; |
typedef signed short int16_t; |
40 |
typedef signed int int32_t; |
typedef signed int int32_t; |
41 |
#if defined (__x86_64__) |
#if defined (__x86_64__) || defined(__ia64) |
42 |
typedef signed long int64_t; |
typedef signed long int64_t; |
43 |
#else |
#else |
44 |
typedef signed long long int64_t; |
typedef signed long long int64_t; |
148 |
#define AREG4 "%d5" |
#define AREG4 "%d5" |
149 |
#endif |
#endif |
150 |
#ifdef __ia64__ |
#ifdef __ia64__ |
151 |
#define AREG0 "r27" |
#define AREG0 "r7" |
152 |
#define AREG1 "r24" |
#define AREG1 "r4" |
153 |
#define AREG2 "r25" |
#define AREG2 "r5" |
154 |
#define AREG3 "r26" |
#define AREG3 "r6" |
155 |
#endif |
#endif |
156 |
|
|
157 |
/* force GCC to generate only one epilog at the end of the function */ |
/* force GCC to generate only one epilog at the end of the function */ |
224 |
#endif |
#endif |
225 |
#ifdef __ia64__ |
#ifdef __ia64__ |
226 |
#define EXIT_TB() asm volatile ("br.ret.sptk.many b0;;") |
#define EXIT_TB() asm volatile ("br.ret.sptk.many b0;;") |
227 |
|
#define GOTO_LABEL_PARAM(n) asm volatile ("br.sptk.many " \ |
228 |
|
ASM_NAME(__op_gen_label) #n) |
229 |
#endif |
#endif |
230 |
#ifdef __sparc__ |
#ifdef __sparc__ |
231 |
#define EXIT_TB() asm volatile ("jmpl %i0 + 8, %g0\n" \ |
#define EXIT_TB() asm volatile ("jmpl %i0 + 8, %g0\n" \ |