summaryrefslogtreecommitdiff
path: root/MdePkg/Library/BaseLib/Ipf
diff options
context:
space:
mode:
authorxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>2007-01-25 06:05:36 +0000
committerxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>2007-01-25 06:05:36 +0000
commit582510249f2fb1334e507b99421b9485f6b89159 (patch)
treecd9d7414885d26e79565cd12ec241af93dc600f2 /MdePkg/Library/BaseLib/Ipf
parentba3a1cb5bb97ffdea980f188fbd14b08200aeac6 (diff)
downloadedk2-platforms-582510249f2fb1334e507b99421b9485f6b89159.tar.xz
Make MDE package pass intel IPF compiler with /W4 /WX switched on.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2312 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Library/BaseLib/Ipf')
-rw-r--r--MdePkg/Library/BaseLib/Ipf/Synchronization.c25
-rw-r--r--MdePkg/Library/BaseLib/Ipf/Unaligned.c22
2 files changed, 15 insertions, 32 deletions
diff --git a/MdePkg/Library/BaseLib/Ipf/Synchronization.c b/MdePkg/Library/BaseLib/Ipf/Synchronization.c
index 44593e1778..c29a8763d3 100644
--- a/MdePkg/Library/BaseLib/Ipf/Synchronization.c
+++ b/MdePkg/Library/BaseLib/Ipf/Synchronization.c
@@ -14,30 +14,7 @@
**/
-/**
- Performs an atomic compare exchange operation on a 32-bit unsigned integer.
-
- Performs an atomic compare exchange operation on the 32-bit unsigned integer
- specified by Value. If Value is equal to CompareValue, then Value is set to
- ExchangeValue and CompareValue is returned. If Value is not equal to CompareValue,
- then Value is returned. The compare exchange operation must be performed using
- MP safe mechanisms.
-
- @param Value A pointer to the 32-bit value for the compare exchange
- operation.
- @param CompareValue 32-bit value used in compare operation.
- @param ExchangeValue 32-bit value used in exchange operation.
-
- @return The original *Value before exchange.
-
-**/
-UINT32
-EFIAPI
-InternalSyncCompareExchange32 (
- IN volatile UINT32 *Value,
- IN UINT32 CompareValue,
- IN UINT32 ExchangeValue
- );
+#include "BaseLibInternals.h"
/**
Performs an atomic increment of an 32-bit unsigned integer.
diff --git a/MdePkg/Library/BaseLib/Ipf/Unaligned.c b/MdePkg/Library/BaseLib/Ipf/Unaligned.c
index 30e5b15c5f..fc634044b9 100644
--- a/MdePkg/Library/BaseLib/Ipf/Unaligned.c
+++ b/MdePkg/Library/BaseLib/Ipf/Unaligned.c
@@ -143,12 +143,15 @@ ReadUnaligned32 (
IN CONST UINT32 *Buffer
)
{
+ UINT16 LowerBytes;
+ UINT16 HigherBytes;
+
ASSERT (Buffer != NULL);
- return (UINT32)(
- ReadUnaligned16 ((UINT16*)Buffer) |
- (ReadUnaligned16 ((UINT16*)Buffer + 1) << 16)
- );
+ LowerBytes = ReadUnaligned16 ((UINT16*) Buffer);
+ HigherBytes = ReadUnaligned16 ((UINT16*) Buffer + 1);
+
+ return (UINT32) (LowerBytes | (HigherBytes << 16));
}
/**
@@ -199,12 +202,15 @@ ReadUnaligned64 (
IN CONST UINT64 *Buffer
)
{
+ UINT32 LowerBytes;
+ UINT32 HigherBytes;
+
ASSERT (Buffer != NULL);
- return (UINT64)(
- ReadUnaligned32 ((UINT32*)Buffer) |
- LShiftU64 (ReadUnaligned32 ((UINT32*)Buffer + 1), 32)
- );
+ LowerBytes = ReadUnaligned32 ((UINT32*) Buffer);
+ HigherBytes = ReadUnaligned32 ((UINT32*) Buffer + 1);
+
+ return (UINT64) (LowerBytes | LShiftU64 (HigherBytes, 32));
}
/**