From ec99f1a8d082a418a8b72c20dca9834c65b1f2f7 Mon Sep 17 00:00:00 2001 From: Chris Zankel Date: Wed, 14 Nov 2007 13:47:02 -0800 Subject: [PATCH] --- yaml --- r: 85933 b: refs/heads/master c: 50c0716aa2f49a9d34589e380fad73402464c088 h: refs/heads/master i: 85931: b5e992f8ac7b846ca9cc6e0529533a94a7343359 v: v3 --- [refs] | 2 +- trunk/arch/xtensa/kernel/entry.S | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 25a5cccd9450..45a6b926ed77 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ed3174d93c342b8b2eeba6bbd124707d55304a7b +refs/heads/master: 50c0716aa2f49a9d34589e380fad73402464c088 diff --git a/trunk/arch/xtensa/kernel/entry.S b/trunk/arch/xtensa/kernel/entry.S index 91a689eca43d..401b33bfd9c0 100644 --- a/trunk/arch/xtensa/kernel/entry.S +++ b/trunk/arch/xtensa/kernel/entry.S @@ -1344,7 +1344,7 @@ ENTRY(_spill_registers) /* We are done if there are no more than the current register frame. */ - extui a3, a3, 1, WSBITS-2 # a3 = 0yyxxxwww + extui a3, a3, 1, WSBITS-1 # a3 = 0yyxxxwww movi a2, (1 << (WSBITS-1)) _beqz a3, .Lnospill # only one active frame? jump @@ -1394,6 +1394,10 @@ ENTRY(_spill_registers) l32e a4, a1, -16 j .Lc12c +.Lnospill: + rsr a2, DEPC # restore a2 and 'return' + jx a0 + .Lloop: _bbsi.l a3, 1, .Lc4 _bbci.l a3, 2, .Lc12 @@ -1419,8 +1423,6 @@ ENTRY(_spill_registers) movi a3, 1 sll a3, a3 wsr a3, WINDOWSTART - -.Lnospill: jx a0 .Lc4: s32e a4, a9, -16