Separate thread for IO handling
[qemu-kvm/fedora.git] / target-m68k / op_mem.h
blob556829f691b53ceea66a379ec341467ce76809d1
1 /* Load/store ops. */
2 #define MEM_LD_OP(name,suffix) \
3 OP(glue(glue(ld,name),MEMSUFFIX)) \
4 { \
5 uint32_t addr = get_op(PARAM2); \
6 set_op(PARAM1, glue(glue(ld,suffix),MEMSUFFIX)(addr)); \
7 FORCE_RET(); \
10 MEM_LD_OP(8u32,ub)
11 MEM_LD_OP(8s32,sb)
12 MEM_LD_OP(16u32,uw)
13 MEM_LD_OP(16s32,sw)
14 MEM_LD_OP(32,l)
16 #undef MEM_LD_OP
18 #define MEM_ST_OP(name,suffix) \
19 OP(glue(glue(st,name),MEMSUFFIX)) \
20 { \
21 uint32_t addr = get_op(PARAM1); \
22 glue(glue(st,suffix),MEMSUFFIX)(addr, get_op(PARAM2)); \
23 FORCE_RET(); \
26 MEM_ST_OP(8,b)
27 MEM_ST_OP(16,w)
28 MEM_ST_OP(32,l)
30 #undef MEM_ST_OP
32 OP(glue(ldf64,MEMSUFFIX))
34 uint32_t addr = get_op(PARAM2);
35 set_opf64(PARAM1, glue(ldfq,MEMSUFFIX)(addr));
36 FORCE_RET();
39 OP(glue(stf64,MEMSUFFIX))
41 uint32_t addr = get_op(PARAM1);
42 glue(stfq,MEMSUFFIX)(addr, get_opf64(PARAM2));
43 FORCE_RET();
46 #undef MEMSUFFIX