2 # Base Synchronization Library implementation.
4 # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
5 # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
6 # Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
8 # SPDX-License-Identifier: BSD-2-Clause-Patent
14 INF_VERSION = 0x00010005
15 BASE_NAME = BaseSynchronizationLib
16 MODULE_UNI_FILE = BaseSynchronizationLib.uni
17 FILE_GUID = FC9990DF-C5FF-44cf-8799-CBB45B577F87
20 LIBRARY_CLASS = SynchronizationLib
23 # VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64
26 BaseSynchronizationLibInternals.h
29 Ia32/InternalGetSpinLockProperties.c | MSFT
30 Ia32/InterlockedCompareExchange64.c | MSFT
31 Ia32/InterlockedCompareExchange32.c | MSFT
32 Ia32/InterlockedCompareExchange16.c | MSFT
33 InterlockedIncrementMsc.c | MSFT
34 InterlockedDecrementMsc.c | MSFT
35 SynchronizationMsc.c | MSFT
37 Ia32/InterlockedCompareExchange64.nasm| INTEL
38 Ia32/InterlockedCompareExchange32.nasm| INTEL
39 Ia32/InterlockedCompareExchange16.nasm| INTEL
40 Ia32/InterlockedDecrement.nasm| INTEL
41 Ia32/InterlockedIncrement.nasm| INTEL
42 Synchronization.c | INTEL
44 Ia32/InternalGetSpinLockProperties.c | GCC
45 Ia32/GccInline.c | GCC
46 SynchronizationGcc.c | GCC
49 Ia32/InternalGetSpinLockProperties.c | MSFT
50 X64/InterlockedCompareExchange64.c | MSFT
51 X64/InterlockedCompareExchange32.c | MSFT
52 X64/InterlockedCompareExchange16.c | MSFT
53 InterlockedIncrementMsc.c | MSFT
54 InterlockedDecrementMsc.c | MSFT
55 SynchronizationMsc.c | MSFT
57 X64/InterlockedCompareExchange64.nasm| INTEL
58 X64/InterlockedCompareExchange32.nasm| INTEL
59 X64/InterlockedCompareExchange16.nasm| INTEL
60 X64/InterlockedDecrement.nasm | INTEL
61 X64/InterlockedIncrement.nasm | INTEL
62 Synchronization.c | INTEL
64 Ia32/InternalGetSpinLockProperties.c | GCC
66 SynchronizationGcc.c | GCC
74 Arm/Synchronization.asm | RVCT
75 Arm/Synchronization.S | GCC
79 AArch64/Synchronization.S | GCC
80 AArch64/Synchronization.asm | MSFT
84 RiscV64/Synchronization.S
96 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout ## SOMETIMES_CONSUMES