aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2012-08-21 21:07:01 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2012-08-21 14:07:01 -0700
commit1aee89910ada0e1d9ab68263e441341038bf9cad (patch)
treeaa9445eb256c5fbc7539a97e0e56b29c55e1d1f3
parent61917ebc9631968e7a7b65bb475221f812237df1 (diff)
downloadgcc-1aee89910ada0e1d9ab68263e441341038bf9cad.zip
gcc-1aee89910ada0e1d9ab68263e441341038bf9cad.tar.gz
gcc-1aee89910ada0e1d9ab68263e441341038bf9cad.tar.bz2
Restore df_free_collection_rec call in df_bb_verify
PR middle-end/54332 * df-scan.c (df_bb_verify): Restore df_free_collection_rec call inside the insn traversal loop. * vec.h (vec_reserve): Remove the stack allocation check. From-SVN: r190576
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/df-scan.c1
-rw-r--r--gcc/vec.h18
3 files changed, 12 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a271fe5..7400fe8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2012-08-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/54332
+ * df-scan.c (df_bb_verify): Restore df_free_collection_rec call
+ inside the insn traversal loop.
+
+ * vec.h (vec_reserve): Remove the stack allocation check.
+
2012-08-21 Marc Glisse <marc.glisse@inria.fr>
* fold-const.c (fold_ternary_loc): Detect identity permutations.
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 55492fa..df90365 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -4448,6 +4448,7 @@ df_bb_verify (basic_block bb)
if (!INSN_P (insn))
continue;
df_insn_refs_verify (&collection_rec, bb, insn, true);
+ df_free_collection_rec (&collection_rec);
}
/* Do the artificial defs and uses. */
diff --git a/gcc/vec.h b/gcc/vec.h
index 5fdb859..1922616 100644
--- a/gcc/vec.h
+++ b/gcc/vec.h
@@ -1099,21 +1099,9 @@ vec_reserve (vec_t<T> *vec_, int reserve MEM_STAT_DECL)
sizeof (T), false
PASS_MEM_STAT);
else
- {
- /* Only allow stack vectors when re-growing them. The initial
- allocation of stack vectors must be done with the
- VEC_stack_alloc macro, because it uses alloca() for the
- allocation. */
- if (vec_ == NULL)
- {
- fprintf (stderr, "Stack vectors must be initially allocated "
- "with VEC_stack_alloc.\n");
- gcc_unreachable ();
- }
- return (vec_t<T> *) vec_stack_o_reserve (vec_, reserve,
- offsetof (vec_t<T>, vec),
- sizeof (T) PASS_MEM_STAT);
- }
+ return (vec_t<T> *) vec_stack_o_reserve (vec_, reserve,
+ offsetof (vec_t<T>, vec),
+ sizeof (T) PASS_MEM_STAT);
}