This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: REGRESSION in 3.2.1-pre on mips-irix6 (and elsewhere) compiling execute/20011219-1.c
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>, Jan Hubicka <jh at suse dot cz>, "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>, "graham dot stott at btinternet dot com" <graham dot stott at btinternet dot com>, "David dot Billinghurst at riotinto dot com" <David dot Billinghurst at riotinto dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Sat, 16 Nov 2002 12:37:29 +0100
- Subject: Re: REGRESSION in 3.2.1-pre on mips-irix6 (and elsewhere) compiling execute/20011219-1.c
- References: <200211160114.47656@enzo.bigblue.local> <15310000.1037405703@warlock.codesourcery.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Nov 15, 2002 at 04:15:03PM -0800, Mark Mitchell wrote:
> >> > OK, To not let you to fix everything, I wil take a look at the PPC
> >> > then.
> >>
> >> Survived PPC bootstrap.
> >> I would bet we do ahve function to recognize tablejumps but apparently
> >> we don't...
>
> Jan --
>
> Please check this version of the patch in ASAP.
Any interest in a small testcase which is reproduceable on IA-32?
This one is fixed by Jan's patch.
2002-11-16 Jakub Jelinek <jakub@redhat.com>
* gcc.dg/20021116-1.c: New test.
--- gcc/testsuite/gcc.dg/20021116-1.c.jj 2002-11-16 13:39:12.000000000 +0100
+++ gcc/testsuite/gcc.dg/20021116-1.c 2002-11-16 13:39:04.000000000 +0100
@@ -0,0 +1,32 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fpic" } */
+/* { dg-warning "not supported" "PIC unsupported" { target cris-*-elf* cris-*-aout* mmix-*-* } 0 } */
+
+void **
+foo (void **x, int y, void *z)
+{
+ switch (y)
+ {
+ case 162:
+ *x = z;
+ break;
+ case 164:
+ *x = z;
+ break;
+ case 165:
+ *x = z;
+ break;
+ case 166:
+ *x = z;
+ break;
+ case 163:
+ *x = z;
+ break;
+ default:
+ goto out;
+ }
+ return x;
+
+out:
+ return (void **) 0;
+}
Jakub