diff options
author | Dodji Seketeli <dodji@redhat.com> | 2013-09-04 12:54:09 +0000 |
---|---|---|
committer | Dodji Seketeli <dodji@gcc.gnu.org> | 2013-09-04 14:54:09 +0200 |
commit | 24ba81955d92ff8c29f814867b887446f5c0be05 (patch) | |
tree | 176424902166f5edeed2bd7007f7ecee9148c4da /gcc/tree.h | |
parent | 0a04869e7f2bdd1b1573e806e3be03197d4f236c (diff) | |
download | gcc-24ba81955d92ff8c29f814867b887446f5c0be05.zip gcc-24ba81955d92ff8c29f814867b887446f5c0be05.tar.gz gcc-24ba81955d92ff8c29f814867b887446f5c0be05.tar.bz2 |
More comments about DECL_BUILT_IN and DECL_IS_BUILTIN
gcc/
* tree.h (DECL_BUILT_IN, DECL_IS_BUILTIN): Add more comments
explaining their differences.
From-SVN: r202251
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -1838,6 +1838,9 @@ extern enum machine_mode vector_type_mode (const_tree); #define DECL_SOURCE_FILE(NODE) LOCATION_FILE (DECL_SOURCE_LOCATION (NODE)) #define DECL_SOURCE_LINE(NODE) LOCATION_LINE (DECL_SOURCE_LOCATION (NODE)) #define DECL_SOURCE_COLUMN(NODE) LOCATION_COLUMN (DECL_SOURCE_LOCATION (NODE)) +/* This accessor returns TRUE if the decl it operates on was created + by a front-end or back-end rather than by user code. In this case + builtin-ness is indicated by source location. */ #define DECL_IS_BUILTIN(DECL) \ (LOCATION_LOCUS (DECL_SOURCE_LOCATION (DECL)) <= BUILTINS_LOCATION) @@ -2486,7 +2489,13 @@ extern vec<tree, va_gc> **decl_debug_args_insert (tree); #define DECL_STRUCT_FUNCTION(NODE) \ (FUNCTION_DECL_CHECK (NODE)->function_decl.f) -/* In a FUNCTION_DECL, nonzero means a built in function. */ +/* In a FUNCTION_DECL, nonzero means a built in function of a + standard library or more generally a built in function that is + recognized by optimizers and expanders. + + Note that it is different from the DECL_IS_BUILTIN accessor. For + instance, user declarated prototypes of C library functions are not + DECL_IS_BUILTIN but may be DECL_BUILT_IN. */ #define DECL_BUILT_IN(NODE) (DECL_BUILT_IN_CLASS (NODE) != NOT_BUILT_IN) /* For a builtin function, identify which part of the compiler defined it. */ |