Skip to content

Instantly share code, notes, and snippets.

@Salzi

Salzi/7.10 Secret

Created October 7, 2015 11:26
Show Gist options
  • Save Salzi/c4ed7ff737735731a180 to your computer and use it in GitHub Desktop.
Save Salzi/c4ed7ff737735731a180 to your computer and use it in GitHub Desktop.
2-gdb-version
~"GNU gdb (GDB) 7.10\n"
~"Copyright (C) 2015 Free Software Foundation, Inc.\n"
~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is fre\
e software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitt\
ed by law. Type \"show copying\"\nand \"show warranty\" for details.\n"
~"This GDB was configured as \"--host=x86_64-unknown-linux-gnu --target=arm-none-eabi\".\nTy\
pe \"show configuration\" for configuration details."
~"\nFor bug reporting instructions, please see:\n"
~"<http://www.gnu.org/software/gdb/bugs/>.\n"
~"Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/soft\
ware/gdb/documentation/>.\n"
~"For help, type \"help\".\n"
~"Type \"apropos word\" to search for commands related to \"word\".\n"
2^done
(gdb)
3-list-thread-groups
3^done,groups=[{id="i1",type="process"}]
(gdb)
4-environment-cd SMT32Test
4^done
(gdb)
5-gdb-set breakpoint pending on
5^done
(gdb)
6-enable-pretty-printing
6^done
(gdb)
7maintenance set python print-stack off
&"maintenance set python print-stack off\n"
&"Undefined maintenance set command: \"python print-stack off\". Try \"help maintenance set\
\".\n"
7^error,msg="Undefined maintenance set command: \"python print-stack off\". Try \"help main\
tenance set\"."
(gdb)
8-gdb-set print object on
8^done
(gdb)
9-gdb-set print sevenbit-strings on
9^done
(gdb)
10-gdb-set host-charset UTF-8
10^done
(gdb)
11-gdb-set target-charset UTF-8
11^done
(gdb)
12-gdb-set target-wide-charset UTF-32
12^done
(gdb)
13source .gdbinit
&"source .gdbinit\n"
&".gdbinit: No such file or directory.\n"
13^error,msg=".gdbinit: No such file or directory."
(gdb)
14-gdb-set target-async off
14^done
(gdb)
15-gdb-set auto-solib-add on
15^done
(gdb)
16-file-exec-and-symbols SMT32Test/Debug/SMT32Test.elf
16^done
(gdb)
17-gdb-show language
17^done,value="auto"
(gdb)
18-gdb-set language c
18^done
(gdb)
19-interpreter-exec console "p/x (char)-1"
~"$1 = 0xff\n"
19^done
(gdb)
20-data-evaluate-expression "sizeof (void*)"
20^done,value="4"
(gdb)
21-gdb-set language auto
21^done
(gdb)
22-interpreter-exec console "show endian"
~"The target endianness is set automatically (currently little endian)\n"
22^done
(gdb)
23-break-insert -t -f code/main.c:main
23^done,bkpt={number="1",type="breakpoint",disp="del",enabled="y",addr="0x08002988",func="ma\
in",file="code/main.c",fullname="code/\
main.c",line="49",thread-groups=["i1"],times="0",original-location="c\
ode/main.c:main"}
(gdb)
24-break-insert -t -f main
24^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x08002988",func="ma\
in",file="code/main.c",fullname="code/\
main.c",line="49",thread-groups=["i1"],times="0",original-location="main"}
(gdb)
25-inferior-tty-set /dev/pts/4
25^done
(gdb)
26-exec-run
26^error,msg="Don't know how to run. Try \"help target\"."
(gdb)
27-gdb-exit
27^exit
2-gdb-show language
2^done,value="auto"
(gdb)
3-data-evaluate-expression "sizeof (void*)"
3^done,value="4"
(gdb)
4-gdb-set language auto
4^done
(gdb)
5-interpreter-exec console "show endian"
~"The target endianness is set automatically (currently little endian)\n"
5^done
(gdb)
6-gdb-version
~"GNU gdb (Linaro GDB) 7.8-2014.09\n"
~"Copyright (C) 2014 Free Software Foundation, Inc.\n"
~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is fre\
e software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitt\
ed by law. Type \"show copying\"\nand \"show warranty\" for details.\n"
~"This GDB was configured as \"--host=x86_64-unknown-linux-gnu --target=arm-none-eabi\".\nTy\
pe \"show configuration\" for configuration details."
~"\nFor bug reporting instructions, please see:\n"
~"<http://bugs.linaro.org>.\n"
~"Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/soft\
ware/gdb/documentation/>.\n"
~"For help, type \"help\".\n"
~"Type \"apropos word\" to search for commands related to \"word\".\n"
6^done
(gdb)
7-environment-cd SMT32Test
7^done
(gdb)
8-gdb-set breakpoint pending on
8^done
(gdb)
9-enable-pretty-printing
9^done
(gdb)
10-gdb-set python print-stack none
10^done
(gdb)
11-gdb-set print object on
11^done
(gdb)
12-gdb-set print sevenbit-strings on
12^done
(gdb)
13-gdb-set charset ISO-8859-1
13^done
(gdb)
14source .gdbinit
&"source .gdbinit\n"
&".gdbinit: No such file or directory.\n"
14^error,msg=".gdbinit: No such file or directory."
(gdb)
15set mem inaccessible-by-default off
&"set mem inaccessible-by-default off\n"
=cmd-param-changed,param="mem inaccessible-by-default",value="off"
15^done
(gdb)
16-gdb-set auto-solib-add on
16^done
(gdb)
17-target-select remote localhost:3333
=thread-group-started,id="i1",pid="42000"
=thread-created,id="1",group-id="i1"
~"0x08001ae6 in ?? ()\n"
*stopped,frame={addr="0x08001ae6",func="??",args=[]},thread-id="1",stopped-threads="all"
17^connected
(gdb)
18-list-thread-groups --available
18^error,msg="Can not fetch data now."
(gdb)
19symbol-file SMT32Test/Debug/SMT32Test.elf
20load SMT32Test/Debug/SMT32Test.elf
&"symbol-file SMT32Test/Debug/SMT32Test.elf\n"
~"Reading symbols from SMT32Test/Debug/SMT32Test.elf..."
~"done.\n"
19^done
(gdb)
&"load SMT32Test/Debug/SMT32Test.elf\n"
~"Loading section .isr_vector, size 0x370 lma 0x8000000\n"
20+download,{section=".isr_vector",section-size="880",total-size="643745"}
~"Loading section .inits, size 0x28 lma 0x8000370\n"
20+download,{section=".inits",section-size="40",total-size="643745"}
~"Loading section .text, size 0x7760 lma 0x8000398\n"
20+download,{section=".text",section-size="30560",total-size="643745"}
~"Loading section .ARM.exidx, size 0x8 lma 0x8007af8\n"
20+download,{section=".ARM.exidx",section-size="8",total-size="643745"}
~"Loading section .data, size 0x8b0 lma 0x8007b00\n"
20+download,{section=".data",section-size="2224",total-size="643745"}
21-list-thread-groups
~"Start address 0x80001e4, load size 33712\n"
~"Transfer rate: 16 KB/sec, 5618 bytes/write.\n"
20^done
(gdb)
21^done,groups=[{id="i1",type="process",pid="42000"}]
(gdb)
22-gdb-show --thread-group i1 language
22^done,value="auto"
(gdb)
23-gdb-set --thread-group i1 language c
23^done
(gdb)
24-interpreter-exec --thread-group i1 console "p/x (char)-1"
~"$1 = 0xff\n"
24^done
(gdb)
25-data-evaluate-expression --thread-group i1 "sizeof (void*)"
25^done,value="4"
(gdb)
26-gdb-set --thread-group i1 language auto
26^done
(gdb)
27-interpreter-exec --thread-group i1 console "show endian"
~"The target endianness is set automatically (currently little endian)\n"
27^done
(gdb)
28-break-insert --thread-group i1 -t -f code/main.c:main
28^done,bkpt={number="1",type="breakpoint",disp="del",enabled="y",addr="0x0800298a",func="ma\
in",file="code/main.c",fullname="code/\
main.c",line="53",thread-groups=["i1"],times="0",original-location="c\
ode/main.c:main"}
29-list-thread-groups i1
(gdb)
29^done,threads=[{id="1",target-id="Remote target",frame={level="0",addr="0x080001e4",func="\
_start",args=[],file="../system/src/newlib/_startup.c",fullname="SMT32Tes\
t/system/src/newlib/_startup.c",line="224"},state="stopped"}]
(gdb)
30monitor reset halt
&"monitor reset halt\n"
31monitor halt
32tbreak main
33monitor reg
34continue
@"target state: halted\n"
@"target halted due to debug-request, current mode: Thread \n"
@"xPSR: 0x01000000 pc: 0x1fffedcc msp: 0x200003dc\n"
35-stack-info-depth --thread 1 11
30^done
(gdb)
&"monitor halt\n"
31^done
(gdb)
&"tbreak main\n"
~"Note: breakpoint 1 also set at pc 0x800298a.\n"
~"Temporary breakpoint 2 at 0x800298a: file code/main.c, line\
53.\n"
=breakpoint-created,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x080029\
8a",func="main",file="code/main.c",fullname="code/main.c",line="53",thread-groups=["i1"],times="0",original-location="main"}
32^done
(gdb)
&"monitor reg\n"
@"===== arm v7m registers\n"
@"(0) r0 (/32): 0x00000020\n"
@"(1) r1 (/32): 0x00000000\n"
@"(2) r2 (/32): 0x2000003C\n"
@"(3) r3 (/32): 0x2000083C\n"
@"(4) r4 (/32): 0x080083B0\n"
@"(5) r5 (/32): 0x20000474\n"
@"(6) r6 (/32): 0x00000020\n"
@"(7) r7 (/32): 0x00000014\n"
@"(8) r8 (/32): 0xDF5F5EDC\n"
@"(9) r9 (/32): 0xD0765E2E\n"
@"(10) r10 (/32): 0xF63FBD3E\n"
@"(11) r11 (/32): 0xCB475F4A\n"
@"(12) r12 (/32): 0x01010101\n"
@"(13) sp (/32): 0x200003DC\n"
@"(14) lr (/32): 0xFFFFFFFF\n"
@"(15) pc (/32): 0x1FFFEDCC\n"
@"(16) xPSR (/32): 0x01000000\n"
@"(17) msp (/32): 0x200003DC\n"
@"(18) psp (/32): 0x258B949C\n"
@"(19) primask (/1): 0x00\n"
@"(20) basepri (/8): 0x00\n"
@"(21) faultmask (/1): 0x00\n"
@"(22) control (/2): 0x00\n"
@"===== Cortex-M DWT registers\n"
@"(23) dwt_ctrl (/32)\n"
@"(24) dwt_cyccnt (/32)\n"
@"(25) dwt_0_comp (/32)\n"
@"(26) dwt_0_mask (/4)\n"
@"(27) dwt_0_function (/32)\n"
@"(28) dwt_1_comp (/32)\n"
@"(29) dwt_1_mask (/4)\n"
@"(30) dwt_1_function (/32)\n"
@"(31) dwt_2_comp (/32)\n"
@"(32) dwt_2_mask (/4)\n"
@"(33) dwt_2_function (/32)\n"
@"(34) dwt_3_comp (/32)\n"
@"(35) dwt_3_mask (/4)\n"
@"(36) dwt_3_function (/32)\n"
33^done
(gdb)
&"continue\n"
~"Continuing.\n"
~"Note: automatically using hardware breakpoints for read-only addresses.\n"
34^running
*running,thread-id="all"
(gdb)
=breakpoint-modified,bkpt={number="1",type="breakpoint",disp="del",enabled="y",addr="0x08002\
98a",func="main",file="code/main.c",fullname="code/main.c",line="53",thread-groups=["i1"],times="1",original-location="code/main.c:main"}
=breakpoint-modified,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x08002\
98a",func="main",file="code/main.c",fullname="code/main.c",line="53",thread-groups=["i1"],times="1",original-location="main"}
~"\nTemporary breakpoint "
~"1, main (argc=1, argv=0x20000018 <argv>) at code/main.c:53\\
n"
~"53\t\tmain_demo();\n"
*stopped,reason="breakpoint-hit",disp="del",bkptno="1",frame={addr="0x0800298a",func="main",\
args=[{name="argc",value="1"},{name="argv",value="0x20000018 <argv>"}],file="code/main.c",fullname="code/main.c",line="53"},thread-id="1",\
stopped-threads="all"
=breakpoint-deleted,id="1"
=breakpoint-deleted,id="2"
(gdb)
35^done,depth="1"
(gdb)
36-break-delete --thread-group i1 2
~"No breakpoint number 2.\n"
36^done
(gdb)
37-thread-info 1
38-list-thread-groups
37^done,threads=[{id="1",target-id="Remote target",frame={level="0",addr="0x0800298a",func="\
main",args=[{name="argc",value="1"},{name="argv",value="0x20000018 <argv>"}],file="code/main.c",fullname="code/main.c",line="53"},state="s\
topped"}]
(gdb)
38^done,groups=[{id="i1",type="process",pid="42000"}]
(gdb)
39-stack-list-locals --thread 1 --frame 0 1
39^done,locals=[]
(gdb)
40-var-create --thread 1 --frame 0 - * argc
41-var-create --thread 1 --frame 0 - * argv
40^done,name="var1",numchild="0",value="1",type="int",thread-id="1",has_more="0"
(gdb)
41^done,name="var2",numchild="1",value="0x20000018 <argv>",type="char **",thread-id="1",has_\
more="0"
(gdb)
42-exec-continue --thread 1
42^running
*running,thread-id="all"
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment