Reviewed-by: Jian J Wang <jian.j.w...@intel.com>
> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Friday, March 29, 2019 3:31 PM
> To: edk2-devel@lists.01.org
> Cc: Ye, Ting <ting...@intel.com>; Gang Wei <gang....@intel.com>; Wang, Jian
> J <jian.j.w...@intel.com>
> Subject: [PATCH v3 11/12] CryptoPkg/IntrinsicLib: Remove .S files for IA32
> arch
>
> .nasm file has been added for X86 arch. .S assembly code
> is not required any more.
> https://bugzilla.tianocore.org/show_bug.cgi?id=1594
>
> Cc: Ting Ye <ting...@intel.com>
> Cc: Gang Wei <gang....@intel.com>
> Cc: Jian Wang <jian.j.w...@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Shenglei Zhang <shenglei.zh...@intel.com>
> ---
> .../Library/IntrinsicLib/Ia32/MathLShiftS64.S | 62 -----------------
> .../Library/IntrinsicLib/Ia32/MathRShiftU64.S | 66 -------------------
> .../Library/IntrinsicLib/IntrinsicLib.inf | 2 -
> 3 files changed, 130 deletions(-)
> delete mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.S
> delete mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.S
>
> diff --git a/CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.S
> b/CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.S
> deleted file mode 100644
> index 7031a59a71..0000000000
> --- a/CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.S
> +++ /dev/null
> @@ -1,62 +0,0 @@
> -#------------------------------------------------------------------------------
> -#
> -# Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
> -# This program and the accompanying materials
> -# are licensed and made available under the terms and conditions of the BSD
> License
> -# which accompanies this distribution. The full text of the license may be
> found
> at
> -# http://opensource.org/licenses/bsd-license.php.
> -#
> -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> EXPRESS OR IMPLIED.
> -#
> -# Module Name:
> -#
> -# MathLShiftS64.S
> -#
> -# Abstract:
> -#
> -# 64-bit Math Worker Function.
> -# Shifts a 64-bit signed value left by a certain number of bits.
> -#
> -#------------------------------------------------------------------------------
> -
> - .686:
> - .code:
> -
> -ASM_GLOBAL ASM_PFX(__ashldi3)
> -
> -#------------------------------------------------------------------------------
> -#
> -# void __cdecl __ashldi3 (void)
> -#
> -#------------------------------------------------------------------------------
> -ASM_PFX(__ashldi3):
> - #
> - # Handle shifting of 64 or more bits (return 0)
> - #
> - cmpb $64, %cl
> - jae ReturnZero
> -
> - #
> - # Handle shifting of between 0 and 31 bits
> - #
> - cmpb $32, %cl
> - jae More32
> - shld %cl, %eax, %edx
> - shl %cl, %eax
> - ret
> -
> - #
> - # Handle shifting of between 32 and 63 bits
> - #
> -More32:
> - movl %eax, %edx
> - xor %eax, %eax
> - and $31, %cl
> - shl %cl, %edx
> - ret
> -
> -ReturnZero:
> - xor %eax, %eax
> - xor %edx, %edx
> - ret
> diff --git a/CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.S
> b/CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.S
> deleted file mode 100644
> index 24142b088e..0000000000
> --- a/CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.S
> +++ /dev/null
> @@ -1,66 +0,0 @@
> -#------------------------------------------------------------------------------
> -#
> -# Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
> -# This program and the accompanying materials
> -# are licensed and made available under the terms and conditions of the BSD
> License
> -# which accompanies this distribution. The full text of the license may be
> found
> at
> -# http://opensource.org/licenses/bsd-license.php.
> -#
> -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS"
> BASIS,
> -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER
> EXPRESS OR IMPLIED.
> -#
> -# Module Name:
> -#
> -# MathRShiftU64.S
> -#
> -# Abstract:
> -#
> -# 64-bit Math Worker Function.
> -# Shifts a 64-bit unsigned value right by a certain number of bits.
> -#
> -#------------------------------------------------------------------------------
> -
> -
> - .686:
> - .code:
> -
> -ASM_GLOBAL ASM_PFX(__ashrdi3)
> -
> -#------------------------------------------------------------------------------
> -#
> -# void __cdecl __ashrdi3 (void)
> -#
> -#------------------------------------------------------------------------------
> -ASM_PFX(__ashrdi3):
> - #
> - # Checking: Only handle 64bit shifting or more
> - #
> - cmpb $64, %cl
> - jae _Exit
> -
> - #
> - # Handle shifting between 0 and 31 bits
> - #
> - cmpb $32, %cl
> - jae More32
> - shrd %cl, %edx, %eax
> - shr %cl, %edx
> - ret
> -
> - #
> - # Handle shifting of 32-63 bits
> - #
> -More32:
> - movl %edx, %eax
> - xor %edx, %edx
> - and $31, %cl
> - shr %cl, %eax
> - ret
> -
> - #
> - # Invalid number (less then 32bits), return 0
> - #
> -_Exit:
> - xor %eax, %eax
> - xor %edx, %edx
> - ret
> diff --git a/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
> b/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
> index a91c850013..9704b9ea7d 100644
> --- a/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
> +++ b/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
> @@ -39,8 +39,6 @@
> Ia32/MathLShiftS64.c | INTEL
> Ia32/MathRShiftU64.c | INTEL
>
> - Ia32/MathLShiftS64.S | GCC
> - Ia32/MathRShiftU64.S | GCC
> Ia32/MathLShiftS64.nasm | GCC
> Ia32/MathRShiftU64.nasm | GCC
>
> --
> 2.18.0.windows.1
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel