1. Fix one bug on EBC for GetPowerOfTwo64.c
authorvanjeff <vanjeff@de2fecce-e211-0410-80a6-f3fac2684e05>
Tue, 11 Jul 2006 07:48:43 +0000 (07:48 +0000)
committervanjeff <vanjeff@de2fecce-e211-0410-80a6-f3fac2684e05>
Tue, 11 Jul 2006 07:48:43 +0000 (07:48 +0000)
2. Fix one bug for GetPowerOfTwo32.c and GetPowerOfTwo64.c, when Operand is 1, 1 should be returned

git-svn-id: https://edk2.tianocore.org/svn/edk2/trunk@873 de2fecce-e211-0410-80a6-f3fac2684e05

edk2/MdePkg/Library/BaseLib/GetPowerOfTwo32.c
edk2/MdePkg/Library/BaseLib/GetPowerOfTwo64.c

index 6dfe805..dbf4ca6 100644 (file)
@@ -34,6 +34,7 @@ GetPowerOfTwo32 (
   )\r
 {\r
   INTN                              BitPos;\r
-\r
-  return (BitPos = HighBitSet32 (Operand)) > 0 ? 1ul << BitPos : 0;\r
+  \r
+  BitPos = HighBitSet32 (Operand);\r
+  return BitPos >= 0 ? 1ul << BitPos : 0;\r
 }\r
index 9994fb8..8372a7f 100644 (file)
@@ -35,5 +35,6 @@ GetPowerOfTwo64 (
 {\r
   INTN                              BitPos;\r
 \r
-  return (BitPos = HighBitSet64 (Operand)) > 0 ? LShiftU64 (1, BitPos) : 0;\r
+  BitPos = HighBitSet64 (Operand);\r
+  return BitPos >= 0 ? LShiftU64 (1, BitPos) : 0;\r
 }\r