#include <stdio.h> int main() { printf("Hello, world!\n"); return 0; }
(gdb) break main Breakpoint 1 at 0x838c: file main.c, line 5. (gdb) run Starting program: /home/user/a.out Breakpoint 1, main () at main.c:5 5 printf("Hello, world!\n"); (gdb) disassemble main Dump of assembler code for function main: 0x00008380 <main+0>: mov r12, sp 0x00008384 <main+4>: push {r11, r12, lr, pc} 0x00008388 <main+8>: sub r11, r12, #4 ; 0x4 0x0000838c <main+12>: ldr r0, [pc, #8] ; 0x839c <main+28> 0x00008390 <main+16>: bl 0x82cc <printf> 0x00008394 <main+20>: mov r0, #0 ; 0x0 0x00008398 <main+24>: ldm sp, {r11, sp, pc} 0x0000839c <main+28>: andeq r8, r0, r8, lsr #8 End of assembler dump. (gdb) x/s 0x8428 0x8428: "Hello, world!\n"