This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Breakage in expand_end_case
- To: Bernd Schmidt <bernds at balti dot cygnus dot co dot uk>,gcc-patches at gcc dot gnu dot org
- Subject: Re: Breakage in expand_end_case
- From: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>
- Date: Tue, 14 Mar 2000 00:31:28 +0100
- Cc: kenner at vlsi1 dot ultra dot nyu dot edu
- References: <Pine.LNX.4.10.10003131403380.22128-100000@balti.cygnus.co.uk>
Am Mon, 13 Mar 2000 schrieb Bernd Schmidt:
>This shows up as a failure to compile kernel/sys.c in linux-2.3.37 (probably
>all other versions as well). Kenner modified one of the comparisons to use
>compare_tree_int, but didn't preserve the effect of a cast to unsigned that
>used to be there. Later we use the value in RANGE as number of elements
>to allocate with alloca, with fairly disastrous results for the stack
>pointer.
>
>Kenner, can you go back to that patch and verify that the same problem
>doesn't occur in other places as well?
>
>Bernd
>
> * stmt.c (expand_end_case): RANGE may be signed, and when checking
> whether it is too large we must also verify that it isn't negative.
Bernd, this patch causes a bootstrap comparison failure on powerpc-linux-gnu, I
won't have time to debug this anytime soon though.
Franz.