/qemu/tcg/ |
H A D | tcg-internal.h | 86 TCGTemp *tcg_temp_new_internal(TCGType type, TCGTempKind kind); 93 TCGTemp *tcg_constant_internal(TCGType type, int64_t val); 95 TCGOp *tcg_gen_op1(TCGOpcode, TCGType, TCGArg); 96 TCGOp *tcg_gen_op2(TCGOpcode, TCGType, TCGArg, TCGArg); 97 TCGOp *tcg_gen_op3(TCGOpcode, TCGType, TCGArg, TCGArg, TCGArg); 98 TCGOp *tcg_gen_op4(TCGOpcode, TCGType, TCGArg, TCGArg, TCGArg, TCGArg); 99 TCGOp *tcg_gen_op5(TCGOpcode, TCGType, TCGArg, TCGArg, TCGArg, TCGArg, TCGArg); 100 TCGOp *tcg_gen_op6(TCGOpcode, TCGType, TCGArg, TCGArg, 103 void vec_gen_2(TCGOpcode, TCGType, unsigned, TCGArg, TCGArg); 104 void vec_gen_3(TCGOpcode, TCGType, unsigned, TCGArg, TCGArg, TCGArg); [all …]
|
H A D | tcg-op-vec.c | 62 TCGType type, unsigned vece) in tcg_can_emit_vecop_list() 144 void vec_gen_2(TCGOpcode opc, TCGType type, unsigned vece, TCGArg r, TCGArg a) in vec_gen_2() 153 void vec_gen_3(TCGOpcode opc, TCGType type, unsigned vece, in vec_gen_3() 164 void vec_gen_4(TCGOpcode opc, TCGType type, unsigned vece, in vec_gen_4() 176 void vec_gen_6(TCGOpcode opc, TCGType type, unsigned vece, TCGArg r, in vec_gen_6() 194 TCGType type = rt->base_type; in vec_gen_op2() 207 TCGType type = rt->base_type; in vec_gen_op3() 232 TCGType type = rt->base_type; in tcg_gen_dup_i64_vec() 252 TCGType type = rt->base_type; in tcg_gen_dup_i32_vec() 263 TCGType type = rt->base_type; in tcg_gen_dup_mem_vec() [all …]
|
H A D | tcg.c | 103 TCGType type; /* result type of a load */ 119 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg1, 121 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg); 122 static void tcg_out_movi(TCGContext *s, TCGType type, 124 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg); 125 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg); 134 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2); 143 static bool tcg_out_dup_vec(TCGContext *s, TCGType type, unsigned vece, 145 static bool tcg_out_dupm_vec(TCGContext *s, TCGType type, unsigned vece, 147 static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece, [all …]
|
H A D | tcg-op-ldst.c | 92 static void gen_ldst1(TCGOpcode opc, TCGType type, TCGTemp *v, in gen_ldst1() 99 static void gen_ldst2(TCGOpcode opc, TCGType type, TCGTemp *vl, TCGTemp *vh, in gen_ldst2() 273 MemOp memop, TCGType addr_type) in tcg_gen_qemu_ld_i32_chk() 316 MemOp memop, TCGType addr_type) in tcg_gen_qemu_st_i32_chk() 379 MemOp memop, TCGType addr_type) in tcg_gen_qemu_ld_i64_chk() 430 MemOp memop, TCGType addr_type) in tcg_gen_qemu_st_i64_chk() 626 MemOp memop, TCGType addr_type) in tcg_gen_qemu_ld_i128_chk() 732 MemOp memop, TCGType addr_type) in tcg_gen_qemu_st_i128_chk() 853 TCGType addr_type) in tcg_gen_nonatomic_cmpxchg_i32_chk() 890 TCGType addr_type) in tcg_gen_atomic_cmpxchg_i32_chk() [all …]
|
H A D | tcg-op-gvec.c | 449 static TCGType choose_vector_type(const TCGOpcode *list, unsigned vece, in choose_vector_type() 486 static void do_dup_store(TCGType type, uint32_t dofs, uint32_t oprsz, in do_dup_store() 541 TCGType type; in do_dup() 1044 uint32_t oprsz, uint32_t tysz, TCGType type, in expand_2_vec() 1064 uint32_t oprsz, uint32_t tysz, TCGType type, in expand_2i_vec() 1082 uint32_t oprsz, uint32_t tysz, TCGType type, in expand_2s_vec() 1103 uint32_t tysz, TCGType type, bool load_dest, in expand_3_vec() 1127 TCGType type, int64_t c, in expand_3i_vec() 1153 uint32_t tysz, TCGType type, bool write_aofs, in expand_4_vec() 1180 uint32_t tysz, TCGType type, int64_t c, in expand_4i_vec() [all …]
|
H A D | optimize.c | 38 TCGType type; 60 TCGType type; 255 static void record_mem_copy(OptContext *ctx, TCGType type, in record_mem_copy() 306 static TCGTemp *find_mem_copy_for(OptContext *ctx, TCGType type, intptr_t s) in find_mem_copy_for() 320 TCGType type = ctx->type; in arg_new_constant() 415 static uint64_t do_constant_folding_2(TCGOpcode op, TCGType type, in do_constant_folding_2() 579 static uint64_t do_constant_folding(TCGOpcode op, TCGType type, in do_constant_folding() 686 static int do_constant_folding_cond(TCGType type, TCGArg x, in do_constant_folding_cond() 2903 TCGType type; in fold_tcg_ld_memcopy() 2957 TCGType type; in fold_tcg_st_memcopy()
|
/qemu/include/tcg/ |
H A D | tcg-op-common.h | 18 TCGv_vec tcg_constant_vec(TCGType type, unsigned vece, int64_t val); 25 TCGv_vec tcg_temp_new_vec(TCGType type); 320 void tcg_gen_qemu_ld_i32_chk(TCGv_i32, TCGTemp *, TCGArg, MemOp, TCGType); 321 void tcg_gen_qemu_st_i32_chk(TCGv_i32, TCGTemp *, TCGArg, MemOp, TCGType); 322 void tcg_gen_qemu_ld_i64_chk(TCGv_i64, TCGTemp *, TCGArg, MemOp, TCGType); 323 void tcg_gen_qemu_st_i64_chk(TCGv_i64, TCGTemp *, TCGArg, MemOp, TCGType); 324 void tcg_gen_qemu_ld_i128_chk(TCGv_i128, TCGTemp *, TCGArg, MemOp, TCGType); 325 void tcg_gen_qemu_st_i128_chk(TCGv_i128, TCGTemp *, TCGArg, MemOp, TCGType); 330 TCGArg, MemOp, TCGType); 332 TCGArg, MemOp, TCGType); [all …]
|
H A D | tcg.h | 137 typedef enum TCGType { enum 162 } TCGType; typedef 170 static inline int tcg_type_size(TCGType t) in tcg_type_size() 286 TCGType base_type:8; 287 TCGType type:8; 367 TCGType addr_type; /* TCG_TYPE_I32 or TCG_TYPE_I64 */ 424 TCGType riscv_cur_type; 790 bool tcg_op_supported(TCGOpcode op, TCGType type, unsigned flags); 796 bool tcg_op_deposit_valid(TCGType type, unsigned ofs, unsigned len); 978 int tcg_can_emit_vec_op(TCGOpcode, TCGType, unsigned); [all …]
|
/qemu/tcg/tci/ |
H A D | tcg-target.c.inc | 40 tcg_target_op_def(TCGOpcode op, TCGType type, unsigned flags) 318 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg val, TCGReg base, 329 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 335 static void tcg_out_movi(TCGContext *s, TCGType type, 362 static void tcg_out_extract(TCGContext *s, TCGType type, TCGReg rd, 373 static void tcg_out_sextract(TCGContext *s, TCGType type, TCGReg rd, 388 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 398 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 436 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 492 static void tgen_add(TCGContext *s, TCGType type, [all …]
|
/qemu/tcg/sparc64/ |
H A D | tcg-target.c.inc | 340 TCGType type, TCGCond cond, int vece) 383 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 427 static void tcg_out_movi_int(TCGContext *s, TCGType type, TCGReg ret, 497 static void tcg_out_movi(TCGContext *s, TCGType type, 504 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 509 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 550 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 580 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg ret, 586 static void tcg_out_st(TCGContext *s, TCGType type, TCGReg arg, 592 static bool tcg_out_sti(TCGContext *s, TCGType type, TCGArg val, [all …]
|
/qemu/tcg/aarch64/ |
H A D | tcg-target.c.inc | 28 /* We're going to re-use TCGType in setting of the SF bit, which controls 300 TCGType type, TCGCond cond, int vece) 682 static void tcg_out_insn_3201(TCGContext *s, AArch64Insn insn, TCGType ext, 726 static void tcg_out_insn_3401(TCGContext *s, AArch64Insn insn, TCGType ext, 741 static void tcg_out_insn_3402(TCGContext *s, AArch64Insn insn, TCGType ext, 750 static void tcg_out_insn_3403(TCGContext *s, AArch64Insn insn, TCGType ext, 759 static void tcg_out_insn_3405(TCGContext *s, AArch64Insn insn, TCGType ext, 773 TCGType sf, TCGReg rd, TCGReg rn, 783 TCGType ext, TCGReg rd, TCGReg rn, 793 static void tcg_out_insn_3502(TCGContext *s, AArch64Insn insn, TCGType ext, [all …]
|
/qemu/tcg/riscv/ |
H A D | tcg-target.c.inc | 386 TCGType type, TCGCond cond, int vece) 726 static void set_vtype(TCGContext *s, TCGType type, MemOp vsew) 739 static MemOp set_vtype_len(TCGContext *s, TCGType type) 747 static void set_vtype_len_sew(TCGContext *s, TCGType type, MemOp vsew) 758 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 783 static void tcg_out_movi(TCGContext *s, TCGType type, TCGReg rd, 849 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 886 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 896 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 988 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg arg, [all …]
|
H A D | tcg-target-has.h | 44 tcg_target_extract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_extract_valid() 61 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid()
|
/qemu/tcg/loongarch64/ |
H A D | tcg-target.c.inc | 193 TCGType type, TCGCond cond, int vece) 310 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 374 static void tcg_out_movi(TCGContext *s, TCGType type, TCGReg rd, 451 static void tcg_out_addi(TCGContext *s, TCGType type, TCGReg rd, 490 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 517 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 522 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 690 static void tgen_setcond(TCGContext *s, TCGType type, TCGCond cond, 696 static void tgen_setcondi(TCGContext *s, TCGType type, TCGCond cond, 708 static void tgen_negsetcond(TCGContext *s, TCGType type, TCGCond cond, [all …]
|
H A D | tcg-target-has.h | 48 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid()
|
/qemu/tcg/s390x/ |
H A D | tcg-target.c.inc | 567 TCGType type, TCGCond cond, int vece) 878 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg dst, TCGReg src) 930 static void tcg_out_movi(TCGContext *s, TCGType type, 1053 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg data, 1086 static void tcg_out_st(TCGContext *s, TCGType type, TCGReg data, 1119 static inline bool tcg_out_sti(TCGContext *s, TCGType type, TCGArg val, 1125 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 1146 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg dest, TCGReg src) 1156 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg dest, TCGReg src) 1205 static void tgen_andi(TCGContext *s, TCGType type, TCGReg dest, uint64_t val) [all …]
|
H A D | tcg-target-has.h | 65 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid()
|
/qemu/tcg/mips/ |
H A D | tcg-target.c.inc | 201 TCGType type, TCGCond cond, int vece) 515 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 564 static void tcg_out_movi_int(TCGContext *s, TCGType type, TCGReg ret, 638 static void tcg_out_movi(TCGContext *s, TCGType type, 645 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 656 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg rd, TCGReg rs) 690 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 735 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg arg, 745 static void tcg_out_st(TCGContext *s, TCGType type, TCGReg arg, 755 static bool tcg_out_sti(TCGContext *s, TCGType type, TCGArg val, [all …]
|
H A D | tcg-target-has.h | 56 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid()
|
/qemu/tcg/arm/ |
H A D | tcg-target.c.inc | 513 TCGType type, TCGCond cond, int vece) 926 static void tcg_out_ext8s(TCGContext *s, TCGType t, TCGReg rd, TCGReg rn) 937 static void tcg_out_ext16s(TCGContext *s, TCGType t, TCGReg rd, TCGReg rn) 974 static void tgen_deposit(TCGContext *s, TCGType type, TCGReg a0, TCGReg a1, 982 static void tgen_depositi(TCGContext *s, TCGType type, TCGReg a0, TCGReg a1, 995 static void tgen_extract(TCGContext *s, TCGType type, TCGReg rd, TCGReg rn, 1034 static void tgen_sextract(TCGContext *s, TCGType type, TCGReg rd, TCGReg rn, 1589 static void tgen_qemu_ld(TCGContext *s, TCGType type, TCGReg data, 1623 static void tgen_qemu_ld2(TCGContext *s, TCGType type, TCGReg datalo, 1714 static void tgen_qemu_st(TCGContext *s, TCGType type, TCGReg data, [all …]
|
H A D | tcg-target-has.h | 56 tcg_target_extract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_extract_valid()
|
/qemu/tcg/i386/ |
H A D | tcg-target.c.inc | 212 TCGType type, TCGCond cond, int vece) 763 int r, int v, int rm, TCGType type) 772 int rm, int aaa, bool z, TCGType type) 919 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 970 static bool tcg_out_dup_vec(TCGContext *s, TCGType type, unsigned vece, 1001 static bool tcg_out_dupm_vec(TCGContext *s, TCGType type, unsigned vece, 1033 static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece, 1070 static void tcg_out_movi_vec(TCGContext *s, TCGType type, 1091 static void tcg_out_movi_int(TCGContext *s, TCGType type, 1124 static void tcg_out_movi(TCGContext *s, TCGType type, [all …]
|
H A D | tcg-target-has.h | 77 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid() 97 tcg_target_extract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_extract_valid()
|
/qemu/tcg/ppc/ |
H A D | tcg-target.c.inc | 290 TCGType type, TCGCond cond, int vece) 854 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) 927 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg dst, TCGReg src) 937 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg dst, TCGReg src) 1033 static void tcg_out_movi_int(TCGContext *s, TCGType type, TCGReg ret, 1166 static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece, 1257 static void tcg_out_movi(TCGContext *s, TCGType type, TCGReg ret, 1272 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2) 1522 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg ret, 1575 static void tcg_out_st(TCGContext *s, TCGType type, TCGReg arg, [all …]
|
H A D | tcg-target-has.h | 63 tcg_target_sextract_valid(TCGType type, unsigned ofs, unsigned len) in tcg_target_sextract_valid()
|