[reg...@gamow tmp418]$ current-gcc -v Using built-in specs. COLLECT_GCC=current-gcc COLLECT_LTO_WRAPPER=/uusoc/exports/scratch/regehr/z/compiler-install/gcc-r161681-install/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.6.0/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: ../configure --with-libelf=/usr/local --enable-lto --prefix=/home/regehr/z/compiler-install/gcc-r161681-install --program-prefix=r161681- --enable-languages=c,c++ Thread model: posix gcc version 4.6.0 20100701 (experimental) (GCC)
[reg...@gamow tmp418]$ current-gcc -Os small.c -c -w small.c: In function 'int329': small.c:34:1: internal compiler error: in subst_reloads, at reload.c:6328 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. [reg...@gamow tmp418]$ cat small.c static int foo (int si1, int si2) { return si1 ^ si2 & si1 ^ si1 ^ si2 & ~1 - si2 ^ si2 ? : si1 - si2; } static unsigned bar (unsigned ui1, unsigned ui2) { return ui1 + ui2; } int g_29; int g_75; int g_83; int func_53 (unsigned char p_54, long p_55, unsigned char p_56); int safe (int); void int325 (long p_6, int p_7) { int *l_28 = &g_29; *l_28 |= safe (0) <= foo; } void int329 (unsigned long p_50) { int *l_74 = &g_75; int *l_82 = &g_83; *l_74 ^= foo (func_53 (6L, 1L, 1), 0); *l_82 |= func_53 (0L, 0, 0) <= bar (func_53 (0, 1, 0), p_50); } int func_53 (unsigned char p_54, long p_55, unsigned char p_56) { return g_29; } -- Summary: ice in subst_reloads, at reload.c:6328 Product: gcc Version: unknown 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: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44816