Classes | Macros | Enumerations | Functions | Variables
M68KDisassembler.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "../../cs_priv.h"
#include "../../utils.h"
#include "../../MCInst.h"
#include "../../MCInstrDesc.h"
#include "../../MCRegisterInfo.h"
#include "M68KInstPrinter.h"
#include "M68KDisassembler.h"
Include dependency graph for M68KDisassembler.c:

Go to the source code of this file.

Classes

struct  instruction_struct
 
struct  opcode_struct
 

Macros

#define BIT_0(A)   ((A) & 0x00000001)
 
#define BIT_1(A)   ((A) & 0x00000002)
 
#define BIT_10(A)   ((A) & 0x00010000)
 
#define BIT_11(A)   ((A) & 0x00020000)
 
#define BIT_12(A)   ((A) & 0x00040000)
 
#define BIT_13(A)   ((A) & 0x00080000)
 
#define BIT_14(A)   ((A) & 0x00100000)
 
#define BIT_15(A)   ((A) & 0x00200000)
 
#define BIT_16(A)   ((A) & 0x00400000)
 
#define BIT_17(A)   ((A) & 0x00800000)
 
#define BIT_18(A)   ((A) & 0x01000000)
 
#define BIT_19(A)   ((A) & 0x02000000)
 
#define BIT_1A(A)   ((A) & 0x04000000)
 
#define BIT_1B(A)   ((A) & 0x08000000)
 
#define BIT_1C(A)   ((A) & 0x10000000)
 
#define BIT_1D(A)   ((A) & 0x20000000)
 
#define BIT_1E(A)   ((A) & 0x40000000)
 
#define BIT_1F(A)   ((A) & 0x80000000)
 
#define BIT_2(A)   ((A) & 0x00000004)
 
#define BIT_3(A)   ((A) & 0x00000008)
 
#define BIT_4(A)   ((A) & 0x00000010)
 
#define BIT_5(A)   ((A) & 0x00000020)
 
#define BIT_6(A)   ((A) & 0x00000040)
 
#define BIT_7(A)   ((A) & 0x00000080)
 
#define BIT_8(A)   ((A) & 0x00000100)
 
#define BIT_9(A)   ((A) & 0x00000200)
 
#define BIT_A(A)   ((A) & 0x00000400)
 
#define BIT_B(A)   ((A) & 0x00000800)
 
#define BIT_C(A)   ((A) & 0x00001000)
 
#define BIT_D(A)   ((A) & 0x00002000)
 
#define BIT_E(A)   ((A) & 0x00004000)
 
#define BIT_F(A)   ((A) & 0x00008000)
 
#define BITFIELD(val, sb, eb)   ((BITFIELD_MASK(sb,eb) & (val)) >> (eb))
 
#define BITFIELD_MASK(sb, eb)   (((1 << ((sb) + 1))-1) & (~((1 << (eb))-1)))
 
#define DECL_SPEC
 
#define EXT_8BIT_DISPLACEMENT(A)   ((A)&0xff)
 
#define EXT_BASE_DISPLACEMENT_LONG(A)   (((A)&0x30) == 0x30)
 
#define EXT_BASE_DISPLACEMENT_PRESENT(A)   (((A)&0x30) > 0x10)
 
#define EXT_BASE_DISPLACEMENT_WORD(A)   (((A)&0x30) == 0x20)
 
#define EXT_BASE_REGISTER_PRESENT(A)   (!BIT_7(A))
 
#define EXT_EFFECTIVE_ZERO(A)   (((A)&0xe4) == 0xc4 || ((A)&0xe2) == 0xc0)
 
#define EXT_FULL(A)   BIT_8(A)
 
#define EXT_INDEX_AR(A)   BIT_F(A)
 
#define EXT_INDEX_LONG(A)   BIT_B(A)
 
#define EXT_INDEX_POST(A)   (EXT_INDEX_PRESENT(A) && ((A)&7) > 4)
 
#define EXT_INDEX_PRE(A)   (EXT_INDEX_PRESENT(A) && ((A)&7) < 4 && ((A)&7) != 0)
 
#define EXT_INDEX_PRE_POST(A)   (EXT_INDEX_PRESENT(A) && (A)&3)
 
#define EXT_INDEX_REGISTER(A)   (((A)>>12)&7)
 
#define EXT_INDEX_REGISTER_PRESENT(A)   (!BIT_6(A))
 
#define EXT_INDEX_SCALE(A)   (((A)>>9)&3)
 
#define EXT_OUTER_DISPLACEMENT_LONG(A)   (((A)&3) == 3 && ((A)&0x47) < 0x44)
 
#define EXT_OUTER_DISPLACEMENT_PRESENT(A)   (((A)&3) > 1 && ((A)&0x47) < 0x44)
 
#define EXT_OUTER_DISPLACEMENT_WORD(A)   (((A)&3) == 2 && ((A)&0x47) < 0x44)
 
#define get_ea_mode_str_16(instruction)   get_ea_mode_str(instruction, 1)
 
#define get_ea_mode_str_32(instruction)   get_ea_mode_str(instruction, 2)
 
#define get_ea_mode_str_8(instruction)   get_ea_mode_str(instruction, 0)
 
#define get_imm_str_s16()   get_imm_str_s(1)
 
#define get_imm_str_s32()   get_imm_str_s(2)
 
#define get_imm_str_s8()   get_imm_str_s(0)
 
#define get_imm_str_u16()   get_imm_str_u(1)
 
#define get_imm_str_u32()   get_imm_str_u(2)
 
#define get_imm_str_u8()   get_imm_str_u(0)
 
#define IS_BITSET(val, b)   ((val) & (1 << (b)))
 
#define LIMIT_CPU_TYPES(info, ALLOWED_CPU_TYPES)
 
#define M68000_ONLY   TYPE_68000
 
#define M68010_LESS   (TYPE_68000 | TYPE_68010)
 
#define M68010_ONLY   TYPE_68010
 
#define M68010_PLUS   (TYPE_68010 | TYPE_68020 | TYPE_68030 | TYPE_68040)
 
#define M68020_LESS   (TYPE_68010 | TYPE_68020)
 
#define M68020_ONLY   TYPE_68020
 
#define M68020_PLUS   (TYPE_68020 | TYPE_68030 | TYPE_68040)
 
#define M68030_LESS   (TYPE_68010 | TYPE_68020 | TYPE_68030)
 
#define M68030_ONLY   TYPE_68030
 
#define M68030_PLUS   (TYPE_68030 | TYPE_68040)
 
#define M68040_PLUS   TYPE_68040
 
#define TYPE_68000   1
 
#define TYPE_68010   2
 
#define TYPE_68020   4
 
#define TYPE_68030   8
 
#define TYPE_68040   16
 
#define uint   unsigned int
 

Enumerations

enum  {
  M68K_CPU_TYPE_INVALID, M68K_CPU_TYPE_68000, M68K_CPU_TYPE_68010, M68K_CPU_TYPE_68EC020,
  M68K_CPU_TYPE_68020, M68K_CPU_TYPE_68030, M68K_CPU_TYPE_68040
}
 

Functions

static void add_reg_to_rw_list (m68k_info *info, m68k_reg reg, int write)
 
static void build_3bit_d (m68k_info *info, int opcode, int size)
 
static void build_3bit_ea (m68k_info *info, int opcode, int size)
 
static void build_absolute_jump_with_immediate (m68k_info *info, int opcode, int size, int immediate)
 
static void build_bcc (m68k_info *info, int size, int displacement)
 
static void build_bitfield_ins (m68k_info *info, int opcode, int has_d_arg)
 
static void build_cas2 (m68k_info *info, int size)
 
static void build_chk2_cmp2 (m68k_info *info, int size)
 
static void build_cpush_cinv (m68k_info *info, int op_offset)
 
static void build_d (m68k_info *info, int opcode, int size)
 
static void build_d_d_ea (m68k_info *info, int opcode, int size)
 
static void build_dbcc (m68k_info *info, int size, int displacement)
 
static void build_dbxx (m68k_info *info, int opcode, int size, int displacement)
 
static void build_ea (m68k_info *info, int opcode, uint8_t size)
 
static void build_ea_a (m68k_info *info, int opcode, uint8_t size)
 
static void build_ea_ea (m68k_info *info, int opcode, int size)
 
static void build_er_1 (m68k_info *info, int opcode, uint8_t size)
 
static void build_er_gen_1 (m68k_info *info, bool isDreg, int opcode, uint8_t size)
 
static void build_illegal (m68k_info *info, int data)
 
static void build_imm (m68k_info *info, int opcode, int data)
 
static void build_imm_ea (m68k_info *info, int opcode, uint8_t size, int imm)
 
static void build_imm_special_reg (m68k_info *info, int opcode, int imm, int size, m68k_reg reg)
 
static cs_m68kbuild_init_op (m68k_info *info, int opcode, int count, int size)
 
static void build_invalid (m68k_info *info, int data)
 
static void build_link (m68k_info *info, int disp, int size)
 
static void build_mm (m68k_info *info, int opcode, uint8_t size, int imm)
 
static void build_move16 (m68k_info *info, int data[2], int modes[2])
 
static void build_movem_er (m68k_info *info, int opcode, int size)
 
static void build_movem_re (m68k_info *info, int opcode, int size)
 
static void build_movep_er (m68k_info *info, int size)
 
static void build_movep_re (m68k_info *info, int size)
 
static void build_moves (m68k_info *info, int size)
 
static void build_opcode_table (void)
 
static void build_pi_pi (m68k_info *info, int opcode, int size)
 
static void build_r (m68k_info *info, int opcode, uint8_t size)
 
static void build_re_1 (m68k_info *info, int opcode, uint8_t size)
 
static void build_re_gen_1 (m68k_info *info, bool isDreg, int opcode, uint8_t size)
 
static void build_regs_read_write_counts (m68k_info *info)
 
static void build_relative_branch (m68k_info *info, int opcode, int size, int displacement)
 
static void build_rr (m68k_info *info, int opcode, uint8_t size, int imm)
 
static void build_trap (m68k_info *info, int size, int immediate)
 
static int DECL_SPEC compare_nof_true_bits (const void *aptr, const void *bptr)
 
static void d68000_1010 (m68k_info *info)
 
static void d68000_1111 (m68k_info *info)
 
static void d68000_abcd_mm (m68k_info *info)
 
static void d68000_abcd_rr (m68k_info *info)
 
static void d68000_add_er_16 (m68k_info *info)
 
static void d68000_add_er_32 (m68k_info *info)
 
static void d68000_add_er_8 (m68k_info *info)
 
static void d68000_add_re_16 (m68k_info *info)
 
static void d68000_add_re_32 (m68k_info *info)
 
static void d68000_add_re_8 (m68k_info *info)
 
static void d68000_adda_16 (m68k_info *info)
 
static void d68000_adda_32 (m68k_info *info)
 
static void d68000_addi_16 (m68k_info *info)
 
static void d68000_addi_32 (m68k_info *info)
 
static void d68000_addi_8 (m68k_info *info)
 
static void d68000_addq_16 (m68k_info *info)
 
static void d68000_addq_32 (m68k_info *info)
 
static void d68000_addq_8 (m68k_info *info)
 
static void d68000_addx_mm_16 (m68k_info *info)
 
static void d68000_addx_mm_32 (m68k_info *info)
 
static void d68000_addx_mm_8 (m68k_info *info)
 
static void d68000_addx_rr_16 (m68k_info *info)
 
static void d68000_addx_rr_32 (m68k_info *info)
 
static void d68000_addx_rr_8 (m68k_info *info)
 
static void d68000_and_er_16 (m68k_info *info)
 
static void d68000_and_er_32 (m68k_info *info)
 
static void d68000_and_er_8 (m68k_info *info)
 
static void d68000_and_re_16 (m68k_info *info)
 
static void d68000_and_re_32 (m68k_info *info)
 
static void d68000_and_re_8 (m68k_info *info)
 
static void d68000_andi_16 (m68k_info *info)
 
static void d68000_andi_32 (m68k_info *info)
 
static void d68000_andi_8 (m68k_info *info)
 
static void d68000_andi_to_ccr (m68k_info *info)
 
static void d68000_andi_to_sr (m68k_info *info)
 
static void d68000_asl_ea (m68k_info *info)
 
static void d68000_asl_r_16 (m68k_info *info)
 
static void d68000_asl_r_32 (m68k_info *info)
 
static void d68000_asl_r_8 (m68k_info *info)
 
static void d68000_asl_s_16 (m68k_info *info)
 
static void d68000_asl_s_32 (m68k_info *info)
 
static void d68000_asl_s_8 (m68k_info *info)
 
static void d68000_asr_ea (m68k_info *info)
 
static void d68000_asr_r_16 (m68k_info *info)
 
static void d68000_asr_r_32 (m68k_info *info)
 
static void d68000_asr_r_8 (m68k_info *info)
 
static void d68000_asr_s_16 (m68k_info *info)
 
static void d68000_asr_s_32 (m68k_info *info)
 
static void d68000_asr_s_8 (m68k_info *info)
 
static void d68000_bcc_16 (m68k_info *info)
 
static void d68000_bcc_8 (m68k_info *info)
 
static void d68000_bchg_r (m68k_info *info)
 
static void d68000_bchg_s (m68k_info *info)
 
static void d68000_bclr_r (m68k_info *info)
 
static void d68000_bclr_s (m68k_info *info)
 
static void d68000_bra_16 (m68k_info *info)
 
static void d68000_bra_8 (m68k_info *info)
 
static void d68000_bset_r (m68k_info *info)
 
static void d68000_bset_s (m68k_info *info)
 
static void d68000_bsr_16 (m68k_info *info)
 
