提交 d67eb20f 编写于 作者: M Michael S. Tsirkin

Merge branch 'master' into pci

...@@ -1511,7 +1511,7 @@ static void _decode_opc(DisasContext * ctx) ...@@ -1511,7 +1511,7 @@ static void _decode_opc(DisasContext * ctx)
tcg_temp_free(addr); tcg_temp_free(addr);
} }
return; return;
#define LDST(reg,ldnum,ldpnum,stnum,stpnum,prechk) \ #define LD(reg,ldnum,ldpnum,prechk) \
case ldnum: \ case ldnum: \
prechk \ prechk \
tcg_gen_mov_i32 (cpu_##reg, REG(B11_8)); \ tcg_gen_mov_i32 (cpu_##reg, REG(B11_8)); \
...@@ -1520,7 +1520,8 @@ static void _decode_opc(DisasContext * ctx) ...@@ -1520,7 +1520,8 @@ static void _decode_opc(DisasContext * ctx)
prechk \ prechk \
tcg_gen_qemu_ld32s (cpu_##reg, REG(B11_8), ctx->memidx); \ tcg_gen_qemu_ld32s (cpu_##reg, REG(B11_8), ctx->memidx); \
tcg_gen_addi_i32(REG(B11_8), REG(B11_8), 4); \ tcg_gen_addi_i32(REG(B11_8), REG(B11_8), 4); \
return; \ return;
#define ST(reg,stnum,stpnum,prechk) \
case stnum: \ case stnum: \
prechk \ prechk \
tcg_gen_mov_i32 (REG(B11_8), cpu_##reg); \ tcg_gen_mov_i32 (REG(B11_8), cpu_##reg); \
...@@ -1535,10 +1536,15 @@ static void _decode_opc(DisasContext * ctx) ...@@ -1535,10 +1536,15 @@ static void _decode_opc(DisasContext * ctx)
tcg_temp_free(addr); \ tcg_temp_free(addr); \
} \ } \
return; return;
#define LDST(reg,ldnum,ldpnum,stnum,stpnum,prechk) \
LD(reg,ldnum,ldpnum,prechk) \
ST(reg,stnum,stpnum,prechk)
LDST(gbr, 0x401e, 0x4017, 0x0012, 0x4013, {}) LDST(gbr, 0x401e, 0x4017, 0x0012, 0x4013, {})
LDST(vbr, 0x402e, 0x4027, 0x0022, 0x4023, CHECK_PRIVILEGED) LDST(vbr, 0x402e, 0x4027, 0x0022, 0x4023, CHECK_PRIVILEGED)
LDST(ssr, 0x403e, 0x4037, 0x0032, 0x4033, CHECK_PRIVILEGED) LDST(ssr, 0x403e, 0x4037, 0x0032, 0x4033, CHECK_PRIVILEGED)
LDST(spc, 0x404e, 0x4047, 0x0042, 0x4043, CHECK_PRIVILEGED) LDST(spc, 0x404e, 0x4047, 0x0042, 0x4043, CHECK_PRIVILEGED)
ST(sgr, 0x003a, 0x4032, CHECK_PRIVILEGED)
LD(sgr, 0x403a, 0x4036, CHECK_PRIVILEGED if (!(ctx->features & SH_FEATURE_SH4A)) break;)
LDST(dbr, 0x40fa, 0x40f6, 0x00fa, 0x40f2, CHECK_PRIVILEGED) LDST(dbr, 0x40fa, 0x40f6, 0x00fa, 0x40f2, CHECK_PRIVILEGED)
LDST(mach, 0x400a, 0x4006, 0x000a, 0x4002, {}) LDST(mach, 0x400a, 0x4006, 0x000a, 0x4002, {})
LDST(macl, 0x401a, 0x4016, 0x001a, 0x4012, {}) LDST(macl, 0x401a, 0x4016, 0x001a, 0x4012, {})
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册