From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by ml01.01.org (Postfix) with ESMTP id CBD7B1A1E2B for ; Wed, 10 Aug 2016 07:31:12 -0700 (PDT) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga103.jf.intel.com with ESMTP; 10 Aug 2016 07:31:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.28,500,1464678000"; d="scan'208";a="1038671757" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga002.fm.intel.com with ESMTP; 10 Aug 2016 07:31:11 -0700 Received: from fmsmsx113.amr.corp.intel.com (10.18.116.7) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 10 Aug 2016 07:31:10 -0700 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by FMSMSX113.amr.corp.intel.com (10.18.116.7) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 10 Aug 2016 07:31:09 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.181]) by shsmsx102.ccr.corp.intel.com ([169.254.2.147]) with mapi id 14.03.0248.002; Wed, 10 Aug 2016 22:31:08 +0800 From: "Long, Qin" To: "Gao, Liming" , "edk2-devel@lists.01.org" Thread-Topic: [edk2] [Patch] CryptoPkg IntrinsicLib: Add the missing nasm source file Thread-Index: AQHR8wI18xtN5pDF002jGN5TafQWg6BCQYsg Date: Wed, 10 Aug 2016 14:31:07 +0000 Message-ID: References: <1470831849-16216-1-git-send-email-liming.gao@intel.com> In-Reply-To: <1470831849-16216-1-git-send-email-liming.gao@intel.com> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZjkzNmE2NGEtMWM3NS00ODllLWJkMWMtMjFhNDgzM2UxNjU4IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6ImNGczVjOXRcL1p3N3k4YkJZSUprZzIyMURxajVwWTZUYVYxWEF4dlwvclRwND0ifQ== x-ctpclassification: CTP_IC x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [Patch] CryptoPkg IntrinsicLib: Add the missing nasm source file X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Aug 2016 14:31:13 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Qin Long Best Regards & Thanks, LONG, Qin > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Li= ming Gao > Sent: Wednesday, August 10, 2016 8:24 PM > To: edk2-devel@lists.01.org > Cc: Long, Qin > Subject: [edk2] [Patch] CryptoPkg IntrinsicLib: Add the missing nasm sour= ce file >=20 > Add two name files IntrinsicLib Ia32 MathLShiftS64.nasm and MathRShiftU64= .nasm >=20 > Cc: Qin Long > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Liming Gao > --- > .../Library/IntrinsicLib/Ia32/MathLShiftS64.nasm | 48 ++++++++++++++++= +++++ > .../Library/IntrinsicLib/Ia32/MathRShiftU64.nasm | 49 ++++++++++++++++= ++++++ > CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf | 2 + > 3 files changed, 99 insertions(+) > create mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.nas= m > create mode 100644 CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.nas= m >=20 > diff --git a/CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.nasm b/Cry= ptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.nasm > new file mode 100644 > index 0000000..a30edbf > --- /dev/null > +++ b/CryptoPkg/Library/IntrinsicLib/Ia32/MathLShiftS64.nasm > @@ -0,0 +1,48 @@ > +;-----------------------------------------------------------------------= ------- > +; > +; Copyright (c) 2016, Intel Corporation. All rights reserved.
> +; 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 I= MPLIED. > +; > +; Module Name: > +; > +; MathLShiftS64.nasm > +; > +; Abstract: > +; > +; 64-bit Math Worker Function. > +; Shifts a 64-bit signed value left by a certain number of bits. > +; > +;-----------------------------------------------------------------------= ------- > + > + SECTION .text > + > +global ASM_PFX(__ashldi3) > +;-----------------------------------------------------------------------= ------- > +; > +; void __cdecl __ashldi3 (void) > +; > +;-----------------------------------------------------------------------= ------- > +ASM_PFX(__ashldi3): > + cmp cl,0x40 > + jnc ReturnZero > + cmp cl,0x20 > + jnc More32 > + shld edx,eax,cl > + shl eax,cl > + ret > +More32: > + mov edx,eax > + xor eax,eax > + and cl,0x1f > + shl edx,cl > + ret > +ReturnZero: > + xor eax,eax > + xor edx,edx > + ret > diff --git a/CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.nasm b/Cry= ptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.nasm > new file mode 100644 > index 0000000..9bf1711 > --- /dev/null > +++ b/CryptoPkg/Library/IntrinsicLib/Ia32/MathRShiftU64.nasm > @@ -0,0 +1,49 @@ > +;-----------------------------------------------------------------------= ------- > +; > +; Copyright (c) 2016, Intel Corporation. All rights reserved.
> +; 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 I= MPLIED. > +; > +; Module Name: > +; > +; MathRShiftU64.nasm > +; > +; Abstract: > +; > +; 64-bit Math Worker Function. > +; Shifts a 64-bit unsigned value right by a certain number of bits. > +; > +;-----------------------------------------------------------------------= ------- > + > + SECTION .text > + > +;-----------------------------------------------------------------------= ------- > +; > +; void __cdecl __ashrdi3 (void) > +; > +;-----------------------------------------------------------------------= ------- > +global ASM_PFX(__ashrdi3) > +ASM_PFX(__ashrdi3): > + cmp cl,0x40 > + jnc _Exit > + cmp cl,0x20 > + jnc More32 > + shrd eax,edx,cl > + shr edx,cl > + ret > +More32: > + mov eax,edx > + xor edx,edx > + and cl,0x1f > + shr eax,cl > + ret > +_Exit: > + xor eax,eax > + xor edx,edx > + ret > + > diff --git a/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf b/CryptoPkg/= Library/IntrinsicLib/IntrinsicLib.inf > index de61dc4..9495750 100644 > --- a/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf > +++ b/CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf > @@ -41,6 +41,8 @@ >=20 > Ia32/MathLShiftS64.S | GCC > Ia32/MathRShiftU64.S | GCC > + Ia32/MathLShiftS64.nasm | GCC > + Ia32/MathRShiftU64.nasm | GCC >=20 > [Sources.X64] > CopyMem.c > -- > 2.8.0.windows.1 >=20 > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel