// /** @file
// Instance of Base Memory Library using SSE2 registers.
//
// Base Memory Library that uses SSE2 registers for high 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 using SSE2 registers"

#string STR_MODULE_DESCRIPTION          #language en-US "Base Memory Library that uses SSE2 registers for high performance."

