1
0
Fork 0
mirror of https://github.com/tobast/libunwind-eh_elf.git synced 2025-01-10 19:23:41 +01:00

ARM: fix off-by-one in exidx VFP pop

The range of VFP registers we need to pop is inclusive.
This commit is contained in:
Tommi Rantala 2012-01-24 12:45:48 +02:00 committed by Arun Sharma
parent 458c661be7
commit ec4b23bf70

View file

@ -120,14 +120,14 @@ arm_exidx_apply_cmd (struct arm_exbuf_data *edata, struct dwarf_cursor *c)
break;
case ARM_EXIDX_CMD_VFP_POP:
/* Skip VFP registers, but be sure to adjust stack */
for (i = ARM_EXBUF_START (edata->data); i < ARM_EXBUF_END (edata->data);
for (i = ARM_EXBUF_START (edata->data); i <= ARM_EXBUF_END (edata->data);
i++)
c->cfa += 8;
if (!(edata->data & ARM_EXIDX_VFP_DOUBLE))
c->cfa += 4;
break;
case ARM_EXIDX_CMD_WREG_POP:
for (i = ARM_EXBUF_START (edata->data); i < ARM_EXBUF_END (edata->data);
for (i = ARM_EXBUF_START (edata->data); i <= ARM_EXBUF_END (edata->data);
i++)
c->cfa += 8;
break;