linux-unwind.h (ppc_fallback_frame_state): Point saved CR2 offset to low 32 bits of regs->ccr rather than the whole 64-bit...
* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Point saved CR2 offset to low 32 bits of regs->ccr rather than the whole 64-bit register in 64-bit libgcc. From-SVN: r129520
This commit is contained in:
parent
6e8d3b8ae1
commit
be1d746539
|
@ -1,3 +1,9 @@
|
|||
2007-10-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Point
|
||||
saved CR2 offset to low 32 bits of regs->ccr rather than the whole
|
||||
64-bit register in 64-bit libgcc.
|
||||
|
||||
2007-10-20 Eric B. Weddington <eweddington@cso.atmel.com>
|
||||
|
||||
* config/avr/avr.c (avr_mcu_types): Add at90pwm2b, at90pwm3b.
|
||||
|
|
|
@ -250,7 +250,10 @@ ppc_fallback_frame_state (struct _Unwind_Context *context,
|
|||
}
|
||||
|
||||
fs->regs.reg[R_CR2].how = REG_SAVED_OFFSET;
|
||||
fs->regs.reg[R_CR2].loc.offset = (long) ®s->ccr - new_cfa;
|
||||
/* CR? regs are always 32-bit and PPC is big-endian, so in 64-bit
|
||||
libgcc loc.offset needs to point to the low 32 bits of regs->ccr. */
|
||||
fs->regs.reg[R_CR2].loc.offset = (long) ®s->ccr - new_cfa
|
||||
+ sizeof (long) - 4;
|
||||
|
||||
fs->regs.reg[R_LR].how = REG_SAVED_OFFSET;
|
||||
fs->regs.reg[R_LR].loc.offset = (long) ®s->link - new_cfa;
|
||||
|
|
Loading…
Reference in New Issue