| /openbmc/qemu/target/ppc/ |
| H A D | spr_common.h | 41 typedef void spr_callback(DisasContext *, int, int); 81 void spr_noaccess(DisasContext *ctx, int gprn, int sprn); 82 void spr_read_generic(DisasContext *ctx, int gprn, int sprn); 83 void spr_write_generic(DisasContext *ctx, int sprn, int gprn); 84 void spr_write_generic32(DisasContext *ctx, int sprn, int gprn); 85 void spr_core_write_generic(DisasContext *ctx, int sprn, int gprn); 86 void spr_core_write_generic32(DisasContext *ctx, int sprn, int gprn); 87 void spr_core_lpar_write_generic(DisasContext *ctx, int sprn, int gprn); 88 void spr_write_MMCR0(DisasContext *ctx, int sprn, int gprn); 89 void spr_write_MMCR1(DisasContext *ctx, int sprn, int gprn); [all …]
|
| H A D | translate.c | 169 struct DisasContext { struct 213 static inline bool need_byteswap(const DisasContext *ctx) in need_byteswap() argument 239 void (*handler)(DisasContext *ctx); 242 static inline bool gen_serialize(DisasContext *ctx) in gen_serialize() 255 static inline bool gen_serialize_core(DisasContext *ctx) in gen_serialize_core() 264 static inline bool gen_serialize_core_lpar(DisasContext *ctx) in gen_serialize_core_lpar() 286 static inline void gen_set_access_type(DisasContext *ctx, int access_type) in gen_set_access_type() 294 static inline void gen_update_nip(DisasContext *ctx, target_ulong nip) in gen_update_nip() 302 static void gen_exception_err_nip(DisasContext *ctx, uint32_t excp, in gen_exception_err_nip() 314 static inline void gen_exception_err(DisasContext *ctx, uint32_t excp, in gen_exception_err() [all …]
|
| H A D | power8-pmu-regs.c.inc | 22 static bool spr_groupA_read_allowed(DisasContext *ctx) 41 static bool spr_groupA_write_allowed(DisasContext *ctx) 81 void spr_read_MMCR0_ureg(DisasContext *ctx, int gprn, int sprn) 101 static void write_MMCR0_common(DisasContext *ctx, TCGv val) 118 void spr_write_MMCR0_ureg(DisasContext *ctx, int sprn, int gprn) 136 void spr_read_MMCR2_ureg(DisasContext *ctx, int gprn, int sprn) 161 void spr_write_MMCR2_ureg(DisasContext *ctx, int sprn, int gprn) 178 void spr_write_MMCRA(DisasContext *ctx, int sprn, int gprn) 183 void spr_read_PMC(DisasContext *ctx, int gprn, int sprn) 191 void spr_read_PMC14_ureg(DisasContext *ctx, int gprn, int sprn) [all …]
|
| /openbmc/qemu/target/rx/ |
| H A D | disas.c | 24 typedef struct DisasContext { struct 30 } DisasContext; argument 33 static uint32_t decode_load_bytes(DisasContext *ctx, uint32_t insn, in decode_load_bytes() 51 static int32_t li(DisasContext *ctx, int sz) in li() 86 static int bdsp_s(DisasContext *ctx, int d) in bdsp_s() 105 static void dump_bytes(DisasContext *ctx) in dump_bytes() 140 static void rx_index_addr(DisasContext *ctx, char out[8], int ld, int mi) in rx_index_addr() 172 static void prt_ldmi(DisasContext *ctx, const char *insn, in prt_ldmi() 186 static void prt_ir(DisasContext *ctx, const char *insn, int imm, int rd) in prt_ir() 196 static bool trans_MOV_rm(DisasContext *ctx, arg_MOV_rm *a) in trans_MOV_rm() [all …]
|
| H A D | translate.c | 35 typedef struct DisasContext { struct 40 } DisasContext; argument 76 static uint32_t decode_load_bytes(DisasContext *ctx, uint32_t insn, in decode_load_bytes() 86 static uint32_t li(DisasContext *ctx, int sz) in li() 115 static int bdsp_s(DisasContext *ctx, int d) in bdsp_s() 150 static void gen_goto_tb(DisasContext *dc, int n, target_ulong dest) in gen_goto_tb() 182 static inline void rx_gen_regindex(DisasContext *ctx, TCGv mem, in rx_gen_regindex() 190 static inline TCGv rx_index_addr(DisasContext *ctx, TCGv mem, in rx_index_addr() 221 static inline TCGv rx_load_source(DisasContext *ctx, TCGv mem, in rx_load_source() 237 static int is_privileged(DisasContext *ctx, int is_exception) in is_privileged() [all …]
|
| /openbmc/qemu/target/mips/tcg/ |
| H A D | translate.h | 19 typedef struct DisasContext { struct 55 } DisasContext; argument 137 void generate_exception(DisasContext *ctx, int excp); 138 void generate_exception_err(DisasContext *ctx, int excp, int err); 139 void generate_exception_end(DisasContext *ctx, int excp); 140 void generate_exception_break(DisasContext *ctx, int code); 141 void gen_reserved_instruction(DisasContext *ctx); 143 void check_insn(DisasContext *ctx, uint64_t flags); 144 void check_mips_64(DisasContext *ctx); 150 bool check_cp0_enabled(DisasContext *ctx); [all …]
|
| H A D | tx79_translate.c | 33 bool decode_ext_tx79(DisasContext *ctx, uint32_t insn) in decode_ext_tx79() 65 static bool trans_MFHI1(DisasContext *ctx, arg_r *a) in trans_MFHI1() 72 static bool trans_MFLO1(DisasContext *ctx, arg_r *a) in trans_MFLO1() 79 static bool trans_MTHI1(DisasContext *ctx, arg_r *a) in trans_MTHI1() 86 static bool trans_MTLO1(DisasContext *ctx, arg_r *a) in trans_MTLO1() 117 static bool trans_parallel_arith(DisasContext *ctx, arg_r *a, in trans_parallel_arith() 143 static bool trans_PSUBB(DisasContext *ctx, arg_r *a) in trans_PSUBB() 149 static bool trans_PSUBH(DisasContext *ctx, arg_r *a) in trans_PSUBH() 155 static bool trans_PSUBW(DisasContext *ctx, arg_r *a) in trans_PSUBW() 186 static bool trans_PAND(DisasContext *ctx, arg_r *a) in trans_PAND() [all …]
|
| H A D | loong_translate.c | 28 static bool gen_lext_DIV_G(DisasContext *s, int rd, int rs, int rt, in gen_lext_DIV_G() 72 static bool trans_DIV_G(DisasContext *s, arg_muldiv *a) in trans_DIV_G() 77 static bool trans_DDIV_G(DisasContext *s, arg_muldiv *a) in trans_DDIV_G() 82 static bool gen_lext_DIVU_G(DisasContext *s, int rd, int rs, int rt, in gen_lext_DIVU_G() 119 static bool trans_DIVU_G(DisasContext *s, arg_muldiv *a) in trans_DIVU_G() 124 static bool trans_DDIVU_G(DisasContext *s, arg_muldiv *a) in trans_DDIVU_G() 129 static bool gen_lext_MOD_G(DisasContext *s, int rd, int rs, int rt, in gen_lext_MOD_G() 169 static bool trans_MOD_G(DisasContext *s, arg_muldiv *a) in trans_MOD_G() 174 static bool trans_DMOD_G(DisasContext *s, arg_muldiv *a) in trans_DMOD_G() 179 static bool gen_lext_MODU_G(DisasContext *s, int rd, int rs, int rt, in gen_lext_MODU_G() [all …]
|
| /openbmc/qemu/target/arm/tcg/ |
| H A D | translate-a32.h | 24 bool disas_m_nocp(DisasContext *dc, uint32_t insn); 25 bool disas_mve(DisasContext *dc, uint32_t insn); 26 bool disas_vfp(DisasContext *s, uint32_t insn); 27 bool disas_vfp_uncond(DisasContext *s, uint32_t insn); 28 bool disas_neon_dp(DisasContext *s, uint32_t insn); 29 bool disas_neon_ls(DisasContext *s, uint32_t insn); 30 bool disas_neon_shared(DisasContext *s, uint32_t insn); 32 void load_reg_var(DisasContext *s, TCGv_i32 var, int reg); 33 void arm_gen_condlabel(DisasContext *s); 34 bool vfp_access_check(DisasContext *s); [all …]
|
| H A D | translate-a64.h | 21 TCGv_i64 cpu_reg(DisasContext *s, int reg); 22 TCGv_i64 cpu_reg_sp(DisasContext *s, int reg); 23 TCGv_i64 read_cpu_reg(DisasContext *s, int reg, int sf); 24 TCGv_i64 read_cpu_reg_sp(DisasContext *s, int reg, int sf); 25 void write_fp_dreg(DisasContext *s, int reg, TCGv_i64 v); 28 bool sve_access_check(DisasContext *s); 29 bool sme_enabled_check(DisasContext *s); 30 bool sme_enabled_check_with_svcr(DisasContext *s, unsigned); 31 uint64_t make_svemte_desc(DisasContext *s, unsigned vsz, uint32_t nregs, 35 static inline bool sme_sm_enabled_check(DisasContext *s) in sme_sm_enabled_check() [all …]
|
| H A D | translate.c | 154 void arm_gen_condlabel(DisasContext *s) in arm_gen_condlabel() 193 static void disas_set_da_iss(DisasContext *s, MemOp memop, ISSInfo issinfo) in disas_set_da_iss() 223 static inline int get_a32_user_mem_index(DisasContext *s) in get_a32_user_mem_index() 258 static target_long jmp_diff(DisasContext *s, target_long diff) in jmp_diff() 263 static void gen_pc_plus_diff(DisasContext *s, TCGv_i32 var, target_long diff) in gen_pc_plus_diff() 274 void load_reg_var(DisasContext *s, TCGv_i32 var, int reg) in load_reg_var() 288 TCGv_i32 add_reg_for_lit(DisasContext *s, int reg, int ofs) in add_reg_for_lit() 306 void store_reg(DisasContext *s, int reg, TCGv_i32 var) in store_reg() 331 static void store_sp_checked(DisasContext *s, TCGv_i32 var) in store_sp_checked() 355 static void gen_rebuild_hflags(DisasContext *s, bool new_el) in gen_rebuild_hflags() [all …]
|
| /openbmc/qemu/target/openrisc/ |
| H A D | translate.c | 45 typedef struct DisasContext { struct 60 } DisasContext; argument 62 static inline bool is_user(DisasContext *dc) in is_user() 135 static void gen_exception(DisasContext *dc, unsigned int excp) in gen_exception() 140 static void gen_illegal_exception(DisasContext *dc) in gen_illegal_exception() 147 static bool check_v1_3(DisasContext *dc) in check_v1_3() 152 static bool check_of32s(DisasContext *dc) in check_of32s() 157 static bool check_of64a32s(DisasContext *dc) in check_of64a32s() 162 static TCGv cpu_R(DisasContext *dc, int reg) in cpu_R() 175 static void check_r0_write(DisasContext *dc, int reg) in check_r0_write() [all …]
|
| /openbmc/qemu/target/s390x/tcg/ |
| H A D | translate.c | 52 typedef struct DisasContext DisasContext; typedef 139 struct DisasContext { struct 170 static void pc_to_link_info(TCGv_i64 out, DisasContext *s, uint64_t pc) in pc_to_link_info() argument 338 static void update_psw_addr(DisasContext *s) in update_psw_addr() 344 static void per_branch(DisasContext *s, TCGv_i64 dest) in per_branch() 353 static void per_breaking_event(DisasContext *s) in per_breaking_event() 358 static void update_cc_op(DisasContext *s) in update_cc_op() 365 static inline uint64_t ld_code2(CPUS390XState *env, DisasContext *s, in ld_code2() 371 static inline uint64_t ld_code4(CPUS390XState *env, DisasContext *s, in ld_code4() 377 static int get_mem_index(DisasContext *s) in get_mem_index() [all …]
|
| /openbmc/qemu/target/riscv/insn_trans/ |
| H A D | trans_rvzabha.c.inc | 25 static bool trans_amoswap_b(DisasContext *ctx, arg_amoswap_b *a) 31 static bool trans_amoadd_b(DisasContext *ctx, arg_amoadd_b *a) 37 static bool trans_amoxor_b(DisasContext *ctx, arg_amoxor_b *a) 43 static bool trans_amoand_b(DisasContext *ctx, arg_amoand_b *a) 49 static bool trans_amoor_b(DisasContext *ctx, arg_amoor_b *a) 55 static bool trans_amomin_b(DisasContext *ctx, arg_amomin_b *a) 61 static bool trans_amomax_b(DisasContext *ctx, arg_amomax_b *a) 67 static bool trans_amominu_b(DisasContext *ctx, arg_amominu_b *a) 73 static bool trans_amomaxu_b(DisasContext *ctx, arg_amomaxu_b *a) 79 static bool trans_amoswap_h(DisasContext *ctx, arg_amoswap_h *a) [all …]
|
| H A D | trans_xthead.c.inc | 90 static TCGv get_th_address_indexed(DisasContext *ctx, int rs1, int rs2, 127 static bool trans_th_addsl##SHAMT(DisasContext *ctx, \ 141 static bool trans_th_srri(DisasContext *ctx, arg_th_srri * a) 149 static bool trans_th_srriw(DisasContext *ctx, arg_th_srriw *a) 158 static bool gen_th_bfextract(DisasContext *ctx, arg_th_bfext *a, 171 static bool trans_th_ext(DisasContext *ctx, arg_th_ext *a) 177 static bool trans_th_extu(DisasContext *ctx, arg_th_extu *a) 184 static bool gen_th_ff0(DisasContext *ctx, arg_th_ff0 *a, DisasExtend ext) 208 static bool trans_th_ff0(DisasContext *ctx, arg_th_ff0 *a) 215 static bool trans_th_ff1(DisasContext *ctx, arg_th_ff1 *a) [all …]
|
| H A D | trans_rvb.c.inc | 69 static bool trans_clz(DisasContext *ctx, arg_clz *a) 85 static bool trans_ctz(DisasContext *ctx, arg_ctz *a) 91 static bool trans_cpop(DisasContext *ctx, arg_cpop *a) 97 static bool trans_andn(DisasContext *ctx, arg_andn *a) 103 static bool trans_orn(DisasContext *ctx, arg_orn *a) 109 static bool trans_xnor(DisasContext *ctx, arg_xnor *a) 115 static bool trans_min(DisasContext *ctx, arg_min *a) 121 static bool trans_max(DisasContext *ctx, arg_max *a) 127 static bool trans_minu(DisasContext *ctx, arg_minu *a) 133 static bool trans_maxu(DisasContext *ctx, arg_maxu *a) [all …]
|
| H A D | trans_rvk.c.inc | 50 static bool gen_aes32_sm4(DisasContext *ctx, arg_k_aes *a, 63 static bool trans_aes32esmi(DisasContext *ctx, arg_aes32esmi *a) 70 static bool trans_aes32esi(DisasContext *ctx, arg_aes32esi *a) 77 static bool trans_aes32dsmi(DisasContext *ctx, arg_aes32dsmi *a) 84 static bool trans_aes32dsi(DisasContext *ctx, arg_aes32dsi *a) 91 static bool trans_aes64es(DisasContext *ctx, arg_aes64es *a) 98 static bool trans_aes64esm(DisasContext *ctx, arg_aes64esm *a) 105 static bool trans_aes64ds(DisasContext *ctx, arg_aes64ds *a) 112 static bool trans_aes64dsm(DisasContext *ctx, arg_aes64dsm *a) 119 static bool trans_aes64ks2(DisasContext *ctx, arg_aes64ks2 *a) [all …]
|
| H A D | trans_rvh.c.inc | 41 static bool do_hlv(DisasContext *ctx, arg_r2 *a, 53 static bool do_hsv(DisasContext *ctx, arg_r2_s *a, 65 static bool trans_hlv_b(DisasContext *ctx, arg_hlv_b *a) 71 static bool trans_hlv_h(DisasContext *ctx, arg_hlv_h *a) 77 static bool trans_hlv_w(DisasContext *ctx, arg_hlv_w *a) 83 static bool trans_hlv_bu(DisasContext *ctx, arg_hlv_bu *a) 89 static bool trans_hlv_hu(DisasContext *ctx, arg_hlv_hu *a) 95 static bool trans_hsv_b(DisasContext *ctx, arg_hsv_b *a) 101 static bool trans_hsv_h(DisasContext *ctx, arg_hsv_h *a) 107 static bool trans_hsv_w(DisasContext *ctx, arg_hsv_w *a) [all …]
|
| H A D | trans_rva.c.inc | 33 static bool gen_lr(DisasContext *ctx, arg_atomic *a, MemOp mop) 58 static bool gen_sc(DisasContext *ctx, arg_atomic *a, MemOp mop) 99 static bool trans_lr_w(DisasContext *ctx, arg_lr_w *a) 105 static bool trans_sc_w(DisasContext *ctx, arg_sc_w *a) 111 static bool trans_amoswap_w(DisasContext *ctx, arg_amoswap_w *a) 117 static bool trans_amoadd_w(DisasContext *ctx, arg_amoadd_w *a) 123 static bool trans_amoxor_w(DisasContext *ctx, arg_amoxor_w *a) 129 static bool trans_amoand_w(DisasContext *ctx, arg_amoand_w *a) 135 static bool trans_amoor_w(DisasContext *ctx, arg_amoor_w *a) 141 static bool trans_amomin_w(DisasContext *ctx, arg_amomin_w *a) [all …]
|
| /openbmc/qemu/target/avr/ |
| H A D | translate.c | 81 typedef struct DisasContext DisasContext; typedef 84 struct DisasContext { struct 154 static int to_regs_16_31_by_one(DisasContext *ctx, int indx) in to_regs_16_31_by_one() 159 static int to_regs_16_23_by_one(DisasContext *ctx, int indx) in to_regs_16_23_by_one() 164 static int to_regs_24_30_by_two(DisasContext *ctx, int indx) in to_regs_24_30_by_two() 169 static int to_regs_00_30_by_two(DisasContext *ctx, int indx) in to_regs_00_30_by_two() 174 static uint16_t next_word(DisasContext *ctx) in next_word() 179 static int append_16(DisasContext *ctx, int x) in append_16() 184 static bool avr_have_feature(DisasContext *ctx, int feature) in avr_have_feature() 194 static bool decode_insn(DisasContext *ctx, uint16_t insn); [all …]
|
| /openbmc/qemu/target/hexagon/ |
| H A D | translate.h | 29 typedef struct DisasContext { struct 78 } DisasContext; argument 80 bool is_gather_store_insn(DisasContext *ctx); 82 static inline void ctx_log_pred_write(DisasContext *ctx, int pnum) in ctx_log_pred_write() 91 static inline void ctx_log_pred_read(DisasContext *ctx, int pnum) in ctx_log_pred_read() 98 static inline void ctx_log_pred_read_new(DisasContext *ctx, int pnum) in ctx_log_pred_read_new() 103 static inline void ctx_log_reg_write(DisasContext *ctx, int rnum, in ctx_log_reg_write() 122 static inline void ctx_log_reg_write_pair(DisasContext *ctx, int rnum, in ctx_log_reg_write_pair() 129 static inline void ctx_log_reg_read(DisasContext *ctx, int rnum) in ctx_log_reg_read() 136 static inline void ctx_log_reg_read_new(DisasContext *ctx, int rnum) in ctx_log_reg_read_new() [all …]
|
| /openbmc/qemu/target/loongarch/tcg/ |
| H A D | translate.c | 66 static inline int plus_1(DisasContext *ctx, int x) in plus_1() 71 static inline int shl_1(DisasContext *ctx, int x) in shl_1() 76 static inline int shl_2(DisasContext *ctx, int x) in shl_2() 81 static inline int shl_3(DisasContext *ctx, int x) in shl_3() 95 void generate_exception(DisasContext *ctx, int excp) in generate_exception() 102 static inline void gen_goto_tb(DisasContext *ctx, int n, target_ulong dest) in gen_goto_tb() 123 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_init_disas_context() 160 DisasContext *ctx = container_of(dcbase, DisasContext, base); in loongarch_tr_insn_start() 173 static TCGv gpr_src(DisasContext *ctx, int reg_num, DisasExtend src_ext) in gpr_src() 196 static TCGv gpr_dst(DisasContext *ctx, int reg_num, DisasExtend dst_ext) in gpr_dst() [all …]
|
| /openbmc/qemu/target/hppa/ |
| H A D | translate.c | 65 typedef struct DisasContext { struct 97 } DisasContext; argument 108 static int expand_sm_imm(DisasContext *ctx, int val) in expand_sm_imm() 123 static int expand_sr3x(DisasContext *ctx, int val) in expand_sr3x() 130 static int ma_to_m(DisasContext *ctx, int val) in ma_to_m() 136 static int pos_to_m(DisasContext *ctx, int val) in pos_to_m() 141 static int neg_to_m(DisasContext *ctx, int val) in neg_to_m() 147 static int expand_shl2(DisasContext *ctx, int val) in expand_shl2() 153 static int expand_shl11(DisasContext *ctx, int val) in expand_shl11() 158 static int assemble_6(DisasContext *ctx, int val) in assemble_6() [all …]
|
| /openbmc/qemu/target/microblaze/ |
| H A D | translate.c | 62 typedef struct DisasContext { struct 77 } DisasContext; argument 79 static int typeb_imm(DisasContext *dc, int x) in typeb_imm() 90 static void t_sync_flags(DisasContext *dc) in t_sync_flags() 98 static void gen_raise_exception(DisasContext *dc, uint32_t index) in gen_raise_exception() 104 static void gen_raise_exception_sync(DisasContext *dc, uint32_t index) in gen_raise_exception_sync() 111 static void gen_raise_hw_excp(DisasContext *dc, uint32_t esr_ec) in gen_raise_hw_excp() 119 static void gen_goto_tb(DisasContext *dc, int n, target_ulong dest) in gen_goto_tb() 136 static bool trap_illegal(DisasContext *dc, bool cond) in trap_illegal() 149 static bool trap_userspace(DisasContext *dc, bool cond) in trap_userspace() [all …]
|
| /openbmc/qemu/target/riscv/ |
| H A D | translate.c | 57 typedef struct DisasContext { struct 122 } DisasContext; argument 124 static inline bool has_ext(DisasContext *ctx, uint32_t ext) in has_ext() 148 static inline int __attribute__((unused)) get_xlen(DisasContext *ctx) in get_xlen() 160 static inline int get_olen(DisasContext *ctx) in get_olen() 212 static void decode_save_opc(DisasContext *ctx, target_ulong excp_uw2) in decode_save_opc() 220 static void gen_pc_plus_diff(TCGv target, DisasContext *ctx, in gen_pc_plus_diff() 239 static void gen_update_pc(DisasContext *ctx, target_long diff) in gen_update_pc() 245 static void generate_exception(DisasContext *ctx, RISCVException excp) in generate_exception() 252 static void gen_exception_illegal(DisasContext *ctx) in gen_exception_illegal() [all …]
|