diff options
author | Yury Gribov <y.gribov@samsung.com> | 2014-08-11 06:06:29 +0000 |
---|---|---|
committer | Yury Gribov <ygribov@gcc.gnu.org> | 2014-08-11 06:06:29 +0000 |
commit | b78475cf7322cdce66bae717ee5768baabe8f8d6 (patch) | |
tree | cc507b413e35529d1cebf6d68425ef2f41fa5366 /gcc/internal-fn.h | |
parent | f473c082d8c9ddbc0d310160f12fad3f11a229e0 (diff) | |
download | gcc-b78475cf7322cdce66bae717ee5768baabe8f8d6.zip gcc-b78475cf7322cdce66bae717ee5768baabe8f8d6.tar.gz gcc-b78475cf7322cdce66bae717ee5768baabe8f8d6.tar.bz2 |
Added fnspec to internal functions.
2014-08-11 Yury Gribov <y.gribov@samsung.com>
gcc/
* gimple.c (gimple_call_fnspec): Support internal functions.
(gimple_call_return_flags): Use const.
* Makefile.in (GTFILES): Add internal-fn.h to list of GC files.
* internal-fn.def: Add fnspec information.
* internal-fn.h (internal_fn_fnspec): New function.
(init_internal_fns): Declare new function.
* internal-fn.c (internal_fn_fnspec_array): New global variable.
(init_internal_fns): New function.
* tree-core.h: Update macro call.
* tree.c (build_common_builtin_nodes): Initialize internal fns.
From-SVN: r213806
Diffstat (limited to 'gcc/internal-fn.h')
-rw-r--r-- | gcc/internal-fn.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/internal-fn.h b/gcc/internal-fn.h index 2dcf44e..14573aa 100644 --- a/gcc/internal-fn.h +++ b/gcc/internal-fn.h @@ -20,6 +20,12 @@ along with GCC; see the file COPYING3. If not see #ifndef GCC_INTERNAL_FN_H #define GCC_INTERNAL_FN_H +#include "coretypes.h" + +/* Initialize internal function tables. */ + +extern void init_internal_fns (); + /* Return the name of internal function FN. The name is only meaningful for dumps; it has no linkage. */ @@ -41,6 +47,16 @@ internal_fn_flags (enum internal_fn fn) return internal_fn_flags_array[(int) fn]; } +/* Return fnspec for function FN. */ + +extern GTY(()) const_tree internal_fn_fnspec_array[IFN_LAST + 1]; + +static inline const_tree +internal_fn_fnspec (enum internal_fn fn) +{ + return internal_fn_fnspec_array[(int) fn]; +} + extern void expand_internal_call (gimple); #endif |