MdeModulePkg/EbcDxe: prepare support for EBC Debugger

* This patch introduces EbcDebuggerHook.c/h and inserts the required
  EBCDebugger references into the existing EBC source files.
* With all the hooks defined to their empty version in EbcDebuggerHook.c
  the existing EBC VM behaviour is left unaffected.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Pete Batard <pete@akeo.ie>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
This commit is contained in:
Pete Batard
2016-11-16 21:24:08 +08:00
committed by Jiewen Yao
parent 0265811dbe
commit 6f0a3cd23e
9 changed files with 339 additions and 7 deletions

View File

@ -15,6 +15,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "EbcInt.h"
#include "EbcExecute.h"
#include "EbcDebuggerHook.h"
//
// NOTE: This is the stack size allocated for the interpreter
@ -278,10 +279,11 @@ EbcInterpret (
//
// Begin executing the EBC code
//
EbcDebuggerHookEbcInterpret (&VmContext);
EbcExecute (&VmContext);
//
// Return the value in R[7] unless there was an error
// Return the value in Gpr[7] unless there was an error
//
ReturnEBCStack(StackIndex);
return (UINT64) VmContext.Gpr[7];
@ -389,10 +391,11 @@ ExecuteEbcImageEntryPoint (
//
// Begin executing the EBC code
//
EbcDebuggerHookExecuteEbcImageEntryPoint (&VmContext);
EbcExecute (&VmContext);
//
// Return the value in R[7] unless there was an error
// Return the value in Gpr[7] unless there was an error
//
ReturnEBCStack(StackIndex);
return (UINT64) VmContext.Gpr[7];