Lines Matching refs:TCGContext

65 static void tcg_target_init(TCGContext *s);
66 static void tcg_target_qemu_prologue(TCGContext *s);
112 static void tcg_out_tb_start(TCGContext *s);
113 static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg1,
115 static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg);
116 static void tcg_out_movi(TCGContext *s, TCGType type,
118 static void tcg_out_ext8s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg);
119 static void tcg_out_ext16s(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg);
120 static void tcg_out_ext8u(TCGContext *s, TCGReg ret, TCGReg arg);
121 static void tcg_out_ext16u(TCGContext *s, TCGReg ret, TCGReg arg);
122 static void tcg_out_ext32s(TCGContext *s, TCGReg ret, TCGReg arg);
123 static void tcg_out_ext32u(TCGContext *s, TCGReg ret, TCGReg arg);
124 static void tcg_out_exts_i32_i64(TCGContext *s, TCGReg ret, TCGReg arg);
125 static void tcg_out_extu_i32_i64(TCGContext *s, TCGReg ret, TCGReg arg);
126 static void tcg_out_extrl_i64_i32(TCGContext *s, TCGReg ret, TCGReg arg);
127 static void tcg_out_addi_ptr(TCGContext *s, TCGReg, TCGReg, tcg_target_long);
128 static bool tcg_out_xchg(TCGContext *s, TCGType type, TCGReg r1, TCGReg r2);
129 static void tcg_out_exit_tb(TCGContext *s, uintptr_t arg);
130 static void tcg_out_goto_tb(TCGContext *s, int which);
131 static void tcg_out_op(TCGContext *s, TCGOpcode opc,
135 static bool tcg_out_dup_vec(TCGContext *s, TCGType type, unsigned vece,
137 static bool tcg_out_dupm_vec(TCGContext *s, TCGType type, unsigned vece,
139 static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece,
141 static void tcg_out_vec_op(TCGContext *s, TCGOpcode opc,
146 static inline bool tcg_out_dup_vec(TCGContext *s, TCGType type, unsigned vece, in tcg_out_dup_vec()
151 static inline bool tcg_out_dupm_vec(TCGContext *s, TCGType type, unsigned vece, in tcg_out_dupm_vec()
156 static inline void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece, in tcg_out_dupi_vec()
161 static inline void tcg_out_vec_op(TCGContext *s, TCGOpcode opc, in tcg_out_vec_op()
169 static void tcg_out_st(TCGContext *s, TCGType type, TCGReg arg, TCGReg arg1,
171 static bool tcg_out_sti(TCGContext *s, TCGType type, TCGArg val,
173 static void tcg_out_call(TCGContext *s, const tcg_insn_unit *target,
179 static int tcg_out_ldst_finalize(TCGContext *s);
187 TCGReg (*ra_gen)(TCGContext *s, const TCGLabelQemuLdst *l, int arg_reg);
192 static void tcg_out_ld_helper_args(TCGContext *s, const TCGLabelQemuLdst *l,
195 static void tcg_out_ld_helper_ret(TCGContext *s, const TCGLabelQemuLdst *l,
198 static void tcg_out_st_helper_args(TCGContext *s, const TCGLabelQemuLdst *l,
230 static TCGAtomAlign atom_and_align_for_opc(TCGContext *s, MemOp opc,
238 TCGContext tcg_init_ctx;
239 __thread TCGContext *tcg_ctx;
241 TCGContext **tcg_ctxs;
256 static __attribute__((unused)) inline void tcg_out8(TCGContext *s, uint8_t v) in tcg_out8()
269 static __attribute__((unused)) inline void tcg_out16(TCGContext *s, uint16_t v) in tcg_out16()
292 static __attribute__((unused)) inline void tcg_out32(TCGContext *s, uint32_t v) in tcg_out32()
315 static __attribute__((unused)) inline void tcg_out64(TCGContext *s, uint64_t v) in tcg_out64()
339 static void tcg_out_reloc(TCGContext *s, tcg_insn_unit *code_ptr, int type, in tcg_out_reloc()
350 static void tcg_out_label(TCGContext *s, TCGLabel *l) in tcg_out_label()
359 TCGContext *s = tcg_ctx; in gen_new_label()
372 static bool tcg_resolve_relocs(TCGContext *s) in tcg_resolve_relocs()
389 static void set_jmp_reset_offset(TCGContext *s, int which) in set_jmp_reset_offset()
398 static void G_GNUC_UNUSED set_jmp_insn_offset(TCGContext *s, int which) in set_jmp_insn_offset()
407 static uintptr_t G_GNUC_UNUSED get_jmp_target_addr(TCGContext *s, int which) in get_jmp_target_addr()
417 tlb_mask_table_ofs(TCGContext *s, int which) in tlb_mask_table_ofs()
425 void tcg_raise_tb_overflow(TCGContext *s) in tcg_raise_tb_overflow()
458 static void tcg_out_movext(TCGContext *s, TCGType dst_type, TCGReg dst, in tcg_out_movext()
510 static void tcg_out_movext1_new_src(TCGContext *s, const TCGMovExtend *i, in tcg_out_movext1_new_src()
516 static void tcg_out_movext1(TCGContext *s, const TCGMovExtend *i) in tcg_out_movext1()
532 static void tcg_out_movext2(TCGContext *s, const TCGMovExtend *i1, in tcg_out_movext2()
573 static void tcg_out_movext3(TCGContext *s, const TCGMovExtend *i1, in tcg_out_movext3()
788 TCGContext *s = g_malloc(sizeof(*s)); in tcg_register_thread()
816 void *tcg_malloc_internal(TCGContext *s, int size) in tcg_malloc_internal()
857 void tcg_pool_reset(TCGContext *s) in tcg_pool_reset()
1296 static void process_op_defs(TCGContext *s);
1297 static TCGTemp *tcg_global_reg_new_internal(TCGContext *s, TCGType type,
1302 TCGContext *s = &tcg_init_ctx; in tcg_context_init()
1367 tcg_ctxs = g_new0(TCGContext *, max_cpus); in tcg_context_init()
1385 TranslationBlock *tcg_tb_alloc(TCGContext *s) in tcg_tb_alloc()
1407 TCGContext *s = tcg_ctx; in tcg_prologue_init()
1486 void tcg_func_start(TCGContext *s) in tcg_func_start()
1520 static TCGTemp *tcg_temp_alloc(TCGContext *s) in tcg_temp_alloc()
1530 static TCGTemp *tcg_global_alloc(TCGContext *s) in tcg_global_alloc()
1543 static TCGTemp *tcg_global_reg_new_internal(TCGContext *s, TCGType type, in tcg_global_reg_new_internal()
1561 void tcg_set_frame(TCGContext *s, TCGReg reg, intptr_t start, intptr_t size) in tcg_set_frame()
1572 TCGContext *s = tcg_ctx; in tcg_global_mem_new_internal()
1649 TCGContext *s = tcg_ctx; in tcg_temp_new_internal()
1788 TCGContext *s = tcg_ctx; in tcg_temp_free_internal()
1833 TCGContext *s = tcg_ctx; in tcg_constant_internal()
1925 uintptr_t o = (uintptr_t)v - offsetof(TCGContext, temps); in tcgv_i32_temp()
2388 static void tcg_reg_alloc_start(TCGContext *s) in tcg_reg_alloc_start()
2420 static char *tcg_get_arg_str_ptr(TCGContext *s, char *buf, int buf_size, in tcg_get_arg_str_ptr()
2460 static char *tcg_get_arg_str(TCGContext *s, char *buf, in tcg_get_arg_str()
2557 void tcg_dump_ops(TCGContext *s, FILE *f, bool have_prefs) in tcg_dump_ops()
2948 static void process_op_defs(TCGContext *s) in process_op_defs()
3169 void tcg_op_remove(TCGContext *s, TCGOp *op) in tcg_op_remove()
3193 TCGContext *s = tcg_ctx; in tcg_remove_ops_after()
3206 TCGContext *s = tcg_ctx; in tcg_op_alloc()
3247 TCGOp *tcg_op_insert_before(TCGContext *s, TCGOp *old_op, in tcg_op_insert_before()
3255 TCGOp *tcg_op_insert_after(TCGContext *s, TCGOp *old_op, in tcg_op_insert_after()
3290 reachable_code_pass(TCGContext *s) in reachable_code_pass()
3403 static void la_func_end(TCGContext *s, int ng, int nt) in la_func_end()
3419 static void la_bb_end(TCGContext *s, int ng, int nt) in la_bb_end()
3446 static void la_global_sync(TCGContext *s, int ng) in la_global_sync()
3465 static void la_bb_sync(TCGContext *s, int ng, int nt) in la_bb_sync()
3492 static void la_global_kill(TCGContext *s, int ng) in la_global_kill()
3503 static void la_cross_call(TCGContext *s, int nt) in la_cross_call()
3529 liveness_pass_0(TCGContext *s) in liveness_pass_0()
3597 liveness_pass_1(TCGContext *s) in liveness_pass_1()
3938 liveness_pass_2(TCGContext *s) in liveness_pass_2()
4125 static void temp_allocate_frame(TCGContext *s, TCGTemp *ts) in temp_allocate_frame()
4195 static void set_temp_val_reg(TCGContext *s, TCGTemp *ts, TCGReg reg) in set_temp_val_reg()
4212 static void set_temp_val_nonreg(TCGContext *s, TCGTemp *ts, TCGTempVal type) in set_temp_val_nonreg()
4223 static void temp_load(TCGContext *, TCGTemp *, TCGRegSet, TCGRegSet, TCGRegSet);
4227 static void temp_free_or_dead(TCGContext *s, TCGTemp *ts, int free_or_dead) in temp_free_or_dead()
4251 static inline void temp_dead(TCGContext *s, TCGTemp *ts) in temp_dead()
4260 static void temp_sync(TCGContext *s, TCGTemp *ts, TCGRegSet allocated_regs, in temp_sync()
4301 static void tcg_reg_free(TCGContext *s, TCGReg reg, TCGRegSet allocated_regs) in tcg_reg_free()
4319 static TCGReg tcg_reg_alloc(TCGContext *s, TCGRegSet required_regs, in tcg_reg_alloc()
4381 static TCGReg tcg_reg_alloc_pair(TCGContext *s, TCGRegSet required_regs, in tcg_reg_alloc_pair()
4429 static void temp_load(TCGContext *s, TCGTemp *ts, TCGRegSet desired_regs, in temp_load()
4478 static void temp_save(TCGContext *s, TCGTemp *ts, TCGRegSet allocated_regs) in temp_save()
4488 static void save_globals(TCGContext *s, TCGRegSet allocated_regs) in save_globals()
4500 static void sync_globals(TCGContext *s, TCGRegSet allocated_regs) in sync_globals()
4514 static void tcg_reg_alloc_bb_end(TCGContext *s, TCGRegSet allocated_regs) in tcg_reg_alloc_bb_end()
4547 static void tcg_reg_alloc_cbranch(TCGContext *s, TCGRegSet allocated_regs) in tcg_reg_alloc_cbranch()
4573 static void tcg_reg_alloc_do_movi(TCGContext *s, TCGTemp *ots, in tcg_reg_alloc_do_movi()
4594 static void tcg_reg_alloc_mov(TCGContext *s, const TCGOp *op) in tcg_reg_alloc_mov()
4694 static void tcg_reg_alloc_dup(TCGContext *s, const TCGOp *op) in tcg_reg_alloc_dup()
4802 static void tcg_reg_alloc_op(TCGContext *s, const TCGOp *op) in tcg_reg_alloc_op()
5202 static bool tcg_reg_alloc_dup2(TCGContext *s, const TCGOp *op) in tcg_reg_alloc_dup2()
5290 static void load_arg_reg(TCGContext *s, TCGReg reg, TCGTemp *ts, in load_arg_reg()
5315 static void load_arg_stk(TCGContext *s, unsigned arg_slot, TCGTemp *ts, in load_arg_stk()
5328 static void load_arg_normal(TCGContext *s, const TCGCallArgumentLoc *l, in load_arg_normal()
5340 static void load_arg_ref(TCGContext *s, unsigned arg_slot, TCGReg ref_base, in load_arg_ref()
5359 static void tcg_reg_alloc_call(TCGContext *s, TCGOp *op) in tcg_reg_alloc_call()
5505 static TCGAtomAlign atom_and_align_for_opc(TCGContext *s, MemOp opc, in atom_and_align_for_opc()
5591 static void tcg_out_helper_load_slots(TCGContext *s, in tcg_out_helper_load_slots()
5677 static void tcg_out_helper_load_imm(TCGContext *s, unsigned slot, in tcg_out_helper_load_imm()
5693 static void tcg_out_helper_load_common_args(TCGContext *s, in tcg_out_helper_load_common_args()
5817 static void tcg_out_ld_helper_args(TCGContext *s, const TCGLabelQemuLdst *ldst, in tcg_out_ld_helper_args()
5898 static void tcg_out_ld_helper_ret(TCGContext *s, const TCGLabelQemuLdst *ldst, in tcg_out_ld_helper_ret()
5984 static void tcg_out_st_helper_args(TCGContext *s, const TCGLabelQemuLdst *ldst, in tcg_out_st_helper_args()
6090 int tcg_gen_code(TCGContext *s, TranslationBlock *tb, uint64_t pc_start) in tcg_gen_code()