diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2021-08-26 16:57:46 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@ucw.cz> | 2021-08-26 16:57:46 +0200 |
commit | e28ac73af20028f829c4ba1ffd38ea84e7419b0d (patch) | |
tree | ca72244b2ac18f42d96931b4c06afbbd349947e9 /gcc/ipa-modref-tree.c | |
parent | c80d7230fba64097e4a2f1c88b189ba46b984519 (diff) | |
download | gcc-e28ac73af20028f829c4ba1ffd38ea84e7419b0d.zip gcc-e28ac73af20028f829c4ba1ffd38ea84e7419b0d.tar.gz gcc-e28ac73af20028f829c4ba1ffd38ea84e7419b0d.tar.bz2 |
Improve handling of modref params.
this patch makes insertion to modref access tree smarter when --param
modref-max-bases and moredref-max-refs are hit. Instead of giving up
we either give up on base alias set (make it equal to ref) or turn the
alias set to 0. This lets us to track useful info on quite large
functions, such as ggc_free.
gcc/ChangeLog:
* ipa-modref-tree.c (test_insert_search_collapse): Update test.
* ipa-modref-tree.h (modref_base_node::insert): Be smarter when
hiting --param modref-max-refs limit.
(modref_tree:insert_base): Be smarter when hitting
--param modref-max-bases limit. Add new parameter REF.
(modref_tree:insert): Update.
(modref_tree:merge): Update.
* ipa-modref.c (read_modref_records): Update.
Diffstat (limited to 'gcc/ipa-modref-tree.c')
-rw-r--r-- | gcc/ipa-modref-tree.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ipa-modref-tree.c b/gcc/ipa-modref-tree.c index 69395b0..8d147a1 100644 --- a/gcc/ipa-modref-tree.c +++ b/gcc/ipa-modref-tree.c @@ -101,7 +101,7 @@ test_insert_search_collapse () ASSERT_TRUE (base_node->every_ref); /* Insert base to trigger base list collapse. */ - t->insert (5, 6, a, false); + t->insert (5, 0, a, false); ASSERT_TRUE (t->every_base); ASSERT_EQ (t->bases, NULL); ASSERT_EQ (t->search (1), NULL); |