+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+StartPerformanceMeasurement (\r
+ IN CONST VOID *Handle OPTIONAL,\r
+ IN CONST CHAR8 *Token OPTIONAL,\r
+ IN CONST CHAR8 *Module OPTIONAL,\r
+ IN UINT64 TimeStamp\r
+ )\r
+{\r
+ return StartPerformanceMeasurementEx (Handle, Token, Module, TimeStamp, 0);\r
+}\r
+\r
+/**\r
+ Fills in the end time of a performance measurement.\r
+\r
+ Looks up the record that matches Handle, Token, and Module.\r
+ If the record can not be found then return RETURN_NOT_FOUND.\r
+ If the record is found and TimeStamp is not zero,\r
+ then TimeStamp is added to the record as the end time.\r
+ If the record is found and TimeStamp is zero, then this function reads\r
+ the current time stamp and adds that time stamp value to the record as the end time.\r
+\r
+ @param Handle Pointer to environment specific context used\r
+ to identify the component being measured.\r
+ @param Token Pointer to a Null-terminated ASCII string\r
+ that identifies the component being measured.\r
+ @param Module Pointer to a Null-terminated ASCII string\r
+ that identifies the module being measured.\r
+ @param TimeStamp 64-bit time stamp.\r
+\r
+ @retval RETURN_SUCCESS The end of the measurement was recorded.\r
+ @retval RETURN_NOT_FOUND The specified measurement record could not be found.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+EndPerformanceMeasurement (\r
+ IN CONST VOID *Handle OPTIONAL,\r
+ IN CONST CHAR8 *Token OPTIONAL,\r
+ IN CONST CHAR8 *Module OPTIONAL,\r
+ IN UINT64 TimeStamp\r
+ )\r
+{\r
+ return EndPerformanceMeasurementEx (Handle, Token, Module, TimeStamp, 0);\r
+}\r
+\r
+/**\r
+ Attempts to retrieve a performance measurement log entry from the performance measurement log.\r
+ It can also retrieve the log created by StartPerformanceMeasurementEx and EndPerformanceMeasurementEx,\r
+ and then eliminate the Identifier.\r
+\r
+ Attempts to retrieve the performance log entry specified by LogEntryKey. If LogEntryKey is\r
+ zero on entry, then an attempt is made to retrieve the first entry from the performance log,\r
+ and the key for the second entry in the log is returned. If the performance log is empty,\r
+ then no entry is retrieved and zero is returned. If LogEntryKey is not zero, then the performance\r
+ log entry associated with LogEntryKey is retrieved, and the key for the next entry in the log is\r
+ returned. If LogEntryKey is the key for the last entry in the log, then the last log entry is\r
+ retrieved and an implementation specific non-zero key value that specifies the end of the performance\r
+ log is returned. If LogEntryKey is equal this implementation specific non-zero key value, then no entry\r
+ is retrieved and zero is returned. In the cases where a performance log entry can be returned,\r
+ the log entry is returned in Handle, Token, Module, StartTimeStamp, and EndTimeStamp.\r
+ If LogEntryKey is not a valid log entry key for the performance measurement log, then ASSERT().\r
+ If Handle is NULL, then ASSERT().\r
+ If Token is NULL, then ASSERT().\r
+ If Module is NULL, then ASSERT().\r
+ If StartTimeStamp is NULL, then ASSERT().\r
+ If EndTimeStamp is NULL, then ASSERT().\r