
Untitled
By: a guest on
Jun 4th, 2012 | syntax:
None | size: 1.01 KB | hits: 12 | expires: Never
What could make GDB refuse to break?
void cerror_at (struct lex *lex, struct token *tok, const char *fmt, ...)
0x0000000000403053 <+46>: test %al,%al
0x0000000000403055 <+48>: je 0x403077 <cerror_at+82>
(gdb) disassemble dive
Dump of assembler code for function dive:
0x0000000000400504 <+0>: push %rbp
0x0000000000400505 <+1>: mov %rsp,%rbp
0x0000000000400508 <+4>: sub $0x10,%rsp
0x000000000040050c <+8>: mov %edi,-0x4(%rbp)
0x000000000040050f <+11>: mov -0x4(%rbp),%eax
0x0000000000400512 <+14>: add $0x1,%eax
0x0000000000400515 <+17>: mov %eax,%edi
0x0000000000400517 <+19>: callq 0x400504 <dive>
0x000000000040051c <+24>: leaveq
0x000000000040051d <+25>: retq
End of assembler dump.
(gdb) x/5i $p
=> 0x400539 <main+27>: mov $0x1,%esi
0x40053e <main+32>: mov %rax,%rdi
0x400541 <main+35>: callq 0x400408 <fwrite@plt>
0x400546 <main+40>: mov $0x1,%edi
-->0x40054b <main+45>: callq 0x400504 <dive> <------