diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-23 17:04:35 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-23 17:04:35 +0000 |
commit | 84bfaaebbe4a0f0e0299752da56415a9756430c1 (patch) | |
tree | c71eded4af7626ba7706b47e3178b1847fd6c27d /gcc/omp-low.c | |
parent | 7e4882391b8b224682064d2b57cc5dc38d291f8e (diff) | |
download | gcc-84bfaaebbe4a0f0e0299752da56415a9756430c1.tar.gz |
* tree.h (struct tree_base): Add nameless_flag bitfield.
(TYPE_NAMELESS, DECL_NAMELESS): Define.
* omp-low.c (create_omp_child_function, scan_omp_parallel,
scan_omp_task, lower_omp_taskreg): Set DECL_NAMELESS and/or
DECL_ARTIFICIAL where needed.
* dwarf2out.c (dwarf2_name): Return NULL if DECL_NAMELESS.
(type_tag): Return NULL if TYPE_NAMELESS or if TYPE_DECL
has DECL_NAMELESS set.
* trans-types.c (gfc_get_array_descriptor_base,
gfc_get_array_type_bounds): Set TYPE_NAMELESS.
* trans-decl.c (gfc_build_qualified_array): Set DECL_NAMELESS
instead of clearing DECL_NAME.
(gfc_build_dummy_array_decl): Set DECL_NAMELESS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162476 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/omp-low.c')
-rw-r--r-- | gcc/omp-low.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/omp-low.c b/gcc/omp-low.c index 723c2a7df3a..3fe94c94999 100644 --- a/gcc/omp-low.c +++ b/gcc/omp-low.c @@ -1563,6 +1563,7 @@ create_omp_child_function (omp_context *ctx, bool task_copy) TREE_STATIC (decl) = 1; TREE_USED (decl) = 1; DECL_ARTIFICIAL (decl) = 1; + DECL_NAMELESS (decl) = 1; DECL_IGNORED_P (decl) = 0; TREE_PUBLIC (decl) = 0; DECL_UNINLINABLE (decl) = 1; @@ -1580,6 +1581,7 @@ create_omp_child_function (omp_context *ctx, bool task_copy) t = build_decl (DECL_SOURCE_LOCATION (decl), PARM_DECL, get_identifier (".omp_data_i"), ptr_type_node); DECL_ARTIFICIAL (t) = 1; + DECL_NAMELESS (t) = 1; DECL_ARG_TYPE (t) = ptr_type_node; DECL_CONTEXT (t) = current_function_decl; TREE_USED (t) = 1; @@ -1592,6 +1594,7 @@ create_omp_child_function (omp_context *ctx, bool task_copy) PARM_DECL, get_identifier (".omp_data_o"), ptr_type_node); DECL_ARTIFICIAL (t) = 1; + DECL_NAMELESS (t) = 1; DECL_ARG_TYPE (t) = ptr_type_node; DECL_CONTEXT (t) = current_function_decl; TREE_USED (t) = 1; @@ -1638,6 +1641,8 @@ scan_omp_parallel (gimple_stmt_iterator *gsi, omp_context *outer_ctx) name = create_tmp_var_name (".omp_data_s"); name = build_decl (gimple_location (stmt), TYPE_DECL, name, ctx->record_type); + DECL_ARTIFICIAL (name) = 1; + DECL_NAMELESS (name) = 1; TYPE_NAME (ctx->record_type) = name; create_omp_child_function (ctx, false); gimple_omp_parallel_set_child_fn (stmt, ctx->cb.dst_fn); @@ -1681,6 +1686,8 @@ scan_omp_task (gimple_stmt_iterator *gsi, omp_context *outer_ctx) name = create_tmp_var_name (".omp_data_s"); name = build_decl (gimple_location (stmt), TYPE_DECL, name, ctx->record_type); + DECL_ARTIFICIAL (name) = 1; + DECL_NAMELESS (name) = 1; TYPE_NAME (ctx->record_type) = name; create_omp_child_function (ctx, false); gimple_omp_task_set_child_fn (stmt, ctx->cb.dst_fn); @@ -1692,6 +1699,8 @@ scan_omp_task (gimple_stmt_iterator *gsi, omp_context *outer_ctx) name = create_tmp_var_name (".omp_data_a"); name = build_decl (gimple_location (stmt), TYPE_DECL, name, ctx->srecord_type); + DECL_ARTIFICIAL (name) = 1; + DECL_NAMELESS (name) = 1; TYPE_NAME (ctx->srecord_type) = name; create_omp_child_function (ctx, true); } @@ -6487,6 +6496,7 @@ lower_omp_taskreg (gimple_stmt_iterator *gsi_p, omp_context *ctx) ctx->sender_decl = create_tmp_var (ctx->srecord_type ? ctx->srecord_type : ctx->record_type, ".omp_data_o"); + DECL_NAMELESS (ctx->sender_decl) = 1; TREE_ADDRESSABLE (ctx->sender_decl) = 1; gimple_omp_taskreg_set_data_arg (stmt, ctx->sender_decl); } |