Home | History | Annotate | Line # | Download | only in bfd
      1   1.1  christos /* BFD support for the HP Precision Architecture architecture.
      2  1.10  christos    Copyright (C) 1992-2025 Free Software Foundation, Inc.
      3   1.1  christos 
      4   1.1  christos    This file is part of BFD, the Binary File Descriptor library.
      5   1.1  christos 
      6   1.1  christos    This program is free software; you can redistribute it and/or modify
      7   1.1  christos    it under the terms of the GNU General Public License as published by
      8   1.1  christos    the Free Software Foundation; either version 3 of the License, or
      9   1.1  christos    (at your option) any later version.
     10   1.1  christos 
     11   1.1  christos    This program is distributed in the hope that it will be useful,
     12   1.1  christos    but WITHOUT ANY WARRANTY; without even the implied warranty of
     13   1.1  christos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14   1.1  christos    GNU General Public License for more details.
     15   1.1  christos 
     16   1.1  christos    You should have received a copy of the GNU General Public License
     17   1.1  christos    along with this program; if not, write to the Free Software
     18   1.1  christos    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     19   1.1  christos    MA 02110-1301, USA.  */
     20   1.1  christos 
     21   1.1  christos #include "sysdep.h"
     22   1.1  christos #include "bfd.h"
     23   1.1  christos #include "libbfd.h"
     24   1.1  christos 
     25   1.7  christos #define N(BITS, NUMBER, PRINT, DEFAULT, NEXT) \
     26   1.7  christos   {							\
     27   1.7  christos     BITS,      /* Bits in a word.  */			\
     28   1.7  christos     BITS,      /* Bits in an address.  */		\
     29   1.7  christos     8,	       /* Bits in a byte.  */			\
     30   1.7  christos     bfd_arch_hppa,					\
     31   1.7  christos     NUMBER,						\
     32   1.7  christos     "hppa",						\
     33   1.7  christos     PRINT,						\
     34   1.7  christos     3,		/* Section alignment power.  */		\
     35   1.7  christos     DEFAULT,						\
     36   1.7  christos     bfd_default_compatible,				\
     37   1.7  christos     bfd_default_scan,					\
     38   1.7  christos     bfd_arch_default_fill,				\
     39   1.7  christos     NEXT,						\
     40   1.7  christos     0 /* Maximum offset of a reloc from the start of an insn.  */ \
     41   1.7  christos   }
     42   1.7  christos 
     43   1.7  christos 
     44   1.1  christos static const bfd_arch_info_type bfd_hppa10_arch =
     45   1.8  christos   N (32, bfd_mach_hppa10, "hppa1.0", true, NULL);
     46   1.1  christos 
     47   1.7  christos /* PA2.0 in narrow mode.  */
     48   1.1  christos static const bfd_arch_info_type bfd_hppa20_arch =
     49   1.8  christos   N (32, bfd_mach_hppa20, "hppa2.0", false, &bfd_hppa10_arch);
     50   1.1  christos 
     51   1.7  christos /* PA2.0 in wide mode.  */
     52   1.1  christos static const bfd_arch_info_type bfd_hppa20w_arch =
     53   1.8  christos   N (64, bfd_mach_hppa20w, "hppa2.0w", false, &bfd_hppa20_arch);
     54   1.1  christos 
     55   1.1  christos const bfd_arch_info_type bfd_hppa_arch =
     56   1.8  christos   N (32, bfd_mach_hppa11, "hppa1.1", false, &bfd_hppa20w_arch);
     57