diff options
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S')
-rw-r--r-- | c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S b/c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S index 8692974243..1c02f13d89 100644 --- a/c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S +++ b/c/src/lib/libbsp/powerpc/mpc8260ads/vectors/vectors.S @@ -139,6 +139,10 @@ SYM (push_normalized_frame): mtsrr0 r3 lwz r3, GPR3_OFFSET(r1) - addi r1,r1, EXCEPTION_FRAME_END + /* DONT add back the frame size but reload the value + * stored in the frame -- maybe the exception handler + * changed it with good reason (e.g., gdb pushed a dummy frame) + */ + lwz r1, GPR1_OFFSET(r1) SYNC rfi |