// /** @file
// Instance of Base Memory Library optimized for use in PEI phase.
//
// Base Memory Library that is optimized for use in PEI phase.
// Uses REP, MMX, XMM registers as required for best performance.
//
// Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/


#string STR_MODULE_ABSTRACT             #language en-US "Instance of Base Memory Library optimized for use in the PEI phase"

#string STR_MODULE_DESCRIPTION          #language en-US "This is the Base Memory Library that is optimized for use in the PEI phase. It uses REP, MMX, XMM registers, as required for best performance."

