Revision efc0a514
b/exec-all.h | ||
---|---|---|
143 | 143 |
the code of this one. */ |
144 | 144 |
uint16_t tb_next_offset[2]; /* offset of original jump target */ |
145 | 145 |
#ifdef USE_DIRECT_JUMP |
146 |
uint16_t tb_jmp_offset[4]; /* offset of jump instruction */
|
|
146 |
uint16_t tb_jmp_offset[2]; /* offset of jump instruction */
|
|
147 | 147 |
#else |
148 | 148 |
unsigned long tb_next[2]; /* address of jump generated code */ |
149 | 149 |
#endif |
... | ... | |
234 | 234 |
|
235 | 235 |
offset = tb->tb_jmp_offset[n]; |
236 | 236 |
tb_set_jmp_target1((unsigned long)(tb->tc_ptr + offset), addr); |
237 |
offset = tb->tb_jmp_offset[n + 2]; |
|
238 |
if (offset != 0xffff) |
|
239 |
tb_set_jmp_target1((unsigned long)(tb->tc_ptr + offset), addr); |
|
240 | 237 |
} |
241 | 238 |
|
242 | 239 |
#else |
b/translate-all.c | ||
---|---|---|
104 | 104 |
#ifdef USE_DIRECT_JUMP |
105 | 105 |
s->tb_jmp_offset = tb->tb_jmp_offset; |
106 | 106 |
s->tb_next = NULL; |
107 |
/* the following two entries are optional (only used for string ops) */ |
|
108 |
/* XXX: not used ? */ |
|
109 |
tb->tb_jmp_offset[2] = 0xffff; |
|
110 |
tb->tb_jmp_offset[3] = 0xffff; |
|
111 | 107 |
#else |
112 | 108 |
s->tb_jmp_offset = NULL; |
113 | 109 |
s->tb_next = tb->tb_next; |
Also available in: Unified diff