Lines Matching +full:state +full:- +full:labels
58 * kvm_mips_entry_setup() - Perform global setup for entry code.
63 * -errno on failure.
73 if (pgd_reg != -1) in kvm_mips_entry_setup()
79 scratch_vcpu[1] = ffs(kscratch_mask) - 1; in kvm_mips_entry_setup()
83 /* Pick a scratch register to use as a temp for saving state */ in kvm_mips_entry_setup()
86 scratch_tmp[1] = ffs(kscratch_mask) - 1; in kvm_mips_entry_setup()
124 * build_set_exc_base() - Assemble code to write exception base address.
143 * kvm_mips_build_vcpu_run() - Assemble function to start running a guest VCPU.
166 UASM_i_ADDIU(&p, GPR_K1, GPR_SP, -(int)sizeof(struct pt_regs)); in kvm_mips_build_vcpu_run()
183 /* Offset into vcpu->arch */ in kvm_mips_build_vcpu_run()
224 * kvm_mips_build_enter_guest() - Assemble code to resume guest execution.
237 struct uasm_label labels[2]; in kvm_mips_build_enter_guest() local
239 struct uasm_label __maybe_unused *l = labels; in kvm_mips_build_enter_guest()
242 memset(labels, 0, sizeof(labels)); in kvm_mips_build_enter_guest()
259 * - call tlbmiss_handler_setup_pgd(mm->pgd) in kvm_mips_build_enter_guest()
260 * - write mm->pgd into CP0_PWBase in kvm_mips_build_enter_guest()
264 UASM_i_LW(&p, GPR_S0, (int)offsetof(struct kvm_vcpu, kvm) - in kvm_mips_build_enter_guest()
366 uasm_resolve_relocs(relocs, labels); in kvm_mips_build_enter_guest()
372 * kvm_mips_build_tlb_refill_exception() - Assemble TLB refill handler.
383 struct uasm_label labels[2]; in kvm_mips_build_tlb_refill_exception() local
386 struct uasm_label *l = labels; in kvm_mips_build_tlb_refill_exception()
390 memset(labels, 0, sizeof(labels)); in kvm_mips_build_tlb_refill_exception()
422 * with 32-bit addressing. in kvm_mips_build_tlb_refill_exception()
459 * kvm_mips_build_exception() - Assemble first level guest exception handler.
471 struct uasm_label labels[2]; in kvm_mips_build_exception() local
473 struct uasm_label *l = labels; in kvm_mips_build_exception()
476 memset(labels, 0, sizeof(labels)); in kvm_mips_build_exception()
494 uasm_resolve_relocs(relocs, labels); in kvm_mips_build_exception()
500 * kvm_mips_build_exit() - Assemble common guest exit handler.
514 struct uasm_label labels[3]; in kvm_mips_build_exit() local
516 struct uasm_label *l = labels; in kvm_mips_build_exit()
519 memset(labels, 0, sizeof(labels)); in kvm_mips_build_exit()
585 /* Now restore the host state just enough to run the handlers */ in kvm_mips_build_exit()
643 * - call tlbmiss_handler_setup_pgd(mm->pgd) in kvm_mips_build_exit()
644 * - write mm->pgd into CP0_PWBase in kvm_mips_build_exit()
694 /* Saved host state */ in kvm_mips_build_exit()
695 UASM_i_ADDIU(&p, GPR_SP, GPR_SP, -(int)sizeof(struct pt_regs)); in kvm_mips_build_exit()
719 UASM_i_ADDIU(&p, GPR_SP, GPR_SP, -CALLFRAME_SIZ); in kvm_mips_build_exit()
721 uasm_resolve_relocs(relocs, labels); in kvm_mips_build_exit()
729 * kvm_mips_build_ret_from_exit() - Assemble guest exit return handler.
740 struct uasm_label labels[2]; in kvm_mips_build_ret_from_exit() local
742 struct uasm_label *l = labels; in kvm_mips_build_ret_from_exit()
745 memset(labels, 0, sizeof(labels)); in kvm_mips_build_ret_from_exit()
774 uasm_resolve_relocs(relocs, labels); in kvm_mips_build_ret_from_exit()
780 * kvm_mips_build_ret_to_guest() - Assemble code to return to the guest.
819 * kvm_mips_build_ret_to_host() - Assemble code to return to the host.
835 UASM_i_ADDIU(&p, GPR_K1, GPR_K1, -(int)sizeof(struct pt_regs)); in kvm_mips_build_ret_to_host()