Reviewed-by: Liming Gao <[email protected]>

> -----Original Message-----
> From: Ard Biesheuvel [mailto:[email protected]]
> Sent: Wednesday, September 07, 2016 2:48 PM
> To: [email protected]; [email protected]; Gao, Liming
> <[email protected]>
> Cc: Kinney, Michael D <[email protected]>; Ard Biesheuvel
> <[email protected]>
> Subject: [PATCH v3 0/3] MdePkg: add ARM/AARCH64 support to
> BaseMemoryLib
> 
> This adds ARM and AARCH64 support to both BaseMemoryLib (generic C)
> and
> BaseMemoryLibOptDxe (accelerated). The former can be used anywhere,
> the
> latter only in places where the caches are guaranteed to be on, not only
> due to the unaligned accesses but also due to the fact that it uses
> DC ZVA instructions for clearing memory (AArch64 only).
> 
> Changes since v2:
> - avoid open coded 64-bit shift (#1)
> - tweak SetMem implementation (#2)
> 
> Ard Biesheuvel (3):
>   MdePkg/BaseMemoryLib: widen aligned accesses to 32 or 64 bits
>   MdePkg/BaseMemoryLibOptDxe: add accelerated ARM routines
>   MdePkg/BaseMemoryLibOptDxe: add accelerated AARCH64 routines
> 
>  MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf             |   2 +-
>  MdePkg/Library/BaseMemoryLib/CopyMem.c                     | 112 +++++++-
>  MdePkg/Library/BaseMemoryLib/SetMem.c                      |  40 ++-
>  MdePkg/Library/BaseMemoryLibOptDxe/AArch64/CompareMem.S    | 142
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/AArch64/CopyMem.S       | 284
> ++++++++++++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/AArch64/ScanMem.S       | 161
> +++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/AArch64/SetMem.S        | 244
> +++++++++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S        | 138
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.asm      | 140
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S           | 172
> ++++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.asm         | 147
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMem.S           | 146
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMem.asm         | 147
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMemGeneric.c    | 142
> ++++++++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S            |  67 +++++
>  MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.asm          |  74
> +++++
>  MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf |  37
> ++-
>  17 files changed, 2167 insertions(+), 28 deletions(-)
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/AArch64/CompareMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/AArch64/CopyMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/AArch64/ScanMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/AArch64/SetMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/CompareMem.asm
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/CopyMem.asm
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMem.asm
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/ScanMemGeneric.c
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.S
>  create mode 100644
> MdePkg/Library/BaseMemoryLibOptDxe/Arm/SetMem.asm
> 
> --
> 2.7.4

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to