Home
last modified time | relevance | path

Searched refs:memop (Results 1 – 25 of 36) sorted by relevance

12

/openbmc/qemu/tcg/
H A Dtcg-op-ldst.c187 orig_memop = memop = tcg_canonicalize_memop(memop, 0, 0); in tcg_gen_qemu_ld_i32_int()
240 memop = tcg_canonicalize_memop(memop, 0, 1); in tcg_gen_qemu_st_i32_int()
308 orig_memop = memop = tcg_canonicalize_memop(memop, 1, 0); in tcg_gen_qemu_ld_i64_int()
314 if ((memop & MO_SIGN) && (memop & MO_SIZE) < MO_64) { in tcg_gen_qemu_ld_i64_int()
370 memop = tcg_canonicalize_memop(memop, 1, 1); in tcg_gen_qemu_st_i64_int()
870 memop = tcg_canonicalize_memop(memop, 0, 0); in tcg_gen_atomic_cmpxchg_i32_int()
951 memop = tcg_canonicalize_memop(memop, 1, 0); in tcg_gen_atomic_cmpxchg_i64_int()
1111 memop = tcg_canonicalize_memop(memop, 0, 0); in do_nonatomic_op_i32()
1130 memop = tcg_canonicalize_memop(memop, 0, 0); in do_atomic_op_i32()
1152 memop = tcg_canonicalize_memop(memop, 1, 0); in do_nonatomic_op_i64()
[all …]
H A Dtcg-internal.h84 bool tcg_target_has_memory_bswap(MemOp memop);
/openbmc/qemu/accel/tcg/
H A Dldst_atomicity.c.inc31 MemOp atom = memop & MO_ATOM_MASK;
32 MemOp size = memop & MO_SIZE;
393 * @memop: the full memory op
413 atmax = required_atomicity(cpu, pi, memop);
435 * @memop: the full memory op
480 * @memop: the full memory op
531 * @memop: the full memory op
856 * @memop: the full memory op
907 * @memop: the full memory op
974 * @memop: the full memory op
[all …]
H A Dcputlb.c1681 MemOp memop; member
1785 l->memop = get_memop(oi); in mmu_lookup()
1810 l->memop ^= MO_BSWAP; in mmu_lookup()
2323 if (memop & MO_BSWAP) { in do_ld_2()
2343 if (memop & MO_BSWAP) { in do_ld_4()
2363 if (memop & MO_BSWAP) { in do_ld_8()
2471 if (l.memop & MO_BSWAP) { in do_ld16_mmu()
2744 if (memop & MO_BSWAP) { in do_st_2()
2763 if (memop & MO_BSWAP) { in do_st_4()
2782 if (memop & MO_BSWAP) { in do_st_8()
[all …]
/openbmc/qemu/target/arm/tcg/
H A Dtranslate-a32.h36 void read_neon_element32(TCGv_i32 dest, int reg, int ele, MemOp memop);
37 void read_neon_element64(TCGv_i64 dest, int reg, int ele, MemOp memop);
38 void write_neon_element32(TCGv_i32 src, int reg, int ele, MemOp memop);
39 void write_neon_element64(TCGv_i64 src, int reg, int ele, MemOp memop);
47 long neon_element_offset(int reg, int element, MemOp memop);
H A Dtranslate-a64.c2483 MemOp memop; in gen_store_exclusive() local
2520 memop = finalize_memop(s, memop); in gen_store_exclusive()
2588 MemOp memop; in gen_compare_and_swap() local
2608 MemOp memop; in gen_compare_and_swap_pair() local
2708 MemOp memop; in trans_STLR() local
2734 MemOp memop; in trans_LDAR() local
2817 MemOp memop; in trans_LD_lit_v() local
3173 MemOp memop; in trans_LDR() local
3191 MemOp memop; in trans_STR() local
3207 MemOp memop; in trans_LDR_v() local
[all …]
H A Dtranslate-a64.h54 bool tag_checked, MemOp memop);
56 bool tag_checked, int total_size, MemOp memop);
H A Dtranslate.c196 int sas = memop & MO_SIZE; in disas_set_da_iss()
197 bool sse = memop & MO_SIGN; in disas_set_da_iss()
1165 int element_size = 1 << (memop & MO_SIZE); in neon_element_offset()
1191 long off = neon_element_offset(reg, ele, memop); in read_neon_element32()
1193 switch (memop) { in read_neon_element32()
1217 long off = neon_element_offset(reg, ele, memop); in read_neon_element64()
1219 switch (memop) { in read_neon_element64()
1236 long off = neon_element_offset(reg, ele, memop); in write_neon_element32()
1238 switch (memop) { in write_neon_element32()
1255 long off = neon_element_offset(reg, ele, memop); in write_neon_element64()
[all …]
/openbmc/qemu/target/riscv/insn_trans/
H A Dtrans_xthead.c.inc352 tcg_gen_qemu_ld_i64(rd, addr, ctx->mem_idx, memop);
353 if ((memop & MO_SIZE) == MO_32) {
372 tcg_gen_qemu_st_i64(rd, addr, ctx->mem_idx, memop);
571 tcg_gen_qemu_ld_tl(rd, addr, ctx->mem_idx, memop);
591 tcg_gen_qemu_st_tl(data, addr, ctx->mem_idx, memop);
736 * Load with memop from indexed address.
746 tcg_gen_qemu_ld_tl(rd, addr, ctx->mem_idx, memop);
753 * Store with memop to indexed address.
763 tcg_gen_qemu_st_tl(data, addr, ctx->mem_idx, memop);
923 tcg_gen_qemu_ld_tl(t1, addr1, ctx->mem_idx, memop);
[all …]
H A Dtrans_rvzce.c.inc178 MemOp memop = get_ol(ctx) == MXL_RV32 ? MO_TEUL : MO_TEUQ;
179 int reg_size = memop_size(memop);
191 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, memop);
223 MemOp memop = get_ol(ctx) == MXL_RV32 ? MO_TEUL : MO_TEUQ;
224 int reg_size = memop_size(memop);
236 tcg_gen_qemu_st_tl(val, addr, ctx->mem_idx, memop);
H A Dtrans_rvi.c.inc234 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, memop);
249 if ((memop & MO_SIZE) <= MO_64) {
250 tcg_gen_qemu_ld_tl(destl, addrl, ctx->mem_idx, memop);
251 if (memop & MO_SIGN) {
271 return gen_load_i128(ctx, a, memop);
273 return gen_load_tl(ctx, a, memop);
331 tcg_gen_qemu_st_tl(data, addr, ctx->mem_idx, memop);
344 if ((memop & MO_SIZE) <= MO_64) {
345 tcg_gen_qemu_st_tl(src2l, addrl, ctx->mem_idx, memop);
359 return gen_store_i128(ctx, a, memop);
[all …]
/openbmc/linux/drivers/net/ethernet/broadcom/bnx2x/
H A Dbnx2x_init_ops.h619 struct ilt_line *line, u32 size, u8 memop) in bnx2x_ilt_line_mem_op() argument
621 if (memop == ILT_MEMOP_FREE) { in bnx2x_ilt_line_mem_op()
634 u8 memop) in bnx2x_ilt_client_mem_op() argument
650 ilt_cli->page_size, memop); in bnx2x_ilt_client_mem_op()
655 static int bnx2x_ilt_mem_op_cnic(struct bnx2x *bp, u8 memop) in bnx2x_ilt_mem_op_cnic() argument
660 rc = bnx2x_ilt_client_mem_op(bp, ILT_CLIENT_SRC, memop); in bnx2x_ilt_mem_op_cnic()
662 rc = bnx2x_ilt_client_mem_op(bp, ILT_CLIENT_TM, memop); in bnx2x_ilt_mem_op_cnic()
667 static int bnx2x_ilt_mem_op(struct bnx2x *bp, u8 memop) in bnx2x_ilt_mem_op() argument
669 int rc = bnx2x_ilt_client_mem_op(bp, ILT_CLIENT_CDU, memop); in bnx2x_ilt_mem_op()
671 rc = bnx2x_ilt_client_mem_op(bp, ILT_CLIENT_QM, memop); in bnx2x_ilt_mem_op()
[all …]
/openbmc/qemu/target/sparc/
H A Dldst_helper.c586 int size = 1 << (memop & MO_SIZE); in helper_ld_asi()
587 int sign = memop & MO_SIGN; in helper_ld_asi()
823 int asi, uint32_t memop) in helper_st_asi() argument
825 int size = 1 << (memop & MO_SIZE); in helper_st_asi()
1176 int size = 1 << (memop & MO_SIZE); in helper_ld_asi()
1177 int sign = memop & MO_SIGN; in helper_ld_asi()
1263 int asi, uint32_t memop) in helper_st_asi() argument
1265 int size = 1 << (memop & MO_SIZE); in helper_st_asi()
1296 int size = 1 << (memop & MO_SIZE); in helper_ld_asi()
1297 int sign = memop & MO_SIGN; in helper_ld_asi()
[all …]
H A Dtranslate.c1434 MemOp memop; member
1639 memop = MO_UB; in resolve_asi()
1646 memop = MO_TEUW; in resolve_asi()
1652 memop ^= MO_BSWAP; in resolve_asi()
1850 MemOp memop = da->memop; in gen_ldf_asi() local
1851 MemOp size = memop & MO_SIZE; in gen_ldf_asi()
1858 memop = (memop & ~MO_SIZE) | MO_64; in gen_ldf_asi()
1866 memop |= MO_ALIGN_4; in gen_ldf_asi()
1962 MemOp memop = da->memop; in gen_stf_asi() local
1969 memop = (memop & ~MO_SIZE) | MO_64; in gen_stf_asi()
[all …]
/openbmc/qemu/target/ppc/
H A Dtranslate.c3588 #define LARX(name, memop) \ argument
3591 gen_load_locked(ctx, memop); \
3606 tcg_gen_qemu_ld_tl(t, EA, ctx->mem_idx, memop); in LARX()
3607 tcg_gen_addi_tl(t2, EA, MEMOP_GET_SIZE(memop)); in LARX()
3608 tcg_gen_qemu_ld_tl(t2, t2, ctx->mem_idx, memop); in LARX()
3614 tcg_gen_qemu_st_tl(u, EA, ctx->mem_idx, memop); in LARX()
3621 static void gen_ld_atomic(DisasContext *ctx, MemOp memop) in gen_ld_atomic() argument
3634 memop |= MO_ALIGN; in gen_ld_atomic()
3740 memop |= MO_ALIGN; in gen_st_atomic()
3836 #define STCX(name, memop) \ argument
[all …]
/openbmc/qemu/include/tcg/
H A Dtcg.h291 static inline unsigned get_alignment_bits(MemOp memop) in get_alignment_bits() argument
293 unsigned a = memop & MO_AMASK; in get_alignment_bits()
300 a = memop & MO_SIZE; in get_alignment_bits()
/openbmc/linux/arch/x86/kvm/
H A Demulate.c1306 ctxt->memop.addr.mem.ea = (u32)ctxt->memop.addr.mem.ea; in decode_modrm()
4609 *op = ctxt->memop; in decode_operand()
4678 ctxt->memop.bytes = 1; in decode_operand()
4679 if (ctxt->memop.type == OP_REG) { in decode_operand()
4682 fetch_register_operand(&ctxt->memop); in decode_operand()
4686 ctxt->memop.bytes = 2; in decode_operand()
4689 ctxt->memop.bytes = 4; in decode_operand()
4723 ctxt->memop.bytes = ctxt->op_bytes + 2; in decode_operand()
4771 ctxt->memop.type = OP_NONE; in x86_decode_insn()
5015 rc = decode_modrm(ctxt, &ctxt->memop); in x86_decode_insn()
[all …]
H A Dkvm_emulate.h359 struct operand memop; member
/openbmc/qemu/target/s390x/tcg/
H A Dtranslate_vx.c.inc66 MemOp memop)
68 const int offs = vec_reg_offset(reg, enr, memop & MO_SIZE);
70 switch ((unsigned)memop) {
99 MemOp memop)
101 const int offs = vec_reg_offset(reg, enr, memop & MO_SIZE);
103 switch (memop) {
126 MemOp memop)
128 const int offs = vec_reg_offset(reg, enr, memop & MO_SIZE);
130 switch (memop) {
149 MemOp memop)
[all …]
/openbmc/linux/tools/testing/selftests/kvm/
H A DMakefile167 TEST_GEN_PROGS_s390x = s390x/memop
/openbmc/qemu/target/hexagon/
H A Dattribs_def.h.inc97 DEF_ATTRIB(MEMOP, "memop", "", "")
/openbmc/qemu/tcg/i386/
H A Dtcg-target.c.inc1822 bool tcg_target_has_memory_bswap(MemOp memop)
1829 if ((memop & MO_SIZE) < MO_128) {
1834 * Reject 16-byte memop with 16-byte atomicity, i.e. VMOVDQA,
1837 aa = atom_and_align_for_opc(tcg_ctx, memop, MO_ATOM_IFALIGN, true);
2092 HostAddress h, TCGType type, MemOp memop)
2099 if (memop & MO_BSWAP) {
2105 switch (memop & MO_SSIZE) {
2271 HostAddress h, MemOp memop)
2280 if (memop & MO_BSWAP) {
2286 switch (memop & MO_SIZE) {
/openbmc/qemu/tcg/aarch64/
H A Dtcg-target.c.inc1602 bool tcg_target_has_memory_bswap(MemOp memop)
1761 static void tcg_out_qemu_ld_direct(TCGContext *s, MemOp memop, TCGType ext,
1764 switch (memop & MO_SSIZE) {
1793 static void tcg_out_qemu_st_direct(TCGContext *s, MemOp memop,
1796 switch (memop & MO_SIZE) {
/openbmc/qemu/tcg/tci/
H A Dtcg-target.c.inc963 bool tcg_target_has_memory_bswap(MemOp memop)
/openbmc/qemu/tcg/s390x/
H A Dtcg-target.c.inc1589 bool tcg_target_has_memory_bswap(MemOp memop)
1593 if ((memop & MO_SIZE) <= MO_64) {
1598 * Reject 16-byte memop with 16-byte atomicity,
1601 aa = atom_and_align_for_opc(tcg_ctx, memop, MO_ATOM_IFALIGN, true);

12