Lines Matching refs:op_bytes
787 if (ctxt->op_bytes != sizeof(unsigned long)) in assign_eip()
788 addr.ea = dst & ((1UL << (ctxt->op_bytes << 3)) - 1); in assign_eip()
1004 u16 *size, unsigned long *address, int op_bytes) in read_descriptor() argument
1008 if (op_bytes == 2) in read_descriptor()
1009 op_bytes = 3; in read_descriptor()
1015 rc = segmented_read_std(ctxt, addr, address, op_bytes); in read_descriptor()
1278 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_register_operand()
1310 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_modrm()
1398 modrm_ea += ctxt->op_bytes; in decode_modrm()
1926 return push(ctxt, &ctxt->src.val, ctxt->op_bytes); in em_push()
1947 return emulate_pop(ctxt, &ctxt->dst.val, ctxt->op_bytes); in em_pop()
1996 ctxt->dst.bytes = ctxt->op_bytes; in em_popf()
1997 return emulate_popf(ctxt, &ctxt->dst.val, ctxt->op_bytes); in em_popf()
2026 return emulate_pop(ctxt, reg_rmw(ctxt, VCPU_REGS_RBP), ctxt->op_bytes); in em_leave()
2034 if (ctxt->op_bytes == 4) { in em_push_sreg()
2036 ctxt->op_bytes = 2; in em_push_sreg()
2054 if (ctxt->op_bytes > 2) in em_pop_sreg()
2055 rsp_increment(ctxt, ctxt->op_bytes - 2); in em_pop_sreg()
2095 rsp_increment(ctxt, ctxt->op_bytes); in em_popa()
2099 rc = emulate_pop(ctxt, &val, ctxt->op_bytes); in em_popa()
2102 assign_register(reg_rmw(ctxt, reg), val, ctxt->op_bytes); in em_popa()
2200 rc = emulate_pop(ctxt, &temp_eip, ctxt->op_bytes); in emulate_iret_real()
2208 rc = emulate_pop(ctxt, &cs, ctxt->op_bytes); in emulate_iret_real()
2213 rc = emulate_pop(ctxt, &temp_eflags, ctxt->op_bytes); in emulate_iret_real()
2225 if (ctxt->op_bytes == 4) in emulate_iret_real()
2227 else if (ctxt->op_bytes == 2) { in emulate_iret_real()
2261 memcpy(&sel, ctxt->src.valptr + ctxt->op_bytes, 2); in em_jmp_far()
2322 rc = emulate_pop(ctxt, &eip, ctxt->op_bytes); in em_ret()
2336 rc = emulate_pop(ctxt, &eip, ctxt->op_bytes); in em_ret_far()
2339 rc = emulate_pop(ctxt, &cs, ctxt->op_bytes); in em_ret_far()
2399 memcpy(&sel, ctxt->src.valptr + ctxt->op_bytes, 2); in em_lseg()
3431 ctxt->op_bytes = ctxt->ad_bytes = (next_tss_desc.type & 8) ? 4 : 2; in emulator_do_task_switch()
3576 memcpy(&sel, ctxt->src.valptr + ctxt->op_bytes, 2); in em_call_far()
3612 rc = emulate_pop(ctxt, &eip, ctxt->op_bytes); in em_ret_near_imm()
3701 switch (ctxt->op_bytes) { in em_movbe()
3905 ctxt->op_bytes = 8; in emulate_store_desc_ptr()
3907 if (ctxt->op_bytes == 2) { in emulate_store_desc_ptr()
3908 ctxt->op_bytes = 4; in emulate_store_desc_ptr()
3914 &desc_ptr, 2 + ctxt->op_bytes); in emulate_store_desc_ptr()
3933 ctxt->op_bytes = 8; in em_lgdt_lidt()
3936 ctxt->op_bytes); in em_lgdt_lidt()
4083 switch (ctxt->op_bytes) { in em_bswap()
5026 size = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in imm_size()
5085 ctxt->memop.bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_operand()
5094 ctxt->memop.bytes = (ctxt->op_bytes == 8) ? 16 : 8; in decode_operand()
5098 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_operand()
5105 op->bytes = (ctxt->d & ByteOp) ? 2 : ctxt->op_bytes; in decode_operand()
5116 op->bytes = ctxt->op_bytes; in decode_operand()
5123 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_operand()
5153 rc = decode_imm(ctxt, op, ctxt->op_bytes, true); in decode_operand()
5177 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_operand()
5186 op->bytes = (ctxt->d & ByteOp) ? 1 : ctxt->op_bytes; in decode_operand()
5197 op->bytes = ctxt->op_bytes + 2; in decode_operand()
5201 ctxt->memop.bytes = ctxt->op_bytes + 2; in decode_operand()
5288 ctxt->op_bytes = def_op_bytes; in x86_decode_insn()
5297 ctxt->op_bytes = def_op_bytes ^ 6; in x86_decode_insn()
5356 ctxt->op_bytes = 8; /* REX.W */ in x86_decode_insn()
5466 if (ctxt->op_bytes == 4 && (ctxt->d & Stack)) in x86_decode_insn()
5467 ctxt->op_bytes = 8; in x86_decode_insn()
5469 ctxt->op_bytes = 8; in x86_decode_insn()
5474 ctxt->op_bytes = 8; in x86_decode_insn()
5476 ctxt->op_bytes = 4; in x86_decode_insn()
5479 if ((ctxt->d & No16) && ctxt->op_bytes == 2) in x86_decode_insn()
5480 ctxt->op_bytes = 4; in x86_decode_insn()
5483 ctxt->op_bytes = 16; in x86_decode_insn()
5485 ctxt->op_bytes = 8; in x86_decode_insn()
5791 switch (ctxt->op_bytes) { in x86_emulate_insn()
5929 else if (ctxt->op_bytes != 4) in x86_emulate_insn()
5940 ctxt->dst.bytes = ctxt->op_bytes; in x86_emulate_insn()
5945 ctxt->dst.bytes = ctxt->op_bytes; in x86_emulate_insn()