Namespaces | Functions | Variables
vmcs_intel_x64_64bit_control_fields.h File Reference

Go to the source code of this file.

Namespaces

 intel_x64
 
 intel_x64::vmcs
 
 intel_x64::vmcs::address_of_io_bitmap_a
 
 intel_x64::vmcs::address_of_io_bitmap_b
 
 intel_x64::vmcs::address_of_msr_bitmap
 
 intel_x64::vmcs::vm_exit_msr_store_address
 
 intel_x64::vmcs::vm_exit_msr_load_address
 
 intel_x64::vmcs::vm_entry_msr_load_address
 
 intel_x64::vmcs::executive_vmcs_pointer
 
 intel_x64::vmcs::pml_address
 
 intel_x64::vmcs::tsc_offset
 
 intel_x64::vmcs::virtual_apic_address
 
 intel_x64::vmcs::apic_access_address
 
 intel_x64::vmcs::posted_interrupt_descriptor_address
 
 intel_x64::vmcs::vm_function_controls
 
 intel_x64::vmcs::vm_function_controls::eptp_switching
 
 intel_x64::vmcs::vm_function_controls::reserved
 
 intel_x64::vmcs::ept_pointer
 
 intel_x64::vmcs::ept_pointer::memory_type
 
 intel_x64::vmcs::ept_pointer::page_walk_length_minus_one
 
 intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags
 
 intel_x64::vmcs::ept_pointer::phys_addr
 
 intel_x64::vmcs::ept_pointer::reserved
 
 intel_x64::vmcs::eoi_exit_bitmap_0
 
 intel_x64::vmcs::eoi_exit_bitmap_1
 
 intel_x64::vmcs::eoi_exit_bitmap_2
 
 intel_x64::vmcs::eoi_exit_bitmap_3
 
 intel_x64::vmcs::eptp_list_address
 
 intel_x64::vmcs::vmread_bitmap_address
 
 intel_x64::vmcs::vmwrite_bitmap_address
 
 intel_x64::vmcs::virtualization_exception_information_address
 
 intel_x64::vmcs::xss_exiting_bitmap
 

Functions

template<class MA , class CA , class M , class = typename std::enable_if<std::is_integral<MA>::value>::type, class = typename std::enable_if<std::is_integral<CA>::value>::type, class = typename std::enable_if<std::is_integral<M>::value>::type>
auto set_vm_function_control (bool val, MA msr_addr, CA ctls_addr, const char *name, M mask, bool field_exists)
 
template<class MA , class CA , class M , class = typename std::enable_if<std::is_integral<MA>::value>::type, class = typename std::enable_if<std::is_integral<CA>::value>::type, class = typename std::enable_if<std::is_integral<M>::value>::type>
auto set_vm_function_control_if_allowed (bool val, MA msr_addr, CA ctls_addr, const char *name, M mask, bool verbose, bool field_exists) noexcept
 
bool intel_x64::vmcs::address_of_io_bitmap_a::exists () noexcept
 
auto intel_x64::vmcs::address_of_io_bitmap_a::get ()
 
auto intel_x64::vmcs::address_of_io_bitmap_a::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_io_bitmap_a::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_io_bitmap_a::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::address_of_io_bitmap_b::exists () noexcept
 
auto intel_x64::vmcs::address_of_io_bitmap_b::get ()
 
auto intel_x64::vmcs::address_of_io_bitmap_b::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_io_bitmap_b::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_io_bitmap_b::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::address_of_msr_bitmap::exists () noexcept
 
auto intel_x64::vmcs::address_of_msr_bitmap::get ()
 
auto intel_x64::vmcs::address_of_msr_bitmap::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_msr_bitmap::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::address_of_msr_bitmap::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vm_exit_msr_store_address::exists () noexcept
 
auto intel_x64::vmcs::vm_exit_msr_store_address::get ()
 