static void d68000_bsr_8 (m68k_info *info)
 
static void d68000_btst_r (m68k_info *info)
 
static void d68000_btst_s (m68k_info *info)
 
static void d68000_chk_16 (m68k_info *info)
 
static void d68000_clr_16 (m68k_info *info)
 
static void d68000_clr_32 (m68k_info *info)
 
static void d68000_clr_8 (m68k_info *info)
 
static void d68000_cmp_16 (m68k_info *info)
 
static void d68000_cmp_32 (m68k_info *info)
 
static void d68000_cmp_8 (m68k_info *info)
 
static void d68000_cmpa_16 (m68k_info *info)
 
static void d68000_cmpa_32 (m68k_info *info)
 
static void d68000_cmpi_16 (m68k_info *info)
 
static void d68000_cmpi_32 (m68k_info *info)
 
static void d68000_cmpi_8 (m68k_info *info)
 
static void d68000_cmpm_16 (m68k_info *info)
 
static void d68000_cmpm_32 (m68k_info *info)
 
static void d68000_cmpm_8 (m68k_info *info)
 
static void d68000_dbcc (m68k_info *info)
 
static void d68000_dbra (m68k_info *info)
 
static void d68000_divs (m68k_info *info)
 
static void d68000_divu (m68k_info *info)
 
static void d68000_eor_16 (m68k_info *info)
 
static void d68000_eor_32 (m68k_info *info)
 
static void d68000_eor_8 (m68k_info *info)
 
static void d68000_eori_16 (m68k_info *info)
 
static void d68000_eori_32 (m68k_info *info)
 
static void d68000_eori_8 (m68k_info *info)
 
static void d68000_eori_to_ccr (m68k_info *info)
 
static void d68000_eori_to_sr (m68k_info *info)
 
static void d68000_exg_aa (m68k_info *info)
 
static void d68000_exg_da (m68k_info *info)
 
static void d68000_exg_dd (m68k_info *info)
 
static void d68000_ext_16 (m68k_info *info)
 
static void d68000_ext_32 (m68k_info *info)
 
static void d68000_illegal (m68k_info *info)
 
static void d68000_invalid (m68k_info *info)
 
static void d68000_jmp (m68k_info *info)
 
static void d68000_jsr (m68k_info *info)
 
static void d68000_lea (m68k_info *info)
 
static void d68000_link_16 (m68k_info *info)
 
static void d68000_lsl_ea (m68k_info *info)
 
static void d68000_lsl_r_16 (m68k_info *info)
 
static void d68000_lsl_r_32 (m68k_info *info)
 
static void d68000_lsl_r_8 (m68k_info *info)
 
static void d68000_lsl_s_16 (m68k_info *info)
 
static void d68000_lsl_s_32 (m68k_info *info)
 
static void d68000_lsl_s_8 (m68k_info *info)
 
static void d68000_lsr_ea (m68k_info *info)
 
static void d68000_lsr_r_16 (m68k_info *info)
 
static void d68000_lsr_r_32 (m68k_info *info)
 
static void d68000_lsr_r_8 (m68k_info *info)
 
static void d68000_lsr_s_16 (m68k_info *info)
 
static void d68000_lsr_s_32 (m68k_info *info)
 
static void d68000_lsr_s_8 (m68k_info *info)
 
static void d68000_move_16 (m68k_info *info)
 
static void d68000_move_32 (m68k_info *info)
 
static void d68000_move_8 (m68k_info *info)
 
static void d68000_move_fr_sr (m68k_info *info)
 
static void d68000_move_fr_usp (m68k_info *info)
 
static void d68000_move_to_ccr (m68k_info *info)
 
static void d68000_move_to_sr (m68k_info *info)
 
static void d68000_move_to_usp (m68k_info *info)
 
static void d68000_movea_16 (m68k_info *info)
 
static void d68000_movea_32 (m68k_info *info)
 
static void d68000_movem_er_16 (m68k_info *info)
 
static void d68000_movem_er_32 (m68k_info *info)
 
static void d68000_movem_pd_16 (m68k_info *info)
 
static void d68000_movem_pd_32 (m68k_info *info)
 
static void d68000_movem_re_16 (m68k_info *info)
 
static void d68000_movem_re_32 (m68k_info *info)
 
static void d68000_movep_er_16 (m68k_info *info)
 
static void d68000_movep_er_32 (m68k_info *info)
 
static void d68000_movep_re_16 (m68k_info *info)
 
static void d68000_movep_re_32 (m68k_info *info)
 
static void d68000_moveq (m68k_info *info)
 
static void d68000_muls (m68k_info *info)
 
static void d68000_mulu (m68k_info *info)
 
static void d68000_nbcd (m68k_info *info)
 
static void d68000_neg_16 (m68k_info *info)
 
static void d68000_neg_32 (m68k_info *info)
 
static void d68000_neg_8 (m68k_info *info)
 
static void d68000_negx_16 (m68k_info *info)
 
static void d68000_negx_32 (m68k_info *info)
 
static void d68000_negx_8 (m68k_info *info)
 
static void d68000_nop (m68k_info *info)
 
static void d68000_not_16 (m68k_info *info)
 
static void d68000_not_32 (m68k_info *info)
 
static void d68000_not_8 (m68k_info *info)
 
static void d68000_or_er_16 (m68k_info *info)
 
static void d68000_or_er_32 (m68k_info *info)
 
static void d68000_or_er_8 (m68k_info *info)
 
static void d68000_or_re_16 (m68k_info *info)
 
static void d68000_or_re_32 (m68k_info *info)
 
static void d68000_or_re_8 (m68k_info *info)
 
static void d68000_ori_16 (m68k_info *info)
 
static void d68000_ori_32 (m68k_info *info)
 
static void d68000_ori_8 (m68k_info *info)
 
static void d68000_ori_to_ccr (m68k_info *info)
 
static void d68000_ori_to_sr (m68k_info *info)
 
static void d68000_pea (m68k_info *info)
 
static void d68000_reset (m68k_info *info)
 
static void d68000_rol_ea (m68k_info *info)
 
static void d68000_rol_r_16 (m68k_info *info)
 
static void d68000_rol_r_32 (m68k_info *info)
 
static void d68000_rol_r_8 (m68k_info *info)
 
static void d68000_rol_s_16 (m68k_info *info)
 
static void d68000_rol_s_32 (m68k_info *info)
 
static void d68000_rol_s_8 (m68k_info *info)
 
static void d68000_ror_ea (m68k_info *info)
 
static void d68000_ror_r_16 (m68k_info *info)
 
static void d68000_ror_r_32 (m68k_info *info)
 
static void d68000_ror_r_8 (m68k_info *info)
 
static void d68000_ror_s_16 (m68k_info *info)
 
static void d68000_ror_s_32 (m68k_info *info)
 
static void d68000_ror_s_8 (m68k_info *info)
 
static void d68000_roxl_ea (m68k_info *info)
 
static void d68000_roxl_r_16 (m68k_info *info)
 
static void d68000_roxl_r_32 (m68k_info *info)
 
static void d68000_roxl_r_8 (m68k_info *info)
 
static void d68000_roxl_s_16 (m68k_info *info)
 
static void d68000_roxl_s_32 (m68k_info *info)
 
static void d68000_roxl_s_8 (m68k_info *info)
 
static void d68000_roxr_ea (m68k_info *info)
 
static void d68000_roxr_r_16 (m68k_info *info)
 
static void d68000_roxr_r_32 (m68k_info *info)
 
static void d68000_roxr_r_8 (m68k_info *info)
 
static void d68000_roxr_s_16 (m68k_info *info)
 
static void d68000_roxr_s_32 (m68k_info *info)
 
static void d68000_roxr_s_8 (m68k_info *info)
 
static void d68000_rte (m68k_info *info)
 
static void d68000_rtr (m68k_info *info)
 
static void d68000_rts (m68k_info *info)
 
static void d68000_sbcd_mm (m68k_info *info)
 
static void d68000_sbcd_rr (m68k_info *info)
 
static void d68000_scc (m68k_info *info)
 
static void d68000_stop (m68k_info *info)
 
static void d68000_sub_er_16 (m68k_info *info)
 
static void d68000_sub_er_32 (m68k_info *info)
 
static void d68000_sub_er_8 (m68k_info *info)
 
static void d68000_sub_re_16 (m68k_info *info)
 
static void d68000_sub_re_32 (m68k_info *info)
 
static void d68000_sub_re_8 (m68k_info *info)
 
static void d68000_suba_16 (m68k_info *info)
 
static void d68000_suba_32 (m68k_info *info)
 
static void d68000_subi_16 (m68k_info *info)
 
static void d68000_subi_32 (m68k_info *info)
 
static void d68000_subi_8 (m68k_info *info)
 
static void d68000_subq_16 (m68k_info *info)
 
static void d68000_subq_32 (m68k_info *info)
 
static void d68000_subq_8 (m68k_info *info)
 
static void d68000_subx_mm_16 (m68k_info *info)
 
static void d68000_subx_mm_32 (m68k_info *info)
 
static void d68000_subx_mm_8 (m68k_info *info)
 
static void d68000_subx_rr_16 (m68k_info *info)
 
static void d68000_subx_rr_32 (m68k_info *info)
 
static void d68000_subx_rr_8 (m68k_info *info)
 
static void d68000_swap (m68k_info *info)
 
static void d68000_tas (m68k_info *info)
 
static void d68000_trap (m68k_info *info)
 
static void d68000_trapv (m68k_info *info)
 
static void d68000_tst_16 (m68k_info *info)
 
static void d68000_tst_32 (m68k_info *info)
 
static void d68000_tst_8 (m68k_info *info)
 
static void d68000_unlk (m68k_info *info)
 
static void d68010_bkpt (m68k_info *info)
 
static void d68010_move_fr_ccr (m68k_info *info)
 
static void d68010_movec (m68k_info *info)
 
static void d68010_moves_16 (m68k_info *info)
 
static void d68010_moves_32 (m68k_info *info)
 
static void d68010_moves_8 (m68k_info *info)
 
static void d68010_rtd (m68k_info *info)
 
static void d68020_bcc_32 (m68k_info *info)
 
static void d68020_bfchg (m68k_info *info)
 
static void d68020_bfclr (m68k_info *info)
 
static void d68020_bfexts (m68k_info *info)
 
static void d68020_bfextu (m68k_info *info)
 
static void d68020_bfffo (m68k_info *info)
 
static void d68020_bfins (m68k_info *info)
 
static void d68020_bfset (m68k_info *info)
 
static void d68020_bftst (m68k_info *info)
 
static void d68020_bra_32 (m68k_info *info)
 
static void d68020_bsr_32 (m68k_info *info)
 
static void d68020_callm (m68k_info *info)
 
static void d68020_cas2_16 (m68k_info *info)
 
static void d68020_cas2_32 (m68k_info *info)
 
static void d68020_cas_16 (m68k_info *info)
 
static void d68020_cas_32 (m68k_info *info)
 
static void d68020_cas_8 (m68k_info *info)
 
static void d68020_chk2_cmp2_16 (m68k_info *info)
 
static void d68020_chk2_cmp2_32 (m68k_info *info)
 
static void d68020_chk2_cmp2_8 (m68k_info *info)
 
static void d68020_chk_32 (m68k_info *info)
 
static void d68020_cmpi_pcdi_16 (m68k_info *info)
 
static void d68020_cmpi_pcdi_32 (m68k_info *info)
 
static void d68020_cmpi_pcdi_8 (m68k_info *info)
 
static void d68020_cmpi_pcix_16 (m68k_info *info)
 
static void d68020_cmpi_pcix_32 (m68k_info *info)
 
static void d68020_cmpi_pcix_8 (m68k_info *info)
 
static void d68020_cpbcc_16 (m68k_info *info)
 
static void d68020_cpbcc_32 (m68k_info *info)
 
static void d68020_cpdbcc (m68k_info *info)
 
static void d68020_cpgen (m68k_info *info)
 
static void d68020_cprestore (m68k_info *info)
 
static void d68020_cpsave (m68k_info *info)
 
static void d68020_cpscc (m68k_info *info)
 
static void d68020_cptrapcc_0 (m68k_info *info)
 
static void d68020_cptrapcc_16 (m68k_info *info)
 
static void d68020_cptrapcc_32 (m68k_info *info)
 
static void d68020_divl (m68k_info *info)
 
static void d68020_extb_32 (m68k_info *info)
 
static void d68020_link_32 (m68k_info *info)
 
static void d68020_mull (m68k_info *info)
 
static void d68020_pack_mm (m68k_info *info)
 
static void d68020_pack_rr (m68k_info *info)
 
static void d68020_rtm (m68k_info *info)
 
static void d68020_trapcc_0 (m68k_info *info)
 
static void d68020_trapcc_16 (m68k_info *info)
 
static void d68020_trapcc_32 (m68k_info *info)
 
static void d68020_tst_a_16 (m68k_info *info)
 
static void d68020_tst_a_32 (m68k_info *info)
 
static void d68020_tst_i_16 (m68k_info *info)
 
static void d68020_tst_i_32 (m68k_info *info)
 
static void d68020_tst_i_8 (m68k_info *info)
 
static void d68020_tst_pcdi_16 (m68k_info *info)
 
static void d68020_tst_pcdi_32 (m68k_info *info)
 
static void d68020_tst_pcdi_8 (m68k_info *info)
 
static void d68020_tst_pcix_16 (m68k_info *info)
 
static void d68020_tst_pcix_32 (m68k_info *info)
 
static void d68020_tst_pcix_8 (m68k_info *info)
 
static void d68020_unpk_mm (m68k_info *info)
 
