diff options
Diffstat (limited to 'c/src/lib/libbsp/powerpc/psim/vectors/vectors.S')
-rw-r--r-- | c/src/lib/libbsp/powerpc/psim/vectors/vectors.S | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/psim/vectors/vectors.S b/c/src/lib/libbsp/powerpc/psim/vectors/vectors.S index 7a9c2d8d9f..257b4b6de5 100644 --- a/c/src/lib/libbsp/powerpc/psim/vectors/vectors.S +++ b/c/src/lib/libbsp/powerpc/psim/vectors/vectors.S @@ -155,6 +155,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 |