diff options
author | Trevor Saunders <tsaunders@mozilla.com> | 2015-04-18 18:13:18 +0000 |
---|---|---|
committer | Trevor Saunders <tbsaunde@gcc.gnu.org> | 2015-04-18 18:13:18 +0000 |
commit | 67f58944a75eaf9c193dc704f8128bfaaf6c3c3a (patch) | |
tree | 371c9ad12b94f56f0112c4fda736391f1925a309 /gcc/hard-reg-set.h | |
parent | b9923c3538dbd24c38a86ff49c7e3895c6c22873 (diff) | |
download | gcc-67f58944a75eaf9c193dc704f8128bfaaf6c3c3a.zip gcc-67f58944a75eaf9c193dc704f8128bfaaf6c3c3a.tar.gz gcc-67f58944a75eaf9c193dc704f8128bfaaf6c3c3a.tar.bz2 |
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.
From-SVN: r222213
Diffstat (limited to 'gcc/hard-reg-set.h')
-rw-r--r-- | gcc/hard-reg-set.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/hard-reg-set.h b/gcc/hard-reg-set.h index d1a6e51..89971d7 100644 --- a/gcc/hard-reg-set.h +++ b/gcc/hard-reg-set.h @@ -615,7 +615,17 @@ hard_reg_set_iter_next (hard_reg_set_iterator *iter, unsigned *regno) extern char global_regs[FIRST_PSEUDO_REGISTER]; -struct simplifiable_subregs_hasher; +struct simplifiable_subreg; +struct subreg_shape; + +struct simplifiable_subregs_hasher : typed_noop_remove <simplifiable_subreg> +{ + typedef simplifiable_subreg *value_type; + typedef const subreg_shape *compare_type; + + static inline hashval_t hash (const simplifiable_subreg *); + static inline bool equal (const simplifiable_subreg *, const subreg_shape *); +}; struct target_hard_regs { void finalize (); |