Branch: Tag:

2022-03-09

2022-03-09 10:42:19 by Henrik Grubbström (Grubba) <grubba@grubba.org>

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);