diff options
author | Trevor Saunders <tsaunders@mozilla.com> | 2015-02-19 01:44:42 +0000 |
---|---|---|
committer | Trevor Saunders <tbsaunde@gcc.gnu.org> | 2015-02-19 01:44:42 +0000 |
commit | 1216ea72ef53ea28dfd0ec9a7cfacd8725476ec6 (patch) | |
tree | 739322f85a253d19039bbaaa8dfde298b605c5cd | |
parent | 1a1d749faa73907c0a41fd970bc6bef013b87b90 (diff) | |
download | gcc-1216ea72ef53ea28dfd0ec9a7cfacd8725476ec6.zip gcc-1216ea72ef53ea28dfd0ec9a7cfacd8725476ec6.tar.gz gcc-1216ea72ef53ea28dfd0ec9a7cfacd8725476ec6.tar.bz2 |
sem_function::bb_dict_test should take a vec<int> *
bb_dict_test () ment to operate on the callers vector, not a copy of it.
gcc/ChangeLog:
2015-02-18 Trevor Saunders <tsaunders@mozilla.com>
* ipa-icf.c (sem_function::equals_private): Adjust.
(sem_function::bb_dict_test): Take a vec<int> * instead of
auto_vec<int>.
* ipa-icf.h (bb_dict_test): Likewise.
From-SVN: r220806
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/ipa-icf.c | 16 | ||||
-rw-r--r-- | gcc/ipa-icf.h | 2 |
3 files changed, 16 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 07cadb3..174e5b4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2015-02-18 Trevor Saunders <tsaunders@mozilla.com> + + * ipa-icf.c (sem_function::equals_private): Adjust. + (sem_function::bb_dict_test): Take a vec<int> * instead of + auto_vec<int>. + * ipa-icf.h (bb_dict_test): Likewise. + 2015-02-18 Jakub Jelinek <jakub@redhat.com> PR gcov-profile/64634 diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c index 692946a..494fdcf 100644 --- a/gcc/ipa-icf.c +++ b/gcc/ipa-icf.c @@ -563,10 +563,10 @@ sem_function::equals_private (sem_item *item, if (e1->flags != e2->flags) return return_false_with_msg ("flags comparison returns false"); - if (!bb_dict_test (bb_dict, e1->src->index, e2->src->index)) + if (!bb_dict_test (&bb_dict, e1->src->index, e2->src->index)) return return_false_with_msg ("edge comparison returns false"); - if (!bb_dict_test (bb_dict, e1->dest->index, e2->dest->index)) + if (!bb_dict_test (&bb_dict, e1->dest->index, e2->dest->index)) return return_false_with_msg ("BB comparison returns false"); if (!m_checker->compare_edge (e1, e2)) @@ -1053,21 +1053,21 @@ sem_function::icf_handled_component_p (tree t) corresponds to TARGET. */ bool -sem_function::bb_dict_test (auto_vec<int> bb_dict, int source, int target) +sem_function::bb_dict_test (vec<int> *bb_dict, int source, int target) { source++; target++; - if (bb_dict.length () <= (unsigned)source) - bb_dict.safe_grow_cleared (source + 1); + if (bb_dict->length () <= (unsigned)source) + bb_dict->safe_grow_cleared (source + 1); - if (bb_dict[source] == 0) + if ((*bb_dict)[source] == 0) { - bb_dict[source] = target; + (*bb_dict)[source] = target; return true; } else - return bb_dict[source] == target; + return (*bb_dict)[source] == target; } /* Iterates all tree types in T1 and T2 and returns true if all types diff --git a/gcc/ipa-icf.h b/gcc/ipa-icf.h index adbedd6..a55699b 100644 --- a/gcc/ipa-icf.h +++ b/gcc/ipa-icf.h @@ -275,7 +275,7 @@ private: /* Basic blocks dictionary BB_DICT returns true if SOURCE index BB corresponds to TARGET. */ - bool bb_dict_test (auto_vec<int> bb_dict, int source, int target); + bool bb_dict_test (vec<int> *bb_dict, int source, int target); /* Iterates all tree types in T1 and T2 and returns true if all types are compatible. If COMPARE_POLYMORPHIC is set to true, |