This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug optimization/11379] ICE with optimization option -fnew-ra
- From: "spigel at olvs dot miee dot ru" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Jul 2003 13:02:59 -0000
- Subject: [Bug optimization/11379] ICE with optimization option -fnew-ra
- References: <20030630122204.11379.spigel@olvs.miee.ru>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11379
------- Additional Comments From spigel at olvs dot miee dot ru 2003-07-18 13:02 -------
Subject: Re: ICE with optimization option -fnew-ra
I can confirm this on 3.3.1 (20030715) with "-O1 -march=athlon-xp -fnew-ra".
It can be the good code for testing new compiler versions.
pinskia at physics dot uc dot edu wrote:
>------- Additional Comments From pinskia at physics dot uc dot edu 2003-07-15 14:42 -------
>Here is a reduce test case (down to 36 lines):
>typedef unsigned char Byte;
>typedef unsigned int uInt;
>typedef uInt uIntf;
>typedef struct inflate_huft_s inflate_huft;
>struct inflate_huft_s
>{
> Byte Exop;
> Byte Bits;
> uInt base;
>};
>int huft_build (uInt n, uInt s, const uIntf * d,
> const uIntf * e)
>{
>
> uInt a = n;
> uInt c[15 + 1];
> uInt i = n;
> uInt j = n;
> uInt k = n;
> register uIntf *p;
> inflate_huft *q = 0;
> struct inflate_huft_s r;
> p = c;
> for (; k <= n; k++)
> {
> while (a--)
> {
> r.Exop = (Byte) (e[*p - s] + 16 + 64);
> r.base = d[*p++ - s];
> for (j = i >> n; j < n; j += 1 << (k - n))
> q[j] = r;
> }
> }
> return 0;
>}
>