diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-26 01:49:40 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-09-26 01:49:40 +0000 |
commit | e2e8050a4aafd8d56e154440bca29d14eaea66e8 (patch) | |
tree | c89e2e926d323591a5f20d5347f51459e4809ae2 /gcc/ipa-prop.c | |
parent | 0bc44333d549cd1d649ff272c3a3b622c4ad1aa5 (diff) | |
download | gcc-e2e8050a4aafd8d56e154440bca29d14eaea66e8.tar.gz |
* ipa-prop.c (ipa_intraprocedural_devirtualization): Remove.
* ipa-prop.h (ipa_intraprocedural_devirtualization): Remove.
* tree-ssa-prop.c (eliminate_dom_walker::before_dom_children):
Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215628 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-prop.c')
-rw-r--r-- | gcc/ipa-prop.c | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index 36949e32709..34d4c0207d1 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -2566,36 +2566,6 @@ ipa_analyze_node (struct cgraph_node *node) pop_cfun (); } -/* Given a statement CALL which must be a GIMPLE_CALL calling an OBJ_TYPE_REF - attempt a type-based devirtualization. If successful, return the - target function declaration, otherwise return NULL. */ - -tree -ipa_intraprocedural_devirtualization (gimple call) -{ - tree binfo, token, fndecl; - struct ipa_jump_func jfunc; - tree otr = gimple_call_fn (call); - - jfunc.type = IPA_JF_UNKNOWN; - compute_known_type_jump_func (OBJ_TYPE_REF_OBJECT (otr), &jfunc, - call, obj_type_ref_class (otr)); - if (jfunc.type != IPA_JF_KNOWN_TYPE) - return NULL_TREE; - binfo = ipa_binfo_from_known_type_jfunc (&jfunc); - if (!binfo) - return NULL_TREE; - token = OBJ_TYPE_REF_TOKEN (otr); - fndecl = gimple_get_virt_method_for_binfo (tree_to_uhwi (token), - binfo); -#ifdef ENABLE_CHECKING - if (fndecl) - gcc_assert (possible_polymorphic_call_target_p - (otr, call, cgraph_node::get (fndecl))); -#endif - return fndecl; -} - /* Update the jump function DST when the call graph edge corresponding to SRC is is being inlined, knowing that DST is of type ancestor and src of known type. */ |