From patchwork Fri Dec 31 13:53:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jakub Jelinek X-Patchwork-Id: 1574377 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha256 header.s=default header.b=gB2TROXE; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Received: from sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4JQRTB3lkHz9s0r for ; Sat, 1 Jan 2022 00:54:20 +1100 (AEDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 27CCE3858016 for ; Fri, 31 Dec 2021 13:54:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 27CCE3858016 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1640958858; bh=W4RlfqUprmWfdk3MkVl7CMClTxqq4AckcT92o+TEJz4=; h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=gB2TROXEeFNBo6Zp0IDmoKCwSZGCT2uzTLSsvIVPyexwtj+5vKzLJ4xJwmowfisuB 9cuHj5+I1vH5cSE9YZYY6+sIPwPQM4oovYlB568Z82zAM3j/P1oqdFbhBcPgjeK5eN jKnC+wsuAeUkjKrPl5wgXu8Pvbs/RL98ghbuP8So= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id E763D3858D37 for ; Fri, 31 Dec 2021 13:53:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E763D3858D37 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-524-t5HbV_7lMeWt9LiI90tL_g-1; Fri, 31 Dec 2021 08:53:31 -0500 X-MC-Unique: t5HbV_7lMeWt9LiI90tL_g-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D7B6618B9EC3; Fri, 31 Dec 2021 13:53:29 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.2.16.169]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 486597D3D6; Fri, 31 Dec 2021 13:53:29 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.16.1/8.16.1) with ESMTPS id 1BVDrQ9n1308278 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Fri, 31 Dec 2021 14:53:26 +0100 Received: (from jakub@localhost) by tucnak.zalov.cz (8.16.1/8.16.1/Submit) id 1BVDrPcD1308277; Fri, 31 Dec 2021 14:53:25 +0100 Date: Fri, 31 Dec 2021 14:53:25 +0100 To: Thomas Koenig Subject: [power-ieee128] libgfortran: Small progress on the library side Message-ID: <20211231135325.GG2664@tucnak> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Disposition: inline X-Spam-Status: No, score=-5.5 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Jakub Jelinek via Gcc-patches From: Jakub Jelinek Reply-To: Jakub Jelinek Cc: Michael Meissner , gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Hi! The following patch quiets ../../../libgfortran/generated/in_pack_r17.c:35:1: warning: no previous prototype for ‘internal_pack_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/in_pack_c17.c:35:1: warning: no previous prototype for ‘internal_pack_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/in_unpack_r17.c:33:1: warning: no previous prototype for ‘internal_unpack_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/in_unpack_c17.c:33:1: warning: no previous prototype for ‘internal_unpack_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/pack_r17.c:73:1: warning: no previous prototype for ‘pack_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/pack_c17.c:73:1: warning: no previous prototype for ‘pack_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/unpack_r17.c:34:1: warning: no previous prototype for ‘unpack0_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/unpack_r17.c:178:1: warning: no previous prototype for ‘unpack1_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/unpack_c17.c:34:1: warning: no previous prototype for ‘unpack0_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/unpack_c17.c:178:1: warning: no previous prototype for ‘unpack1_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/spread_r17.c:34:1: warning: no previous prototype for ‘spread_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/spread_r17.c:230:1: warning: no previous prototype for ‘spread_scalar_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/spread_c17.c:34:1: warning: no previous prototype for ‘spread_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/spread_c17.c:230:1: warning: no previous prototype for ‘spread_scalar_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift0_r17.c:33:1: warning: no previous prototype for ‘cshift0_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift0_c17.c:33:1: warning: no previous prototype for ‘cshift0_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_4_r17.c:32:1: warning: no previous prototype for ‘cshift1_4_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_4_c17.c:32:1: warning: no previous prototype for ‘cshift1_4_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_8_r17.c:32:1: warning: no previous prototype for ‘cshift1_8_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_8_c17.c:32:1: warning: no previous prototype for ‘cshift1_8_c17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_16_r17.c:32:1: warning: no previous prototype for ‘cshift1_16_r17’ [-Wmissing-prototypes] ../../../libgfortran/generated/cshift1_16_c17.c:32:1: warning: no previous prototype for ‘cshift1_16_c17’ [-Wmissing-prototypes] warnings during libgfortran build and exports the new entrypoints. Note, not all of them, clearly e.g. there are fewer *_r17* entrypoints than *_r16* entrypoints, so more work is needed. Ok for power-ieee128 branch? 2021-12-31 Jakub Jelinek * libgfortran.h (internal_pack_r17, internal_pack_c17, internal_unpack_r17, internal_unpack_c17, pack_r17, pack_c17, unpack0_r17, unpack0_c17, unpack1_r17, unpack1_c17, spread_r17, spread_c17, spread_scalar_r17, spread_scalar_c17, cshift0_r17, cshift0_c17, cshift1_4_r17, cshift1_8_r17, cshift1_16_r17, cshift1_4_c17, cshift1_8_c17, cshift1_16_c17): Declare. * gfortran.map (GFORTRAN_12): Export *_r17 and *_c17. Jakub --- libgfortran/libgfortran.h +++ libgfortran/libgfortran.h @@ -968,6 +968,11 @@ GFC_REAL_16 *internal_pack_r16 (gfc_array_r16 *); internal_proto(internal_pack_r16); #endif +#if defined HAVE_GFC_REAL_17 +GFC_REAL_17 *internal_pack_r17 (gfc_array_r17 *); +internal_proto(internal_pack_r17); +#endif + GFC_COMPLEX_4 *internal_pack_c4 (gfc_array_c4 *); internal_proto(internal_pack_c4); @@ -984,6 +989,11 @@ GFC_COMPLEX_16 *internal_pack_c16 (gfc_array_c16 *); internal_proto(internal_pack_c16); #endif +#if defined HAVE_GFC_COMPLEX_17 +GFC_COMPLEX_17 *internal_pack_c17 (gfc_array_c17 *); +internal_proto(internal_pack_c17); +#endif + extern void internal_unpack_1 (gfc_array_i1 *, const GFC_INTEGER_1 *); internal_proto(internal_unpack_1); @@ -1017,6 +1027,11 @@ extern void internal_unpack_r16 (gfc_array_r16 *, const GFC_REAL_16 *); internal_proto(internal_unpack_r16); #endif +#if defined HAVE_GFC_REAL_17 +extern void internal_unpack_r17 (gfc_array_r17 *, const GFC_REAL_17 *); +internal_proto(internal_unpack_r17); +#endif + extern void internal_unpack_c4 (gfc_array_c4 *, const GFC_COMPLEX_4 *); internal_proto(internal_unpack_c4); @@ -1033,6 +1048,11 @@ extern void internal_unpack_c16 (gfc_array_c16 *, const GFC_COMPLEX_16 *); internal_proto(internal_unpack_c16); #endif +#if defined HAVE_GFC_COMPLEX_17 +extern void internal_unpack_c17 (gfc_array_c17 *, const GFC_COMPLEX_17 *); +internal_proto(internal_unpack_c17); +#endif + /* Internal auxiliary functions for the pack intrinsic. */ extern void pack_i1 (gfc_array_i1 *, const gfc_array_i1 *, @@ -1077,6 +1097,12 @@ extern void pack_r16 (gfc_array_r16 *, const gfc_array_r16 *, internal_proto(pack_r16); #endif +#ifdef HAVE_GFC_REAL_17 +extern void pack_r17 (gfc_array_r17 *, const gfc_array_r17 *, + const gfc_array_l1 *, const gfc_array_r17 *); +internal_proto(pack_r17); +#endif + extern void pack_c4 (gfc_array_c4 *, const gfc_array_c4 *, const gfc_array_l1 *, const gfc_array_c4 *); internal_proto(pack_c4); @@ -1097,6 +1123,12 @@ extern void pack_c16 (gfc_array_c16 *, const gfc_array_c16 *, internal_proto(pack_c16); #endif +#ifdef HAVE_GFC_REAL_17 +extern void pack_c17 (gfc_array_c17 *, const gfc_array_c17 *, + const gfc_array_l1 *, const gfc_array_c17 *); +internal_proto(pack_c17); +#endif + /* Internal auxiliary functions for the unpack intrinsic. */ extern void unpack0_i1 (gfc_array_i1 *, const gfc_array_i1 *, @@ -1147,6 +1179,14 @@ internal_proto(unpack0_r16); #endif +#ifdef HAVE_GFC_REAL_17 + +extern void unpack0_r17 (gfc_array_r17 *, const gfc_array_r17 *, + const gfc_array_l1 *, const GFC_REAL_17 *); +internal_proto(unpack0_r17); + +#endif + extern void unpack0_c4 (gfc_array_c4 *, const gfc_array_c4 *, const gfc_array_l1 *, const GFC_COMPLEX_4 *); internal_proto(unpack0_c4); @@ -1171,6 +1211,14 @@ internal_proto(unpack0_c16); #endif +#ifdef HAVE_GFC_COMPLEX_17 + +extern void unpack0_c17 (gfc_array_c17 *, const gfc_array_c17 *, + const gfc_array_l1 *, const GFC_COMPLEX_17 *); +internal_proto(unpack0_c17); + +#endif + extern void unpack1_i1 (gfc_array_i1 *, const gfc_array_i1 *, const gfc_array_l1 *, const gfc_array_i1 *); internal_proto(unpack1_i1); @@ -1213,6 +1261,12 @@ extern void unpack1_r16 (gfc_array_r16 *, const gfc_array_r16 *, internal_proto(unpack1_r16); #endif +#ifdef HAVE_GFC_REAL_17 +extern void unpack1_r17 (gfc_array_r17 *, const gfc_array_r17 *, + const gfc_array_l1 *, const gfc_array_r17 *); +internal_proto(unpack1_r17); +#endif + extern void unpack1_c4 (gfc_array_c4 *, const gfc_array_c4 *, const gfc_array_l1 *, const gfc_array_c4 *); internal_proto(unpack1_c4); @@ -1233,6 +1287,12 @@ extern void unpack1_c16 (gfc_array_c16 *, const gfc_array_c16 *, internal_proto(unpack1_c16); #endif +#ifdef HAVE_GFC_COMPLEX_17 +extern void unpack1_c17 (gfc_array_c17 *, const gfc_array_c17 *, + const gfc_array_l1 *, const gfc_array_c17 *); +internal_proto(unpack1_c17); +#endif + /* Helper functions for spread. */ extern void spread_i1 (gfc_array_i1 *, const gfc_array_i1 *, @@ -1280,6 +1340,13 @@ internal_proto(spread_r16); #endif +#ifdef HAVE_GFC_REAL_17 +extern void spread_r17 (gfc_array_r17 *, const gfc_array_r17 *, + const index_type, const index_type); +internal_proto(spread_r17); + +#endif + extern void spread_c4 (gfc_array_c4 *, const gfc_array_c4 *, const index_type, const index_type); internal_proto(spread_c4); @@ -1302,6 +1369,13 @@ internal_proto(spread_c16); #endif +#ifdef HAVE_GFC_COMPLEX_17 +extern void spread_c17 (gfc_array_c17 *, const gfc_array_c17 *, + const index_type, const index_type); +internal_proto(spread_c17); + +#endif + extern void spread_scalar_i1 (gfc_array_i1 *, const GFC_INTEGER_1 *, const index_type, const index_type); internal_proto(spread_scalar_i1); @@ -1347,6 +1421,13 @@ internal_proto(spread_scalar_r16); #endif +#ifdef HAVE_GFC_REAL_17 +extern void spread_scalar_r17 (gfc_array_r17 *, const GFC_REAL_17 *, + const index_type, const index_type); +internal_proto(spread_scalar_r17); + +#endif + extern void spread_scalar_c4 (gfc_array_c4 *, const GFC_COMPLEX_4 *, const index_type, const index_type); internal_proto(spread_scalar_c4); @@ -1369,6 +1450,13 @@ internal_proto(spread_scalar_c16); #endif +#ifdef HAVE_GFC_COMPLEX_17 +extern void spread_scalar_c17 (gfc_array_c17 *, const GFC_COMPLEX_17 *, + const index_type, const index_type); +internal_proto(spread_scalar_c17); + +#endif + /* string_intrinsics.c */ extern int compare_string (gfc_charlen_type, const char *, @@ -1460,6 +1548,11 @@ void cshift0_r16 (gfc_array_r16 *, const gfc_array_r16 *, ptrdiff_t, int); internal_proto(cshift0_r16); #endif +#ifdef HAVE_GFC_REAL_17 +void cshift0_r17 (gfc_array_r17 *, const gfc_array_r17 *, ptrdiff_t, int); +internal_proto(cshift0_r17); +#endif + void cshift0_c4 (gfc_array_c4 *, const gfc_array_c4 *, ptrdiff_t, int); internal_proto(cshift0_c4); @@ -1476,6 +1569,11 @@ void cshift0_c16 (gfc_array_c16 *, const gfc_array_c16 *, ptrdiff_t, int); internal_proto(cshift0_c16); #endif +#ifdef HAVE_GFC_COMPLEX_17 +void cshift0_c17 (gfc_array_c17 *, const gfc_array_c17 *, ptrdiff_t, int); +internal_proto(cshift0_c17); +#endif + #if defined (HAVE_GFC_INTEGER_4) && defined (HAVE_GFC_INTEGER_1) void cshift1_4_i1 (gfc_array_i1 * const restrict, const gfc_array_i1 * const restrict, @@ -1628,6 +1726,14 @@ void cshift1_4_r16 (gfc_array_r16 * const restrict, internal_proto(cshift1_4_r16); #endif +#if defined (HAVE_GFC_INTEGER_4) && defined (HAVE_GFC_REAL_17) +void cshift1_4_r17 (gfc_array_r17 * const restrict, + const gfc_array_r17 * const restrict, + const gfc_array_i4 * const restrict, + const GFC_INTEGER_4 * const restrict); +internal_proto(cshift1_4_r17); +#endif + #if defined (HAVE_GFC_INTEGER_8) && defined (HAVE_GFC_REAL_4) void cshift1_8_r4 (gfc_array_r4 * const restrict, const gfc_array_r4 * const restrict, @@ -1660,6 +1766,14 @@ void cshift1_8_r16 (gfc_array_r16 * const restrict, internal_proto(cshift1_8_r16); #endif +#if defined (HAVE_GFC_INTEGER_8) && defined (HAVE_GFC_REAL_17) +void cshift1_8_r17 (gfc_array_r17 * const restrict, + const gfc_array_r17 * const restrict, + const gfc_array_i8 * const restrict, + const GFC_INTEGER_8 * const restrict); +internal_proto(cshift1_8_r17); +#endif + #if defined (HAVE_GFC_INTEGER_16) && defined (HAVE_GFC_REAL_4) void cshift1_16_r4 (gfc_array_r4 * const restrict, const gfc_array_r4 * const restrict, @@ -1692,6 +1806,14 @@ void cshift1_16_r16 (gfc_array_r16 * const restrict, internal_proto(cshift1_16_r16); #endif +#if defined (HAVE_GFC_INTEGER_16) && defined (HAVE_GFC_REAL_17) +void cshift1_16_r17 (gfc_array_r17 * const restrict, + const gfc_array_r17 * const restrict, + const gfc_array_i16 * const restrict, + const GFC_INTEGER_16 * const restrict); +internal_proto(cshift1_16_r17); +#endif + #if defined (HAVE_GFC_INTEGER_4) && defined (HAVE_GFC_COMPLEX_4) void cshift1_4_c4 (gfc_array_c4 * const restrict, const gfc_array_c4 * const restrict, @@ -1724,6 +1846,14 @@ void cshift1_4_c16 (gfc_array_c16 * const restrict, internal_proto(cshift1_4_c16); #endif +#if defined (HAVE_GFC_INTEGER_4) && defined (HAVE_GFC_COMPLEX_17) +void cshift1_4_c17 (gfc_array_c17 * const restrict, + const gfc_array_c17 * const restrict, + const gfc_array_i4 * const restrict, + const GFC_INTEGER_4 * const restrict); +internal_proto(cshift1_4_c17); +#endif + #if defined (HAVE_GFC_INTEGER_8) && defined (HAVE_GFC_COMPLEX_4) void cshift1_8_c4 (gfc_array_c4 * const restrict, const gfc_array_c4 * const restrict, @@ -1756,6 +1886,14 @@ void cshift1_8_c16 (gfc_array_c16 * const restrict, internal_proto(cshift1_8_c16); #endif +#if defined (HAVE_GFC_INTEGER_8) && defined (HAVE_GFC_COMPLEX_17) +void cshift1_8_c17 (gfc_array_c17 * const restrict, + const gfc_array_c17 * const restrict, + const gfc_array_i8 * const restrict, + const GFC_INTEGER_8 * const restrict); +internal_proto(cshift1_8_c17); +#endif + #if defined (HAVE_GFC_INTEGER_16) && defined (HAVE_GFC_COMPLEX_4) void cshift1_16_c4 (gfc_array_c4 * const restrict, const gfc_array_c4 * const restrict, @@ -1788,6 +1926,14 @@ void cshift1_16_c16 (gfc_array_c16 * const restrict, internal_proto(cshift1_16_c16); #endif +#if defined (HAVE_GFC_INTEGER_16) && defined (HAVE_GFC_COMPLEX_17) +void cshift1_16_c17 (gfc_array_c17 * const restrict, + const gfc_array_c17 * const restrict, + const gfc_array_i16 * const restrict, + const GFC_INTEGER_16 * const restrict); +internal_proto(cshift1_16_c17); +#endif + /* Prototypes for the POWER __ieee128 functions. */ #ifdef POWER_IEEE128 extern __float128 __acoshieee128 (__float128) __attribute__ ((__nothrow__, __leaf__)); --- libgfortran/gfortran.map +++ libgfortran/gfortran.map @@ -1633,4 +1633,119 @@ GFORTRAN_10.2 { GFORTRAN_12 { global: _gfortran_caf_random_init; + _gfortran_arandom_r17; + _gfortran_bessel_jn_r17; + _gfortran_bessel_yn_r17; + _gfortran_cosd_r17; + _gfortran_erfc_scaled_r17; + _gfortran_findloc0_r17; + _gfortran_findloc1_r17; + _gfortran_matmul_r17; + _gfortran_maxloc0_16_r17; + _gfortran_maxloc0_4_r17; + _gfortran_maxloc0_8_r17; + _gfortran_maxloc1_16_r17; + _gfortran_maxloc1_4_r17; + _gfortran_maxloc1_8_r17; + _gfortran_maxval_r17; + _gfortran_mfindloc0_r17; + _gfortran_mfindloc1_r17; + _gfortran_minloc0_16_r17; + _gfortran_minloc0_4_r17; + _gfortran_minloc0_8_r17; + _gfortran_minloc1_16_r17; + _gfortran_minloc1_4_r17; + _gfortran_minloc1_8_r17; + _gfortran_minval_r17; + _gfortran_mmaxloc0_16_r17; + _gfortran_mmaxloc0_4_r17; + _gfortran_mmaxloc0_8_r17; + _gfortran_mmaxloc1_16_r17; + _gfortran_mmaxloc1_4_r17; + _gfortran_mmaxloc1_8_r17; + _gfortran_mmaxval_r17; + _gfortran_mminloc0_16_r17; + _gfortran_mminloc0_4_r17; + _gfortran_mminloc0_8_r17; + _gfortran_mminloc1_16_r17; + _gfortran_mminloc1_4_r17; + _gfortran_mminloc1_8_r17; + _gfortran_mminval_r17; + _gfortran_mproduct_r17; + _gfortran_msum_r17; + _gfortran_norm2_r17; + _gfortran_pow_r17_i16; + _gfortran_pow_r17_i4; + _gfortran_pow_r17_i8; + _gfortran_product_r17; + _gfortran_random_r17; + _gfortran_reshape_r17; + _gfortran_sfindloc0_r17; + _gfortran_sfindloc1_r17; + _gfortran_sind_r17; + _gfortran_smaxloc0_16_r17; + _gfortran_smaxloc0_4_r17; + _gfortran_smaxloc0_8_r17; + _gfortran_smaxloc1_16_r17; + _gfortran_smaxloc1_4_r17; + _gfortran_smaxloc1_8_r17; + _gfortran_smaxval_r17; + _gfortran_sminloc0_16_r17; + _gfortran_sminloc0_4_r17; + _gfortran_sminloc0_8_r17; + _gfortran_sminloc1_16_r17; + _gfortran_sminloc1_4_r17; + _gfortran_sminloc1_8_r17; + _gfortran_sminval_r17; + _gfortran_specific__abs_r17; + _gfortran_specific__acosh_r17; + _gfortran_specific__acos_r17; + _gfortran_specific__aint_r17; + _gfortran_specific__anint_r17; + _gfortran_specific__asinh_r17; + _gfortran_specific__asin_r17; + _gfortran_specific__atan2_r17; + _gfortran_specific__atanh_r17; + _gfortran_specific__atan_r17; + _gfortran_specific__cosh_r17; + _gfortran_specific__cos_r17; + _gfortran_specific__dim_r17; + _gfortran_specific__exp_r17; + _gfortran_specific__log10_r17; + _gfortran_specific__log_r17; + _gfortran_specific__mod_r17; + _gfortran_specific__sign_r17; + _gfortran_specific__sinh_r17; + _gfortran_specific__sin_r17; + _gfortran_specific__sqrt_r17; + _gfortran_specific__tanh_r17; + _gfortran_specific__tan_r17; + _gfortran_sproduct_r17; + _gfortran_ssum_r17; + _gfortran_sum_r17; + _gfortran_tand_r17; + _gfortran_findloc0_c17; + _gfortran_findloc1_c17; + _gfortran_matmul_c17; + _gfortran_mfindloc0_c17; + _gfortran_mfindloc1_c17; + _gfortran_mproduct_c17; + _gfortran_msum_c17; + _gfortran_pow_c17_i16; + _gfortran_pow_c17_i4; + _gfortran_pow_c17_i8; + _gfortran_product_c17; + _gfortran_reshape_c17; + _gfortran_sfindloc0_c17; + _gfortran_sfindloc1_c17; + _gfortran_specific__abs_c17; + _gfortran_specific__aimag_c17; + _gfortran_specific__cos_c17; + _gfortran_specific__exp_c17; + _gfortran_specific__log_c17; + _gfortran_specific__sin_c17; + _gfortran_specific__sqrt_c17; + _gfortran_sproduct_c17; + _gfortran_ssum_c17; + _gfortran_sum_c17; } GFORTRAN_10.2;