From: Trevor Saunders
Hi,
In this pr we have a section attribute being applied to something in a comdat
group. Since its ok for things to be in a comdat group and have an implicit
section it seems it should also be fine to have a section from the attribute.
bootstrapped + regtested x86_64-unkn
From: Trevor Saunders
Hi,
the idea in the pr of providing a warning that tells people where they can add
override seems reasonable to me.
bootstrapped + regtested x86_64-unknown--linux-gnu (new test passes), ok?
Trev
c-family/
* c.opt (Wsuggest-override): New option.
cp/
*
From: Trevor Saunders
Hi,
I'll claim this is kind of a bug fix in so much as excessive gc allocation and
use of tree_list is a bug.
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
cp/
* class.c (warn_hidden): Use auto_vec instead of tree_list to
hold base_fndecls
From: Trevor Saunders
Hi,
this is a new warning to find places where virtual functions are over ridden,
but not marked override.
included test passes, I expect comments so regtest is pending, and ChangeLog is
omitted.
Trev
---
gcc/c-family/c.opt| 5 +
gcc/c
From: Trevor Saunders
Hi,
The one interesting part of this is what we do about plugins. As you can tell
from the diff removing support for these gengtype features makes things much
simpler, and I think the only way to do that is to remove the plugin hook for
adding caches. Plugins should be fi
From: Trevor Saunders
Hi,
$subject
Trev
gcc/
* config/nvptx/nvptx.c: Convert htabs to hash_table.
---
gcc/config/nvptx/nvptx.c | 56
1 file changed, 28 insertions(+), 28 deletions(-)
diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/
From: Trevor Saunders
Hi,
The memory allocated for the hash table is never rooted by anything, so keeping
it in gc memory only works if it never needs to survive a gc.
Trev
lto/
* lto.c (read_cgraph_and_symbols): allocate gimple_canonical_types
htab with malloc instead of ggc.
From: Trevor Saunders
HI,
unfortunately this got finished up later than I hoped, but I don't see a reason
to keep it private till next stage 1. The nvptx port snuck in a few more uses
of if_marked, and I forgot about the silly use of ggc in lto.c, which are taken
care of by patches 1/3 and 2/3.
From: Trevor Saunders
Hi,
the interesting symbol in the test case for pr61324 is __GLOBAL__sub_I_s. It
refers to nothing, and is called by nothing, however it is kept (I believe
because of -fkeep-inline-functions). That means ipa_comdats never tries to put
it in a comdat, and so it never ends
From: Trevor Saunders
Hi,
bug was already fixed, so just add the test case.
tested this only passes with r217909 where it is fixed, ok?
Trev
diff --git a/gcc/testsuite/gcc.dg/pr63856.c b/gcc/testsuite/gcc.dg/pr63856.c
new file mode 100644
index 000..8fb65c6
--- /dev/null
+++ b/gcc/testsu
From: Trevor Saunders
Hi,
$subject, logically this really is a hash map, but it turns out that doesn't
work. There's a bug in the way elements are inserted into the table at
trans-mem.c:3093 which means nothing is ever actually inserted into the table.
I tried converting this to hash_map,
From: Trevor Saunders
Hi,
$subject
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
gcc/
* ipa-utils.c, lto-section-in.c, lto-streamer.h,
tree-scalar-evolution.c: Replace htab with hash_table.
lto/
* lto.c: Replace htab with hash_table.
diff --git a/gcc
From: Trevor Saunders
hi,
The problem here is that hash_table used to zero element storage, but if the
empty element is not 0 then all elements appear to be in use.
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
gcc/ChangeLog:
2014-11-13 Trevor Saunders
* hash-table
From: Trevor Saunders
Hi,
The only user of this is splay_tree. We only have a couple splay trees in ggc
memory, and it wasn't clear to me any of them were tree based instead of hash
based for performance reasons, so I chose to just convert them to hash_map
rather than writing a templated splay
From: Trevor Saunders
Hi,
gengtype fails to create valid user marking functions for this type, which is
fixed by using vec here (which seems cleaner anyway).
bootstrapped + regtested powerpc64-linux (gcc 110 since gcc20 died) ok?
Trev
gcc/ChangeLog:
2014-11-13 Trevor Saunders
*
From: Trevor Saunders
Hi,
$subject.
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
ada/
* gcc-interface/decl.c, gcc-interface/utils.c: replace htab with
hash_table.
cp/
* cp-objcp-common.c: Use hash_table instead of htab.
gcc/
* config/i386/i
From: Trevor Saunders
Hi,
This adds a gty cache attribute that calls user code after marking and before
sweeping allowing user code to mark more objects or clear caches as
appropriate. User code for hash_table is set up to work similarly to if_marked
for htab.
bootstrapped + regtested x86_64-
From: Trevor Saunders
Hi,
do $subject, and cleanup for always 64 bit hwi.
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
gcc/ChangeLog:
2014-10-24 Trevor Saunders
* ipa-inline.c (edge_badness): Adjust.
(inline_small_functions): Likewise.
* predict.c
From: Trevor Saunders
Hi,
If vec.h is included before ggc.h it forward declares ggc_realloc with
defaulted arguments. This means ggc.h can not be included later because
it would lead to a second declaration of ggc_realloc with defaulted
arguments. In generator programs vec.h can not include gg
From: tbsaunde
Hi,
should be obvious changing things within an assert is a bad idea, but somehow I
forgot :(
tested x86_64-unknown-linux-gnu, and commited as obvious.
Trev
gcc/ChangeLog:
2014-09-12 Trevor Saunders
* hash-table.h (gt_pch_nx): Don't call gt_pch_note_object within
From: Trevor Saunders
Hi,
This changes all callers of INSN_DELETED_P to use one of insn->deleted ()
insn->set_deleted () or insn->set_undeleted () depending on what they're doing
(set_deleted / set_undeleted seem somewhat clearer to me than = 0 / 1).
bootstrapped + regtested on x86_64-unknown
From: Trevor Saunders
Hi,
pretty trivial, but not quiet just changing the types of variables.
bootstrapped + regtested on x86_64-unknown-linux-gnu, and run through
config-list.mk with a couple other patches. ok?
Trev
gcc/ChangeLog:
2014-09-11 Trevor Saunders
* config/mn10300/mn103
From: Trevor Saunders
Hi,
Same idea as the last patch.
also bootstrapped and regtested on x86_64-unknown-linux-gnu with config-list.mk
ongoing ok?
Trev
gcc/
* cfgrtl.c, combine.c, config/arc/arc.c, config/mcore/mcore.c,
config/rs6000/rs6000.c, config/sh/sh.c, cprop.c, dwarf2o
From: Trevor Saunders
Hi,
Doing this means we get to remove a fair chunk of runtime checking.
bootstrapped + regtested on x86_64-unknown-linux-gnu with no regressions.
config-list.mk with this and the next patch is ongoing. ok?
Trev
gcc/
* config/i386/i386.c, config/i386/i386.md, co
From: Trevor Saunders
just changing argument type so pre approved.
bootstrap + regtested on x86_64-linux-gnu.
Trev
gcc/ChangeLog:
2014-09-04 Trevor Saunders
* valtrack.c (dead_debug_insert_temp): Take an rtx_insn * instead of
an rtx.
* valtrack.h: Adjust.
---
gcc/C
From: Trevor Saunders
just variable type changes so pre approved committing to trunk.
bootstrap + regtest on x86_64-linux-gnu, and config-list.mk
Trev
gcc/ChangeLog:
2014-09-04 Trevor Saunders
* emit-rtl.c (emit_insn_before_noloc): Take an rtx_insn * instead of
an rtx.
From: Trevor Saunders
Hi,
subject says it all.
bootstrapped + regtested on x86_64-unknown-linux-gnu, and survived
config-list.mk with the next patch. This is pretty clearly within the pre
approval so will commit it later today unless someone complains.
Trev
gcc/ChangeLog:
2014-09-04 Trevor
From: Trevor Saunders
Hi,
subject says it all.
bootstrapped + regtested on x86_64-unknown-linux-gnu, and survived
config-list.mk with the next patch. I think Jeff will be happy to see the
as_a go away and so won't mind me taking this as pre approved also.
Trev
gcc/ChangeLog:
2014-09-04 Tre
From: Trevor Saunders
Hi,
$subject again
bootstrapped + regtested on x86_64-unknown-linux-gnu, and run through
config-list.mk. Will commit it shortly as preapproved by Jeff in
http://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html
Trev
gcc/ChangeLog:
* cfgexpand.c (label_rtx_for_bb
From: Trevor Saunders
Hi,
$subject
bootstrapped + regtested on x86_64-unknown-linux-gnu, and run through
config-list.mk. Will commit it shortly as preapproved by Jeff in
http://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html
Trev
gcc/
* asan.c, cfgexpand.c, config/alpha/alpha.md, c
From: Trevor Saunders
Hi,
There are still some issues to make this work really nicely, but this part is
probably good enough its worth reviewing.
For one thing you can't use ggc hash_map or set in front ends with some types
or gengtype will decide to put the overloads of the marking routines it
From: Trevor Saunders
hi,
just what it says on the tin.
bootstrapped + regtested on x86_64-unknown-linux-gnu, also bootstrapped on
i686-unknown-linux-gnu, ran config-list.mk, ok? gcc/
Trev
gcc/
* Makefile.in: Remove references to pointer-set.c and pointer-set.h.
* alias.c, c
From: Trevor Saunders
hi,
just what it says on the tin.
bootstrapped + regtested on x86_64-unknown-linux-gnu, also bootstrapped on
i686-unknown-linux-gnu, ran config-list.mk, ok? gcc/
Trev
* hash-map.h (default_hashmap_traits): Adjust overloads of hash
function to not conflic
From: Trevor Saunders
hi,
The change to get the entry for the old edge before inserting the new
one was incorrect because if inserting the new one resized the table
then the pointer to the entry for the old one would become invalid.
gcc/
* tree-ssa.c (redirect_edge_var_map_dup): insert
From: Trevor Saunders
Hi,
It used to be that edge_var_maps held pointers to embedded vectors, but
now it holds vectors. This means that now instead of copying the
address of the embedded vector from the table we keep a pointer into the
table. However that's incorrect because we may expand the
From: Trevor Saunders
Hi,
This patch replaces a bunch of usage of pointer_map with hash_map. It also
adds an overload to hash_map::traverse that allows modifying the value, and a
remove method.
bootstrapped + regtested on x86_64-unknown-linux-gnu, ok?
Trev
c-family/
* cilk.c: Use ha
From: Trevor Saunders
Hi,
this adds a hash_set wrapper around hash_table, and then replaces usage of
pointer_set with it.
bootstrapped +regtested on x86_64-unknown-linux-gnu, ok?
Trev
ada/
* gcc-interface/trans.c: Use hash_set instead of pointer_set.
c-family/
* c-gimplify
From: Trevor Saunders
Hi,
It turns out r212968 broke i686-elf because dispite appearances to the
contrary ix86_return_in_memory () doesn't actually always use the fntype
argument (sometimes the macro takes it and ignores it). So revert the relevent
hunk from that commit.
tested that x86_64-un
From: Trevor Saunders
Hi,
just $subject
bootstrapped + regtested on x86_64-unknown-linux-gnu, ok?
Trev
gcc/
* graphite-htab.h: Use hash_map instead of hash_table.
* graphite-clast-to-gimple.c: Adjust.
* passes.c: Use hash_map instead of hash_table.
* sese.c: Li
From: Trevor Saunders
Hi,
I'll admitt I'm not actually sure if the spec requires this, or if gcc 4.5 was
too picky, but this fixes the build with gcc 4.5, and it doesn't really hurt
anything.
bootstrapped + regtested on x86_64-unknown-linux-gnu with no regressions, ok?
Trev
gcc/
PR b
From: Trevor Saunders
Hi,
So apparently its not entirely obvious to everyone that removing the names of
unused arguments is the best way of dealing with warnings about unused
arguments in places like hooks where the argument is required for some reason.
Apparently this is somewhat less contraver
From: Trevor Saunders
Hi,
While fixing up the hash_table patch's bustedness here I noticed the code
doesn't make any sense. What it inserts into the hash table will never match
what we try and look up in it. If you want to use hash_table or htab as a map
you need to deal with the keys yourself
From: tbsaunde
Hi,
Actually we can just store const tre_node * in the hash table, and actually
remove a const cast.
bootstrapped with --enable-checking=fold on top of my original series on
x86_64-unknown-linux-gnu, and aprovied by richi on IRC, commited.
Trev
gcc/
PR bootstrap/61598
From: Trevor Saunders
Hi,
Basically the same as the mingw issue, fixed similarly.
Trev
PR bootstrap/61598
* fold-const.c (fold_checksum_tree): fix const qualification of
argument passed to hash_table::find_slot with a const_cast.
diff --git a/gcc/ChangeLog b/gcc/ChangeL
From: Trevor Saunders
Hi,
this patch allows you to define the type the hash table stores as elements
instead of the type elements point at by having your hash descriptor define the
type store_values_directly. It turns out trying to implement both cases with
the same code is really confusing, so
From: Trevor Saunders
Hi,
This patch adds a hash_map class so we can consolidate the boiler plate around
using hash_table as a map, it also allows us to get rid of pointer_map which I
do in this patch by converting its users to hash_map.
bootstrapped + regtested without regression on x86_64-unk
From: Trevor Saunders
Same as patch 6 in the original series.
I forget if this is ok, so please tell me, and yes it was bootstrapped +
regtested on x86_64-unknown-linux-gnu
Trev
gcc/ChangeLog:
* target-globals.c (target_globals::~target_globals): new destructor.
(target_globa
From: Trevor Saunders
This implements finalizers by keeping a list of registered finalizers
and after every mark but before sweeping check to see if any of them are
for unmarked blocks.
This uses the two vector and forward iteration approach I think richi agreed to.
bootstrapped + regtested on
From: Trevor Saunders
Same as patch 4 in the original sequence, I assume its still ok ;)
gcc/ChangeLog:
*ggc.h (ggc_alloc_cleared_simd_clone_stat): Remove function.
---
gcc/ggc.h | 7 ---
1 file changed, 7 deletions(-)
diff --git a/gcc/ggc.h b/gcc/ggc.h
index 2c567de..50fb199 1006
From: Trevor Saunders
Hi,
basically this patch is unchanged from the last time I sent this series, except
I reordered the includes in rtl.c to have ggc.h come before vec.h because vec.h
declares some functions from ggc.h if building a binary to run on the build
machine. The problem is if the fu
From: Trevor Saunders
Hi,
This implements finalizers by keeping a list of registered finalizers
and after every mark but before sweeping check to see if any of them are
for unmarked blocks.
bootstrapped + regtested on x86_64-unknown-linux-gnu, ok?
Trev
gcc/ChangeLog:
* ggc-common.c (
From: Trevor Saunders
Hi,
add a user of gc finalizers.
bootstrapped + regtested on x86_64-unknown-linux-gnu, ok?
Trev
gcc/ChangeLog:
* target-globals.c (target_globals::~target_globals): new destructor.
(target_globals_extra): Move out of save_target_globals.
(save_ta
From: Trevor Saunders
Hi,
the template allocation functions won't work with things that are
actually variably sized, so its simpler to stop relying on gengtype for them
first. However it turns out most of the usage of variably sized things in
gengtype is to deal with gengtype badness in
From: Trevor Saunders
Hi,
its unused so rm it.
bootstrapped + regtested on x86_64-unknown-linux-gnu ok?
Trev
gcc/ChangeLog:
*ggc.h (ggc_alloc_cleared_simd_clone_stat): Remove function.
---
gcc/ggc.h | 7 ---
1 file changed, 7 deletions(-)
diff --git a/gcc/ggc.h b/gcc/ggc.h
inde
From: Trevor Saunders
Hi,
C++ default args allow us to name the function foo instead of foo_stat with a
wrapper macro foo.
bootstrapped + regtested x86_64-unknown-linux-gnu, ok?
Trev
gcc/ChangeLog:
2014-04-23 tbsaunde
* dwarf2out.c (tree_add_const_value_attribute): Call
g
Hi,
First we clean up the allocation functions for gc memory by removing macros
CXX_MEM_STAT_INFo makes useless, and using templates instead of autogenerating
code. Then we can add support for finalizers and automatically install
finalizers for types that have non trivial destructors.
Trev
GI
From: Trevor Saunders
Hi,
I'd like to be able to suggest a git prepare-committ-msg hook, that uses this
at some point to populate the commit message at some point. This doesn't do
that, but its a step in that direction, what would remain is just writing a
shell script to pipe git diff to mklog
From: Trevor Saunders
Hi,
finger gives the wrong data on my machines, and while I could fix it it seems
nicer to use what's configured for the git repo we're in if any, that way you
can use different defaults from the rest of the machine.
Trev
contrib/ChangeLog:
2014-04-28 Trevor Saunders
Hi,
These patches make it a little nicer to use mklog, but there not particularly
pretty.
Trev
From: Trevor Saunders
hi,
its a useful warning, and helps catch bugs in the next two patches.
bootstrap + regtest passed on x86_64-unknown-linux-gnu, ok?
Trev
2014-03-19 Trevor Saunders
* configure.ac: Check for -Woverloaded-virtual and enable it if found.
* configure: Reg
From: Trevor Saunders
Hi,
simplification allowed by previous patch.
bootstrap + regtest passed on x86_64-unknown-linux-gnu, ok?
Trev
2014-03-19 Trevor Saunders
* pass_manager.h (pass_manager::register_dump_files_1): Remove
declaration.
* passes.c (pass_manager::register_d
From: Trevor Saunders
Hi,
just removing some dead code.
bootstrapped + regtested against r209414 on x86_64-unknown-linux-gnu, ok?
Trev
2014-03-19 Trevor Saunders
* pass_manager.h (pass_manager::register_dump_files_1): Adjust.
* passes.c (pass_manager::register_dump_files_1
From: Trevor Saunders
Hi,
this patch adds and starts to use a class auto_bitmap, which is a very thin
wrapper around bitmap. Its advantage is that it takes care of delocation
automatically. So you can do things like
int
f ()
{
auto_bitmap x;
// do stuff with x
}
Another advantage of this
From: Trevor Saunders
Hi,
This is the result of seeing what it would take to get rid of the has_gate and
has_execute flags on pass_data. It turns out not much, but I wanted
confirmation this part is ok before I go deal with all the places that
initialize the fields.
I bootstrapped this part o
From: tbsaunde
diff --git a/ChangeLog b/ChangeLog
index e925959..8c24d35 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-01 Trevor Saunders
+
+* MAINTAINERS (Write After Approval): Add myself.
+
2013-10-30 Jason Merrill
* Makefile.tpl (STAGE1_CONFIGURE_FLAGS): Pas
From: Trevor Saunders
Hi,
This patch is pretty dull, it just replaces a bunch of things of the form
vec x;
x.create (N); // N is a constant
blah blah
x.release ();
by
stack_vec x;
blah blah
Of course its even nicer than that in some of the cases with many early returns.
bootstrapped and same t
From: Trevor Saunders
Hi,
This makes the implementation of stack vectors simpler and easier to use. This
works by
making the size of the on stack
From: Trevor Saunders
bootstrapped on x86_64-unknown-linux-gnu with same test results as unpatched
r202185 ok?
* compare-elim.c (find_comparisons_in_bb): adjust
* domwalk.c (init_walk_dominator_tree): Convert to dom_walk_data constructor.
(fini_walk_dominator_tree): Convert to dom_walk_data
68 matches
Mail list logo