Commit | Line | Data |
---|---|---|
aa137e4d NC |
1 | .text |
2 | .global _start | |
3 | _start: | |
4 | add r2,zero,zero | |
5 | j external1 | |
6 | ||
7 | add r3,r2,r2 | |
8 | bzt zero,external2 | |
9 | ||
10 | { movei r2,external_8a; movei r3,external_8b } | |
11 | { movei r2,external_8a; movei r3,external_8b; lw zero,zero } | |
12 | { mtspr external_8a,zero } | |
13 | { mfspr zero,external_8a } | |
14 | { moveli r2,external_16a; moveli r3,external_16b } | |
15 | ||
16 | { moveli r2,lo16(external_32a); moveli r3,lo16(external_32b) } | |
17 | { addli r2,r2,hi16(external_32a); addli r3,r3,hi16(external_32b) } | |
18 | { auli r2,r2,ha16(external_32a); auli r3,r3,ha16(external_32b) } | |
19 | ||
20 | { swadd r0,r0,external_8a } | |
21 | { mm r2,r3,r4,external_5a,external_5b } | |
22 | { nop; mm r5,r6,r7,external_5a,external_5b } | |
23 | { shli r2,r3,external_5a; shli r4,r5,external_5b } | |
24 | { shli r2,r3,external_5a; shli r4,r5,external_5b; lw zero,zero } | |
25 | ||
26 | moveli r0, external1 - . | |
27 | moveli r0, lo16(external_data1 - .) | |
28 | moveli r0, hi16(external_data1 - . + 30000) | |
29 | moveli r0, ha16(external_data1 - . + 30000) | |
30 | ||
31 | .data | |
32 | .align 0x20 | |
33 | .int external1 | |
34 | .int external2 | |
35 | .short external_16a, external_16b | |
36 | .byte external_8a, external_8b | |
37 | ||
38 | .int (external_data1-.) | |
39 | .short (external_data1-.) | |
40 | .byte (external_data1-.) | |
41 | ||
42 | .short lo16(external_32a) | |
43 | .short lo16(external_32b) | |
44 | .short hi16(external_32a) | |
45 | .short hi16(external_32b) | |
46 | .short ha16(external_32a) | |
47 | .short ha16(external_32b) |