Linux-2.6.12-rc2
[linux-2.6/kvm.git] / arch / sh / kernel / kgdb_jmp.S
blob339bb1d7ff0b316d8020b3f7bdd8015ead6bd4d2
1 #include <linux/linkage.h>
3 ENTRY(setjmp)
4         add     #(9*4), r4
5         sts.l   pr, @-r4
6         mov.l   r15, @-r4
7         mov.l   r14, @-r4
8         mov.l   r13, @-r4
9         mov.l   r12, @-r4
10         mov.l   r11, @-r4
11         mov.l   r10, @-r4
12         mov.l   r9, @-r4
13         mov.l   r8, @-r4
14         rts
15          mov    #0, r0
17 ENTRY(longjmp)
18         mov.l   @r4+, r8
19         mov.l   @r4+, r9
20         mov.l   @r4+, r10
21         mov.l   @r4+, r11
22         mov.l   @r4+, r12
23         mov.l   @r4+, r13
24         mov.l   @r4+, r14
25         mov.l   @r4+, r15
26         lds.l   @r4+, pr
27         mov     r5, r0
28         tst     r0, r0
29         bf      1f
30         mov     #1, r0  ! in case val==0
31 1:      rts
32          nop