diff --git a/repos/base/include/spec/x86/cpu/vcpu_state.h b/repos/base/include/spec/x86/cpu/vcpu_state.h index 2c6ac5b0f5..0df15b1c94 100644 --- a/repos/base/include/spec/x86/cpu/vcpu_state.h +++ b/repos/base/include/spec/x86/cpu/vcpu_state.h @@ -47,6 +47,8 @@ class Genode::Vcpu_state public: + Vcpu_state() = default; + template class Register : Noncopyable { @@ -94,85 +96,85 @@ class Genode::Vcpu_state addr_t base; }; - Register ax; - Register cx; - Register dx; - Register bx; + Register ax { }; + Register cx { }; + Register dx { }; + Register bx { }; - Register bp; - Register si; - Register di; + Register bp { }; + Register si { }; + Register di { }; - Register sp; - Register ip; - Register ip_len; - Register flags; + Register sp { }; + Register ip { }; + Register ip_len { }; + Register flags { }; - Register es; - Register ds; - Register fs; - Register gs; - Register cs; - Register ss; - Register tr; - Register ldtr; + Register es { }; + Register ds { }; + Register fs { }; + Register gs { }; + Register cs { }; + Register ss { }; + Register tr { }; + Register ldtr { }; - Register gdtr; - Register idtr; + Register gdtr { }; + Register idtr { }; - Register cr0; - Register cr2; - Register cr3; - Register cr4; + Register cr0 { }; + Register cr2 { }; + Register cr3 { }; + Register cr4 { }; - Register dr7; + Register dr7 { }; - Register sysenter_ip; - Register sysenter_sp; - Register sysenter_cs; + Register sysenter_ip { }; + Register sysenter_sp { }; + Register sysenter_cs { }; - Register qual_primary; - Register qual_secondary; + Register qual_primary { }; + Register qual_secondary { }; - Register ctrl_primary; - Register ctrl_secondary; + Register ctrl_primary { }; + Register ctrl_secondary { }; - Register inj_info; - Register inj_error; + Register inj_info { }; + Register inj_error { }; - Register intr_state; - Register actv_state; + Register intr_state { }; + Register actv_state { }; - Register tsc; - Register tsc_offset; - Register tsc_aux; + Register tsc { }; + Register tsc_offset { }; + Register tsc_aux { }; - Register efer; + Register efer { }; - Register pdpte_0; - Register pdpte_1; - Register pdpte_2; - Register pdpte_3; + Register pdpte_0 { }; + Register pdpte_1 { }; + Register pdpte_2 { }; + Register pdpte_3 { }; - Register r8; - Register r9; - Register r10; - Register r11; - Register r12; - Register r13; - Register r14; - Register r15; + Register r8 { }; + Register r9 { }; + Register r10 { }; + Register r11 { }; + Register r12 { }; + Register r13 { }; + Register r14 { }; + Register r15 { }; - Register star; - Register lstar; - Register cstar; - Register fmask; - Register kernel_gs_base; + Register star { }; + Register lstar { }; + Register cstar { }; + Register fmask { }; + Register kernel_gs_base { }; - Register tpr; - Register tpr_threshold; + Register tpr { }; + Register tpr_threshold { }; - unsigned exit_reason; + unsigned exit_reason { }; class Fpu : Noncopyable { @@ -216,7 +218,7 @@ class Genode::Vcpu_state } }; - Fpu fpu __attribute__((aligned(16))); + Fpu fpu __attribute__((aligned(16))) { }; /* * Registers transfered by hypervisor from guest on VM exit are charged.