4 # reserve space on stack
7 std 13, 152(1) # save R13
8 std 14, 160(1) # save R14
9 std 15, 168(1) # save R15
10 std 16, 176(1) # save R16
11 std 17, 184(1) # save R17
12 std 18, 192(1) # save R18
13 std 19, 200(1) # save R19
14 std 20, 208(1) # save R20
15 std 21, 216(1) # save R21
16 std 22, 224(1) # save R22
17 std 23, 232(1) # save R23
18 std 24, 240(1) # save R24
19 std 25, 248(1) # save R25
20 std 26, 256(1) # save R26
21 std 27, 264(1) # save R27
22 std 28, 272(1) # save R28
23 std 29, 280(1) # save R29
24 std 30, 288(1) # save R30
25 std 31, 296(1) # save R31
36 # test if fpu env should be preserved
40 stfd 14, 0(1) # save F14
41 stfd 15, 8(1) # save F15
42 stfd 16, 16(1) # save F16
43 stfd 17, 24(1) # save F17
44 stfd 18, 32(1) # save F18
45 stfd 19, 40(1) # save F19
46 stfd 20, 48(1) # save F20
47 stfd 21, 56(1) # save F21
48 stfd 22, 64(1) # save F22
49 stfd 23, 72(1) # save F23
50 stfd 24, 80(1) # save F24
51 stfd 25, 88(1) # save F25
52 stfd 26, 96(1) # save F26
53 stfd 27, 104(1) # save F27
54 stfd 28, 112(1) # save F28
55 stfd 29, 120(1) # save F29
56 stfd 30, 128(1) # save F30
57 stfd 31, 136(1) # save F31
59 stfd 0, 144(1) # save FPSCR
62 # store RSP (pointing to context-data) in R3
65 # restore RSP (pointing to context-data) from R4
68 # test if fpu env should be preserved
72 lfd 14, 0(1) # restore F14
73 lfd 15, 8(1) # restore F15
74 lfd 16, 16(1) # restore F16
75 lfd 17, 24(1) # restore F17
76 lfd 18, 32(1) # restore F18
77 lfd 19, 40(1) # restore F19
78 lfd 20, 48(1) # restore F20
79 lfd 21, 56(1) # restore F21
80 lfd 22, 64(1) # restore F22
81 lfd 23, 72(1) # restore F23
82 lfd 24, 80(1) # restore F24
83 lfd 25, 88(1) # restore F25
84 lfd 26, 96(1) # restore F26
85 lfd 27, 104(1) # restore F27
86 lfd 28, 112(1) # restore F28
87 lfd 29, 120(1) # restore F29
88 lfd 30, 128(1) # restore F30
89 lfd 31, 136(1) # restore F31
90 lfd 0, 144(1) # load FPSCR
91 mtfsf 0xff, 0 # restore FPSCR
94 ld 13, 152(1) # restore R13
95 ld 14, 160(1) # restore R14
96 ld 15, 168(1) # restore R15
97 ld 16, 176(1) # restore R16
98 ld 17, 184(1) # restore R17
99 ld 18, 192(1) # restore R18
100 ld 19, 200(1) # restore R19
101 ld 20, 208(1) # restore R20
102 ld 21, 216(1) # restore R21
103 ld 22, 224(1) # restore R22
104 ld 23, 232(1) # restore R23
105 ld 24, 240(1) # restore R24
106 ld 25, 248(1) # restore R25
107 ld 26, 256(1) # restore R26
108 ld 27, 264(1) # restore R27
109 ld 28, 272(1) # restore R28
110 ld 29, 280(1) # restore R29
111 ld 30, 288(1) # restore R30
112 ld 31, 296(1) # restore R31
129 # use third arg as return value after jump
130 # use third arg as first arg in context function