public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Hao Wu <hao.a.wu@intel.com>
To: edk2-devel@lists.01.org, liming.gao@intel.com
Cc: Hao Wu <hao.a.wu@intel.com>
Subject: [PATCH v2 0/6] Add APIs IsZeroBuffer and IsZeroGuid in BaseMemoryLib
Date: Thu, 18 Aug 2016 12:53:54 +0800	[thread overview]
Message-ID: <1471496040-11796-1-git-send-email-hao.a.wu@intel.com> (raw)

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



             reply	other threads:[~2016-08-18  4:54 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-18  4:53 Hao Wu [this message]
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 ` [PATCH v2 0/6] Add APIs IsZeroBuffer and IsZeroGuid in BaseMemoryLib Gao, Liming

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=1471496040-11796-1-git-send-email-hao.a.wu@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