summaryrefslogtreecommitdiff
path: root/gcc/tree-stdarg.c
diff options
context:
space:
mode:
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>2015-02-08 09:22:28 -0500
committerTrevor Saunders <tbsaunde+gcc@tbsaunde.org>2015-04-09 19:57:14 -0400
commit4f8953b6684459714538e47696797e3b02dfe428 (patch)
treeebb4c8dbf1bdaa10be85e4042cd782b936f52a62 /gcc/tree-stdarg.c
parent4aed2663603411f5bb768f5c84d1a872a5bb281c (diff)
downloadgcc-tbsaunde/bitvec.tar.gz
add bitvec and use sometbsaunde/bitvec
gcc/ 2015-04-08 Trevor Saunders <tbsaunde@tbsaunde.org> * bitvec.h: New file. * bitvec.c: New file. * Makefile.in (OBJS-libcommon): Add bitvec.o. * alias.c, cfganal.c, cfgbuild.c, cfgbuild.h, cfgexpand.c, cfghooks.c, cfghooks.h, cfgloop.c, cfgloopmanip.c, cfgloopmanip.h, cfgrtl.c, config/spu/spu.c, cp/vtable-class-hierarchy.c, cse.c, dce.c, df-core.c, dse.c, except.c, except.h, function.c, graph.c, graphite-sese-to-poly.c, ira-lives.c, loop-unroll.c, lower-subreg.c, lra-lives.c, lra.c, modulo-sched.c, recog.c, regcprop.c, reload1.c, sched-int.h, sched-rgn.c, sel-sched-ir.c, sel-sched.c, store-motion.c, tree-eh.c, tree-into-ssa.c, tree-outof-ssa.c, tree-ssa-dce.c, tree-ssa-live.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c, tree-ssa-loop-manip.c, tree-ssa-loop-manip.h, tree-ssa-pre.c, tree-ssa-propagate.c, tree-ssa-reassoc.c, tree-ssa-structalias.c, tree-stdarg.c, tree-vect-slp.c, tree-vrp.c, var-tracking.c: Use bitvec instead of sbitmap.
Diffstat (limited to 'gcc/tree-stdarg.c')
-rw-r--r--gcc/tree-stdarg.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/gcc/tree-stdarg.c b/gcc/tree-stdarg.c
index 0c70790f3eb..327afa22704 100644
--- a/gcc/tree-stdarg.c
+++ b/gcc/tree-stdarg.c
@@ -57,6 +57,7 @@ along with GCC; see the file COPYING3. If not see
#include "stringpool.h"
#include "tree-ssanames.h"
#include "sbitmap.h"
+#include "bitvec.h"
#include "tree-pass.h"
#include "tree-stdarg.h"
@@ -78,7 +79,6 @@ reachable_at_most_once (basic_block va_arg_bb, basic_block va_start_bb)
vec<edge> stack = vNULL;
edge e;
edge_iterator ei;
- sbitmap visited;
bool ret;
if (va_arg_bb == va_start_bb)
@@ -87,8 +87,7 @@ reachable_at_most_once (basic_block va_arg_bb, basic_block va_start_bb)
if (! dominated_by_p (CDI_DOMINATORS, va_arg_bb, va_start_bb))
return false;
- visited = sbitmap_alloc (last_basic_block_for_fn (cfun));
- bitmap_clear (visited);
+ stack_bitvec visited (last_basic_block_for_fn (cfun));
ret = true;
FOR_EACH_EDGE (e, ei, va_arg_bb->preds)
@@ -119,16 +118,15 @@ reachable_at_most_once (basic_block va_arg_bb, basic_block va_start_bb)
gcc_assert (src != ENTRY_BLOCK_PTR_FOR_FN (cfun));
- if (! bitmap_bit_p (visited, src->index))
+ if (! visited[src->index])
{
- bitmap_set_bit (visited, src->index);
+ visited[src->index] = true;
FOR_EACH_EDGE (e, ei, src->preds)
stack.safe_push (e);
}
}
stack.release ();
- sbitmap_free (visited);
return ret;
}