aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2016-05-03 21:05:31 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2016-05-03 19:05:31 +0000
commit1a0bf5e11baddeb3b12e02d85b5e2504ce151abd (patch)
treefa1518ec23a4f9f2df062d54c970f14311ba7cbc /gcc/lto
parent8b38916ad4fe0b878b12c9a42d6983ac09440485 (diff)
downloadgcc-1a0bf5e11baddeb3b12e02d85b5e2504ce151abd.zip
gcc-1a0bf5e11baddeb3b12e02d85b5e2504ce151abd.tar.gz
gcc-1a0bf5e11baddeb3b12e02d85b5e2504ce151abd.tar.bz2
cgraph.c (symbol_table::create_edge): Set inline_failed.
* cgraph.c (symbol_table::create_edge): Set inline_failed. (cgraph_edge::make_direct): Likewise. (cgraph_edge::dump_edge_flags): Dump call_stmt_cannot_inline_p. * cgraphclones.c (duplicate_thunk_for_node): Set inline_failed. * cif-code.def (CIF_LTO_MISMATCHED_DECLARATIONS): New code (CIF_THUNK): New code. * ipa-inline-analysis.c (initialize_inline_failed): Preserve CIF_FINAL_ERROR codes; do not deal with call_stmt_cannot_inline_p. (compute_inline_parameters): Set inline_failed for thunks. (inline_analyze_function): Cleanup. * ipa-inline.c (can_inline_edge_p): Do not deal with call_stmt_cannot_inline_p. (can_early_inline_edge_p): Likewise. (early_inliner): Initialize inline_failed. * lto-cgraph.c (lto_output_edge): Sanity check inline_failed. * lto-symtab.c (lto_cgraph_replace_node): Initialize inline_failed. From-SVN: r235839
Diffstat (limited to 'gcc/lto')
-rw-r--r--gcc/lto/ChangeLog4
-rw-r--r--gcc/lto/lto-symtab.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index b1421cb..80ffba3 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,3 +1,7 @@
+2016-05-03 Jan Hubicka <hubicka@ucw.cz>
+
+ * lto-symtab.c (lto_cgraph_replace_node): Initialize inline_failed.
+
2016-04-27 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* lto-partition.h (lto_balanced_map): New parameter.
diff --git a/gcc/lto/lto-symtab.c b/gcc/lto/lto-symtab.c
index 94b919b..ce9e146 100644
--- a/gcc/lto/lto-symtab.c
+++ b/gcc/lto/lto-symtab.c
@@ -81,7 +81,10 @@ lto_cgraph_replace_node (struct cgraph_node *node,
??? We really need a way to match function signatures for ABI
compatibility and perform related promotions at inlining time. */
if (!compatible_p)
- e->call_stmt_cannot_inline_p = 1;
+ {
+ e->inline_failed = CIF_LTO_MISMATCHED_DECLARATIONS;
+ e->call_stmt_cannot_inline_p = 1;
+ }
}
/* Redirect incomming references. */
prevailing_node->clone_referring (node);