[OpenBIOS] [commit] r1359 - trunk/openbios-devel/arch/sparc64
repository service
svn at openbios.org
Tue Dec 29 16:50:24 CET 2015
Author: mcayland
Date: Tue Dec 29 16:50:24 2015
New Revision: 1359
URL: http://tracker.coreboot.org/trac/openbios/changeset/1359
Log:
SPARC64: create proper stack frame when entering client interface
The original motivation behind reducing the stack frame size was in
order to keep the stack usage low enough to boot OpenBSD/NetBSD.
Since the final solution now is to save and restore the entire CPU state
around CIF calls then this no longer matters.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at ilande.co.uk>
Modified:
trunk/openbios-devel/arch/sparc64/call-client.S
Modified: trunk/openbios-devel/arch/sparc64/call-client.S
==============================================================================
--- trunk/openbios-devel/arch/sparc64/call-client.S Fri Nov 6 16:06:36 2015 (r1358)
+++ trunk/openbios-devel/arch/sparc64/call-client.S Tue Dec 29 16:50:24 2015 (r1359)
@@ -176,15 +176,15 @@
sparc64_of_client_interface:
/* Save globals on callers stack */
- add %sp, -56, %sp
+ add %sp, -248, %sp
- stx %g1, [%sp + 2047 + 0]
- stx %g2, [%sp + 2047 + 8]
- stx %g3, [%sp + 2047 + 16]
- stx %g4, [%sp + 2047 + 24]
- stx %g5, [%sp + 2047 + 32]
- stx %g6, [%sp + 2047 + 40]
- stx %g7, [%sp + 2047 + 48]
+ stx %g1, [%sp + 2047 + 192]
+ stx %g2, [%sp + 2047 + 200]
+ stx %g3, [%sp + 2047 + 208]
+ stx %g4, [%sp + 2047 + 216]
+ stx %g5, [%sp + 2047 + 224]
+ stx %g6, [%sp + 2047 + 232]
+ stx %g7, [%sp + 2047 + 240]
/* Save client trap table */
setx client_tba, %g6, %g7
@@ -222,15 +222,15 @@
wrpr %g6, %tba
/* Restore globals */
- ldx [%sp + 2047 + 0], %g1
- ldx [%sp + 2047 + 8], %g2
- ldx [%sp + 2047 + 16], %g3
- ldx [%sp + 2047 + 24], %g4
- ldx [%sp + 2047 + 32], %g5
- ldx [%sp + 2047 + 40], %g6
- ldx [%sp + 2047 + 48], %g7
+ ldx [%sp + 2047 + 192], %g1
+ ldx [%sp + 2047 + 200], %g2
+ ldx [%sp + 2047 + 208], %g3
+ ldx [%sp + 2047 + 216], %g4
+ ldx [%sp + 2047 + 224], %g5
+ ldx [%sp + 2047 + 232], %g6
+ ldx [%sp + 2047 + 240], %g7
- add %sp, 56, %sp
+ add %sp, 248, %sp
jmp %o7+8
nop
More information about the OpenBIOS
mailing list