-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gdbinit
57 lines (51 loc) · 1.3 KB
/
.gdbinit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
target ext :2331
mon endian little
mon halt
# interface with asm, regs and cmd windows
define split
layout split
layout asm
layout regs
focus cmd
end
# interface with C source, regs and cmd windows
define ss
layout split
layout src
layout regs
focus cmd
end
define flash
dont-repeat
mon reset
load
end
# Usefull function when the processor is in hardfault to see
# where it comes from.
define armex
printf "EXEC_RETURN (LR):\n",
info registers $lr
if ($lr & 0x4)
printf "Uses MSP 0x%x return.\n", $MSP
set $armex_base = $MSP
else
printf "Uses PSP 0x%x return.\n", $PSP
set $armex_base = $PSP
end
printf "xPSR 0x%x\n", *($armex_base+28)
printf "ReturnAddress 0x%x\n", *($armex_base+24)
printf "LR (R14) 0x%x\n", *($armex_base+20)
printf "R12 0x%x\n", *($armex_base+16)
printf "R3 0x%x\n", *($armex_base+12)
printf "R2 0x%x\n", *($armex_base+8)
printf "R1 0x%x\n", *($armex_base+4)
printf "R0 0x%x\n", *($armex_base)
printf "Return instruction:\n"
x/i *($armex_base+24)
printf "LR instruction:\n"
x/i *($armex_base+20)
end
document armex
ARMv7 Exception entry behavior.
xPSR, ReturnAddress, LR (R14), R12, R3, R2, R1, and R0
end