📄 lib_mem_a.lst
字号:
148 00000034 F811 4B01 LDRB R4, [R1], #1
149 00000038 F800 4B01 STRB R4, [R0], #1
150 0000003C F1A3 0301 SUB R3, R3, #1
151 00000040 F1A2 0201 SUB R2, R2, #1
152 00000044 E7F1 B Pre_Copy_1
153 00000046
154 00000046
155 00000046 Chk_Align_16 ; check if both des
t & src 16-bit alig
ned
156 00000046 F000 0301 AND R3, R0, #0x01
157 0000004A F001 0401 AND R4, R1, #0x01
158 0000004E 42A3 CMP R3, R4
159 00000050 D000 BEQ Pre_Copy_2
160 00000052 E094 B Copy_08_1 ; not 16-bit aligne
ARM Macro Assembler Page 5
d, start 8-bit copy
(see Note #4b)
161 00000054
162 00000054 Pre_Copy_2
163 00000054 2B01 CMP R3, #1 ; copy 1 byte (to a
lign to the next 16
-bit boundary)
164 00000056 D344 BCC Copy_16_1 ; start real 16-bit
copy
165 00000058
166 00000058 F811 4B01 LDRB R4, [R1], #1
167 0000005C F800 4B01 STRB R4, [R0], #1
168 00000060 F1A3 0301 SUB R3, R3, #1
169 00000064 F1A2 0201 SUB R2, R2, #1
170 00000068 E7F4 B Pre_Copy_2
171 0000006A
172 0000006A
173 0000006A Copy_32_1
174 0000006A F5B2 7FB4 CMP R2, #(04*10*09) ; Copy 9 chunks
of 10 32-bit words
(360 octets per lo
op)
175 0000006E D326 BCC Copy_32_2
176 00000070 E8B1 1FF8 LDMIA R1!, {R3-R12}
177 00000074 E8A0 1FF8 STMIA R0!, {R3-R12}
178 00000078 E8B1 1FF8 LDMIA R1!, {R3-R12}
179 0000007C E8A0 1FF8 STMIA R0!, {R3-R12}
180 00000080 E8B1 1FF8 LDMIA R1!, {R3-R12}
181 00000084 E8A0 1FF8 STMIA R0!, {R3-R12}
182 00000088 E8B1 1FF8 LDMIA R1!, {R3-R12}
183 0000008C E8A0 1FF8 STMIA R0!, {R3-R12}
184 00000090 E8B1 1FF8 LDMIA R1!, {R3-R12}
185 00000094 E8A0 1FF8 STMIA R0!, {R3-R12}
186 00000098 E8B1 1FF8 LDMIA R1!, {R3-R12}
187 0000009C E8A0 1FF8 STMIA R0!, {R3-R12}
188 000000A0 E8B1 1FF8 LDMIA R1!, {R3-R12}
189 000000A4 E8A0 1FF8 STMIA R0!, {R3-R12}
190 000000A8 E8B1 1FF8 LDMIA R1!, {R3-R12}
191 000000AC E8A0 1FF8 STMIA R0!, {R3-R12}
192 000000B0 E8B1 1FF8 LDMIA R1!, {R3-R12}
193 000000B4 E8A0 1FF8 STMIA R0!, {R3-R12}
194 000000B8 F5A2 72B4 SUB R2, R2, #(04*10*09)
195 000000BC E7D5 B Copy_32_1
196 000000BE
197 000000BE Copy_32_2
198 000000BE 2A28 CMP R2, #(04*10*01) ; Copy chunks o
f 10 32-bit words (
40 octets per loop)
199 000000C0 D306 BCC Copy_32_3
200 000000C2 E8B1 1FF8 LDMIA R1!, {R3-R12}
201 000000C6 E8A0 1FF8 STMIA R0!, {R3-R12}
202 000000CA F1A2 0228 SUB R2, R2, #(04*10*01)
203 000000CE E7F6 B Copy_32_2
204 000000D0
205 000000D0 Copy_32_3
206 000000D0 2A04 CMP R2, #(04*01*01) ; Copy remainin
g 32-bit words
207 000000D2 D306 BCC Copy_16_1
ARM Macro Assembler Page 6
208 000000D4 F851 3B04 LDR R3, [R1], #4
209 000000D8 F840 3B04 STR R3, [R0], #4
210 000000DC F1A2 0204 SUB R2, R2, #(04*01*01)
211 000000E0 E7F6 B Copy_32_3
212 000000E2
213 000000E2 ;$PAGE
214 000000E2 Copy_16_1
215 000000E2 2A20 CMP R2, #(02*01*16) ; Copy chunks o
f 16 16-bit words (
32 bytes per loop)
216 000000E4 D342 BCC Copy_16_2
217 000000E6 F831 3B02 LDRH R3, [R1], #2
218 000000EA F820 3B02 STRH R3, [R0], #2
219 000000EE F831 3B02 LDRH R3, [R1], #2
220 000000F2 F820 3B02 STRH R3, [R0], #2
221 000000F6 F831 3B02 LDRH R3, [R1], #2
222 000000FA F820 3B02 STRH R3, [R0], #2
223 000000FE F831 3B02 LDRH R3, [R1], #2
224 00000102 F820 3B02 STRH R3, [R0], #2
225 00000106 F831 3B02 LDRH R3, [R1], #2
226 0000010A F820 3B02 STRH R3, [R0], #2
227 0000010E F831 3B02 LDRH R3, [R1], #2
228 00000112 F820 3B02 STRH R3, [R0], #2
229 00000116 F831 3B02 LDRH R3, [R1], #2
230 0000011A F820 3B02 STRH R3, [R0], #2
231 0000011E F831 3B02 LDRH R3, [R1], #2
232 00000122 F820 3B02 STRH R3, [R0], #2
233 00000126 F831 3B02 LDRH R3, [R1], #2
234 0000012A F820 3B02 STRH R3, [R0], #2
235 0000012E F831 3B02 LDRH R3, [R1], #2
236 00000132 F820 3B02 STRH R3, [R0], #2
237 00000136 F831 3B02 LDRH R3, [R1], #2
238 0000013A F820 3B02 STRH R3, [R0], #2
239 0000013E F831 3B02 LDRH R3, [R1], #2
240 00000142 F820 3B02 STRH R3, [R0], #2
241 00000146 F831 3B02 LDRH R3, [R1], #2
242 0000014A F820 3B02 STRH R3, [R0], #2
243 0000014E F831 3B02 LDRH R3, [R1], #2
244 00000152 F820 3B02 STRH R3, [R0], #2
245 00000156 F831 3B02 LDRH R3, [R1], #2
246 0000015A F820 3B02 STRH R3, [R0], #2
247 0000015E F831 3B02 LDRH R3, [R1], #2
248 00000162 F820 3B02 STRH R3, [R0], #2
249 00000166 F1A2 0220 SUB R2, R2, #(02*01*16)
250 0000016A E7BA B Copy_16_1
251 0000016C
252 0000016C Copy_16_2
253 0000016C 2A02 CMP R2, #(02*01*01) ; Copy remainin
g 16-bit words
254 0000016E D306 BCC Copy_08_1
255 00000170 F831 3B02 LDRH R3, [R1], #2
256 00000174 F820 3B02 STRH R3, [R0], #2
257 00000178 F1A2 0202 SUB R2, R2, #(02*01*01)
258 0000017C E7F6 B Copy_16_2
259 0000017E
260 0000017E ;$PAGE
261 0000017E Copy_08_1
262 0000017E 2A10 CMP R2, #(01*01*16) ; Copy chunks o
f 16 8-bit words (1
ARM Macro Assembler Page 7
6 bytes per loop)
263 00000180 D342 BCC Copy_08_2
264 00000182 F811 3B01 LDRB R3, [R1], #1
265 00000186 F800 3B01 STRB R3, [R0], #1
266 0000018A F811 3B01 LDRB R3, [R1], #1
267 0000018E F800 3B01 STRB R3, [R0], #1
268 00000192 F811 3B01 LDRB R3, [R1], #1
269 00000196 F800 3B01 STRB R3, [R0], #1
270 0000019A F811 3B01 LDRB R3, [R1], #1
271 0000019E F800 3B01 STRB R3, [R0], #1
272 000001A2 F811 3B01 LDRB R3, [R1], #1
273 000001A6 F800 3B01 STRB R3, [R0], #1
274 000001AA F811 3B01 LDRB R3, [R1], #1
275 000001AE F800 3B01 STRB R3, [R0], #1
276 000001B2 F811 3B01 LDRB R3, [R1], #1
277 000001B6 F800 3B01 STRB R3, [R0], #1
278 000001BA F811 3B01 LDRB R3, [R1], #1
279 000001BE F800 3B01 STRB R3, [R0], #1
280 000001C2 F811 3B01 LDRB R3, [R1], #1
281 000001C6 F800 3B01 STRB R3, [R0], #1
282 000001CA F811 3B01 LDRB R3, [R1], #1
283 000001CE F800 3B01 STRB R3, [R0], #1
284 000001D2 F811 3B01 LDRB R3, [R1], #1
285 000001D6 F800 3B01 STRB R3, [R0], #1
286 000001DA F811 3B01 LDRB R3, [R1], #1
287 000001DE F800 3B01 STRB R3, [R0], #1
288 000001E2 F811 3B01 LDRB R3, [R1], #1
289 000001E6 F800 3B01 STRB R3, [R0], #1
290 000001EA F811 3B01 LDRB R3, [R1], #1
291 000001EE F800 3B01 STRB R3, [R0], #1
292 000001F2 F811 3B01 LDRB R3, [R1], #1
293 000001F6 F800 3B01 STRB R3, [R0], #1
294 000001FA F811 3B01 LDRB R3, [R1], #1
295 000001FE F800 3B01 STRB R3, [R0], #1
296 00000202 F1A2 0210 SUB R2, R2, #(01*01*16)
297 00000206 E7BA B Copy_08_1
298 00000208
299 00000208 Copy_08_2
300 00000208 2A01 CMP R2, #(01*01*01) ; Copy remainin
g 8-bit words
301 0000020A D306 BCC Mem_Copy_END
302 0000020C F811 3B01 LDRB R3, [R1], #1
303 00000210 F800 3B01 STRB R3, [R0], #1
304 00000214 F1A2 0201 SUB R2, R2, #(01*01*01)
305 00000218 E7F6 B Copy_08_2
306 0000021A
307 0000021A
308 0000021A Mem_Copy_END
309 0000021A E8BD 1FF8 LDMFD SP!, {R3-R12} ; restore registe
rs from stack
310 0000021E 4770 BX LR ; return
311 00000220
312 00000220
313 00000220 END
Command Line: --debug --xref --device=DARMSTM --apcs=interwork -o.\output\lib_m
em_a.o -IC:\Keil\ARM\INC\ST\STM32F10x --list=.\rvmdk\lib_mem_a.lst ..\..\..\..\
..\uC-LIB\Ports\ARM-Cortex-M3\RealView\lib_mem_a.asm
ARM Macro Assembler Page 1 Alphabetic symbol ordering
Relocatable symbols
.text 00000000
Symbol: .text
Definitions
At line 68 in file ..\..\..\..\..\uC-LIB\Ports\ARM-Cortex-M3\RealView\lib
_mem_a.asm
Uses
None
Comment: .text unused
Chk_Align_16 00000046
Symbol: Chk_Align_16
Definitions
At line 155 in file ..\..\..\..\..\uC-LIB\Ports\ARM-Cortex-M3\RealView\li
b_mem_a.asm
Uses
At line 135 in file ..\..\..\..\..\uC-LIB\Ports\ARM-Cortex-M3\RealView\li
b_mem_a.asm
Comment: Chk_Align_16 used once
Chk_Align_32 00000016
Symbol: Chk_Align_32
Definitions
At line 131 in file ..\..\..\..\..\uC-LIB\Ports\ARM-Cortex-M3\RealView\li
b_mem_a.asm
Uses
None
Comment: Chk_Align_32 unused
Copy_08_1 0000017E
Symbol: Copy_08_1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -