From baa1b55e453bea50d930316fb52a1a92ad29187b Mon Sep 17 00:00:00 2001 From: bxing Date: Wed, 17 May 2006 10:29:44 +0000 Subject: [PATCH] Added CpuFlushTlb() for IPF git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@184 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Library/BaseLib/BaseLib.msa | 1 + MdePkg/Library/BaseLib/Ipf/CpuFlushTlb.s | 29 ++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 MdePkg/Library/BaseLib/Ipf/CpuFlushTlb.s diff --git a/MdePkg/Library/BaseLib/BaseLib.msa b/MdePkg/Library/BaseLib/BaseLib.msa index 380674a835..7719c3af01 100644 --- a/MdePkg/Library/BaseLib/BaseLib.msa +++ b/MdePkg/Library/BaseLib/BaseLib.msa @@ -273,6 +273,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. Ipf/InterlockedCompareExchange64.s Ipf/Synchronization.c Ipf/CpuPause.s + Ipf/CpuFlushTlb.s Math64.c diff --git a/MdePkg/Library/BaseLib/Ipf/CpuFlushTlb.s b/MdePkg/Library/BaseLib/Ipf/CpuFlushTlb.s new file mode 100644 index 0000000000..0afd87e88b --- /dev/null +++ b/MdePkg/Library/BaseLib/Ipf/CpuFlushTlb.s @@ -0,0 +1,29 @@ +/// @file +/// CpuFlushTlb() function for Itanium-based architecture. +/// +/// Copyright (c) 2006, Intel Corporation +/// All rights reserved. This program and the accompanying materials +/// are licensed and made available under the terms and conditions of the BSD License +/// which accompanies this distribution. The full text of the license may be found at +/// http://opensource.org/licenses/bsd-license.php +/// +/// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +/// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +/// +/// Module Name: CpuFlushTlb.s +/// +/// + +.auto +.text + +.proc CpuFlushTlb +.type CpuFlushTlb, @function +CpuFlushTlb:: + mov r8 = ip + mov r9 = -1 + dep.z r10 = -1, 61, 3 + and r8 = r8, r10 + ptc.l r8, r9 + br.ret.sptk.many b0 +.endp -- 2.39.2