static void d68020_unpk_rr (m68k_info *info)
 
static void d68040_cinv (m68k_info *info)
 
static void d68040_cpush (m68k_info *info)
 
static void d68040_move16_ai_al (m68k_info *info)
 
static void d68040_move16_al_ai (m68k_info *info)
 
static void d68040_move16_al_pi (m68k_info *info)
 
static void d68040_move16_pi_al (m68k_info *info)
 
static void d68040_move16_pi_pi (m68k_info *info)
 
static int exists_reg_list (uint16_t *regs, uint8_t count, m68k_reg reg)
 
static void fmove_fpcr (m68k_info *info, uint extension)
 
static void fmovem (m68k_info *info, uint extension)
 
static void get_ea_mode_op (m68k_info *info, cs_m68k_op *op, uint instruction, uint size)
 
static void get_with_index_address_mode (m68k_info *info, cs_m68k_op *op, uint instruction, uint size, bool is_pc)
 
static int instruction_is_valid (m68k_info *info, const unsigned int word_check)
 
static unsigned int m68k_disassemble (m68k_info *info, uint64_t pc)
 
bool M68K_getInstruction (csh ud, const uint8_t *code, size_t code_len, MCInst *instr, uint16_t *size, uint64_t address, void *inst_info)
 
static unsigned int m68k_read_disassembler_16 (const m68k_info *info, const uint64_t addr)
 
static unsigned int m68k_read_disassembler_32 (const m68k_info *info, const uint64_t addr)
 
static uint64_t m68k_read_disassembler_64 (const m68k_info *info, const uint64_t addr)
 
static unsigned int m68k_read_safe_16 (const m68k_info *info, const uint64_t address)
 
static unsigned int m68k_read_safe_32 (const m68k_info *info, const uint64_t address)
 
static uint64_t m68k_read_safe_64 (const m68k_info *info, const uint64_t address)
 
static void m68k_setup_internals (m68k_info *info, MCInst *inst, unsigned int pc, unsigned int cpu_type)
 
static void make_cpbcc_operand (cs_m68k_op *op, int size, int displacement)
 
static int make_int_16 (int value)
 
static int make_int_8 (int value)
 
static unsigned int peek_imm_16 (const m68k_info *info)
 
static unsigned int peek_imm_32 (const m68k_info *info)
 
static unsigned long long peek_imm_64 (const m68k_info *info)
 
static unsigned int peek_imm_8 (const m68k_info *info)
 
static unsigned int read_imm_16 (m68k_info *info)
 
static unsigned int read_imm_32 (m68k_info *info)
 
static unsigned long long read_imm_64 (m68k_info *info)
 
static unsigned int read_imm_8 (m68k_info *info)
 
static uint16_t reverse_bits (uint v)
 
static uint8_t reverse_bits_8 (uint v)
 
static void set_insn_group (m68k_info *info, m68k_group_type group)
 
static void update_am_reg_list (m68k_info *info, cs_m68k_op *op, int write)
 
static void update_bits_range (m68k_info *info, m68k_reg reg_start, uint8_t bits, int write)
 
static void update_op_reg_list (m68k_info *info, cs_m68k_op *op, int write)
 
static void update_reg_list_regbits (m68k_info *info, cs_m68k_op *op, int write)
 
static int valid_ea (uint opcode, uint mask)
 

Variables

static uint g_3bit_qdata_table [8] = {8, 1, 2, 3, 4, 5, 6, 7}
 
static uint g_5bit_data_table [32]
 
static instruction_struct g_instruction_table [0x10000]
 
static opcode_struct g_opcode_info []
 
static m68k_insn s_branch_lut []
 
static m68k_insn s_dbcc_lut []
 
static m68k_insn s_scc_lut []
 
static m68k_insn s_trap_lut []
 

Macro Definition Documentation

◆ BIT_0

#define BIT_0 (   A)    ((A) & 0x00000001)

Definition at line 67 of file M68KDisassembler.c.

◆ BIT_1

#define BIT_1 (   A)    ((A) & 0x00000002)

Definition at line 68 of file M68KDisassembler.c.

◆ BIT_10

#define BIT_10 (   A)    ((A) & 0x00010000)

Definition at line 83 of file M68KDisassembler.c.

◆ BIT_11

#define BIT_11 (   A)    ((A) & 0x00020000)

Definition at line 84 of file M68KDisassembler.c.

◆ BIT_12

#define BIT_12 (   A)    ((A) & 0x00040000)

Definition at line 85 of file M68KDisassembler.c.

◆ BIT_13

#define BIT_13 (   A)    ((A) & 0x00080000)

Definition at line 86 of file M68KDisassembler.c.

◆ BIT_14

#define BIT_14 (   A)    ((A) & 0x00100000)

Definition at line 87 of file M68KDisassembler.c.

◆ BIT_15

#define BIT_15 (   A)    ((A) & 0x00200000)

Definition at line 88 of file M68KDisassembler.c.

◆ BIT_16

#define BIT_16 (   A)    ((A) & 0x00400000)

Definition at line 89 of file M68KDisassembler.c.

◆ BIT_17

#define BIT_17 (   A)    ((A) & 0x00800000)

Definition at line 90 of file M68KDisassembler.c.

◆ BIT_18

#define BIT_18 (   A)    ((A) & 0x01000000)

Definition at line 91 of file M68KDisassembler.c.

◆ BIT_19

#define BIT_19 (   A)    ((A) & 0x02000000)

Definition at line 92 of file M68KDisassembler.c.

◆ BIT_1A

#define BIT_1A (   A)    ((A) & 0x04000000)

Definition at line 93 of file M68KDisassembler.c.

◆ BIT_1B

#define BIT_1B (   A)    ((A) & 0x08000000)

Definition at line 94 of file M68KDisassembler.c.

◆ BIT_1C

#define BIT_1C (   A)    ((A) & 0x10000000)

Definition at line 95 of file M68KDisassembler.c.

◆ BIT_1D

#define BIT_1D (   A)    ((A) & 0x20000000)

Definition at line 96 of file M68KDisassembler.c.

◆ BIT_1E

#define BIT_1E (   A)    ((A) & 0x40000000)

Definition at line 97 of file M68KDisassembler.c.

◆ BIT_1F

#define BIT_1F (   A)    ((A) & 0x80000000)

Definition at line 98 of file M68KDisassembler.c.

◆ BIT_2

#define BIT_2 (   A)    ((A) & 0x00000004)

Definition at line 69 of file M68KDisassembler.c.

◆ BIT_3

#define BIT_3 (   A)    ((A) & 0x00000008)

Definition at line 70 of file M68KDisassembler.c.

◆ BIT_4

#define BIT_4 (   A)    ((A) & 0x00000010)

Definition at line 71 of file M68KDisassembler.c.

◆ BIT_5

#define BIT_5 (   A)    ((A) & 0x00000020)

Definition at line 72 of file M68KDisassembler.c.

◆ BIT_6

#define BIT_6 (   A)    ((A) & 0x00000040)

Definition at line 73 of file M68KDisassembler.c.

◆ BIT_7

#define BIT_7 (   A)    ((A) & 0x00000080)

Definition at line 74 of file M68KDisassembler.c.

◆ BIT_8

#define BIT_8 (   A)    ((A) & 0x00000100)

Definition at line 75 of file M68KDisassembler.c.

◆ BIT_9

#define BIT_9 (   A)    ((A) & 0x00000200)

Definition at line 76 of file M68KDisassembler.c.

◆ BIT_A

#define BIT_A (   A)    ((A) & 0x00000400)

Definition at line 77 of file M68KDisassembler.c.

◆ BIT_B

#define BIT_B (   A)    ((A) & 0x00000800)

Definition at line 78 of file M68KDisassembler.c.

◆ BIT_C

#define BIT_C (   A)    ((A) & 0x00001000)

Definition at line 79 of file M68KDisassembler.c.

◆ BIT_D

#define BIT_D (   A)    ((A) & 0x00002000)

Definition at line 80 of file M68KDisassembler.c.

◆ BIT_E

#define BIT_E (   A)    ((A) & 0x00004000)

Definition at line 81 of file M68KDisassembler.c.

◆ BIT_F

#define BIT_F (   A)    ((A) & 0x00008000)

Definition at line 82 of file M68KDisassembler.c.

◆ BITFIELD

#define BITFIELD (   val,
  sb,
  eb 
)    ((BITFIELD_MASK(sb,eb) & (val)) >> (eb))

Definition at line 155 of file M68KDisassembler.c.

◆ BITFIELD_MASK

#define BITFIELD_MASK (   sb,
  eb 
)    (((1 << ((sb) + 1))-1) & (~((1 << (eb))-1)))

Definition at line 154 of file M68KDisassembler.c.

◆ DECL_SPEC

#define DECL_SPEC

Definition at line 54 of file M68KDisassembler.c.

◆ EXT_8BIT_DISPLACEMENT

#define EXT_8BIT_DISPLACEMENT (   A)    ((A)&0xff)

Definition at line 134 of file M68KDisassembler.c.

◆ EXT_BASE_DISPLACEMENT_LONG

#define EXT_BASE_DISPLACEMENT_LONG (   A)    (((A)&0x30) == 0x30)

Definition at line 148 of file M68KDisassembler.c.

◆ EXT_BASE_DISPLACEMENT_PRESENT

#define EXT_BASE_DISPLACEMENT_PRESENT (   A)    (((A)&0x30) > 0x10)

Definition at line 146 of file M68KDisassembler.c.

◆ EXT_BASE_DISPLACEMENT_WORD

#define EXT_BASE_DISPLACEMENT_WORD (   A)    (((A)&0x30) == 0x20)

Definition at line 147 of file M68KDisassembler.c.

◆ EXT_BASE_REGISTER_PRESENT

#define EXT_BASE_REGISTER_PRESENT (   A)    (!BIT_7(A))

Definition at line 137 of file M68KDisassembler.c.

◆ EXT_EFFECTIVE_ZERO

#define EXT_EFFECTIVE_ZERO (   A)    (((A)&0xe4) == 0xc4 || ((A)&0xe2) == 0xc0)

Definition at line 136 of file M68KDisassembler.c.

◆ EXT_FULL

#define EXT_FULL (   A)    BIT_8(A)

Definition at line 135 of file M68KDisassembler.c.

◆ EXT_INDEX_AR

#define EXT_INDEX_AR (   A)    BIT_F(A)

Definition at line 145 of file M68KDisassembler.c.

◆ EXT_INDEX_LONG

#define EXT_INDEX_LONG (   A)    BIT_B(A)

Definition at line 144 of file M68KDisassembler.c.

◆ EXT_INDEX_POST

#define EXT_INDEX_POST (   A)    (EXT_INDEX_PRESENT(A) && ((A)&7) > 4)

Definition at line 142 of file M68KDisassembler.c.

◆ EXT_INDEX_PRE

#define EXT_INDEX_PRE (   A)    (EXT_INDEX_PRESENT(A) && ((A)&7) < 4 && ((A)&7) != 0)

Definition at line 141 of file M68KDisassembler.c.

◆ EXT_INDEX_PRE_POST

#define EXT_INDEX_PRE_POST (   A)    (EXT_INDEX_PRESENT(A) && (A)&3)

Definition at line 140 of file M68KDisassembler.c.

◆ EXT_INDEX_REGISTER

#define EXT_INDEX_REGISTER (   A)    (((A)>>12)&7)

Definition at line 139 of file M68KDisassembler.c.

◆ EXT_INDEX_REGISTER_PRESENT

#define EXT_INDEX_REGISTER_PRESENT (   A)    (!BIT_6(A))

Definition at line 138 of file M68KDisassembler.c.

◆ EXT_INDEX_SCALE

#define EXT_INDEX_SCALE (   A)    (((A)>>9)&3)

Definition at line 143 of file M68KDisassembler.c.

◆ EXT_OUTER_DISPLACEMENT_LONG

#define EXT_OUTER_DISPLACEMENT_LONG (   A)    (((A)&3) == 3 && ((A)&0x47) < 0x44)

Definition at line 151 of file M68KDisassembler.c.

◆ EXT_OUTER_DISPLACEMENT_PRESENT

#define EXT_OUTER_DISPLACEMENT_PRESENT (   A)    (((A)&3) > 1 && ((A)&0x47) < 0x44)

Definition at line 149 of file M68KDisassembler.c.

◆ EXT_OUTER_DISPLACEMENT_WORD

#define EXT_OUTER_DISPLACEMENT_WORD (   A)    (((A)&3) == 2 && ((A)&0x47) < 0x44)

Definition at line 150 of file M68KDisassembler.c.

◆ get_ea_mode_str_16

#define get_ea_mode_str_16 (   instruction)    get_ea_mode_str(instruction, 1)

Definition at line 313 of file M68KDisassembler.c.

◆ get_ea_mode_str_32

#define get_ea_mode_str_32 (   instruction)    get_ea_mode_str(instruction, 2)

Definition at line 314 of file M68KDisassembler.c.

◆ get_ea_mode_str_8

#define get_ea_mode_str_8 (   instruction)    get_ea_mode_str(instruction, 0)

Definition at line 312 of file M68KDisassembler.c.

◆ get_imm_str_s16

#define get_imm_str_s16 ( )    get_imm_str_s(1)

Definition at line 317 of file M68KDisassembler.c.

◆ get_imm_str_s32

#define get_imm_str_s32 ( )    get_imm_str_s(2)

Definition at line 318 of file M68KDisassembler.c.

◆ get_imm_str_s8

#define get_imm_str_s8 ( )    get_imm_str_s(0)

Definition at line 316 of file M68KDisassembler.c.

◆ get_imm_str_u16

