dotgnu-general
[Top][All Lists]
Advanced

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

[DotGNU]gcc -O3 cannot compile engine/cvm.c


From: Blair Zajac
Subject: [DotGNU]gcc -O3 cannot compile engine/cvm.c
Date: Sun, 24 Nov 2002 13:19:58 -0800

I just downloaded treecc 0.1.8 and pnet 0.48 and compiled and attempted
to compile and install them on my RedHat 8.0 system with my own personally
compiled gcc 3.2.1 using these steps:

For treecc:

env CC=/opt/i386-linux/installed/gcc-3.2.1/bin/gcc CFLAGS=-O3 \
  CXX=/opt/i386-linux/installed/gcc-3.2.1/bin/g++ CXXFLAGS=-O3 \
  ./configure --verbose --prefix=/export/amanda/bzajac/dotgnu/install
make install

For pnet:

env CC=/opt/i386-linux/installed/gcc-3.2.1/bin/gcc CFLAGS=-O3 \
  CXX=/opt/i386-linux/installed/gcc-3.2.1/bin/g++ CXXFLAGS=-O3 \
  ./configure --verbose --prefix=/export/amanda/bzajac/dotgnu/install
make:

Compiling cvm.c fails:

/opt/i386-linux/installed/gcc-3.2.1/bin/gcc -DHAVE_CONFIG_H -I. -I. \
-I../include    -I../libffi/include -fno-gcse -I../include  \
-I../libffi/include -I. -O3 -Wall -c cvm.c
cvm.c: In function `_ILCVMInterpreter':
cvm.c:697: unable to find a register to spill in class `SIREG'
cvm.c:697: this is the insn:
(insn 5751 5750 5752 (parallel[
            (set (reg:SI 2 ecx [2158])
                (const_int 0 [0x0]))
            (set (reg/f:SI 0 eax [2156])
                (plus:SI (ashift:SI (reg:SI 2 ecx [2158])
                        (const_int 2 [0x2]))
                    (reg/f:SI 0 eax [2156])))
            (set (reg/f:SI 1 edx [2157])
                (plus:SI (ashift:SI (reg:SI 2 ecx [2158])
                        (const_int 2 [0x2]))
                    (reg/f:SI 1 edx [2157])))
            (set (mem:BLK (reg/f:SI 0 eax [2156]) [0 A32])
                (mem:BLK (reg/f:SI 1 edx [2157]) [0 A32]))
            (use (reg:SI 2 ecx [2158]))
            (use (reg:SI 19 dirflag))
        ] ) 591 {rep_movsi} (insn_list 5749 (insn_list 5750 (nil)))
    (expr_list:REG_DEAD (reg:SI 19 dirflag)
        (expr_list:REG_UNUSED (reg:SI 2 ecx [2158])
            (expr_list:REG_UNUSED (reg/f:SI 0 eax [2156])
                (expr_list:REG_UNUSED (reg/f:SI 1 edx [2157])
                    (nil))))))
cvm.c:697: confused by earlier errors, bailing out

Compiling with -O2 works fine.

I've tested gcc 2.95.3, RedHat's gcc 3.2 and gcc 3.2.1 and with -O3 none
of them can compile this file.

Is this a bug in pnet and/or gcc?  Should this bug be reported to the gcc
folks?

Best,
Blair

-- 
Blair Zajac <address@hidden>
Web and OS performance plots - http://www.orcaware.com/orca/


reply via email to

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