Use RLE (Run Length Encoding) to improve debugging performance.
authorRuiyu Ni <ruiyu.ni@intel.com>
Tue, 20 Jan 2015 08:46:31 +0000 (08:46 +0000)
committerniruiyu <niruiyu@Edk2>
Tue, 20 Jan 2015 08:46:31 +0000 (08:46 +0000)
commitd9044ec5553c946e20154b7b5c61cd3979472f60
treecbe2b29bd84274d87dae2df4c43dbdeae8e54cde
parent6a39a6a1a8a35a84e4e13900a2b5e8da1b6435f2
Use RLE (Run Length Encoding) to improve debugging performance.

DEBUG_AGENT_REVISION is DEBUG_AGENT_REVISION_03 to disable this feature and will be changed to DEBUG_AGENT_REVISION_04 when new version of HOST is released.
Reduce the stack usage by re-using the same buffer to send/receive packet.
Zero out the buffer before fxsave so that the reserved field in the buffer remains 0 for better RLE compression ratio.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16628 6f19259b-4bc3-4df7-8a09-765794883524
SourceLevelDebugPkg/Include/TransferProtocol.h
SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/DebugAgent.c
SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/DebugAgent.h
SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/Ia32/AsmFuncs.asm
SourceLevelDebugPkg/Library/DebugAgent/DebugAgentCommon/X64/AsmFuncs.asm