]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseLib/BitField.c
Split AsmReadKr7() and AsmWriteKr7() from AccessKr.s file since these two APIs are...
[mirror_edk2.git] / MdePkg / Library / BaseLib / BitField.c
index 8c713b29bd2edf8b9d858ac2dc4d5d071a152bc7..1c1fbdfeb781d3f1599f97d0039ca36356f22fae 100644 (file)
@@ -15,7 +15,7 @@
 #include "BaseLibInternals.h"\r
 \r
 /**\r
-  Worker function that returns a bit field from Operand\r
+  Worker function that returns a bit field from Operand.\r
 \r
   Returns the bitfield specified by the StartBit and the EndBit from Operand.\r
 \r
   @return The bit field read.\r
 \r
 **/\r
-unsigned int\r
+UINTN\r
 EFIAPI\r
-BitFieldReadUint (\r
-  IN      unsigned int              Operand,\r
+InternalBaseLibBitFieldReadUint (\r
+  IN      UINTN                     Operand,\r
   IN      UINTN                     StartBit,\r
   IN      UINTN                     EndBit\r
   )\r
 {\r
   //\r
-  // ~((unsigned int)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
+  // ~((UINTN)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
   // are 1's while bit[EndBit + 1] thru the most significant bit are 0's.\r
   //\r
-  return (Operand & ~((unsigned int)-2 << EndBit)) >> StartBit;\r
+  return (Operand & ~((UINTN)-2 << EndBit)) >> StartBit;\r
 }\r
 \r
 /**\r
-  Worker function that reads a bit field from Operand, performs a bitwise OR, \r
+  Worker function that reads a bit field from Operand, performs a bitwise OR,\r
   and returns the result.\r
 \r
   Performs a bitwise OR between the bit field specified by StartBit and EndBit\r
@@ -57,24 +57,24 @@ BitFieldReadUint (
   @return The new value.\r
 \r
 **/\r
-unsigned int\r
+UINTN\r
 EFIAPI\r
-BitFieldOrUint (\r
-  IN      unsigned int              Operand,\r
+InternalBaseLibBitFieldOrUint (\r
+  IN      UINTN                     Operand,\r
   IN      UINTN                     StartBit,\r
   IN      UINTN                     EndBit,\r
-  IN      unsigned int              OrData\r
+  IN      UINTN                     OrData\r
   )\r
 {\r
   //\r
-  // ~((unsigned int)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
+  // ~((UINTN)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
   // are 1's while bit[EndBit + 1] thru the most significant bit are 0's.\r
   //\r
-  return Operand | ((OrData << StartBit) & ~((unsigned int) -2 << EndBit));\r
+  return Operand | ((OrData << StartBit) & ~((UINTN) -2 << EndBit));\r
 }\r
 \r
 /**\r
-  Worker function that reads a bit field from Operand, performs a bitwise AND, \r
+  Worker function that reads a bit field from Operand, performs a bitwise AND,\r
   and returns the result.\r
 \r
   Performs a bitwise AND between the bit field specified by StartBit and EndBit\r
@@ -89,20 +89,20 @@ BitFieldOrUint (
   @return The new value.\r
 \r
 **/\r
-unsigned int\r
+UINTN\r
 EFIAPI\r
-BitFieldAndUint (\r
-  IN      unsigned int              Operand,\r
+InternalBaseLibBitFieldAndUint (\r
+  IN      UINTN                     Operand,\r
   IN      UINTN                     StartBit,\r
   IN      UINTN                     EndBit,\r
-  IN      unsigned int              AndData\r
+  IN      UINTN                     AndData\r
   )\r
 {\r
   //\r
-  // ~((unsigned int)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
+  // ~((UINTN)-2 << EndBit) is a mask in which bit[0] thru bit[EndBit]\r
   // are 1's while bit[EndBit + 1] thru the most significant bit are 0's.\r
   //\r
-  return Operand & ~((~AndData << StartBit) & ~((unsigned int) -2 << EndBit));\r
+  return Operand & ~((~AndData << StartBit) & ~((UINTN)-2 << EndBit));\r
 }\r
 \r
 /**\r
@@ -134,7 +134,7 @@ BitFieldRead8 (
 {\r
   ASSERT (EndBit < 8);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT8)BitFieldReadUint (Operand, StartBit, EndBit);\r
+  return (UINT8)InternalBaseLibBitFieldReadUint (Operand, StartBit, EndBit);\r
 }\r
 \r
 /**\r
@@ -177,7 +177,7 @@ BitFieldWrite8 (
   Reads a bit field from an 8-bit value, performs a bitwise OR, and returns the\r
   result.\r
 \r
-  Performs a bitwise inclusive OR between the bit field specified by StartBit\r
+  Performs a bitwise OR between the bit field specified by StartBit\r
   and EndBit in Operand and the value specified by OrData. All other bits in\r
   Operand are preserved. The new 8-bit value is returned.\r
 \r
@@ -207,7 +207,7 @@ BitFieldOr8 (
 {\r
   ASSERT (EndBit < 8);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT8)BitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
+  return (UINT8)InternalBaseLibBitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
 }\r
 \r
 /**\r
@@ -244,7 +244,7 @@ BitFieldAnd8 (
 {\r
   ASSERT (EndBit < 8);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT8)BitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
+  return (UINT8)InternalBaseLibBitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
 }\r
 \r
 /**\r
@@ -252,8 +252,8 @@ BitFieldAnd8 (
   bitwise OR, and returns the result.\r
 \r
   Performs a bitwise AND between the bit field specified by StartBit and EndBit\r
-  in Operand and the value specified by AndData, followed by a bitwise\r
-  inclusive OR with value specified by OrData. All other bits in Operand are\r
+  in Operand and the value specified by AndData, followed by a bitwise \r
+  OR with value specified by OrData. All other bits in Operand are\r
   preserved. The new 8-bit value is returned.\r
 \r
   If 8-bit operations are not supported, then ASSERT().\r
@@ -321,7 +321,7 @@ BitFieldRead16 (
 {\r
   ASSERT (EndBit < 16);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT16)BitFieldReadUint (Operand, StartBit, EndBit);\r
+  return (UINT16)InternalBaseLibBitFieldReadUint (Operand, StartBit, EndBit);\r
 }\r
 \r
 /**\r
@@ -364,7 +364,7 @@ BitFieldWrite16 (
   Reads a bit field from a 16-bit value, performs a bitwise OR, and returns the\r
   result.\r
 \r
-  Performs a bitwise inclusive OR between the bit field specified by StartBit\r
+  Performs a bitwise OR between the bit field specified by StartBit\r
   and EndBit in Operand and the value specified by OrData. All other bits in\r
   Operand are preserved. The new 16-bit value is returned.\r
 \r
@@ -394,7 +394,7 @@ BitFieldOr16 (
 {\r
   ASSERT (EndBit < 16);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT16)BitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
+  return (UINT16)InternalBaseLibBitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
 }\r
 \r
 /**\r
@@ -431,7 +431,7 @@ BitFieldAnd16 (
 {\r
   ASSERT (EndBit < 16);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT16)BitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
+  return (UINT16)InternalBaseLibBitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
 }\r
 \r
 /**\r
@@ -439,8 +439,8 @@ BitFieldAnd16 (
   bitwise OR, and returns the result.\r
 \r
   Performs a bitwise AND between the bit field specified by StartBit and EndBit\r
-  in Operand and the value specified by AndData, followed by a bitwise\r
-  inclusive OR with value specified by OrData. All other bits in Operand are\r
+  in Operand and the value specified by AndData, followed by a bitwise \r
+  OR with value specified by OrData. All other bits in Operand are\r
   preserved. The new 16-bit value is returned.\r
 \r
   If 16-bit operations are not supported, then ASSERT().\r
@@ -508,7 +508,7 @@ BitFieldRead32 (
 {\r
   ASSERT (EndBit < 32);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT32)BitFieldReadUint (Operand, StartBit, EndBit);\r
+  return (UINT32)InternalBaseLibBitFieldReadUint (Operand, StartBit, EndBit);\r
 }\r
 \r
 /**\r
@@ -551,7 +551,7 @@ BitFieldWrite32 (
   Reads a bit field from a 32-bit value, performs a bitwise OR, and returns the\r
   result.\r
 \r
-  Performs a bitwise inclusive OR between the bit field specified by StartBit\r
+  Performs a bitwise OR between the bit field specified by StartBit\r
   and EndBit in Operand and the value specified by OrData. All other bits in\r
   Operand are preserved. The new 32-bit value is returned.\r
 \r
@@ -581,7 +581,7 @@ BitFieldOr32 (
 {\r
   ASSERT (EndBit < 32);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT32)BitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
+  return (UINT32)InternalBaseLibBitFieldOrUint (Operand, StartBit, EndBit, OrData);\r
 }\r
 \r
 /**\r
@@ -618,7 +618,7 @@ BitFieldAnd32 (
 {\r
   ASSERT (EndBit < 32);\r
   ASSERT (StartBit <= EndBit);\r
-  return (UINT32)BitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
+  return (UINT32)InternalBaseLibBitFieldAndUint (Operand, StartBit, EndBit, AndData);\r
 }\r
 \r
 /**\r
@@ -626,8 +626,8 @@ BitFieldAnd32 (
   bitwise OR, and returns the result.\r
 \r
   Performs a bitwise AND between the bit field specified by StartBit and EndBit\r
-  in Operand and the value specified by AndData, followed by a bitwise\r
-  inclusive OR with value specified by OrData. All other bits in Operand are\r
+  in Operand and the value specified by AndData, followed by a bitwise \r
+  OR with value specified by OrData. All other bits in Operand are\r
   preserved. The new 32-bit value is returned.\r
 \r
   If 32-bit operations are not supported, then ASSERT().\r
@@ -738,7 +738,7 @@ BitFieldWrite64 (
   Reads a bit field from a 64-bit value, performs a bitwise OR, and returns the\r
   result.\r
 \r
-  Performs a bitwise inclusive OR between the bit field specified by StartBit\r
+  Performs a bitwise OR between the bit field specified by StartBit\r
   and EndBit in Operand and the value specified by OrData. All other bits in\r
   Operand are preserved. The new 64-bit value is returned.\r
 \r
@@ -827,8 +827,8 @@ BitFieldAnd64 (
   bitwise OR, and returns the result.\r
 \r
   Performs a bitwise AND between the bit field specified by StartBit and EndBit\r
-  in Operand and the value specified by AndData, followed by a bitwise\r
-  inclusive OR with value specified by OrData. All other bits in Operand are\r
+  in Operand and the value specified by AndData, followed by a bitwise \r
+  OR with value specified by OrData. All other bits in Operand are\r
   preserved. The new 64-bit value is returned.\r
 \r
   If 64-bit operations are not supported, then ASSERT().\r