Namespaces | Typedefs | Functions
vmcs_intel_x64_helpers.h File Reference

Go to the source code of this file.

Namespaces

 intel_x64
 
 intel_x64::vmcs
 

Typedefs

using intel_x64::vmcs::field_type = uint64_t
 
using intel_x64::vmcs::value_type = uint64_t
 

Functions

template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto intel_x64::vmcs::get_vmcs_field (T addr, const char *name, bool exists)
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto intel_x64::vmcs::get_vmcs_field_if_exists (T addr, const char *name, bool verbose, bool exists)
 
template<class V , class A , class = typename std::enable_if<std::is_integral<V>::value>::type, class = typename std::enable_if<std::is_integral<A>::value>::type>
auto intel_x64::vmcs::set_vmcs_field (V val, A addr, const char *name, bool exists)
 
template<class V , class A , class = typename std::enable_if<std::is_integral<V>::value>::type, class = typename std::enable_if<std::is_integral<A>::value>::type>
auto intel_x64::vmcs::set_vmcs_field_if_exists (V val, A addr, const char *name, bool verbose, bool exists) noexcept
 
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 intel_x64::vmcs::set_vm_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 intel_x64::vmcs::set_vm_control_if_allowed (bool val, MA msr_addr, CA ctls_addr, const char *name, M mask, bool verbose, bool field_exists) noexcept