auto intel_x64::vmcs::vm_exit_msr_store_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_exit_msr_store_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_exit_msr_store_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vm_exit_msr_load_address::exists () noexcept
 
auto intel_x64::vmcs::vm_exit_msr_load_address::get ()
 
auto intel_x64::vmcs::vm_exit_msr_load_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_exit_msr_load_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_exit_msr_load_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vm_entry_msr_load_address::exists () noexcept
 
auto intel_x64::vmcs::vm_entry_msr_load_address::get ()
 
auto intel_x64::vmcs::vm_entry_msr_load_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_entry_msr_load_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_entry_msr_load_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::executive_vmcs_pointer::exists () noexcept
 
auto intel_x64::vmcs::executive_vmcs_pointer::get ()
 
auto intel_x64::vmcs::executive_vmcs_pointer::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::executive_vmcs_pointer::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::executive_vmcs_pointer::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::pml_address::exists () noexcept
 
auto intel_x64::vmcs::pml_address::get ()
 
auto intel_x64::vmcs::pml_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::pml_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::pml_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::tsc_offset::exists () noexcept
 
auto intel_x64::vmcs::tsc_offset::get ()
 
auto intel_x64::vmcs::tsc_offset::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::tsc_offset::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::tsc_offset::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::virtual_apic_address::exists () noexcept
 
auto intel_x64::vmcs::virtual_apic_address::get ()
 
auto intel_x64::vmcs::virtual_apic_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::virtual_apic_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::virtual_apic_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::apic_access_address::exists () noexcept
 
auto intel_x64::vmcs::apic_access_address::get ()
 
auto intel_x64::vmcs::apic_access_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::apic_access_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::apic_access_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::posted_interrupt_descriptor_address::exists () noexcept
 
auto intel_x64::vmcs::posted_interrupt_descriptor_address::get ()
 
auto intel_x64::vmcs::posted_interrupt_descriptor_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::posted_interrupt_descriptor_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::posted_interrupt_descriptor_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vm_function_controls::exists () noexcept
 
auto intel_x64::vmcs::vm_function_controls::get ()
 
auto intel_x64::vmcs::vm_function_controls::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_function_controls::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_function_controls::set_if_exists (T val, bool verbose=false) noexcept
 
auto intel_x64::vmcs::vm_function_controls::eptp_switching::is_enabled ()
 
auto intel_x64::vmcs::vm_function_controls::eptp_switching::is_enabled_if_exists (bool verbose=false) noexcept
 
auto intel_x64::vmcs::vm_function_controls::eptp_switching::is_disabled ()
 
auto intel_x64::vmcs::vm_function_controls::eptp_switching::is_disabled_if_exists (bool verbose=false) noexcept
 
void intel_x64::vmcs::vm_function_controls::eptp_switching::enable ()
 
void intel_x64::vmcs::vm_function_controls::eptp_switching::enable_if_allowed (bool verbose=false) noexcept
 
void intel_x64::vmcs::vm_function_controls::eptp_switching::disable ()
 
void intel_x64::vmcs::vm_function_controls::eptp_switching::disable_if_allowed (bool verbose=false) noexcept
 
auto intel_x64::vmcs::vm_function_controls::reserved::get ()
 
auto intel_x64::vmcs::vm_function_controls::reserved::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_function_controls::reserved::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vm_function_controls::reserved::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::ept_pointer::exists () noexcept
 
auto intel_x64::vmcs::ept_pointer::get ()
 
