2022-03-09
2022-03-09 10:42:19 by Henrik Grubbström (Grubba) <grubba@grubba.org>
-
4564ed9b86206ac8ae74266125c63aa7d9cb1d95
(4 lines)
(+3/-1)
[
Show
| Annotate
]
Branch: 4564ed9b86206ac8ae74266125c63aa7d9cb1d95
Compiler [amd64]: Fix indexing out of bounds for F_XOR_INT --with-debug.
1570: Inside #if defined(PIKE_DEBUG)
#ifdef PIKE_DEBUG
static void ins_debug_instr_prologue (PIKE_INSTR_T instr, INT32 arg1, INT32 arg2)
{
+ /* NB: instr has been offset by F_OFFSET. */
int flags = instrs[instr].flags;
/* Note: maybe_update_pc() is called by amd64_call_c_opcode() above,
3112:
{
LABELS();
amd64_load_sp_reg();
- ins_debug_instr_prologue(a,b,0);
+ ins_debug_instr_prologue(a-F_OFFSET,b,0);
mov_mem8_reg(sp_reg,SVAL(-1).type, P_REG_RAX);
test_reg32(P_REG_RAX);
jnz(&label_A);