/openbmc/qemu/target/loongarch/tcg/ |
H A D | translate.c | 95 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 D | trans_branch.c.inc | 8 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 D | trans_privileged.c.inc | 327 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 D | trans_atomic.c.inc | 60 ctx->base.pc_next - 4);
|
/openbmc/qemu/target/sh4/ |
H A D | translate.c | 210 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 D | translate.c | 295 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 D | translate.c | 225 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 D | translate.c | 109 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 D | translate.c | 223 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 D | translate.c | 141 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 D | translate.c | 80 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 D | octeon_translate.c | 22 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 D | nanomips_translate.c.inc | 1128 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 D | translate.c | 1280 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 D | translate.h | 207 ctx->base.pc_next, ctx->opcode, op, \
|
H A D | msa_translate.c | 236 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 D | translate.c | 548 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 D | plugin-gen.c | 435 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 D | translator.c | 128 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 D | translator.h | 84 vaddr pc_next; member
|
/openbmc/qemu/target/ppc/ |
H A D | translate.c | 1967 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 D | trans_privileged.c.inc | 30 target_ulong ebreak_addr = ctx->base.pc_next;
|
/openbmc/qemu/target/arm/tcg/ |
H A D | translate.c | 7508 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 D | translate.c | 259 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 D | translate.c | 400 (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 …]
|