The following gives "internal compiler error: in extract_insn, at recog.c:2083", only with -fpic:
arm-softfloat-linux-gnu-g++ -fpic ../c/noerror/GPL/20010107-1.c 20010107-1.c is a C Torture file, containing only the following: unsigned long x[4]; void foo(void) { ((void (*)())(x+2))(); } This sounds similar to 19960 (darwin/m6811-elf) and 19770 (hppa64/hppa64). I'll attach the preprocessed file (though it's hardly necessary, since there are no #includes), and the -v -savetemps output. Here's the full error message: ../c/noerror/GPL/20010107-1.c: In function `void foo()': ../c/noerror/GPL/20010107-1.c:6: error: unrecognizable insn: (call_insn 14 13 16 0 (parallel [ (call (mem:SI (plus:SI (reg/f:SI 68) (const_int 8 [0x8])) [0 S4 A32]) (const_int 0 [0x0])) (use (const_int 0 [0x0])) (clobber (reg:SI 14 lr)) ]) -1 (nil) (expr_list:REG_DEAD (reg/f:SI 68) (expr_list:REG_UNUSED (reg:SI 14 lr) (nil))) (nil)) ../c/noerror/GPL/20010107-1.c:6: internal compiler error: in extract_insn, at recog.c:2083 --- Flash Sheridan [EMAIL PROTECTED] Quality Lead for Compilers and Debuggers PalmSource, Inc. Tools Quality Management -- Summary: -fpic only: internal compiler error: in extract_insn, at recog.c:2083 (20010107-1.c:6) Product: gcc Version: 3.4.1 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: flash at pobox dot com CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: i686-host_pc-linux-gnu GCC target triplet: arm-softfloat-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21613