From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: redhat.com, ip: 209.132.183.28, mailfrom: lersek@redhat.com) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by groups.io with SMTP; Tue, 28 May 2019 04:29:21 -0700 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 374AE81E03; Tue, 28 May 2019 11:29:17 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-218.rdu2.redhat.com [10.10.120.218]) by smtp.corp.redhat.com (Postfix) with ESMTP id BB3FF2708A; Tue, 28 May 2019 11:29:15 +0000 (UTC) Subject: Re: [PATCH v2 0/7] update ArmSoftFloatLib to latest upstream version To: Ard Biesheuvel , devel@edk2.groups.io Cc: "Gao, Liming" , "Wang, Jian J" , Leif Lindholm , Michael D Kinney References: <20190527205141.12344-1-ard.biesheuvel@linaro.org> From: "Laszlo Ersek" Message-ID: Date: Tue, 28 May 2019 13:29:14 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20190527205141.12344-1-ard.biesheuvel@linaro.org> X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Tue, 28 May 2019 11:29:17 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 05/27/19 22:51, Ard Biesheuvel wrote: > Currently, our move to OpenSSL 1.1.1b is being blocked by an issue in > the ARM software floating point library, which lacks some intrinsics > that the ARM EABI spec defines. > > Since the code was in pretty sorry state, let's fix this by upgrading > to the very latest version of the core library this code is based on, > dated January 2018 (whereas the NetBSD fork of the old code dates back > to 2002) > > Note that this drops support for RVCT, but this toolchain is untested > and will likely be removed. [0] > > Code can be found here: > https://github.com/ardbiesheuvel/edk2/tree/arm-softfloat-upgrade-v2 > > Changes since v1: > - Update the INLINE macro to pass __attribute__((always_inline)), to work > around a build issue that occurs when optimization is disabled. > - Add a patch to remove the unused files. As it turns out, 385 of the ~450 > files are unused (which is a lot more than Laszlo reported), and so it > makes sense to merge patch #4 into patch #1 > - Add a patch to add SPDX identifiers to the files that we are keeping (#5). > This patch can be merged into #1 as well. > - Add patches to work around issues that prevent the new code to build with > Clang. Patch #6 is actually related to the OpenSSL upgrade, while patch #7 > is related to Clang 7 (and has been posted already 6 months ago) > > Note that another issue popped up, which affects the OpenSSL 1.1.1b upgrade: > > .../CryptoPkg/Library/OpensslLib/openssl/crypto/conf/conf_sap.c:71:12: > error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized] > return ret; > ^~~ > .../CryptoPkg/Library/OpensslLib/openssl/crypto/conf/conf_sap.c:44:12: > note: initialize the variable 'ret' to silence this warning > int ret; > ^ > = 0 > 1 error generated. > > This appears to be a regression in the OpenSSL upstream code (commit > 25eb9299cec), which no longer initializes ret if OPENSSL_SYS_UEFI is #defined. > > Cc: Laszlo Ersek > Cc: "Gao, Liming" > Cc: "Wang, Jian J" > Cc: Leif Lindholm > Cc: Michael D Kinney > > [0] https://bugzilla.tianocore.org/show_bug.cgi?id=1750 > > Ard Biesheuvel (7): > ArmPkg: import latest version (3e) of the Berkeley Softfloat library > ArmPkg/ArmSoftFloatLib: switch to new version of softfloat library > ArmPkg/ArmSoftFloatLib: remove source files that are no longer used > ArmPkg/ArmSoftFloatLib: remove new source files that are not used > ArmPkg/ArmSoftFloatLib: add SPDX identifiers > BaseTools/tools_def CLANG3x ARM AARCH64: force use of C99 standard > ArmPkg/ArmLib ARM: set .fpu to let Clang 7 assemble ArmV7Support.S series Acked-by: Laszlo Ersek