Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* baffling assembly-level weirdness
@ 2009-01-26 15:24 Mathieu Lacage
  2009-01-26 15:38 ` Pierre Muller
  2009-01-26 15:41 ` Daniel Jacobowitz
  0 siblings, 2 replies; 7+ messages in thread
From: Mathieu Lacage @ 2009-01-26 15:24 UTC (permalink / raw)
  To: gdb

hi,

The following gdb session baffles me completely: %edx is reset to zero
by the mov at address 0x0804ad62 instead of being set to the constant
0x804ad62. Of course, this code segfaults at $pc = 0x804ad68 when zero
is dereferenced...

Version: GNU gdb 6.8

(gdb) disas $pc $pc+10
Dump of assembler code from 0x804ad62 to 0x804ad6c:
0x0804ad62 <indent+50>:	mov    0x805e3c0,%edx
0x0804ad68 <indent+56>:	mov    0x14(%edx),%eax
0x0804ad6b <indent+59>:	cmp    0x18(%edx),%eax
End of assembler dump.
(gdb) p $pc
$3 = (void (*)()) 0x804ad62 <indent+50>
(gdb) p $edx
$4 = 1
(gdb) ni
0x0804ad68	108	  return _IO_putc_unlocked (__c, stdout);
(gdb) p $edx
$5 = 0
(gdb) disas $pc $pc+10
Dump of assembler code from 0x804ad68 to 0x804ad72:
0x0804ad68 <indent+56>:	mov    0x14(%edx),%eax
0x0804ad6b <indent+59>:	cmp    0x18(%edx),%eax
0x0804ad6e <indent+62>:	jae    0x804adbe <indent+142>
0x0804ad70 <indent+64>:	movb   $0x20,(%eax)
End of assembler dump.
(gdb) x/20bx 0x0804ad62
0x804ad62 <indent+50>:	0x8b	0x15	0xc0	0xe3	0x05	0x08	0x8b	0x42
0x804ad6a <indent+58>:	0x14	0x3b	0x42	0x18	0x73	0x4e	0xc6	0x00
0x804ad72 <indent+66>:	0x20	0x83	0xc0	0x01

Anyone would have even a remote idea of what could have gone wrong here ?

Mathieu
-- 
Mathieu Lacage <mathieu.lacage@gmail.com>


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2009-01-27 17:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-01-26 15:24 baffling assembly-level weirdness Mathieu Lacage
2009-01-26 15:38 ` Pierre Muller
2009-01-26 17:35   ` Mathieu Lacage
2009-01-26 15:41 ` Daniel Jacobowitz
2009-01-26 16:51   ` Paul Pluzhnikov
2009-01-27 13:09     ` Mathieu Lacage
2009-01-27 17:53       ` Paul Pluzhnikov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox