]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Make EDK Module Package pass Intel IPF compiler with /Ox switch.
authorxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 2 Feb 2007 02:50:13 +0000 (02:50 +0000)
committerxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 2 Feb 2007 02:50:13 +0000 (02:50 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2346 6f19259b-4bc3-4df7-8a09-765794883524

EdkModulePkg/Bus/Pci/Undi/RuntimeDxe/E100b.c
EdkModulePkg/Core/DxeIplPeim/Ipf/ImageRead.c
EdkModulePkg/Universal/Ebc/Dxe/EbcExecute.c
EdkModulePkg/Universal/PCD/Pei/Pcd.c
EdkModulePkg/Universal/PCD/Pei/Service.c
EdkModulePkg/Universal/PCD/Pei/Service.h

index ed396fd3423c48473d0a359e375e9b1cb6082d18..bca0add42c6bfcfc053d468cfa7d1ea5390f2ba1 100644 (file)
@@ -581,7 +581,7 @@ Returns:
   //\r
   TxCB  *cmd_ptr;\r
   UINT8 *data_ptr;\r
-  INT16 Index;\r
+  volatile INT16 Index;\r
   UINT8 my_filter;\r
 \r
   cmd_ptr   = GetFreeCB (AdapterInfo);\r
index 3131533b2abdc58fc9796e59a994175da1e4513b..b04c9a7e1be6dfa15eaf1d562c7bfb54a7f47823 100644 (file)
@@ -50,7 +50,7 @@ Returns:
 {\r
   CHAR8 *Destination8;\r
   CHAR8 *Source8;\r
-  UINTN Length;\r
+  volatile UINTN Length;\r
 \r
   Destination8  = Buffer;\r
   Source8       = (CHAR8 *) ((UINTN) FileHandle + FileOffset);\r
index 5e6b3e3a8f86d20da9b876e4f973ec6080251d61..4b020cb6daa7ff4d6fe0126f3ba38c2094ca8c9f 100644 (file)
@@ -4541,7 +4541,7 @@ Returns:
 --*/\r
 {\r
   UINTN   Data;\r
-  UINT32  Size;\r
+  volatile UINT32  Size;\r
   UINT8   *FromPtr;\r
   UINT8   *ToPtr;\r
   //\r
index b8ed5b2119f649885a26e2165ec4584b9a15944f..daaba4b539615654c82be19f0a959ed28e081eb2 100644 (file)
@@ -667,3 +667,130 @@ PeiPcdGetNextTokenSpace (
 \r
 }\r
 \r
+UINTN\r
+GetPtrTypeSize (\r
+  IN    UINTN             LocalTokenNumberTableIdx,\r
+  OUT   UINTN             *MaxSize,\r
+  IN    PEI_PCD_DATABASE  *Database\r
+  )\r
+{\r
+  INTN        SizeTableIdx;\r
+  UINTN       LocalTokenNumber;\r
+  SKU_ID      *SkuIdTable;\r
+  SIZE_INFO   *SizeTable;\r
+  UINTN       i;\r
+\r
+  SizeTableIdx = GetSizeTableIndex (LocalTokenNumberTableIdx, Database);\r
+\r
+  LocalTokenNumber = Database->Init.LocalTokenNumberTable[LocalTokenNumberTableIdx];\r
+\r
+  ASSERT ((LocalTokenNumber & PCD_DATUM_TYPE_ALL_SET) == PCD_DATUM_TYPE_POINTER);\r
+  \r
+  SizeTable = Database->Init.SizeTable;\r
+\r
+  *MaxSize = SizeTable[SizeTableIdx];\r
+  //\r
+  // SizeTable only contain record for PCD_DATUM_TYPE_POINTER type \r
+  // PCD entry.\r
+  //\r
+  if (LocalTokenNumber & PCD_TYPE_VPD) {\r
+      //\r
+      // We have only one entry for VPD enabled PCD entry:\r
+      // 1) MAX Size.\r
+      // We consider current size is equal to MAX size.\r
+      //\r
+      return *MaxSize;\r
+  } else {\r
+    if ((LocalTokenNumber & PCD_TYPE_SKU_ENABLED) == 0) {\r
+      //\r
+      // We have only two entry for Non-Sku enabled PCD entry:\r
+      // 1) MAX SIZE\r
+      // 2) Current Size\r
+      //\r
+      return SizeTable[SizeTableIdx + 1];\r
+    } else {\r
+      //\r
+      // We have these entry for SKU enabled PCD entry\r
+      // 1) MAX SIZE\r
+      // 2) Current Size for each SKU_ID (It is equal to MaxSku).\r
+      //\r
+      SkuIdTable = GetSkuIdArray (LocalTokenNumberTableIdx, Database);\r
+      for (i = 0; i < SkuIdTable[0]; i++) {\r
+        if (SkuIdTable[1 + i] == Database->Init.SystemSkuId) {\r
+          return SizeTable[SizeTableIdx + 1 + i];\r
+        }\r
+      }\r
+      return SizeTable[SizeTableIdx + 1];\r
+    }\r
+  }\r
+}\r
+\r
+\r
+\r
+BOOLEAN\r
+SetPtrTypeSize (\r
+  IN          UINTN             LocalTokenNumberTableIdx,\r
+  IN    OUT   UINTN             *CurrentSize,\r
+  IN          PEI_PCD_DATABASE  *Database\r
+  )\r
+{\r
+  INTN        SizeTableIdx;\r
+  UINTN       LocalTokenNumber;\r
+  SKU_ID      *SkuIdTable;\r
+  SIZE_INFO   *SizeTable;\r
+  UINTN       i;\r
+  UINTN       MaxSize;\r
+  \r
+  SizeTableIdx = GetSizeTableIndex (LocalTokenNumberTableIdx, Database);\r
+\r
+  LocalTokenNumber = Database->Init.LocalTokenNumberTable[LocalTokenNumberTableIdx];\r
+\r
+  ASSERT ((LocalTokenNumber & PCD_DATUM_TYPE_ALL_SET) == PCD_DATUM_TYPE_POINTER);\r
+  \r
+  SizeTable = Database->Init.SizeTable;\r
+\r
+  MaxSize = SizeTable[SizeTableIdx];\r
+  //\r
+  // SizeTable only contain record for PCD_DATUM_TYPE_POINTER type \r
+  // PCD entry.\r
+  //\r
+  if (LocalTokenNumber & PCD_TYPE_VPD) {\r
+      //\r
+      // We shouldn't come here as we don't support SET for VPD\r
+      //\r
+      ASSERT (FALSE);\r
+      return FALSE;\r
+  } else {\r
+    if ((*CurrentSize > MaxSize) ||\r
+      (*CurrentSize == MAX_ADDRESS)) {\r
+       *CurrentSize = MaxSize;\r
+       return FALSE;\r
+    } \r
+    \r
+    if ((LocalTokenNumber & PCD_TYPE_SKU_ENABLED) == 0) {\r
+      //\r
+      // We have only two entry for Non-Sku enabled PCD entry:\r
+      // 1) MAX SIZE\r
+      // 2) Current Size\r
+      //\r
+      SizeTable[SizeTableIdx + 1] = (SIZE_INFO) *CurrentSize;\r
+      return TRUE;\r
+    } else {\r
+      //\r
+      // We have these entry for SKU enabled PCD entry\r
+      // 1) MAX SIZE\r
+      // 2) Current Size for each SKU_ID (It is equal to MaxSku).\r
+      //\r
+      SkuIdTable = GetSkuIdArray (LocalTokenNumberTableIdx, Database);\r
+      for (i = 0; i < SkuIdTable[0]; i++) {\r
+        if (SkuIdTable[1 + i] == Database->Init.SystemSkuId) {\r
+          SizeTable[SizeTableIdx + 1 + i] = (SIZE_INFO) *CurrentSize;\r
+          return TRUE;\r
+        }\r
+      }\r
+      SizeTable[SizeTableIdx + 1] = (SIZE_INFO) *CurrentSize;\r
+      return TRUE;\r
+    }\r
+  }\r
+\r
+}\r
index c228d3b3835bf078673c16dcfd11eb26ec1874f4..e705c283cb8be05db457c158abd2cd2edd823400 100644 (file)
@@ -652,7 +652,7 @@ GetPcdDatabase (
 }\r
 \r
 \r
-STATIC\r
+\r
 SKU_ID *\r
 GetSkuIdArray (\r
   IN    UINTN             LocalTokenNumberTableIdx,\r
@@ -673,7 +673,7 @@ GetSkuIdArray (
 }\r
 \r
 \r
-STATIC\r
+\r
 UINTN\r
 GetSizeTableIndex (\r
   IN    UINTN             LocalTokenNumberTableIdx,\r
@@ -726,134 +726,3 @@ GetSizeTableIndex (
 \r
   return SizeTableIdx;\r
 }\r
-\r
-\r
-\r
-\r
-UINTN\r
-GetPtrTypeSize (\r
-  IN    UINTN             LocalTokenNumberTableIdx,\r
-  OUT   UINTN             *MaxSize,\r
-  IN    PEI_PCD_DATABASE  *Database\r
-  )\r
-{\r
-  INTN        SizeTableIdx;\r
-  UINTN       LocalTokenNumber;\r
-  SKU_ID      *SkuIdTable;\r
-  SIZE_INFO   *SizeTable;\r
-  UINTN       i;\r
-\r
-  SizeTableIdx = GetSizeTableIndex (LocalTokenNumberTableIdx, Database);\r
-\r
-  LocalTokenNumber = Database->Init.LocalTokenNumberTable[LocalTokenNumberTableIdx];\r
-\r
-  ASSERT ((LocalTokenNumber & PCD_DATUM_TYPE_ALL_SET) == PCD_DATUM_TYPE_POINTER);\r
-  \r
-  SizeTable = Database->Init.SizeTable;\r
-\r
-  *MaxSize = SizeTable[SizeTableIdx];\r
-  //\r
-  // SizeTable only contain record for PCD_DATUM_TYPE_POINTER type \r
-  // PCD entry.\r
-  //\r
-  if (LocalTokenNumber & PCD_TYPE_VPD) {\r
-      //\r
-      // We have only one entry for VPD enabled PCD entry:\r
-      // 1) MAX Size.\r
-      // We consider current size is equal to MAX size.\r
-      //\r
-      return *MaxSize;\r
-  } else {\r
-    if ((LocalTokenNumber & PCD_TYPE_SKU_ENABLED) == 0) {\r
-      //\r
-      // We have only two entry for Non-Sku enabled PCD entry:\r
-      // 1) MAX SIZE\r
-      // 2) Current Size\r
-      //\r
-      return SizeTable[SizeTableIdx + 1];\r
-    } else {\r
-      //\r
-      // We have these entry for SKU enabled PCD entry\r
-      // 1) MAX SIZE\r
-      // 2) Current Size for each SKU_ID (It is equal to MaxSku).\r
-      //\r
-      SkuIdTable = GetSkuIdArray (LocalTokenNumberTableIdx, Database);\r
-      for (i = 0; i < SkuIdTable[0]; i++) {\r
-        if (SkuIdTable[1 + i] == Database->Init.SystemSkuId) {\r
-          return SizeTable[SizeTableIdx + 1 + i];\r
-        }\r
-      }\r
-      return SizeTable[SizeTableIdx + 1];\r
-    }\r
-  }\r
-}\r
-\r
-\r
-\r
-BOOLEAN\r
-SetPtrTypeSize (\r
-  IN          UINTN             LocalTokenNumberTableIdx,\r
-  IN    OUT   UINTN             *CurrentSize,\r
-  IN          PEI_PCD_DATABASE  *Database\r
-  )\r
-{\r
-  INTN        SizeTableIdx;\r
-  UINTN       LocalTokenNumber;\r
-  SKU_ID      *SkuIdTable;\r
-  SIZE_INFO   *SizeTable;\r
-  UINTN       i;\r
-  UINTN       MaxSize;\r
-  \r
-  SizeTableIdx = GetSizeTableIndex (LocalTokenNumberTableIdx, Database);\r
-\r
-  LocalTokenNumber = Database->Init.LocalTokenNumberTable[LocalTokenNumberTableIdx];\r
-\r
-  ASSERT ((LocalTokenNumber & PCD_DATUM_TYPE_ALL_SET) == PCD_DATUM_TYPE_POINTER);\r
-  \r
-  SizeTable = Database->Init.SizeTable;\r
-\r
-  MaxSize = SizeTable[SizeTableIdx];\r
-  //\r
-  // SizeTable only contain record for PCD_DATUM_TYPE_POINTER type \r
-  // PCD entry.\r
-  //\r
-  if (LocalTokenNumber & PCD_TYPE_VPD) {\r
-      //\r
-      // We shouldn't come here as we don't support SET for VPD\r
-      //\r
-      ASSERT (FALSE);\r
-      return FALSE;\r
-  } else {\r
-    if ((*CurrentSize > MaxSize) ||\r
-      (*CurrentSize == MAX_ADDRESS)) {\r
-       *CurrentSize = MaxSize;\r
-       return FALSE;\r
-    } \r
-    \r
-    if ((LocalTokenNumber & PCD_TYPE_SKU_ENABLED) == 0) {\r
-      //\r
-      // We have only two entry for Non-Sku enabled PCD entry:\r
-      // 1) MAX SIZE\r
-      // 2) Current Size\r
-      //\r
-      SizeTable[SizeTableIdx + 1] = (SIZE_INFO) *CurrentSize;\r
-      return TRUE;\r
-    } else {\r
-      //\r
-      // We have these entry for SKU enabled PCD entry\r
-      // 1) MAX SIZE\r
-      // 2) Current Size for each SKU_ID (It is equal to MaxSku).\r
-      //\r
-      SkuIdTable = GetSkuIdArray (LocalTokenNumberTableIdx, Database);\r
-      for (i = 0; i < SkuIdTable[0]; i++) {\r
-        if (SkuIdTable[1 + i] == Database->Init.SystemSkuId) {\r
-          SizeTable[SizeTableIdx + 1 + i] = (SIZE_INFO) *CurrentSize;\r
-          return TRUE;\r
-        }\r
-      }\r
-      SizeTable[SizeTableIdx + 1] = (SIZE_INFO) *CurrentSize;\r
-      return TRUE;\r
-    }\r
-  }\r
-\r
-}\r
index 674197b0cf06109a56c0bc64f663054270c47634..093c37149cbf35473ab5cfc549aa0598798c2d18 100644 (file)
@@ -415,8 +415,19 @@ BuildPcdDatabase (
   )\r
 ;\r
 \r
+SKU_ID *\r
+GetSkuIdArray (\r
+  IN    UINTN             LocalTokenNumberTableIdx,\r
+  IN    PEI_PCD_DATABASE  *Database\r
+  )\r
+;\r
 \r
-\r
+UINTN\r
+GetSizeTableIndex (\r
+  IN    UINTN             LocalTokenNumberTableIdx,\r
+  IN    PEI_PCD_DATABASE  *Database\r
+  )\r
+;\r
 \r
 UINTN\r
 GetPtrTypeSize (\r