#define get_imm_str_u16 ( )    get_imm_str_u(1)

Definition at line 321 of file M68KDisassembler.c.

◆ get_imm_str_u32

#define get_imm_str_u32 ( )    get_imm_str_u(2)

Definition at line 322 of file M68KDisassembler.c.

◆ get_imm_str_u8

#define get_imm_str_u8 ( )    get_imm_str_u(0)

Definition at line 320 of file M68KDisassembler.c.

◆ IS_BITSET

#define IS_BITSET (   val,
  b 
)    ((val) & (1 << (b)))

Definition at line 153 of file M68KDisassembler.c.

◆ LIMIT_CPU_TYPES

#define LIMIT_CPU_TYPES (   info,
  ALLOWED_CPU_TYPES 
)
Value:
do { \
if (!(info->type & ALLOWED_CPU_TYPES)) { \
d68000_invalid(info); \
return; \
} \
} while (0)

Definition at line 293 of file M68KDisassembler.c.

◆ M68000_ONLY

#define M68000_ONLY   TYPE_68000

Definition at line 107 of file M68KDisassembler.c.

◆ M68010_LESS

#define M68010_LESS   (TYPE_68000 | TYPE_68010)

Definition at line 110 of file M68KDisassembler.c.

◆ M68010_ONLY

#define M68010_ONLY   TYPE_68010

Definition at line 109 of file M68KDisassembler.c.

◆ M68010_PLUS

#define M68010_PLUS   (TYPE_68010 | TYPE_68020 | TYPE_68030 | TYPE_68040)

Definition at line 111 of file M68KDisassembler.c.

◆ M68020_LESS

#define M68020_LESS   (TYPE_68010 | TYPE_68020)

Definition at line 114 of file M68KDisassembler.c.

◆ M68020_ONLY

#define M68020_ONLY   TYPE_68020

Definition at line 113 of file M68KDisassembler.c.

◆ M68020_PLUS

#define M68020_PLUS   (TYPE_68020 | TYPE_68030 | TYPE_68040)

Definition at line 115 of file M68KDisassembler.c.

◆ M68030_LESS

#define M68030_LESS   (TYPE_68010 | TYPE_68020 | TYPE_68030)

Definition at line 118 of file M68KDisassembler.c.

◆ M68030_ONLY

#define M68030_ONLY   TYPE_68030

Definition at line 117 of file M68KDisassembler.c.

◆ M68030_PLUS

#define M68030_PLUS   (TYPE_68030 | TYPE_68040)

Definition at line 119 of file M68KDisassembler.c.

◆ M68040_PLUS

#define M68040_PLUS   TYPE_68040

Definition at line 121 of file M68KDisassembler.c.

◆ TYPE_68000

#define TYPE_68000   1

Definition at line 101 of file M68KDisassembler.c.

◆ TYPE_68010

#define TYPE_68010   2

Definition at line 102 of file M68KDisassembler.c.

◆ TYPE_68020

#define TYPE_68020   4

Definition at line 103 of file M68KDisassembler.c.

◆ TYPE_68030

#define TYPE_68030   8

Definition at line 104 of file M68KDisassembler.c.

◆ TYPE_68040

#define TYPE_68040   16

Definition at line 105 of file M68KDisassembler.c.

◆ uint

#define uint   unsigned int

Definition at line 64 of file M68KDisassembler.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
M68K_CPU_TYPE_INVALID 
M68K_CPU_TYPE_68000 
M68K_CPU_TYPE_68010 
M68K_CPU_TYPE_68EC020 
M68K_CPU_TYPE_68020 
M68K_CPU_TYPE_68030 
M68K_CPU_TYPE_68040 

Definition at line 123 of file M68KDisassembler.c.

Function Documentation

◆ add_reg_to_rw_list()

static void add_reg_to_rw_list ( m68k_info info,
m68k_reg  reg,
int  write 
)
static

Definition at line 3855 of file M68KDisassembler.c.

◆ build_3bit_d()

static void build_3bit_d ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 637 of file M68KDisassembler.c.

◆ build_3bit_ea()

static void build_3bit_ea ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 654 of file M68KDisassembler.c.

◆ build_absolute_jump_with_immediate()

static void build_absolute_jump_with_immediate ( m68k_info info,
int  opcode,
int  size,
int  immediate 
)
static

Definition at line 778 of file M68KDisassembler.c.

◆ build_bcc()

static void build_bcc ( m68k_info info,
int  size,
int  displacement 
)
static

Definition at line 792 of file M68KDisassembler.c.

◆ build_bitfield_ins()

static void build_bitfield_ins ( m68k_info info,
int  opcode,
int  has_d_arg 
)
static

Definition at line 849 of file M68KDisassembler.c.

◆ build_cas2()

static void build_cas2 ( m68k_info info,
int  size 
)
static

Definition at line 981 of file M68KDisassembler.c.

◆ build_chk2_cmp2()

static void build_chk2_cmp2 ( m68k_info info,
int  size 
)
static

Definition at line 1021 of file M68KDisassembler.c.

◆ build_cpush_cinv()

static void build_cpush_cinv ( m68k_info info,
int  op_offset 
)
static

Definition at line 1083 of file M68KDisassembler.c.

◆ build_d()

static void build_d ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 884 of file M68KDisassembler.c.

◆ build_d_d_ea()

static void build_d_d_ea ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 828 of file M68KDisassembler.c.

◆ build_dbcc()

static void build_dbcc ( m68k_info info,
int  size,
int  displacement 
)
static

Definition at line 823 of file M68KDisassembler.c.

◆ build_dbxx()

static void build_dbxx ( m68k_info info,
int  opcode,
int  size,
int  displacement 
)
static

Definition at line 802 of file M68KDisassembler.c.

◆ build_ea()

static void build_ea ( m68k_info info,
int  opcode,
uint8_t  size 
)
static

Definition at line 695 of file M68KDisassembler.c.

◆ build_ea_a()

static void build_ea_a ( m68k_info info,
int  opcode,
uint8_t  size 
)
static

Definition at line 701 of file M68KDisassembler.c.

◆ build_ea_ea()

static void build_ea_ea ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 716 of file M68KDisassembler.c.

◆ build_er_1()

static void build_er_1 ( m68k_info info,
int  opcode,
uint8_t  size 
)
static

Definition at line 1174 of file M68KDisassembler.c.

◆ build_er_gen_1()

static void build_er_gen_1 ( m68k_info info,
bool  isDreg,
int  opcode,
uint8_t  size 
)
static

Definition at line 560 of file M68KDisassembler.c.

◆ build_illegal()

static void build_illegal ( m68k_info info,
int  data 
)
static

Definition at line 971 of file M68KDisassembler.c.

◆ build_imm()

static void build_imm ( m68k_info info,
int  opcode,
int  data 
)
static

Definition at line 957 of file M68KDisassembler.c.

◆ build_imm_ea()

static void build_imm_ea ( m68k_info info,
int  opcode,
uint8_t  size,
int  imm 
)
static

Definition at line 621 of file M68KDisassembler.c.

◆ build_imm_special_reg()

static void build_imm_special_reg ( m68k_info info,
int  opcode,
int  imm,
int  size,
m68k_reg  reg 
)
static

Definition at line 745 of file M68KDisassembler.c.

◆ build_init_op()

static cs_m68k* build_init_op ( m68k_info info,
int  opcode,
int  count,
int  size 
)
static

Definition at line 520 of file M68KDisassembler.c.

◆ build_invalid()

static void build_invalid ( m68k_info info,
int  data 
)
static

Definition at line 976 of file M68KDisassembler.c.

◆ build_link()

static void build_link ( m68k_info info,
int  disp,
int  size 
)
static

Definition at line 1066 of file M68KDisassembler.c.

◆ build_mm()

static void build_mm ( m68k_info info,
int  opcode,
uint8_t  size,
int  imm 
)
static

Definition at line 670 of file M68KDisassembler.c.

◆ build_move16()

static void build_move16 ( m68k_info info,
int  data[2],
int  modes[2] 
)
static

Definition at line 1044 of file M68KDisassembler.c.

◆ build_movem_er()

static void build_movem_er ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 942 of file M68KDisassembler.c.

◆ build_movem_re()

static void build_movem_re ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 924 of file M68KDisassembler.c.

◆ build_movep_er()

static void build_movep_er ( m68k_info info,
int  size 
)
static

Definition at line 1138 of file M68KDisassembler.c.

◆ build_movep_re()

static void build_movep_re ( m68k_info info,
int  size 
)
static

Definition at line 1121 of file M68KDisassembler.c.

◆ build_moves()

static void build_moves ( m68k_info info,
int  size 
)
static

Definition at line 1155 of file M68KDisassembler.c.

◆ build_opcode_table()

static void build_opcode_table ( void  )
static

Definition at line 3788 of file M68KDisassembler.c.

◆ build_pi_pi()

static void build_pi_pi ( m68k_info info,
int  opcode,
int  size 
)
static

Definition at line 729 of file M68KDisassembler.c.

◆ build_r()

static void build_r ( m68k_info info,
int  opcode,
uint8_t  size 
)
static

Definition at line 605 of file M68KDisassembler.c.

◆ build_re_1()

static void build_re_1 ( m68k_info info,
int  opcode,
uint8_t  size 
)
static

Definition at line 555 of file M68KDisassembler.c.

◆ build_re_gen_1()

static void build_re_gen_1 ( m68k_info info,
bool  isDreg,
int  opcode,
uint8_t  size 
)
static

Definition at line 535 of file M68KDisassembler.c.

◆ build_regs_read_write_counts()

static void build_regs_read_write_counts ( m68k_info info)
static

Definition at line 3955 of file M68KDisassembler.c.

◆ build_relative_branch()

static void build_relative_branch ( m68k_info info,
int  opcode,
int  size,
int  displacement 
)
static

Definition at line 762 of file M68KDisassembler.c.

◆ build_rr()

static void build_rr ( m68k_info info,
int  opcode,
uint8_t  size,
int  imm 
)
static

Definition at line 580 of file M68KDisassembler.c.

◆ build_trap()

static void build_trap ( m68k_info info,
int  size,
int  immediate 
)
static

Definition at line 797 of file M68KDisassembler.c.

◆ compare_nof_true_bits()

static int DECL_SPEC compare_nof_true_bits ( const void *  aptr,
const void *  bptr 
)
static

Definition at line 3769 of file M68KDisassembler.c.

◆ d68000_1010()

static void d68000_1010 ( m68k_info info)
static

Definition at line 1228 of file M68KDisassembler.c.

◆ d68000_1111()

static void d68000_1111 ( m68k_info info)
static

Definition at line 1233 of file M68KDisassembler.c.

◆ d68000_abcd_mm()

static void d68000_abcd_mm ( m68k_info info)
static

Definition at line 1243 of file M68KDisassembler.c.

◆ d68000_abcd_rr()

static void d68000_abcd_rr ( m68k_info info)
static

Definition at line 1238 of file M68KDisassembler.c.

◆ d68000_add_er_16()

static void d68000_add_er_16 ( m68k_info info)
static

Definition at line 1253 of file M68KDisassembler.c.

◆ d68000_add_er_32()

static void d68000_add_er_32 ( m68k_info info)
static

Definition at line 1258 of file M68KDisassembler.c.

◆ d68000_add_er_8()

static void d68000_add_er_8 ( m68k_info info)
static

Definition at line 1248 of file M68KDisassembler.c.

◆ d68000_add_re_16()

static void d68000_add_re_16 ( m68k_info info)
static

Definition at line 1268 of file M68KDisassembler.c.

◆ d68000_add_re_32()

static void d68000_add_re_32 ( m68k_info info)
static

Definition at line 1273 of file M68KDisassembler.c.

◆ d68000_add_re_8()

static void d68000_add_re_8 ( m68k_info info)
static

Definition at line 1263 of file M68KDisassembler.c.

◆ d68000_adda_16()

static void d68000_adda_16 ( m68k_info info)
static

Definition at line 1278 of file M68KDisassembler.c.

◆ d68000_adda_32()

static void d68000_adda_32 ( m68k_info info)
static

Definition at line 1283 of file M68KDisassembler.c.

◆ d68000_addi_16()

static void d68000_addi_16 ( m68k_info info)
static

Definition at line 1293 of file M68KDisassembler.c.

◆ d68000_addi_32()

static void d68000_addi_32 ( m68k_info info)
static

Definition at line 1298 of file M68KDisassembler.c.

◆ d68000_addi_8()

static void d68000_addi_8 ( m68k_info info)
static

Definition at line 1288 of file M68KDisassembler.c.

◆ d68000_addq_16()

static void d68000_addq_16 ( m68k_info info)
static

Definition at line 1308 of file M68KDisassembler.c.

◆ d68000_addq_32()

static void d68000_addq_32 ( m68k_info info)
static

Definition at line 1313 of file M68KDisassembler.c.

◆ d68000_addq_8()

static void d68000_addq_8 ( m68k_info info)
static

Definition at line 1303 of file M68KDisassembler.c.

◆ d68000_addx_mm_16()

static void d68000_addx_mm_16 ( m68k_info info)
static

Definition at line 1338 of file M68KDisassembler.c.

◆ d68000_addx_mm_32()

static void d68000_addx_mm_32 ( m68k_info info)
static

Definition at line 1343 of file M68KDisassembler.c.

◆ d68000_addx_mm_8()

static void d68000_addx_mm_8 ( m68k_info info)
static

Definition at line 1333 of file M68KDisassembler.c.

◆ d68000_addx_rr_16()

static void d68000_addx_rr_16 ( m68k_info info)
static

Definition at line 1323 of file M68KDisassembler.c.

◆ d68000_addx_rr_32()

