Revision 2d603d22 softmmu_header.h

b/softmmu_header.h
51 51

  
52 52
#elif ACCESS_TYPE == 2
53 53

  
54
#ifdef TARGET_I386
54 55
#define CPU_MEM_INDEX ((env->hflags & HF_CPL_MASK) == 3)
56
#elif defined (TARGET_PPC)
57
#define CPU_MEM_INDEX (msr_pr)
58
#endif
55 59
#define MMUSUFFIX _mmu
56 60

  
57 61
#elif ACCESS_TYPE == 3
58 62

  
63
#ifdef TARGET_I386
59 64
#define CPU_MEM_INDEX ((env->hflags & HF_CPL_MASK) == 3)
65
#elif defined (TARGET_PPC)
66
#define CPU_MEM_INDEX (msr_pr)
67
#endif
60 68
#define MMUSUFFIX _cmmu
61 69

  
62 70
#else
......
283 291

  
284 292
#endif
285 293

  
294
#if DATA_SIZE == 8
295
static inline double glue(ldfq, MEMSUFFIX)(void *ptr)
296
{
297
    union {
298
        double d;
299
        uint64_t i;
300
    } u;
301
    u.i = glue(ldq, MEMSUFFIX)(ptr);
302
    return u.d;
303
}
304

  
305
static inline void glue(stfq, MEMSUFFIX)(void *ptr, double v)
306
{
307
    union {
308
        double d;
309
        uint64_t i;
310
    } u;
311
    u.d = v;
312
    glue(stq, MEMSUFFIX)(ptr, u.i);
313
}
314
#endif /* DATA_SIZE == 8 */
315

  
316
#if DATA_SIZE == 4
317
static inline float glue(ldfl, MEMSUFFIX)(void *ptr)
318
{
319
    union {
320
        float f;
321
        uint32_t i;
322
    } u;
323
    u.i = glue(ldl, MEMSUFFIX)(ptr);
324
    return u.f;
325
}
326

  
327
static inline void glue(stfl, MEMSUFFIX)(void *ptr, float v)
328
{
329
    union {
330
        float f;
331
        uint32_t i;
332
    } u;
333
    u.f = v;
334
    glue(stl, MEMSUFFIX)(ptr, u.i);
335
}
336
#endif /* DATA_SIZE == 4 */
337

  
286 338
#undef RES_TYPE
287 339
#undef DATA_TYPE
288 340
#undef DATA_STYPE

Also available in: Unified diff