gem5 v24.0.0.0
|
#include <cpuid.hh>
Public Member Functions | |
X86CPUID (const std::string &vendor, const std::string &name) | |
void | addStandardFunc (uint32_t func, std::vector< uint32_t > values) |
void | addExtendedFunc (uint32_t func, std::vector< uint32_t > values) |
bool | doCpuid (ThreadContext *tc, uint32_t function, uint32_t index, CpuidResult &result) |
bool | hasSignificantIndex (uint32_t function) |
Private Member Functions | |
uint64_t | stringToRegister (const char *str) |
Private Attributes | |
const std::string | vendorString |
const std::string | nameString |
std::unordered_map< uint32_t, std::vector< uint32_t > > | capabilities |
gem5::X86ISA::X86CPUID::X86CPUID | ( | const std::string & | vendor, |
const std::string & | name ) |
Definition at line 42 of file cpuid.cc.
References fatal_if, and vendorString.
void gem5::X86ISA::X86CPUID::addExtendedFunc | ( | uint32_t | func, |
std::vector< uint32_t > | values ) |
Definition at line 56 of file cpuid.cc.
References capabilities.
void gem5::X86ISA::X86CPUID::addStandardFunc | ( | uint32_t | func, |
std::vector< uint32_t > | values ) |
Definition at line 50 of file cpuid.cc.
References capabilities.
bool gem5::X86ISA::X86CPUID::doCpuid | ( | ThreadContext * | tc, |
uint32_t | function, | ||
uint32_t | index, | ||
CpuidResult & | result ) |
Definition at line 64 of file cpuid.cc.
References gem5::bits(), capabilities, DPRINTF, gem5::ArmISA::ext, hasSignificantIndex(), gem5::X86ISA::index, nameString, gem5::X86ISA::NameString1, gem5::X86ISA::NameString2, gem5::X86ISA::NameString3, gem5::X86ISA::nameStringSize, gem5::X86ISA::NumExtendedCpuidFuncs, gem5::X86ISA::NumStandardCpuidFuncs, gem5::X86ISA::offset, gem5::X86ISA::CpuidResult::rax, gem5::X86ISA::CpuidResult::rbx, gem5::X86ISA::CpuidResult::rcx, gem5::X86ISA::CpuidResult::rdx, stringToRegister(), gem5::X86ISA::VendorAndLargestExtFunc, gem5::X86ISA::VendorAndLargestStdFunc, and vendorString.
bool gem5::X86ISA::X86CPUID::hasSignificantIndex | ( | uint32_t | function | ) |
Definition at line 147 of file cpuid.cc.
References gem5::bits(), and gem5::X86ISA::ExtendedState.
Referenced by doCpuid().
|
private |
|
private |
Definition at line 108 of file cpuid.hh.
Referenced by addExtendedFunc(), addStandardFunc(), and doCpuid().
|
private |
|
private |
Definition at line 106 of file cpuid.hh.
Referenced by doCpuid(), and X86CPUID().