/sunshine/develop/billing/gcc-3.3.2/libffi/src/ffitest.c: In function `main': /sunshine/develop/billing/gcc-3.3.2/libffi/src/ffitest.c:1305: error: unrecognizable insn: (call_insn 3977 3976 3978 124 7eb3cc40 (parallel [ (set (reg:SI 8 r8) (call (mem:DI (symbol_ref:SI ("cl.0")) [0 S8 A64]) (const_int 1 [0x1]))) (clobber (reg:DI 320 b0)) (clobber (scratch:DI)) (clobber (scratch:DI)) ]) -1 (insn_list 3969 (insn_list 3970 (insn_list 3971 (insn_list 3972 (insn_list 3973 (insn_list 3974 (insn_list 3975 (insn_list 3976 (nil))))))))) (expr_list:REG_DEAD (reg:DI 120 out0) (expr_list:REG_DEAD (reg:SI 121 out1) (expr_list:REG_DEAD (reg:DI 122 out2) (expr_list:REG_DEAD (reg:SI 123 out3) (expr_list:REG_DEAD (reg:HI 124 out4) (expr_list:REG_DEAD (reg:DI 125 out5) (expr_list:REG_DEAD (reg:SI 126 out6) (expr_list:REG_DEAD (reg:SI 127 out7) (expr_list:REG_DEAD (reg:DI 1 r1) (expr_list:REG_UNUSED (reg:DI 320 b0) (expr_list:REG_UNUSED (scratch:DI) (expr_list:REG_UNUSED (scratch:DI) (nil))))))))))))) (expr_list (use (reg:DI 1 r1)) (expr_list (use (reg:SI 127 out7)) (expr_list (use (reg:SI 126 out6)) (expr_list (use (reg:DI 125 out5)) (expr_list (use (reg:HI 124 out4)) (expr_list (use (reg:SI 123 out3)) (expr_list (use (reg:DI 122 out2)) (expr_list (use (reg:SI 121 out1)) (expr_list (use (reg:DI 120 out0)) (nil))))))))))) /sunshine/develop/billing/gcc-3.3.2/libffi/src/ffitest.c:1305: internal compiler error: in extract_insn, at recog.c:2175
Can you provide the preprocessed source (see <http://gcc.gnu.org/bugs.html>) and the command line which is causing this?
I seem to have the same bug as the reporter. - gcc 3.3.2 (downloaded the gcc-3.3.2.tar.gz from ftp.fu- berlin.de/unix/gnu/gcc/gcc-3.3.2/) - IA64 architecture - HPUX 11.23 - ../gcc-3.3.2/configure --prefix=/opt/gcc-3.3.2 --with-gnu-as --with- as=/opt/binutils-2.14/ia64-hp-hpux11.23/bin/as --enable-threads=posix - gmake bootstrap - compiler output is the same as the reporter's I have no idea how to get the preprocessed files. I read that I needed to give the -save-temps options but 'gmake bootstrap -save-temps' doesn't work ofcourse. Any help would be greatly appreciated. Thank you for your time!
Note "compilation command" does not equal make command, it is the command which gets invoked by make.
To get preprocessed source, rerun the last command that make invokes where it fails, adding - save-temps. For instance, something like 'cd ia64-hp-hpux11.23/libffi; gcc -c -I../../../gcc/libffi ... -save-temps ffitest.c' .
Created attachment 5355 [details] preprocessed source ffitest.i This is the preprocessed source as you requested. Thank's for the help!
Fixed for 3.3.3, most likely by: 2003-12-16 Zack Weinberg <zack@codesourcery.com> Backport the following patches from mainline. 2003-12-05 Mark Mitchell <mark@codesourcery.com> * config/ia64/ia64.h (MUST_PASS_IN_STACK): Define. 2003-12-01 James E Wilson <wilson@specifixinc.com> * config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not GR_ARG_FIRST. 2003-10-21 Zack Weinberg <zack@codesourcery.com> * config/ia64/ia64.md (cmpxchg_acq_si): Mark operand 3 as DImode. * config/ia64/ia64.c (ia64_expand_fetch_and_op, ia64_expand_op_and_fetch): Make sure the REG for ar.ccv is DImode. Use convert_move to load ar.ccv. (ia64_expand_compare_and_swap): Likewise. If expand_expr doesn't put 'old' and 'new' in the proper modes, run them through convert_to_mode. 2003-10-14 Steve Ellcey <sje@cup.hp.com> * config/ia64/ia64.c (ia64_expand_call): Force function address to DImode. * config/ia64/ia64.md (call_gp): Put DImode on operand 0. 2003-06-11 Richard Henderson <rth@redhat.com> * config/ia64/ia64.md (call_gp): Fix memory mode. 2003-05-14 Eric Christopher <echristo@redhat.com> * combine.c: Fix header comments. (distribute_notes): Remove usage of elim_i1, elim_i2. Propagate to all calls and prototype.