Revision a63b5829 dyngen-exec.h
b/dyngen-exec.h | ||
---|---|---|
50 | 50 |
|
51 | 51 |
#if defined(__i386__) |
52 | 52 |
#define AREG0 "ebp" |
53 |
#define AREG1 "ebx" |
|
54 |
#define AREG2 "esi" |
|
55 | 53 |
#elif defined(__x86_64__) |
56 | 54 |
#define AREG0 "r14" |
57 |
#define AREG1 "r15" |
|
58 |
#define AREG2 "r12" |
|
59 | 55 |
#elif defined(_ARCH_PPC) |
60 | 56 |
#define AREG0 "r27" |
61 |
#define AREG1 "r24" |
|
62 |
#define AREG2 "r25" |
|
63 | 57 |
#elif defined(__arm__) |
64 | 58 |
#define AREG0 "r7" |
65 |
#define AREG1 "r4" |
|
66 |
#define AREG2 "r5" |
|
67 | 59 |
#elif defined(__hppa__) |
68 | 60 |
#define AREG0 "r17" |
69 |
#define AREG1 "r14" |
|
70 |
#define AREG2 "r15" |
|
71 | 61 |
#elif defined(__mips__) |
72 | 62 |
#define AREG0 "fp" |
73 |
#define AREG1 "s0" |
|
74 |
#define AREG2 "s1" |
|
75 | 63 |
#elif defined(__sparc__) |
76 | 64 |
#ifdef CONFIG_SOLARIS |
77 | 65 |
#define AREG0 "g2" |
78 |
#define AREG1 "g3" |
|
79 |
#define AREG2 "g4" |
|
80 | 66 |
#else |
81 | 67 |
#ifdef __sparc_v9__ |
82 | 68 |
#define AREG0 "g5" |
83 |
#define AREG1 "g6" |
|
84 |
#define AREG2 "g7" |
|
85 | 69 |
#else |
86 | 70 |
#define AREG0 "g6" |
87 |
#define AREG1 "g1" |
|
88 |
#define AREG2 "g2" |
|
89 | 71 |
#endif |
90 | 72 |
#endif |
91 | 73 |
#elif defined(__s390__) |
92 | 74 |
#define AREG0 "r10" |
93 |
#define AREG1 "r7" |
|
94 |
#define AREG2 "r8" |
|
95 | 75 |
#elif defined(__alpha__) |
96 | 76 |
/* Note $15 is the frame pointer, so anything in op-i386.c that would |
97 | 77 |
require a frame pointer, like alloca, would probably loose. */ |
98 | 78 |
#define AREG0 "$15" |
99 |
#define AREG1 "$9" |
|
100 |
#define AREG2 "$10" |
|
101 | 79 |
#elif defined(__mc68000) |
102 | 80 |
#define AREG0 "%a5" |
103 |
#define AREG1 "%a4" |
|
104 |
#define AREG2 "%d7" |
|
105 | 81 |
#elif defined(__ia64__) |
106 | 82 |
#define AREG0 "r7" |
107 |
#define AREG1 "r4" |
|
108 |
#define AREG2 "r5" |
|
109 | 83 |
#else |
110 | 84 |
#error unsupported CPU |
111 | 85 |
#endif |
Also available in: Unified diff