A workaround to a compiler bug that causes the high order 32 bits of GetPerformanceCo...
authorbxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 21 Aug 2006 09:32:26 +0000 (09:32 +0000)
committerbxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 21 Aug 2006 09:32:26 +0000 (09:32 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1336 6f19259b-4bc3-4df7-8a09-765794883524

MdePkg/Library/BaseTimerLibLocalApic/x86TimerLib.c

index dd240d8..fe18878 100644 (file)
@@ -210,7 +210,8 @@ GetPerformanceCounter (
   VOID\r
   )\r
 {\r
-  return (UINT32)InternalX86GetTimerTick (InternalX86GetApicBase ());\r
+  volatile static UINT64 Mask = 0xffffffff;\r
+  return InternalX86GetTimerTick (InternalX86GetApicBase ()) & Mask;\r
 }\r
 \r
 /**\r