Home
last modified time | relevance | path

Searched refs:pc_next (Results 1 – 25 of 40) sorted by relevance

12

/openbmc/qemu/target/loongarch/tcg/
H A Dtranslate.c95 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); in generate_exception()
160 tcg_gen_insn_start(ctx->base.pc_next); in loongarch_tr_insn_start()
287 ctx->opcode = translator_ldl(cpu_env(cs), &ctx->base, ctx->base.pc_next); in loongarch_tr_translate_insn()
292 ctx->base.pc_next, ctx->opcode); in loongarch_tr_translate_insn()
296 ctx->base.pc_next += 4; in loongarch_tr_translate_insn()
299 ctx->base.pc_next = (uint32_t)ctx->base.pc_next; in loongarch_tr_translate_insn()
309 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); in loongarch_tr_tb_stop()
313 gen_goto_tb(ctx, 0, ctx->base.pc_next); in loongarch_tr_tb_stop()
318 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next); in loongarch_tr_tb_stop()
/openbmc/qemu/target/loongarch/tcg/insn_trans/
H A Dtrans_branch.c.inc8 gen_goto_tb(ctx, 0, ctx->base.pc_next + a->offs);
15 tcg_gen_movi_tl(cpu_gpr[1], make_address_pc(ctx, ctx->base.pc_next + 4));
16 gen_goto_tb(ctx, 0, ctx->base.pc_next + a->offs);
28 tcg_gen_movi_tl(dest, make_address_pc(ctx, ctx->base.pc_next + 4));
40 gen_goto_tb(ctx, 1, ctx->base.pc_next + 4);
42 gen_goto_tb(ctx, 0, ctx->base.pc_next + offs);
H A Dtrans_privileged.c.inc327 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next + 4);
493 tcg_gen_movi_tl(cpu_pc, ctx->base.pc_next + 4);
H A Dtrans_atomic.c.inc60 ctx->base.pc_next - 4);
/openbmc/qemu/target/sh4/
H A Dtranslate.c210 tcg_gen_movi_i32(cpu_pc, ctx->base.pc_next); in gen_save_cpu_state()
293 gen_goto_tb(ctx, 1, ctx->base.pc_next + 2); in gen_conditional_jump()
322 gen_goto_tb(ctx, 1, ctx->base.pc_next + 2); in gen_delayed_conditional_jump()
486 tcg_gen_movi_i32(cpu_pc, ctx->base.pc_next + 2); in _decode_opc()
527 TCGv addr = tcg_constant_i32(ctx->base.pc_next + 4 + B7_0 * 2); in _decode_opc()
535 TCGv addr = tcg_constant_i32((ctx->base.pc_next + 4 + B7_0 * 4) & ~3); in _decode_opc()
545 ctx->delayed_pc = ctx->base.pc_next + 4 + B11_0s * 2; in _decode_opc()
550 tcg_gen_movi_i32(cpu_pr, ctx->base.pc_next + 4); in _decode_opc()
551 ctx->delayed_pc = ctx->base.pc_next + 4 + B11_0s * 2; in _decode_opc()
1154 gen_conditional_jump(ctx, ctx->base.pc_next + 4 + B7_0s * 2, false); in _decode_opc()
[all …]
/openbmc/qemu/target/m68k/
H A Dtranslate.c295 gen_exception(s, s->base.pc_next, EXCP_ADDRESS); in gen_addr_fault()
960 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_load_fp()
975 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_load_fp()
1007 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_store_fp()
1022 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_store_fp()
1141 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_ea_mode_fp()
1154 gen_exception(s, s->base.pc_next, EXCP_FP_UNIMP); in gen_ea_mode_fp()
1475 gen_jmp_tb(s, 1, base + offset, s->base.pc_next); in DISAS_INSN()
1477 gen_jmp_tb(s, 0, s->pc, s->base.pc_next); in DISAS_INSN()
1482 gen_exception(s, s->base.pc_next, EXCP_LINEA); in DISAS_INSN()
[all …]
/openbmc/qemu/target/riscv/
H A Dtranslate.c225 target_ulong dest = ctx->base.pc_next + diff; in gen_pc_plus_diff()
244 ctx->pc_save = ctx->base.pc_next + diff; in gen_update_pc()
293 target_ulong dest = ctx->base.pc_next + diff; in gen_goto_tb()
1204 ctx->base.pc_next + 2)); in decode_opc()
1267 target_ulong pc_next = ctx->base.pc_next; in riscv_tr_insn_start() local
1270 pc_next &= ~TARGET_PAGE_MASK; in riscv_tr_insn_start()
1273 tcg_gen_insn_start(pc_next, 0, 0); in riscv_tr_insn_start()
1281 uint16_t opcode16 = translator_lduw(env, &ctx->base, ctx->base.pc_next); in riscv_tr_translate_insn()
1285 ctx->base.pc_next += ctx->cur_insn_len; in riscv_tr_translate_insn()
1307 if (ctx->itrigger || !is_same_page(&ctx->base, ctx->base.pc_next)) { in riscv_tr_translate_insn()
[all …]
/openbmc/qemu/target/microblaze/
H A Dtranslate.c109 tcg_gen_movi_i32(cpu_pc, dc->base.pc_next); in gen_raise_exception_sync()
170 insn_type, (uint32_t)dc->base.pc_next); in invalid_delay_slot()
1060 tcg_gen_movi_i32(cpu_R[link], dc->base.pc_next); in do_branch()
1064 add_pc = abs ? 0 : dc->base.pc_next; in do_branch()
1109 tcg_gen_addi_i32(cpu_btarget, cpu_R[dest_rb], dc->base.pc_next); in DO_BR()
1111 dc->jmp_dest = dc->base.pc_next + dest_imm; in DO_BR()
1117 next = tcg_constant_i32(dc->base.pc_next + (delay + 1) * 4); in DO_BR()
1153 tcg_gen_movi_i32(cpu_R[arg->rd], dc->base.pc_next); in DO_BCC()
1175 tcg_gen_movi_i32(cpu_R[arg->rd], dc->base.pc_next); in trans_brki()
1236 tcg_gen_movi_i32(cpu_pc, dc->base.pc_next + 4); in trans_mbar()
[all …]
/openbmc/qemu/target/hexagon/
H A Dtranslate.c223 ctx->base.pc_next + nwords * sizeof(uint32_t)); in read_packet_words()
232 max_words = -(ctx->base.pc_next | TARGET_PAGE_MASK) / sizeof(uint32_t); in read_packet_words()
239 ctx->base.pc_next); in read_packet_words()
427 target_ulong next_PC = ctx->base.pc_next + pkt->encod_pkt_size_in_bytes; in gen_start_packet()
977 pkt.pc = ctx->base.pc_next; in decode_and_translate_packet()
985 ctx->base.pc_next += pkt.encod_pkt_size_in_bytes; in decode_and_translate_packet()
1015 tcg_gen_insn_start(ctx->base.pc_next); in hexagon_tr_insn_start()
1026 ctx->base.pc_next + nwords * sizeof(uint32_t)); in pkt_crosses_page()
1029 uint32_t next_ptr = ctx->base.pc_next + nwords * sizeof(uint32_t); in pkt_crosses_page()
1044 if (ctx->base.pc_next - page_start >= TARGET_PAGE_SIZE || in hexagon_tr_translate_packet()
[all …]
/openbmc/qemu/target/openrisc/
H A Dtranslate.c141 tcg_gen_movi_tl(cpu_pc, dc->base.pc_next); in gen_illegal_exception()
583 target_ulong tmp_pc = dc->base.pc_next + a->n * 4; in trans_l_j()
593 target_ulong tmp_pc = dc->base.pc_next + a->n * 4; in trans_l_jal()
594 target_ulong ret_pc = dc->base.pc_next + 8; in trans_l_jal()
608 target_ulong tmp_pc = dc->base.pc_next + a->n * 4; in do_bf()
609 TCGv t_next = tcg_constant_tl(dc->base.pc_next + 8); in do_bf()
638 tcg_gen_movi_tl(cpu_regs[9], dc->base.pc_next + 8); in trans_l_jalr()
767 (dc->base.pc_next & TARGET_PAGE_MASK) + in trans_l_adrp()
831 tcg_gen_movi_tl(cpu_pc, dc->base.pc_next + 4); in trans_l_mfspr()
857 tcg_gen_movi_tl(cpu_pc, dc->base.pc_next + 4); in trans_l_mtspr()
[all …]
/openbmc/qemu/target/rx/
H A Dtranslate.c80 uint8_t b = translator_ldub(ctx->env, &ctx->base, ctx->base.pc_next++); in decode_load_bytes()
91 addr = ctx->base.pc_next; in li()
95 ctx->base.pc_next += 1; in li()
98 ctx->base.pc_next += 2; in li()
101 ctx->base.pc_next += 3; in li()
107 ctx->base.pc_next += 4; in li()
199 dsp = translator_ldub(ctx->env, &ctx->base, ctx->base.pc_next) << size; in rx_index_addr()
201 ctx->base.pc_next += 1; in rx_index_addr()
204 dsp = translator_lduw(ctx->env, &ctx->base, ctx->base.pc_next) << size; in rx_index_addr()
206 ctx->base.pc_next += 2; in rx_index_addr()
[all …]
/openbmc/qemu/target/mips/tcg/
H A Docteon_translate.c22 TARGET_FMT_lx "\n", ctx->base.pc_next); in trans_BBIT()
39 ctx->btarget = ctx->base.pc_next + 4 + a->offset * 4; in trans_BBIT()
H A Dnanomips_translate.c.inc1128 btgt = ctx->base.pc_next + insn_bytes + offset;
1136 btgt = ctx->base.pc_next + insn_bytes + offset;
1141 btgt = ctx->base.pc_next + insn_bytes + offset;
1172 ctx->base.pc_next + insn_bytes);
1176 tcg_gen_movi_tl(cpu_gpr[31], ctx->base.pc_next + 8);
1178 ctx->base.pc_next += 4;
1186 ctx->base.pc_next + insn_bytes);
1206 ctx->base.pc_next + insn_bytes);
2293 ctx->btarget = addr_add(ctx, ctx->base.pc_next + 4, offset);
2381 gen_goto_tb(ctx, 0, ctx->base.pc_next + 4);
[all …]
H A Dtranslate.c1280 if (do_save_pc && ctx->base.pc_next != ctx->saved_pc) { in save_cpu_state()
1281 gen_save_pc(ctx->base.pc_next); in save_cpu_state()
1282 ctx->saved_pc = ctx->base.pc_next; in save_cpu_state()
1961 target_ulong pc = ctx->base.pc_next; in pc_relative_pc()
4333 if (ctx->base.pc_next != ctx->saved_pc) { in gen_trap()
4334 gen_save_pc(ctx->base.pc_next); in gen_trap()
4371 VADDR_PRIx "\n", ctx->base.pc_next); in gen_compute_branch()
4389 btgt = ctx->base.pc_next + insn_bytes + offset; in gen_compute_branch()
4408 btgt = ctx->base.pc_next + insn_bytes + offset; in gen_compute_branch()
4418 btgt = ctx->base.pc_next + insn_bytes + offset; in gen_compute_branch()
[all …]
H A Dtranslate.h207 ctx->base.pc_next, ctx->opcode, op, \
H A Dmsa_translate.c236 ctx->btarget = ctx->base.pc_next + (sa << 2) + 4; in gen_msa_BxZ_V()
267 ctx->btarget = ctx->base.pc_next + (sa << 2) + 4; in gen_msa_BxZ()
/openbmc/qemu/target/i386/tcg/
H A Dtranslate.c548 tcg_gen_addi_tl(cpu_eip, cpu_eip, s->base.pc_next - s->pc_save); in gen_update_eip_cur()
550 tcg_gen_movi_tl(cpu_eip, s->base.pc_next); in gen_update_eip_cur()
552 tcg_gen_movi_tl(cpu_eip, (uint32_t)(s->base.pc_next - s->cs_base)); in gen_update_eip_cur()
554 s->pc_save = s->base.pc_next; in gen_update_eip_cur()
559 return s->pc - s->base.pc_next; in cur_insn_len()
610 tcg_gen_addi_tl(ret, cpu_eip, s->base.pc_next - s->pc_save); in eip_cur_tl()
613 return tcg_constant_tl(s->base.pc_next); in eip_cur_tl()
615 return tcg_constant_tl((uint32_t)(s->base.pc_next - s->cs_base)); in eip_cur_tl()
2082 target_ulong pc = s->base.pc_next, end = s->pc; in gen_unknown_opcode()
3632 dc->pc_save = dc->base.pc_next; in i386_tr_init_disas_context()
[all …]
/openbmc/qemu/accel/tcg/
H A Dplugin-gen.c435 pc = db->pc_next; in plugin_gen_insn_start()
446 pinsn->len = db->fake_insn ? db->record_len : db->pc_next - pinsn->vaddr; in plugin_gen_insn_end()
H A Dtranslator.c128 db->pc_next = pc; in translator_loop()
217 tb->size = db->pc_next - db->pc_first; in translator_loop()
/openbmc/qemu/include/exec/
H A Dtranslator.h84 vaddr pc_next; member
/openbmc/qemu/target/ppc/
H A Dtranslate.c1967 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_pause()
3349 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_wait()
3395 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_doze()
3411 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_nap()
3427 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_stop()
3443 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_sleep()
3459 gen_exception_nip(ctx, EXCP_HLT, ctx->base.pc_next); in gen_rvwinkle()
3669 gen_setlr(ctx, ctx->base.pc_next); in gen_b()
3707 gen_setlr(ctx, ctx->base.pc_next); in gen_bcond()
3797 gen_goto_tb(ctx, 1, ctx->base.pc_next); in gen_bcond()
[all …]
/openbmc/qemu/target/riscv/insn_trans/
H A Dtrans_privileged.c.inc30 target_ulong ebreak_addr = ctx->base.pc_next;
/openbmc/qemu/target/arm/tcg/
H A Dtranslate.c7508 uint16_t insn = arm_lduw_code(env, &s->base, s->base.pc_next, s->sctlr_b); in insn_crosses_page()
7510 return !thumb_insn_is_16bit(s, s->base.pc_next, insn); in insn_crosses_page()
7679 target_ulong pc_arg = dc->base.pc_next; in arm_tr_insn_start()
7697 if (dc->base.pc_next >= 0xffff0000) { in arm_check_kernelpage()
7745 uint32_t pc = dc->base.pc_next; in arm_tr_translate_insn()
7750 dc->base.pc_next = pc + 4; in arm_tr_translate_insn()
7764 dc->base.pc_next = QEMU_ALIGN_UP(pc, 4); in arm_tr_translate_insn()
7769 dc->base.pc_next = pc + 4; in arm_tr_translate_insn()
7776 dc->base.pc_next = pc + 4; in arm_tr_translate_insn()
7835 uint32_t pc = dc->base.pc_next; in thumb_tr_translate_insn()
[all …]
/openbmc/qemu/target/alpha/
H A Dtranslate.c259 uint64_t addr = ctx->base.pc_next + disp; in gen_pc_disp()
442 if (translator_use_goto_tb(&ctx->base, ctx->base.pc_next + disp)) { in gen_goto_tb()
2907 tcg_gen_insn_start(dcbase->pc_next & ~TARGET_PAGE_MASK); in alpha_tr_insn_start()
2909 tcg_gen_insn_start(dcbase->pc_next); in alpha_tr_insn_start()
2917 ctx->base.pc_next); in alpha_tr_translate_insn()
2919 ctx->base.pc_next += 4; in alpha_tr_translate_insn()
/openbmc/qemu/target/xtensa/
H A Dtranslate.c400 (callinc << 30) | (dc->base.pc_next & 0x3fffffff)); in gen_callw_slot()
406 if (dc->base.pc_next == dc->lend) { in gen_check_loop_end()
412 gen_jumpi(dc, dc->base.pc_next - dc->lbeg_off, slot); in gen_check_loop_end()
417 gen_jumpi(dc, dc->base.pc_next, -1); in gen_check_loop_end()
426 gen_jumpi(dc, dc->base.pc_next, slot); in gen_jumpi_check_loop_end()
859 dc->base.pc_next = dc->pc + 1; in disas_xtensa_insn()
863 dc->base.pc_next = dc->pc + len; in disas_xtensa_insn()
1115 dc->pc = dc->base.pc_next; in disas_xtensa_insn()
1161 tcg_gen_insn_start(dcbase->pc_next); in xtensa_tr_insn_start()
1175 dc->base.pc_next = dc->pc + 1; in xtensa_tr_translate_insn()
[all …]

12