static void d68000_addx_rr_32 ( m68k_info info)
static

Definition at line 1328 of file M68KDisassembler.c.

◆ d68000_addx_rr_8()

static void d68000_addx_rr_8 ( m68k_info info)
static

Definition at line 1318 of file M68KDisassembler.c.

◆ d68000_and_er_16()

static void d68000_and_er_16 ( m68k_info info)
static

Definition at line 1353 of file M68KDisassembler.c.

◆ d68000_and_er_32()

static void d68000_and_er_32 ( m68k_info info)
static

Definition at line 1358 of file M68KDisassembler.c.

◆ d68000_and_er_8()

static void d68000_and_er_8 ( m68k_info info)
static

Definition at line 1348 of file M68KDisassembler.c.

◆ d68000_and_re_16()

static void d68000_and_re_16 ( m68k_info info)
static

Definition at line 1368 of file M68KDisassembler.c.

◆ d68000_and_re_32()

static void d68000_and_re_32 ( m68k_info info)
static

Definition at line 1373 of file M68KDisassembler.c.

◆ d68000_and_re_8()

static void d68000_and_re_8 ( m68k_info info)
static

Definition at line 1363 of file M68KDisassembler.c.

◆ d68000_andi_16()

static void d68000_andi_16 ( m68k_info info)
static

Definition at line 1383 of file M68KDisassembler.c.

◆ d68000_andi_32()

static void d68000_andi_32 ( m68k_info info)
static

Definition at line 1388 of file M68KDisassembler.c.

◆ d68000_andi_8()

static void d68000_andi_8 ( m68k_info info)
static

Definition at line 1378 of file M68KDisassembler.c.

◆ d68000_andi_to_ccr()

static void d68000_andi_to_ccr ( m68k_info info)
static

Definition at line 1393 of file M68KDisassembler.c.

◆ d68000_andi_to_sr()

static void d68000_andi_to_sr ( m68k_info info)
static

Definition at line 1398 of file M68KDisassembler.c.

◆ d68000_asl_ea()

static void d68000_asl_ea ( m68k_info info)
static

Definition at line 1468 of file M68KDisassembler.c.

◆ d68000_asl_r_16()

static void d68000_asl_r_16 ( m68k_info info)
static

Definition at line 1458 of file M68KDisassembler.c.

◆ d68000_asl_r_32()

static void d68000_asl_r_32 ( m68k_info info)
static

Definition at line 1463 of file M68KDisassembler.c.

◆ d68000_asl_r_8()

static void d68000_asl_r_8 ( m68k_info info)
static

Definition at line 1453 of file M68KDisassembler.c.

◆ d68000_asl_s_16()

static void d68000_asl_s_16 ( m68k_info info)
static

Definition at line 1443 of file M68KDisassembler.c.

◆ d68000_asl_s_32()

static void d68000_asl_s_32 ( m68k_info info)
static

Definition at line 1448 of file M68KDisassembler.c.

◆ d68000_asl_s_8()

static void d68000_asl_s_8 ( m68k_info info)
static

Definition at line 1438 of file M68KDisassembler.c.

◆ d68000_asr_ea()

static void d68000_asr_ea ( m68k_info info)
static

Definition at line 1433 of file M68KDisassembler.c.

◆ d68000_asr_r_16()

static void d68000_asr_r_16 ( m68k_info info)
static

Definition at line 1423 of file M68KDisassembler.c.

◆ d68000_asr_r_32()

static void d68000_asr_r_32 ( m68k_info info)
static

Definition at line 1428 of file M68KDisassembler.c.

◆ d68000_asr_r_8()

static void d68000_asr_r_8 ( m68k_info info)
static

Definition at line 1418 of file M68KDisassembler.c.

◆ d68000_asr_s_16()

static void d68000_asr_s_16 ( m68k_info info)
static

Definition at line 1408 of file M68KDisassembler.c.

◆ d68000_asr_s_32()

static void d68000_asr_s_32 ( m68k_info info)
static

Definition at line 1413 of file M68KDisassembler.c.

◆ d68000_asr_s_8()

static void d68000_asr_s_8 ( m68k_info info)
static

Definition at line 1403 of file M68KDisassembler.c.

◆ d68000_bcc_16()

static void d68000_bcc_16 ( m68k_info info)
static

Definition at line 1478 of file M68KDisassembler.c.

◆ d68000_bcc_8()

static void d68000_bcc_8 ( m68k_info info)
static

Definition at line 1473 of file M68KDisassembler.c.

◆ d68000_bchg_r()

static void d68000_bchg_r ( m68k_info info)
static

Definition at line 1489 of file M68KDisassembler.c.

◆ d68000_bchg_s()

static void d68000_bchg_s ( m68k_info info)
static

Definition at line 1494 of file M68KDisassembler.c.

◆ d68000_bclr_r()

static void d68000_bclr_r ( m68k_info info)
static

Definition at line 1499 of file M68KDisassembler.c.

◆ d68000_bclr_s()

static void d68000_bclr_s ( m68k_info info)
static

Definition at line 1504 of file M68KDisassembler.c.

◆ d68000_bra_16()

static void d68000_bra_16 ( m68k_info info)
static

Definition at line 1577 of file M68KDisassembler.c.

◆ d68000_bra_8()

static void d68000_bra_8 ( m68k_info info)
static

Definition at line 1572 of file M68KDisassembler.c.

◆ d68000_bset_r()

static void d68000_bset_r ( m68k_info info)
static

Definition at line 1588 of file M68KDisassembler.c.

◆ d68000_bset_s()

static void d68000_bset_s ( m68k_info info)
static

Definition at line 1593 of file M68KDisassembler.c.

◆ d68000_bsr_16()

static void d68000_bsr_16 ( m68k_info info)
static

Definition at line 1603 of file M68KDisassembler.c.

◆ d68000_bsr_8()

static void d68000_bsr_8 ( m68k_info info)
static

Definition at line 1598 of file M68KDisassembler.c.

◆ d68000_btst_r()

static void d68000_btst_r ( m68k_info info)
static

Definition at line 1614 of file M68KDisassembler.c.

◆ d68000_btst_s()

static void d68000_btst_s ( m68k_info info)
static

Definition at line 1619 of file M68KDisassembler.c.

◆ d68000_chk_16()

static void d68000_chk_16 ( m68k_info info)
static

Definition at line 1658 of file M68KDisassembler.c.

◆ d68000_clr_16()

static void d68000_clr_16 ( m68k_info info)
static

Definition at line 1698 of file M68KDisassembler.c.

◆ d68000_clr_32()

static void d68000_clr_32 ( m68k_info info)
static

Definition at line 1703 of file M68KDisassembler.c.

◆ d68000_clr_8()

static void d68000_clr_8 ( m68k_info info)
static

Definition at line 1693 of file M68KDisassembler.c.

◆ d68000_cmp_16()

static void d68000_cmp_16 ( m68k_info info)
static

Definition at line 1713 of file M68KDisassembler.c.

◆ d68000_cmp_32()

static void d68000_cmp_32 ( m68k_info info)
static

Definition at line 1718 of file M68KDisassembler.c.

◆ d68000_cmp_8()

static void d68000_cmp_8 ( m68k_info info)
static

Definition at line 1708 of file M68KDisassembler.c.

◆ d68000_cmpa_16()

static void d68000_cmpa_16 ( m68k_info info)
static

Definition at line 1723 of file M68KDisassembler.c.

◆ d68000_cmpa_32()

static void d68000_cmpa_32 ( m68k_info info)
static

Definition at line 1728 of file M68KDisassembler.c.

◆ d68000_cmpi_16()

static void d68000_cmpi_16 ( m68k_info info)
static

Definition at line 1750 of file M68KDisassembler.c.

◆ d68000_cmpi_32()

static void d68000_cmpi_32 ( m68k_info info)
static

Definition at line 1767 of file M68KDisassembler.c.

◆ d68000_cmpi_8()

static void d68000_cmpi_8 ( m68k_info info)
static

Definition at line 1733 of file M68KDisassembler.c.

◆ d68000_cmpm_16()

static void d68000_cmpm_16 ( m68k_info info)
static

Definition at line 1789 of file M68KDisassembler.c.

◆ d68000_cmpm_32()

static void d68000_cmpm_32 ( m68k_info info)
static

Definition at line 1794 of file M68KDisassembler.c.

◆ d68000_cmpm_8()

static void d68000_cmpm_8 ( m68k_info info)
static

Definition at line 1784 of file M68KDisassembler.c.

◆ d68000_dbcc()

static void d68000_dbcc ( m68k_info info)
static

Definition at line 2219 of file M68KDisassembler.c.

◆ d68000_dbra()

static void d68000_dbra ( m68k_info info)
static

Definition at line 2214 of file M68KDisassembler.c.

◆ d68000_divs()

static void d68000_divs ( m68k_info info)
static

Definition at line 2224 of file M68KDisassembler.c.

◆ d68000_divu()

static void d68000_divu ( m68k_info info)
static

Definition at line 2229 of file M68KDisassembler.c.

◆ d68000_eor_16()

static void d68000_eor_16 ( m68k_info info)
static

Definition at line 2276 of file M68KDisassembler.c.

◆ d68000_eor_32()

static void d68000_eor_32 ( m68k_info info)
static

Definition at line 2281 of file M68KDisassembler.c.

◆ d68000_eor_8()

static void d68000_eor_8 ( m68k_info info)
static

Definition at line 2271 of file M68KDisassembler.c.

◆ d68000_eori_16()

static void d68000_eori_16 ( m68k_info info)
static

Definition at line 2291 of file M68KDisassembler.c.

◆ d68000_eori_32()

static void d68000_eori_32 ( m68k_info info)
static

Definition at line 2296 of file M68KDisassembler.c.

◆ d68000_eori_8()

static void d68000_eori_8 ( m68k_info info)
static

Definition at line 2286 of file M68KDisassembler.c.

◆ d68000_eori_to_ccr()

static void d68000_eori_to_ccr ( m68k_info info)
static

Definition at line 2301 of file M68KDisassembler.c.

◆ d68000_eori_to_sr()

static void d68000_eori_to_sr ( m68k_info info)
static

Definition at line 2306 of file M68KDisassembler.c.

◆ d68000_exg_aa()

static void d68000_exg_aa ( m68k_info info)
static

Definition at line 2316 of file M68KDisassembler.c.

◆ d68000_exg_da()

static void d68000_exg_da ( m68k_info info)
static

Definition at line 2332 of file M68KDisassembler.c.

◆ d68000_exg_dd()

static void d68000_exg_dd ( m68k_info info)
static

Definition at line 2311 of file M68KDisassembler.c.

◆ d68000_ext_16()

static void d68000_ext_16 ( m68k_info info)
static

Definition at line 2348 of file M68KDisassembler.c.

◆ d68000_ext_32()

static void d68000_ext_32 ( m68k_info info)
static

Definition at line 2353 of file M68KDisassembler.c.

◆ d68000_illegal()

static void d68000_illegal ( m68k_info info)
static

Definition at line 1223 of file M68KDisassembler.c.

◆ d68000_invalid()

static void d68000_invalid ( m68k_info info)
static

Definition at line 1218 of file M68KDisassembler.c.

◆ d68000_jmp()

static void d68000_jmp ( m68k_info info)
static

Definition at line 2364 of file M68KDisassembler.c.

◆ d68000_jsr()

static void d68000_jsr ( m68k_info info)
static

Definition at line 2371 of file M68KDisassembler.c.

◆ d68000_lea()

static void d68000_lea ( m68k_info info)
static

Definition at line 2378 of file M68KDisassembler.c.

◆ d68000_link_16()

static void d68000_link_16 ( m68k_info info)
static

Definition at line 2383 of file M68KDisassembler.c.

◆ d68000_lsl_ea()

static void d68000_lsl_ea ( m68k_info info)
static

Definition at line 2459 of file M68KDisassembler.c.

◆ d68000_lsl_r_16()

static void d68000_lsl_r_16 ( m68k_info info)
static

Definition at line 2449 of file M68KDisassembler.c.

◆ d68000_lsl_r_32()

static void d68000_lsl_r_32 ( m68k_info info)
static

Definition at line 2454 of file M68KDisassembler.c.

◆ d68000_lsl_r_8()

static void d68000_lsl_r_8 ( m68k_info info)
static

Definition at line 2444 of file M68KDisassembler.c.

◆ d68000_lsl_s_16()

static void d68000_lsl_s_16 ( m68k_info info)
static

Definition at line 2434 of file M68KDisassembler.c.

◆ d68000_lsl_s_32()

static void d68000_lsl_s_32 ( m68k_info info)
static

Definition at line 2439 of file M68KDisassembler.c.

◆ d68000_lsl_s_8()

static void d68000_lsl_s_8 ( m68k_info info)
static

Definition at line 2429 of file M68KDisassembler.c.

◆ d68000_lsr_ea()

static void d68000_lsr_ea ( m68k_info info)
static

Definition at line 2424 of file M68KDisassembler.c.

◆ d68000_lsr_r_16()

static void d68000_lsr_r_16 ( m68k_info info)
static

Definition at line 2414 of file M68KDisassembler.c.

◆ d68000_lsr_r_32()

static void d68000_lsr_r_32 ( m68k_info info)
static

Definition at line 2419 of file M68KDisassembler.c.

◆ d68000_lsr_r_8()

static void d68000_lsr_r_8 ( m68k_info info)
static

Definition at line 2409 of file M68KDisassembler.c.

◆ d68000_lsr_s_16()

static void d68000_lsr_s_16 ( m68k_info info)
static

Definition at line 2399 of file M68KDisassembler.c.

◆ d68000_lsr_s_32()

