ARM GAS /tmp/cce47I8s.s page 1 1 .cpu cortex-m4 2 .eabi_attribute 27, 1 3 .eabi_attribute 28, 1 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 2 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "stm32g4xx_hal_flash.c" 14 .text 15 .section .text.HAL_FLASH_Program,"ax",%progbits 16 .align 1 17 .p2align 2,,3 18 .global HAL_FLASH_Program 19 .arch armv7e-m 20 .syntax unified 21 .thumb 22 .thumb_func 23 .fpu fpv4-sp-d16 25 HAL_FLASH_Program: 26 @ args = 0, pretend = 0, frame = 0 27 @ frame_needed = 0, uses_anonymous_args = 0 28 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr} 29 0004 DFF84881 ldr r8, .L44+4 30 0008 9A46 mov r10, r3 31 000a 98F80030 ldrb r3, [r8] @ zero_extendqisi2 32 000e 012B cmp r3, #1 33 0010 4FD0 beq .L20 34 0012 0123 movs r3, #1 35 0014 8146 mov r9, r0 36 0016 0E46 mov r6, r1 37 0018 1746 mov r7, r2 38 001a 88F80030 strb r3, [r8] 39 001e FFF7FEFF bl HAL_GetTick 40 0022 4A4D ldr r5, .L44 41 0024 0446 mov r4, r0 42 0026 06E0 b .L3 43 .L5: 44 0028 FFF7FEFF bl HAL_GetTick 45 002c A0EB040C sub ip, r0, r4 46 0030 BCF57A7F cmp ip, #1000 47 0034 37D8 bhi .L21 48 .L3: 49 0036 2B69 ldr r3, [r5, #16] 50 0038 D803 lsls r0, r3, #15 51 003a F5D4 bmi .L5 52 003c 2C69 ldr r4, [r5, #16] 53 003e 4CF2FA33 movw r3, #50170 54 0042 1C40 ands r4, r4, r3 55 0044 46D1 bne .L40 56 0046 2B69 ldr r3, [r5, #16] 57 0048 D907 lsls r1, r3, #31 58 004a 44BF itt mi ARM GAS /tmp/cce47I8s.s page 2 59 004c 0123 movmi r3, #1 60 004e 2B61 strmi r3, [r5, #16] 61 0050 0023 movs r3, #0 62 0052 C8F80430 str r3, [r8, #4] 63 0056 B9F1000F cmp r9, #0 64 005a 2DD0 beq .L41 65 005c 09F1FF33 add r3, r9, #-1 66 0060 012B cmp r3, #1 67 0062 3FD9 bls .L42 68 .L9: 69 0064 FFF7FEFF bl HAL_GetTick 70 0068 384E ldr r6, .L44 71 006a 0546 mov r5, r0 72 006c 05E0 b .L16 73 .L18: 74 006e FFF7FEFF bl HAL_GetTick 75 0072 401B subs r0, r0, r5 76 0074 B0F57A7F cmp r0, #1000 77 0078 2AD8 bhi .L22 78 .L16: 79 007a 3369 ldr r3, [r6, #16] 80 007c DB03 lsls r3, r3, #15 81 007e F6D4 bmi .L18 82 0080 3369 ldr r3, [r6, #16] 83 0082 4CF2FA32 movw r2, #50170 84 0086 1340 ands r3, r3, r2 85 0088 4FD1 bne .L43 86 008a 3069 ldr r0, [r6, #16] 87 008c 10F00100 ands r0, r0, #1 88 0090 02D0 beq .L17 89 0092 0122 movs r2, #1 90 0094 3261 str r2, [r6, #16] 91 0096 1846 mov r0, r3 92 .L17: 93 0098 34B1 cbz r4, .L4 94 009a 2C4A ldr r2, .L44 95 009c 5369 ldr r3, [r2, #20] 96 009e 23EA0404 bic r4, r3, r4 97 00a2 5461 str r4, [r2, #20] 98 00a4 00E0 b .L4 99 .L21: 100 00a6 0320 movs r0, #3 101 .L4: 102 00a8 0023 movs r3, #0 103 00aa 88F80030 strb r3, [r8] 104 00ae BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 105 .L20: 106 00b2 0220 movs r0, #2 107 00b4 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 108 .L41: 109 00b8 244A ldr r2, .L44 110 00ba 5369 ldr r3, [r2, #20] 111 00bc 43F00103 orr r3, r3, #1 112 00c0 5361 str r3, [r2, #20] 113 00c2 3760 str r7, [r6] 114 .syntax unified 115 @ 935 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 ARM GAS /tmp/cce47I8s.s page 3 116 00c4 BFF36F8F isb 0xF 117 @ 0 "" 2 118 .thumb 119 .syntax unified 120 00c8 0124 movs r4, #1 121 00ca C6F804A0 str r10, [r6, #4] 122 00ce C9E7 b .L9 123 .L22: 124 00d0 0320 movs r0, #3 125 00d2 E1E7 b .L17 126 .L40: 127 00d4 D8F80430 ldr r3, [r8, #4] 128 00d8 2343 orrs r3, r3, r4 129 00da C8F80430 str r3, [r8, #4] 130 00de 0120 movs r0, #1 131 00e0 2C61 str r4, [r5, #16] 132 00e2 E1E7 b .L4 133 .L42: 134 00e4 1949 ldr r1, .L44 135 00e6 4A69 ldr r2, [r1, #20] 136 00e8 42F48022 orr r2, r2, #262144 137 00ec 3B46 mov r3, r7 138 00ee 4A61 str r2, [r1, #20] 139 .syntax unified 140 @ 453 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 141 00f0 EFF31085 MRS r5, primask 142 @ 0 "" 2 143 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 144 00f4 72B6 cpsid i 145 @ 0 "" 2 146 .thumb 147 .syntax unified 148 00f6 46EA0702 orr r2, r6, r7 149 00fa 5207 lsls r2, r2, #29 150 00fc 1DD1 bne .L11 151 00fe 3A1D adds r2, r7, #4 152 0100 B242 cmp r2, r6 153 0102 1AD0 beq .L11 154 0104 07F58077 add r7, r7, #256 155 0108 F61A subs r6, r6, r3 156 .L12: 157 010a D3E90001 ldrd r0, [r3] 158 010e F218 adds r2, r6, r3 159 0110 0833 adds r3, r3, #8 160 0112 BB42 cmp r3, r7 161 0114 C2E90001 strd r0, [r2] 162 0118 F7D1 bne .L12 163 .L13: 164 .syntax unified 165 @ 481 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 166 011a 85F31088 MSR primask, r5 167 @ 0 "" 2 168 .thumb 169 .syntax unified 170 011e B9F1020F cmp r9, #2 171 0122 08BF it eq 172 0124 4FF48024 moveq r4, #262144 ARM GAS /tmp/cce47I8s.s page 4 173 0128 9CE7 b .L9 174 .L43: 175 012a D8F80420 ldr r2, [r8, #4] 176 012e 1A43 orrs r2, r2, r3 177 0130 C8F80420 str r2, [r8, #4] 178 0134 0120 movs r0, #1 179 0136 3361 str r3, [r6, #16] 180 0138 AEE7 b .L17 181 .L11: 182 013a F61B subs r6, r6, r7 183 013c 07F58077 add r7, r7, #256 184 .L14: 185 0140 1A68 ldr r2, [r3] 186 0142 9A51 str r2, [r3, r6] 187 0144 0433 adds r3, r3, #4 188 0146 9F42 cmp r7, r3 189 0148 FAD1 bne .L14 190 014a E6E7 b .L13 191 .L45: 192 .align 2 193 .L44: 194 014c 00200240 .word 1073881088 195 0150 00000000 .word .LANCHOR0 197 .section .text.HAL_FLASH_Program_IT,"ax",%progbits 198 .align 1 199 .p2align 2,,3 200 .global HAL_FLASH_Program_IT 201 .syntax unified 202 .thumb 203 .thumb_func 204 .fpu fpv4-sp-d16 206 HAL_FLASH_Program_IT: 207 @ args = 0, pretend = 0, frame = 0 208 @ frame_needed = 0, uses_anonymous_args = 0 209 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr} 210 0004 DFF82491 ldr r9, .L79+4 211 0008 9A46 mov r10, r3 212 000a 99F80030 ldrb r3, [r9] @ zero_extendqisi2 213 000e 012B cmp r3, #1 214 0010 40D0 beq .L60 215 0012 0123 movs r3, #1 216 0014 89F80030 strb r3, [r9] 217 0018 0023 movs r3, #0 218 001a 0746 mov r7, r0 219 001c 0E46 mov r6, r1 220 001e 9046 mov r8, r2 221 0020 C9F80430 str r3, [r9, #4] 222 0024 FFF7FEFF bl HAL_GetTick 223 0028 3F4D ldr r5, .L79 224 002a 0446 mov r4, r0 225 002c 06E0 b .L48 226 .L50: 227 002e FFF7FEFF bl HAL_GetTick 228 0032 A0EB040C sub ip, r0, r4 229 0036 BCF57A7F cmp ip, #1000 230 003a 25D8 bhi .L61 231 .L48: ARM GAS /tmp/cce47I8s.s page 5 232 003c 2B69 ldr r3, [r5, #16] 233 003e D803 lsls r0, r3, #15 234 0040 F5D4 bmi .L50 235 0042 2B69 ldr r3, [r5, #16] 236 0044 4CF2FA32 movw r2, #50170 237 0048 1340 ands r3, r3, r2 238 004a 5BD1 bne .L76 239 004c 2B69 ldr r3, [r5, #16] 240 004e D907 lsls r1, r3, #31 241 0050 23D4 bmi .L77 242 0052 022F cmp r7, #2 243 0054 25D0 beq .L78 244 .L53: 245 0056 344B ldr r3, .L79 246 0058 0322 movs r2, #3 247 005a 89F80820 strb r2, [r9, #8] 248 005e C9F80C60 str r6, [r9, #12] 249 0062 5A69 ldr r2, [r3, #20] 250 0064 42F04072 orr r2, r2, #50331648 251 0068 5A61 str r2, [r3, #20] 252 006a 002F cmp r7, #0 253 006c 43D1 bne .L55 254 006e 5A69 ldr r2, [r3, #20] 255 0070 42F00102 orr r2, r2, #1 256 0074 5A61 str r2, [r3, #20] 257 0076 C6F80080 str r8, [r6] 258 .syntax unified 259 @ 935 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 260 007a BFF36F8F isb 0xF 261 @ 0 "" 2 262 .thumb 263 .syntax unified 264 007e C6F804A0 str r10, [r6, #4] 265 0082 3846 mov r0, r7 266 0084 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 267 .L61: 268 0088 0320 movs r0, #3 269 .L49: 270 008a 0023 movs r3, #0 271 008c 89F80030 strb r3, [r9] 272 .L47: 273 0090 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 274 .L60: 275 0094 0220 movs r0, #2 276 0096 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 277 .L77: 278 009a 0123 movs r3, #1 279 009c 022F cmp r7, #2 280 009e 2B61 str r3, [r5, #16] 281 00a0 D9D1 bne .L53 282 .L78: 283 00a2 214A ldr r2, .L79 284 00a4 0423 movs r3, #4 285 00a6 89F80830 strb r3, [r9, #8] 286 00aa C9F80C60 str r6, [r9, #12] 287 00ae 5369 ldr r3, [r2, #20] 288 00b0 43F04073 orr r3, r3, #50331648 ARM GAS /tmp/cce47I8s.s page 6 289 00b4 5361 str r3, [r2, #20] 290 .L54: 291 00b6 1C49 ldr r1, .L79 292 00b8 4A69 ldr r2, [r1, #20] 293 00ba 42F48022 orr r2, r2, #262144 294 00be 4346 mov r3, r8 295 00c0 4A61 str r2, [r1, #20] 296 .syntax unified 297 @ 453 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 298 00c2 EFF31084 MRS r4, primask 299 @ 0 "" 2 300 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 301 00c6 72B6 cpsid i 302 @ 0 "" 2 303 .thumb 304 .syntax unified 305 00c8 46EA0802 orr r2, r6, r8 306 00cc 5207 lsls r2, r2, #29 307 00ce 21D1 bne .L56 308 00d0 08F10402 add r2, r8, #4 309 00d4 B242 cmp r2, r6 310 00d6 1DD0 beq .L56 311 00d8 08F58078 add r8, r8, #256 312 00dc F61A subs r6, r6, r3 313 .L57: 314 00de D3E90001 ldrd r0, [r3] 315 00e2 F218 adds r2, r6, r3 316 00e4 0833 adds r3, r3, #8 317 00e6 4345 cmp r3, r8 318 00e8 C2E90001 strd r0, [r2] 319 00ec F7D1 bne .L57 320 .L58: 321 .syntax unified 322 @ 481 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 323 00ee 84F31088 MSR primask, r4 324 @ 0 "" 2 325 .thumb 326 .syntax unified 327 00f2 0020 movs r0, #0 328 00f4 CCE7 b .L47 329 .L55: 330 00f6 013F subs r7, r7, #1 331 00f8 012F cmp r7, #1 332 00fa 88BF it hi 333 00fc 0020 movhi r0, #0 334 00fe DAD9 bls .L54 335 0100 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 336 .L76: 337 0104 D9F80420 ldr r2, [r9, #4] 338 0108 1A43 orrs r2, r2, r3 339 010a C9F80420 str r2, [r9, #4] 340 010e 0120 movs r0, #1 341 0110 2B61 str r3, [r5, #16] 342 0112 BAE7 b .L49 343 .L56: 344 0114 08F58071 add r1, r8, #256 345 0118 A6EB0806 sub r6, r6, r8 ARM GAS /tmp/cce47I8s.s page 7 346 .L59: 347 011c 1A68 ldr r2, [r3] 348 011e 9A51 str r2, [r3, r6] 349 0120 0433 adds r3, r3, #4 350 0122 9942 cmp r1, r3 351 0124 FAD1 bne .L59 352 0126 E2E7 b .L58 353 .L80: 354 .align 2 355 .L79: 356 0128 00200240 .word 1073881088 357 012c 00000000 .word .LANCHOR0 359 .section .text.HAL_FLASH_EndOfOperationCallback,"ax",%progbits 360 .align 1 361 .p2align 2,,3 362 .weak HAL_FLASH_EndOfOperationCallback 363 .syntax unified 364 .thumb 365 .thumb_func 366 .fpu fpv4-sp-d16 368 HAL_FLASH_EndOfOperationCallback: 369 @ args = 0, pretend = 0, frame = 0 370 @ frame_needed = 0, uses_anonymous_args = 0 371 @ link register save eliminated. 372 0000 7047 bx lr 374 0002 00BF .section .text.HAL_FLASH_OperationErrorCallback,"ax",%progbits 375 .align 1 376 .p2align 2,,3 377 .weak HAL_FLASH_OperationErrorCallback 378 .syntax unified 379 .thumb 380 .thumb_func 381 .fpu fpv4-sp-d16 383 HAL_FLASH_OperationErrorCallback: 384 @ args = 0, pretend = 0, frame = 0 385 @ frame_needed = 0, uses_anonymous_args = 0 386 @ link register save eliminated. 387 0000 7047 bx lr 389 0002 00BF .section .text.HAL_FLASH_IRQHandler,"ax",%progbits 390 .align 1 391 .p2align 2,,3 392 .global HAL_FLASH_IRQHandler 393 .syntax unified 394 .thumb 395 .thumb_func 396 .fpu fpv4-sp-d16 398 HAL_FLASH_IRQHandler: 399 @ args = 0, pretend = 0, frame = 0 400 @ frame_needed = 0, uses_anonymous_args = 0 401 0000 3A4A ldr r2, .L108 402 0002 5369 ldr r3, [r2, #20] 403 0004 23F4FF73 bic r3, r3, #510 404 0008 10B5 push {r4, lr} 405 000a 23F00103 bic r3, r3, #1 406 000e 384C ldr r4, .L108+4 407 0010 5361 str r3, [r2, #20] 408 0012 237A ldrb r3, [r4, #8] @ zero_extendqisi2 ARM GAS /tmp/cce47I8s.s page 8 409 0014 042B cmp r3, #4 410 0016 03D1 bne .L84 411 0018 5369 ldr r3, [r2, #20] 412 001a 23F48023 bic r3, r3, #262144 413 001e 5361 str r3, [r2, #20] 414 .L84: 415 0020 3249 ldr r1, .L108 416 0022 0B69 ldr r3, [r1, #16] 417 0024 4CF2FA32 movw r2, #50170 418 0028 1340 ands r3, r3, r2 419 002a 2FD1 bne .L102 420 .L85: 421 002c 2F4B ldr r3, .L108 422 002e 1A69 ldr r2, [r3, #16] 423 0030 D207 lsls r2, r2, #31 424 0032 14D5 bpl .L89 425 0034 0122 movs r2, #1 426 0036 1A61 str r2, [r3, #16] 427 0038 237A ldrb r3, [r4, #8] @ zero_extendqisi2 428 003a 9342 cmp r3, r2 429 003c 1AD1 bne .L90 430 003e A369 ldr r3, [r4, #24] 431 0040 013B subs r3, r3, #1 432 0042 A361 str r3, [r4, #24] 433 0044 A369 ldr r3, [r4, #24] 434 0046 002B cmp r3, #0 435 0048 32D0 beq .L91 436 004a 6069 ldr r0, [r4, #20] 437 004c FFF7FEFF bl HAL_FLASH_EndOfOperationCallback 438 0050 6369 ldr r3, [r4, #20] 439 0052 0133 adds r3, r3, #1 440 0054 6361 str r3, [r4, #20] 441 0056 6069 ldr r0, [r4, #20] 442 0058 2169 ldr r1, [r4, #16] 443 005a FFF7FEFF bl FLASH_PageErase 444 .L89: 445 005e 237A ldrb r3, [r4, #8] @ zero_extendqisi2 446 0060 03F0FF02 and r2, r3, #255 447 0064 2BB9 cbnz r3, .L83 448 0066 2149 ldr r1, .L108 449 0068 4B69 ldr r3, [r1, #20] 450 006a 23F04073 bic r3, r3, #50331648 451 006e 4B61 str r3, [r1, #20] 452 0070 2270 strb r2, [r4] 453 .L83: 454 0072 10BD pop {r4, pc} 455 .L90: 456 0074 FFF7FEFF bl FLASH_FlushCaches 457 0078 227A ldrb r2, [r4, #8] @ zero_extendqisi2 458 007a 022A cmp r2, #2 459 007c D3B2 uxtb r3, r2 460 007e 2DD0 beq .L103 461 0080 033B subs r3, r3, #3 462 0082 012B cmp r3, #1 463 0084 2ED9 bls .L104 464 .L93: 465 0086 0023 movs r3, #0 ARM GAS /tmp/cce47I8s.s page 9 466 0088 2372 strb r3, [r4, #8] 467 008a E8E7 b .L89 468 .L102: 469 008c 6268 ldr r2, [r4, #4] 470 008e 1A43 orrs r2, r2, r3 471 0090 6260 str r2, [r4, #4] 472 0092 0B61 str r3, [r1, #16] 473 0094 FFF7FEFF bl FLASH_FlushCaches 474 0098 227A ldrb r2, [r4, #8] @ zero_extendqisi2 475 009a 012A cmp r2, #1 476 009c D3B2 uxtb r3, r2 477 009e 15D0 beq .L105 478 00a0 022B cmp r3, #2 479 00a2 17D0 beq .L106 480 00a4 033B subs r3, r3, #3 481 00a6 012B cmp r3, #1 482 00a8 0CD9 bls .L107 483 .L87: 484 00aa 0023 movs r3, #0 485 00ac 2372 strb r3, [r4, #8] 486 00ae BDE7 b .L85 487 .L91: 488 00b0 4FF0FF32 mov r2, #-1 489 00b4 6261 str r2, [r4, #20] 490 00b6 2372 strb r3, [r4, #8] 491 00b8 FFF7FEFF bl FLASH_FlushCaches 492 00bc 6069 ldr r0, [r4, #20] 493 00be FFF7FEFF bl HAL_FLASH_EndOfOperationCallback 494 00c2 CCE7 b .L89 495 .L107: 496 00c4 E068 ldr r0, [r4, #12] 497 00c6 FFF7FEFF bl HAL_FLASH_OperationErrorCallback 498 00ca EEE7 b .L87 499 .L105: 500 00cc 6069 ldr r0, [r4, #20] 501 00ce FFF7FEFF bl HAL_FLASH_OperationErrorCallback 502 00d2 EAE7 b .L87 503 .L106: 504 00d4 2069 ldr r0, [r4, #16] 505 00d6 FFF7FEFF bl HAL_FLASH_OperationErrorCallback 506 00da E6E7 b .L87 507 .L103: 508 00dc 2069 ldr r0, [r4, #16] 509 00de FFF7FEFF bl HAL_FLASH_EndOfOperationCallback 510 00e2 D0E7 b .L93 511 .L104: 512 00e4 E068 ldr r0, [r4, #12] 513 00e6 FFF7FEFF bl HAL_FLASH_EndOfOperationCallback 514 00ea CCE7 b .L93 515 .L109: 516 .align 2 517 .L108: 518 00ec 00200240 .word 1073881088 519 00f0 00000000 .word .LANCHOR0 521 .section .text.HAL_FLASH_Unlock,"ax",%progbits 522 .align 1 523 .p2align 2,,3 ARM GAS /tmp/cce47I8s.s page 10 524 .global HAL_FLASH_Unlock 525 .syntax unified 526 .thumb 527 .thumb_func 528 .fpu fpv4-sp-d16 530 HAL_FLASH_Unlock: 531 @ args = 0, pretend = 0, frame = 0 532 @ frame_needed = 0, uses_anonymous_args = 0 533 @ link register save eliminated. 534 0000 064B ldr r3, .L114 535 0002 5A69 ldr r2, [r3, #20] 536 0004 002A cmp r2, #0 537 0006 01DB blt .L113 538 0008 0020 movs r0, #0 539 000a 7047 bx lr 540 .L113: 541 000c 0449 ldr r1, .L114+4 542 000e 054A ldr r2, .L114+8 543 0010 9960 str r1, [r3, #8] 544 0012 9A60 str r2, [r3, #8] 545 0014 5869 ldr r0, [r3, #20] 546 0016 C00F lsrs r0, r0, #31 547 0018 7047 bx lr 548 .L115: 549 001a 00BF .align 2 550 .L114: 551 001c 00200240 .word 1073881088 552 0020 23016745 .word 1164378403 553 0024 AB89EFCD .word -839939669 555 .section .text.HAL_FLASH_Lock,"ax",%progbits 556 .align 1 557 .p2align 2,,3 558 .global HAL_FLASH_Lock 559 .syntax unified 560 .thumb 561 .thumb_func 562 .fpu fpv4-sp-d16 564 HAL_FLASH_Lock: 565 @ args = 0, pretend = 0, frame = 0 566 @ frame_needed = 0, uses_anonymous_args = 0 567 @ link register save eliminated. 568 0000 044B ldr r3, .L117 569 0002 5A69 ldr r2, [r3, #20] 570 0004 42F00042 orr r2, r2, #-2147483648 571 0008 5A61 str r2, [r3, #20] 572 000a 5869 ldr r0, [r3, #20] 573 000c C043 mvns r0, r0 574 000e C00F lsrs r0, r0, #31 575 0010 7047 bx lr 576 .L118: 577 0012 00BF .align 2 578 .L117: 579 0014 00200240 .word 1073881088 581 .section .text.HAL_FLASH_OB_Unlock,"ax",%progbits 582 .align 1 583 .p2align 2,,3 584 .global HAL_FLASH_OB_Unlock ARM GAS /tmp/cce47I8s.s page 11 585 .syntax unified 586 .thumb 587 .thumb_func 588 .fpu fpv4-sp-d16 590 HAL_FLASH_OB_Unlock: 591 @ args = 0, pretend = 0, frame = 0 592 @ frame_needed = 0, uses_anonymous_args = 0 593 @ link register save eliminated. 594 0000 064B ldr r3, .L122 595 0002 5869 ldr r0, [r3, #20] 596 0004 10F08040 ands r0, r0, #1073741824 597 0008 06D0 beq .L120 598 000a 0549 ldr r1, .L122+4 599 000c 054A ldr r2, .L122+8 600 000e D960 str r1, [r3, #12] 601 0010 DA60 str r2, [r3, #12] 602 0012 5869 ldr r0, [r3, #20] 603 0014 C0F38070 ubfx r0, r0, #30, #1 604 .L120: 605 0018 7047 bx lr 606 .L123: 607 001a 00BF .align 2 608 .L122: 609 001c 00200240 .word 1073881088 610 0020 3B2A1908 .word 135866939 611 0024 7F6E5D4C .word 1281191551 613 .section .text.HAL_FLASH_OB_Lock,"ax",%progbits 614 .align 1 615 .p2align 2,,3 616 .global HAL_FLASH_OB_Lock 617 .syntax unified 618 .thumb 619 .thumb_func 620 .fpu fpv4-sp-d16 622 HAL_FLASH_OB_Lock: 623 @ args = 0, pretend = 0, frame = 0 624 @ frame_needed = 0, uses_anonymous_args = 0 625 @ link register save eliminated. 626 0000 054B ldr r3, .L125 627 0002 5A69 ldr r2, [r3, #20] 628 0004 42F08042 orr r2, r2, #1073741824 629 0008 5A61 str r2, [r3, #20] 630 000a 5869 ldr r0, [r3, #20] 631 000c 80F08040 eor r0, r0, #1073741824 632 0010 C0F38070 ubfx r0, r0, #30, #1 633 0014 7047 bx lr 634 .L126: 635 0016 00BF .align 2 636 .L125: 637 0018 00200240 .word 1073881088 639 .section .text.HAL_FLASH_OB_Launch,"ax",%progbits 640 .align 1 641 .p2align 2,,3 642 .global HAL_FLASH_OB_Launch 643 .syntax unified 644 .thumb 645 .thumb_func ARM GAS /tmp/cce47I8s.s page 12 646 .fpu fpv4-sp-d16 648 HAL_FLASH_OB_Launch: 649 @ args = 0, pretend = 0, frame = 0 650 @ frame_needed = 0, uses_anonymous_args = 0 651 0000 38B5 push {r3, r4, r5, lr} 652 0002 144C ldr r4, .L136 653 0004 6369 ldr r3, [r4, #20] 654 0006 43F00063 orr r3, r3, #134217728 655 000a 6361 str r3, [r4, #20] 656 000c FFF7FEFF bl HAL_GetTick 657 0010 0546 mov r5, r0 658 0012 05E0 b .L128 659 .L130: 660 0014 FFF7FEFF bl HAL_GetTick 661 0018 401B subs r0, r0, r5 662 001a B0F57A7F cmp r0, #1000 663 001e 0FD8 bhi .L132 664 .L128: 665 0020 2369 ldr r3, [r4, #16] 666 0022 DB03 lsls r3, r3, #15 667 0024 F6D4 bmi .L130 668 0026 2369 ldr r3, [r4, #16] 669 0028 4CF2FA32 movw r2, #50170 670 002c 1340 ands r3, r3, r2 671 002e 09D1 bne .L135 672 0030 2069 ldr r0, [r4, #16] 673 0032 10F00100 ands r0, r0, #1 674 0036 02D0 beq .L129 675 0038 0122 movs r2, #1 676 003a 2261 str r2, [r4, #16] 677 003c 1846 mov r0, r3 678 .L129: 679 003e 38BD pop {r3, r4, r5, pc} 680 .L132: 681 0040 0320 movs r0, #3 682 0042 38BD pop {r3, r4, r5, pc} 683 .L135: 684 0044 0449 ldr r1, .L136+4 685 0046 4A68 ldr r2, [r1, #4] 686 0048 1A43 orrs r2, r2, r3 687 004a 4A60 str r2, [r1, #4] 688 004c 0120 movs r0, #1 689 004e 2361 str r3, [r4, #16] 690 0050 38BD pop {r3, r4, r5, pc} 691 .L137: 692 0052 00BF .align 2 693 .L136: 694 0054 00200240 .word 1073881088 695 0058 00000000 .word .LANCHOR0 697 .section .text.HAL_FLASH_GetError,"ax",%progbits 698 .align 1 699 .p2align 2,,3 700 .global HAL_FLASH_GetError 701 .syntax unified 702 .thumb 703 .thumb_func 704 .fpu fpv4-sp-d16 ARM GAS /tmp/cce47I8s.s page 13 706 HAL_FLASH_GetError: 707 @ args = 0, pretend = 0, frame = 0 708 @ frame_needed = 0, uses_anonymous_args = 0 709 @ link register save eliminated. 710 0000 014B ldr r3, .L139 711 0002 5868 ldr r0, [r3, #4] 712 0004 7047 bx lr 713 .L140: 714 0006 00BF .align 2 715 .L139: 716 0008 00000000 .word .LANCHOR0 718 .section .text.FLASH_WaitForLastOperation,"ax",%progbits 719 .align 1 720 .p2align 2,,3 721 .global FLASH_WaitForLastOperation 722 .syntax unified 723 .thumb 724 .thumb_func 725 .fpu fpv4-sp-d16 727 FLASH_WaitForLastOperation: 728 @ args = 0, pretend = 0, frame = 0 729 @ frame_needed = 0, uses_anonymous_args = 0 730 0000 70B5 push {r4, r5, r6, lr} 731 0002 0546 mov r5, r0 732 0004 FFF7FEFF bl HAL_GetTick 733 0008 104E ldr r6, .L150 734 000a 0446 mov r4, r0 735 000c 04E0 b .L142 736 .L144: 737 000e FFF7FEFF bl HAL_GetTick 738 0012 031B subs r3, r0, r4 739 0014 AB42 cmp r3, r5 740 0016 0FD8 bhi .L146 741 .L142: 742 0018 3369 ldr r3, [r6, #16] 743 001a DB03 lsls r3, r3, #15 744 001c F7D4 bmi .L144 745 001e 3369 ldr r3, [r6, #16] 746 0020 4CF2FA32 movw r2, #50170 747 0024 1340 ands r3, r3, r2 748 0026 09D1 bne .L149 749 0028 3069 ldr r0, [r6, #16] 750 002a 10F00100 ands r0, r0, #1 751 002e 02D0 beq .L143 752 0030 0122 movs r2, #1 753 0032 3261 str r2, [r6, #16] 754 0034 1846 mov r0, r3 755 .L143: 756 0036 70BD pop {r4, r5, r6, pc} 757 .L146: 758 0038 0320 movs r0, #3 759 003a 70BD pop {r4, r5, r6, pc} 760 .L149: 761 003c 0449 ldr r1, .L150+4 762 003e 4A68 ldr r2, [r1, #4] 763 0040 1A43 orrs r2, r2, r3 764 0042 4A60 str r2, [r1, #4] ARM GAS /tmp/cce47I8s.s page 14 765 0044 0120 movs r0, #1 766 0046 3361 str r3, [r6, #16] 767 0048 70BD pop {r4, r5, r6, pc} 768 .L151: 769 004a 00BF .align 2 770 .L150: 771 004c 00200240 .word 1073881088 772 0050 00000000 .word .LANCHOR0 774 .global pFlash 775 .section .data.pFlash,"aw" 776 .align 2 777 .set .LANCHOR0,. + 0 780 pFlash: 781 0000 00 .byte 0 782 0001 000000 .space 3 783 0004 00000000 .word 0 784 0008 00 .byte 0 785 0009 000000 .space 3 786 000c 00000000 .word 0 787 0010 01000000 .word 1 788 0014 00000000 .word 0 789 0018 00000000 .word 0 790 001c 00 .byte 0 791 001d 000000 .space 3 792 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)" ARM GAS /tmp/cce47I8s.s page 15 DEFINED SYMBOLS *ABS*:0000000000000000 stm32g4xx_hal_flash.c /tmp/cce47I8s.s:16 .text.HAL_FLASH_Program:0000000000000000 $t /tmp/cce47I8s.s:25 .text.HAL_FLASH_Program:0000000000000000 HAL_FLASH_Program /tmp/cce47I8s.s:194 .text.HAL_FLASH_Program:000000000000014c $d /tmp/cce47I8s.s:198 .text.HAL_FLASH_Program_IT:0000000000000000 $t /tmp/cce47I8s.s:206 .text.HAL_FLASH_Program_IT:0000000000000000 HAL_FLASH_Program_IT /tmp/cce47I8s.s:356 .text.HAL_FLASH_Program_IT:0000000000000128 $d /tmp/cce47I8s.s:360 .text.HAL_FLASH_EndOfOperationCallback:0000000000000000 $t /tmp/cce47I8s.s:368 .text.HAL_FLASH_EndOfOperationCallback:0000000000000000 HAL_FLASH_EndOfOperationCallback /tmp/cce47I8s.s:375 .text.HAL_FLASH_OperationErrorCallback:0000000000000000 $t /tmp/cce47I8s.s:383 .text.HAL_FLASH_OperationErrorCallback:0000000000000000 HAL_FLASH_OperationErrorCallback /tmp/cce47I8s.s:390 .text.HAL_FLASH_IRQHandler:0000000000000000 $t /tmp/cce47I8s.s:398 .text.HAL_FLASH_IRQHandler:0000000000000000 HAL_FLASH_IRQHandler /tmp/cce47I8s.s:518 .text.HAL_FLASH_IRQHandler:00000000000000ec $d /tmp/cce47I8s.s:522 .text.HAL_FLASH_Unlock:0000000000000000 $t /tmp/cce47I8s.s:530 .text.HAL_FLASH_Unlock:0000000000000000 HAL_FLASH_Unlock /tmp/cce47I8s.s:551 .text.HAL_FLASH_Unlock:000000000000001c $d /tmp/cce47I8s.s:556 .text.HAL_FLASH_Lock:0000000000000000 $t /tmp/cce47I8s.s:564 .text.HAL_FLASH_Lock:0000000000000000 HAL_FLASH_Lock /tmp/cce47I8s.s:579 .text.HAL_FLASH_Lock:0000000000000014 $d /tmp/cce47I8s.s:582 .text.HAL_FLASH_OB_Unlock:0000000000000000 $t /tmp/cce47I8s.s:590 .text.HAL_FLASH_OB_Unlock:0000000000000000 HAL_FLASH_OB_Unlock /tmp/cce47I8s.s:609 .text.HAL_FLASH_OB_Unlock:000000000000001c $d /tmp/cce47I8s.s:614 .text.HAL_FLASH_OB_Lock:0000000000000000 $t /tmp/cce47I8s.s:622 .text.HAL_FLASH_OB_Lock:0000000000000000 HAL_FLASH_OB_Lock /tmp/cce47I8s.s:637 .text.HAL_FLASH_OB_Lock:0000000000000018 $d /tmp/cce47I8s.s:640 .text.HAL_FLASH_OB_Launch:0000000000000000 $t /tmp/cce47I8s.s:648 .text.HAL_FLASH_OB_Launch:0000000000000000 HAL_FLASH_OB_Launch /tmp/cce47I8s.s:694 .text.HAL_FLASH_OB_Launch:0000000000000054 $d /tmp/cce47I8s.s:698 .text.HAL_FLASH_GetError:0000000000000000 $t /tmp/cce47I8s.s:706 .text.HAL_FLASH_GetError:0000000000000000 HAL_FLASH_GetError /tmp/cce47I8s.s:716 .text.HAL_FLASH_GetError:0000000000000008 $d /tmp/cce47I8s.s:719 .text.FLASH_WaitForLastOperation:0000000000000000 $t /tmp/cce47I8s.s:727 .text.FLASH_WaitForLastOperation:0000000000000000 FLASH_WaitForLastOperation /tmp/cce47I8s.s:771 .text.FLASH_WaitForLastOperation:000000000000004c $d /tmp/cce47I8s.s:780 .data.pFlash:0000000000000000 pFlash /tmp/cce47I8s.s:776 .data.pFlash:0000000000000000 $d UNDEFINED SYMBOLS HAL_GetTick FLASH_PageErase FLASH_FlushCaches