aboutsummaryrefslogtreecommitdiff
path: root/gcc/internal-fn.h
diff options
context:
space:
mode:
authorYury Gribov <y.gribov@samsung.com>2014-08-11 06:06:29 +0000
committerYury Gribov <ygribov@gcc.gnu.org>2014-08-11 06:06:29 +0000
commitb78475cf7322cdce66bae717ee5768baabe8f8d6 (patch)
treecc507b413e35529d1cebf6d68425ef2f41fa5366 /gcc/internal-fn.h
parentf473c082d8c9ddbc0d310160f12fad3f11a229e0 (diff)
downloadgcc-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.h16
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