File:  [Qemu by Fabrice Bellard] / qemu / target-m68k / op_mem.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:49:32 2018 UTC (8 years, 1 month ago) by root
Branches: qemu, MAIN
CVS tags: qemu0091, HEAD
qemu 0.9.1

/* Load/store ops.  */
#define MEM_LD_OP(name,suffix) \
OP(glue(glue(ld,name),MEMSUFFIX)) \
{ \
    uint32_t addr = get_op(PARAM2); \
    set_op(PARAM1, glue(glue(ld,suffix),MEMSUFFIX)(addr)); \
    FORCE_RET(); \
}

MEM_LD_OP(8u32,ub)
MEM_LD_OP(8s32,sb)
MEM_LD_OP(16u32,uw)
MEM_LD_OP(16s32,sw)
MEM_LD_OP(32,l)

#undef MEM_LD_OP

#define MEM_ST_OP(name,suffix) \
OP(glue(glue(st,name),MEMSUFFIX)) \
{ \
    uint32_t addr = get_op(PARAM1); \
    glue(glue(st,suffix),MEMSUFFIX)(addr, get_op(PARAM2)); \
    FORCE_RET(); \
}

MEM_ST_OP(8,b)
MEM_ST_OP(16,w)
MEM_ST_OP(32,l)

#undef MEM_ST_OP

OP(glue(ldf64,MEMSUFFIX))
{
    uint32_t addr = get_op(PARAM2);
    set_opf64(PARAM1, glue(ldfq,MEMSUFFIX)(addr));
    FORCE_RET();
}

OP(glue(stf64,MEMSUFFIX))
{
    uint32_t addr = get_op(PARAM1);
    glue(stfq,MEMSUFFIX)(addr, get_opf64(PARAM2));
    FORCE_RET();
}

#undef MEMSUFFIX

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.