Home
last modified time | relevance | path

Searched refs:mop (Results 1 – 25 of 43) sorted by relevance

12

/openbmc/qemu/target/loongarch/tcg/insn_trans/
H A Dtrans_fmemory.c.inc6 static void maybe_nanbox_load(TCGv freg, MemOp mop)
8 if ((mop & MO_SIZE) == MO_32) {
13 static bool gen_fload_i(DisasContext *ctx, arg_fr_i *a, MemOp mop)
22 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, mop);
23 maybe_nanbox_load(dest, mop);
29 static bool gen_fstore_i(DisasContext *ctx, arg_fr_i *a, MemOp mop)
38 tcg_gen_qemu_st_tl(src, addr, ctx->mem_idx, mop);
43 static bool gen_floadx(DisasContext *ctx, arg_frr *a, MemOp mop)
53 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, mop);
54 maybe_nanbox_load(dest, mop);
[all …]
H A Dtrans_memory.c.inc6 static bool gen_load(DisasContext *ctx, arg_rr_i *a, MemOp mop)
13 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, mop);
18 static bool gen_store(DisasContext *ctx, arg_rr_i *a, MemOp mop)
25 tcg_gen_qemu_st_tl(data, addr, ctx->mem_idx, mop);
29 static bool gen_loadx(DisasContext *ctx, arg_rrr *a, MemOp mop)
36 tcg_gen_qemu_ld_tl(dest, addr, ctx->mem_idx, mop);
42 static bool gen_storex(DisasContext *ctx, arg_rrr *a, MemOp mop)
49 tcg_gen_qemu_st_tl(data, addr, ctx->mem_idx, mop);
54 static bool gen_load_gt(DisasContext *ctx, arg_rrr *a, MemOp mop)
62 tcg_gen_qemu_ld_tl(dest, src1, ctx->mem_idx, mop);
[all …]
H A Dtrans_atomic.c.inc6 static bool gen_ll(DisasContext *ctx, arg_rr_i *a, MemOp mop)
12 tcg_gen_qemu_ld_i64(t1, t0, ctx->mem_idx, mop);
20 static bool gen_sc(DisasContext *ctx, arg_rr_i *a, MemOp mop)
40 val, ctx->mem_idx, mop);
50 MemOp mop)
66 func(dest, addr, val, ctx->mem_idx, mop);
H A Dtrans_vec.c.inc228 uint32_t oprsz, MemOp mop,
240 func(mop, vd_ofs, vj_ofs, vk_ofs, oprsz, ctx->vl / 8);
244 static bool gvec_vvv(DisasContext *ctx, arg_vvv *a, MemOp mop,
248 return gvec_vvv_vl(ctx, a, 16, mop, func);
251 static bool gvec_xxx(DisasContext *ctx, arg_vvv *a, MemOp mop,
255 return gvec_vvv_vl(ctx, a, 32, mop, func);
259 uint32_t oprsz, MemOp mop,
270 func(mop, vd_ofs, vj_ofs, oprsz, ctx->vl / 8);
275 static bool gvec_vv(DisasContext *ctx, arg_vv *a, MemOp mop,
279 return gvec_vv_vl(ctx, a, 16, mop, fun
[all...]
/openbmc/qemu/accel/tcg/
H A Dtrace-events17 load_atom2_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
18 load_atom4_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
20 load_atom8_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
21 load_atom16_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
23 store_atom2_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
24 store_atom4_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
25 store_atom8_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
26 store_atom16_fallback(uint32_t memop, uintptr_t ra) "mop:0x%"PRIx32", ra:0x%"PRIxPTR""
H A Duser-exec.c955 MemOp mop, uintptr_t ra, MMUAccessType type) in cpu_mmu_lookup() argument
957 int a_bits = memop_alignment_bits(mop); in cpu_mmu_lookup()
990 MemOp mop = get_memop(oi); in do_ld2_mmu() local
993 haddr = cpu_mmu_lookup(cpu, addr, mop, ra, access_type); in do_ld2_mmu()
994 ret = load_atom_2(cpu, ra, haddr, mop); in do_ld2_mmu()
997 if (mop & MO_BSWAP) { in do_ld2_mmu()
1008 MemOp mop = get_memop(oi); in do_ld4_mmu() local
1011 haddr = cpu_mmu_lookup(cpu, addr, mop, ra, access_type); in do_ld4_mmu()
1012 ret = load_atom_4(cpu, ra, haddr, mop); in do_ld4_mmu()
1015 if (mop & MO_BSWAP) { in do_ld4_mmu()
[all …]
H A Dcputlb.c1801 MemOp mop = get_memop(oi); in atomic_mmu_lookup() local
1823 mop, size, false, retaddr); in atomic_mmu_lookup()
1849 if (!did_tlb_fill && (addr & ((1 << memop_alignment_bits(mop)) - 1))) { in atomic_mmu_lookup()
2147 MemOp mop, uintptr_t ra) in do_ld_beN() argument
2161 atom = mop & MO_ATOM_MASK; in do_ld_beN()
2168 tmp = mop & MO_SIZE; in do_ld_beN()
2196 uint64_t a, int mmu_idx, MemOp mop, uintptr_t ra) in do_ld16_beN() argument
2210 atom = mop & MO_ATOM_MASK; in do_ld16_beN()
2555 MemOp mop, uintptr_t ra) in do_st_leN() argument
2571 atom = mop & MO_ATOM_MASK; in do_st_leN()
[all …]
/openbmc/linux/arch/s390/kvm/
H A Dkvm-s390.c2846 static int mem_op_validate_common(struct kvm_s390_mem_op *mop, u64 supported_flags) in mem_op_validate_common() argument
2848 if (mop->flags & ~supported_flags || !mop->size) in mem_op_validate_common()
2850 if (mop->size > MEM_OP_MAX_SIZE) in mem_op_validate_common()
2852 if (mop->flags & KVM_S390_MEMOP_F_SKEY_PROTECTION) { in mem_op_validate_common()
2853 if (mop->key > 0xf) in mem_op_validate_common()
2856 mop->key = 0; in mem_op_validate_common()
2861 static int kvm_s390_vm_mem_op_abs(struct kvm *kvm, struct kvm_s390_mem_op *mop) in kvm_s390_vm_mem_op_abs() argument
2863 void __user *uaddr = (void __user *)mop->buf; in kvm_s390_vm_mem_op_abs()
2868 r = mem_op_validate_common(mop, KVM_S390_MEMOP_F_SKEY_PROTECTION | in kvm_s390_vm_mem_op_abs()
2873 if (!(mop->flags & KVM_S390_MEMOP_F_CHECK_ONLY)) { in kvm_s390_vm_mem_op_abs()
[all …]
/openbmc/qemu/target/arm/tcg/
H A Dtranslate-a64.c347 bool is_write, MemOp mop) in check_lse2_align() argument
359 tcg_gen_addi_i32(tmp, tmp, memop_size(mop)); in check_lse2_align()
377 static MemOp check_atomic_align(DisasContext *s, int rn, MemOp mop) in check_atomic_align() argument
379 MemOp size = mop & MO_SIZE; in check_atomic_align()
382 return mop; in check_atomic_align()
395 check_lse2_align(s, rn, 0, true, mop); in check_atomic_align()
397 mop |= MO_ALIGN; in check_atomic_align()
399 return finalize_memop(s, mop); in check_atomic_align()
404 bool is_write, MemOp mop) in check_ordered_align() argument
406 MemOp size = mop in check_ordered_align()
1026 do_fp_st(DisasContext * s,int srcidx,TCGv_i64 tcg_addr,MemOp mop) do_fp_st() argument
1049 do_fp_ld(DisasContext * s,int destidx,TCGv_i64 tcg_addr,MemOp mop) do_fp_ld() argument
1189 do_vec_st(DisasContext * s,int srcidx,int element,TCGv_i64 tcg_addr,MemOp mop) do_vec_st() argument
1199 do_vec_ld(DisasContext * s,int destidx,int element,TCGv_i64 tcg_addr,MemOp mop) do_vec_ld() argument
2432 MemOp mop = MO_64 | MO_ALIGN | MO_ATOM_IFALIGN; handle_sys() local
3091 op_addr_ldstpair_pre(DisasContext * s,arg_ldstpair * a,TCGv_i64 * clean_addr,TCGv_i64 * dirty_addr,uint64_t offset,bool is_store,MemOp mop) op_addr_ldstpair_pre() argument
3121 MemOp mop = finalize_memop(s, a->sz); trans_STP() local
3168 MemOp mop = finalize_memop(s, a->sz); trans_LDP() local
3222 MemOp mop; trans_STP_v() local
3242 MemOp mop; trans_LDP_v() local
3262 MemOp mop; trans_STGP() local
3316 op_addr_ldst_imm_pre(DisasContext * s,arg_ldst_imm * a,TCGv_i64 * clean_addr,TCGv_i64 * dirty_addr,uint64_t offset,bool is_store,MemOp mop) op_addr_ldst_imm_pre() argument
3350 MemOp mop = finalize_memop(s, a->sz + a->sign * MO_SIGN); trans_STR_i() local
3368 MemOp mop = finalize_memop(s, a->sz + a->sign * MO_SIGN); trans_LDR_i() local
3384 MemOp mop; trans_STR_v_i() local
3399 MemOp mop; trans_LDR_v_i() local
3506 MemOp mop = a->sz | sign; do_atomic_ld() local
3560 MemOp mop; TRANS_FEAT() local
3632 MemOp mop = a->sz | (a->sign ? MO_SIGN : 0); trans_LDAPR_i() local
3661 MemOp mop = a->sz; trans_STLR_i() local
3688 MemOp endian, align, mop; trans_LD_mult() local
3779 MemOp endian, align, mop; trans_ST_mult() local
3859 MemOp mop; trans_ST_single() local
3899 MemOp mop; trans_LD_single() local
3939 MemOp mop; trans_LD_single_repl() local
4166 MemOp mop = finalize_memop(s, MO_128 | MO_ALIGN); do_STG() local
9675 MemOp mop = size | (is_signed ? MO_SIGN : 0); handle_simd_intfp_conv() local
[all...]
H A Dtranslate-neon.c39 static void neon_load_element(TCGv_i32 var, int reg, int ele, MemOp mop) in neon_load_element() argument
41 long offset = neon_element_offset(reg, ele, mop & MO_SIZE); in neon_load_element()
43 switch (mop) { in neon_load_element()
58 static void neon_load_element64(TCGv_i64 var, int reg, int ele, MemOp mop) in neon_load_element64() argument
60 long offset = neon_element_offset(reg, ele, mop & MO_SIZE); in neon_load_element64()
62 switch (mop) { in neon_load_element64()
470 MemOp mop, align, endian; in trans_VLDST_multiple() local
542 mop = endian | size | align; in trans_VLDST_multiple()
550 gen_aa32_ld_internal_i64(s, tmp64, addr, mmu_idx, mop); in trans_VLDST_multiple()
554 gen_aa32_st_internal_i64(s, tmp64, addr, mmu_idx, mop); in trans_VLDST_multiple()
[all …]
H A Dtranslate.c4962 MemOp mop, int mem_idx) in op_load_rr() argument
4970 gen_aa32_ld_i32(s, tmp, addr, mem_idx, mop); in op_load_rr()
4971 disas_set_da_iss(s, mop, issinfo); in op_load_rr()
4983 MemOp mop, int mem_idx) in op_store_rr() argument
4999 gen_aa32_st_i32(s, tmp, addr, mem_idx, mop); in op_store_rr()
5000 disas_set_da_iss(s, mop, issinfo); in op_store_rr()
5166 MemOp mop, int mem_idx) in op_ldrd_ri()
5174 gen_aa32_ld_i32(s, tmp, addr, mem_idx, mop);
5175 disas_set_da_iss(s, mop, issinfo); in trans_LDRD_ri_a32()
5187 MemOp mop, in in trans_LDRD_ri_t32()
5109 op_load_ri(DisasContext * s,arg_ldst_ri * a,MemOp mop,int mem_idx) op_load_ri() argument
5130 op_store_ri(DisasContext * s,arg_ldst_ri * a,MemOp mop,int mem_idx) op_store_ri() argument
5292 op_strex(DisasContext * s,arg_STREX * a,MemOp mop,bool rel) op_strex() argument
5411 op_stl(DisasContext * s,arg_STL * a,MemOp mop) op_stl() argument
5448 op_ldrex(DisasContext * s,arg_LDREX * a,MemOp mop,bool acq) op_ldrex() argument
5565 op_lda(DisasContext * s,arg_LDA * a,MemOp mop) op_lda() argument
[all...]
/openbmc/qemu/tcg/
H A Dtcg-op-ldst.c469 static bool use_two_i64_for_i128(MemOp mop) in use_two_i64_for_i128() argument
480 switch (mop & MO_ATOM_MASK) { in use_two_i64_for_i128()
600 MemOp mop[2]; in tcg_gen_qemu_ld_i128_int() local
605 canonicalize_memop_i128_as_i64(mop, memop); in tcg_gen_qemu_ld_i128_int()
606 need_bswap = (mop[0] ^ memop) & MO_BSWAP; in tcg_gen_qemu_ld_i128_int()
627 gen_ldst_i64(opc, x, addr, make_memop_idx(mop[0], idx)); in tcg_gen_qemu_ld_i128_int()
643 gen_ldst_i64(opc, y, addr_p8, make_memop_idx(mop[1], idx)); in tcg_gen_qemu_ld_i128_int()
720 MemOp mop[2]; in tcg_gen_qemu_st_i128_int() local
724 canonicalize_memop_i128_as_i64(mop, memop); in tcg_gen_qemu_st_i128_int()
740 if ((mop[0] ^ memop) & MO_BSWAP) { in tcg_gen_qemu_st_i128_int()
[all …]
/openbmc/qemu/target/xtensa/
H A Dtranslate.c513 static MemOp gen_load_store_alignment(DisasContext *dc, MemOp mop, in gen_load_store_alignment() argument
516 if ((mop & MO_SIZE) == MO_8) { in gen_load_store_alignment()
517 return mop; in gen_load_store_alignment()
519 if ((mop & MO_AMASK) == MO_UNALN && in gen_load_store_alignment()
521 mop |= MO_ALIGN; in gen_load_store_alignment()
524 tcg_gen_andi_i32(addr, addr, ~0 << memop_alignment_bits(mop)); in gen_load_store_alignment()
526 return mop; in gen_load_store_alignment()
1624 MemOp mop; in translate_l32e() local
1627 mop = gen_load_store_alignment(dc, MO_TEUL, addr); in translate_l32e()
1628 tcg_gen_qemu_ld_tl(arg[0].out, addr, dc->ring, mop); in translate_l32e()
[all …]
/openbmc/qemu/target/riscv/insn_trans/
H A Dtrans_rva.c.inc33 static bool gen_lr(DisasContext *ctx, arg_atomic *a, MemOp mop)
42 tcg_gen_qemu_ld_tl(load_val, src1, ctx->mem_idx, mop);
58 static bool gen_sc(DisasContext *ctx, arg_atomic *a, MemOp mop)
75 ctx->mem_idx, mop);
H A Dtrans_rvzacas.c.inc65 static bool gen_cmpxchg64(DisasContext *ctx, arg_atomic *a, MemOp mop)
80 tcg_gen_atomic_cmpxchg_i64(dest, src1, dest, src2, ctx->mem_idx, mop);
/openbmc/qemu/target/sparc/
H A Dldst_helper.c1148 MemOp mop = get_memop(oi); in helper_ld_code() local
1152 switch (mop & MO_SIZE) { in helper_ld_code()
1155 if (mop & MO_SIGN) { in helper_ld_code()
1161 if ((mop & MO_BSWAP) != MO_TE) { in helper_ld_code()
1164 if (mop & MO_SIGN) { in helper_ld_code()
1170 if ((mop & MO_BSWAP) != MO_TE) { in helper_ld_code()
1173 if (mop & MO_SIGN) { in helper_ld_code()
1179 if ((mop & MO_BSWAP) != MO_TE) { in helper_ld_code()
H A Dtranslate.c1774 TCGv_i32 asi, TCGv_i32 mop) in gen_helper_ld_asi() argument
1780 TCGv_i32 asi, TCGv_i32 mop) in gen_helper_st_asi() argument
1872 MemOp mop = MO_128 | MO_ATOM_IFALIGN_PAIR; in gen_st_asi() local
1879 tcg_gen_qemu_ld_i128(tmp, saddr, da->mem_idx, mop); in gen_st_asi()
1880 tcg_gen_qemu_st_i128(tmp, daddr, da->mem_idx, mop); in gen_st_asi()
1883 tcg_gen_qemu_ld_i128(tmp, saddr, da->mem_idx, mop); in gen_st_asi()
1884 tcg_gen_qemu_st_i128(tmp, daddr, da->mem_idx, mop); in gen_st_asi()
2199 MemOp mop = (da->memop & MO_BSWAP) | MO_128 | MO_ALIGN_16; in gen_ldda_asi() local
2202 tcg_gen_qemu_ld_i128(t, addr, da->mem_idx, mop); in gen_ldda_asi()
2208 if ((mop & MO_BSWAP) == MO_TE) { in gen_ldda_asi()
[all …]
/openbmc/qemu/target/microblaze/
H A Dtranslate.c710 static bool do_load(DisasContext *dc, int rd, TCGv addr, MemOp mop, in do_load() argument
713 MemOp size = mop & MO_SIZE; in do_load()
723 mop ^= MO_BSWAP; in do_load()
740 mop |= MO_ALIGN; in do_load()
744 tcg_gen_qemu_ld_i32(reg_for_write(dc, rd), addr, mem_index, mop); in do_load()
860 static bool do_store(DisasContext *dc, int rd, TCGv addr, MemOp mop, in do_store() argument
863 MemOp size = mop & MO_SIZE; in do_store()
873 mop ^= MO_BSWAP; in do_store()
890 mop |= MO_ALIGN; in do_store()
894 tcg_gen_qemu_st_i32(reg_for_read(dc, rd), addr, mem_index, mop); in do_store()
/openbmc/qemu/target/riscv/
H A Dtranslate.c1090 MemOp mop) in gen_amo() argument
1094 MemOp size = mop & MO_SIZE; in gen_amo()
1097 mop |= MO_ATOM_WITHIN16; in gen_amo()
1099 mop |= MO_ALIGN; in gen_amo()
1104 func(dest, src1, src2, ctx->mem_idx, mop); in gen_amo()
1110 static bool gen_cmpxchg(DisasContext *ctx, arg_atomic *a, MemOp mop) in gen_cmpxchg() argument
1117 tcg_gen_atomic_cmpxchg_tl(dest, src1, dest, src2, ctx->mem_idx, mop); in gen_cmpxchg()
/openbmc/qemu/target/loongarch/tcg/
H A Dtranslate.c40 static inline int vec_reg_offset(int regno, int index, MemOp mop) in vec_reg_offset() argument
42 const uint8_t size = 1 << mop; in vec_reg_offset()
/openbmc/qemu/target/ppc/translate/
H A Dfixedpoint-impl.c.inc25 bool store, MemOp mop)
36 mop ^= ctx->default_tcg_memop_mask;
38 tcg_gen_qemu_st_tl(cpu_gpr[rt], ea, ctx->mem_idx, mop);
40 tcg_gen_qemu_ld_tl(cpu_gpr[rt], ea, ctx->mem_idx, mop);
49 MemOp mop)
51 return do_ldst(ctx, a->rt, a->ra, tcg_constant_tl(a->si), update, store, mop);
55 bool store, MemOp mop)
61 return do_ldst_D(ctx, &d, update, store, mop);
65 bool store, MemOp mop)
67 return do_ldst(ctx, a->rt, a->ra, cpu_gpr[a->rb], update, store, mop);
H A Dvsx-impl.c.inc1446 #define GEN_VSX_HELPER_VSX_MADD(name, op1, aop, mop, inval, type) \
2183 MemOp mop;
2188 mop = DEF_MEMOP(MO_128 | MO_ATOM_IFALIGN_PAIR);
2203 tcg_gen_qemu_st_i128(data, ea, ctx->mem_idx, mop);
2207 tcg_gen_qemu_st_i128(data, ea, ctx->mem_idx, mop);
2210 tcg_gen_qemu_ld_i128(data, ea, ctx->mem_idx, mop);
2214 tcg_gen_qemu_ld_i128(data, ea, ctx->mem_idx, mop);
2260 MemOp mop;
2269 mop = DEF_MEMOP(MO_UQ);
2276 tcg_gen_qemu_st_i64(xt, ea, ctx->mem_idx, mop);
[all...]
/openbmc/linux/Documentation/devicetree/bindings/pinctrl/
H A Dabilis,tb10x-iomux.txt30 - Parallel TS output port: mop
/openbmc/qemu/target/hppa/
H A Dtranslate.c1594 unsigned sp, int modify, MemOp mop) in do_load_32() argument
1604 tcg_gen_qemu_ld_i32(dest, addr, ctx->mmu_idx, mop | UNALIGN(ctx)); in do_load_32()
1612 unsigned sp, int modify, MemOp mop) in do_load_64() argument
1622 tcg_gen_qemu_ld_i64(dest, addr, ctx->mmu_idx, mop | UNALIGN(ctx)); in do_load_64()
1630 unsigned sp, int modify, MemOp mop) in do_store_32() argument
1640 tcg_gen_qemu_st_i32(src, addr, ctx->mmu_idx, mop | UNALIGN(ctx)); in do_store_32()
1648 unsigned sp, int modify, MemOp mop) in do_store_64() argument
1658 tcg_gen_qemu_st_i64(src, addr, ctx->mmu_idx, mop | UNALIGN(ctx)); in do_store_64()
1666 unsigned sp, int modify, MemOp mop) in do_load() argument
1679 do_load_64(ctx, dest, rb, rx, scale, disp, sp, modify, mop); in do_load()
[all …]
/openbmc/qemu/target/i386/tcg/
H A Dtranslate.c2279 MemOp mop = MO_128 | MO_LE | atom | (align ? MO_ALIGN_16 : 0); in gen_ldo_env_A0() local
2283 tcg_gen_qemu_ld_i128(t, s->A0, mem_index, mop); in gen_ldo_env_A0()
2291 MemOp mop = MO_128 | MO_LE | atom | (align ? MO_ALIGN_16 : 0); in gen_sto_env_A0() local
2296 tcg_gen_qemu_st_i128(t, s->A0, mem_index, mop); in gen_sto_env_A0()
2301 MemOp mop = MO_128 | MO_LE | MO_ATOM_IFALIGN_PAIR; in gen_ldy_env_A0() local
2306 tcg_gen_qemu_ld_i128(t0, s->A0, mem_index, mop | (align ? MO_ALIGN_32 : 0)); in gen_ldy_env_A0()
2308 tcg_gen_qemu_ld_i128(t1, s->tmp0, mem_index, mop); in gen_ldy_env_A0()
2316 MemOp mop = MO_128 | MO_LE | MO_ATOM_IFALIGN_PAIR; in gen_sty_env_A0() local
2321 tcg_gen_qemu_st_i128(t, s->A0, mem_index, mop | (align ? MO_ALIGN_32 : 0)); in gen_sty_env_A0()
2324 tcg_gen_qemu_st_i128(t, s->tmp0, mem_index, mop); in gen_sty_env_A0()

12