diff options
author | Jan Hubicka <jh@suse.cz> | 2013-06-04 21:44:51 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2013-06-04 19:44:51 +0000 |
commit | aaae719df3df968a3a5cf5a03a8fb9d1889f1a50 (patch) | |
tree | ad227d417e6731c387197201d9fbbd5439ef5d3d /gcc/ipa-inline.c | |
parent | 107eea2ca48ec70e64787340d3e07c8b59ab0e79 (diff) | |
download | gcc-aaae719df3df968a3a5cf5a03a8fb9d1889f1a50.zip gcc-aaae719df3df968a3a5cf5a03a8fb9d1889f1a50.tar.gz gcc-aaae719df3df968a3a5cf5a03a8fb9d1889f1a50.tar.bz2 |
attr-alias.c: New testcase.
* gcc.dg/tree-ssa/attr-alias.c: New testcase.
* ipa-inline.c (update_caller_keys): Fix availability test.
(update_callee_keys): Likewise.
* symtab.c (symtab_alias_ultimate_target): Make availaiblity logic
to follow ELF standard.
From-SVN: r199670
Diffstat (limited to 'gcc/ipa-inline.c')
-rw-r--r-- | gcc/ipa-inline.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c index a378c08..283e517 100644 --- a/gcc/ipa-inline.c +++ b/gcc/ipa-inline.c @@ -1101,7 +1101,6 @@ update_caller_keys (fibheap_t heap, struct cgraph_node *node, struct ipa_ref *ref; if ((!node->symbol.alias && !inline_summary (node)->inlinable) - || cgraph_function_body_availability (node) <= AVAIL_OVERWRITABLE || node->global.inlined_to) return; if (!bitmap_set_bit (updated_nodes, node->uid)) @@ -1162,7 +1161,7 @@ update_callee_keys (fibheap_t heap, struct cgraph_node *node, if (e->inline_failed && (callee = cgraph_function_or_thunk_node (e->callee, &avail)) && inline_summary (callee)->inlinable - && cgraph_function_body_availability (callee) >= AVAIL_AVAILABLE + && avail >= AVAIL_AVAILABLE && !bitmap_bit_p (updated_nodes, callee->uid)) { if (can_inline_edge_p (e, false) |