Go to the documentation of this file.
119 #define SAVE_ARGUMENT_REGISTERS \
121 str a1, [sp, 1 * 8] ; \
122 str a2, [sp, 2 * 8] ; \
123 str a3, [sp, 3 * 8] ; \
124 str a4, [sp, 4 * 8] ; \
125 str a5, [sp, 5 * 8] ; \
126 str a6, [sp, 6 * 8] ; \
127 str a7, [sp, 7 * 8] ; \
129 str fa0, [sp, 8 * 8] ; \
130 str fa1, [sp, 9 * 8] ; \
131 str fa2, [sp, 10 * 8] ; \
132 str fa3, [sp, 11 * 8] ; \
133 str fa4, [sp, 12 * 8] ; \
134 str fa5, [sp, 13 * 8] ; \
135 str fa6, [sp, 14 * 8] ; \
136 str fa7, [sp, 15 * 8] ;
138 #define RESTORE_ARGUMENT_REGISTERS \
140 ldr a1, [sp, 1 * 8] ; \
141 ldr a2, [sp, 2 * 8] ; \
142 ldr a3, [sp, 3 * 8] ; \
143 ldr a4, [sp, 4 * 8] ; \
144 ldr a5, [sp, 5 * 8] ; \
145 ldr a6, [sp, 6 * 8] ; \
146 ldr a7, [sp, 7 * 8] ; \
148 ldr fa0, [sp, 8 * 8] ; \
149 ldr fa1, [sp, 9 * 8] ; \
150 ldr fa2, [sp, 10 * 8] ; \
151 ldr fa3, [sp, 11 * 8] ; \
152 ldr fa4, [sp, 12 * 8] ; \
153 ldr fa5, [sp, 13 * 8] ; \
154 ldr fa6, [sp, 14 * 8] ; \
155 ldr fa7, [sp, 15 * 8] ;
157 #define SAVE_TEMPORARY_REGISTERS(off) \
158 str t0, [sp, (0 + (off)) * 8] ; \
159 str t1, [sp, (1 + (off)) * 8] ; \
160 str t2, [sp, (2 + (off)) * 8] ; \
161 str t3, [sp, (3 + (off)) * 8] ; \
162 str t4, [sp, (4 + (off)) * 8] ; \
163 str t5, [sp, (5 + (off)) * 8] ; \
165 str ft0, [sp, (6 + (off)) * 8] ; \
166 str ft1, [sp, (7 + (off)) * 8] ; \
167 str ft2, [sp, (8 + (off)) * 8] ; \
168 str ft3, [sp, (9 + (off)) * 8] ; \
169 str ft4, [sp, (10 + (off)) * 8] ; \
170 str ft5, [sp, (11 + (off)) * 8] ; \
171 str ft6, [sp, (12 + (off)) * 8] ; \
172 str ft7, [sp, (13 + (off)) * 8] ; \
173 str ft8, [sp, (14 + (off)) * 8] ; \
174 str ft9, [sp, (15 + (off)) * 8] ; \
175 str ft10, [sp, (16 + (off)) * 8] ; \
176 str ft11, [sp, (17 + (off)) * 8] ; \
177 str ft12, [sp, (18 + (off)) * 8] ; \
179 #define RESTORE_TEMPORARY_REGISTERS(off) \
180 ldr t0, [sp, (0 + (off)) * 8] ; \
181 ldr t1, [sp, (1 + (off)) * 8] ; \
182 ldr t2, [sp, (2 + (off)) * 8] ; \
183 ldr t3, [sp, (3 + (off)) * 8] ; \
184 ldr t3, [sp, (4 + (off)) * 8] ; \
185 ldr t3, [sp, (5 + (off)) * 8] ; \
187 ldr ft0, [sp, (6 + (off)) * 8] ; \
188 ldr ft1, [sp, (7 + (off)) * 8] ; \
189 ldr ft2, [sp, (8 + (off)) * 8] ; \
190 ldr ft3, [sp, (9 + (off)) * 8] ; \
191 ldr ft4, [sp, (10 + (off)) * 8] ; \
192 ldr ft5, [sp, (11 + (off)) * 8] ; \
193 ldr ft6, [sp, (12 + (off)) * 8] ; \
194 ldr ft7, [sp, (13 + (off)) * 8] ; \
195 ldr ft8, [sp, (14 + (off)) * 8] ; \
196 ldr ft9, [sp, (15 + (off)) * 8] ; \
197 ldr ft10, [sp, (16 + (off)) * 8] ; \
198 ldr ft11, [sp, (17 + (off)) * 8] ; \
199 ldr ft12, [sp, (18 + (off)) * 8] ; \
201 #endif // MD_ASM_HPP_