Namespaces | Typedefs | Functions
vmx_intel_x64.h File Reference

Go to the source code of this file.

Namespaces

 intel_x64
 
 intel_x64::vmx
 
 intel_x64::vm
 

Typedefs

using intel_x64::vmx::vpid_type = uint64_t
 
using intel_x64::vmx::eptp_type = uint64_t
 
using intel_x64::vmx::integer_pointer = uintptr_t
 
using intel_x64::vm::field_type = uint64_t
 
using intel_x64::vm::value_type = uint64_t
 
using intel_x64::vm::name_type = const char *
 
using intel_x64::vm::integer_pointer = uintptr_t
 

Functions

bool __vmxon (void *ptr) noexcept
 
bool __vmxoff (void) noexcept
 
bool __vmclear (void *ptr) noexcept
 
bool __vmptrld (void *ptr) noexcept
 
bool __vmptrst (void *ptr) noexcept
 
bool __vmread (uint64_t field, uint64_t *val) noexcept
 
bool __vmwrite (uint64_t field, uint64_t val) noexcept
 
bool __vmlaunch_demote (void) noexcept
 
bool __invept (uint64_t type, void *ptr) noexcept
 
bool __invvpid (uint64_t type, void *ptr) noexcept
 
void intel_x64::vmx::on (gsl::not_null< void *> ptr)
 
void intel_x64::vmx::off ()
 
void intel_x64::vmx::invept_single_context (eptp_type eptp)
 
void intel_x64::vmx::invept_global ()
 
void intel_x64::vmx::invvpid_individual_address (vpid_type vpid, integer_pointer addr)
 
void intel_x64::vmx::invvpid_single_context (vpid_type vpid)
 
void intel_x64::vmx::invvpid_all_contexts ()
 
void intel_x64::vmx::invvpid_single_context_global (vpid_type vpid)
 
void intel_x64::vm::clear (gsl::not_null< void *> ptr)
 
void intel_x64::vm::load (gsl::not_null< void *> ptr)
 
void intel_x64::vm::reset (gsl::not_null< void *> ptr)
 
auto intel_x64::vm::read (field_type field, name_type name="")
 
void intel_x64::vm::write (field_type field, value_type value, name_type name="")
 
void intel_x64::vm::launch_demote ()
 

Function Documentation

◆ __vmxon()

bool __vmxon ( void *  ptr)
noexcept

Definition at line 42 of file test_vmx_intel_x64.cpp.

◆ __vmxoff()

bool __vmxoff ( void  )
noexcept

Definition at line 46 of file test_vmx_intel_x64.cpp.

◆ __vmclear()

bool __vmclear ( void *  ptr)
noexcept

Definition at line 50 of file test_vmx_intel_x64.cpp.

◆ __vmptrld()

bool __vmptrld ( void *  ptr)
noexcept

Definition at line 54 of file test_vmx_intel_x64.cpp.

◆ __vmptrst()

bool __vmptrst ( void *  ptr)
noexcept

Definition at line 58 of file test_vmx_intel_x64.cpp.

◆ __vmread()

bool __vmread ( uint64_t  field,
uint64_t *  val 
)
noexcept

Definition at line 61 of file test_exit_handler_intel_x64.cpp.

◆ __vmwrite()

bool __vmwrite ( uint64_t  field,
uint64_t  val 
)
noexcept

Definition at line 93 of file test_exit_handler_intel_x64.cpp.

◆ __vmlaunch_demote()

bool __vmlaunch_demote ( void  )
noexcept

Definition at line 84 of file test_vmx_intel_x64.cpp.

◆ __invept()

bool __invept ( uint64_t  type,
void *  ptr 
)
noexcept

Definition at line 88 of file test_vmx_intel_x64.cpp.

◆ __invvpid()

bool __invvpid ( uint64_t  type,
void *  ptr 
)
noexcept

Definition at line 92 of file test_vmx_intel_x64.cpp.