Message ID | 20130914104154.GH24834@lug-owl.de |
---|---|
State | New |
Headers | show |
On Sat, Sep 14, 2013 at 12:41 PM, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote: > Hi! > > My Build Robot[1] found this recent commit to break Alpha: > > * tree-flow.h (FREE_SSANAMES): Move to tree-ssanames.c > (SSANAMES, MODIFIED_NORETURN_CALLS, DEFAULT_DEFS, ptr_info_def, > num_ssa_names, ssa_name): Move to tree-ssanames.h + prototypes. > * tree-flow-inline.h (make_ssa_name, copy_ssa_name, duplicate_ssa_name, > make_temp_ssa_name): move to tree-ssanames.h > * tree-ssa-alias.h: Move prototype. > * tree-ssa.h: Include tree-ssanames.h. > * tree-ssanames.c (FREE_SSANAMES): Move to here. > * tree-ssanames.h: New. Move items from tree-flow*.h > * Makefile.in (tree-ssanames.h): Add to tree-ssanames.o and GTFILES. > > See for example this build log: > http://toolchain.lug-owl.de/buildbot/showlog.php?id=11663&mode=view > > I suggest this patch, which fixes an alpha-linux build for me: I think you can remove the tree-flow.h include and you need to update the dependencies in gcc/Makefile.in. Richard. > 2013-09-13 Jan-Benedict Glaw <jbglaw@lug-owl.de> > > * config/alpha.c: Include tree-ssa.h. > > diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c > index a8fb929..3759205 100644 > --- a/gcc/config/alpha/alpha.c > +++ b/gcc/config/alpha/alpha.c > @@ -50,6 +50,7 @@ along with GCC; see the file COPYING3. If not see > #include "splay-tree.h" > #include "gimple.h" > #include "tree-flow.h" > +#include "tree-ssa.h" > #include "tree-stdarg.h" > #include "tm-constrs.h" > #include "df.h" > > > Ok? > > MfG, JBG > > [1] http://toolchain.lug-owl.de/buildbot/ > http://toolchain.lug-owl.de/buildbot/timeline.php > -- > Jan-Benedict Glaw jbglaw@lug-owl.de +49-172-7608481 > Signature of: If it doesn't work, force it. > the second : If it breaks, it needed replacing anyway.
On 09/14/2013 06:41 AM, Jan-Benedict Glaw wrote: > Hi! > > > I suggest this patch, which fixes an alpha-linux build for me: > > 2013-09-13 Jan-Benedict Glaw <jbglaw@lug-owl.de> > > * config/alpha.c: Include tree-ssa.h. > > diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c > index a8fb929..3759205 100644 > --- a/gcc/config/alpha/alpha.c > +++ b/gcc/config/alpha/alpha.c > @@ -50,6 +50,7 @@ along with GCC; see the file COPYING3. If not see > #include "splay-tree.h" > #include "gimple.h" > #include "tree-flow.h" > +#include "tree-ssa.h" > #include "tree-stdarg.h" > #include "tm-constrs.h" > #include "df.h" > > > Ok? > > It seems a little odd that a target requires the ssa stuff, but I'm fine with this to fix the compile error. Sorry about that. Andrew
On 09/16/2013 05:05 AM, Richard Biener wrote: > On Sat, Sep 14, 2013 at 12:41 PM, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote: >> Hi! >> >> My Build Robot[1] found this recent commit to break Alpha: >> >> * tree-flow.h (FREE_SSANAMES): Move to tree-ssanames.c >> (SSANAMES, MODIFIED_NORETURN_CALLS, DEFAULT_DEFS, ptr_info_def, >> num_ssa_names, ssa_name): Move to tree-ssanames.h + prototypes. >> * tree-flow-inline.h (make_ssa_name, copy_ssa_name, duplicate_ssa_name, >> make_temp_ssa_name): move to tree-ssanames.h >> * tree-ssa-alias.h: Move prototype. >> * tree-ssa.h: Include tree-ssanames.h. >> * tree-ssanames.c (FREE_SSANAMES): Move to here. >> * tree-ssanames.h: New. Move items from tree-flow*.h >> * Makefile.in (tree-ssanames.h): Add to tree-ssanames.o and GTFILES. >> >> See for example this build log: >> http://toolchain.lug-owl.de/buildbot/showlog.php?id=11663&mode=view >> >> I suggest this patch, which fixes an alpha-linux build for me: > I think you can remove the tree-flow.h include and you need to update the > dependencies in gcc/Makefile.in. > > Richard. > of course... :-P I see rs6000.c and i386.c both use tree-flow.h as well. I will have to see what they are actually pulling in from that file so I don't break those eventually too. Andrew Andrew
Hi! On Mon, 2013-09-16 10:32:24 -0400, Andrew MacLeod <amacleod@redhat.com> wrote: > On 09/16/2013 05:05 AM, Richard Biener wrote: > > On Sat, Sep 14, 2013 at 12:41 PM, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote: > > >My Build Robot[1] found this recent commit to break Alpha: > > > > > > * tree-flow.h (FREE_SSANAMES): Move to tree-ssanames.c > > > (SSANAMES, MODIFIED_NORETURN_CALLS, DEFAULT_DEFS, ptr_info_def, > > > num_ssa_names, ssa_name): Move to tree-ssanames.h + prototypes. > > > * tree-flow-inline.h (make_ssa_name, copy_ssa_name, duplicate_ssa_name, > > > make_temp_ssa_name): move to tree-ssanames.h > > > * tree-ssa-alias.h: Move prototype. > > > * tree-ssa.h: Include tree-ssanames.h. > > > * tree-ssanames.c (FREE_SSANAMES): Move to here. > > > * tree-ssanames.h: New. Move items from tree-flow*.h > > > * Makefile.in (tree-ssanames.h): Add to tree-ssanames.o and GTFILES. > > > > > >See for example this build log: > > >http://toolchain.lug-owl.de/buildbot/showlog.php?id=11663&mode=view > > > > > >I suggest this patch, which fixes an alpha-linux build for me: > > I think you can remove the tree-flow.h include and you need to update the > > dependencies in gcc/Makefile.in. > of course... :-P > > I see rs6000.c and i386.c both use tree-flow.h as well. I will > have to see what they are actually pulling in from that file so I > don't break those eventually too. The build robot[1] found a similar problem: g++ -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -I. -I. -I../../../../gcc/gcc -I../../../../gcc/gcc/. -I../../../../gcc/gcc/../include -I../../../../gcc/gcc/../libcpp/include -I../../../../gcc/gcc/../libdecnumber -I../../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I../../../../gcc/gcc/../libbacktrace -o alpha.o -MT alpha.o -MMD -MP -MF ./.deps/alpha.TPo ../../../../gcc/gcc/config/alpha/alpha.c In file included from ../../../../gcc/gcc/config/alpha/alpha.c:53:0: ../../../../gcc/gcc/config/alpha/alpha.c: In function ‘bool alpha_stdarg_optimize_hook(stdarg_info*, const_gimple)’: ../../../../gcc/gcc/tree-ssanames.h:62:56: error: invalid use of incomplete type ‘struct gimple_df’ #define num_ssa_names (vec_safe_length (cfun->gimple_df->ssa_names)) ^ ../../../../gcc/gcc/config/alpha/alpha.c:5943:61: note: in expansion of macro ‘num_ssa_names’ || !bitmap_bit_p (si->va_list_vars, DECL_UID (base) + num_ssa_names)) ^ In file included from ../../../../gcc/gcc/expr.h:24:0, from ../../../../gcc/gcc/config/alpha/alpha.c:36: ../../../../gcc/gcc/function.h:164:8: error: forward declaration of ‘struct gimple_df’ struct gimple_df; ^ make[2]: *** [alpha.o] Error 1 r203314 is known-good (http://toolchain.lug-owl.de/buildbot/show_build_details.php?id=16934), r203320 is known-bad (http://toolchain.lug-owl.de/buildbot/show_build_details.php?id=16956). So this is probably uncovered by one of the three large patches in betwee, which all fight heder file dependencies :) MfG, JBG [1] http://toolchain.lug-owl.de/buildbot/ http://toolchain.lug-owl.de/buildbot/timeline.php
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index a8fb929..3759205 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -50,6 +50,7 @@ along with GCC; see the file COPYING3. If not see #include "splay-tree.h" #include "gimple.h" #include "tree-flow.h" +#include "tree-ssa.h" #include "tree-stdarg.h" #include "tm-constrs.h" #include "df.h"