Rebase.
[official-gcc.git] / gcc / ChangeLog.mpx-8-1-cgraph
blobb5770a5c14a2387773c2acae811e2e6e9c717f5b
1 2014-08-07  Ilya Enkovich  <ilya.enkovich@intel.com>
3         * cgraph.h (cgraph_thunk_info): Add add_pointer_bounds_args
4         field.
5         (cgraph_node): Add instrumented_version, orig_decl and
6         instrumentation_clone fields.
7         (symtab_node::get_alias_target): Allow IPA_REF_CHKP reference.
8         * cgraph.c (cgraph_node::remove): Fix instrumented_version
9         of the referenced node if any.
10         (cgraph_node::dump): Dump instrumentation_clone and
11         instrumented_version fields.
12         (cgraph_node::verify_node): Check correctness of IPA_REF_CHKP
13         references and instrumentation thunks.
14         * cgraphbuild.c (rebuild_cgraph_edges): Rebuild IPA_REF_CHKP
15         reference.
16         (cgraph_rebuild_references): Likewise.
17         * cgraphunit.c (assemble_thunks_and_aliases): Skip thunks
18         calling instrumneted function version.
19         * ipa-ref.h (ipa_ref_use): Add IPA_REF_CHKP.
20         (ipa_ref): increase size of use field.
21         * symtab.c (ipa_ref_use_name): Add element for IPA_REF_CHKP.
22         * lto-cgraph.c (lto_output_node): Output instrumentation_clone,
23         thunk.add_pointer_bounds_args and orig_decl field.
24         (lto_output_ref): Adjust to new ipa_ref::use field size.
25         (input_overwrite_node): Read instrumentation_clone field.
26         (input_node): Read thunk.add_pointer_bounds_args and orig_decl
27         fields.
28         (input_ref): Adjust to new ipa_ref::use field size.
29         (input_cgraph_1): Compute instrumented_version fields and restore
30         IDENTIFIER_TRANSPARENT_ALIAS chains.
31         * lto-streamer.h (LTO_minor_version): Change minor version from
32         0 to 1.
33         * ipa.c (symtab_remove_unreachable_nodes): Consider instrumented
34         clone as address taken if the original one is address taken.
35         * ipa-visibility.c (cgraph_externally_visible_p): Mark
36         instrumented 'main' as externally visible.
37         (function_and_variable_visibility): Filter instrumentation
38         thunks.