From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@linaro.org header.s=google header.b=YqJVV3wn; spf=pass (domain: linaro.org, ip: 209.85.166.68, mailfrom: ard.biesheuvel@linaro.org) Received: from mail-io1-f68.google.com (mail-io1-f68.google.com [209.85.166.68]) by groups.io with SMTP; Mon, 27 May 2019 23:35:20 -0700 Received: by mail-io1-f68.google.com with SMTP id r185so9927735iod.6 for ; Mon, 27 May 2019 23:35:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=G/aramZA8sGOjKm0JCKkzr+UZTZ3QMsMW3hpEWKdzOg=; b=YqJVV3wnGJ3/DremfgbQ138RmVYViAm8gbDv/KFGKrt4Oe+Sz6064fXAzfHlqxCYKD WiCmvXmjhwu0+d+M6BLtDm6zdIkySz38onL27O4++w+hJusV8IlMee8BisWI0yOON6rv Nb2Hr8r2+TtRcdFbryjhdJH5/hafhQkC1yNZCSvC+q/1YoBLI38W7FUQk4WL6aQdZ+/u +s5mkUMEkNyh9TtxPjSfUCIe9P6AKDssu/mIhORH/uajw2ZjoyL5Lil6Y7kjYJ5L8uMA GIsMGdeWNde6Ugu/DFXcykJ6qO0+HKoVGI8aDJ+1h6aM0d8cAlr3jcKr6y49KcG5I6jT v+lw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=G/aramZA8sGOjKm0JCKkzr+UZTZ3QMsMW3hpEWKdzOg=; b=IIrWpOOdVouHN/7Nic6K1Z6OlCWH9ks4YGBrLPJtr9GJF6LXp3jMdQNMAxHnj1YXeZ n13xJIi2vaNcLVocBUIGlX/cpTe2XMsFSoc27+MZ9AukPADQw24xEXTZKrebqJfLzEOL Tp8nR8t6V5W/8PbcUDPbL+pQUPhwVg6Cs1SYj5gTgY0kwnpNto2FGh372BlTU2ZOPw/4 ZDvGYra8gQmiz+PLB35gabLWdpEPeIOvDv16hsGY+Rf2oKrcmlzP0PbzMWWj5gnzHOkV o2Fg2lRCiREH/+gxFOOFHpG2yngoWYx+AdiFEVjxsrv9eDNUWBwMsD//ZEcrg0gPo3/A m5AQ== X-Gm-Message-State: APjAAAV/A3EkCv7fGXXMKDHe9Yke0H77ZD2csxYyOb2CA7pzNsflWlVk qT/0FQzLJTajWlgmr59t1Yj7x8k8kj7MjjMewWHN36BUyGQ= X-Google-Smtp-Source: APXvYqzyhKepm68dUxyk81+kQvEGiRN8ReAMASwVE+z4L6poPw6E6tlP2DupnfT3epN8Ci01eUGi+KeVkYgx4cbjwxY= X-Received: by 2002:a05:6602:2109:: with SMTP id x9mr28794126iox.128.1559025319317; Mon, 27 May 2019 23:35:19 -0700 (PDT) MIME-Version: 1.0 References: <20190527205141.12344-1-ard.biesheuvel@linaro.org> In-Reply-To: <20190527205141.12344-1-ard.biesheuvel@linaro.org> From: "Ard Biesheuvel" Date: Tue, 28 May 2019 08:35:06 +0200 Message-ID: Subject: Re: [PATCH v2 0/7] update ArmSoftFloatLib to latest upstream version To: edk2-devel-groups-io Cc: Laszlo Ersek , "Gao, Liming" , "Wang, Jian J" , Leif Lindholm , Michael D Kinney Content-Type: text/plain; charset="UTF-8" On Mon, 27 May 2019 at 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) > Another change I failed to mention: - Get rid of the use of unions for type punning and designated initializers. Instead, take advantage of the fact that the floatXX_t types embed a type that is compatible with the respective aeabi_float/double type. > 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 > > ArmPkg/Library/ArmLib/Arm/ArmV7Support.S | 1 + > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_cdcmp.asm | 41 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_cfcmp.asm | 37 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpeq.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpge.c | 28 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpgt.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmple.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmplt.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpun.c | 35 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpeq.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpge.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpgt.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmple.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmplt.c | 30 - > ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpun.c | 35 - > ArmPkg/Library/ArmSoftFloatLib/Arm/softfloat.h | 345 --- > ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.c | 283 +++ > ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf | 84 +- > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/COPYING.txt | 37 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/README.html | 49 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/README.txt | 21 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/platform.h | 54 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat-history.html | 258 +++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat-source.html | 686 ++++++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat.html | 1527 +++++++++++++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF64UI.c | 64 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/softfloat_raiseFlags.c | 53 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/specialize.h | 377 ++++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_add.c | 71 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_div.c | 181 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_eq.c | 67 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_le.c | 67 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_lt.c | 67 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_mul.c | 138 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_sub.c | 71 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_f64.c | 94 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_i32_r_minMag.c | 90 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_i64_r_minMag.c | 95 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_ui32_r_minMag.c | 89 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_ui64_r_minMag.c | 91 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_add.c | 75 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_div.c | 173 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_eq.c | 67 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_le.c | 68 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_lt.c | 68 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_mul.c | 151 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_sub.c | 75 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_f32.c | 89 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_i32_r_minMag.c | 97 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_i64_r_minMag.c | 101 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_ui32_r_minMag.c | 89 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_ui64_r_minMag.c | 94 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i32_to_f32.c | 59 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i32_to_f64.c | 66 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i64_to_f32.c | 71 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i64_to_f64.c | 59 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/internals.h | 279 +++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/opts-GCC.h | 115 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/primitiveTypes.h | 86 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/primitives.h | 1161 ++++++++++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/softfloat.h | 373 ++++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/softfloat_types.h | 82 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_addMagsF32.c | 127 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_addMagsF64.c | 129 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros32.c | 65 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros64.c | 74 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros8.c | 60 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_mul64To128.c | 67 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normRoundPackToF32.c | 59 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normRoundPackToF64.c | 59 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normSubnormalF32Sig.c | 53 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normSubnormalF64Sig.c | 53 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_roundPackToF32.c | 114 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_roundPackToF64.c | 118 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shiftRightJam32.c | 52 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shiftRightJam64.c | 52 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shortShiftRightJam64.c | 51 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_subMagsF32.c | 144 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_subMagsF64.c | 142 ++ > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/softfloat_state.c | 53 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui32_to_f32.c | 58 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui32_to_f64.c | 60 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui64_to_f32.c | 65 + > ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui64_to_f64.c | 60 + > ArmPkg/Library/ArmSoftFloatLib/arm-gcc.h | 108 - > ArmPkg/Library/ArmSoftFloatLib/bits32/softfloat-macros | 648 ------ > ArmPkg/Library/ArmSoftFloatLib/bits32/softfloat.c | 2354 -------------------- > ArmPkg/Library/ArmSoftFloatLib/milieu.h | 38 - > ArmPkg/Library/ArmSoftFloatLib/softfloat-for-gcc.h | 242 -- > ArmPkg/Library/ArmSoftFloatLib/softfloat-specialize | 525 ----- > BaseTools/Conf/tools_def.template | 8 +- > 91 files changed, 9812 insertions(+), 4730 deletions(-) > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_cdcmp.asm > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_cfcmp.asm > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpeq.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpge.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpgt.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmple.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmplt.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_dcmpun.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpeq.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpge.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpgt.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmple.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmplt.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/__aeabi_fcmpun.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/Arm/softfloat.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/COPYING.txt > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/README.html > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/README.txt > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/build/Linux-ARM-VFPv2-GCC/platform.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat-history.html > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat-source.html > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/doc/SoftFloat.html > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/s_propagateNaNF64UI.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/softfloat_raiseFlags.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ARM-VFPv2/specialize.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_add.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_div.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_eq.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_le.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_lt.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_mul.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_sub.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_f64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_i32_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_i64_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_ui32_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f32_to_ui64_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_add.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_div.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_eq.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_le.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_lt.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_mul.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_sub.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_f32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_i32_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_i64_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_ui32_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/f64_to_ui64_r_minMag.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i32_to_f32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i32_to_f64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i64_to_f32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/i64_to_f64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/internals.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/opts-GCC.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/primitiveTypes.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/primitives.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/softfloat.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/include/softfloat_types.h > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_addMagsF32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_addMagsF64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_countLeadingZeros8.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_mul64To128.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normRoundPackToF32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normRoundPackToF64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normSubnormalF32Sig.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_normSubnormalF64Sig.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_roundPackToF32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_roundPackToF64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shiftRightJam32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shiftRightJam64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_shortShiftRightJam64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_subMagsF32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/s_subMagsF64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/softfloat_state.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui32_to_f32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui32_to_f64.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui64_to_f32.c > create mode 100644 ArmPkg/Library/ArmSoftFloatLib/SoftFloat-3e/source/ui64_to_f64.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/arm-gcc.h > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/bits32/softfloat-macros > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/bits32/softfloat.c > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/milieu.h > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/softfloat-for-gcc.h > delete mode 100644 ArmPkg/Library/ArmSoftFloatLib/softfloat-specialize > > -- > 2.20.1 >