Hi all,
committed the cosmetics patch as r238635.
Regards,
Andre
On Thu, 21 Jul 2016 14:57:32 +0200
Andre Vehreschild <[email protected]> wrote:
> Hi all,
>
> the attached patch fixes some style issues in the caf code recently
> modified. Furthermore does it correct the function specifications of
> caf_get() and caf_send() that where missing some specifiers.
>
> Bootstrapped and regtested ok on x86_64-linux/F23. If noone objects I
> commit this patch as obvious tomorrow.
>
> In my pipeline is a patch that will add stat= support to the libcaf
> interface and caf_single.
>
> Regards,
> Andre
>
> On Tue, 5 Jul 2016 09:33:49 -0600
> Alessandro Fanfarillo <[email protected]> wrote:
>
> > Thanks, committed as rev. 238007.
> >
> > 2016-07-04 14:41 GMT-06:00 Mikael Morin <[email protected]>:
> > > Le 30/06/2016 06:05, Alessandro Fanfarillo a écrit :
> > >>
> > >> Dear Mikael,
> > >>
> > >> thanks for your review and for the test. The attached patch,
> > >> built and regtested for x86_64-pc-linux-gnu, addresses all the
> > >> suggestions.
> > >>
> > >> The next patch will change the documentation related to the
> > >> caf_get and caf_send functions and will add support for STAT= to
> > >> the sendget function.
> > >>
> > >> In the meantime, is this patch OK for trunk?
> > >>
> > > Yes, thanks.
> > >
> > > Mikael
> > >
> > >
>
>
--
Andre Vehreschild * Email: vehre ad gmx dot de
Index: gcc/fortran/ChangeLog
===================================================================
--- gcc/fortran/ChangeLog (Revision 238631)
+++ gcc/fortran/ChangeLog (Arbeitskopie)
@@ -1,3 +1,13 @@
+2016-07-22 Andre Vehreschild <[email protected]>
+
+ * expr.c (gfc_find_stat_co): Fixed whitespaces.
+ * gfortran.texi: Fixed typos and reversed meaning of caf_get()'s
+ src and dst description.
+ * trans-decl.c (gfc_build_builtin_function_decls): Fixed style
+ and corrected fnspec for caf functions.
+ * trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Fixed style.
+ (conv_caf_send): Dito.
+
2016-07-19 Thomas Koenig <[email protected]>
PR fortran/71902
Index: gcc/fortran/expr.c
===================================================================
--- gcc/fortran/expr.c (Revision 238631)
+++ gcc/fortran/expr.c (Arbeitskopie)
@@ -4437,9 +4437,9 @@
if (ref->type == REF_ARRAY && ref->u.ar.codimen > 0)
return ref->u.ar.stat;
- if(e->value.function.actual->expr)
- for(ref = e->value.function.actual->expr->ref; ref;
- ref = ref->next)
+ if (e->value.function.actual->expr)
+ for (ref = e->value.function.actual->expr->ref; ref;
+ ref = ref->next)
if (ref->type == REF_ARRAY && ref->u.ar.codimen > 0)
return ref->u.ar.stat;
Index: gcc/fortran/gfortran.texi
===================================================================
--- gcc/fortran/gfortran.texi (Revision 238631)
+++ gcc/fortran/gfortran.texi (Arbeitskopie)
@@ -3799,7 +3799,7 @@
number.
@item @var{dest} @tab intent(in) Array descriptor for the remote image for the
bounds and the size. The base_addr shall not be accessed.
-@item @var{dst_vector} @tab intent(int) If not NULL, it contains the vector
+@item @var{dst_vector} @tab intent(in) If not NULL, it contains the vector
subscript of the destination array; the values are relative to the dimension
triplet of the dest argument.
@item @var{src} @tab intent(in) Array descriptor of the local array to be
@@ -3839,7 +3839,7 @@
image identified by the image_index.
@item @emph{Syntax}:
-@code{void _gfortran_caf_get_desc (caf_token_t token, size_t offset,
+@code{void _gfortran_caf_get (caf_token_t token, size_t offset,
int image_index, gfc_descriptor_t *src, caf_vector_t *src_vector,
gfc_descriptor_t *dest, int src_kind, int dst_kind, bool may_require_tmp)}
@@ -3850,13 +3850,13 @@
compared to the base address of the coarray.
@item @var{image_index} @tab The ID of the remote image; must be a positive
number.
-@item @var{dest} @tab intent(in) Array descriptor of the local array to be
-transferred to the remote image
+@item @var{dest} @tab intent(out) Array descriptor of the local array to store
+the data transferred from the remote image
@item @var{src} @tab intent(in) Array descriptor for the remote image for the
bounds and the size. The base_addr shall not be accessed.
-@item @var{src_vector} @tab intent(int) If not NULL, it contains the vector
-subscript of the destination array; the values are relative to the dimension
-triplet of the dest argument.
+@item @var{src_vector} @tab intent(in) If not NULL, it contains the vector
+subscript of the source array; the values are relative to the dimension
+triplet of the src argument.
@item @var{dst_kind} @tab Kind of the destination argument
@item @var{src_kind} @tab Kind of the source argument
@item @var{may_require_tmp} @tab The variable is false it is known at compile
Index: gcc/fortran/trans-decl.c
===================================================================
--- gcc/fortran/trans-decl.c (Revision 238631)
+++ gcc/fortran/trans-decl.c (Arbeitskopie)
@@ -3538,38 +3538,38 @@
= build_pointer_type (build_pointer_type (pchar_type_node));
gfor_fndecl_caf_init = gfc_build_library_function_decl (
- get_identifier (PREFIX("caf_init")), void_type_node,
- 2, pint_type, pppchar_type);
+ get_identifier (PREFIX("caf_init")), void_type_node,
+ 2, pint_type, pppchar_type);
gfor_fndecl_caf_finalize = gfc_build_library_function_decl (
get_identifier (PREFIX("caf_finalize")), void_type_node, 0);
gfor_fndecl_caf_this_image = gfc_build_library_function_decl (
- get_identifier (PREFIX("caf_this_image")), integer_type_node,
- 1, integer_type_node);
+ get_identifier (PREFIX("caf_this_image")), integer_type_node,
+ 1, integer_type_node);
gfor_fndecl_caf_num_images = gfc_build_library_function_decl (
- get_identifier (PREFIX("caf_num_images")), integer_type_node,
- 2, integer_type_node, integer_type_node);
+ get_identifier (PREFIX("caf_num_images")), integer_type_node,
+ 2, integer_type_node, integer_type_node);
gfor_fndecl_caf_register = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_register")), "...WWW", pvoid_type_node, 6,
- size_type_node, integer_type_node, ppvoid_type_node, pint_type,
- pchar_type_node, integer_type_node);
+ size_type_node, integer_type_node, ppvoid_type_node, pint_type,
+ pchar_type_node, integer_type_node);
gfor_fndecl_caf_deregister = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_deregister")), ".WWW", void_type_node, 4,
- ppvoid_type_node, pint_type, pchar_type_node, integer_type_node);
+ ppvoid_type_node, pint_type, pchar_type_node, integer_type_node);
gfor_fndecl_caf_get = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_get")), ".R.RRRWW", void_type_node, 10,
- pvoid_type_node, size_type_node, integer_type_node, pvoid_type_node,
+ get_identifier (PREFIX("caf_get")), ".R.RRWRRRW", void_type_node, 10,
+ pvoid_type_node, size_type_node, integer_type_node, pvoid_type_node,
pvoid_type_node, pvoid_type_node, integer_type_node, integer_type_node,
boolean_type_node, pint_type);
gfor_fndecl_caf_send = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_send")), ".R.RRRRW", void_type_node, 10,
- pvoid_type_node, size_type_node, integer_type_node, pvoid_type_node,
+ get_identifier (PREFIX("caf_send")), ".R.RRRRRRW", void_type_node, 10,
+ pvoid_type_node, size_type_node, integer_type_node, pvoid_type_node,
pvoid_type_node, pvoid_type_node, integer_type_node, integer_type_node,
boolean_type_node, pint_type);
@@ -3606,14 +3606,14 @@
TREE_THIS_VOLATILE (gfor_fndecl_caf_error_stop_str) = 1;
gfor_fndecl_caf_stop_numeric = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_stop_numeric")), ".R.",
- void_type_node, 1, gfc_int4_type_node);
+ get_identifier (PREFIX("caf_stop_numeric")), ".R.",
+ void_type_node, 1, gfc_int4_type_node);
/* CAF's STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_stop_numeric) = 1;
gfor_fndecl_caf_stop_str = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_stop_str")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ get_identifier (PREFIX("caf_stop_str")), ".R.",
+ void_type_node, 2, pchar_type_node, gfc_int4_type_node);
/* CAF's STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_stop_str) = 1;
@@ -3620,17 +3620,17 @@
gfor_fndecl_caf_atomic_def = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_atomic_define")), "R..RW",
void_type_node, 7, pvoid_type_node, size_type_node, integer_type_node,
- pvoid_type_node, pint_type, integer_type_node, integer_type_node);
+ pvoid_type_node, pint_type, integer_type_node, integer_type_node);
gfor_fndecl_caf_atomic_ref = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_atomic_ref")), "R..WW",
void_type_node, 7, pvoid_type_node, size_type_node, integer_type_node,
- pvoid_type_node, pint_type, integer_type_node, integer_type_node);
+ pvoid_type_node, pint_type, integer_type_node, integer_type_node);
gfor_fndecl_caf_atomic_cas = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_atomic_cas")), "R..WRRW",
void_type_node, 9, pvoid_type_node, size_type_node, integer_type_node,
- pvoid_type_node, pvoid_type_node, pvoid_type_node, pint_type,
+ pvoid_type_node, pvoid_type_node, pvoid_type_node, pint_type,
integer_type_node, integer_type_node);
gfor_fndecl_caf_atomic_op = gfc_build_library_function_decl_with_spec (
@@ -3682,7 +3682,7 @@
gfor_fndecl_co_reduce = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_reduce")), "W.R.WW",
void_type_node, 8, pvoid_type_node,
- build_pointer_type (build_varargs_function_type_list (void_type_node,
+ build_pointer_type (build_varargs_function_type_list (void_type_node,
NULL_TREE)),
integer_type_node, integer_type_node, pint_type, pchar_type_node,
integer_type_node, integer_type_node);
Index: gcc/fortran/trans-intrinsic.c
===================================================================
--- gcc/fortran/trans-intrinsic.c (Revision 238631)
+++ gcc/fortran/trans-intrinsic.c (Arbeitskopie)
@@ -1122,12 +1122,12 @@
dst_var = lhs;
vec = null_pointer_node;
- tmp_stat = gfc_find_stat_co(expr);
+ tmp_stat = gfc_find_stat_co (expr);
if (tmp_stat)
{
gfc_se stat_se;
- gfc_init_se(&stat_se, NULL);
+ gfc_init_se (&stat_se, NULL);
gfc_conv_expr_reference (&stat_se, tmp_stat);
stat = stat_se.expr;
gfc_add_block_to_block (&se->pre, &stat_se.pre);
@@ -1225,7 +1225,7 @@
may_require_tmp = boolean_false_node;
/* It guarantees memory consistency within the same segment */
- tmp = gfc_build_string_const (strlen ("memory")+1, "memory"),
+ tmp = gfc_build_string_const (strlen ("memory") + 1, "memory"),
tmp = build5_loc (input_location, ASM_EXPR, void_type_node,
gfc_build_string_const (1, ""), NULL_TREE, NULL_TREE,
tree_cons (NULL_TREE, tmp, NULL_TREE), NULL_TREE);
@@ -1390,7 +1390,7 @@
rhs_kind = build_int_cst (integer_type_node, rhs_expr->ts.kind);
- tmp_stat = gfc_find_stat_co(lhs_expr);
+ tmp_stat = gfc_find_stat_co (lhs_expr);
if (tmp_stat)
{
@@ -1414,8 +1414,8 @@
tree rhs_token, rhs_offset, rhs_image_index;
/* It guarantees memory consistency within the same segment */
- tmp = gfc_build_string_const (strlen ("memory")+1, "memory"),
- tmp = build5_loc (input_location, ASM_EXPR, void_type_node,
+ tmp = gfc_build_string_const (strlen ("memory") + 1, "memory"),
+ tmp = build5_loc (input_location, ASM_EXPR, void_type_node,
gfc_build_string_const (1, ""), NULL_TREE, NULL_TREE,
tree_cons (NULL_TREE, tmp, NULL_TREE), NULL_TREE);
ASM_VOLATILE_P (tmp) = 1;
@@ -1438,7 +1438,7 @@
gfc_add_block_to_block (&block, &rhs_se.post);
/* It guarantees memory consistency within the same segment */
- tmp = gfc_build_string_const (strlen ("memory")+1, "memory"),
+ tmp = gfc_build_string_const (strlen ("memory") + 1, "memory"),
tmp = build5_loc (input_location, ASM_EXPR, void_type_node,
gfc_build_string_const (1, ""), NULL_TREE, NULL_TREE,
tree_cons (NULL_TREE, tmp, NULL_TREE), NULL_TREE);