static void d68000_lsr_s_32 ( m68k_info info)
static

Definition at line 2404 of file M68KDisassembler.c.

◆ d68000_lsr_s_8()

static void d68000_lsr_s_8 ( m68k_info info)
static

Definition at line 2394 of file M68KDisassembler.c.

◆ d68000_move_16()

static void d68000_move_16 ( m68k_info info)
static

Definition at line 2469 of file M68KDisassembler.c.

◆ d68000_move_32()

static void d68000_move_32 ( m68k_info info)
static

Definition at line 2474 of file M68KDisassembler.c.

◆ d68000_move_8()

static void d68000_move_8 ( m68k_info info)
static

Definition at line 2464 of file M68KDisassembler.c.

◆ d68000_move_fr_sr()

static void d68000_move_fr_sr ( m68k_info info)
static

Definition at line 2523 of file M68KDisassembler.c.

◆ d68000_move_fr_usp()

static void d68000_move_fr_usp ( m68k_info info)
static

Definition at line 2553 of file M68KDisassembler.c.

◆ d68000_move_to_ccr()

static void d68000_move_to_ccr ( m68k_info info)
static

Definition at line 2489 of file M68KDisassembler.c.

◆ d68000_move_to_sr()

static void d68000_move_to_sr ( m68k_info info)
static

Definition at line 2538 of file M68KDisassembler.c.

◆ d68000_move_to_usp()

static void d68000_move_to_usp ( m68k_info info)
static

Definition at line 2569 of file M68KDisassembler.c.

◆ d68000_movea_16()

static void d68000_movea_16 ( m68k_info info)
static

Definition at line 2479 of file M68KDisassembler.c.

◆ d68000_movea_32()

static void d68000_movea_32 ( m68k_info info)
static

Definition at line 2484 of file M68KDisassembler.c.

◆ d68000_movem_er_16()

static void d68000_movem_er_16 ( m68k_info info)
static

Definition at line 2642 of file M68KDisassembler.c.

◆ d68000_movem_er_32()

static void d68000_movem_er_32 ( m68k_info info)
static

Definition at line 2647 of file M68KDisassembler.c.

◆ d68000_movem_pd_16()

static void d68000_movem_pd_16 ( m68k_info info)
static

Definition at line 2632 of file M68KDisassembler.c.

◆ d68000_movem_pd_32()

static void d68000_movem_pd_32 ( m68k_info info)
static

Definition at line 2637 of file M68KDisassembler.c.

◆ d68000_movem_re_16()

static void d68000_movem_re_16 ( m68k_info info)
static

Definition at line 2652 of file M68KDisassembler.c.

◆ d68000_movem_re_32()

static void d68000_movem_re_32 ( m68k_info info)
static

Definition at line 2657 of file M68KDisassembler.c.

◆ d68000_movep_er_16()

static void d68000_movep_er_16 ( m68k_info info)
static

Definition at line 2672 of file M68KDisassembler.c.

◆ d68000_movep_er_32()

static void d68000_movep_er_32 ( m68k_info info)
static

Definition at line 2677 of file M68KDisassembler.c.

◆ d68000_movep_re_16()

static void d68000_movep_re_16 ( m68k_info info)
static

Definition at line 2662 of file M68KDisassembler.c.

◆ d68000_movep_re_32()

static void d68000_movep_re_32 ( m68k_info info)
static

Definition at line 2667 of file M68KDisassembler.c.

◆ d68000_moveq()

static void d68000_moveq ( m68k_info info)
static

Definition at line 2701 of file M68KDisassembler.c.

◆ d68000_muls()

static void d68000_muls ( m68k_info info)
static

Definition at line 2769 of file M68KDisassembler.c.

◆ d68000_mulu()

static void d68000_mulu ( m68k_info info)
static

Definition at line 2774 of file M68KDisassembler.c.

◆ d68000_nbcd()

static void d68000_nbcd ( m68k_info info)
static

Definition at line 2817 of file M68KDisassembler.c.

◆ d68000_neg_16()

static void d68000_neg_16 ( m68k_info info)
static

Definition at line 2827 of file M68KDisassembler.c.

◆ d68000_neg_32()

static void d68000_neg_32 ( m68k_info info)
static

Definition at line 2832 of file M68KDisassembler.c.

◆ d68000_neg_8()

static void d68000_neg_8 ( m68k_info info)
static

Definition at line 2822 of file M68KDisassembler.c.

◆ d68000_negx_16()

static void d68000_negx_16 ( m68k_info info)
static

Definition at line 2842 of file M68KDisassembler.c.

◆ d68000_negx_32()

static void d68000_negx_32 ( m68k_info info)
static

Definition at line 2847 of file M68KDisassembler.c.

◆ d68000_negx_8()

static void d68000_negx_8 ( m68k_info info)
static

Definition at line 2837 of file M68KDisassembler.c.

◆ d68000_nop()

static void d68000_nop ( m68k_info info)
static

Definition at line 2852 of file M68KDisassembler.c.

◆ d68000_not_16()

static void d68000_not_16 ( m68k_info info)
static

Definition at line 2862 of file M68KDisassembler.c.

◆ d68000_not_32()

static void d68000_not_32 ( m68k_info info)
static

Definition at line 2867 of file M68KDisassembler.c.

◆ d68000_not_8()

static void d68000_not_8 ( m68k_info info)
static

Definition at line 2857 of file M68KDisassembler.c.

◆ d68000_or_er_16()

static void d68000_or_er_16 ( m68k_info info)
static

Definition at line 2877 of file M68KDisassembler.c.

◆ d68000_or_er_32()

static void d68000_or_er_32 ( m68k_info info)
static

Definition at line 2882 of file M68KDisassembler.c.

◆ d68000_or_er_8()

static void d68000_or_er_8 ( m68k_info info)
static

Definition at line 2872 of file M68KDisassembler.c.

◆ d68000_or_re_16()

static void d68000_or_re_16 ( m68k_info info)
static

Definition at line 2892 of file M68KDisassembler.c.

◆ d68000_or_re_32()

static void d68000_or_re_32 ( m68k_info info)
static

Definition at line 2897 of file M68KDisassembler.c.

◆ d68000_or_re_8()

static void d68000_or_re_8 ( m68k_info info)
static

Definition at line 2887 of file M68KDisassembler.c.

◆ d68000_ori_16()

static void d68000_ori_16 ( m68k_info info)
static

Definition at line 2907 of file M68KDisassembler.c.

◆ d68000_ori_32()

static void d68000_ori_32 ( m68k_info info)
static

Definition at line 2912 of file M68KDisassembler.c.

◆ d68000_ori_8()

static void d68000_ori_8 ( m68k_info info)
static

Definition at line 2902 of file M68KDisassembler.c.

◆ d68000_ori_to_ccr()

static void d68000_ori_to_ccr ( m68k_info info)
static

Definition at line 2917 of file M68KDisassembler.c.

◆ d68000_ori_to_sr()

static void d68000_ori_to_sr ( m68k_info info)
static

Definition at line 2922 of file M68KDisassembler.c.

◆ d68000_pea()

static void d68000_pea ( m68k_info info)
static

Definition at line 2939 of file M68KDisassembler.c.

◆ d68000_reset()

static void d68000_reset ( m68k_info info)
static

Definition at line 2944 of file M68KDisassembler.c.

◆ d68000_rol_ea()

static void d68000_rol_ea ( m68k_info info)
static

Definition at line 3014 of file M68KDisassembler.c.

◆ d68000_rol_r_16()

static void d68000_rol_r_16 ( m68k_info info)
static

Definition at line 3004 of file M68KDisassembler.c.

◆ d68000_rol_r_32()

static void d68000_rol_r_32 ( m68k_info info)
static

Definition at line 3009 of file M68KDisassembler.c.

◆ d68000_rol_r_8()

static void d68000_rol_r_8 ( m68k_info info)
static

Definition at line 2999 of file M68KDisassembler.c.

◆ d68000_rol_s_16()

static void d68000_rol_s_16 ( m68k_info info)
static

Definition at line 2989 of file M68KDisassembler.c.

◆ d68000_rol_s_32()

static void d68000_rol_s_32 ( m68k_info info)
static

Definition at line 2994 of file M68KDisassembler.c.

◆ d68000_rol_s_8()

static void d68000_rol_s_8 ( m68k_info info)
static

Definition at line 2984 of file M68KDisassembler.c.

◆ d68000_ror_ea()

static void d68000_ror_ea ( m68k_info info)
static

Definition at line 2979 of file M68KDisassembler.c.

◆ d68000_ror_r_16()

static void d68000_ror_r_16 ( m68k_info info)
static

Definition at line 2969 of file M68KDisassembler.c.

◆ d68000_ror_r_32()

static void d68000_ror_r_32 ( m68k_info info)
static

Definition at line 2974 of file M68KDisassembler.c.

◆ d68000_ror_r_8()

static void d68000_ror_r_8 ( m68k_info info)
static

Definition at line 2964 of file M68KDisassembler.c.

◆ d68000_ror_s_16()

static void d68000_ror_s_16 ( m68k_info info)
static

Definition at line 2954 of file M68KDisassembler.c.

◆ d68000_ror_s_32()

static void d68000_ror_s_32 ( m68k_info info)
static

Definition at line 2959 of file M68KDisassembler.c.

◆ d68000_ror_s_8()

static void d68000_ror_s_8 ( m68k_info info)
static

Definition at line 2949 of file M68KDisassembler.c.

◆ d68000_roxl_ea()

static void d68000_roxl_ea ( m68k_info info)
static

Definition at line 3084 of file M68KDisassembler.c.

◆ d68000_roxl_r_16()

static void d68000_roxl_r_16 ( m68k_info info)
static

Definition at line 3074 of file M68KDisassembler.c.

◆ d68000_roxl_r_32()

static void d68000_roxl_r_32 ( m68k_info info)
static

Definition at line 3079 of file M68KDisassembler.c.

◆ d68000_roxl_r_8()

static void d68000_roxl_r_8 ( m68k_info info)
static

Definition at line 3069 of file M68KDisassembler.c.

◆ d68000_roxl_s_16()

static void d68000_roxl_s_16 ( m68k_info info)
static

Definition at line 3059 of file M68KDisassembler.c.

◆ d68000_roxl_s_32()

static void d68000_roxl_s_32 ( m68k_info info)
static

Definition at line 3064 of file M68KDisassembler.c.

◆ d68000_roxl_s_8()

static void d68000_roxl_s_8 ( m68k_info info)
static

Definition at line 3054 of file M68KDisassembler.c.

◆ d68000_roxr_ea()

static void d68000_roxr_ea ( m68k_info info)
static

Definition at line 3049 of file M68KDisassembler.c.

◆ d68000_roxr_r_16()

static void d68000_roxr_r_16 ( m68k_info info)
static

Definition at line 3039 of file M68KDisassembler.c.

◆ d68000_roxr_r_32()

static void d68000_roxr_r_32 ( m68k_info info)
static

Definition at line 3044 of file M68KDisassembler.c.

◆ d68000_roxr_r_8()

static void d68000_roxr_r_8 ( m68k_info info)
static

Definition at line 3034 of file M68KDisassembler.c.

◆ d68000_roxr_s_16()

static void d68000_roxr_s_16 ( m68k_info info)
static

Definition at line 3024 of file M68KDisassembler.c.

◆ d68000_roxr_s_32()

static void d68000_roxr_s_32 ( m68k_info info)
static

Definition at line 3029 of file M68KDisassembler.c.

◆ d68000_roxr_s_8()

static void d68000_roxr_s_8 ( m68k_info info)
static

Definition at line 3019 of file M68KDisassembler.c.

◆ d68000_rte()

static void d68000_rte ( m68k_info info)
static

Definition at line 3096 of file M68KDisassembler.c.

◆ d68000_rtr()

static void d68000_rtr ( m68k_info info)
static

Definition at line 3126 of file M68KDisassembler.c.

◆ d68000_rts()

static void d68000_rts ( m68k_info info)
static

Definition at line 3132 of file M68KDisassembler.c.

◆ d68000_sbcd_mm()

static void d68000_sbcd_mm ( m68k_info info)
static

Definition at line 3143 of file M68KDisassembler.c.

◆ d68000_sbcd_rr()

static void d68000_sbcd_rr ( m68k_info info)
static

Definition at line 3138 of file M68KDisassembler.c.

◆ d68000_scc()

static void d68000_scc ( m68k_info info)
static

Definition at line 3148 of file M68KDisassembler.c.

◆ d68000_stop()

static void d68000_stop ( m68k_info info)
static

Definition at line 3154 of file M68KDisassembler.c.

◆ d68000_sub_er_16()

static void d68000_sub_er_16 ( m68k_info info)
static

Definition at line 3164 of file M68KDisassembler.c.

◆ d68000_sub_er_32()

static void d68000_sub_er_32 ( m68k_info info)
static

Definition at line 3169 of file M68KDisassembler.c.

◆ d68000_sub_er_8()

static void d68000_sub_er_8 ( m68k_info info)
static

Definition at line 3159 of file M68KDisassembler.c.

◆ d68000_sub_re_16()

static void d68000_sub_re_16 ( m68k_info info)
static

Definition at line 3179 of file M68KDisassembler.c.

◆ d68000_sub_re_32()

static void d68000_sub_re_32 ( m68k_info info)
static

Definition at line 3184 of file M68KDisassembler.c.

◆ d68000_sub_re_8()

static void d68000_sub_re_8 ( m68k_info info)
static

Definition at line 3174 of file M68KDisassembler.c.

◆ d68000_suba_16()

static void d68000_suba_16 ( m68k_info info)
static

Definition at line 3189 of file M68KDisassembler.c.

