arch,cpu: Consolidate most of the StackTrace classes into a base class.
authorGabe Black <gabeblack@google.com>
Sun, 5 Jul 2020 06:16:08 +0000 (23:16 -0700)
committerGabe Black <gabeblack@google.com>
Sat, 11 Jul 2020 00:24:38 +0000 (00:24 +0000)
commita6721c7a73dfb525ae95b8dc8564340e554e06aa
tree8edb05206e9de9121a754d18dc6bb41b6319af3f
parentf1fc7ba257dbd3e16e2a41900ca84935a40d0204
arch,cpu: Consolidate most of the StackTrace classes into a base class.

These classes are all basically empty now that Alpha has been deleted,
except in cases where the arch versions had copied versions of the Alpha
code.

This change pulls all the generic logic out of the arch versions, making
the arch versions much simpler and making it clearer what the core
functionality of the class is, and what parts are architecture specific
details.

In the future, the way the StackTrace class is instantiated should be
delegated to the Workload class so that ISA agnostic code doesn't need
to know about a particular ISA's StackTrace class, and so that
StackTrace logic can, at least theoretically, be specialized for a
particular workload. The way a stack trace is collected could vary from
OS to OS, for example.

Change-Id: Id8108f94e9fe8baf9b4056f2b6404571e9fa52f1
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/30961
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
20 files changed:
src/arch/arm/SConscript
src/arch/arm/stacktrace.cc [deleted file]
src/arch/arm/stacktrace.hh
src/arch/mips/SConscript
src/arch/mips/stacktrace.cc [deleted file]
src/arch/mips/stacktrace.hh
src/arch/power/SConscript
src/arch/power/stacktrace.cc [deleted file]
src/arch/power/stacktrace.hh
src/arch/riscv/SConscript
src/arch/riscv/stacktrace.cc [deleted file]
src/arch/riscv/stacktrace.hh
src/arch/sparc/stacktrace.hh
src/arch/x86/SConscript
src/arch/x86/stacktrace.cc [deleted file]
src/arch/x86/stacktrace.hh
src/cpu/o3/thread_state.hh
src/cpu/profile.cc
src/cpu/profile.hh
src/cpu/simple_thread.cc