From 4e4a5f359d04a9551b2c74a3aeb7b10677988bc0 Mon Sep 17 00:00:00 2001 From: qhuang8 Date: Wed, 19 May 2010 06:06:40 +0000 Subject: Temporarily remove build-in __sync_val_compare_and_swap() in the implementation of sync functions. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10519 6f19259b-4bc3-4df7-8a09-765794883524 --- .../BaseSynchronizationLib/Ia32/GccInline.c | 24 ++-------------------- 1 file changed, 2 insertions(+), 22 deletions(-) (limited to 'MdePkg/Library/BaseSynchronizationLib/Ia32') diff --git a/MdePkg/Library/BaseSynchronizationLib/Ia32/GccInline.c b/MdePkg/Library/BaseSynchronizationLib/Ia32/GccInline.c index dcaaa6a8a2..d357e91817 100644 --- a/MdePkg/Library/BaseSynchronizationLib/Ia32/GccInline.c +++ b/MdePkg/Library/BaseSynchronizationLib/Ia32/GccInline.c @@ -1,7 +1,7 @@ /** @file GCC inline implementation of BaseSynchronizationLib processor specific functions. - Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -114,13 +114,6 @@ InternalSyncCompareExchange32 ( ) { -// GCC 4.1 and forward supports atomic builtins -#if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 1))) - - return __sync_val_compare_and_swap (Value, CompareValue, ExchangeValue); - -#else - __asm__ __volatile__ ( " \n\t" "lock \n\t" @@ -133,9 +126,7 @@ InternalSyncCompareExchange32 ( "cc" ); - return CompareValue; - -#endif + return CompareValue; } /** @@ -163,13 +154,6 @@ InternalSyncCompareExchange64 ( IN UINT64 ExchangeValue ) { -// GCC 4.1 and forward supports atomic builtins -#if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 1))) - - return __sync_val_compare_and_swap (Value, CompareValue, ExchangeValue); - -#else - __asm__ __volatile__ ( " \n\t" "push %%ebx \n\t" @@ -186,8 +170,4 @@ InternalSyncCompareExchange64 ( ); return CompareValue; - -#endif } - - -- cgit v1.2.3