auto intel_x64::vmcs::ept_pointer::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::set_if_exists (T val, bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::memory_type::get ()
 
auto intel_x64::vmcs::ept_pointer::memory_type::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::memory_type::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::memory_type::set_if_exists (T val, bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::get ()
 
auto intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::set_if_exists (T val, bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::is_enabled ()
 
auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::is_enabled_if_exists (bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::is_disabled ()
 
auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::is_disabled_if_exists (bool verbose=false) noexcept
 
void intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::enable ()
 
void intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::enable_if_exists (bool verbose=false) noexcept
 
void intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::disable ()
 
void intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::disable_if_exists (bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::phys_addr::get ()
 
auto intel_x64::vmcs::ept_pointer::phys_addr::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::phys_addr::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::phys_addr::set_if_exists (T val, bool verbose=false) noexcept
 
auto intel_x64::vmcs::ept_pointer::reserved::get ()
 
auto intel_x64::vmcs::ept_pointer::reserved::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::reserved::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::ept_pointer::reserved::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::eoi_exit_bitmap_0::exists () noexcept
 
auto intel_x64::vmcs::eoi_exit_bitmap_0::get ()
 
auto intel_x64::vmcs::eoi_exit_bitmap_0::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_0::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_0::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::eoi_exit_bitmap_1::exists () noexcept
 
auto intel_x64::vmcs::eoi_exit_bitmap_1::get ()
 
auto intel_x64::vmcs::eoi_exit_bitmap_1::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_1::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_1::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::eoi_exit_bitmap_2::exists () noexcept
 
auto intel_x64::vmcs::eoi_exit_bitmap_2::get ()
 
auto intel_x64::vmcs::eoi_exit_bitmap_2::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_2::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_2::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::eoi_exit_bitmap_3::exists () noexcept
 
auto intel_x64::vmcs::eoi_exit_bitmap_3::get ()
 
auto intel_x64::vmcs::eoi_exit_bitmap_3::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_3::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eoi_exit_bitmap_3::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::eptp_list_address::exists () noexcept
 
auto intel_x64::vmcs::eptp_list_address::get ()
 
auto intel_x64::vmcs::eptp_list_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eptp_list_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::eptp_list_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vmread_bitmap_address::exists () noexcept
 
auto intel_x64::vmcs::vmread_bitmap_address::get ()
 
auto intel_x64::vmcs::vmread_bitmap_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vmread_bitmap_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vmread_bitmap_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::vmwrite_bitmap_address::exists () noexcept
 
auto intel_x64::vmcs::vmwrite_bitmap_address::get ()
 
auto intel_x64::vmcs::vmwrite_bitmap_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vmwrite_bitmap_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::vmwrite_bitmap_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::virtualization_exception_information_address::exists () noexcept
 
auto intel_x64::vmcs::virtualization_exception_information_address::get ()
 
auto intel_x64::vmcs::virtualization_exception_information_address::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::virtualization_exception_information_address::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::virtualization_exception_information_address::set_if_exists (T val, bool verbose=false) noexcept
 
bool intel_x64::vmcs::xss_exiting_bitmap::exists () noexcept
 
auto intel_x64::vmcs::xss_exiting_bitmap::get ()
 
auto intel_x64::vmcs::xss_exiting_bitmap::get_if_exists (bool verbose=false) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::xss_exiting_bitmap::set (T val)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
void intel_x64::vmcs::xss_exiting_bitmap::set_if_exists (T val, bool verbose=false) noexcept
 

Variables

constexpr const auto intel_x64::vmcs::address_of_io_bitmap_a::addr = 0x0000000000002000UL
 
constexpr const auto intel_x64::vmcs::address_of_io_bitmap_a::name = "address_of_io_bitmap_a"
 
constexpr const auto intel_x64::vmcs::address_of_io_bitmap_b::addr = 0x0000000000002002UL
 
constexpr const auto intel_x64::vmcs::address_of_io_bitmap_b::name = "address_of_io_bitmap_b"
 
constexpr const auto intel_x64::vmcs::address_of_msr_bitmap::addr = 0x0000000000002004UL
 
constexpr const auto intel_x64::vmcs::address_of_msr_bitmap::name = "address_of_msr_bitmap"
 
constexpr const auto intel_x64::vmcs::vm_exit_msr_store_address::addr = 0x0000000000002006UL
 
constexpr const auto intel_x64::vmcs::vm_exit_msr_store_address::name = "vm_exit_msr_store_address"
 
constexpr const auto intel_x64::vmcs::vm_exit_msr_load_address::addr = 0x0000000000002008UL
 
constexpr const auto intel_x64::vmcs::vm_exit_msr_load_address::name = "vm_exit_msr_load_address"
 
constexpr const auto intel_x64::vmcs::vm_entry_msr_load_address::addr = 0x000000000000200AUL
 
constexpr const auto intel_x64::vmcs::vm_entry_msr_load_address::name = "vm_entry_msr_load_address"
 
constexpr const auto intel_x64::vmcs::executive_vmcs_pointer::addr = 0x000000000000200CUL
 
constexpr const auto intel_x64::vmcs::executive_vmcs_pointer::name = "executive_vmcs_pointer"
 
constexpr const auto intel_x64::vmcs::pml_address::addr = 0x000000000000200EUL
 
constexpr const auto intel_x64::vmcs::pml_address::name = "pml_address"
 
constexpr const auto intel_x64::vmcs::tsc_offset::addr = 0x0000000000002010UL
 
constexpr const auto intel_x64::vmcs::tsc_offset::name = "tsc_offset"
 
constexpr const auto intel_x64::vmcs::virtual_apic_address::addr = 0x0000000000002012UL
 
constexpr const auto intel_x64::vmcs::virtual_apic_address::name = "virtual_apic_address"
 
constexpr const auto intel_x64::vmcs::apic_access_address::addr = 0x0000000000002014UL
 
constexpr const auto intel_x64::vmcs::apic_access_address::name = "apic_access_address"
 
constexpr const auto intel_x64::vmcs::posted_interrupt_descriptor_address::addr = 0x0000000000002016UL
 
constexpr const auto intel_x64::vmcs::posted_interrupt_descriptor_address::name = "posted_interrupt_descriptor_address"
 
constexpr const auto intel_x64::vmcs::vm_function_controls::addr = 0x0000000000002018UL
 
constexpr const auto intel_x64::vmcs::vm_function_controls::name = "vm_function_controls"
 
constexpr const auto intel_x64::vmcs::vm_function_controls::msr_addr = 0x00000491U
 
constexpr const auto intel_x64::vmcs::vm_function_controls::eptp_switching::mask = 0x0000000000000001UL
 
constexpr const auto intel_x64::vmcs::vm_function_controls::eptp_switching::from = 0
 
constexpr const auto intel_x64::vmcs::vm_function_controls::eptp_switching::name = "eptp_switching"
 
constexpr const auto intel_x64::vmcs::vm_function_controls::reserved::mask = 0xFFFFFFFFFFFFFFFEUL
 
constexpr const auto intel_x64::vmcs::vm_function_controls::reserved::from = 0
 
constexpr const auto intel_x64::vmcs::vm_function_controls::reserved::name = "reserved"
 
constexpr const auto intel_x64::vmcs::ept_pointer::addr = 0x000000000000201AUL
 
constexpr const auto intel_x64::vmcs::ept_pointer::name = "ept_pointer"
 
constexpr const auto intel_x64::vmcs::ept_pointer::memory_type::mask = 0x0000000000000007UL
 
constexpr const auto intel_x64::vmcs::ept_pointer::memory_type::from = 0
 
constexpr const auto intel_x64::vmcs::ept_pointer::memory_type::name = "memory_type"
 
constexpr const auto intel_x64::vmcs::ept_pointer::memory_type::uncacheable = 0U
 
constexpr const auto intel_x64::vmcs::ept_pointer::memory_type::write_back = 6U
 
constexpr const auto intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::mask = 0x0000000000000038UL
 
constexpr const auto intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::from = 3
 
constexpr const auto intel_x64::vmcs::ept_pointer::page_walk_length_minus_one::name = "page_walk_length_minus_one"
 
constexpr const auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::mask = 0x0000000000000040UL
 
constexpr const auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::from = 6
 
constexpr const auto intel_x64::vmcs::ept_pointer::accessed_and_dirty_flags::name = "accessed_and_dirty_flags"
 
constexpr const auto intel_x64::vmcs::ept_pointer::phys_addr::mask = 0x0000FFFFFFFFF000UL
 
constexpr const auto intel_x64::vmcs::ept_pointer::phys_addr::from = 0
 
constexpr const auto intel_x64::vmcs::ept_pointer::phys_addr::name = "phys_addr"
 
constexpr const auto intel_x64::vmcs::ept_pointer::reserved::mask = 0xFFFF000000000F80UL
 
constexpr const auto intel_x64::vmcs::ept_pointer::reserved::from = 0
 
constexpr const auto intel_x64::vmcs::ept_pointer::reserved::name = "reserved"
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_0::addr = 0x000000000000201CUL
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_0::name = "eoi_exit_bitmap_0"
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_1::addr = 0x000000000000201EUL
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_1::name = "eoi_exit_bitmap_1"
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_2::addr = 0x0000000000002020UL
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_2::name = "eoi_exit_bitmap_2"
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_3::addr = 0x0000000000002022UL
 
constexpr const auto intel_x64::vmcs::eoi_exit_bitmap_3::name = "eoi_exit_bitmap_3"
 
constexpr const auto intel_x64::vmcs::eptp_list_address::addr = 0x0000000000002024UL
 
constexpr const auto intel_x64::vmcs::eptp_list_address::name = "eptp_list_address"
 
constexpr const auto intel_x64::vmcs::vmread_bitmap_address::addr = 0x0000000000002026UL
 
constexpr const auto intel_x64::vmcs::vmread_bitmap_address::name = "vmread_bitmap_address"
 
constexpr const auto intel_x64::vmcs::vmwrite_bitmap_address::addr = 0x0000000000002028UL
 
constexpr const auto intel_x64::vmcs::vmwrite_bitmap_address::name = "vmwrite_bitmap_address"
 
constexpr const auto intel_x64::vmcs::virtualization_exception_information_address::addr = 0x000000000000202AUL
 
constexpr const auto intel_x64::vmcs::virtualization_exception_information_address::name = "virtualization_exception_information_address"
 
constexpr const auto intel_x64::vmcs::xss_exiting_bitmap::addr = 0x000000000000202CUL
 
constexpr const auto intel_x64::vmcs::xss_exiting_bitmap::name = "xss_exiting_bitmap"
 

Function Documentation

◆ set_vm_function_control()

template<class MA , class CA , class M , class = typename std::enable_if<std::is_integral<MA>::value>::type, class = typename std::enable_if<std::is_integral<CA>::value>::type, class = typename std::enable_if<std::is_integral<M>::value>::type>
auto set_vm_function_control ( bool  val,
MA  msr_addr,
CA  ctls_addr,
const char *  name,
mask,
bool  field_exists 
)

Intel x86_64 VMCS 64-bit Control Fields

The following provides the interface for the 64-bit control VMCS fields as defined in Appendix B.2.1, Vol. 3 of the Intel Software Developer's Manual.

Definition at line 40 of file vmcs_intel_x64_64bit_control_fields.h.

◆ set_vm_function_control_if_allowed()

template<class MA , class CA , class M , class = typename std::enable_if<std::is_integral<MA>::value>::type, class = typename std::enable_if<std::is_integral<CA>::value>::type, class = typename std::enable_if<std::is_integral<M>::value>::type>
auto set_vm_function_control_if_allowed ( bool  val,
MA  msr_addr,
CA  ctls_addr,
const char *  name,
mask,
bool  verbose,
bool  field_exists 
)
noexcept

Definition at line 70 of file vmcs_intel_x64_64bit_control_fields.h.