Lines Matching refs:reg_rmw
282 static ulong *reg_rmw(struct x86_emulate_ctxt *ctxt, unsigned nr) in reg_rmw() function
567 ulong *preg = reg_rmw(ctxt, reg); in register_address_increment()
574 masked_increment(reg_rmw(ctxt, VCPU_REGS_RSP), stack_mask(ctxt), inc); in rsp_increment()
950 p = (unsigned char *)reg_rmw(ctxt, modrm_reg & 3) + 1; in decode_register()
952 p = reg_rmw(ctxt, modrm_reg); in decode_register()
1937 assign_masked(reg_rmw(ctxt, VCPU_REGS_RBP), reg_read(ctxt, VCPU_REGS_RSP), in em_enter()
1939 assign_masked(reg_rmw(ctxt, VCPU_REGS_RSP), in em_enter()
1947 assign_masked(reg_rmw(ctxt, VCPU_REGS_RSP), reg_read(ctxt, VCPU_REGS_RBP), in em_leave()
1949 return emulate_pop(ctxt, reg_rmw(ctxt, VCPU_REGS_RBP), ctxt->op_bytes); in em_leave()
2025 assign_register(reg_rmw(ctxt, reg), val, ctxt->op_bytes); in em_popa()
2308 ctxt->src.addr.reg = reg_rmw(ctxt, VCPU_REGS_RAX); in em_cmpxchg()
2974 *reg_rmw(ctxt, VCPU_REGS_RSI) &= (u32)-1; in string_registers_quirk()
2978 *reg_rmw(ctxt, VCPU_REGS_RDI) &= (u32)-1; in string_registers_quirk()
3542 ctxt->dst.addr.reg = reg_rmw(ctxt, VCPU_REGS_RDX); in em_cwd()
3951 flags &= *reg_rmw(ctxt, VCPU_REGS_RAX) >> 8; in em_sahf()
3960 *reg_rmw(ctxt, VCPU_REGS_RAX) &= ~0xff00UL; in em_lahf()
3961 *reg_rmw(ctxt, VCPU_REGS_RAX) |= (ctxt->eflags & 0xff) << 8; in em_lahf()
4948 op->addr.reg = reg_rmw(ctxt, VCPU_REGS_RAX); in decode_operand()
4955 op->addr.reg = reg_rmw(ctxt, VCPU_REGS_RAX); in decode_operand()
4966 op->addr.reg = reg_rmw(ctxt, VCPU_REGS_RDX); in decode_operand()
4982 op->addr.reg = reg_rmw(ctxt, VCPU_REGS_RDX); in decode_operand()
5612 if (ctxt->dst.addr.reg == reg_rmw(ctxt, VCPU_REGS_RAX)) in x86_emulate_insn()