NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CpuMessage Struct Reference

#include <vcpu.h>

Public Types

enum  Type {
  TYPE_CPUID_WRITE, TYPE_CPUID, TYPE_RDTSC, TYPE_RDMSR,
  TYPE_WRMSR, TYPE_IOIN, TYPE_IOOUT, TYPE_TRIPLE,
  TYPE_INIT, TYPE_HLT, TYPE_INVD, TYPE_WBINVD,
  TYPE_CHECK_IRQ, TYPE_CALC_IRQWINDOW, TYPE_SINGLE_STEP
}

Public Member Functions

 CpuMessage (Type _type, CpuState *_cpu, unsigned _mtr_in)
 CpuMessage (unsigned _nr, unsigned _reg, unsigned _mask, unsigned _value)
 CpuMessage (bool is_in, CpuState *_cpu, unsigned _io_order, unsigned _port, void *_dst, unsigned _mtr_in)

Public Attributes

enum CpuMessage::Type type
union {
   struct {
      CpuState *   cpu
      union {
         unsigned   cpuid_index
         struct {
            unsigned   io_order
            unsigned short   port
            void *   dst
         } 
      } 
   } 
   struct {
      unsigned   nr
      unsigned   reg
      unsigned   mask
      unsigned   value
   } 
}; 
unsigned mtr_in
unsigned mtr_out
unsigned consumed
long long current_tsc_off

Member Enumeration Documentation

Enumerator:
TYPE_CPUID_WRITE 
TYPE_CPUID 
TYPE_RDTSC 
TYPE_RDMSR 
TYPE_WRMSR 
TYPE_IOIN 
TYPE_IOOUT 
TYPE_TRIPLE 
TYPE_INIT 
TYPE_HLT 
TYPE_INVD 
TYPE_WBINVD 
TYPE_CHECK_IRQ 
TYPE_CALC_IRQWINDOW 
TYPE_SINGLE_STEP 

Constructor & Destructor Documentation

CpuMessage::CpuMessage ( Type  _type,
CpuState _cpu,
unsigned  _mtr_in 
)
inline
CpuMessage::CpuMessage ( unsigned  _nr,
unsigned  _reg,
unsigned  _mask,
unsigned  _value 
)
inline
CpuMessage::CpuMessage ( bool  is_in,
CpuState _cpu,
unsigned  _io_order,
unsigned  _port,
void *  _dst,
unsigned  _mtr_in 
)
inline

Member Data Documentation

union { ... }
unsigned CpuMessage::consumed
CpuState* CpuMessage::cpu
unsigned CpuMessage::cpuid_index
long long CpuMessage::current_tsc_off
void* CpuMessage::dst
unsigned CpuMessage::io_order
unsigned CpuMessage::mask
unsigned CpuMessage::mtr_in
unsigned CpuMessage::mtr_out
unsigned CpuMessage::nr
unsigned short CpuMessage::port
unsigned CpuMessage::reg
enum CpuMessage::Type CpuMessage::type
unsigned CpuMessage::value

The documentation for this struct was generated from the following file: