diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2014-05-20 21:57:45 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2014-05-20 19:57:45 +0000 |
commit | cf288ed3b8b0cdfee1c03a7dfb2d371b5b7e3147 (patch) | |
tree | c7cb5df0ad4b66323aabee83001d4e28934f6229 /gcc/tree.h | |
parent | f4cd9c518ba414724bacb1d936ba1676929fa52e (diff) | |
download | gcc-cf288ed3b8b0cdfee1c03a7dfb2d371b5b7e3147.zip gcc-cf288ed3b8b0cdfee1c03a7dfb2d371b5b7e3147.tar.gz gcc-cf288ed3b8b0cdfee1c03a7dfb2d371b5b7e3147.tar.bz2 |
tree.h (DECL_ONE_ONLY): Return true only for externally visible symbols.
* tree.h (DECL_ONE_ONLY): Return true only for externally visible
symbols.
* except.c (switch_to_exception_section, resolve_unique_section,
get_named_text_section, default_function_rodata_section,
align_variable, get_block_for_decl, default_section_type_flags):
Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
* symtab.c (symtab_add_to_same_comdat_group,
symtab_make_decl_local, fixup_same_cpp_alias_visibility,
symtab_nonoverwritable_alias, symtab_get_symbol_partitioning_class):
Likewise.
* cgraphclones.c (cgraph_create_virtual_clone): Likewise.
* bb-reorder.c (pass_partition_blocks::gate): Likewise.
* config/c6x/c6x.c (c6x_elf_unique_section): Likewise.
(c6x_function_in_section_p): Likewise.
* config/darwin.c (machopic_select_section): Likewise.
* config/arm/arm.c (arm_function_in_section_p): Likewise.
* config/mips/mips.c (mips_function_rodata_section): Likewise.
* config/mep/mep.c (mep_select_section): LIkewise.
* config/i386/i386.c (x86_64_elf_unique_section): Likewise.
From-SVN: r210654
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -2327,7 +2327,8 @@ extern void decl_value_expr_insert (tree, tree); /* Used in TREE_PUBLIC decls to indicate that copies of this DECL in multiple translation units should be merged. */ -#define DECL_ONE_ONLY(NODE) (DECL_COMDAT_GROUP (NODE) != NULL_TREE) +#define DECL_ONE_ONLY(NODE) (DECL_COMDAT_GROUP (NODE) != NULL_TREE \ + && (TREE_PUBLIC (NODE) || DECL_EXTERNAL (NODE))) /* The name of the object as the assembler will see it (but before any translations made by ASM_OUTPUT_LABELREF). Often this is the same |