aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2009-03-30 18:49:52 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2009-03-30 16:49:52 +0000
commit4c936d4f4cf6a3ba7fc404a990f1975182e9fdda (patch)
treee84b07e7d9650ea3ae2ccfbcb7b1239465fbe41f /gcc
parentf4d9f129fe9884da7b5f92f919a22157f729c577 (diff)
downloadgcc-4c936d4f4cf6a3ba7fc404a990f1975182e9fdda.zip
gcc-4c936d4f4cf6a3ba7fc404a990f1975182e9fdda.tar.gz
gcc-4c936d4f4cf6a3ba7fc404a990f1975182e9fdda.tar.bz2
* except.c (label_to_region_map): Fix thinko.
From-SVN: r145304
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/except.c7
2 files changed, 6 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d1de48d..ae107c4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2009-03-30 Jan Hubicka <jh@suse.cz>
+
+ * except.c (label_to_region_map): Fix thinko.
+
2009-03-30 Steve Ellcey <sje@cup.hp.com>
PR middle-end/38237
diff --git a/gcc/except.c b/gcc/except.c
index 41f799a..c654aba 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -798,12 +798,9 @@ label_to_region_map (void)
for (i = cfun->eh->last_region_number; i > 0; --i)
{
struct eh_region *r = VEC_index (eh_region, cfun->eh->region_array, i);
- if (r && r->tree_label && LABEL_DECL_UID (r->tree_label) >= 0)
+ if (r && r->region_number == i
+ && r->tree_label && LABEL_DECL_UID (r->tree_label) >= 0)
{
- if ((unsigned) LABEL_DECL_UID (r->tree_label) >
- VEC_length (int, label_to_region))
- VEC_safe_grow_cleared (int, heap, label_to_region,
- LABEL_DECL_UID (r->tree_label));
VEC_replace (int, label_to_region, LABEL_DECL_UID (r->tree_label),
i);
}