1##------------------------------------------------------------------------------ 2# 3# MemoryFence() for AArch64 4# 5# Copyright (c) 2013, ARM Ltd. All rights reserved. 6# 7# This program and the accompanying materials 8# are licensed and made available under the terms and conditions of the BSD License 9# which accompanies this distribution. The full text of the license may be found at 10# http://opensource.org/licenses/bsd-license.php. 11# 12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14# 15##------------------------------------------------------------------------------ 16 17.text 18.p2align 2 19 20GCC_ASM_EXPORT(MemoryFence) 21 22 23#/** 24# Used to serialize load and store operations. 25# 26# All loads and stores that proceed calls to this function are guaranteed to be 27# globally visible when this function returns. 28# 29#**/ 30#VOID 31#EFIAPI 32#MemoryFence ( 33# VOID 34# ); 35# 36ASM_PFX(MemoryFence): 37 // System wide Data Memory Barrier. 38 dmb 39 bx lr 40