findloc1s.m4 revision 1.1 1 1.1 mrg dnl Support macros for findloc.
2 1.1 mrg dnl This file is part of the GNU Fortran Runtime Library (libgfortran)
3 1.1 mrg dnl Distributed under the GNU GPL with exception. See COPYING for details.
4 1.1 mrg include(iparm.m4)dnl
5 1.1 mrg define(header1,`extern void findloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
6 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
7 1.1 mrg const 'index_type` * restrict pdim, GFC_LOGICAL_4 back,
8 1.1 mrg gfc_charlen_type len_array, gfc_charlen_type len_value);
9 1.1 mrg export_proto(findloc1_'atype_code`);
10 1.1 mrg
11 1.1 mrg extern void
12 1.1 mrg findloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
13 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
14 1.1 mrg const 'index_type` * restrict pdim, GFC_LOGICAL_4 back,
15 1.1 mrg gfc_charlen_type len_array, gfc_charlen_type len_value)')dnl
16 1.1 mrg dnl
17 1.1 mrg define(header2,`extern void mfindloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
18 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
19 1.1 mrg const 'index_type` * restrict pdim, gfc_array_l1 *const restrict mask,
20 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value);
21 1.1 mrg export_proto(mfindloc1_'atype_code`);
22 1.1 mrg
23 1.1 mrg extern void
24 1.1 mrg mfindloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
25 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
26 1.1 mrg const 'index_type` * restrict pdim, gfc_array_l1 *const restrict mask,
27 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value)')dnl
28 1.1 mrg define(header3,`extern void sfindloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
29 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
30 1.1 mrg const 'index_type` * restrict pdim, GFC_LOGICAL_4 *const restrict mask,
31 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value);
32 1.1 mrg export_proto(sfindloc1_'atype_code`);
33 1.1 mrg
34 1.1 mrg extern void
35 1.1 mrg sfindloc1_'atype_code` (gfc_array_index_type * const restrict retarray,
36 1.1 mrg 'atype` * const restrict array, 'atype_name` *const restrict value,
37 1.1 mrg const 'index_type` * restrict pdim, GFC_LOGICAL_4 *const restrict mask,
38 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value)')dnl
39 1.1 mrg define(comparison,ifelse(atype_kind,4,dnl
40 1.1 mrg `compare_string_char4 (len_array, src, len_value, value) == 0',dnl
41 1.1 mrg `compare_string (len_array, (char *) src, len_value, (char *) value) == 0'))dnl
42 1.1 mrg define(len_arg,`, len_array, len_value')dnl
43 1.1 mrg define(base_mult,`len_array')dnl
44 1.1 mrg include(ifindloc1.m4)dnl
45