lkml.org 
[lkml]   [1999]   [Dec]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: workaround for: Breakage in arch/i386/kernel/time.c
    On Tue, 7 Dec 1999, David Dyck wrote:

    Hi,

    > I noticed the same problem that Richard Gooch had:
    >
    > time.c: In function `do_gettimeofday':
    > time.c:262: fixed or forbidden register was spilled.
    > This may be due to a compiler bug or to impossible asm statements or clauses.

    IMVHO, this is a bug in older versions of gcc and egcs. These compilers
    seem to run into trouble when too much restriction is placed upon their
    register selection choices.

    The very same thing happens if you use raid-0.90 in 2.3.x for the very
    same group of compilers.. xor.c bombs. [matters not to me.. haven't
    been able to make raid-5 (hobby) work right in 2.3.>6 anyway.. yet:]

    gcc-2.7.2.3 -D__KERNEL__ -I/usr/local/src/tmp/linux-2.3.30-6.ikd.raid.fpumemcpy/include -Wall -Wstrict-prototypes -O2 -fno-omit-frame-pointer -D__SMP__ -pipe
    -DCPU=586 -c -o drivers/block/xor.o drivers/block/xor.c
    drivers/block/xor.c: In function `xor_block_pII_mmx':
    drivers/block/xor.c:586: fixed or forbidden register was spilled.
    This may be due to a compiler bug or to impossible asm
    statements or clauses.
    cpp: output pipe has been closed
    make: *** [drivers/block/xor.o] Error 1

    This compiles fine with newer compilers. (and works)

    <snip>

    > What compiler is Linus using?

    Dunno.. I suspect that sometimes its grey-cc -fuse-all-wrinkles ;-)

    -Mike


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:55    [from the cache]
    ©2003-2014 Jasper Spaans. Advertise on this site