emacs-pretest-bug
[Top][All Lists]
Advanced

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

Re: Crash when launched -nw on Mac OS X, compiled with gcc 4.0.1


From: Peter Dyballa
Subject: Re: Crash when launched -nw on Mac OS X, compiled with gcc 4.0.1
Date: Wed, 26 Jul 2006 23:17:03 +0200


Am 26.07.2006 um 17:40 schrieb Richard Stallman:

Run till exit from #0 extract_float (num=4216608) at floatfns.c:220
            0x001f27dc in Fsqrt (arg=4216608) at floatfns.c:556
            Value returned is $7 = 527076

That value seems correct.  It has converted the integer to a double.

I suggest you step thru the failing line
instruction by instruction, with the `si' command,
and see which instruction fails.

The short version of the session:

        Breakpoint 1, Fsqrt (arg=4216608) at floatfns.c:556
        extract_float (num=2) at floatfns.c:219
        0x001f9894 in extract_float (num=2) at floatfns.c:219
        extract_float (num=4216608) at floatfns.c:220
        0x001f993c in extract_float (num=4216608) at floatfns.c:225
        0x001fb248 in Fsqrt (arg=4216608) at floatfns.c:556
        (gdb) print d
        $1 = -1.9828643798828138
        (gdb) si
        ...
        (gdb) si
        (gdb) print d
        $2 = 527076
        (gdb) si
        ...
        (gdb) si
        0x0028c000 in dyld_stub___error ()
        (gdb) fin
        Run till exit from #0  0x0028c004 in dyld_stub___error ()
        0x001fb284 in Fsqrt (arg=4216608) at floatfns.c:561

Can this dyld_stub___error be a call to a library that does not exist? Apple documents that it does not provide a library that emulates floating point arithmetics ...


Then you can determine whether it was correct compilation output
for the GCC options that you specified.


Last night and this evening I made a large number of tests à la 'make distclean ; ./configure ... ; make' with different compiler options. It seems that the Metrowerks CodeWarrior and MrC compiler and old Apple gcc supporting option -faltivec changes some things, including setting the -mpim-altivec switch. If I do not use that switch ld complains with some files that incompatible options are given (/sw/ lib/odcctools/bin/ld: warning /var/tmp//ccMZzWzD.o cpusubtype (100, architecture ppc970) does not combine with cpusubtype (11) for specified -arch flag: ppc7450 and -force_cpusubtype_ALL not specified (file not loaded)). I presume it's among these tripletts '-mcpu=7450 - mpowerpc -mpowerpc-gpopt' or '-mcpu=G4 -mpowerpc -mpowerpc-gpopt' -- in the end temacs is not executable.

Since -mpim-altivec works with another set of switches fine, it seems to be that I started to use incompatible options instead of relying that a simple -mcpu=7450 would activate all working optimisations at the specified level. And version of gcc. The warning I take from this is not to use -faltivec!

Do you want me to do some more debugging?

--
Greetings

  Pete

Windows, c'est un peu comme le beaujolais nouveau: à chaque nouvelle cuvée on sait que ce sera dégueulasse, mais on en prend quand même, par masochisme.






reply via email to

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