]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdePkg/MemoryLib: Refine InternalMemSetMem16|32|64 functions logic
authorHao Wu <hao.a.wu@intel.com>
Tue, 15 Nov 2016 05:26:47 +0000 (13:26 +0800)
committerHao Wu <hao.a.wu@intel.com>
Thu, 22 Dec 2016 08:17:16 +0000 (16:17 +0800)
This commit refines the logic for InternalMemSetMem16|32|64 functions. It
avoids using the decrement operator '--' for array index to prevent
possible mis-reports by static code checkers.

Please note that those modified functions are only consumed within
MemoryLib by APIs SetMem16|32|64, and those APIs will handle the case when
the input number of bytes to set is 0. Hence, the behavior of APIs
SetMem16|32|64 is not changed.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
MdePkg/Library/BaseMemoryLib/MemLibGeneric.c
MdePkg/Library/PeiMemoryLib/MemLibGeneric.c
MdePkg/Library/UefiMemoryLib/MemLibGeneric.c

index b058be8f7112007a21e1b2e3e07a1c9ee3f5815e..cf40ace1fa0366fe91178c5a4587ee018aa008ac 100644 (file)
@@ -37,9 +37,9 @@ InternalMemSetMem16 (
   IN      UINT16                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT16*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT16*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -61,9 +61,9 @@ InternalMemSetMem32 (
   IN      UINT32                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT32*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT32*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -85,9 +85,9 @@ InternalMemSetMem64 (
   IN      UINT64                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT64*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT64*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
index 490b244097fc2dacbf56baae3d0b08f1cc15dc80..ed18b5758283f59bfcc2395669fc740899080fbb 100644 (file)
@@ -37,9 +37,9 @@ InternalMemSetMem16 (
   IN      UINT16                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT16*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT16*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -61,9 +61,9 @@ InternalMemSetMem32 (
   IN      UINT32                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT32*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT32*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -85,9 +85,9 @@ InternalMemSetMem64 (
   IN      UINT64                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT64*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT64*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
index da02b6c52f28b5ab9851ae5a72df3741b1a306a4..f1efdbb413d1dc10971b039e5488f952c586c1bc 100644 (file)
@@ -37,9 +37,9 @@ InternalMemSetMem16 (
   IN      UINT16                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT16*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT16*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -61,9 +61,9 @@ InternalMemSetMem32 (
   IN      UINT32                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT32*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT32*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r
@@ -85,9 +85,9 @@ InternalMemSetMem64 (
   IN      UINT64                    Value\r
   )\r
 {\r
-  do {\r
-    ((UINT64*)Buffer)[--Length] = Value;\r
-  } while (Length != 0);\r
+  for (; Length != 0; Length--) {\r
+    ((UINT64*)Buffer)[Length - 1] = Value;\r
+  }\r
   return Buffer;\r
 }\r
 \r