summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/shared/vectors/vectors.S
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/powerpc/shared/vectors/vectors.S')
-rw-r--r--c/src/lib/libbsp/powerpc/shared/vectors/vectors.S6
1 files changed, 5 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/vectors/vectors.S b/c/src/lib/libbsp/powerpc/shared/vectors/vectors.S
index 7ba2fe408d..0f1df3511f 100644
--- a/c/src/lib/libbsp/powerpc/shared/vectors/vectors.S
+++ b/c/src/lib/libbsp/powerpc/shared/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