23 #ifndef VMCS_INTEL_X64_NATURAL_WIDTH_CONTROL_FIELDS_H 24 #define VMCS_INTEL_X64_NATURAL_WIDTH_CONTROL_FIELDS_H 43 namespace cr0_guest_host_mask
45 constexpr
const auto addr = 0x0000000000006000UL;
46 constexpr
const auto name =
"cr0_guest_host_mask";
57 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
60 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
65 namespace cr4_guest_host_mask
67 constexpr
const auto addr = 0x0000000000006002UL;
68 constexpr
const auto name =
"cr4_guest_host_mask";
79 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
82 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
87 namespace cr0_read_shadow
89 constexpr
const auto addr = 0x0000000000006004UL;
90 constexpr
const auto name =
"cr0_read_shadow";
101 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
104 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
109 namespace cr4_read_shadow
111 constexpr
const auto addr = 0x0000000000006006UL;
112 constexpr
const auto name =
"cr4_read_shadow";
123 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
126 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
131 namespace cr3_target_value_0
133 constexpr
const auto addr = 0x0000000000006008UL;
134 constexpr
const auto name =
"cr3_target_value_0";
145 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
148 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
153 namespace cr3_target_value_1
155 constexpr
const auto addr = 0x000000000000600AUL;
156 constexpr
const auto name =
"cr3_target_value_1";
167 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
170 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
175 namespace cr3_target_value_2
177 constexpr
const auto addr = 0x000000000000600CUL;
178 constexpr
const auto name =
"cr3_target_value_2";
189 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
192 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
197 namespace cr3_target_value_3
199 constexpr
const auto addr = 0x000000000000600EUL;
200 constexpr
const auto name =
"cr3_target_value_3";
211 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
214 template<class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
auto get_vmcs_field_if_exists(T addr, const char *name, bool verbose, bool exists)
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto addr
void set_if_exists(T val, bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto addr
auto get_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto addr
auto get_if_exists(bool verbose=false) noexcept
auto set_vmcs_field_if_exists(V val, A addr, const char *name, bool verbose, bool exists) noexcept
constexpr const auto addr
constexpr const auto addr
void uint64_t uint64_t uint64_t *rdx noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto name
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto name
void set_if_exists(T val, bool verbose=false) noexcept
auto set_vmcs_field(V val, A addr, const char *name, bool exists)
constexpr const auto name
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto name
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto name
auto get_vmcs_field(T addr, const char *name, bool exists)
constexpr const auto addr
constexpr const auto name
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto addr