]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Library/BaseIoLibIntrinsic/IoLibMsc.c
remove some comments introduced by tools.
[mirror_edk2.git] / MdePkg / Library / BaseIoLibIntrinsic / IoLibMsc.c
index cfe5ddff4394b4a6305825f049b56bba0ae413d0..9fec1bcae90779cf399eef1ad3f32b770c63c700 100644 (file)
@@ -8,7 +8,7 @@
   We don't advocate putting compiler specifics in libraries or drivers but there\r
   is no other way to make this work.\r
 \r
-  Copyright (c) 2006, Intel Corporation<BR>\r
+  Copyright (c) 2006 - 2007, Intel Corporation<BR>\r
   All rights reserved. This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
-  Module Name:  IoLibMsc.c\r
-\r
 **/\r
 \r
 \r
-#if _MSC_EXTENSIONS\r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "BaseIoLibIntrinsicInternal.h"\r
 \r
 //\r
 // Microsoft Visual Studio 7.1 Function Prototypes for I/O Intrinsics\r
@@ -46,8 +47,8 @@ void          _ReadWriteBarrier (void);
 //\r
 // _ReadWriteBarrier() forces memory reads and writes to complete at the point\r
 // in the call. This is only a hint to the compiler and does emit code.\r
-// In past versions of the compiler, _ReadWriteBarrier was enforced only \r
-// locally and did not affect functions up the call tree. In Visual C++ \r
+// In past versions of the compiler, _ReadWriteBarrier was enforced only\r
+// locally and did not affect functions up the call tree. In Visual C++\r
 // 2005, _ReadWriteBarrier is enforced all the way up the call tree.\r
 //\r
 \r
@@ -71,8 +72,12 @@ IoRead8 (
   IN      UINTN                     Port\r
   )\r
 {\r
+  UINT8                             Value;\r
+\r
+  _ReadWriteBarrier ();\r
+  Value = (UINT8)_inp ((UINT16)Port);\r
   _ReadWriteBarrier ();\r
-  return (UINT8)_inp ((UINT16)Port);\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -98,7 +103,9 @@ IoWrite8 (
   )\r
 {\r
   _ReadWriteBarrier ();\r
-  return (UINT8)_outp ((UINT16)Port, Value);\r
+  (UINT8)_outp ((UINT16)Port, Value);\r
+  _ReadWriteBarrier ();\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -121,9 +128,13 @@ IoRead16 (
   IN      UINTN                     Port\r
   )\r
 {\r
+  UINT16                            Value;\r
+\r
   ASSERT ((Port & 1) == 0);\r
   _ReadWriteBarrier ();\r
-  return _inpw((UINT16)Port);\r
+  Value = _inpw ((UINT16)Port);\r
+  _ReadWriteBarrier ();\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -150,7 +161,9 @@ IoWrite16 (
 {\r
   ASSERT ((Port & 1) == 0);\r
   _ReadWriteBarrier ();\r
-  return _outpw ((UINT16)Port, Value);\r
+  _outpw ((UINT16)Port, Value);\r
+  _ReadWriteBarrier ();\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -173,9 +186,13 @@ IoRead32 (
   IN      UINTN                     Port\r
   )\r
 {\r
+  UINT32                            Value;\r
+\r
   ASSERT ((Port & 3) == 0);\r
   _ReadWriteBarrier ();\r
-  return _inpd((UINT16)Port);\r
+  Value = _inpd ((UINT16)Port);\r
+  _ReadWriteBarrier ();\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -202,7 +219,9 @@ IoWrite32 (
 {\r
   ASSERT ((Port & 3) == 0);\r
   _ReadWriteBarrier ();\r
-  return _outpd ((UINT16)Port, Value);\r
+  _outpd ((UINT16)Port, Value);\r
+  _ReadWriteBarrier ();\r
+  return Value;\r
 }\r
 \r
 \r
@@ -226,8 +245,10 @@ MmioRead8 (
   IN      UINTN                     Address\r
   )\r
 {\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT8 *)Address;\r
+  UINT8                             Value;\r
+\r
+  Value = *(volatile UINT8*)Address;\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -250,8 +271,7 @@ MmioWrite8 (
   IN      UINT8                     Value\r
   )\r
 {\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT8 *)Address = Value;\r
+  return *(volatile UINT8*)Address = Value;\r
 }\r
 \r
 /**\r
@@ -274,9 +294,11 @@ MmioRead16 (
   IN      UINTN                     Address\r
   )\r
 {\r
+  UINT16                            Value;\r
+\r
   ASSERT ((Address & 1) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT16 *)Address;\r
+  Value = *(volatile UINT16*)Address;\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -300,8 +322,7 @@ MmioWrite16 (
   )\r
 {\r
   ASSERT ((Address & 1) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT16 *)Address = Value;\r
+  return *(volatile UINT16*)Address = Value;\r
 }\r
 \r
 /**\r
@@ -324,9 +345,11 @@ MmioRead32 (
   IN      UINTN                     Address\r
   )\r
 {\r
+  UINT32                            Value;\r
+\r
   ASSERT ((Address & 3) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT32 *)Address;\r
+  Value = *(volatile UINT32*)Address;\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -350,8 +373,7 @@ MmioWrite32 (
   )\r
 {\r
   ASSERT ((Address & 3) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT32 *)Address = Value;\r
+  return *(volatile UINT32*)Address = Value;\r
 }\r
 \r
 /**\r
@@ -374,9 +396,11 @@ MmioRead64 (
   IN      UINTN                     Address\r
   )\r
 {\r
+  UINT64                            Value;\r
+\r
   ASSERT ((Address & 7) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT64 *)Address;\r
+  Value = *(volatile UINT64*)Address;\r
+  return Value;\r
 }\r
 \r
 /**\r
@@ -400,8 +424,6 @@ MmioWrite64 (
   )\r
 {\r
   ASSERT ((Address & 7) == 0);\r
-  _ReadWriteBarrier ();\r
-  return *(volatile UINT64 *)Address = Value;\r
+  return *(volatile UINT64*)Address = Value;\r
 }\r
 \r
-#endif\r