[Bug tree-optimization/25554] New: [4.0 Regression] unrecognizable insn on x86_64 with -O2 -ftracer
halcy0n at gentoo dot org
gcc-bugzilla@gcc.gnu.org
Sat Dec 24 04:26:00 GMT 2005
When compiling the supplied test case with `gcc -c -O2 -ftracer test.c` with
gcc-4.0.3 the following error occurs:
test.c: In function Âmpfr_pow_uiÂ:
test.c:18: error: unrecognizable insn:
(insn 96 44 46 6 (set (reg:CCZ 17 flags)
(compare:CCZ (and:DI (reg/v:DI 66 [ n ])
(const_int 4611686018427387904 [0x4000000000000000]))
(const_int 0 [0x0]))) -1 (nil)
(expr_list:REG_DEAD (reg/v:DI 66 [ n ])
(nil)))
test.c:18: internal compiler error: in extract_insn, at recog.c:2020
This does not occur in 3.4, 4.1, or 4.2. Revision 98597 on gcc-4_1-branch
seems to be where it was fixed for 4.1. Here is the testcase I am using:
unsigned int __gmpfr_flags;
int
mpfr_pow_ui (unsigned long int n)
{
unsigned long m;
int inexact;
int i;
for (m = n, i = 0; m; i++, m >>= 1)
;
((void) (__gmpfr_flags &= 31 ^ 1));
if (n & (1UL << (i-2)))
return 0;
}
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4/configure --prefix=/home/halcy0n/gcc-test/bin-4/
--enable-languages=c,c++ --disable-multilib
Thread model: posix
gcc version 4.0.3 20051222 (prerelease)
--
Summary: [4.0 Regression] unrecognizable insn on x86_64 with -O2
-ftracer
Product: gcc
Version: 4.0.3
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: halcy0n at gentoo dot org
GCC build triplet: x86_64-pc-linux-gnu
GCC host triplet: x86_64-pc-linux-gnu
GCC target triplet: x86_64-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25554
More information about the Gcc-bugs
mailing list