diff options
author | Umesh Bhaskar <umesh.b2006@gmail.com> | 2013-07-15 11:08:34 -0400 |
---|---|---|
committer | Umesh Bhaskar <umesh.b2006@gmail.com> | 2013-07-15 11:08:34 -0400 |
commit | 5ba9e7afe2006dc49dd8bf499059c1f239ee4cdc (patch) | |
tree | aa91384cf3907a52159d508da261084144367d28 | |
parent | 1f43e244bda0c78844720609455fd77f6f275e51 (diff) | |
download | gem5-5ba9e7afe2006dc49dd8bf499059c1f239ee4cdc.tar.xz |
debug : Fixes the issue wherein Debug symbols were not getting dumped into trace files for SE mode
-rw-r--r-- | src/cpu/exetrace.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/cpu/exetrace.cc b/src/cpu/exetrace.cc index fdefcc980..2877db187 100644 --- a/src/cpu/exetrace.cc +++ b/src/cpu/exetrace.cc @@ -83,8 +83,9 @@ Trace::ExeTracerRecord::traceInst(StaticInstPtr inst, bool ran) std::string sym_str; Addr sym_addr; Addr cur_pc = pc.instAddr(); - if (debugSymbolTable && Debug::ExecSymbol && !inUserMode(thread) - && debugSymbolTable->findNearestSymbol(cur_pc, sym_str, sym_addr)) { + if (debugSymbolTable && Debug::ExecSymbol && + (!FullSystem || !inUserMode(thread)) && + debugSymbolTable->findNearestSymbol(cur_pc, sym_str, sym_addr)) { if (cur_pc != sym_addr) sym_str += csprintf("+%d",cur_pc - sym_addr); outs << "@" << sym_str; |