From: "Gao, Liming" <liming.gao@intel.com>
To: "Wu, Hao A" <hao.a.wu@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Cc: "Wu, Hao A" <hao.a.wu@intel.com>
Subject: Re: [PATCH v2 0/6] Add APIs IsZeroBuffer and IsZeroGuid in BaseMemoryLib
Date: Mon, 22 Aug 2016 06:12:07 +0000 [thread overview]
Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A1155ED658@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <1471496040-11796-1-git-send-email-hao.a.wu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> Hao Wu
> Sent: Thursday, August 18, 2016 12:54 PM
> To: edk2-devel@lists.01.org; Gao, Liming <liming.gao@intel.com>
> Cc: Wu, Hao A <hao.a.wu@intel.com>
> Subject: [edk2] [PATCH v2 0/6] Add APIs IsZeroBuffer and IsZeroGuid in
> BaseMemoryLib
>
> Changes made comparing V1:
> 1. Use assembly to implement the IsZeroBuffer() API for the following
> library instances:
> BaseMemoryLibMmx
> BaseMemoryLibOptDxe
> BaseMemoryLibOptPei
> BaseMemoryLibRepStr
> BaseMemoryLibSse2
>
> 2. Utilize XMM regesters and related instructions in assembly codes for
> BaseMemoryLibSse2 library instance.
>
> 3. Modify patches for SecurityPkg to avoid breaking bisection between
> patches.
>
> Hao Wu (6):
> MdePkg BaseMemoryLib: Add implementation of API IsZeroGuid()
> SecurityPkg Tcg2: Rename internal API IsZeroBuffer to
> InternalIsZeroBuffer
> MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer()
> MdePkg BaseMemoryLib: Add assembly implementation of API
> IsZeroBuffer()
> MdePkg BaseMemoryLibSse2: Add SSE2 implementation of API
> IsZeroBuffer()
> SecurityPkg Tcg2: Remove use of module internal API
> InternalIsZeroBuffer()
>
> MdePkg/Include/Library/BaseMemoryLib.h | 45 ++++++++++++-
> MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf | 3 +-
> MdePkg/Library/BaseMemoryLib/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/BaseMemoryLib/MemLibGeneric.c | 31 ++++++++-
> MdePkg/Library/BaseMemoryLib/MemLibGuid.c | 31 ++++++++-
> MdePkg/Library/BaseMemoryLib/MemLibInternals.h | 19 +++++-
> .../Library/BaseMemoryLibMmx/BaseMemoryLibMmx.inf | 5 +-
> .../BaseMemoryLibMmx/Ia32/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../Library/BaseMemoryLibMmx/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/BaseMemoryLibMmx/MemLibGuid.c | 31 ++++++++-
> MdePkg/Library/BaseMemoryLibMmx/MemLibInternals.h | 19 +++++-
> .../Library/BaseMemoryLibMmx/X64/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf | 6 +-
> .../BaseMemoryLibOptDxe/Ia32/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibOptDxe/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/BaseMemoryLibOptDxe/MemLibGuid.c | 31 ++++++++-
> .../Library/BaseMemoryLibOptDxe/MemLibInternals.h | 19 +++++-
> .../BaseMemoryLibOptDxe/X64/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibOptPei/BaseMemoryLibOptPei.inf | 6 +-
> .../BaseMemoryLibOptPei/Ia32/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibOptPei/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/BaseMemoryLibOptPei/MemLibGuid.c | 31 ++++++++-
> .../Library/BaseMemoryLibOptPei/MemLibInternals.h | 19 +++++-
> .../BaseMemoryLibOptPei/X64/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf | 5 +-
> .../BaseMemoryLibRepStr/Ia32/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibRepStr/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/BaseMemoryLibRepStr/MemLibGuid.c | 31 ++++++++-
> .../Library/BaseMemoryLibRepStr/MemLibInternals.h | 19 +++++-
> .../BaseMemoryLibRepStr/X64/IsZeroBuffer.nasm | 55
> ++++++++++++++++
> .../BaseMemoryLibSse2/BaseMemoryLibSse2.inf | 5 +-
> .../BaseMemoryLibSse2/Ia32/IsZeroBuffer.nasm | 74
> +++++++++++++++++++++
> .../BaseMemoryLibSse2/IsZeroBufferWrapper.c | 54 +++++++++++++++
> MdePkg/Library/BaseMemoryLibSse2/MemLibGuid.c | 31 ++++++++-
> MdePkg/Library/BaseMemoryLibSse2/MemLibInternals.h | 19 +++++-
> .../BaseMemoryLibSse2/X64/IsZeroBuffer.nasm | 76
> ++++++++++++++++++++++
> MdePkg/Library/PeiMemoryLib/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/PeiMemoryLib/MemLibGeneric.c | 31 ++++++++-
> MdePkg/Library/PeiMemoryLib/MemLibGuid.c | 31 ++++++++-
> MdePkg/Library/PeiMemoryLib/MemLibInternals.h | 19 +++++-
> MdePkg/Library/PeiMemoryLib/PeiMemoryLib.inf | 3 +-
> MdePkg/Library/UefiMemoryLib/IsZeroBufferWrapper.c | 54
> +++++++++++++++
> MdePkg/Library/UefiMemoryLib/MemLibGeneric.c | 31 ++++++++-
> MdePkg/Library/UefiMemoryLib/MemLibGuid.c | 31 ++++++++-
> MdePkg/Library/UefiMemoryLib/MemLibInternals.h | 19 +++++-
> MdePkg/Library/UefiMemoryLib/UefiMemoryLib.inf | 3 +-
> SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigImpl.c | 27 --------
> SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.c | 27 --------
> SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c | 27 --------
> 49 files changed, 1568 insertions(+), 109 deletions(-)
> create mode 100644
> MdePkg/Library/BaseMemoryLib/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibMmx/Ia32/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibMmx/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibMmx/X64/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Ia32/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/X64/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptPei/Ia32/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptPei/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibOptPei/X64/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibRepStr/Ia32/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibRepStr/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibRepStr/X64/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibSse2/Ia32/IsZeroBuffer.nasm
> create mode 100644
> MdePkg/Library/BaseMemoryLibSse2/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/BaseMemoryLibSse2/X64/IsZeroBuffer.nasm
> create mode 100644 MdePkg/Library/PeiMemoryLib/IsZeroBufferWrapper.c
> create mode 100644
> MdePkg/Library/UefiMemoryLib/IsZeroBufferWrapper.c
>
> --
> 1.9.5.msysgit.0
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
prev parent reply other threads:[~2016-08-22 6:12 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-18 4:53 [PATCH v2 0/6] Add APIs IsZeroBuffer and IsZeroGuid in BaseMemoryLib Hao Wu
2016-08-18 4:53 ` [PATCH v2 1/6] MdePkg BaseMemoryLib: Add implementation of API IsZeroGuid() Hao Wu
2016-08-18 4:53 ` [PATCH v2 2/6] SecurityPkg Tcg2: Rename internal API IsZeroBuffer to InternalIsZeroBuffer Hao Wu
2016-08-18 4:53 ` [PATCH v2 3/6] MdePkg BaseMemoryLib: Add C implementation of API IsZeroBuffer() Hao Wu
2016-08-18 4:53 ` [PATCH v2 4/6] MdePkg BaseMemoryLib: Add assembly " Hao Wu
2016-08-18 4:53 ` [PATCH v2 5/6] MdePkg BaseMemoryLibSse2: Add SSE2 " Hao Wu
2016-08-18 4:54 ` [PATCH v2 6/6] SecurityPkg Tcg2: Remove use of module internal API InternalIsZeroBuffer() Hao Wu
2016-08-18 5:05 ` Zhang, Chao B
2016-08-22 6:12 ` Gao, Liming [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A89E2EF3DFEDB4C8BFDE51014F606A1155ED658@shsmsx102.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox