bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

More info about libc/libio/gcc-3.0 static binaries


From: Marcus Brinkmann
Subject: More info about libc/libio/gcc-3.0 static binaries
Date: Mon, 7 Jan 2002 22:51:40 +0100
User-agent: Mutt/1.3.24i

Hi,

libio enabled glibc, gcc 3.0, static binaries die in _hurd_stack_setup at
start up time.  I think the code is gcc generated, probably for the vararg.

Here is the relevant debug info.  I am not too familiar with that code gcc
generates for what type of function invocation etc.  Maybe the vararg
requires some setup on the stack in static-start.S? 

Thanks,
Marcus

Program received signal EXC_BAD_ACCESS, Could not access memory.
0x0804849b in _hurd_stack_setup (argc=0) at 
../sysdeps/mach/hurd/i386/init-first.c:317
317     in ../sysdeps/mach/hurd/i386/init-first.c
(gdb) quit
The program is running.  Exit anyway? (y or n) n
Not confirmed.
(gdb) info reg
eax            0x0      0
ecx            0x0      0
edx            0x0      0
ebx            0x0      0
esp            0x1000fd0        0x1000fd0
ebp            0x1000ff8        0x1000ff8
esi            0x0      0
edi            0x0      0
eip            0x804849b        0x804849b
eflags         0x10202  66050
cs             0x17     23
ss             0x1f     31
ds             0x1f     31
es             0x1f     31
fs             0x1f     31
gs             0x1f     31
fctrl          0x0      0
fstat          0x0      0
ftag           0x0      0
fiseg          0x0      0
fioff          0x0      0
foseg          0x0      0
fooff          0x0      0
fop            0x0      0

(gdb) disas $pc
Dump of assembler code for function _hurd_stack_setup:
0x8048494 <_hurd_stack_setup>:  push   %ebp
0x8048495 <_hurd_stack_setup+1>:        mov    %esp,%ebp
0x8048497 <_hurd_stack_setup+3>:        push   %ebx
0x8048498 <_hurd_stack_setup+4>:        sub    $0x24,%esp
0x804849b <_hurd_stack_setup+7>:        mov    0x8(%ebp),%eax
0x804849e <_hurd_stack_setup+10>:       mov    %eax,0xfffffff4(%ebp)
0x80484a1 <_hurd_stack_setup+13>:       mov    $0x804844a,%edx
0x80484a6 <_hurd_stack_setup+18>:       lea    0xffffffd8(%ebp),%eax
0x80484a9 <_hurd_stack_setup+21>:       sub    %eax,%edx
0x80484ab <_hurd_stack_setup+23>:       lea    0xfffffff8(%ebp),%ecx
0x80484ae <_hurd_stack_setup+26>:       movb   $0xb9,(%eax)
0x80484b1 <_hurd_stack_setup+29>:       mov    %ecx,0x1(%eax)
0x80484b4 <_hurd_stack_setup+32>:       movb   $0xe9,0x5(%eax)
0x80484b8 <_hurd_stack_setup+36>:       mov    %edx,0x6(%eax)
0x80484bb <_hurd_stack_setup+39>:       mov    $0x80d28e0,%ebx
0x80484c0 <_hurd_stack_setup+44>:       call   0x804f220 <__mach_init>
0x80484c5 <_hurd_stack_setup+49>:       cmp    $0x80d28f0,%ebx
0x80484cb <_hurd_stack_setup+55>:       jae    0x80484dd <_hurd_stack_setup+73>
0x80484cd <_hurd_stack_setup+57>:       lea    0x0(%esi),%esi
0x80484d0 <_hurd_stack_setup+60>:       call   *(%ebx)
0x80484d2 <_hurd_stack_setup+62>:       add    $0x4,%ebx
0x80484d5 <_hurd_stack_setup+65>:       cmp    $0x80d28f0,%ebx
0x80484db <_hurd_stack_setup+71>:       jb     0x80484d0 <_hurd_stack_setup+60>
0x80484dd <_hurd_stack_setup+73>:       sub    $0x8,%esp
0x80484e0 <_hurd_stack_setup+76>:       lea    0xffffffd8(%ebp),%eax
0x80484e3 <_hurd_stack_setup+79>:       push   %eax
0x80484e4 <_hurd_stack_setup+80>:       lea    0xfffffff4(%ebp),%eax
0x80484e7 <_hurd_stack_setup+83>:       push   %eax
0x80484e8 <_hurd_stack_setup+84>:       call   0x804f430 <_hurd_startup>
0x80484ed <_hurd_stack_setup+89>:       mov    0xfffffffc(%ebp),%ebx
0x80484f0 <_hurd_stack_setup+92>:       leave
0x80484f1 <_hurd_stack_setup+93>:       ret
End of assembler dump.

(gdb) x $ebp
0x1000ff8:      0x00000000
(gdb) x
0x1000ffc:      0x080480d5
(gdb) x
0x1001000:      Cannot access memory at address 0x1001000
(gdb)
0x1001004:      Cannot access memory at address 0x1001004

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org brinkmd@debian.org
Marcus Brinkmann              GNU    http://www.gnu.org    marcus@gnu.org
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]