diff options
| author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-06-05 14:15:31 +0000 |
|---|---|---|
| committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-06-05 14:15:31 +0000 |
| commit | 6a1c04032e72d98a149a834964f2acc7d5776085 (patch) | |
| tree | a3982caf99872c7045fe2746bb44f9b7a2a178ac /gcc/java | |
| parent | 889fe57ca002725ee4e8c5036273939853c7588b (diff) | |
| download | ppe42-gcc-6a1c04032e72d98a149a834964f2acc7d5776085.tar.gz ppe42-gcc-6a1c04032e72d98a149a834964f2acc7d5776085.zip | |
* class.c (emit_register_classes_in_jcr_section): Use DECL_PRESERVE_P
instead of mark_decl_referenced.
* decl2.c (maybe_make_one_only): Use forced_by_abi instad of
mark_decl_referenced.
(mark_needed): Likewise.
* cgraph.c (cgraph_remove_node): Clear forced_by_abi.
(cgraph_node_cannot_be_local_p_1): Honnor symbol.forced_by_abi
and symtab_used_from_object_file_p.
(cgraph_make_node_local_1): Clear forced_by_abi.
(cgraph_can_remove_if_no_direct_calls_and): Use forced_by_abi
* cgraph.h (symtab_node_base): Add forced_by_abi.
(decide_is_variable_needed): Remove.
(varpool_can_remove_if_no_refs): Honnor symbol.forced_by_abi.
* cgraphunit.c (cgraph_decide_is_function_needed): Rename to ..
(decide_is_symbol_needed): ... this one; handle symbols in general;
always analyze virtuals; honnor forced_by_abi.
(cgraph_finalize_function): Update.
(varpool_finalize_decl): Update.
(symbol_defined_and_needed): Remove.
(analyze_functions): Update.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
output_refs, input_overwrite_node): Handle forced_by_abi.
* ipa.c (cgraph_address_taken_from_non_vtable_p): Rename to ...
(address_taken_from_non_vtable_p): ... this one.
(comdat_can_be_unshared_p_1): New function.
(cgraph_comdat_can_be_unshared_p): Rename to ...
(comdat_can_be_unshared_p): ... this one; handle symbols in general.
(varpool_externally_visible_p): Use comdat_can_be_unshared_p.
(function_and_variable_visibility): Clear forced_by_abi as needed.
* trans-mem.c (ipa_tm_mark_forced_by_abi_node): New functoin.
(ipa_tm_create_version_alias, ipa_tm_create_version): Update.
* varasm.c (mark_decl_referenced): Remove.
* symtab.c (dump_symtab_base): Dump forced_by_abi.
* varpool.c (decide_is_variable_needed): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199695 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java')
| -rw-r--r-- | gcc/java/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/java/class.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 82cc49f2e42..9cc34c51a5a 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +2013-06-05 Jan Hubicka <jh@suse.cz> + + * class.c (emit_register_classes_in_jcr_section): Use DECL_PRESERVE_P + instead of mark_decl_referenced. + 2013-05-29 Jan Hubicka <jh@suse.cz> * decl.c (java_mark_decl_local): Update for new symtab flags. diff --git a/gcc/java/class.c b/gcc/java/class.c index 30679f72b39..cb6789643d3 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -2814,10 +2814,10 @@ emit_register_classes_in_jcr_section (void) TREE_CONSTANT (cdecl) = 1; DECL_ARTIFICIAL (cdecl) = 1; DECL_IGNORED_P (cdecl) = 1; + DECL_PRESERVE_P (cdecl) = 1; pushdecl_top_level (cdecl); relayout_decl (cdecl); rest_of_decl_compilation (cdecl, 1, 0); - mark_decl_referenced (cdecl); #else /* A target has defined TARGET_USE_JCR_SECTION, but doesn't have a JCR_SECTION_NAME. */ |

