Go to the documentation of this file.
38 #ifndef __ARCH_X86_UTILITY_HH__
39 #define __ARCH_X86_UTILITY_HH__
66 return m5reg.cpl == 3;
179 #endif // __ARCH_X86_UTILITY_HH__
virtual RegVal readMiscRegNoEffect(RegIndex misc_reg) const =0
uint8_t convX87TagsToXTags(uint16_t ftw)
Convert an x87 tag word to abridged tag format.
uint16_t genX87Tags(uint16_t ftw, uint8_t top, int8_t spm)
Generate and updated x87 tag register after a push/pop operation.
virtual void advancePC(TheISA::PCState &pcState) const =0
double loadFloat80(const void *_mem)
Load an 80-bit float from memory and convert it to double.
PCState buildRetPC(const PCState &curPC, const PCState &callPC)
void copyRegs(ThreadContext *src, ThreadContext *dest)
uint64_t getExecutingAsid(ThreadContext *tc)
bool FullSystem
The FullSystem variable can be used to determine the current mode of simulation.
uint16_t convX87XTagsToTags(uint8_t ftwx)
Convert an x87 xtag word to normal tags format.
void storeFloat80(void *_mem, double value)
Convert and store a double as an 80-bit float.
ThreadContext is the external interface to all thread state for anything outside of the CPU.
void setRFlags(ThreadContext *tc, uint64_t val)
Set update the rflags register and internal gem5 state.
This is exposed globally, independent of the ISA.
uint64_t getRFlags(ThreadContext *tc)
Reconstruct the rflags register from the internal gem5 register state.
static bool inUserMode(ThreadContext *tc)
GenericISA::DelaySlotPCState< MachInst > PCState
uint64_t getArgument(ThreadContext *tc, int &number, uint16_t size, bool fp)
void advancePC(PCState &pc, const StaticInstPtr &inst)
void copyMiscRegs(ThreadContext *src, ThreadContext *dest)
Generated on Wed Sep 30 2020 14:02:01 for gem5 by doxygen 1.8.17