Lines Matching defs:save
67 struct vmcb_save_area *save = &vmcb->save;
81 vmcb_set_seg(&save->es, get_es(), 0, -1U, data_seg_attr);
82 vmcb_set_seg(&save->cs, get_cs(), 0, -1U, code_seg_attr);
83 vmcb_set_seg(&save->ss, get_ss(), 0, -1U, data_seg_attr);
84 vmcb_set_seg(&save->ds, get_ds(), 0, -1U, data_seg_attr);
85 vmcb_set_seg(&save->gdtr, 0, get_gdt().address, get_gdt().size, 0);
86 vmcb_set_seg(&save->idtr, 0, get_idt().address, get_idt().size, 0);
89 save->cpl = 0;
90 save->efer = rdmsr(MSR_EFER);
91 asm volatile ("mov %%cr4, %0" : "=r"(save->cr4) : : "memory");
92 asm volatile ("mov %%cr3, %0" : "=r"(save->cr3) : : "memory");
93 asm volatile ("mov %%cr0, %0" : "=r"(save->cr0) : : "memory");
94 asm volatile ("mov %%dr7, %0" : "=r"(save->dr7) : : "memory");
95 asm volatile ("mov %%dr6, %0" : "=r"(save->dr6) : : "memory");
96 asm volatile ("mov %%cr2, %0" : "=r"(save->cr2) : : "memory");
97 save->g_pat = rdmsr(MSR_IA32_CR_PAT);
98 save->dbgctl = rdmsr(MSR_IA32_DEBUGCTLMSR);
103 vmcb->save.rip = (u64)guest_rip;
104 vmcb->save.rsp = (u64)guest_rsp;
109 * save/restore 64-bit general registers except rax, rip, rsp