]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Ipf/ProcessorBind.h
Correct Minor Comments in M3 to M4 review.
[mirror_edk2.git] / MdePkg / Include / Ipf / ProcessorBind.h
index 29222bba60f304fe9a4efb9bcc4bde62756939b2..31940a578854d89591c89f5817aec6f08987c78f 100644 (file)
 \r
 \r
 #if __INTEL_COMPILER\r
-//\r
-// Disable ICC's remark #593: "LocalVariable" was set but never used\r
-// This is legal ANSI C code so we disable the remark that is turned on with -Wall\r
-//\r
-#pragma warning ( disable : 593 )\r
-\r
 //\r
 // Disable ICC's remark #869: "Parameter" was never referenced warning.\r
 // This is legal ANSI C code so we disable the remark that is turned on with -Wall\r
   //\r
 \r
   #if _MSC_EXTENSIONS\r
-\r
-\r
     //\r
     // use Microsoft C complier dependent interger width types\r
     //\r
   #else\r
     #ifdef _EFI_P64\r
       //\r
-      // P64 - is Intel Itanium(TM) speak for pointers being 64-bit and longs and ints\r
-      //  are 32-bits\r
+      // P64 - pointers being 64-bit and longs and ints are 32-bits.\r
       //\r
       typedef unsigned long long  UINT64;\r
       typedef long long           INT64;\r
@@ -246,6 +237,18 @@ typedef struct {
   UINT64                    r11;\r
 } PAL_CALL_RETURN;\r
 \r
+/**\r
+  Return the pointer to the first instruction of a function given a function pointer.\r
+  For Itanium CPUs, all function calls are made through a PLABEL, so a pointer to a function \r
+  is actually a pointer to a PLABEL.  The pointer to the first instruction of the function \r
+  is contained within the PLABEL.  This macro may be used to retrieve a pointer to the first \r
+  instruction of a function independent of the CPU architecture being used.  This is very \r
+  useful when printing function addresses through DEBUG() macros.\r
+  \r
+  @param  p A pointer to a function\r
+\r
+  @return The pointer to the first instruction of a function given a function pointer.\r
+**/\r
 #define FUNCTION_ENTRY_POINT(p) (((EFI_PLABEL *)(p))->EntryPoint)\r
 \r
 #endif\r