Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jun 2007 17:15:08 +0200
From:      Ed Schouten <ed@fxq.nl>
To:        Andrey Chernov <ache@nagual.pp.ru>, Alexander Kabaev <kabaev@gmail.com>, current@freebsd.org, kan@freebsd.org
Subject:   Re: Silent gcc 4.2.0 loop optimization bug with -O2
Message-ID:  <20070625151508.GO27942@hoeg.nl>
In-Reply-To: <20070625145627.GA53685@nagual.pp.ru>
References:  <20070625130913.GA50273@nagual.pp.ru> <20070625133951.GA51324@nagual.pp.ru> <8e5ef5f70706250659v48f64410wb5399985a571087e@mail.gmail.com> <20070625145627.GA53685@nagual.pp.ru>

next in thread | previous in thread | raw e-mail | index | archive | help

--VbVrQm6YT89AsdIa
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hello Andrey,

* Andrey Chernov <ache@nagual.pp.ru> wrote:
> Well... Is this small enough?

I did some more stripping and it turns out this is the problem

| int
| main(int argc, char *argv[])
| {
|         int i;
|         int numbers[4] =3D { 0xdead, 0xbeef, 0x1337, 0x4242 };
|=20
|         for (i =3D 1; i <=3D 12; i++) {
|                 if (i <=3D 4)
|                         printf("%d: %x\n", i, numbers[i-1]);
|                 else if (i >=3D 7 && i <=3D 9)
|                         printf("MUST BE HERE!!! %d\n", i);
|         }
| }

When you increase the size of the array to 6 or higher, it does what you
want. It clearly looks like a compiler bug; the size of the array
shouldn't have an effect on the amount of iterations.=20

You should really file a bug at GCC's to make sure this gets fixed in
4.2.1.

Yours,
--=20
 Ed Schouten <ed@fxq.nl>
 WWW: http://g-rave.nl/

--VbVrQm6YT89AsdIa
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)

iD8DBQFGf9v852SDGA2eCwURAuLFAJ0Wr+Sy/MXmcMn1lcz4chAvRAUNuwCcDCYf
DjshVg1xAtKEc0+nPzaJj0g=
=/V/g
-----END PGP SIGNATURE-----

--VbVrQm6YT89AsdIa--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070625151508.GO27942>