Commit | Line | Data |
---|---|---|
8df55cb8 CM |
1 | .text |
2 | .global move_register | |
3 | move_register: | |
4 | r7 = A0.X; | |
5 | Fp = B3; | |
6 | l2 = R5; | |
7 | M2 = i2; | |
8 | a1.w = usp; | |
9 | r0 = astat; | |
10 | r1 = sEQstat; | |
11 | R2 = SYScfg; | |
12 | R3 = reti; | |
13 | R4 = RETX; | |
14 | r5 = reTN; | |
15 | r6 = rETe; | |
16 | R7 = RETS; | |
17 | R5 = lc0; | |
18 | r4 = Lc1; | |
19 | r3 = Lt0; | |
20 | r2 = LT1; | |
21 | r1 = Lb0; | |
22 | r0 = LB1; | |
23 | R2 = Cycles; | |
24 | R3 = Cycles2; | |
25 | r1 = emudat; | |
26 | CYCLES = A0.W; | |
27 | Rets = Fp; | |
28 | Lt1 = USP; | |
29 | ASTAT = P2; | |
30 | A0 = A1; | |
31 | a1 = a0; | |
32 | a0 = R0; | |
33 | A1 = r1; | |
34 | ||
35 | R4 = A0 (fu); | |
36 | r5 = A1 (ISS2); | |
37 | R6 = a0; | |
38 | R7 = A1; | |
39 | R6 = A0, R7 = a1; | |
40 | r1 = a1, r0 = a0 (fu); | |
41 | ||
42 | .text | |
43 | .global move_conditional | |
44 | move_conditional: | |
45 | if cc R5 = P2; | |
46 | if !cc Sp = R0; | |
47 | ||
48 | .text | |
49 | .global move_half_to_full_zero_extend | |
50 | move_half_to_full_zero_extend: | |
51 | R2 = r7.L (Z); | |
52 | r0 = R1.L (z); | |
53 | ||
54 | .text | |
55 | .global move_half_to_full_sign_extend | |
56 | move_half_to_full_sign_extend: | |
57 | R5 = R1.L (x); | |
58 | r3 = r2.L (X); | |
59 | ||
60 | .text | |
61 | .global move_register_half | |
62 | move_register_half: | |
63 | A0.X = r5.l; | |
64 | a1.X = r2.L; | |
65 | r0.l = a0.x; | |
66 | R7.l = A1.X; | |
67 | A0.L = r3.l; | |
68 | a1.l = r4.l; | |
69 | A0.h = r6.H; | |
70 | A1.H = r5.h; | |
71 | r0.l = A0 (iu); | |
72 | R1.H = A1 (s2rnd); | |
73 | r1.h = a1; | |
74 | R2.l = A0, r2.H = A1 (IH); | |
75 | R2.l = A0, r2.H = A1; | |
76 | r0.H = A1, R0.L = a0 (t); | |
77 | r0.H = A1, R0.L = a0 (fu); | |
78 | r0.H = A1, R0.L = a0 (is); | |
79 | r0.H = A1, R0.L = a0; | |
80 | ||
81 | .text | |
82 | .global move_byte_zero_extend | |
83 | move_byte_zero_extend: | |
84 | R7 = r2.b (z); | |
85 | r0 = R1.B (Z); | |
86 | ||
87 | .text | |
88 | .global move_byte_sign_extend | |
89 | move_byte_sign_extend: | |
90 | r6 = r1.b (Z); | |
91 | R5 = R4.B (z); |