diff options
author | 2008-05-01 08:53:23 +0000 | |
---|---|---|
committer | 2008-05-01 08:53:23 +0000 | |
commit | 04f54299af706a43dee58414b6fa41bcbc17bbba (patch) | |
tree | 47b3ceadfe3e4f9af93699c15f3b9a1a095d7976 /src/emu | |
parent | 75ae56079ecb2191f731acd642099b4fd160423c (diff) |
Couple of minor tweaks to sync with offline WIP work.
Diffstat (limited to 'src/emu')
-rw-r--r-- | src/emu/cpu/x86emit.h | 33 | ||||
-rw-r--r-- | src/emu/cpu/x86log.c | 2 |
2 files changed, 34 insertions, 1 deletions
diff --git a/src/emu/cpu/x86emit.h b/src/emu/cpu/x86emit.h index ef7d93e9df3..60a95a8fc40 100644 --- a/src/emu/cpu/x86emit.h +++ b/src/emu/cpu/x86emit.h @@ -1457,6 +1457,8 @@ INLINE void emit_int_3(x86code **emitptr) { emit_op_simple(emitptr, OP_INT_3, O INLINE void emit_ret(x86code **emitptr) { emit_op_simple(emitptr, OP_RETN, OP_32BIT); } INLINE void emit_cdq(x86code **emitptr) { emit_op_simple(emitptr, OP_CDQ, OP_32BIT); } INLINE void emit_cmc(x86code **emitptr) { emit_op_simple(emitptr, OP_CMC, OP_32BIT); } +INLINE void emit_pushf(x86code **emitptr) { emit_op_simple(emitptr, OP_PUSHF_Fv, OP_32BIT); } +INLINE void emit_popf(x86code **emitptr) { emit_op_simple(emitptr, OP_POPF_Fv, OP_32BIT); } #ifndef PTR64 INLINE void emit_pushad(x86code **emitptr) { emit_op_simple(emitptr, OP_PUSHA, OP_32BIT); } @@ -1588,6 +1590,26 @@ INLINE void emit_jcc(x86code **emitptr, UINT8 cond, x86code *target) /*------------------------------------------------- + emit_jecxz_* +-------------------------------------------------*/ + +INLINE void emit_jecxz_link(x86code **emitptr, emit_link *linkinfo) +{ + emit_op_simple(emitptr, OP_JrCXZ_Jb, OP_32BIT); + emit_byte(emitptr, 0); + linkinfo->target = *emitptr; + linkinfo->size = 1; +} + +INLINE void emit_jecxz(x86code **emitptr, x86code *target) +{ + emit_link link; + emit_jecxz_link(emitptr, &link); + resolve_link(&target, &link); +} + + +/*------------------------------------------------- emit_call/jmp_* -------------------------------------------------*/ @@ -1604,6 +1626,17 @@ INLINE void emit_jmp_m64(x86code **emitptr, DECLARE_MEMPARAMS) { emit_op_modrm_m #endif +/*------------------------------------------------- + emit_ret_* +-------------------------------------------------*/ + +INLINE void emit_ret_imm(x86code **emitptr, UINT16 imm) +{ + emit_op_simple(emitptr, OP_RETN_Iw, OP_32BIT); + emit_word(emitptr, imm); +} + + /*************************************************************************** PUSH/POP EMITTERS diff --git a/src/emu/cpu/x86log.c b/src/emu/cpu/x86log.c index 71ddf4cde60..81c8f3a8f80 100644 --- a/src/emu/cpu/x86log.c +++ b/src/emu/cpu/x86log.c @@ -21,7 +21,7 @@ ***************************************************************************/ /* comment parameters */ -#define MAX_COMMENTS 1000 +#define MAX_COMMENTS 4000 #define MAX_DATA_RANGES 1000 #define COMMENT_POOL_SIZE (MAX_COMMENTS * 40) |