188 |
} |
} |
189 |
#endif |
#endif |
190 |
|
|
191 |
|
#elif defined(TARGET_WORDS_BIGENDIAN) && !defined(WORDS_BIGENDIAN) |
192 |
|
|
193 |
|
static inline int lduw(void *ptr) |
194 |
|
{ |
195 |
|
uint8_t *b = (uint8_t *) ptr; |
196 |
|
return (b[0]<<8|b[1]); |
197 |
|
} |
198 |
|
|
199 |
|
static inline int ldsw(void *ptr) |
200 |
|
{ |
201 |
|
int8_t *b = (int8_t *) ptr; |
202 |
|
return (b[0]<<8|b[1]); |
203 |
|
} |
204 |
|
|
205 |
|
static inline int ldl(void *ptr) |
206 |
|
{ |
207 |
|
uint8_t *b = (uint8_t *) ptr; |
208 |
|
return (b[0]<<24|b[1]<<16|b[2]<<8|b[3]); |
209 |
|
} |
210 |
|
|
211 |
|
static inline uint64_t ldq(void *ptr) |
212 |
|
{ |
213 |
|
uint32_t a,b; |
214 |
|
a = ldl (ptr); |
215 |
|
b = ldl (ptr+4); |
216 |
|
return (((uint64_t)a<<32)|b); |
217 |
|
} |
218 |
|
|
219 |
|
static inline void stw(void *ptr, int v) |
220 |
|
{ |
221 |
|
uint8_t *d = (uint8_t *) ptr; |
222 |
|
d[0] = v >> 8; |
223 |
|
d[1] = v; |
224 |
|
} |
225 |
|
|
226 |
|
static inline void stl(void *ptr, int v) |
227 |
|
{ |
228 |
|
uint8_t *d = (uint8_t *) ptr; |
229 |
|
d[0] = v >> 24; |
230 |
|
d[1] = v >> 16; |
231 |
|
d[2] = v >> 8; |
232 |
|
d[3] = v; |
233 |
|
} |
234 |
|
|
235 |
|
static inline void stq(void *ptr, uint64_t v) |
236 |
|
{ |
237 |
|
stl (ptr, v); |
238 |
|
stl (ptr+4, v >> 32); |
239 |
|
} |
240 |
|
|
241 |
#else |
#else |
242 |
|
|
243 |
static inline int lduw(void *ptr) |
static inline int lduw(void *ptr) |
347 |
#define cpu_interrupt cpu_arm_interrupt |
#define cpu_interrupt cpu_arm_interrupt |
348 |
#define cpu_signal_handler cpu_arm_signal_handler |
#define cpu_signal_handler cpu_arm_signal_handler |
349 |
|
|
350 |
|
#elif defined(TARGET_SPARC) |
351 |
|
|
352 |
|
#define CPUState CPUSPARCState |
353 |
|
#define cpu_init cpu_sparc_init |
354 |
|
#define cpu_exec cpu_sparc_exec |
355 |
|
#define cpu_gen_code cpu_sparc_gen_code |
356 |
|
#define cpu_interrupt cpu_sparc_interrupt |
357 |
|
#define cpu_signal_handler cpu_sparc_signal_handler |
358 |
|
|
359 |
#else |
#else |
360 |
|
|
361 |
#error unsupported target CPU |
#error unsupported target CPU |