(root)/
binutils-2.41/
opcodes/
disassemble.h
       1  /* Header only used inside opcodes library for disassemble.
       2  
       3     Copyright (C) 2017-2023 Free Software Foundation, Inc.
       4  
       5     This program is free software; you can redistribute it and/or modify
       6     it under the terms of the GNU General Public License as published by
       7     the Free Software Foundation; either version 3, or (at your option)
       8     any later version.
       9  
      10     This program is distributed in the hope that it will be useful,
      11     but WITHOUT ANY WARRANTY; without even the implied warranty of
      12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      13     GNU General Public License for more details.
      14  
      15     You should have received a copy of the GNU General Public License
      16     along with this program; if not, write to the Free Software
      17     Foundation, Inc., 51 Franklin Street - Fifth Floor,
      18     Boston, MA 02110-1301, USA.  */
      19  
      20  #ifndef DISASSEMBLE_H
      21  #define DISASSEMBLE_H
      22  #include "dis-asm.h"
      23  
      24  extern int print_insn_aarch64		(bfd_vma, disassemble_info *);
      25  extern int print_insn_alpha		(bfd_vma, disassemble_info *);
      26  extern int print_insn_avr		(bfd_vma, disassemble_info *);
      27  extern int print_insn_bfin		(bfd_vma, disassemble_info *);
      28  extern int print_insn_big_arm		(bfd_vma, disassemble_info *);
      29  extern int print_insn_big_mips		(bfd_vma, disassemble_info *);
      30  extern int print_insn_big_nios2	(bfd_vma, disassemble_info *);
      31  extern int print_insn_big_powerpc	(bfd_vma, disassemble_info *);
      32  extern int print_insn_big_score         (bfd_vma, disassemble_info *);
      33  extern int print_insn_cr16              (bfd_vma, disassemble_info *);
      34  extern int print_insn_crx               (bfd_vma, disassemble_info *);
      35  extern int print_insn_csky		(bfd_vma, disassemble_info *);
      36  extern int print_insn_d10v		(bfd_vma, disassemble_info *);
      37  extern int print_insn_d30v		(bfd_vma, disassemble_info *);
      38  extern int print_insn_dlx		(bfd_vma, disassemble_info *);
      39  extern int print_insn_bpf		(bfd_vma, disassemble_info *);
      40  extern int print_insn_epiphany		(bfd_vma, disassemble_info *);
      41  extern int print_insn_fr30		(bfd_vma, disassemble_info *);
      42  extern int print_insn_frv		(bfd_vma, disassemble_info *);
      43  extern int print_insn_ft32		(bfd_vma, disassemble_info *);
      44  extern int print_insn_h8300		(bfd_vma, disassemble_info *);
      45  extern int print_insn_h8300h		(bfd_vma, disassemble_info *);
      46  extern int print_insn_h8300s		(bfd_vma, disassemble_info *);
      47  extern int print_insn_hppa		(bfd_vma, disassemble_info *);
      48  extern int print_insn_i386		(bfd_vma, disassemble_info *);
      49  extern int print_insn_i386_att		(bfd_vma, disassemble_info *);
      50  extern int print_insn_i386_intel	(bfd_vma, disassemble_info *);
      51  extern int print_insn_ia64		(bfd_vma, disassemble_info *);
      52  extern int print_insn_ip2k		(bfd_vma, disassemble_info *);
      53  extern int print_insn_iq2000		(bfd_vma, disassemble_info *);
      54  extern int print_insn_little_nios2	(bfd_vma, disassemble_info *);
      55  extern int print_insn_riscv		(bfd_vma, disassemble_info *);
      56  extern int print_insn_little_arm	(bfd_vma, disassemble_info *);
      57  extern int print_insn_little_mips	(bfd_vma, disassemble_info *);
      58  extern int print_insn_little_powerpc	(bfd_vma, disassemble_info *);
      59  extern int print_insn_little_score      (bfd_vma, disassemble_info *);
      60  extern int print_insn_lm32		(bfd_vma, disassemble_info *);
      61  extern int print_insn_m32r		(bfd_vma, disassemble_info *);
      62  extern int print_insn_m68hc11		(bfd_vma, disassemble_info *);
      63  extern int print_insn_m68hc12		(bfd_vma, disassemble_info *);
      64  extern int print_insn_m9s12x		(bfd_vma, disassemble_info *);
      65  extern int print_insn_m9s12xg		(bfd_vma, disassemble_info *);
      66  extern int print_insn_s12z		(bfd_vma, disassemble_info *);
      67  extern int print_insn_m68k		(bfd_vma, disassemble_info *);
      68  extern int print_insn_mcore		(bfd_vma, disassemble_info *);
      69  extern int print_insn_metag		(bfd_vma, disassemble_info *);
      70  extern int print_insn_microblaze	(bfd_vma, disassemble_info *);
      71  extern int print_insn_mmix		(bfd_vma, disassemble_info *);
      72  extern int print_insn_mn10200		(bfd_vma, disassemble_info *);
      73  extern int print_insn_mn10300		(bfd_vma, disassemble_info *);
      74  extern int print_insn_moxie		(bfd_vma, disassemble_info *);
      75  extern int print_insn_msp430		(bfd_vma, disassemble_info *);
      76  extern int print_insn_mt                (bfd_vma, disassemble_info *);
      77  extern int print_insn_nds32		(bfd_vma, disassemble_info *);
      78  extern int print_insn_nfp		(bfd_vma, disassemble_info *);
      79  extern int print_insn_ns32k		(bfd_vma, disassemble_info *);
      80  extern int print_insn_or1k		(bfd_vma, disassemble_info *);
      81  extern int print_insn_pdp11		(bfd_vma, disassemble_info *);
      82  extern int print_insn_pj		(bfd_vma, disassemble_info *);
      83  extern int print_insn_pru		(bfd_vma, disassemble_info *);
      84  extern int print_insn_s390		(bfd_vma, disassemble_info *);
      85  extern int print_insn_spu		(bfd_vma, disassemble_info *);
      86  extern int print_insn_tic30		(bfd_vma, disassemble_info *);
      87  extern int print_insn_tic4x		(bfd_vma, disassemble_info *);
      88  extern int print_insn_tic54x		(bfd_vma, disassemble_info *);
      89  extern int print_insn_tic6x		(bfd_vma, disassemble_info *);
      90  extern int print_insn_tilegx		(bfd_vma, disassemble_info *);
      91  extern int print_insn_tilepro		(bfd_vma, disassemble_info *);
      92  extern int print_insn_v850		(bfd_vma, disassemble_info *);
      93  extern int print_insn_vax		(bfd_vma, disassemble_info *);
      94  extern int print_insn_visium		(bfd_vma, disassemble_info *);
      95  extern int print_insn_wasm32		(bfd_vma, disassemble_info *);
      96  extern int print_insn_xgate             (bfd_vma, disassemble_info *);
      97  extern int print_insn_xstormy16		(bfd_vma, disassemble_info *);
      98  extern int print_insn_xtensa		(bfd_vma, disassemble_info *);
      99  extern int print_insn_z80		(bfd_vma, disassemble_info *);
     100  extern int print_insn_z8001		(bfd_vma, disassemble_info *);
     101  extern int print_insn_z8002		(bfd_vma, disassemble_info *);
     102  extern int print_insn_loongarch		(bfd_vma, disassemble_info *);
     103  
     104  extern disassembler_ftype csky_get_disassembler (bfd *);
     105  extern disassembler_ftype rl78_get_disassembler (bfd *);
     106  extern disassembler_ftype riscv_get_disassembler (bfd *);
     107  
     108  extern void disassemble_free_riscv (disassemble_info *);
     109  
     110  extern void ATTRIBUTE_NORETURN opcodes_assert (const char *, int);
     111  
     112  #define OPCODES_ASSERT(x) \
     113    do { if (!(x)) opcodes_assert (__FILE__, __LINE__); } while (0)
     114  
     115  #endif /* DISASSEMBLE_H */