mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
tcg: Add TranslationBlock.jmp_insn_offset
Stop overloading jmp_target_arg for both offset and address, depending on TCG_TARGET_HAS_direct_jump. Instead, add a new field to hold the jump insn offset and always set the target address in jmp_target_addr[]. This will allow a tcg backend to use either direct or indirect depending on displacement. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
@@ -587,7 +587,8 @@ struct TranslationBlock {
|
||||
*/
|
||||
#define TB_JMP_OFFSET_INVALID 0xffff /* indicates no jump generated */
|
||||
uint16_t jmp_reset_offset[2]; /* offset of original jump target */
|
||||
uintptr_t jmp_target_arg[2]; /* target address or offset */
|
||||
uint16_t jmp_insn_offset[2]; /* offset of direct jump insn */
|
||||
uintptr_t jmp_target_addr[2]; /* target address */
|
||||
|
||||
/*
|
||||
* Each TB has a NULL-terminated list (jmp_list_head) of incoming jumps.
|
||||
|
||||
Reference in New Issue
Block a user