--- Comment #10 from ubizjak at gmail dot com 2009-03-12 17:48 ---
*** This bug has been marked as a duplicate of 16185 ***
--
ubizjak at gmail dot com changed:
What|Removed |Added
-
--- Comment #9 from rob1weld at aol dot com 2009-02-01 00:49 ---
It can be compiled with ONE earlier version of gcc but not another - so this is
a regression.
Works on 4.0.2:
# /opt/csw/gcc4/bin/gcc -v
Reading specs from /opt/csw/gcc4/lib/gcc/i386-pc-solaris2.8/4.0.2/specs
Target: i38
--- Comment #8 from rob1weld at aol dot com 2009-01-31 21:01 ---
Sometimes you can skirt around the "GENERAL_REGS" error with other options.
When I use "-O0", "-O1", "-O2", "-O3", "-Os" I get different results.
Using "-O0" produces no screen output _or_ compiled file (thus it 'looks'
a
--- Comment #7 from rob1weld at aol dot com 2009-01-31 20:25 ---
Here is a "GENERAL_REGS" error for the Trunk.
# gcc -v
Using built-in specs.
Target: i386-pc-solaris2.11
Configured with: ../gcc_trunk/configure
--enable-languages=ada,c,c++,fortran,java,objc,obj-c++ --enable-shared
--disa
--- Comment #6 from rguenth at gcc dot gnu dot org 2008-02-12 18:48 ---
The new testcase works for me with older releases (-O2 is enough), but 2.95.4
fails as well. The difference from 4.2 to 4.3 is that 4.2 uses two induction
variables, while 4.3 uses one. After lreg 4.2 has
(insn 21
--- Comment #5 from jakub at gcc dot gnu dot org 2008-02-12 17:27 ---
That's still twice as many global regs as register starved i386 can
realistically handle.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35135
--- Comment #4 from mueller at gcc dot gnu dot org 2008-02-12 17:18 ---
new testcase:
-O2 -fno-gcse -fomit-frame-pointer
=== Cut ===
__extension__ typedef unsigned long long int uint64_t;
typedef unsigned int target_ulong;
register struct CPUX86State *env asm ("ebp");
register target_u
--- Comment #3 from mueller at gcc dot gnu dot org 2008-02-12 16:31 ---
the original code uses -fomit-frame-pointer -fno-gcse -O2. I can verify that
-O3 fixes the issue.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35135
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-02-08 11:24 ---
works with -O3 (unrolled loop) on trunk, fails with 2.95, 3.3, 4.1 and 4.2 as
well.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
-
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-02-08 00:32 ---
I don't think we can consider this a regression, the global registers just
makes an already register starved target even more register starved.
We go from having 6 registers down to 3 in this case.
--
pinskia at
10 matches
Mail list logo