1bf0b844ffc6416d8dc50c84dc22efefb97cccf4
The CpuModel class looks like it was originally intended to hold a lot more information that it does now, which is just the name of a CPU, and whether it should be enabled by default. All the built in configs in build_opts already explicitly list a set of CPUs, and CPUs should not, generally speaking, be enabled by default, since they almost always need to be specifically supported by an ISA. This is mutual, since usually ISAs definitions are not quite correct or complete, and this is often exposed by plugging them into different, and/or more complex CPU models which stress those short comings. This change drops the idea of a "default" CPU, and since the only thing being tracked at this point is a list of CPUs, it turns CpuModel() into a simple function which adds a name to a set of supported CPUs. Change-Id: Id7475d5dc8548802b5253f79839da8c76ef4d165 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/48963 Reviewed-by: Hoa Nguyen <hoanguyen@ucdavis.edu> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Gabe Black <gabe.black@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
This is the gem5 simulator. The main website can be found at http://www.gem5.org A good starting point is http://www.gem5.org/about, and for more information about building the simulator and getting started please see http://www.gem5.org/documentation and http://www.gem5.org/documentation/learning_gem5/introduction. To build gem5, you will need the following software: g++ or clang, Python (gem5 links in the Python interpreter), SCons, SWIG, zlib, m4, and lastly protobuf if you want trace capture and playback support. Please see http://www.gem5.org/documentation/general_docs/building for more details concerning the minimum versions of the aforementioned tools. Once you have all dependencies resolved, type 'scons build/<ARCH>/gem5.opt' where ARCH is one of ARM, NULL, MIPS, POWER, SPARC, or X86. This will build an optimized version of the gem5 binary (gem5.opt) for the the specified architecture. See http://www.gem5.org/documentation/general_docs/building for more details and options. The basic source release includes these subdirectories: - configs: example simulation configuration scripts - ext: less-common external packages needed to build gem5 - src: source code of the gem5 simulator - system: source for some optional system software for simulated systems - tests: regression tests - util: useful utility programs and files To run full-system simulations, you will need compiled system firmware (console and PALcode for Alpha), kernel binaries and one or more disk images. If you have questions, please send mail to gem5-users@gem5.org Enjoy using gem5 and please share your modifications and extensions.
Description