Blame


1 50f7ec33 2005-01-07 devnull /* get FPR and VR use flags with sc 0x7FF3 */
2 50f7ec33 2005-01-07 devnull /* get vsave with mfspr reg, 256 */
3 50f7ec33 2005-01-07 devnull
4 50f7ec33 2005-01-07 devnull .text
5 50f7ec33 2005-01-07 devnull .align 2
6 50f7ec33 2005-01-07 devnull
7 b8f742db 2005-01-11 devnull .globl __getmcontext
8 50f7ec33 2005-01-07 devnull
9 b8f742db 2005-01-11 devnull __getmcontext: /* xxx: instruction scheduling */
10 50f7ec33 2005-01-07 devnull mflr r0
11 50f7ec33 2005-01-07 devnull mfcr r5
12 50f7ec33 2005-01-07 devnull mfctr r6
13 50f7ec33 2005-01-07 devnull mfxer r7
14 50f7ec33 2005-01-07 devnull stw r0, 0*4(r3)
15 50f7ec33 2005-01-07 devnull stw r5, 1*4(r3)
16 50f7ec33 2005-01-07 devnull stw r6, 2*4(r3)
17 50f7ec33 2005-01-07 devnull stw r7, 3*4(r3)
18 50f7ec33 2005-01-07 devnull
19 50f7ec33 2005-01-07 devnull stw r1, 4*4(r3)
20 50f7ec33 2005-01-07 devnull stw r2, 5*4(r3)
21 b8f742db 2005-01-11 devnull li r5, 1 /* return value for setmcontext */
22 50f7ec33 2005-01-07 devnull stw r5, 6*4(r3)
23 50f7ec33 2005-01-07 devnull
24 b8f742db 2005-01-11 devnull stw r13, (0+7)*4(r3) /* callee-save GPRs */
25 b8f742db 2005-01-11 devnull stw r14, (1+7)*4(r3) /* xxx: block move */
26 b8f742db 2005-01-11 devnull stw r15, (2+7)*4(r3)
27 b8f742db 2005-01-11 devnull stw r16, (3+7)*4(r3)
28 b8f742db 2005-01-11 devnull stw r17, (4+7)*4(r3)
29 b8f742db 2005-01-11 devnull stw r18, (5+7)*4(r3)
30 b8f742db 2005-01-11 devnull stw r19, (6+7)*4(r3)
31 b8f742db 2005-01-11 devnull stw r20, (7+7)*4(r3)
32 b8f742db 2005-01-11 devnull stw r21, (8+7)*4(r3)
33 b8f742db 2005-01-11 devnull stw r22, (9+7)*4(r3)
34 b8f742db 2005-01-11 devnull stw r23, (10+7)*4(r3)
35 b8f742db 2005-01-11 devnull stw r24, (11+7)*4(r3)
36 b8f742db 2005-01-11 devnull stw r25, (12+7)*4(r3)
37 b8f742db 2005-01-11 devnull stw r26, (13+7)*4(r3)
38 b8f742db 2005-01-11 devnull stw r27, (14+7)*4(r3)
39 b8f742db 2005-01-11 devnull stw r28, (15+7)*4(r3)
40 b8f742db 2005-01-11 devnull stw r29, (16+7)*4(r3)
41 b8f742db 2005-01-11 devnull stw r30, (17+7)*4(r3)
42 b8f742db 2005-01-11 devnull stw r31, (18+7)*4(r3)
43 50f7ec33 2005-01-07 devnull
44 50f7ec33 2005-01-07 devnull li r3, 0 /* return */
45 50f7ec33 2005-01-07 devnull blr
46 50f7ec33 2005-01-07 devnull
47 b8f742db 2005-01-11 devnull .globl __setmcontext
48 50f7ec33 2005-01-07 devnull
49 b8f742db 2005-01-11 devnull __setmcontext:
50 50f7ec33 2005-01-07 devnull lwz r13, (0+7)*4(r3) /* callee-save GPRs */
51 50f7ec33 2005-01-07 devnull lwz r14, (1+7)*4(r3) /* xxx: block move */
52 50f7ec33 2005-01-07 devnull lwz r15, (2+7)*4(r3)
53 50f7ec33 2005-01-07 devnull lwz r16, (3+7)*4(r3)
54 50f7ec33 2005-01-07 devnull lwz r17, (4+7)*4(r3)
55 50f7ec33 2005-01-07 devnull lwz r18, (5+7)*4(r3)
56 50f7ec33 2005-01-07 devnull lwz r19, (6+7)*4(r3)
57 50f7ec33 2005-01-07 devnull lwz r20, (7+7)*4(r3)
58 50f7ec33 2005-01-07 devnull lwz r21, (8+7)*4(r3)
59 50f7ec33 2005-01-07 devnull lwz r22, (9+7)*4(r3)
60 50f7ec33 2005-01-07 devnull lwz r23, (10+7)*4(r3)
61 50f7ec33 2005-01-07 devnull lwz r24, (11+7)*4(r3)
62 50f7ec33 2005-01-07 devnull lwz r25, (12+7)*4(r3)
63 50f7ec33 2005-01-07 devnull lwz r26, (13+7)*4(r3)
64 50f7ec33 2005-01-07 devnull lwz r27, (14+7)*4(r3)
65 50f7ec33 2005-01-07 devnull lwz r28, (15+7)*4(r3)
66 50f7ec33 2005-01-07 devnull lwz r29, (16+7)*4(r3)
67 50f7ec33 2005-01-07 devnull lwz r30, (17+7)*4(r3)
68 50f7ec33 2005-01-07 devnull lwz r31, (18+7)*4(r3)
69 50f7ec33 2005-01-07 devnull
70 50f7ec33 2005-01-07 devnull lwz r1, 4*4(r3)
71 50f7ec33 2005-01-07 devnull lwz r2, 5*4(r3)
72 50f7ec33 2005-01-07 devnull
73 50f7ec33 2005-01-07 devnull lwz r0, 0*4(r3)
74 50f7ec33 2005-01-07 devnull mtlr r0
75 50f7ec33 2005-01-07 devnull lwz r0, 1*4(r3)
76 50f7ec33 2005-01-07 devnull mtcr r0 /* mtcrf 0xFF, r0 */
77 50f7ec33 2005-01-07 devnull lwz r0, 2*4(r3)
78 50f7ec33 2005-01-07 devnull mtctr r0
79 50f7ec33 2005-01-07 devnull lwz r0, 3*4(r3)
80 50f7ec33 2005-01-07 devnull mtxer r0
81 50f7ec33 2005-01-07 devnull
82 b8f742db 2005-01-11 devnull lwz r3, 6*4(r3)
83 50f7ec33 2005-01-07 devnull blr