aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>1999-05-02 17:43:33 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>1999-05-02 17:43:33 +0000
commit59182242496bf5774eceeff34576b3631793450a (patch)
tree35ccb6e6780d50f42cbb6d4193015af65346b414 /gcc/tree.h
parentaf36a4d251dc01522e818b18e61e7bd289419654 (diff)
downloadgcc-59182242496bf5774eceeff34576b3631793450a.zip
gcc-59182242496bf5774eceeff34576b3631793450a.tar.gz
gcc-59182242496bf5774eceeff34576b3631793450a.tar.bz2
tree.h (struct tree_decl): Add comdat_flag.
* tree.h (struct tree_decl): Add comdat_flag. (DECL_COMDAT): Define it. * toplev.c (wrapup_global_declarations): Don't output a DECL_COMDAT function just because it's public. From-SVN: r26733
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index e91902f..0d7ea84 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1246,6 +1246,17 @@ struct tree_type
multiple translation units should be merged. */
#define DECL_ONE_ONLY(NODE) (DECL_CHECK (NODE)->decl.transparent_union)
+/* Used in a DECL to indicate that, even if it TREE_PUBLIC, it need
+ not be put out unless it is needed in this translation unit.
+ Entities like this are shared across translation units (like weak
+ entities), but are guaranteed to be generated by any translation
+ unit that needs them, and therefore need not be put out anywhere
+ where they are not needed. DECL_COMDAT is just a hint to the
+ back-end; it is up to front-ends which set this flag to ensure
+ that there will never be any harm, other than bloat, in putting out
+ something which is DECL_COMDAT. */
+#define DECL_COMDAT(NODE) (DECL_CHECK (NODE)->decl.comdat_flag)
+
/* Used in FUNCTION_DECLs to indicate that function entry and exit should
be instrumented with calls to support routines. */
#define DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT(NODE) ((NODE)->decl.no_instrument_function_entry_exit)
@@ -1321,6 +1332,7 @@ struct tree_decl
unsigned non_addr_const_p : 1;
unsigned no_instrument_function_entry_exit : 1;
unsigned no_check_memory_usage : 1;
+ unsigned comdat_flag : 1;
/* For a FUNCTION_DECL, if inline, this is the size of frame needed.
If built-in, this is the code for which built-in function.