ShellPkg/dp: Update dp tool to parse new Perf record

Since performance library instances have been updated
to create new FPDT records for new Perf macros.
So enhance dp tool to parse the new FPDT records.
Enhancement mainly includes:
1. parse the single records for PERF_EVENT macro
2. Parse the new added FPDT_DUAL_GUID_STRING_EVENT_RECORD

Cc: Liming Gao <liming.gao@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
Bi, Dandan
2018-06-22 16:56:20 +08:00
committed by Liming Gao
parent 6b4d58a10c
commit f45dd2dd4f
5 changed files with 113 additions and 12 deletions

View File

@ -108,6 +108,37 @@ IsPhase(
return RetVal;
}
/**
Determine whether the Measurement record is for core code.
@param[in] Measurement A pointer to the Measurement record to test.
@retval TRUE The measurement record is used for core.
@retval FALSE The measurement record is NOT used for core.
**/
BOOLEAN
IsCorePerf(
IN MEASUREMENT_RECORD *Measurement
)
{
BOOLEAN RetVal;
RetVal = (BOOLEAN)(
((Measurement->Identifier == MODULE_START_ID) ||
(Measurement->Identifier == MODULE_END_ID) ||
(Measurement->Identifier == MODULE_LOADIMAGE_START_ID) ||
(Measurement->Identifier == MODULE_LOADIMAGE_END_ID) ||
(Measurement->Identifier == MODULE_DB_START_ID) ||
(Measurement->Identifier == MODULE_DB_END_ID) ||
(Measurement->Identifier == MODULE_DB_SUPPORT_START_ID) ||
(Measurement->Identifier == MODULE_DB_SUPPORT_END_ID) ||
(Measurement->Identifier == MODULE_DB_STOP_START_ID) ||
(Measurement->Identifier == MODULE_DB_STOP_START_ID))
);
return RetVal;
}
/**
Get the file name portion of the Pdb File Name.