./xgcc -B./ -B/tmp/gcc/i686-apple-darwin7.2.1/bin/ -isystem /tmp/gcc/i686-apple- darwin7.2.1/include -isystem /tmp/gcc/i686-apple-darwin7.2.1/sys-include -L/Users/lars/GCC/ FSF/testbuild/gcc/../ld -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing- prototypes -Wold-style-definition -isystem ./include -I. -I. -I../../gcc-3.4.1/gcc -I../../gcc- 3.4.1/gcc/. -I../../gcc-3.4.1/gcc/../include -I../intl \ -c ../../gcc-3.4.1/gcc/config/darwin-crt2.c -o crt2.o ../../gcc-3.4.1/gcc/config/darwin-crt2.c: In function `__darwin_gcc3_preregister_frame_info': ../../gcc-3.4.1/gcc/config/darwin-crt2.c:151: error: unrecognizable insn: (insn 11 9 12 0 (set (reg/f:SI 58) (plus:SI (reg:SI 3 bx) (const:SI (minus:SI (symbol_ref:SI ("&L___keymgr_global$non_lazy_ptr")) (symbol_ref:SI ("<pic base>")))))) -1 (nil) (nil)) ../../gcc-3.4.1/gcc/config/darwin-crt2.c:151: internal compiler error: in extract_insn, at recog.c:2083 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. make[2]: *** [crt2.o] Error 1 make[1]: *** [stage1_build] Error 2 make: *** [bootstrap] Error 2 the bootstrap was attempted like: mkdir /tmp/gcc mkdir testbuild cd testbuild/ ../gcc-3.4.1/configure --prefix=/tmp/gcc make bootstrap STAGE1_CFLAGS="-no-cpp-precomp -Wa,-force_cpusubtype_ALL -g"
I thought I had fixed this error.
Created attachment 6788 [details] preprocessed file (darwin-crt2.i) that triggers the bug
Confirmed, caused by the fix for PR 15717. I have a fix for this one too.
Patch here: <http://gcc.gnu.org/ml/gcc-patches/2004-07/msg01982.html>.
*** Bug 16723 has been marked as a duplicate of this bug. ***
there should be a solution out there: http://gcc.gnu.org/ml/gcc-patches/2004-08/msg00506.html which needs to be reviewed.
Fixed on the mainline by: 2004-08-20 Mike Stump <mrs@apple.com> * config/darwin.c (machopic_indirect_data_reference): Mark stubs as defined. * config/386/386.c (darwin_local_data_pic): Add. (legitimate_constant_p): Reorder so that PLUS handling runs before darwin_local_data_pic to match the ordering in legitimate_pic_address_disp_p and so that MINUS runs after darwin_local_data_pic as otherwise the darwin_local_data_pic logic can be skipped, which would be very bad. (legitimate_pic_address_disp_p): Move from from here to darwin_local_data_pic so it can be reused.
Postponed until GCC 3.4.3, darwin is not release-critical.
Someone has to do the back port of the patch and test it (I no longer can do cross builds).
Postponed until GCC 3.4.4.
Removing target milestone; OpenDarwin is not a primary or secondary target.
Just marking as fixed for 4.0.0 as there is no recent interesting in getting this fixed in earlier branches and earlier branches are not supported for darwin8.0.