Seen on Ubuntu Hardy.
reg...@john-home:~/volatile/tmp179$ current-gcc -O3 -c small.c
small.c: In function box:
small.c:29:3: warning: overflow in implicit constant conversion
small.c:31:1: internal compiler error: in simplify_subreg, at
simplify-rtx.c:4981
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
reg...@john-home:~/volatile/tmp179$ current-gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../configure --prefix=/home/regehr/z/tmp/gcc-r150096-install
--program-prefix=r150096- --enable-languages=c,c++
Thread model: posix
gcc version 4.5.0 20090726 (experimental) (GCC)
reg...@john-home:~/volatile/tmp179$ cat small.c
int foo (int _left, int _right)
{
return 1 >= 1 * 8 || 9223372036854775807LL >> _right ? : 0;
}
signed char bar (signed char _ui1, signed char _ui2)
{
return _ui1;
}
signed char baz (int _ui1, signed char _ui2)
{
return _ui1 * _ui2;
}
volatile signed char g_35;
int func_16 (int p_17, signed char p_19)
{
if (foo (1, bar (p_17, 1)))
if (g_35)
{
}
return 0;
}
void box (signed char p_13, signed char p_14)
{
signed char l_133 = 0xF5C80580;
func_16 (baz (l_133, g_35), 1);
}
--
Summary: ICE in simplify_subreg, at simplify-rtx.c:4981
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: regehr at cs dot utah dot edu
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40862