]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Library/BaseLib/Arm/MemoryFence.S
a2284ba639621cb3b790d50fb7d718dc90039a03
[mirror_edk2.git] / MdePkg / Library / BaseLib / Arm / MemoryFence.S
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
20 GCC_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 #
36 ASM_PFX(MemoryFence):
37 // System wide Data Memory Barrier.
38 dmb
39 bx lr