aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/generated/maxloc1_4_s1.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgfortran/generated/maxloc1_4_s1.c')
-rw-r--r--libgfortran/generated/maxloc1_4_s1.c28
1 files changed, 22 insertions, 6 deletions
diff --git a/libgfortran/generated/maxloc1_4_s1.c b/libgfortran/generated/maxloc1_4_s1.c
index a882a7b..b7b7d8c 100644
--- a/libgfortran/generated/maxloc1_4_s1.c
+++ b/libgfortran/generated/maxloc1_4_s1.c
@@ -28,7 +28,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#if defined (HAVE_GFC_INTEGER_1) && defined (HAVE_GFC_INTEGER_4)
+#define HAVE_BACK_ARG 1
+
#include <string.h>
+#include <assert.h>
static inline int
compare_fcn (const GFC_INTEGER_1 *a, const GFC_INTEGER_1 *b, gfc_charlen_type n)
@@ -40,14 +43,15 @@ compare_fcn (const GFC_INTEGER_1 *a, const GFC_INTEGER_1 *b, gfc_charlen_type n)
}
extern void maxloc1_4_s1 (gfc_array_i4 * const restrict,
- gfc_array_s1 * const restrict, const index_type * const restrict,
+ gfc_array_s1 * const restrict, const index_type * const restrict , GFC_LOGICAL_4 back,
gfc_charlen_type);
export_proto(maxloc1_4_s1);
void
maxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
gfc_array_s1 * const restrict array,
- const index_type * const restrict pdim, gfc_charlen_type string_len)
+ const index_type * const restrict pdim, GFC_LOGICAL_4 back,
+ gfc_charlen_type string_len)
{
index_type count[GFC_MAX_DIMENSIONS];
index_type extent[GFC_MAX_DIMENSIONS];
@@ -62,6 +66,10 @@ maxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
index_type dim;
int continue_loop;
+#ifdef HAVE_BACK_ARG
+ assert(back == 0);
+#endif
+
/* Make dim zero based to avoid confusion. */
rank = GFC_DESCRIPTOR_RANK (array) - 1;
dim = (*pdim) - 1;
@@ -210,14 +218,15 @@ maxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
extern void mmaxloc1_4_s1 (gfc_array_i4 * const restrict,
gfc_array_s1 * const restrict, const index_type * const restrict,
- gfc_array_l1 * const restrict, gfc_charlen_type);
+ gfc_array_l1 * const restrict, GFC_LOGICAL_4 back, gfc_charlen_type);
export_proto(mmaxloc1_4_s1);
void
mmaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
gfc_array_s1 * const restrict array,
const index_type * const restrict pdim,
- gfc_array_l1 * const restrict mask, gfc_charlen_type string_len)
+ gfc_array_l1 * const restrict mask, GFC_LOGICAL_4 back,
+ gfc_charlen_type string_len)
{
index_type count[GFC_MAX_DIMENSIONS];
index_type extent[GFC_MAX_DIMENSIONS];
@@ -235,6 +244,9 @@ mmaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
index_type mdelta;
int mask_kind;
+#ifdef HAVE_BACK_ARG
+ assert (back == 0);
+#endif
dim = (*pdim) - 1;
rank = GFC_DESCRIPTOR_RANK (array) - 1;
@@ -411,14 +423,14 @@ mmaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
extern void smaxloc1_4_s1 (gfc_array_i4 * const restrict,
gfc_array_s1 * const restrict, const index_type * const restrict,
- GFC_LOGICAL_4 *, gfc_charlen_type);
+ GFC_LOGICAL_4 *, GFC_LOGICAL_4 back, gfc_charlen_type);
export_proto(smaxloc1_4_s1);
void
smaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
gfc_array_s1 * const restrict array,
const index_type * const restrict pdim,
- GFC_LOGICAL_4 * mask, gfc_charlen_type string_len)
+ GFC_LOGICAL_4 * mask , GFC_LOGICAL_4 back, gfc_charlen_type string_len)
{
index_type count[GFC_MAX_DIMENSIONS];
index_type extent[GFC_MAX_DIMENSIONS];
@@ -431,7 +443,11 @@ smaxloc1_4_s1 (gfc_array_i4 * const restrict retarray,
if (*mask)
{
+#ifdef HAVE_BACK_ARG
+ maxloc1_4_s1 (retarray, array, pdim, back, string_len);
+#else
maxloc1_4_s1 (retarray, array, pdim, string_len);
+#endif
return;
}
/* Make dim zero based to avoid confusion. */