Re: Bootstrap failure on sparc-sun-solaris2.10

2011-09-30 Thread Rainer Orth
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

2011-03-29 Thread Rainer Orth
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

2008-09-12 Thread Eric Botcazou
 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

2008-09-12 Thread Adam Nemet
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

2008-09-08 Thread Rainer Orth
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

2008-09-08 Thread David Miller
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

2008-09-07 Thread Eric Botcazou
 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

2008-09-06 Thread Andreas Tobler

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

2008-09-06 Thread H.J. Lu
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

2008-09-05 Thread Rainer Orth
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

2008-09-05 Thread Andreas Tobler

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

2008-09-05 Thread Andreas Tobler

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

2008-09-05 Thread H.J. Lu
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

2008-09-05 Thread Andreas Tobler

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

2008-09-05 Thread Andreas Tobler

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

2008-09-05 Thread H.J. Lu
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

2008-09-05 Thread Andreas Tobler

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

2008-09-05 Thread H.J. Lu
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

2006-01-25 Thread Zack Weinberg
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

2006-01-25 Thread Kaveh R. Ghazi
  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

2006-01-25 Thread Kaveh R. Ghazi
  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

2006-01-24 Thread Kaveh R. Ghazi

  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

2006-01-24 Thread Andrew Pinski


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

2006-01-24 Thread Zack Weinberg
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

2006-01-24 Thread Kaveh R. Ghazi
  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]