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

package info (click to toggle)
binutils-riscv64-unknown-elf 2.32.2020.04%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 414,816 kB
  • sloc: ansic: 2,327,473; asm: 982,981; exp: 218,247; cpp: 147,855; makefile: 63,075; sh: 33,816; yacc: 27,082; lisp: 15,389; perl: 6,480; xml: 5,239; ada: 5,117; python: 4,996; pascal: 3,266; lex: 2,272; cs: 879; f90: 535; sed: 334; awk: 165; objc: 134; fortran: 43
file content (16 lines) | stat: -rw-r--r-- 699 bytes parent folder | download | duplicates (24)
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