Lines Matching full:base

97     tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next);  in generate_exception()
99 ctx->base.is_jmp = DISAS_NORETURN; in generate_exception()
108 if (translator_use_goto_tb(&ctx->base, dest)) { in gen_goto_tb()
111 tcg_gen_exit_tb(ctx->base.tb, n); in gen_goto_tb()
123 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_init_disas_context()
125 ctx->page_start = ctx->base.pc_first & TARGET_PAGE_MASK; in loongarch_tr_init_disas_context()
126 ctx->plv = ctx->base.tb->flags & HW_FLAGS_PLV_MASK; in loongarch_tr_init_disas_context()
127 if (ctx->base.tb->flags & HW_FLAGS_CRMD_PG) { in loongarch_tr_init_disas_context()
134 bound = -(ctx->base.pc_first | TARGET_PAGE_MASK) / 4; in loongarch_tr_init_disas_context()
135 ctx->base.max_insns = MIN(ctx->base.max_insns, bound); in loongarch_tr_init_disas_context()
146 ctx->va32 = (ctx->base.tb->flags & HW_FLAGS_VA32) != 0; in loongarch_tr_init_disas_context()
160 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_insn_start()
162 tcg_gen_insn_start(ctx->base.pc_next); in loongarch_tr_insn_start()
237 static TCGv make_address_x(DisasContext *ctx, TCGv base, TCGv addend) in make_address_x() argument
245 tcg_gen_add_tl(temp, base, addend); in make_address_x()
246 base = temp; in make_address_x()
249 tcg_gen_ext32u_tl(temp, base); in make_address_x()
250 base = temp; in make_address_x()
252 return base; in make_address_x()
255 static TCGv make_address_i(DisasContext *ctx, TCGv base, target_long ofs) in make_address_i() argument
258 return make_address_x(ctx, base, addend); in make_address_i()
287 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_translate_insn()
289 ctx->opcode = translator_ldl(cpu_env(cs), &ctx->base, ctx->base.pc_next); in loongarch_tr_translate_insn()
294 ctx->base.pc_next, ctx->opcode); in loongarch_tr_translate_insn()
298 ctx->base.pc_next += 4; in loongarch_tr_translate_insn()
301 ctx->base.pc_next = (uint32_t)ctx->base.pc_next; in loongarch_tr_translate_insn()
307 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_tb_stop()
309 switch (ctx->base.is_jmp) { in loongarch_tr_tb_stop()
311 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); in loongarch_tr_tb_stop()
315 gen_goto_tb(ctx, 0, ctx->base.pc_next); in loongarch_tr_tb_stop()
320 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); in loongarch_tr_tb_stop()
344 &loongarch_tr_ops, &ctx.base); in loongarch_translate_code()