diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-28 16:34:36 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-28 16:34:36 +0000 |
commit | 4a68fd3cf82cde5dbdbfed957eac66f9f78820ea (patch) | |
tree | df17a1c6a564a87e23e89f03d7cabc50414014c4 /gcc/omp-builtins.def | |
parent | 83f4b93be171071920df6321140d217239f7c23e (diff) | |
download | gcc-4a68fd3cf82cde5dbdbfed957eac66f9f78820ea.tar.gz |
* builtin-attrs.def (ATTR_LEAF): New attribute.
(ATTR_NOVOPS_LEAF_LIST, ATTR_LEAF_LIST, ATTR_NOTHROW_LEAF_LIST,
ATTR_CONST_NOTHROW_LEAF_LIST, ATTR_PURE_NOTHROW_LEAF_LIST,
ATTR_PURE_NOTHROW_NOVOPS_LEAF_LIST, ATTR_NORETURN_NOTHROW_LEAF_LIST,
ATTR_MALLOC_NOTHROW_LEAF_LIST, ATTR_SENTINEL_NOTHROW_LEAF_LIST,
ATTR_NOTHROW_NONNULL_LEAF, ATTR_CONST_NOTHROW_NONNULL_LEAF,
ATTR_CONST_NOTHROW_TYPEGENERIC_LEAF, ATTR_PURE_NOTHROW_NONNULL_LEAF,
ATTR_MALLOC_NOTHROW_NONNULL_LEAF): New attribute lists.
* sync-builtins.def: Annotate all builtins by leaf.
* omp-builtins.def: Annotate all builtins by leaf.
* builtins.def: Annotate relevant builtins with leaf attribute.
(ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
ATTR_MATHFN_FPROUNDING_ERRNO, ATTR_MATHFN_FPROUNDING_STORE): Make
leaf.
* gcc-interface/utils.c (handle_leaf_attribute): New function.
(gnat_internal_attribute_tables): Add leaf.
* lto-lang.c (handle_leaf_attribute): New function.
(lto_attribute_tables): Add leaf.
* f95-lang.c (gfc_define_builtin): Make leaf.
(gfc_init_builtin_functions): Handle only ATTR_CONST_NOTHROW_LEAF_LIST
and ATTR_NOTHROW_LEAF_LIST.
(DEF_SYNC_BUILTIN): Check ATTR_CONST_NOTHROW_LEAF_LIST.
(DEF_GOMP_BUILTIN): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164689 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/omp-builtins.def')
-rw-r--r-- | gcc/omp-builtins.def | 122 |
1 files changed, 61 insertions, 61 deletions
diff --git a/gcc/omp-builtins.def b/gcc/omp-builtins.def index 5fd4f9aea75..77dbae7cbba 100644 --- a/gcc/omp-builtins.def +++ b/gcc/omp-builtins.def @@ -25,184 +25,184 @@ along with GCC; see the file COPYING3. If not see See builtins.def for details. */ DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_THREAD_NUM, "omp_get_thread_num", - BT_FN_INT, ATTR_CONST_NOTHROW_LIST) + BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_NUM_THREADS, "omp_get_num_threads", - BT_FN_INT, ATTR_CONST_NOTHROW_LIST) + BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_START, "GOMP_atomic_start", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_END, "GOMP_atomic_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_BARRIER, "GOMP_barrier", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKWAIT, "GOMP_taskwait", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_START, "GOMP_critical_start", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_END, "GOMP_critical_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_NAME_START, "GOMP_critical_name_start", - BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LIST) + BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_NAME_END, "GOMP_critical_name_end", - BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LIST) + BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LEAF_LIST) /* NOTE: Do not change the order of BUILT_IN_GOMP_LOOP_*_START. They are used in index arithmetic with enum omp_clause_schedule_kind in omp-low.c. */ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_STATIC_START, "GOMP_loop_static_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DYNAMIC_START, "GOMP_loop_dynamic_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_GUIDED_START, "GOMP_loop_guided_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_RUNTIME_START, "GOMP_loop_runtime_start", BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_STATIC_START, "GOMP_loop_ordered_static_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_START, "GOMP_loop_ordered_dynamic_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_START, "GOMP_loop_ordered_guided_start", BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_START, "GOMP_loop_ordered_runtime_start", BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_STATIC_NEXT, "GOMP_loop_static_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DYNAMIC_NEXT, "GOMP_loop_dynamic_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_GUIDED_NEXT, "GOMP_loop_guided_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_RUNTIME_NEXT, "GOMP_loop_runtime_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_STATIC_NEXT, "GOMP_loop_ordered_static_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_NEXT, "GOMP_loop_ordered_dynamic_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_NEXT, "GOMP_loop_ordered_guided_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_NEXT, "GOMP_loop_ordered_runtime_next", - BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_STATIC_START, "GOMP_loop_ull_static_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DYNAMIC_START, "GOMP_loop_ull_dynamic_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_GUIDED_START, "GOMP_loop_ull_guided_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_RUNTIME_START, "GOMP_loop_ull_runtime_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_STATIC_START, "GOMP_loop_ull_ordered_static_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_DYNAMIC_START, "GOMP_loop_ull_ordered_dynamic_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_GUIDED_START, "GOMP_loop_ull_ordered_guided_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_START, "GOMP_loop_ull_ordered_runtime_start", BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_STATIC_NEXT, "GOMP_loop_ull_static_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DYNAMIC_NEXT, "GOMP_loop_ull_dynamic_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_GUIDED_NEXT, "GOMP_loop_ull_guided_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_RUNTIME_NEXT, "GOMP_loop_ull_runtime_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_STATIC_NEXT, "GOMP_loop_ull_ordered_static_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_DYNAMIC_NEXT, "GOMP_loop_ull_ordered_dynamic_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_GUIDED_NEXT, "GOMP_loop_ull_ordered_guided_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT, "GOMP_loop_ull_ordered_runtime_next", - BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LIST) + BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST) /* NOTE: Do not change the order of BUILT_IN_GOMP_PARALLEL_LOOP_*_START. They are used in index arithmetic with enum omp_clause_schedule_kind in omp-low.c. */ DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC_START, "GOMP_parallel_loop_static_start", BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC_START, "GOMP_parallel_loop_dynamic_start", BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED_START, "GOMP_parallel_loop_guided_start", BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME_START, "GOMP_parallel_loop_runtime_start", BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END, "GOMP_loop_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END_NOWAIT, "GOMP_loop_end_nowait", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_START, "GOMP_ordered_start", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_END, "GOMP_ordered_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_START, "GOMP_parallel_start", - BT_FN_VOID_OMPFN_PTR_UINT, ATTR_NOTHROW_LIST) + BT_FN_VOID_OMPFN_PTR_UINT, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_END, "GOMP_parallel_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASK, "GOMP_task", BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT, - ATTR_NOTHROW_LIST) + ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_START, "GOMP_sections_start", - BT_FN_UINT_UINT, ATTR_NOTHROW_LIST) + BT_FN_UINT_UINT, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_NEXT, "GOMP_sections_next", - BT_FN_UINT, ATTR_NOTHROW_LIST) + BT_FN_UINT, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_SECTIONS_START, "GOMP_parallel_sections_start", - BT_FN_VOID_OMPFN_PTR_UINT_UINT, ATTR_NOTHROW_LIST) + BT_FN_VOID_OMPFN_PTR_UINT_UINT, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END, "GOMP_sections_end", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END_NOWAIT, "GOMP_sections_end_nowait", - BT_FN_VOID, ATTR_NOTHROW_LIST) + BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_START, "GOMP_single_start", - BT_FN_BOOL, ATTR_NOTHROW_LIST) + BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_START, "GOMP_single_copy_start", - BT_FN_PTR, ATTR_NOTHROW_LIST) + BT_FN_PTR, ATTR_NOTHROW_LEAF_LIST) DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_END, "GOMP_single_copy_end", - BT_FN_VOID_PTR, ATTR_NOTHROW_LIST) + BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST) |