Revision 8378e71f

b/target-ppc/op_mem.h
411 411
    glue(stfl, MEMSUFFIX)(EA, float64_to_float32(d, &env->fp_status));
412 412
}
413 413

  
414
#if defined(WORDS_BIGENDIAN)
415
#define WORD0 0
416
#define WORD1 1
417
#else
418
#define WORD0 1
419
#define WORD1 0
420
#endif
414 421
static always_inline void glue(stfiwx, MEMSUFFIX) (target_ulong EA, double d)
415 422
{
416 423
    union {
417 424
        double d;
418
        uint64_t u;
425
        uint32_t u[2];
419 426
    } u;
420 427

  
421 428
    /* Store the low order 32 bits without any conversion */
422 429
    u.d = d;
423
    glue(stl, MEMSUFFIX)(EA, u.u);
430
    glue(stl, MEMSUFFIX)(EA, u.u[WORD0]);
424 431
}
432
#undef WORD0
433
#undef WORD1
425 434

  
426 435
PPC_STF_OP(fd, stfq);
427 436
PPC_STF_OP(fs, stfs);

Also available in: Unified diff