gprofng: fix build with -mx32
[binutils-gdb/blckswan.git] / bfd / cpu-xc16x.c
blobbd10242a94b66ae16ae2f8402b5888050ce09a51
1 /* BFD support for the Infineon XC16X Microcontroller.
2 Copyright (C) 2006-2022 Free Software Foundation, Inc.
3 Contributed by KPIT Cummins Infosystems
5 This file is part of BFD, the Binary File Descriptor library.
6 Contributed by Anil Paranjpe(anilp1@kpitcummins.com)
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
21 02110-1301, USA. */
23 #include "sysdep.h"
24 #include "bfd.h"
25 #include "libbfd.h"
27 #define N(BITS_ADDR, NUMBER, PRINT, DEFAULT, NEXT) \
28 { \
29 16, /* Bits in a word. */ \
30 BITS_ADDR, /* Bits in an address. */ \
31 8, /* Bits in a byte. */ \
32 bfd_arch_xc16x, \
33 NUMBER, \
34 "xc16x", \
35 PRINT, \
36 1, /* Section alignment power. */ \
37 DEFAULT, \
38 bfd_default_compatible, \
39 bfd_default_scan, \
40 bfd_arch_default_fill, \
41 NEXT, \
42 0 /* Maximum offset of a reloc from the start of an insn. */ \
45 const bfd_arch_info_type xc16xs_info_struct =
46 N (16, bfd_mach_xc16xs, "xc16xs", false, NULL);
48 const bfd_arch_info_type xc16xl_info_struct =
49 N (32, bfd_mach_xc16xl, "xc16xl", false, & xc16xs_info_struct);
51 const bfd_arch_info_type bfd_xc16x_arch =
52 N (16, bfd_mach_xc16x, "xc16x", true, & xc16xl_info_struct);