Re: Bootstrap failure on sparc-sun-solaris2.10
Art Haas ah...@impactweather.com writes: I've had no success lately getting GCC to bootstrap successfully. My last successful bootstrap was on September 6; my builds on September 7 through today all end with a comparison failure. Here's the end of my build log: gmake[2]: Entering directory `/export/home/arth/src/gcc-0929' gmake[3]: Entering directory `/export/home/arth/src/gcc-0929' rm -f stage_current gmake[3]: Leaving directory `/export/home/arth/src/gcc-0929' Comparing stages 2 and 3 warning: gcc/cc1-checksum.o differs warning: gcc/cc1plus-checksum.o differs warning: gcc/cc1obj-checksum.o differs Bootstrap comparison failure! libdecnumber/decNumber.o differs gmake[2]: *** [compare] Error 1 gmake[2]: Leaving directory `/export/home/arth/src/gcc-0929' gmake[1]: *** [stage3-bubble] Error 2 gmake[1]: Leaving directory `/export/home/arth/src/gcc-0929' gmake: *** [bootstrap-lean] Error 2 I didn't have an issue bootstrapping mainline yesterday on Solaris 8 to 11. My last successful build was configured like so: $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/export/home/arth/local/libexec/gcc/sparc-sun-solaris2.10/4.7.0/lto-wrapper Target: sparc-sun-solaris2.10 Configured with: /export/home/arth/src/gcc.git/configure --prefix=/export/home/arth/local --enable-languages=c,c++,objc --disable-nls --with-gmp=/export/home/arth/local --with-mpfr=/export/home/arth/local --with-mpc=/export/home/arth/local --enable-checking=release --enable-threads --with-gnu-as --with-as=/export/home/arth/local/bin/as --with-gnu-ld --with-ld=/export/home/arth/local/bin/ld --enable-libstdcxx-pch=no --with-cpu=ultrasparc3 --with-tune=ultrasparc3 Which version of gas and gld are you using? I'd stay away from gld, especially on SPARC. Please also try a bootstrap without the --with-cpu and --with-tune options to see if that makes a difference. I've seen numerous Sparc related patch land after my last successful build, so I'm guessing the issue is Solaris specific. Anyone else who builds on this platform seeing similar problems? If the problem persists even with my suggested changes, please file a bootstrap PR and Cc it to Eric and Dave M. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University
Re: Bootstrap failure on sparc-sun-solaris2.10
Hi Art, This morning's build on sparc-sun-solaris2.10 failed for me; the error message in 'stage_2' is below: options.c:753:3: error: enum conversion in initialization is invalid in C++ [-Werror=c++-compat] options.c:753:3: error: (near initialization for 'global_options_init.x_sparc_cpu_and_features') [-Werror=c++-compat] options.c:755:3: error: enum conversion in initialization is invalid in C++ [-Werror=c++-compat] options.c:755:3: error: (near initialization for 'global_options_init.x_sparc_cpu') [-Werror=c++-compat] cc1: all warnings being treated as errors My build on Friday worked, so the likely culprit is this change from today: 2011-03-28 Joseph Myers jos...@codesourcery.com * config/sparc/sparc-opts.h: New. * config/sparc/sparc.c (sparc_handle_option, sparc_select, sparc_cpu, fpu_option_set, TARGET_HANDLE_OPTION): Remove. (sparc_option_override): Store processor_type enumeration rather than string in cpu_default. Remove name and enumeration from cpu_table. Directly default -mcpu then default -mtune from -mcpu without using sparc_select. Use target_flags_explicit instead of fpu_option_set. * config/sparc/sparc.h (enum processor_type): Move to sparc-opts.h. (sparc_cpu, struct sparc_cpu_select, sparc_select): Remove. * config/sparc/sparc.opt (config/sparc/sparc-opts.h): New HeaderInclude entry. (mcpu=, mtune=): Use Var and Enum. (sparc_processor_type): New Enum and EnumValue entries. The relevant lines of the auto-generated 'options.c' file look like this: 752: 0, /* sparc_cmodel_string */ 753: 0, /* sparc_cpu_and_features */ 754: 0, /* sparc_std_struct_return */ 755: 0, /* sparc_cpu */ 756: 0, /* asm_file_name */ I've just run into this myself and filed PR bootstrap/48337 for the issue. In general, you should do so yourself and Cc: the maintainers and patch author. It's a better way to get attention than just posting to the gcc list. Thanks. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University
Re: Bootstrap failure in sparc-sun-solaris2.10
Even with the patch listed in the bug report below my bootstrap would still fail when the compiler tries to build libgcc. The bug report for the bootstrap failure is here: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37424 That patch is not the fix, this is explained in the audit trail. The fix is 2008-09-11 Jeff Law [EMAIL PROTECTED] * reload1.c (alter_reg): Undo the BYTE_BIG_ENDIAN correction performed by assign_stack_local on the IRA path for stack slot sharing as well as the non-IRA path. The build failed while building libgcc - the code would trip up on an assert in haifa-sched.c, similar to the message posted here, though now the assert is on line 2318: http://gcc.gnu.org/ml/gcc/2008-09/msg00106.html Applying the patch Adam created and posted in the message below resolved the issue and the compiler successfully bootstrapped: http://gcc.gnu.org/ml/gcc/2008-09/msg00139.html Thanks for reporting this. I now can close PR 37424. There was one reply to this message; I don't know if the patch is being reworked or been formally submitted yet, but it did fix my build. OK, I'll take a look. -- Eric Botcazou
Re: Bootstrap failure in sparc-sun-solaris2.10
Eric Botcazou [EMAIL PROTECTED] writes: Applying the patch Adam created and posted in the message below resolved the issue and the compiler successfully bootstrapped: http://gcc.gnu.org/ml/gcc/2008-09/msg00139.html Thanks for reporting this. I now can close PR 37424. There was one reply to this message; I don't know if the patch is being reworked or been formally submitted yet, but it did fix my build. OK, I'll take a look. Yes it was formally submitted here, no review so far: http://gcc.gnu.org/ml/gcc-patches/2008-09/msg00574.html Adam
Re: Bootstrap failure on sparc-sun-solaris2.10
Eric Botcazou writes: Confirmed (on Solaris 9). Would you mind opening a PR? There is already one for Linux (37344) but the failure is a little different. Thanks in advance. Sure, done: PR bootstrap/37424. Rainer
Re: Bootstrap failure on sparc-sun-solaris2.10
From: Rainer Orth [EMAIL PROTECTED] Date: Mon, 8 Sep 2008 17:18:50 +0200 (MEST) Eric Botcazou writes: Confirmed (on Solaris 9). Would you mind opening a PR? There is already one for Linux (37344) but the failure is a little different. Thanks in advance. Sure, done: PR bootstrap/37424. BTW, I'm also seeing the sparc-*-linux failure, and it seems the compiler is outputting an unaligned memory access somehow.
Re: Bootstrap failure on sparc-sun-solaris2.10
When I tried mainline bootstrap on sparc-sun-solaris2.11 as of 20080903 (rev 139939), I get a configure failure in stage2 libgcc: checking for suffix of object files... configure: error: in `/vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/sparc-sun-solaris2.11/libgcc': configure: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. and config.log reveals: configure:2590: checking for suffix of object files configure:2611: /vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/./gcc/xgcc -B/vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/./gcc/ -B/vol/gcc/sparc-sun-solaris2.11/bin/ -B/vol/gcc/sparc-sun-solaris2.11/lib/ -isystem /vol/gcc/sparc-sun-solaris2.11/include -isystem /vol/gcc/sparc-sun-solaris2.11/sys-include -c -g -O2conftest.c 5 conftest.c:12: internal compiler error: Bus Error Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. Confirmed (on Solaris 9). Would you mind opening a PR? There is already one for Linux (37344) but the failure is a little different. Thanks in advance. -- Eric Botcazou
Re: Bootstrap failure on sparc-sun-solaris2.10
H.J. Lu wrote: On Fri, Sep 5, 2008 at 2:57 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Does trunk bootstrap with revision 139589? No, gcc version 4.4.0 20080905 (experimental) [trunk revision 140042] (GCC) If trunk was broken at revision 139589, your problem isn't related to IRA since IRA was merged at revision 139590. Sorry, misread the above. - 139589 bootstrap ok and tested - 139590 bootstrap nok. Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
On Sat, Sep 6, 2008 at 8:30 AM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: On Fri, Sep 5, 2008 at 2:57 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Does trunk bootstrap with revision 139589? No, gcc version 4.4.0 20080905 (experimental) [trunk revision 140042] (GCC) If trunk was broken at revision 139589, your problem isn't related to IRA since IRA was merged at revision 139590. Sorry, misread the above. - 139589 bootstrap ok and tested - 139590 bootstrap nok. I suggest you open a bug report saying that IRA breaks Sparc bootstrap. -- H.J.
Re: Bootstrap failure on sparc-sun-solaris2.10
Art Haas [EMAIL PROTECTED] writes: My build attempts on sparc-sun-solaris2.10 haven't been working well since the IRA merge, but given the scope of that change and the fixes applied since the merge I'm certain the build will be in good shape soon. This morning's build attempt failed while compiling libgcc: /export/home/arth/src/gcc.git/libgcc/../gcc/libgcc2.c: In function '__moddi3': /export/home/arth/src/gcc.git/libgcc/../gcc/libgcc2.c:1125: internal compiler error: in choose_ready, at haifa-sched.c:2309 When I tried mainline bootstrap on sparc-sun-solaris2.11 as of 20080903 (rev 139939), I get a configure failure in stage2 libgcc: checking for suffix of object files... configure: error: in `/vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/sparc-sun-solaris2.11/libgcc': configure: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. and config.log reveals: configure:2590: checking for suffix of object files configure:2611: /vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/./gcc/xgcc -B/vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/./gcc/ -B/vol/gcc/sparc-sun-solaris2.11/bin/ -B/vol/gcc/sparc-sun-solaris2.11/lib/ -isystem /vol/gcc/sparc-sun-solaris2.11/include -isystem /vol/gcc/sparc-sun-solaris2.11/sys-include -c -g -O2conftest.c 5 conftest.c:12: internal compiler error: Bus Error Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. configure:2614: $? = 1 configure: failed program was: | /* confdefs.h. */ | | #define PACKAGE_NAME GNU C Runtime Library | #define PACKAGE_TARNAME libgcc | #define PACKAGE_VERSION 1.0 | #define PACKAGE_STRING GNU C Runtime Library 1.0 | #define PACKAGE_BUGREPORT | /* end confdefs.h. */ | | int | main () | { | | ; | return 0; | } configure:2627: error: in `/vol/gccsrc/obj/gcc-4.4.0-20080903/11-gcc/sparc-sun-solaris2.11/libgcc': configure:2629: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. Running cc1 -O2 conftest.i gives Program received signal SIGSEGV, Segmentation fault. grokdeclarator (declarator=0x8bf240, declspecs=0x8bf1e8, decl_context=NORMAL, initialized=1 '\001', width=0x0, decl_attrs=0xffbff454, deprecated_state=DEPRECATED_NORMAL) at /vol/gcc/src/gcc-dist/gcc/c-decl.c:4194 (gdb) where #0 grokdeclarator (declarator=0x8bf240, declspecs=0x8bf1e8, decl_context=NORMAL, initialized=1 '\001', width=0x0, decl_attrs=0xffbff454, deprecated_state=DEPRECATED_NORMAL) at /vol/gcc/src/gcc-dist/gcc/c-decl.c:4194 #1 0x000b3340 in start_function (declspecs=0x8bf1e8, declarator=0x8bf240, attributes=0x0) at /vol/gcc/src/gcc-dist/gcc/c-decl.c:6096 #2 0x0010f964 in c_parser_declaration_or_fndef (parser=0xff01d720, fndef_ok=1 '\001', empty_ok=value optimized out, nested=0 '\0', start_attr_ok=value optimized out) at /vol/gcc/src/gcc-dist/gcc/c-parser.c:1278 #3 0x00114574 in c_parse_file () at /vol/gcc/src/gcc-dist/gcc/c-parser.c:979 #4 0x000f7470 in c_common_parse_file (set_yydebug=0) at /vol/gcc/src/gcc-dist/gcc/c-opts.c:1239 #5 0x003c40c0 in toplev_main (argc=value optimized out, argv=value optimized out) at /vol/gcc/src/gcc-dist/gcc/toplev.c:968 #6 0x00097e54 in _start () Looks like a code generation bug to me. I'll try to start a reghunt asap. Btw., i386-pc-solaris2.10 is also broken for me, this time while configuring stage3 libgcc ;-( Same is true for alpha-dec-osf5.1b and mips-sgi-irix6.5, so all four of my platforms got broken during the last for weeks while I was on vacation. Rainer -- - Rainer Orth, Faculty of Technology, Bielefeld University
Re: Bootstrap failure on sparc-sun-solaris2.10
Rainer Orth wrote: Looks like a code generation bug to me. I'll try to start a reghunt asap. Start around the 25/26th of August. IRA. Since then it is borked. Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:15 PM, Andreas Tobler [EMAIL PROTECTED] wrote: Rainer Orth wrote: Looks like a code generation bug to me. I'll try to start a reghunt asap. Start around the 25/26th of August. IRA. Since then it is borked. Can you try ira-merge branch? It has all IRA bug fixes without non-IRA changes. How is it named? ira-merge? If, I can't find it on http://gcc.gnu.org/svn.html. Thanks, Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
On Fri, Sep 5, 2008 at 12:36 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:15 PM, Andreas Tobler [EMAIL PROTECTED] wrote: Rainer Orth wrote: Looks like a code generation bug to me. I'll try to start a reghunt asap. Start around the 25/26th of August. IRA. Since then it is borked. Can you try ira-merge branch? It has all IRA bug fixes without non-IRA changes. How is it named? ira-merge? If, I can't find it on http://gcc.gnu.org/svn.html. It is a temporary branch, branches/ira-merge, to track IRA related problems. -- H.J.
Re: Bootstrap failure on sparc-sun-solaris2.10
H.J. Lu wrote: Can you try ira-merge branch? It has all IRA bug fixes without non-IRA changes. How is it named? ira-merge? If, I can't find it on http://gcc.gnu.org/svn.html. It is a temporary branch, branches/ira-merge, to track IRA related problems. Thanks, co right now. Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:36 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:15 PM, Andreas Tobler [EMAIL PROTECTED] wrote: Rainer Orth wrote: Looks like a code generation bug to me. I'll try to start a reghunt asap. Start around the 25/26th of August. IRA. Since then it is borked. Can you try ira-merge branch? It has all IRA bug fixes without non-IRA changes. How is it named? ira-merge? If, I can't find it on http://gcc.gnu.org/svn.html. It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
On Fri, Sep 5, 2008 at 2:43 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:36 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: On Fri, Sep 5, 2008 at 12:15 PM, Andreas Tobler [EMAIL PROTECTED] wrote: Rainer Orth wrote: Looks like a code generation bug to me. I'll try to start a reghunt asap. Start around the 25/26th of August. IRA. Since then it is borked. Can you try ira-merge branch? It has all IRA bug fixes without non-IRA changes. How is it named? ira-merge? If, I can't find it on http://gcc.gnu.org/svn.html. It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Does trunk bootstrap with revision 139589? -- H.J.
Re: Bootstrap failure on sparc-sun-solaris2.10
H.J. Lu wrote: It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Does trunk bootstrap with revision 139589? No, gcc version 4.4.0 20080905 (experimental) [trunk revision 140042] (GCC) Andreas
Re: Bootstrap failure on sparc-sun-solaris2.10
On Fri, Sep 5, 2008 at 2:57 PM, Andreas Tobler [EMAIL PROTECTED] wrote: H.J. Lu wrote: It is a temporary branch, branches/ira-merge, to track IRA related problems. Same issue. Does trunk bootstrap with revision 139589? No, gcc version 4.4.0 20080905 (experimental) [trunk revision 140042] (GCC) If trunk was broken at revision 139589, your problem isn't related to IRA since IRA was merged at revision 139590. -- H.J.
Re: Bootstrap failure on sparc*-sun-solaris2.10
On Tue, Jan 24, 2006 at 11:55:32PM -0500, Kaveh R. Ghazi wrote: Okay, now I get: [...] build/gencondmd.c, line 60: incomplete struct/union/enum c_test: insn_conditions build/gencondmd.c, line 1952: warning: syntax error: empty initializer build/gencondmd.c, line 1952: cannot recover from previous errors cc: acomp failed for build/gencondmd.c make[3]: *** [build/gencondmd.o] Error 2 On Wed, Jan 25, 2006 at 02:04:04PM +0100, Andreas Krebbel wrote: the insn-conditions.md file doesn't preserve escaping of characters. So in the s390.md example CONST_OK_FOR_CONSTRAINT_P (INTVAL (operands[2]), 'K', \K\) becomes CONST_OK_FOR_CONSTRAINT_P (INTVAL (operands[2]), 'K', K) which a syntax error for the gen... tools. The appended patch (superseding the earlier one, Kaveh) should fix both these issues. I have to run off to school and won't be able to do anything more till this evening, but please let me know how it goes. zw == --- genconditions.c (revision 110242) +++ genconditions.c (local) @@ -52,9 +52,14 @@ write_header (void) machine description file. */\n\ \n\ #include \bconfig.h\\n\ -#include \insn-constants.h\\n); +#include \system.h\\n); puts (\ +/* It is necessary, but not entirely safe, to include the headers below\n\ + in a generator program. As a defensive measure, don't do so when the\n\ + table isn't going to have anything in it. */\n\ +#if GCC_VERSION = 3001\n\ +\n\ /* Do not allow checking to confuse the issue. */\n\ #undef ENABLE_CHECKING\n\ #undef ENABLE_TREE_CHECKING\n\ @@ -64,9 +69,9 @@ write_header (void) #undef ENABLE_GC_ALWAYS_COLLECT\n); puts (\ -#include \system.h\\n\ #include \coretypes.h\\n\ #include \tm.h\\n\ +#include \insn-constants.h\\n\ #include \rtl.h\\n\ #include \tm_p.h\\n\ #include \function.h\\n); @@ -86,8 +91,7 @@ write_header (void) #include \hard-reg-set.h\\n\ #include \resource.h\\n\ #include \toplev.h\\n\ -#include \reload.h\\n\ -#include \gensupport.h\\n); +#include \reload.h\\n); if (saw_eh_return) puts (#define HAVE_eh_return 1); @@ -97,7 +101,9 @@ write_header (void) /* Dummy external declarations. */\n\ extern rtx insn;\n\ extern rtx ins1;\n\ -extern rtx operands[];\n); +extern rtx operands[];\n\ +\n\ +#endif /* gcc = 3.0.1 */\n); } /* Write out one entry in the conditions table, using the data pointed @@ -118,12 +124,14 @@ write_one_condition (void **slot, void * fputs ( { \, stdout); for (p = test-expr; *p; p++) { - if (*p == '\n') - fputs (\\n\\\n, stdout); - else if (*p == '') - fputs (\\\, stdout); - else - putchar (*p); + switch (*p) + { + case '\n': fputs (\\n\\, stdout); break; + case '\\': + case '\': putchar ('\\'); break; + default: break; + } + putchar (*p); } printf (\,\n__builtin_constant_p ); @@ -140,20 +148,29 @@ static void write_conditions (void) { puts (\ +/* Structure definition duplicated from gensupport.h rather than\n\ + drag in that file and its dependencies. */\n\ +struct c_test\n\ +{\n\ + const char *expr;\n\ + int value;\n\ +};\n); + + puts (\ /* This table lists each condition found in the machine description.\n\ Each condition is mapped to its truth value (0 or 1), or -1 if that\n\ - cannot be calculated at compile time. */\n\ -\n\ -static const struct c_test insn_conditions[] = {\n \ -/* If we don't have __builtin_constant_p, or it's not acceptable in array\n\ + cannot be calculated at compile time.\n\ + If we don't have __builtin_constant_p, or it's not acceptable in array\n\ initializers, fall back to assuming that all conditions potentially\n\ vary at run time. It works in 3.0.1 and later; 3.0 only when not\n\ optimizing. */\n\ -#if GCC_VERSION = 3001); +\n\ +static const struct c_test insn_conditions[] = {\n\ +#if GCC_VERSION = 3001\n); traverse_c_tests (write_one_condition, 0); - puts (#endif\n};\n); + puts (\n#endif /* gcc = 3.0.1 */\n};\n); } /* Emit code which will convert the C-format table to a @@ -163,16 +180,31 @@ static const struct c_test insn_conditio static void write_writer (void) { - puts (int\nmain(void)\n{\n\ - unsigned int i;\n\ -\n\ - puts (\(define_conditions [\);\n\ - for (i = 0; i ARRAY_SIZE (insn_conditions); i++)\n\ -printf (\ (%d \\\%s\\\)\\n\,\n\ - insn_conditions[i].value, insn_conditions[i].expr);\n\ - puts (\])\);\n\ - fflush (stdout);\n\ - return (ferror (stdout) != 0 ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE);\n}); + puts (int\n + main(void)\n + {\n + unsigned int i;\n + const char *p;\n + puts (\(define_conditions [\);\n + for (i = 0; i ARRAY_SIZE (insn_conditions); i++)\n + {\n + printf (\ (%d , insn_conditions[i].value);\n + for (p = insn_conditions[i].expr; *p; p++)\n +
Re: Bootstrap failure on sparc*-sun-solaris2.10
The appended patch (superseding the earlier one, Kaveh) should fix both these issues. I have to run off to school and won't be able to do anything more till this evening, but please let me know how it goes. zw Zack - using your latest genconditions.c patch plus this one: http://gcc.gnu.org/ml/gcc/2006-01/msg00951.html was sufficient to get a C-only bootstrap working on solaris2.10 using cc for stage1. I'm going to run a full test, but that'll take many many hours longer. Thanks, --Kaveh -- Kaveh R. Ghazi [EMAIL PROTECTED]
Re: Bootstrap failure on sparc*-sun-solaris2.10
Zack - using your latest genconditions.c patch plus this one: http://gcc.gnu.org/ml/gcc/2006-01/msg00951.html was sufficient to get a C-only bootstrap working on solaris2.10 using cc for stage1. I'm going to run a full test, but that'll take many many hours longer. Ok, I've now completed a full bootstrap and testsuite run with the two patches on sparc-solaris2.10. There are many java failures so we're not out of the woods. But at least we're back to bootstrapping. http://gcc.gnu.org/ml/gcc-testresults/2006-01/msg01332.html Thanks, --Kaveh -- Kaveh R. Ghazi [EMAIL PROTECTED]
Re: Bootstrap failure on sparc*-sun-solaris2.10
Not this issue again :(. I thought I fixed it the last time it came up. -- Pinski URL? -- Kaveh R. Ghazi [EMAIL PROTECTED]
Re: Bootstrap failure on sparc*-sun-solaris2.10
On Jan 24, 2006, at 10:41 PM, Kaveh R. Ghazi wrote: Not this issue again :(. I thought I fixed it the last time it came up. -- Pinski URL? Maybe I did not fix it but it was a problem in the past. This was PR 18058 for 4.0.0. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18058 -- Pinski
Re: Bootstrap failure on sparc*-sun-solaris2.10
On Tue, Jan 24, 2006 at 10:29:08PM -0500, Kaveh R. Ghazi wrote: I'm getting the following new bootstrap failure on both sparc-sun-solaris2.10 and sparc64-sun-solaris2.10 when using cc for stage1: build/gencondmd.c, line 1943: warning: syntax error: empty initializer build/gencondmd.c, line 1943: warning: null dimension: insn_conditions build/gencondmd.c, line 1951: warning: null dimension: sizeof() cc -xildoff -xarch=v9 -g -DIN_GCC -DHAVE_CONFIG_H -DGENERATOR_FILE -o build/gencondmd \ build/gencondmd.o ../build-sparc64-sun-solaris2.10/libiberty/libiberty.a Undefined first referenced symbol in file vec_heap_p_reserve build/gencondmd.o bitmap_zero_bitsbuild/gencondmd.o vec_gc_p_reservebuild/gencondmd.o vec_gc_o_reservebuild/gencondmd.o ggc_freebuild/gencondmd.o fancy_abort build/gencondmd.o I'm not entirely understanding why this breaks now when insn-conditions.o was fine, but a potential big-hammer fix is to put #if GCC_VERSION = 3001 ... #endif around most of the includes, like in the appended patch. Would you please try it? zw * genconditions.c (write_header): In generated code, #if out all headers and fake declarations, except bconfig.h and system.h, when not compiling with GCC = 3.0.1. (write_conditions): Tweak commentary in generated code. == --- genconditions.c (revision 110239) +++ genconditions.c (local) @@ -52,9 +52,14 @@ write_header (void) machine description file. */\n\ \n\ #include \bconfig.h\\n\ -#include \insn-constants.h\\n); +#include \system.h\\n); puts (\ +/* It is necessary, but not entirely safe, to include the headers below\n\ + in a generator program. As a defensive measure, don't do so when the\n\ + table isn't going to have anything in it. */\n\ +#if GCC_VERSION = 3001\n\ +\n\ /* Do not allow checking to confuse the issue. */\n\ #undef ENABLE_CHECKING\n\ #undef ENABLE_TREE_CHECKING\n\ @@ -64,9 +69,9 @@ write_header (void) #undef ENABLE_GC_ALWAYS_COLLECT\n); puts (\ -#include \system.h\\n\ #include \coretypes.h\\n\ #include \tm.h\\n\ +#include \insn-constants.h\\n\ #include \rtl.h\\n\ #include \tm_p.h\\n\ #include \function.h\\n); @@ -97,7 +102,9 @@ write_header (void) /* Dummy external declarations. */\n\ extern rtx insn;\n\ extern rtx ins1;\n\ -extern rtx operands[];\n); +extern rtx operands[];\n\ +\n\ +#endif /* gcc = 3.0.1 */\n); } /* Write out one entry in the conditions table, using the data pointed @@ -142,18 +149,18 @@ write_conditions (void) puts (\ /* This table lists each condition found in the machine description.\n\ Each condition is mapped to its truth value (0 or 1), or -1 if that\n\ - cannot be calculated at compile time. */\n\ -\n\ -static const struct c_test insn_conditions[] = {\n \ -/* If we don't have __builtin_constant_p, or it's not acceptable in array\n\ + cannot be calculated at compile time.\n\ + If we don't have __builtin_constant_p, or it's not acceptable in array\n\ initializers, fall back to assuming that all conditions potentially\n\ vary at run time. It works in 3.0.1 and later; 3.0 only when not\n\ optimizing. */\n\ -#if GCC_VERSION = 3001); +\n\ +static const struct c_test insn_conditions[] = {\n\ +#if GCC_VERSION = 3001\n); traverse_c_tests (write_one_condition, 0); - puts (#endif\n};\n); + puts (\n#endif /* gcc = 3.0.1 */\n};\n); } /* Emit code which will convert the C-format table to a
Re: Bootstrap failure on sparc*-sun-solaris2.10
I'm not entirely understanding why this breaks now when insn-conditions.o was fine, but a potential big-hammer fix is to put #if GCC_VERSION = 3001 ... #endif around most of the includes, like in the appended patch. Would you please try it? zw * genconditions.c (write_header): In generated code, #if out all headers and fake declarations, except bconfig.h and system.h, when not compiling with GCC = 3.0.1. (write_conditions): Tweak commentary in generated code. Okay, now I get: cc -c -g -DIN_GCC -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I../../egcc-SVN20060124/gcc -I../../egcc-SVN20060124/gcc/build -I../../egcc-SVN20060124/gcc/../include -I../../egcc-SVN20060124/gcc/../libcpp/include -I../../egcc-SVN20060124/gcc/../libdecnumber -I../libdecnumber -o build/gencondmd.o build/gencondmd.c build/gencondmd.c, line 60: incomplete struct/union/enum c_test: insn_conditions build/gencondmd.c, line 1952: warning: syntax error: empty initializer build/gencondmd.c, line 1952: cannot recover from previous errors cc: acomp failed for build/gencondmd.c make[3]: *** [build/gencondmd.o] Error 2 (I'm going to sleep, so I won't be able to test anything more until tomorrow.) -- Kaveh R. Ghazi [EMAIL PROTECTED]