File: stm32l4xx-cannot-fix-it-block.d

package info (click to toggle)
binutils-m68hc1x 1%3A2.35.1-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 335,580 kB
  • sloc: ansic: 1,187,755; asm: 674,290; cpp: 130,744; exp: 70,774; makefile: 56,048; sh: 22,128; yacc: 14,459; lisp: 13,803; perl: 2,112; ada: 1,681; lex: 1,649; pascal: 1,446; cs: 879; sed: 195; xml: 95; awk: 25
file content (16 lines) | stat: -rw-r--r-- 699 bytes parent folder | download | duplicates (23)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#source: stm32l4xx-cannot-fix-it-block.s
#as:-EL -mcpu=cortex-m4 -mfpu=fpv4-sp-d16
#ld:-EL --fix-stm32l4xx-629360 -Ttext=0x8000
#objdump: -dr --prefix-addresses --show-raw-insn
#name: STM32L4XX erratum : LDM cannot be patched when not last in IT block
#warning: .*multiple load detected in non-last IT block instruction.*

# Test the `LDM*' instructions when non-last in IT block
# They cannot, thus should not, be patched

.*: +file format .*arm.*

Disassembly of section \.text:
00008000 \<_start\> bf04[[:space:]]+itt[[:space:]]+eq
00008002 \<_start\+0x2\> e899 03fe[[:space:]]+ldmiaeq\.w[[:space:]]+r9, {r1, r2, r3, r4, r5, r6, r7, r8, r9}
00008006 \<_start\+0x6\> f3af 8000[[:space:]]+nopeq\.w