◆ d68000_suba_32()

static void d68000_suba_32 ( m68k_info info)
static

Definition at line 3194 of file M68KDisassembler.c.

◆ d68000_subi_16()

static void d68000_subi_16 ( m68k_info info)
static

Definition at line 3204 of file M68KDisassembler.c.

◆ d68000_subi_32()

static void d68000_subi_32 ( m68k_info info)
static

Definition at line 3209 of file M68KDisassembler.c.

◆ d68000_subi_8()

static void d68000_subi_8 ( m68k_info info)
static

Definition at line 3199 of file M68KDisassembler.c.

◆ d68000_subq_16()

static void d68000_subq_16 ( m68k_info info)
static

Definition at line 3219 of file M68KDisassembler.c.

◆ d68000_subq_32()

static void d68000_subq_32 ( m68k_info info)
static

Definition at line 3224 of file M68KDisassembler.c.

◆ d68000_subq_8()

static void d68000_subq_8 ( m68k_info info)
static

Definition at line 3214 of file M68KDisassembler.c.

◆ d68000_subx_mm_16()

static void d68000_subx_mm_16 ( m68k_info info)
static

Definition at line 3249 of file M68KDisassembler.c.

◆ d68000_subx_mm_32()

static void d68000_subx_mm_32 ( m68k_info info)
static

Definition at line 3254 of file M68KDisassembler.c.

◆ d68000_subx_mm_8()

static void d68000_subx_mm_8 ( m68k_info info)
static

Definition at line 3244 of file M68KDisassembler.c.

◆ d68000_subx_rr_16()

static void d68000_subx_rr_16 ( m68k_info info)
static

Definition at line 3234 of file M68KDisassembler.c.

◆ d68000_subx_rr_32()

static void d68000_subx_rr_32 ( m68k_info info)
static

Definition at line 3239 of file M68KDisassembler.c.

◆ d68000_subx_rr_8()

static void d68000_subx_rr_8 ( m68k_info info)
static

Definition at line 3229 of file M68KDisassembler.c.

◆ d68000_swap()

static void d68000_swap ( m68k_info info)
static

Definition at line 3259 of file M68KDisassembler.c.

◆ d68000_tas()

static void d68000_tas ( m68k_info info)
static

Definition at line 3264 of file M68KDisassembler.c.

◆ d68000_trap()

static void d68000_trap ( m68k_info info)
static

Definition at line 3269 of file M68KDisassembler.c.

◆ d68000_trapv()

static void d68000_trapv ( m68k_info info)
static

Definition at line 3294 of file M68KDisassembler.c.

◆ d68000_tst_16()

static void d68000_tst_16 ( m68k_info info)
static

Definition at line 3322 of file M68KDisassembler.c.

◆ d68000_tst_32()

static void d68000_tst_32 ( m68k_info info)
static

Definition at line 3351 of file M68KDisassembler.c.

◆ d68000_tst_8()

static void d68000_tst_8 ( m68k_info info)
static

Definition at line 3299 of file M68KDisassembler.c.

◆ d68000_unlk()

static void d68000_unlk ( m68k_info info)
static

Definition at line 3380 of file M68KDisassembler.c.

◆ d68010_bkpt()

static void d68010_bkpt ( m68k_info info)
static

Definition at line 1509 of file M68KDisassembler.c.

◆ d68010_move_fr_ccr()

static void d68010_move_fr_ccr ( m68k_info info)
static

Definition at line 2504 of file M68KDisassembler.c.

◆ d68010_movec()

static void d68010_movec ( m68k_info info)
static

Definition at line 2585 of file M68KDisassembler.c.

◆ d68010_moves_16()

static void d68010_moves_16 ( m68k_info info)
static

Definition at line 2688 of file M68KDisassembler.c.

◆ d68010_moves_32()

static void d68010_moves_32 ( m68k_info info)
static

Definition at line 2695 of file M68KDisassembler.c.

◆ d68010_moves_8()

static void d68010_moves_8 ( m68k_info info)
static

Definition at line 2682 of file M68KDisassembler.c.

◆ d68010_rtd()

static void d68010_rtd ( m68k_info info)
static

Definition at line 3089 of file M68KDisassembler.c.

◆ d68020_bcc_32()

static void d68020_bcc_32 ( m68k_info info)
static

Definition at line 1483 of file M68KDisassembler.c.

◆ d68020_bfchg()

static void d68020_bfchg ( m68k_info info)
static

Definition at line 1515 of file M68KDisassembler.c.

◆ d68020_bfclr()

static void d68020_bfclr ( m68k_info info)
static

Definition at line 1522 of file M68KDisassembler.c.

◆ d68020_bfexts()

static void d68020_bfexts ( m68k_info info)
static

Definition at line 1528 of file M68KDisassembler.c.

◆ d68020_bfextu()

static void d68020_bfextu ( m68k_info info)
static

Definition at line 1534 of file M68KDisassembler.c.

◆ d68020_bfffo()

static void d68020_bfffo ( m68k_info info)
static

Definition at line 1540 of file M68KDisassembler.c.

◆ d68020_bfins()

static void d68020_bfins ( m68k_info info)
static

Definition at line 1546 of file M68KDisassembler.c.

◆ d68020_bfset()

static void d68020_bfset ( m68k_info info)
static

Definition at line 1561 of file M68KDisassembler.c.

◆ d68020_bftst()

static void d68020_bftst ( m68k_info info)
static

Definition at line 1567 of file M68KDisassembler.c.

◆ d68020_bra_32()

static void d68020_bra_32 ( m68k_info info)
static

Definition at line 1582 of file M68KDisassembler.c.

◆ d68020_bsr_32()

static void d68020_bsr_32 ( m68k_info info)
static

Definition at line 1608 of file M68KDisassembler.c.

◆ d68020_callm()

static void d68020_callm ( m68k_info info)
static

Definition at line 1624 of file M68KDisassembler.c.

◆ d68020_cas2_16()

static void d68020_cas2_16 ( m68k_info info)
static

Definition at line 1648 of file M68KDisassembler.c.

◆ d68020_cas2_32()

static void d68020_cas2_32 ( m68k_info info)
static

Definition at line 1653 of file M68KDisassembler.c.

◆ d68020_cas_16()

static void d68020_cas_16 ( m68k_info info)
static

Definition at line 1636 of file M68KDisassembler.c.

◆ d68020_cas_32()

static void d68020_cas_32 ( m68k_info info)
static

Definition at line 1642 of file M68KDisassembler.c.

◆ d68020_cas_8()

static void d68020_cas_8 ( m68k_info info)
static

Definition at line 1630 of file M68KDisassembler.c.

◆ d68020_chk2_cmp2_16()

static void d68020_chk2_cmp2_16 ( m68k_info info)
static

Definition at line 1675 of file M68KDisassembler.c.

◆ d68020_chk2_cmp2_32()

static void d68020_chk2_cmp2_32 ( m68k_info info)
static

Definition at line 1681 of file M68KDisassembler.c.

◆ d68020_chk2_cmp2_8()

static void d68020_chk2_cmp2_8 ( m68k_info info)
static

Definition at line 1669 of file M68KDisassembler.c.

◆ d68020_chk_32()

static void d68020_chk_32 ( m68k_info info)
static

Definition at line 1663 of file M68KDisassembler.c.

◆ d68020_cmpi_pcdi_16()

static void d68020_cmpi_pcdi_16 ( m68k_info info)
static

Definition at line 1755 of file M68KDisassembler.c.

◆ d68020_cmpi_pcdi_32()

static void d68020_cmpi_pcdi_32 ( m68k_info info)
static

Definition at line 1772 of file M68KDisassembler.c.

◆ d68020_cmpi_pcdi_8()

static void d68020_cmpi_pcdi_8 ( m68k_info info)
static

Definition at line 1738 of file M68KDisassembler.c.

◆ d68020_cmpi_pcix_16()

static void d68020_cmpi_pcix_16 ( m68k_info info)
static

Definition at line 1761 of file M68KDisassembler.c.

◆ d68020_cmpi_pcix_32()

static void d68020_cmpi_pcix_32 ( m68k_info info)
static

Definition at line 1778 of file M68KDisassembler.c.

◆ d68020_cmpi_pcix_8()

static void d68020_cmpi_pcix_8 ( m68k_info info)
static

Definition at line 1744 of file M68KDisassembler.c.

◆ d68020_cpbcc_16()

static void d68020_cpbcc_16 ( m68k_info info)
static

Definition at line 1807 of file M68KDisassembler.c.

◆ d68020_cpbcc_32()

static void d68020_cpbcc_32 ( m68k_info info)
static

Definition at line 1825 of file M68KDisassembler.c.

◆ d68020_cpdbcc()

static void d68020_cpdbcc ( m68k_info info)
static

Definition at line 1846 of file M68KDisassembler.c.

◆ d68020_cpgen()

static void d68020_cpgen ( m68k_info info)
static

Definition at line 1943 of file M68KDisassembler.c.

◆ d68020_cprestore()

static void d68020_cprestore ( m68k_info info)
static

Definition at line 2117 of file M68KDisassembler.c.

◆ d68020_cpsave()

static void d68020_cpsave ( m68k_info info)
static

Definition at line 2126 of file M68KDisassembler.c.

◆ d68020_cpscc()

static void d68020_cpscc ( m68k_info info)
static

Definition at line 2136 of file M68KDisassembler.c.

◆ d68020_cptrapcc_0()

static void d68020_cptrapcc_0 ( m68k_info info)
static

Definition at line 2149 of file M68KDisassembler.c.

◆ d68020_cptrapcc_16()

static void d68020_cptrapcc_16 ( m68k_info info)
static

Definition at line 2162 of file M68KDisassembler.c.

◆ d68020_cptrapcc_32()

static void d68020_cptrapcc_32 ( m68k_info info)
static

Definition at line 2185 of file M68KDisassembler.c.

◆ d68020_divl()

static void d68020_divl ( m68k_info info)
static

Definition at line 2234 of file M68KDisassembler.c.

◆ d68020_extb_32()

static void d68020_extb_32 ( m68k_info info)
static

Definition at line 2358 of file M68KDisassembler.c.

◆ d68020_link_32()

static void d68020_link_32 ( m68k_info info)
static

Definition at line 2388 of file M68KDisassembler.c.

◆ d68020_mull()

static void d68020_mull ( m68k_info info)
static

Definition at line 2779 of file M68KDisassembler.c.

◆ d68020_pack_mm()

static void d68020_pack_mm ( m68k_info info)
static

Definition at line 2933 of file M68KDisassembler.c.

◆ d68020_pack_rr()

static void d68020_pack_rr ( m68k_info info)
static

Definition at line 2927 of file M68KDisassembler.c.

◆ d68020_rtm()

static void d68020_rtm ( m68k_info info)
static

Definition at line 3102 of file M68KDisassembler.c.

◆ d68020_trapcc_0()

static void d68020_trapcc_0 ( m68k_info info)
static

Definition at line 3274 of file M68KDisassembler.c.

◆ d68020_trapcc_16()

static void d68020_trapcc_16 ( m68k_info info)
static

Definition at line 3282 of file M68KDisassembler.c.

◆ d68020_trapcc_32()

static void d68020_trapcc_32 ( m68k_info info)
static

Definition at line 3288 of file M68KDisassembler.c.

◆ d68020_tst_a_16()

static void d68020_tst_a_16 ( m68k_info info)
static

Definition at line 3327 of file M68KDisassembler.c.

◆ d68020_tst_a_32()

static void d68020_tst_a_32 ( m68k_info info)
static

Definition at line 3356 of file M68KDisassembler.c.

◆ d68020_tst_i_16()

static void d68020_tst_i_16 ( m68k_info info)
static

Definition at line 3345 of file M68KDisassembler.c.

◆ d68020_tst_i_32()

static void d68020_tst_i_32 ( m68k_info info)
static

Definition at line 3374 of file M68KDisassembler.c.

◆ d68020_tst_i_8()

static void d68020_tst_i_8 ( m68k_info info)
static

Definition at line 3316 of file M68KDisassembler.c.

◆ d68020_tst_pcdi_16()

static void d68020_tst_pcdi_16 ( m68k_info info)
static

Definition at line 3333 of file M68KDisassembler.c.

◆ d68020_tst_pcdi_32()

static void d68020_tst_pcdi_32 ( m68k_info info)
static

Definition at line 3362 of file M68KDisassembler.c.

◆ d68020_tst_pcdi_8()

static void d68020_tst_pcdi_8 ( m68k_info info)
static

Definition at line 3304 of file M68KDisassembler.c.

◆ d68020_tst_pcix_16()

static void d68020_tst_pcix_16 ( m68k_info info)
static

Definition at line 3339 of file M68KDisassembler.c.

◆ d68020_tst_pcix_32()

static void d68020_tst_pcix_32 ( m68k_info info)
static

Definition at line 3368 of file M68KDisassembler.c.

◆ d68020_tst_pcix_8()

static void d68020_tst_pcix_8 ( m68k_info info)
static

Definition at line 3310 of file M68KDisassembler.c.

◆ d68020_unpk_mm()

static void d68020_unpk_mm ( m68k_info info)
static

Definition at line 3397 of file M68KDisassembler.c.

◆ d68020_unpk_rr()

static void d68020_unpk_rr ( m68k_info info)
static

Definition at line 3391 of file M68KDisassembler.c.

◆ d68040_cinv()

static void d68040_cinv ( m68k_info info)
static

Definition at line 1687 of file M68KDisassembler.c.

◆ d68040_cpush()

static void d68040_cpush ( m68k_info info)
static

Definition at line 2208 of file M68KDisassembler.c.

