On Fri, Oct 24, 2014 at 08:15:36AM +0100, Phil Muldoon wrote:
> On 10/10/14 22:58, Jeff Law wrote:
> > On 10/09/14 03:07, Phil Muldoon wrote:
> >>
> >> Sorry for taking so long to reply.  We've talked, on irc and elsewhere
> >> a little (some at the Cauldron too!).  I think the consensus is as
> >> nobody has explicitly mentioned anything, this is OK to go in?
> > Yes, please go ahead and check it in.  You'll be the first contact point if 
> > something goes wrong :-)
> >
> > Given the length of time since the original post and now, can you please do 
> > sanity bootstrap to make sure nothing's bitrotted before you commit?
> 
> I rebased the patch on top of GCC head (from the git repository),
> updated the ChangeLogs, etc from two days ago (it takes two days to do
> a full rebase, pristine and patched bootstrap and testrun on my poor
> laptop ;).
> 
> I've built both pristine and patched branches with bootstrap enabled.
> I ran both testsuites and used contrib/compare_tests to make sure
> everything was as it should be.  compare_tests reports everything as
> fine.  One minor change I found, was due to some ongoing work on
> hash_tables.  It seems to parameterless constructor call for a new
> hash table has been removed.  This was trivially fixed with the patch
> attached.  Even though (to me) it is obvious, what do you think?

> --- a/libcc1/plugin.cc
> +++ b/libcc1/plugin.cc
> @@ -220,13 +220,10 @@ static plugin_context *current_context;
>  
>  plugin_context::plugin_context (int fd)
>    : cc1_plugin::connection (fd),
> -    address_map (),
> -    preserved (),
> -    file_names ()
> +    address_map (30),
> +    preserved (30),
> +    file_names (30)
>  {
> -  address_map.create (20);
> -  preserved.create (20);
> -  file_names.create (20);

This is http://gcc.gnu.org/r211936 , i.e.
https://gcc.gnu.org/ml/gcc-patches/2014-06/msg01598.html
so the changes are fine.

>  }
>  
>  void
> @@ -236,8 +233,8 @@ plugin_context::mark ()
>         it != address_map.end ();
>         ++it)
>      {
> -      ggc_mark ((*it).decl);
> -      ggc_mark ((*it).address);
> +      ggc_mark ((*it)->decl);
> +      ggc_mark ((*it)->address);
>      }

And this is http://gcc.gnu.org/r211937 , i.e.
https://gcc.gnu.org/ml/gcc-patches/2014-06/msg01599.html
in action. 

>    for (hash_table< pointer_hash<tree_node> >::iterator it = preserved.begin 
> ();

So, if these are the only non-obvious changes you needed, please go ahead
and commit.

        Jakub

Reply via email to