[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs doesn't compile (again)
From: |
Marcus Brinkmann |
Subject: |
Re: emacs doesn't compile (again) |
Date: |
Wed, 20 Jun 2001 00:29:45 +0200 |
User-agent: |
Mutt/1.2i |
On Tue, Jun 19, 2001 at 05:55:17PM -0400, Roland McGrath wrote:
> Oh yeah, "info frame" is always good too. There is definitely some funny
> business here. The reported faulting eip value is in the middle of an
> instruction. You're going to have to watch it happen.
Ah, this sheds some light on it.
Below is another script. It seems a pointer to a function is a bit bogus.
What next?
Marcus
Script started on Wed Jun 20 00:25:07 2001
ulysses:/mnt2/emacs/emacs20-20.7/leim# gdb --command=../../debug ../src/emacs
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-unknown-gnu0.2"...
(gdb) i b b rea b ralloc.c:514
Breakpoint 1 at 0x811ff20: file ralloc.c, line 514.
(gdb) run
Starting program: /mnt2/emacs/emacs20-20.7/leim/../src/emacs -batch
--no-init-file --no-site-file --multibyte -l
/mnt2/emacs/emacs20-20.7/leim/../lisp/international/titdic-cnv --eval
'(batch-titdic-convert t)' -dir quail /mnt2/emacs/emacs20-20.7/leim/CXTERM-DIC
Converting all tit files in the directory
/mnt2/emacs/emacs20-20.7/leim/CXTERM-DIC
Converting /mnt2/emacs/emacs20-20.7/leim/CXTERM-DIC/4Corner.tit to
quail-package...
Breakpoint 1, relocate_blocs (bloc=0x828a688, heap=0x81ea1e0,
address=0x8307408 "") at ralloc.c:514
514 address = obtain (address, s);
(gdb) l
509
510 tb = tb->next;
511 }
512
513 /* Get that space. */
514 address = obtain (address, s);
515 if (address == 0)
516 return 0;
517
518 heap = last_heap;
(gdb) s
obtain (address=0x8307408 "", size=75904) at ralloc.c:246
246 {
(gdb) n
251 for (heap = last_heap; heap; heap = heap->prev)
(gdb)
253 if (heap->start <= address && address <= heap->end)
(gdb)
257 if (! heap)
(gdb)
262 while (heap && address + size > heap->end)
(gdb)
264 heap = heap->next;
(gdb)
265 if (heap == NIL_HEAP)
(gdb)
274 POINTER new = (*real_morecore)(0);
(gdb)
Program received signal SIGBUS, Bus error.
0x12c460e in _obstack_newchunk (h=0x8307408, length=75904) at obstack.c:301
301 obstack.c: No such file or directory.
(gdb) print real_morecore
$1 = (POINTER (*)()) 0x12c460c <_obstack_newchunk+144>
(gdb) info frame
Stack level 0, frame at 0x100c88c:
eip = 0x12c460e in _obstack_newchunk (obstack.c:301); saved eip 0x811ff2a
called by frame at 0x100c8bc
source language c.
Arglist at 0x100c88c, args: h=0x8307408, length=75904
Locals at 0x100c88c, Previous frame's sp is 0x0
Saved registers:
ebx at 0x100c854, ebp at 0x100c88c, esi at 0x100c858, edi at 0x100c85c,
eip at 0x100c890
(gdb) ifno regs
Undefined command: "ifno". Try "help".
(gdb) info regs
eax 0x12c460c 19678732
ecx 0x8319c88 137469064
edx 0x0 0
ebx 0x828a688 136881800
esp 0x100c860 0x100c860
ebp 0x100c88c 0x100c88c
esi 0x8307408 137393160
edi 0x828a688 136881800
eip 0x12c460e 0x12c460e
eflags 0x10303 66307
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 %eip % $pc
Dump of assembler code for function _obstack_newchunk:
0x12c457c <_obstack_newchunk>: push %ebp
0x12c457d <_obstack_newchunk+1>: mov %esp,%ebp
0x12c457f <_obstack_newchunk+3>: sub $0x2c,%esp
0x12c4582 <_obstack_newchunk+6>: push %edi
0x12c4583 <_obstack_newchunk+7>: push %esi
0x12c4584 <_obstack_newchunk+8>: push %ebx
0x12c4585 <_obstack_newchunk+9>: call 0x12c458a <_obstack_newchunk+14>
0x12c458a <_obstack_newchunk+14>: pop %ebx
0x12c458b <_obstack_newchunk+15>: add $0xbcf2e,%ebx
0x12c4591 <_obstack_newchunk+21>: mov 0x8(%ebp),%esi
0x12c4594 <_obstack_newchunk+24>: mov 0x4(%esi),%eax
0x12c4597 <_obstack_newchunk+27>: mov %eax,0xfffffffc(%ebp)
0x12c459a <_obstack_newchunk+30>: mov 0x8(%esi),%eax
0x12c459d <_obstack_newchunk+33>: mov 0xc(%esi),%edx
0x12c45a0 <_obstack_newchunk+36>: sub %eax,%edx
0x12c45a2 <_obstack_newchunk+38>: mov %edx,0xfffffff4(%ebp)
0x12c45a5 <_obstack_newchunk+41>: mov %edx,%eax
0x12c45a7 <_obstack_newchunk+43>: add 0xc(%ebp),%eax
0x12c45aa <_obstack_newchunk+46>: sar $0x3,%edx
0x12c45ad <_obstack_newchunk+49>: add %edx,%eax
0x12c45af <_obstack_newchunk+51>: add 0x18(%esi),%eax
0x12c45b2 <_obstack_newchunk+54>: lea 0x64(%eax),%edi
0x12c45b5 <_obstack_newchunk+57>: mov (%esi),%eax
---Type <return> to continue, or q <return> to quit---q
Quit
(gdb) quit
The program is running. Exit anyway? (y or n) y
ulysses:/mnt2/emacs/emacs20-20.7/leim# exit
Script done on Wed Jun 20 00:27:29 2001
- emacs doesn't compile (again), Marcus Brinkmann, 2001/06/19
- Re: emacs doesn't compile (again), Roland McGrath, 2001/06/19
- Re: emacs doesn't compile (again), Marcus Brinkmann, 2001/06/19
- Re: emacs doesn't compile (again), Roland McGrath, 2001/06/19
- Re: emacs doesn't compile (again),
Marcus Brinkmann <=
- Re: emacs doesn't compile (again), Roland McGrath, 2001/06/19
- Re: emacs doesn't compile (again), Marcus Brinkmann, 2001/06/19
- Re: emacs doesn't compile (again), Marcus Brinkmann, 2001/06/19
- Re: emacs doesn't compile (again), Marcus Brinkmann, 2001/06/19
- Re: emacs doesn't compile (again), Roland McGrath, 2001/06/19