diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2017-11-25 14:10:42 +1000 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2017-11-28 20:39:07 -0600 |
commit | 0dde9cd5d22b8cdb97d55b2ff5f65f5343643666 (patch) | |
tree | 8a61076bc2f1867ebfe21dbfd7df77cc03452b2e /external | |
parent | ff65dc98df8acbc4d3d21e8d9a47fa538a61685c (diff) | |
download | talos-skiboot-0dde9cd5d22b8cdb97d55b2ff5f65f5343643666.tar.gz talos-skiboot-0dde9cd5d22b8cdb97d55b2ff5f65f5343643666.zip |
external/mambo: Switch qtrace command to use plugins
The plugin seems to be the preferred way to do this now, it works
better, and the qtracer emitter seems to generate invalid traces
in new mambo versions.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'external')
-rw-r--r-- | external/mambo/mambo_utils.tcl | 33 |
1 files changed, 7 insertions, 26 deletions
diff --git a/external/mambo/mambo_utils.tcl b/external/mambo/mambo_utils.tcl index 1e3dea0e..5113b21e 100644 --- a/external/mambo/mambo_utils.tcl +++ b/external/mambo/mambo_utils.tcl @@ -1,3 +1,4 @@ +source $env(LIB_DIR)/perf/qtrace.tcl # # behave like gdb @@ -364,32 +365,12 @@ proc skisym { name } { } proc start_qtrace { { qtfile qtrace.qt } } { - global env - - mysim mode simple - - ereader expect 1 - simemit set "Header_Record" 1 - simemit set "Footer_Record" 1 - simemit set "Instructions" 1 - simemit set "Interrupt" 1 - simemit set "External_Int" 1 - simemit set "Config" 1 - simemit set "MSR" 1 - simemit set "Pid_Creatd" 1 - simemit set "Pid_Killed" 1 - simemit set "TLB_Inst_Miss" 1 - simemit set "TLB_Data_Miss" 1 - simemit set "SLB_Inst_Miss" 1 - simemit set "SLB_Data_Miss" 1 - simemit set "L1_ICache_Miss" 1 - simemit set "L1_DCache_Miss" 1 - simemit set "L2_Cache_Miss" 1 - simemit set "Memory_Write" 1 - simemit set "Memory_Read" 1 - simemit set "Bus_Wait" 1 - - ereader start $env(EXEC_DIR)/emitter/qtracer [pid] -outfile $qtfile + QTrace::Initialize p9 mysim + QTrace::Start $qtfile mysim +} + +proc stop_qtrace { } { + QTrace::Stop mysim } proc current_insn { { t 0 } { c 0 } } { |