Commit | Line | Data |
---|---|---|
a1dfe41e JE |
1 | # System and privileged instructions |
2 | # ld.c, st.c, flush, lock, unlock, intovr, trap | |
3 | ||
4 | .text | |
5 | ||
6 | lock | |
7 | unlock | |
8 | intovr | |
9 | ||
10 | trap %r0,%r0,%r0 | |
11 | trap %r31,%r31,%r31 | |
12 | trap %r1,%r5,%r18 | |
13 | trap %r31,%r20,%r6 | |
14 | ||
15 | ld.c %fir,%r1 | |
16 | ld.c %fir,%r31 | |
17 | ld.c %psr,%r5 | |
18 | ld.c %psr,%r30 | |
19 | ld.c %dirbase,%r10 | |
20 | ld.c %dirbase,%r2 | |
21 | ld.c %db,%r21 | |
22 | ld.c %db,%r0 | |
23 | ld.c %fsr,%r28 | |
24 | ld.c %fsr,%r12 | |
25 | ld.c %epsr,%r31 | |
26 | ld.c %epsr,%r6 | |
27 | ||
28 | st.c %r0,%fir | |
29 | st.c %r30,%fir | |
30 | st.c %r7,%psr | |
31 | st.c %r31,%psr | |
32 | st.c %r11,%dirbase | |
33 | st.c %r3,%dirbase | |
34 | st.c %r22,%db | |
35 | st.c %r15,%db | |
36 | st.c %r29,%fsr | |
37 | st.c %r13,%fsr | |
38 | st.c %r4,%epsr | |
39 | st.c %r6,%epsr | |
40 | ||
41 | # Flush, no auto-increment. | |
42 | flush 0(%r0) | |
43 | flush 128(%r1) | |
44 | flush 256(%r2) | |
45 | flush 512(%r3) | |
46 | flush 1024(%r4) | |
47 | flush 4096(%r5) | |
48 | flush 8192(%r6) | |
49 | flush 16384(%r7) | |
50 | flush -16384(%r8) | |
51 | flush -8192(%r9) | |
52 | flush -4096(%r10) | |
53 | flush -1024(%r11) | |
54 | flush -512(%r12) | |
55 | flush -248(%r13) | |
56 | flush -32(%r14) | |
57 | flush -16(%r14) | |
58 | ||
59 | # Flush, auto-increment. | |
60 | flush 0(%r0)++ | |
61 | flush 128(%r1)++ | |
62 | flush 256(%r2)++ | |
63 | flush 512(%r3)++ | |
64 | flush 1024(%r4)++ | |
65 | flush 4096(%r22)++ | |
66 | flush 8192(%r23)++ | |
67 | flush 16384(%r24)++ | |
68 | flush -16384(%r25)++ | |
69 | flush -8192(%r26)++ | |
70 | flush -4096(%r27)++ | |
71 | flush -1024(%r28)++ | |
72 | flush -512(%r29)++ | |
73 | flush -248(%r30)++ | |
74 | flush 32(%r31)++ | |
75 | flush 16(%r31)++ | |
76 |