From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by sourceware.org (Postfix) with ESMTPS id 7D10A3857817; Sat, 9 Oct 2021 09:19:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7D10A3857817 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=googlemail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=googlemail.com Received: by mail-wr1-x432.google.com with SMTP id r10so37158955wra.12; Sat, 09 Oct 2021 02:19:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=Tny3+NchPkCgRoFrO3Qv2ScwLFJZK1uBlyxF914smCg=; b=Q27iC+OGoKKm4nC2DMO5fw+j6qpfW0HqM77Ed7MZuHltTfdWBLFM7e1mgvpXO6olo5 uYy5Qtb851+50TbTDXQYOzz41+gJ2IQhOy2aiNPGZTcjJTVWEGR6jH94okQA6hBIrhcb cVSAxmlFLJDP0AShPuB6ZZzDN/F4JXRtbwfUbxj6DuZhXqAwTYBx8CRKBw98Y/tK30Zh GhsMX61sgHqTfvgZcRbDS3s/fpFIMNUfga0MaF1Yt0uElXPvA2lAb0wrrJIsysAYPf2h UO42zpBYdEN/PLkqAPscL6gV5vodkw2AoKGWhhdWRrXzekMw5V1iQUZKR3gOSbkh6aad ZZqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=Tny3+NchPkCgRoFrO3Qv2ScwLFJZK1uBlyxF914smCg=; b=EpGzHvxG+pg5MFnDcG3Q4EpFYFhScqDEiFFCQuzq+leee9wDxAZT3HXinxtBYCmAuh J8ovx6Kttj22X/ZGeduPXPcyel92koz+q99XL54yStlwSzzWLC/A8xES1JBRd6XphdfD Y1kBs4L5yB2hR5NKl520aHTQwMjc5G+BBpD6gO6yWdHD4ioZAmews/nePnuqAidzomyu U8Fo77uyjz2YtBQT1jFfzlTZh46qZCLGa6eEE9DgRQr9OTNQHay3ARRjckvzeeIfdQe4 kwRbsdcUodTiGdJGBbnM4JLBzALiYPrCe/e5YQYscK8Cojb7NlDdtZ5daWzhVSvkdBmc mLvQ== X-Gm-Message-State: AOAM531JKbn08vuETmGhB8QYsF8w6Uv1629E9LlQKCsSH5sqvXqqdbZm KWInc+95nYzETMoVdJwbFEE= X-Google-Smtp-Source: ABdhPJzlcuyWE3j+kZAkPHRHzR8k9W9wMRc/8MuTKifH57MhVN+qq3NgfT5/0daDPcKRYgZknWv1Rw== X-Received: by 2002:a7b:cc14:: with SMTP id f20mr8500220wmh.137.1633771153343; Sat, 09 Oct 2021 02:19:13 -0700 (PDT) Received: from [192.168.1.214] (host81-138-1-83.in-addr.btopenworld.com. [81.138.1.83]) by smtp.googlemail.com with ESMTPSA id t14sm29540wrr.75.2021.10.09.02.19.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 09 Oct 2021 02:19:12 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.21\)) Subject: Re: libgfortran.so SONAME and powerpc64le-linux ABI changes From: Iain Sandoe In-Reply-To: <35952312-20ce-dd8c-aceb-6a5efd8b16c2@netcologne.de> Date: Sat, 9 Oct 2021 10:19:10 +0100 Cc: Jakub Jelinek , Michael Meissner , Paul Thomas , Segher Boessenkool , GCC Development , fortran@gcc.gnu.org, Tobias Burnus Content-Transfer-Encoding: quoted-printable Message-Id: References: <20211004100754.GL304296@tucnak> <3dacfdf6-6b23-f307-969a-94265b506edb@netcologne.de> <20211007153306.GY304296@tucnak> <5533983c-f4d2-5041-75c9-9287e4e31f10@netcologne.de> <749ABCA1-5C3B-4EB8-8E4F-9B967A67AB07@googlemail.com> <334901cf-72b6-d1d7-dae6-3ec45170cf95@netcologne.de> <35952312-20ce-dd8c-aceb-6a5efd8b16c2@netcologne.de> To: Thomas Koenig X-Mailer: Apple Mail (2.3445.104.21) X-Spam-Status: No, score=-3.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, 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: fortran@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Fortran mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Oct 2021 09:19:15 -0000 > On 9 Oct 2021, at 10:11, Thomas Koenig wrote: >=20 >=20 > On 09.10.21 01:18, Iain Sandoe wrote: >>> I meant the case where the user writes, with an old, KIND=3D16 is = double >>> double compiler, >>>=20 >>> subroutine foo(a) >>> real(kind=3D16) :: a >>> a =3D a + 1._16 >>> end subroutine foo >>>=20 >>> and puts it in a library or an old object file, and in new code with = an >>> IEEE QP compiler calls that with >>>=20 >>> real(kind=3D16) :: a >>> a =3D 2._16 >>> call foo(a) >>> print *,a >>>=20 >>> this will result in silent generation of garbage values, since = Fortran >>> does not mangle the function name based on it types. For both cases, = the >>> subroutine will be called foo_ (or MOD..._foo). >> hmm, well I thought about that case, but =E2=80=A6 isn=E2=80=99t = this =E2=80=9Cpilot error=E2=80=9D? >> if one compiles different parts of a project with incompatible = command line options=E2=80=A6 >> =E2=80=A6 or, say, compile with -mavx512 and then try to run code on = hardware without >> such a vector unit? >> Getting wrong answers silently can likely be done with other command = line >> option mismatches. >=20 > Again, it depends. >=20 > What I was thinking about what a scenario where we do not change the > SONAME on POWER and rely on name mangling to get to the correct = version > of a libgfortran library function. That could work, but it would not > work for user procedures. What I=E2=80=99m missing is why it has to. IF the user wants to use old (or not-owned) code compiled for = double-double, then she must select a command-line option to use that on Power(New). Else The user recompiles all the code in her project to use the new shiny QP. I doubt there=E2=80=99s a way for this to proceed in a way that a user = of Power (New) can avoid having to think it through - a new library SO name won=E2=80=99t = help them with the interop with thier own (or not owned) code. > I have thought of mangling the name of all user Fortran procedures > which contain a reference to an IEEE QP in their argument list, like > _foo%QP, but that would fall down for C interop. So, no luck there. agreed, I did the same thought exercise.=20 > So, a new SONAME at least on POWER is mandatory, I think. >=20 > The question is still if we can avoid a new SONAME for >99% of our = users > for no gain at all for them. Is there a possibility of aliasing the > SONAME somehow (grasping at straws here)? >=20 > Best regards >=20 > Thomas