Lines Matching refs:reg_read
246 static ulong reg_read(struct x86_emulate_ctxt *ctxt, unsigned nr) in reg_read() function
264 reg_read(ctxt, nr); in reg_rmw()
567 return address_mask(ctxt, reg_read(ctxt, reg)); in register_address()
1308 unsigned bx = reg_read(ctxt, VCPU_REGS_RBX); in decode_modrm()
1309 unsigned bp = reg_read(ctxt, VCPU_REGS_RBP); in decode_modrm()
1310 unsigned si = reg_read(ctxt, VCPU_REGS_RSI); in decode_modrm()
1311 unsigned di = reg_read(ctxt, VCPU_REGS_RDI); in decode_modrm()
1368 modrm_ea += reg_read(ctxt, base_reg); in decode_modrm()
1376 modrm_ea += reg_read(ctxt, index_reg) << scale; in decode_modrm()
1383 modrm_ea += reg_read(ctxt, base_reg); in decode_modrm()
1523 address_mask(ctxt, reg_read(ctxt, VCPU_REGS_RCX)) : 1; in pio_in_emulated()
1525 offset_in_page(reg_read(ctxt, VCPU_REGS_RDI)) : in pio_in_emulated()
1526 PAGE_SIZE - offset_in_page(reg_read(ctxt, VCPU_REGS_RDI)); in pio_in_emulated()
1888 addr.ea = reg_read(ctxt, VCPU_REGS_RSP) & stack_mask(ctxt); in push()
1907 addr.ea = reg_read(ctxt, VCPU_REGS_RSP) & stack_mask(ctxt); in emulate_pop()
1982 rbp = reg_read(ctxt, VCPU_REGS_RBP); in em_enter()
1986 assign_masked(reg_rmw(ctxt, VCPU_REGS_RBP), reg_read(ctxt, VCPU_REGS_RSP), in em_enter()
1989 reg_read(ctxt, VCPU_REGS_RSP) - frame_size, in em_enter()
1996 assign_masked(reg_rmw(ctxt, VCPU_REGS_RSP), reg_read(ctxt, VCPU_REGS_RBP), in em_leave()
2035 unsigned long old_esp = reg_read(ctxt, VCPU_REGS_RSP); in em_pusha()
2041 (ctxt->src.val = old_esp) : (ctxt->src.val = reg_read(ctxt, reg)); in em_pusha()
2275 if (((u32) (old >> 0) != (u32) reg_read(ctxt, VCPU_REGS_RAX)) || in em_cmpxchg8b()
2276 ((u32) (old >> 32) != (u32) reg_read(ctxt, VCPU_REGS_RDX))) { in em_cmpxchg8b()
2281 ctxt->dst.val64 = ((u64)reg_read(ctxt, VCPU_REGS_RCX) << 32) | in em_cmpxchg8b()
2282 (u32) reg_read(ctxt, VCPU_REGS_RBX); in em_cmpxchg8b()
2345 ctxt->dst.val = reg_read(ctxt, VCPU_REGS_RAX); in em_cmpxchg()
2906 rcx = reg_read(ctxt, VCPU_REGS_RCX); in em_sysexit()
2907 rdx = reg_read(ctxt, VCPU_REGS_RDX); in em_sysexit()
3044 tss->ax = reg_read(ctxt, VCPU_REGS_RAX); in save_state_to_tss16()
3045 tss->cx = reg_read(ctxt, VCPU_REGS_RCX); in save_state_to_tss16()
3046 tss->dx = reg_read(ctxt, VCPU_REGS_RDX); in save_state_to_tss16()
3047 tss->bx = reg_read(ctxt, VCPU_REGS_RBX); in save_state_to_tss16()
3048 tss->sp = reg_read(ctxt, VCPU_REGS_RSP); in save_state_to_tss16()
3049 tss->bp = reg_read(ctxt, VCPU_REGS_RBP); in save_state_to_tss16()
3050 tss->si = reg_read(ctxt, VCPU_REGS_RSI); in save_state_to_tss16()
3051 tss->di = reg_read(ctxt, VCPU_REGS_RDI); in save_state_to_tss16()
3158 tss->eax = reg_read(ctxt, VCPU_REGS_RAX); in save_state_to_tss32()
3159 tss->ecx = reg_read(ctxt, VCPU_REGS_RCX); in save_state_to_tss32()
3160 tss->edx = reg_read(ctxt, VCPU_REGS_RDX); in save_state_to_tss32()
3161 tss->ebx = reg_read(ctxt, VCPU_REGS_RBX); in save_state_to_tss32()
3162 tss->esp = reg_read(ctxt, VCPU_REGS_RSP); in save_state_to_tss32()
3163 tss->ebp = reg_read(ctxt, VCPU_REGS_RBP); in save_state_to_tss32()
3164 tss->esi = reg_read(ctxt, VCPU_REGS_RSI); in save_state_to_tss32()
3165 tss->edi = reg_read(ctxt, VCPU_REGS_RDI); in save_state_to_tss32()
3628 if (ctxt->ops->read_pmc(ctxt, reg_read(ctxt, VCPU_REGS_RCX), &pmc)) in em_rdpmc()
3704 u64 msr_index = reg_read(ctxt, VCPU_REGS_RCX); in em_wrmsr()
3708 msr_data = (u32)reg_read(ctxt, VCPU_REGS_RAX) in em_wrmsr()
3709 | ((u64)reg_read(ctxt, VCPU_REGS_RDX) << 32); in em_wrmsr()
3723 u64 msr_index = reg_read(ctxt, VCPU_REGS_RCX); in em_rdmsr()
3933 if ((address_mask(ctxt, reg_read(ctxt, VCPU_REGS_RCX)) != 0) && in em_loop()
3944 if (address_mask(ctxt, reg_read(ctxt, VCPU_REGS_RCX)) == 0) in em_jcxz()
3998 eax = reg_read(ctxt, VCPU_REGS_RAX); in em_cpuid()
3999 ecx = reg_read(ctxt, VCPU_REGS_RCX); in em_cpuid()
4199 eax = reg_read(ctxt, VCPU_REGS_RAX); in em_xsetbv()
4200 edx = reg_read(ctxt, VCPU_REGS_RDX); in em_xsetbv()
4201 ecx = reg_read(ctxt, VCPU_REGS_RCX); in em_xsetbv()
4363 u64 rax = reg_read(ctxt, VCPU_REGS_RAX); in check_svme_pa()
4385 u64 rcx = reg_read(ctxt, VCPU_REGS_RCX); in check_rdpmc()
5087 op->val = reg_read(ctxt, VCPU_REGS_RCX) & 0xff; in decode_operand()
5137 reg_read(ctxt, VCPU_REGS_RBX) + in decode_operand()
5138 (reg_read(ctxt, VCPU_REGS_RAX) & 0xff)); in decode_operand()
5647 if (address_mask(ctxt, reg_read(ctxt, VCPU_REGS_RCX)) == 0) { in x86_emulate_insn()
5820 if ((r->end != 0 || reg_read(ctxt, VCPU_REGS_RCX) & 0x3ff) && in x86_emulate_insn()