|
| 1 | +#include "asm.h" |
| 2 | + |
1 | 3 | /*
|
2 | 4 | Entry point of all programs (_start).
|
3 | 5 |
|
@@ -88,45 +90,45 @@ _start:
|
88 | 90 | .global _start_trap
|
89 | 91 |
|
90 | 92 | _start_trap:
|
91 |
| - addi sp, sp, -16*4 |
92 |
| - |
93 |
| - sw ra, 0*4(sp) |
94 |
| - sw t0, 1*4(sp) |
95 |
| - sw t1, 2*4(sp) |
96 |
| - sw t2, 3*4(sp) |
97 |
| - sw t3, 4*4(sp) |
98 |
| - sw t4, 5*4(sp) |
99 |
| - sw t5, 6*4(sp) |
100 |
| - sw t6, 7*4(sp) |
101 |
| - sw a0, 8*4(sp) |
102 |
| - sw a1, 9*4(sp) |
103 |
| - sw a2, 10*4(sp) |
104 |
| - sw a3, 11*4(sp) |
105 |
| - sw a4, 12*4(sp) |
106 |
| - sw a5, 13*4(sp) |
107 |
| - sw a6, 14*4(sp) |
108 |
| - sw a7, 15*4(sp) |
| 93 | + addi sp, sp, -16*REGBYTES |
| 94 | + |
| 95 | + STORE ra, 0*REGBYTES(sp) |
| 96 | + STORE t0, 1*REGBYTES(sp) |
| 97 | + STORE t1, 2*REGBYTES(sp) |
| 98 | + STORE t2, 3*REGBYTES(sp) |
| 99 | + STORE t3, 4*REGBYTES(sp) |
| 100 | + STORE t4, 5*REGBYTES(sp) |
| 101 | + STORE t5, 6*REGBYTES(sp) |
| 102 | + STORE t6, 7*REGBYTES(sp) |
| 103 | + STORE a0, 8*REGBYTES(sp) |
| 104 | + STORE a1, 9*REGBYTES(sp) |
| 105 | + STORE a2, 10*REGBYTES(sp) |
| 106 | + STORE a3, 11*REGBYTES(sp) |
| 107 | + STORE a4, 12*REGBYTES(sp) |
| 108 | + STORE a5, 13*REGBYTES(sp) |
| 109 | + STORE a6, 14*REGBYTES(sp) |
| 110 | + STORE a7, 15*REGBYTES(sp) |
109 | 111 |
|
110 | 112 | jal ra, _start_trap_rust
|
111 | 113 |
|
112 |
| - lw ra, 0*4(sp) |
113 |
| - lw t0, 1*4(sp) |
114 |
| - lw t1, 2*4(sp) |
115 |
| - lw t2, 3*4(sp) |
116 |
| - lw t3, 4*4(sp) |
117 |
| - lw t4, 5*4(sp) |
118 |
| - lw t5, 6*4(sp) |
119 |
| - lw t6, 7*4(sp) |
120 |
| - lw a0, 8*4(sp) |
121 |
| - lw a1, 9*4(sp) |
122 |
| - lw a2, 10*4(sp) |
123 |
| - lw a3, 11*4(sp) |
124 |
| - lw a4, 12*4(sp) |
125 |
| - lw a5, 13*4(sp) |
126 |
| - lw a6, 14*4(sp) |
127 |
| - lw a7, 15*4(sp) |
128 |
| - |
129 |
| - addi sp, sp, 16*4 |
| 114 | + LOAD ra, 0*REGBYTES(sp) |
| 115 | + LOAD t0, 1*REGBYTES(sp) |
| 116 | + LOAD t1, 2*REGBYTES(sp) |
| 117 | + LOAD t2, 3*REGBYTES(sp) |
| 118 | + LOAD t3, 4*REGBYTES(sp) |
| 119 | + LOAD t4, 5*REGBYTES(sp) |
| 120 | + LOAD t5, 6*REGBYTES(sp) |
| 121 | + LOAD t6, 7*REGBYTES(sp) |
| 122 | + LOAD a0, 8*REGBYTES(sp) |
| 123 | + LOAD a1, 9*REGBYTES(sp) |
| 124 | + LOAD a2, 10*REGBYTES(sp) |
| 125 | + LOAD a3, 11*REGBYTES(sp) |
| 126 | + LOAD a4, 12*REGBYTES(sp) |
| 127 | + LOAD a5, 13*REGBYTES(sp) |
| 128 | + LOAD a6, 14*REGBYTES(sp) |
| 129 | + LOAD a7, 15*REGBYTES(sp) |
| 130 | + |
| 131 | + addi sp, sp, 16*REGBYTES |
130 | 132 | mret
|
131 | 133 |
|
132 | 134 |
|
|
0 commit comments