VirtualBox

Ignore:
Timestamp:
Mar 12, 2019 12:40:12 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
129295
Message:

EFI: First step in UDK2018 merge. Does not build yet.

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/MdePkg/Include/Library/SynchronizationLib.h

    r58466 r77662  
    22  Provides synchronization functions.
    33
    4 Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
     4Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
    55This program and the accompanying materials
    66are licensed and made available under the terms and conditions of the BSD License
     
    158158EFIAPI
    159159InterlockedIncrement (
    160   IN      UINT32                    *Value
     160  IN      volatile UINT32           *Value
    161161  );
    162162
     
    180180EFIAPI
    181181InterlockedDecrement (
    182   IN      UINT32                    *Value
    183   );
    184 
     182  IN      volatile UINT32           *Value
     183  );
     184
     185
     186/**
     187  Performs an atomic compare exchange operation on a 16-bit unsigned integer.
     188
     189  Performs an atomic compare exchange operation on the 16-bit unsigned integer
     190  specified by Value.  If Value is equal to CompareValue, then Value is set to
     191  ExchangeValue and CompareValue is returned.  If Value is not equal to CompareValue,
     192  then Value is returned.  The compare exchange operation must be performed using
     193  MP safe mechanisms.
     194
     195  If Value is NULL, then ASSERT().
     196
     197  @param  Value         A pointer to the 16-bit value for the compare exchange
     198                        operation.
     199  @param  CompareValue  16-bit value used in compare operation.
     200  @param  ExchangeValue 16-bit value used in exchange operation.
     201
     202  @return The original *Value before exchange.
     203**/
     204UINT16
     205EFIAPI
     206InterlockedCompareExchange16 (
     207  IN OUT  volatile UINT16           *Value,
     208  IN      UINT16                    CompareValue,
     209  IN      UINT16                    ExchangeValue
     210  );
    185211
    186212/**
     
    206232EFIAPI
    207233InterlockedCompareExchange32 (
    208   IN OUT  UINT32                    *Value,
     234  IN OUT  volatile UINT32           *Value,
    209235  IN      UINT32                    CompareValue,
    210236  IN      UINT32                    ExchangeValue
     
    233259EFIAPI
    234260InterlockedCompareExchange64 (
    235   IN OUT  UINT64                    *Value,
     261  IN OUT  volatile UINT64           *Value,
    236262  IN      UINT64                    CompareValue,
    237263  IN      UINT64                    ExchangeValue
     
    260286EFIAPI
    261287InterlockedCompareExchangePointer (
    262   IN OUT  VOID                      **Value,
     288  IN OUT  VOID                      * volatile *Value,
    263289  IN      VOID                      *CompareValue,
    264290  IN      VOID                      *ExchangeValue
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette