diff options
author | Diego Novillo <dnovillo@google.com> | 2012-11-20 16:21:30 -0500 |
---|---|---|
committer | Diego Novillo <dnovillo@gcc.gnu.org> | 2012-11-20 16:21:30 -0500 |
commit | 6e1aa84836e166fbfb4b53ac004d1d63e03d9f05 (patch) | |
tree | df5dd32febb0dc65ea6ce7f725aab90791a1dbc4 /gcc/tree-ssa-uninit.c | |
parent | b014e124e46edd418d02316ce4c65563d0568ad8 (diff) | |
download | gcc-6e1aa84836e166fbfb4b53ac004d1d63e03d9f05.zip gcc-6e1aa84836e166fbfb4b53ac004d1d63e03d9f05.tar.gz gcc-6e1aa84836e166fbfb4b53ac004d1d63e03d9f05.tar.bz2 |
Introduce vNULL to use as a nil initializer for vec<>.
This patch implements Jakub's idea of adding an empty struct with
a typecast operator that returns nil vectors. This is useful to
shorten all the initializers when declaring vec instances or passing
nil vectors as function arguments.
2012-11-20 Diego Novillo <dnovillo@google.com>
Jakub Jelinek <jakub@redhat.com>
ChangeLog
* vec.h (struct vnull): Declare.
(vNULL): Declare.
* vec.c (vNULL): Define.
* bb-reorder.c: Replace all vec<T, A>() initializers with vNULL.
* cfgexpand.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/i386/i386.c: Likewise.
* df-core.c: Likewise.
* dominance.c: Likewise.
* dwarf2out.c: Likewise.
* except.c: Likewise.
* function.c: Likewise.
* gcse.c: Likewise.
* genautomata.c: Likewise.
* graphds.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ira-build.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-symtab.c: Likewise.
* opts-global.c: Likewise.
* passes.c: Likewise.
* ree.c: Likewise.
* sched-deps.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* sel-sched.c: Likewise.
* stor-layout.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-eh.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-predcom.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* value-prof.c: Likewise.
* varasm.c: Likewise.
ada/ChangeLog
* gcc-interface/decl.c: Replace all vec<T,A>()
initializers with vNULL.
cp/ChangeLog
* name-lookup.c: Replace all vec<T, A>() initializers
with vNULL.
* semantics.c: Likewise.
fortran/ChangeLog
* trans-openmp.c: Replace all vec<T, A>() initializers
with vNULL.
lto/ChangeLog
* lto.c: Replace all vec<T, A>() initializers with vNULL.
objc/ChangeLog
* objc-act.c: Replace all vec<T, A>() initializers with vNULL.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r193677
Diffstat (limited to 'gcc/tree-ssa-uninit.c')
-rw-r--r-- | gcc/tree-ssa-uninit.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/tree-ssa-uninit.c b/gcc/tree-ssa-uninit.c index c3b8df8..cdfcd5a 100644 --- a/gcc/tree-ssa-uninit.c +++ b/gcc/tree-ssa-uninit.c @@ -424,7 +424,7 @@ find_predicates (vec<use_pred_info_t> **preds, { size_t num_chains = 0, i; vec<edge> *dep_chains = 0; - vec<edge> cur_chain = vec<edge>(); + vec<edge> cur_chain = vNULL; bool has_valid_pred = false; basic_block cd_root = 0; @@ -525,8 +525,8 @@ find_def_preds (vec<use_pred_info_t> **preds, { size_t num_chains = 0, i, n; vec<edge> *dep_chains = 0; - vec<edge> cur_chain = vec<edge>(); - vec<edge> def_edges = vec<edge>(); + vec<edge> cur_chain = vNULL; + vec<edge> def_edges = vNULL; bool has_valid_pred = false; basic_block phi_bb, cd_root = 0; struct pointer_set_t *visited_phis; @@ -1633,7 +1633,7 @@ normalize_preds (vec<use_pred_info_t> *preds, size_t *n) { size_t i, j, ll; vec<use_pred_info_t> pred_chain; - vec<use_pred_info_t> x = vec<use_pred_info_t>(); + vec<use_pred_info_t> x = vNULL; use_pred_info_t xj = 0, nxj = 0; if (*n < 2) @@ -1954,7 +1954,7 @@ execute_late_warn_uninitialized (void) { basic_block bb; gimple_stmt_iterator gsi; - vec<gimple> worklist = vec<gimple>(); + vec<gimple> worklist = vNULL; struct pointer_set_t *added_to_worklist; calculate_dominance_info (CDI_DOMINATORS); |