◆ d68040_move16_ai_al()

static void d68040_move16_ai_al ( m68k_info info)
static

Definition at line 2749 of file M68KDisassembler.c.

◆ d68040_move16_al_ai()

static void d68040_move16_al_ai ( m68k_info info)
static

Definition at line 2759 of file M68KDisassembler.c.

◆ d68040_move16_al_pi()

static void d68040_move16_al_pi ( m68k_info info)
static

Definition at line 2739 of file M68KDisassembler.c.

◆ d68040_move16_pi_al()

static void d68040_move16_pi_al ( m68k_info info)
static

Definition at line 2729 of file M68KDisassembler.c.

◆ d68040_move16_pi_pi()

static void d68040_move16_pi_pi ( m68k_info info)
static

Definition at line 2719 of file M68KDisassembler.c.

◆ exists_reg_list()

static int exists_reg_list ( uint16_t regs,
uint8_t  count,
m68k_reg  reg 
)
static

Definition at line 3843 of file M68KDisassembler.c.

◆ fmove_fpcr()

static void fmove_fpcr ( m68k_info info,
uint  extension 
)
static

Definition at line 1873 of file M68KDisassembler.c.

◆ fmovem()

static void fmovem ( m68k_info info,
uint  extension 
)
static

Definition at line 1902 of file M68KDisassembler.c.

◆ get_ea_mode_op()

static void get_ea_mode_op ( m68k_info info,
cs_m68k_op op,
uint  instruction,
uint  size 
)
static

Definition at line 421 of file M68KDisassembler.c.

◆ get_with_index_address_mode()

static void get_with_index_address_mode ( m68k_info info,
cs_m68k_op op,
uint  instruction,
uint  size,
bool  is_pc 
)
static

Definition at line 336 of file M68KDisassembler.c.

◆ instruction_is_valid()

static int instruction_is_valid ( m68k_info info,
const unsigned int  word_check 
)
static

Definition at line 3829 of file M68KDisassembler.c.

◆ m68k_disassemble()

static unsigned int m68k_disassemble ( m68k_info info,
uint64_t  pc 
)
static

Definition at line 4018 of file M68KDisassembler.c.

◆ M68K_getInstruction()

bool M68K_getInstruction ( csh  ud,
const uint8_t code,
size_t  code_len,
MCInst instr,
uint16_t size,
uint64_t  address,
void *  inst_info 
)

Definition at line 4047 of file M68KDisassembler.c.

◆ m68k_read_disassembler_16()

static unsigned int m68k_read_disassembler_16 ( const m68k_info info,
const uint64_t  addr 
)
static

Definition at line 159 of file M68KDisassembler.c.

◆ m68k_read_disassembler_32()

static unsigned int m68k_read_disassembler_32 ( const m68k_info info,
const uint64_t  addr 
)
static

Definition at line 166 of file M68KDisassembler.c.

◆ m68k_read_disassembler_64()

static uint64_t m68k_read_disassembler_64 ( const m68k_info info,
const uint64_t  addr 
)
static

Definition at line 175 of file M68KDisassembler.c.

◆ m68k_read_safe_16()

static unsigned int m68k_read_safe_16 ( const m68k_info info,
const uint64_t  address 
)
static

Definition at line 188 of file M68KDisassembler.c.

◆ m68k_read_safe_32()

static unsigned int m68k_read_safe_32 ( const m68k_info info,
const uint64_t  address 
)
static

Definition at line 197 of file M68KDisassembler.c.

◆ m68k_read_safe_64()

static uint64_t m68k_read_safe_64 ( const m68k_info info,
const uint64_t  address 
)
static

Definition at line 206 of file M68KDisassembler.c.

◆ m68k_setup_internals()

static void m68k_setup_internals ( m68k_info info,
MCInst inst,
unsigned int  pc,
unsigned int  cpu_type 
)
static

Definition at line 3974 of file M68KDisassembler.c.

◆ make_cpbcc_operand()

static void make_cpbcc_operand ( cs_m68k_op op,
int  size,
int  displacement 
)
static

Definition at line 1799 of file M68KDisassembler.c.

◆ make_int_16()

static int make_int_16 ( int  value)
static

Definition at line 331 of file M68KDisassembler.c.

◆ make_int_8()

static int make_int_8 ( int  value)
static

Definition at line 326 of file M68KDisassembler.c.

◆ peek_imm_16()

static unsigned int peek_imm_16 ( const m68k_info info)
static

Definition at line 302 of file M68KDisassembler.c.

◆ peek_imm_32()

static unsigned int peek_imm_32 ( const m68k_info info)
static

Definition at line 303 of file M68KDisassembler.c.

◆ peek_imm_64()

static unsigned long long peek_imm_64 ( const m68k_info info)
static

Definition at line 304 of file M68KDisassembler.c.

◆ peek_imm_8()

static unsigned int peek_imm_8 ( const m68k_info info)
static

Definition at line 301 of file M68KDisassembler.c.

◆ read_imm_16()

static unsigned int read_imm_16 ( m68k_info info)
static

Definition at line 307 of file M68KDisassembler.c.

◆ read_imm_32()

static unsigned int read_imm_32 ( m68k_info info)
static

Definition at line 308 of file M68KDisassembler.c.

◆ read_imm_64()

static unsigned long long read_imm_64 ( m68k_info info)
static

Definition at line 309 of file M68KDisassembler.c.

◆ read_imm_8()

static unsigned int read_imm_8 ( m68k_info info)
static

Definition at line 306 of file M68KDisassembler.c.

◆ reverse_bits()

static uint16_t reverse_bits ( uint  v)
static

Definition at line 895 of file M68KDisassembler.c.

◆ reverse_bits_8()

static uint8_t reverse_bits_8 ( uint  v)
static

Definition at line 909 of file M68KDisassembler.c.

◆ set_insn_group()

static void set_insn_group ( m68k_info info,
m68k_group_type  group 
)
static

Definition at line 515 of file M68KDisassembler.c.

◆ update_am_reg_list()

static void update_am_reg_list ( m68k_info info,
cs_m68k_op op,
int  write 
)
static

Definition at line 3878 of file M68KDisassembler.c.

◆ update_bits_range()

static void update_bits_range ( m68k_info info,
m68k_reg  reg_start,
uint8_t  bits,
int  write 
)
static

Definition at line 3914 of file M68KDisassembler.c.

◆ update_op_reg_list()

static void update_op_reg_list ( m68k_info info,
cs_m68k_op op,
int  write 
)
static

Definition at line 3933 of file M68KDisassembler.c.

◆ update_reg_list_regbits()

static void update_reg_list_regbits ( m68k_info info,
cs_m68k_op op,
int  write 
)
static

Definition at line 3925 of file M68KDisassembler.c.

◆ valid_ea()

static int valid_ea ( uint  opcode,
uint  mask 
)
static

Definition at line 3726 of file M68KDisassembler.c.

Variable Documentation

◆ g_3bit_qdata_table

uint g_3bit_qdata_table[8] = {8, 1, 2, 3, 4, 5, 6, 7}
static

Definition at line 254 of file M68KDisassembler.c.

◆ g_5bit_data_table

uint g_5bit_data_table[32]
static
Initial value:
= {
32, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
}

Definition at line 256 of file M68KDisassembler.c.

◆ g_instruction_table

instruction_struct g_instruction_table[0x10000]
static

Definition at line 251 of file M68KDisassembler.c.

◆ g_opcode_info

opcode_struct g_opcode_info[]
static

Definition at line 3422 of file M68KDisassembler.c.

◆ s_branch_lut

m68k_insn s_branch_lut[]
static

◆ s_dbcc_lut

m68k_insn s_dbcc_lut[]
static

◆ s_scc_lut

m68k_insn s_scc_lut[]
static

◆ s_trap_lut

m68k_insn s_trap_lut[]
static
M68K_INS_SCC
@ M68K_INS_SCC
Definition: m68k.h:547
M68K_INS_DBCS
@ M68K_INS_DBCS
Definition: m68k.h:281
M68K_INS_TRAPPL
@ M68K_INS_TRAPPL
Definition: m68k.h:583
M68K_INS_TRAPCC
@ M68K_INS_TRAPCC
Definition: m68k.h:575
M68K_INS_TRAPVC
@ M68K_INS_TRAPVC
Definition: m68k.h:581
M68K_INS_SVS
@ M68K_INS_SVS
Definition: m68k.h:554
M68K_INS_BCC
@ M68K_INS_BCC
Definition: m68k.h:232
M68K_INS_TRAPVS
@ M68K_INS_TRAPVS
Definition: m68k.h:582
M68K_INS_TRAPT
@ M68K_INS_TRAPT
Definition: m68k.h:571
M68K_INS_DBMI
@ M68K_INS_DBMI
Definition: m68k.h:287
M68K_INS_SPL
@ M68K_INS_SPL
Definition: m68k.h:555
M68K_INS_TRAPEQ
@ M68K_INS_TRAPEQ
Definition: m68k.h:580
M68K_INS_BNE
@ M68K_INS_BNE
Definition: m68k.h:234
M68K_INS_SLE
@ M68K_INS_SLE
Definition: m68k.h:560
M68K_INS_TRAPNE
@ M68K_INS_TRAPNE
Definition: m68k.h:579
M68K_INS_BLS
@ M68K_INS_BLS
Definition: m68k.h:231
M68K_INS_BHI
@ M68K_INS_BHI
Definition: m68k.h:230
M68K_INS_BGT
@ M68K_INS_BGT
Definition: m68k.h:242
M68K_INS_DBVC
@ M68K_INS_DBVC
Definition: m68k.h:284
M68K_INS_DBVS
@ M68K_INS_DBVS
Definition: m68k.h:285
M68K_INS_TRAPGT
@ M68K_INS_TRAPGT
Definition: m68k.h:587
M68K_INS_SEQ
@ M68K_INS_SEQ
Definition: m68k.h:552
M68K_INS_SGT
@ M68K_INS_SGT
Definition: m68k.h:559
M68K_INS_BCS
@ M68K_INS_BCS
Definition: m68k.h:233
M68K_INS_SCS
@ M68K_INS_SCS
Definition: m68k.h:549
M68K_INS_TRAPF
@ M68K_INS_TRAPF
Definition: m68k.h:572
M68K_INS_BPL
@ M68K_INS_BPL
Definition: m68k.h:238
M68K_INS_DBGE
@ M68K_INS_DBGE
Definition: m68k.h:288
M68K_INS_TRAPGE
@ M68K_INS_TRAPGE
Definition: m68k.h:585
M68K_INS_BGE
@ M68K_INS_BGE
Definition: m68k.h:240
M68K_INS_BLT
@ M68K_INS_BLT
Definition: m68k.h:241
M68K_INS_BEQ
@ M68K_INS_BEQ
Definition: m68k.h:235
M68K_INS_DBLS
@ M68K_INS_DBLS
Definition: m68k.h:279
M68K_INS_TRAPCS
@ M68K_INS_TRAPCS
Definition: m68k.h:577
M68K_INS_DBCC
@ M68K_INS_DBCC
Definition: m68k.h:280
M68K_INS_TRAPLT
@ M68K_INS_TRAPLT
Definition: m68k.h:586
M68K_INS_TRAPLE
@ M68K_INS_TRAPLE
Definition: m68k.h:588
M68K_INS_SLS
@ M68K_INS_SLS
Definition: m68k.h:546
M68K_INS_DBT
@ M68K_INS_DBT
Definition: m68k.h:276
M68K_INS_INVALID
@ M68K_INS_INVALID
Definition: m68k.h:216
M68K_INS_TRAPLS
@ M68K_INS_TRAPLS
Definition: m68k.h:574
M68K_INS_BLE
@ M68K_INS_BLE
Definition: m68k.h:243
M68K_INS_SNE
@ M68K_INS_SNE
Definition: m68k.h:551
M68K_INS_SVC
@ M68K_INS_SVC
Definition: m68k.h:553
M68K_INS_DBLE
@ M68K_INS_DBLE
Definition: m68k.h:291
M68K_INS_ST
@ M68K_INS_ST
Definition: m68k.h:543
M68K_INS_BVS
@ M68K_INS_BVS
Definition: m68k.h:237
M68K_INS_SHI
@ M68K_INS_SHI
Definition: m68k.h:545
M68K_INS_DBNE
@ M68K_INS_DBNE
Definition: m68k.h:282
M68K_INS_SLT
@ M68K_INS_SLT
Definition: m68k.h:558
M68K_INS_BMI
@ M68K_INS_BMI
Definition: m68k.h:239
M68K_INS_SGE
@ M68K_INS_SGE
Definition: m68k.h:557
M68K_INS_DBF
@ M68K_INS_DBF
Definition: m68k.h:277
M68K_INS_DBGT
@ M68K_INS_DBGT
Definition: m68k.h:290
M68K_INS_DBLT
@ M68K_INS_DBLT
Definition: m68k.h:289
M68K_INS_SMI
@ M68K_INS_SMI
Definition: m68k.h:556
M68K_INS_TRAPHI
@ M68K_INS_TRAPHI
Definition: m68k.h:573
M68K_INS_DBHI
@ M68K_INS_DBHI
Definition: m68k.h:278
M68K_INS_SF
@ M68K_INS_SF
Definition: m68k.h:544
M68K_INS_DBEQ
@ M68K_INS_DBEQ
Definition: m68k.h:283
M68K_INS_DBPL
@ M68K_INS_DBPL
Definition: m68k.h:286
M68K_INS_BVC
@ M68K_INS_BVC
Definition: m68k.h:236
M68K_INS_TRAPMI
@ M68K_INS_TRAPMI
Definition: m68k.h:584


grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:22