]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmPkg: Enhance CompareGuid performance by using CompareMem instead of nested unalign...
authoroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 31 May 2012 15:28:37 +0000 (15:28 +0000)
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 31 May 2012 15:28:37 +0000 (15:28 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen eugene@hp.com
Reviewed-by: Olivier Martin olivier.martin@arm.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13409 6f19259b-4bc3-4df7-8a09-765794883524

ArmPkg/Library/BaseMemoryLibStm/MemLibGuid.c
ArmPkg/Library/BaseMemoryLibVstm/MemLibGuid.c

index d4e504a0137b1537f51cf2d1639b27807644867f..1d90a8bca206b82ee9e097011d4ffa11ce9504da 100755 (executable)
@@ -81,17 +81,7 @@ CompareGuid (
   IN CONST GUID  *Guid2\r
   )\r
 {\r
-  UINT64  LowPartOfGuid1;\r
-  UINT64  LowPartOfGuid2;\r
-  UINT64  HighPartOfGuid1;\r
-  UINT64  HighPartOfGuid2;\r
-\r
-  LowPartOfGuid1  = ReadUnaligned64 ((CONST UINT64*) Guid1);\r
-  LowPartOfGuid2  = ReadUnaligned64 ((CONST UINT64*) Guid2);\r
-  HighPartOfGuid1 = ReadUnaligned64 ((CONST UINT64*) Guid1 + 1);\r
-  HighPartOfGuid2 = ReadUnaligned64 ((CONST UINT64*) Guid2 + 1);\r
-\r
-  return (BOOLEAN) (LowPartOfGuid1 == LowPartOfGuid2 && HighPartOfGuid1 == HighPartOfGuid2);\r
+  return (CompareMem(Guid1, Guid2, sizeof(GUID)) == 0) ? TRUE : FALSE;\r
 }\r
 \r
 /**\r
index d4e504a0137b1537f51cf2d1639b27807644867f..748c80eadd1f3ce1bb16eba52680d3171062f924 100755 (executable)
@@ -81,17 +81,7 @@ CompareGuid (
   IN CONST GUID  *Guid2\r
   )\r
 {\r
-  UINT64  LowPartOfGuid1;\r
-  UINT64  LowPartOfGuid2;\r
-  UINT64  HighPartOfGuid1;\r
-  UINT64  HighPartOfGuid2;\r
-\r
-  LowPartOfGuid1  = ReadUnaligned64 ((CONST UINT64*) Guid1);\r
-  LowPartOfGuid2  = ReadUnaligned64 ((CONST UINT64*) Guid2);\r
-  HighPartOfGuid1 = ReadUnaligned64 ((CONST UINT64*) Guid1 + 1);\r
-  HighPartOfGuid2 = ReadUnaligned64 ((CONST UINT64*) Guid2 + 1);\r
-\r
-  return (BOOLEAN) (LowPartOfGuid1 == LowPartOfGuid2 && HighPartOfGuid1 == HighPartOfGuid2);\r
+  return (CompareMem(Guid1, Guid2, sizeof(GUID) == 0)) ? TRUE : FALSE;\r
 }\r
 \r
 /**\r