22 #ifndef VMCS_INTEL_X64_32BIT_CONTROL_FIELDS_H 23 #define VMCS_INTEL_X64_32BIT_CONTROL_FIELDS_H 43 namespace pin_based_vm_execution_controls
45 constexpr
const auto addr = 0x0000000000004000UL;
46 constexpr
const auto name =
"pin_based_vm_execution_controls";
58 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
61 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
65 namespace external_interrupt_exiting
67 constexpr
const auto mask = 0x0000000000000001UL;
68 constexpr
const auto from = 0;
69 constexpr
const auto name =
"external_interrupt_exiting";
98 constexpr
const auto mask = 0x0000000000000008UL;
99 constexpr
const auto from = 3;
100 constexpr
const auto name =
"nmi_exiting";
127 namespace virtual_nmis
129 constexpr
const auto mask = 0x0000000000000020UL;
131 constexpr
const auto name =
"virtual_nmis";
158 namespace activate_vmx_preemption_timer
160 constexpr
const auto mask = 0x0000000000000040UL;
162 constexpr
const auto name =
"activate_vmx_preemption_timer";
189 namespace process_posted_interrupts
191 constexpr
const auto mask = 0x0000000000000080UL;
193 constexpr
const auto name =
"process_posted_interrupts";
221 namespace primary_processor_based_vm_execution_controls
223 constexpr
const auto addr = 0x0000000000004002UL;
224 constexpr
const auto name =
"primary_processor_based_vm_execution_controls";
236 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
239 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
243 namespace interrupt_window_exiting
245 constexpr
const auto mask = 0x0000000000000004UL;
247 constexpr
const auto name =
"interrupt_window_exiting";
274 namespace use_tsc_offsetting
276 constexpr
const auto mask = 0x0000000000000008UL;
278 constexpr
const auto name =
"use_tsc_offsetting";
305 namespace hlt_exiting
307 constexpr
const auto mask = 0x0000000000000080UL;
309 constexpr
const auto name =
"hlt_exiting";
336 namespace invlpg_exiting
338 constexpr
const auto mask = 0x0000000000000200UL;
340 constexpr
const auto name =
"invlpg_exiting";
367 namespace mwait_exiting
369 constexpr
const auto mask = 0x0000000000000400UL;
370 constexpr
const auto from = 10;
371 constexpr
const auto name =
"mwait_exiting";
398 namespace rdpmc_exiting
400 constexpr
const auto mask = 0x0000000000000800UL;
401 constexpr
const auto from = 11;
402 constexpr
const auto name =
"rdpmc_exiting";
429 namespace rdtsc_exiting
431 constexpr
const auto mask = 0x0000000000001000UL;
432 constexpr
const auto from = 12;
433 constexpr
const auto name =
"rdtsc_exiting";
460 namespace cr3_load_exiting
462 constexpr
const auto mask = 0x0000000000008000UL;
463 constexpr
const auto from = 15;
464 constexpr
const auto name =
"cr3_load_exiting";
491 namespace cr3_store_exiting
493 constexpr
const auto mask = 0x0000000000010000UL;
494 constexpr
const auto from = 16;
495 constexpr
const auto name =
"cr3_store_exiting";
522 namespace cr8_load_exiting
524 constexpr
const auto mask = 0x0000000000080000UL;
525 constexpr
const auto from = 19;
526 constexpr
const auto name =
"cr8_load_exiting";
553 namespace cr8_store_exiting
555 constexpr
const auto mask = 0x0000000000100000UL;
556 constexpr
const auto from = 20;
557 constexpr
const auto name =
"cr8_store_exiting";
584 namespace use_tpr_shadow
586 constexpr
const auto mask = 0x0000000000200000UL;
587 constexpr
const auto from = 21;
588 constexpr
const auto name =
"use_tpr_shadow";
615 namespace nmi_window_exiting
617 constexpr
const auto mask = 0x0000000000400000UL;
618 constexpr
const auto from = 22;
619 constexpr
const auto name =
"nmi_window_exiting";
646 namespace mov_dr_exiting
648 constexpr
const auto mask = 0x0000000000800000UL;
649 constexpr
const auto from = 23;
650 constexpr
const auto name =
"mov_dr_exiting";
677 namespace unconditional_io_exiting
679 constexpr
const auto mask = 0x0000000001000000UL;
680 constexpr
const auto from = 24;
681 constexpr
const auto name =
"unconditional_io_exiting";
708 namespace use_io_bitmaps
710 constexpr
const auto mask = 0x0000000002000000UL;
711 constexpr
const auto from = 25;
712 constexpr
const auto name =
"use_io_bitmaps";
741 constexpr
const auto mask = 0x0000000008000000UL;
742 constexpr
const auto from = 27;
743 constexpr
const auto name =
"monitor_trap_flag";
770 namespace use_msr_bitmap
772 constexpr
const auto mask = 0x0000000010000000UL;
773 constexpr
const auto from = 28;
774 constexpr
const auto name =
"use_msr_bitmap";
801 namespace monitor_exiting
803 constexpr
const auto mask = 0x0000000020000000UL;
804 constexpr
const auto from = 29;
805 constexpr
const auto name =
"monitor_exiting";
832 namespace pause_exiting
834 constexpr
const auto mask = 0x0000000040000000UL;
835 constexpr
const auto from = 30;
836 constexpr
const auto name =
"pause_exiting";
863 namespace activate_secondary_controls
865 constexpr
const auto mask = 0x0000000080000000UL;
866 constexpr
const auto from = 31;
867 constexpr
const auto name =
"activate_secondary_controls";
895 namespace exception_bitmap
897 constexpr
const auto addr = 0x0000000000004004UL;
898 constexpr
const auto name =
"execption_bitmap";
909 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
912 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
917 namespace page_fault_error_code_mask
919 constexpr
const auto addr = 0x0000000000004006UL;
920 constexpr
const auto name =
"page_fault_error_code_mask";
931 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
934 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
939 namespace page_fault_error_code_match
941 constexpr
const auto addr = 0x0000000000004008UL;
942 constexpr
const auto name =
"page_fault_error_code_match";
953 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
956 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
961 namespace cr3_target_count
963 constexpr
const auto addr = 0x000000000000400AUL;
964 constexpr
const auto name =
"cr3_target_count";
975 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
978 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
983 namespace vm_exit_controls
985 constexpr
const auto addr = 0x000000000000400CUL;
986 constexpr
const auto name =
"vm_exit_controls";
998 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1001 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1005 namespace save_debug_controls
1007 constexpr
const auto mask = 0x0000000000000004UL;
1009 constexpr
const auto name =
"save_debug_controls";
1036 namespace host_address_space_size
1038 constexpr
const auto mask = 0x0000000000000200UL;
1040 constexpr
const auto name =
"host_address_space_size";
1067 namespace load_ia32_perf_global_ctrl
1069 constexpr
const auto mask = 0x0000000000001000UL;
1071 constexpr
const auto name =
"load_ia32_perf_global_ctrl";
1098 namespace acknowledge_interrupt_on_exit
1100 constexpr
const auto mask = 0x0000000000008000UL;
1102 constexpr
const auto name =
"acknowledge_interrupt_on_exit";
1129 namespace save_ia32_pat
1131 constexpr
const auto mask = 0x0000000000040000UL;
1133 constexpr
const auto name =
"save_ia32_pat";
1160 namespace load_ia32_pat
1162 constexpr
const auto mask = 0x0000000000080000UL;
1164 constexpr
const auto name =
"load_ia32_pat";
1191 namespace save_ia32_efer
1193 constexpr
const auto mask = 0x0000000000100000UL;
1195 constexpr
const auto name =
"save_ia32_efer";
1222 namespace load_ia32_efer
1224 constexpr
const auto mask = 0x0000000000200000UL;
1226 constexpr
const auto name =
"load_ia32_efer";
1253 namespace save_vmx_preemption_timer_value
1255 constexpr
const auto mask = 0x0000000000400000UL;
1257 constexpr
const auto name =
"save_vmx_preemption_timer_value";
1284 namespace clear_ia32_bndcfgs
1286 constexpr
const auto mask = 0x0000000000800000UL;
1288 constexpr
const auto name =
"clear_ia32_bndcfgs";
1316 namespace vm_exit_msr_store_count
1318 constexpr
const auto addr = 0x000000000000400EUL;
1319 constexpr
const auto name =
"vm_exit_msr_store_count";
1330 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1333 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1338 namespace vm_exit_msr_load_count
1340 constexpr
const auto addr = 0x0000000000004010UL;
1341 constexpr
const auto name =
"vm_exit_msr_load_count";
1352 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1355 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1360 namespace vm_entry_controls
1362 constexpr
const auto addr = 0x0000000000004012UL;
1363 constexpr
const auto name =
"vm_entry_controls";
1375 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1378 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1382 namespace load_debug_controls
1384 constexpr
const auto mask = 0x0000000000000004UL;
1386 constexpr
const auto name =
"load_debug_controls";
1413 namespace ia_32e_mode_guest
1415 constexpr
const auto mask = 0x0000000000000200UL;
1417 constexpr
const auto name =
"ia_32e_mode_guest";
1444 namespace entry_to_smm
1446 constexpr
const auto mask = 0x0000000000000400UL;
1448 constexpr
const auto name =
"entry_to_smm";
1475 namespace deactivate_dual_monitor_treatment
1477 constexpr
const auto mask = 0x0000000000000800UL;
1479 constexpr
const auto name =
"deactivate_dual_monitor_treatment";
1506 namespace load_ia32_perf_global_ctrl
1508 constexpr
const auto mask = 0x0000000000002000UL;
1510 constexpr
const auto name =
"load_ia32_perf_global_ctrl";
1537 namespace load_ia32_pat
1539 constexpr
const auto mask = 0x0000000000004000UL;
1541 constexpr
const auto name =
"load_ia32_pat";
1568 namespace load_ia32_efer
1570 constexpr
const auto mask = 0x0000000000008000UL;
1572 constexpr
const auto name =
"load_ia32_efer";
1599 namespace load_ia32_bndcfgs
1601 constexpr
const auto mask = 0x0000000000010000UL;
1603 constexpr
const auto name =
"load_ia32_bndcfgs";
1631 namespace vm_entry_msr_load_count
1633 constexpr
const auto addr = 0x0000000000004014UL;
1634 constexpr
const auto name =
"vm_entry_msr_load_count";
1645 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1648 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1653 namespace vm_entry_interruption_information_field
1655 constexpr
const auto addr = 0x0000000000004016UL;
1656 constexpr
const auto name =
"vm_entry_interruption_information_field";
1667 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1670 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1676 constexpr
const auto mask = 0x000000FFUL;
1678 constexpr
const auto name =
"vector";
1686 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1693 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1701 namespace interruption_type
1703 constexpr
const auto mask = 0x00000700UL;
1705 constexpr
const auto name =
"interruption_type";
1722 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1729 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1737 namespace deliver_error_code_bit
1739 constexpr
const auto mask = 0x00000800UL;
1741 constexpr
const auto name =
"deliver_error_code_bit";
1782 constexpr
const auto mask = 0x7FFFF000UL;
1784 constexpr
const auto name =
"reserved";
1792 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1799 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1809 constexpr
const auto mask = 0x80000000UL;
1811 constexpr
const auto name =
"valid_bit";
1850 namespace vm_entry_exception_error_code
1852 constexpr
const auto addr = 0x0000000000004018UL;
1853 constexpr
const auto name =
"vm_entry_exception_error_code";
1864 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1867 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1872 namespace vm_entry_instruction_length
1874 constexpr
const auto addr = 0x000000000000401AUL;
1875 constexpr
const auto name =
"vm_entry_instruction_length";
1886 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1889 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1894 namespace tpr_threshold
1896 constexpr
const auto addr = 0x000000000000401CUL;
1897 constexpr
const auto name =
"tpr_threshold";
1908 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1911 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1916 namespace secondary_processor_based_vm_execution_controls
1918 constexpr
const auto addr = 0x000000000000401EUL;
1919 constexpr
const auto name =
"secondary_processor_based_vm_execution_controls";
1931 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1934 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
1938 namespace virtualize_apic_accesses
1940 constexpr
const auto mask = 0x0000000000000001UL;
1942 constexpr
const auto name =
"virtualize_apic_accesses";
1969 namespace enable_ept
1971 constexpr
const auto mask = 0x0000000000000002UL;
1973 constexpr
const auto name =
"enable_ept";
2000 namespace descriptor_table_exiting
2002 constexpr
const auto mask = 0x0000000000000004UL;
2004 constexpr
const auto name =
"descriptor_table_exiting";
2031 namespace enable_rdtscp
2033 constexpr
const auto mask = 0x0000000000000008UL;
2035 constexpr
const auto name =
"enable_rdtscp";
2062 namespace virtualize_x2apic_mode
2064 constexpr
const auto mask = 0x0000000000000010UL;
2066 constexpr
const auto name =
"virtualize_x2apic_mode";
2093 namespace enable_vpid
2095 constexpr
const auto mask = 0x0000000000000020UL;
2097 constexpr
const auto name =
"enable_vpid";
2124 namespace wbinvd_exiting
2126 constexpr
const auto mask = 0x0000000000000040UL;
2128 constexpr
const auto name =
"wbinvd_exiting";
2155 namespace unrestricted_guest
2157 constexpr
const auto mask = 0x0000000000000080UL;
2159 constexpr
const auto name =
"unrestricted_guest";
2186 namespace apic_register_virtualization
2188 constexpr
const auto mask = 0x0000000000000100UL;
2190 constexpr
const auto name =
"apic_register_virtualization";
2217 namespace virtual_interrupt_delivery
2219 constexpr
const auto mask = 0x0000000000000200UL;
2221 constexpr
const auto name =
"virtual_interrupt_delivery";
2248 namespace pause_loop_exiting
2250 constexpr
const auto mask = 0x0000000000000400UL;
2252 constexpr
const auto name =
"pause_loop_exiting";
2279 namespace rdrand_exiting
2281 constexpr
const auto mask = 0x0000000000000800UL;
2283 constexpr
const auto name =
"rdrand_exiting";
2310 namespace enable_invpcid
2312 constexpr
const auto mask = 0x0000000000001000UL;
2314 constexpr
const auto name =
"enable_invpcid";
2341 namespace enable_vm_functions
2343 constexpr
const auto mask = 0x0000000000002000UL;
2345 constexpr
const auto name =
"enable_vm_functions";
2372 namespace vmcs_shadowing
2374 constexpr
const auto mask = 0x0000000000004000UL;
2376 constexpr
const auto name =
"vmcs_shadowing";
2403 namespace rdseed_exiting
2405 constexpr
const auto mask = 0x0000000000010000UL;
2407 constexpr
const auto name =
"rdseed_exiting";
2434 namespace enable_pml
2436 constexpr
const auto mask = 0x0000000000020000UL;
2438 constexpr
const auto name =
"enable_pml";
2465 namespace ept_violation_ve
2467 constexpr
const auto mask = 0x0000000000040000UL;
2469 constexpr
const auto name =
"ept_violation_ve";
2496 namespace enable_xsaves_xrstors
2498 constexpr
const auto mask = 0x0000000000100000UL;
2500 constexpr
const auto name =
"enable_xsaves_xrstors";
2530 constexpr
const auto addr = 0x0000000000004020UL;
2531 constexpr
const auto name =
"ple_gap";
2545 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
2548 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
2553 namespace ple_window
2555 constexpr
const auto addr = 0x0000000000004022UL;
2556 constexpr
const auto name =
"ple_window";
2570 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
2573 template <class T, class = typename std::enable_if<std::is_integral<T>::value>
::type>
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
auto set_vm_control_if_allowed(bool val, MA msr_addr, CA ctls_addr, const char *name, M mask, bool verbose, bool field_exists) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_vmcs_field_if_exists(T addr, const char *name, bool verbose, bool exists)
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto addr
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto mask
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto addr
constexpr const auto mask
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto addr
void enable_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto msr_addr
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto msr_addr
constexpr const auto name
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
constexpr const auto from
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto mask
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto external_interrupt
auto get_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto reserved
constexpr const auto mask
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
constexpr const auto name
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto name
auto get_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto addr
constexpr const auto addr
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto name
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto software_interrupt
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto from
constexpr const auto from
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto other_event
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto mask
constexpr const auto mask
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto addr
constexpr const auto from
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto hardware_exception
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void set_if_exists(T val, bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
auto set_vmcs_field_if_exists(V val, A addr, const char *name, bool verbose, bool exists) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto name
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
void uint64_t uint64_t uint64_t *rdx noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto addr
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
auto is_allowed1() noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto software_exception
auto is_bit_cleared(T t, B b) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
void disable_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto non_maskable_interrupt
constexpr const auto name
void disable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto name
void disable_if_allowed(bool verbose=false) noexcept
auto is_allowed1() noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto mask
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto name
constexpr const auto from
constexpr const auto privileged_software_exception
constexpr const auto mask
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto from
auto get_if_exists(bool verbose=false) noexcept
auto clear_bit(T t, B b) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto from
constexpr const auto addr
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto from
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
auto set_vmcs_field(V val, A addr, const char *name, bool exists)
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto addr
constexpr const auto from
auto set_bit(T t, B b) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto addr
constexpr const auto from
auto get_bits(T t, M m) noexcept
constexpr const auto addr
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto name
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
constexpr const auto mask
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto from
constexpr const auto msr_addr
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto addr
constexpr const auto mask
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto get_vmcs_field(T addr, const char *name, bool exists)
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto monitor_trap_flag
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto name
constexpr const auto from
constexpr const auto mask
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto msr_addr
constexpr const auto name
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto addr
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
constexpr const auto mask
constexpr const auto name
auto set_vm_control(bool val, MA msr_addr, CA ctls_addr, const char *name, M mask, bool field_exists)
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto addr
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto mask
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto get_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto is_bit_set(T t, B b) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto msr_addr
void enable_if_allowed(bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
auto set_bits(T t, M m, V v) noexcept
auto get_if_exists(bool verbose=false) noexcept
constexpr const auto mask
auto is_allowed1() noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto get_if_exists(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
auto is_disabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
auto is_enabled_if_exists(bool verbose=false) noexcept
void set_if_exists(T val, bool verbose=false) noexcept
constexpr const auto mask
auto is_enabled_if_exists(bool verbose=false) noexcept
void enable_if_allowed(bool verbose=false) noexcept
void disable_if_allowed(bool verbose=false) noexcept
constexpr const auto from