diff options
author | tbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-04-18 18:13:18 +0000 |
---|---|---|
committer | tbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-04-18 18:13:18 +0000 |
commit | 9969c043bba2c5ac03c9227ef7d476a2b8dd9c84 (patch) | |
tree | 371c9ad12b94f56f0112c4fda736391f1925a309 /gcc/except.c | |
parent | 64df2aeef45bf2234bfe8e6e9da264d426764fdd (diff) | |
download | gcc-9969c043bba2c5ac03c9227ef7d476a2b8dd9c84.tar.gz |
remove need for store_values_directly
This switches all hash_table users to use the layout that stores
elements of type value_type in the hash table instead of the one storing
value_type *. Since it becomes unused support for the value_type *
layout is removed.
gcc/
* hash-table.h: Remove version of hash_table that stored value_type *.
* asan.c, attribs.c, bitmap.c, cfg.c, cgraph.h, config/arm/arm.c,
config/i386/winnt.c, config/ia64/ia64.c, config/mips/mips.c,
config/sol2.c, coverage.c, cselib.c, dse.c, dwarf2cfi.c,
dwarf2out.c, except.c, gcse.c, genmatch.c, ggc-common.c,
gimple-ssa-strength-reduction.c, gimplify.c, haifa-sched.c,
hard-reg-set.h, hash-map.h, hash-set.h, ipa-devirt.c, ipa-icf.h,
ipa-profile.c, ira-color.c, ira-costs.c, loop-invariant.c,
loop-iv.c, loop-unroll.c, lto-streamer.h, plugin.c, postreload-gcse.c,
reginfo.c, statistics.c, store-motion.c, trans-mem.c, tree-cfg.c,
tree-eh.c, tree-hasher.h, tree-into-ssa.c, tree-parloops.c,
tree-sra.c, tree-ssa-coalesce.c, tree-ssa-dom.c, tree-ssa-live.c,
tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-phiopt.c,
tree-ssa-pre.c, tree-ssa-reassoc.c, tree-ssa-sccvn.c,
tree-ssa-structalias.c, tree-ssa-tail-merge.c,
tree-ssa-threadupdate.c, tree-vectorizer.c, tree-vectorizer.h,
valtrack.h, var-tracking.c, vtable-verify.c, vtable-verify.h: Adjust.
libcc1/
* plugin.cc: Adjust for hash_table changes.
gcc/java/
* jcf-io.c: Adjust for hash_table changes.
gcc/lto/
* lto.c: Adjust for hash_table changes.
gcc/objc/
* objc-act.c: Adjust for hash_table changes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222213 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/except.c')
-rw-r--r-- | gcc/except.c | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/gcc/except.c b/gcc/except.c index 833ec21f329..f85e55abab7 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -227,20 +227,21 @@ struct action_record struct action_record_hasher : typed_free_remove <action_record> { - typedef action_record value_type; - typedef action_record compare_type; - static inline hashval_t hash (const value_type *); - static inline bool equal (const value_type *, const compare_type *); + typedef action_record *value_type; + typedef action_record *compare_type; + static inline hashval_t hash (const action_record *); + static inline bool equal (const action_record *, const action_record *); }; inline hashval_t -action_record_hasher::hash (const value_type *entry) +action_record_hasher::hash (const action_record *entry) { return entry->next * 1009 + entry->filter; } inline bool -action_record_hasher::equal (const value_type *entry, const compare_type *data) +action_record_hasher::equal (const action_record *entry, + const action_record *data) { return entry->filter == data->filter && entry->next == data->next; } @@ -742,23 +743,23 @@ struct ttypes_filter { struct ttypes_filter_hasher : typed_free_remove <ttypes_filter> { - typedef ttypes_filter value_type; - typedef tree_node compare_type; - static inline hashval_t hash (const value_type *); - static inline bool equal (const value_type *, const compare_type *); + typedef ttypes_filter *value_type; + typedef tree_node *compare_type; + static inline hashval_t hash (const ttypes_filter *); + static inline bool equal (const ttypes_filter *, const tree_node *); }; /* Compare ENTRY (a ttypes_filter entry in the hash table) with DATA (a tree) for a @TTypes type node we are thinking about adding. */ inline bool -ttypes_filter_hasher::equal (const value_type *entry, const compare_type *data) +ttypes_filter_hasher::equal (const ttypes_filter *entry, const tree_node *data) { return entry->t == data; } inline hashval_t -ttypes_filter_hasher::hash (const value_type *entry) +ttypes_filter_hasher::hash (const ttypes_filter *entry) { return TREE_HASH (entry->t); } @@ -770,10 +771,10 @@ typedef hash_table<ttypes_filter_hasher> ttypes_hash_type; struct ehspec_hasher : typed_free_remove <ttypes_filter> { - typedef ttypes_filter value_type; - typedef ttypes_filter compare_type; - static inline hashval_t hash (const value_type *); - static inline bool equal (const value_type *, const compare_type *); + typedef ttypes_filter *value_type; + typedef ttypes_filter *compare_type; + static inline hashval_t hash (const ttypes_filter *); + static inline bool equal (const ttypes_filter *, const ttypes_filter *); }; /* Compare ENTRY with DATA (both struct ttypes_filter) for a @TTypes @@ -782,7 +783,7 @@ struct ehspec_hasher : typed_free_remove <ttypes_filter> should put these in some canonical order. */ inline bool -ehspec_hasher::equal (const value_type *entry, const compare_type *data) +ehspec_hasher::equal (const ttypes_filter *entry, const ttypes_filter *data) { return type_list_equal (entry->t, data->t); } @@ -790,7 +791,7 @@ ehspec_hasher::equal (const value_type *entry, const compare_type *data) /* Hash function for exception specification lists. */ inline hashval_t -ehspec_hasher::hash (const value_type *entry) +ehspec_hasher::hash (const ttypes_filter *entry) { hashval_t h = 0; tree list; |