diff options
author | Martin Jambor <mjambor@suse.cz> | 2019-10-02 14:44:35 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2019-10-02 14:44:35 +0200 |
commit | 3187c8a5010f4245ff008a0fc2fb746a8bce4a00 (patch) | |
tree | 57403e651339babab9bbb759ade26ac1ce118719 /gcc/cgraphclones.c | |
parent | 569651fd6fdb6455da58f7811e6296c22ce34df7 (diff) | |
download | gcc-3187c8a5010f4245ff008a0fc2fb746a8bce4a00.zip gcc-3187c8a5010f4245ff008a0fc2fb746a8bce4a00.tar.gz gcc-3187c8a5010f4245ff008a0fc2fb746a8bce4a00.tar.bz2 |
[PATCH] Do not check call type compatibility when cloning cgraph-edges
2019-10-02 Martin Jambor <mjambor@suse.cz>
* cgraph.c (symbol_table::create_edge): New parameter cloning_p,
do not compute some stuff when set.
(cgraph_node::create_edge): Likewise.
(cgraph_node::create_indirect_edge): Renamed last parameter to
coning_p and flipped its meaning, don't even calculate
inline_failed when set.
* cgraph.h (cgraph_node::create_edge): Add new parameter.
(symbol_table::::create_edge): Likewise.
(cgraph_node::create_indirect_edge): Rename last parameter, flip
the default value.
* cgraphclones.c (cgraph_edge::clone): Pass true cloning_p to all
call graph edge creating functions.
From-SVN: r276455
Diffstat (limited to 'gcc/cgraphclones.c')
-rw-r--r-- | gcc/cgraphclones.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c index 909407b..087b5a2 100644 --- a/gcc/cgraphclones.c +++ b/gcc/cgraphclones.c @@ -104,19 +104,19 @@ cgraph_edge::clone (cgraph_node *n, gcall *call_stmt, unsigned stmt_uid, { cgraph_node *callee = cgraph_node::get (decl); gcc_checking_assert (callee); - new_edge = n->create_edge (callee, call_stmt, prof_count); + new_edge = n->create_edge (callee, call_stmt, prof_count, true); } else { new_edge = n->create_indirect_edge (call_stmt, indirect_info->ecf_flags, - prof_count, false); + prof_count, true); *new_edge->indirect_info = *indirect_info; } } else { - new_edge = n->create_edge (callee, call_stmt, prof_count); + new_edge = n->create_edge (callee, call_stmt, prof_count, true); if (indirect_info) { new_edge->indirect_info |