X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2Fcpu-xc16x.c;h=3605c3c34bd8e7290e767651acdfdb365a4f6c78;hb=eb7b504651ff7b44a7328cd967629d8f1d114a4b;hp=11569003629f55597ebdc6bfeb7318459ff2e51e;hpb=01f0fe5e0450edf168c1f612feb93cf588e4e7ea;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/cpu-xc16x.c b/bfd/cpu-xc16x.c index 1156900362..3605c3c34b 100644 --- a/bfd/cpu-xc16x.c +++ b/bfd/cpu-xc16x.c @@ -1,13 +1,13 @@ /* BFD support for the Infineon XC16X Microcontroller. - Copyright 2006 Free Software Foundation, Inc. - Contributed by KPIT Cummins Infosystems + Copyright (C) 2006-2019 Free Software Foundation, Inc. + Contributed by KPIT Cummins Infosystems This file is part of BFD, the Binary File Descriptor library. Contributed by Anil Paranjpe(anilp1@kpitcummins.com) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,54 +20,34 @@ Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -#include "bfd.h" #include "sysdep.h" +#include "bfd.h" #include "libbfd.h" +#define N(BITS_ADDR, NUMBER, PRINT, DEFAULT, NEXT) \ + { \ + 16, /* Bits in a word. */ \ + BITS_ADDR, /* Bits in an address. */ \ + 8, /* Bits in a byte. */ \ + bfd_arch_xc16x, \ + NUMBER, \ + "xc16x", \ + PRINT, \ + 1, /* Section alignment power. */ \ + DEFAULT, \ + bfd_default_compatible, \ + bfd_default_scan, \ + bfd_arch_default_fill, \ + NEXT, \ + 0 /* Maximum offset of a reloc from the start of an insn. */ \ + } + const bfd_arch_info_type xc16xs_info_struct = -{ - 16, /* Bits per word. */ - 16, /* Bits per address. */ - 8, /* Bits per byte. */ - bfd_arch_xc16x, /* Architecture. */ - bfd_mach_xc16xs, /* Machine. */ - "xc16x", /* Architecture name. */ - "xc16xs", /* Printable name. */ - 1, /* Section alignment - 16 bit. */ - TRUE, /* The default ? */ - bfd_default_compatible, /* Architecture comparison fn. */ - bfd_default_scan, /* String to architecture convert fn. */ - NULL /* Next in list. */ -}; + N (16, bfd_mach_xc16xs, "xc16xs", FALSE, NULL); const bfd_arch_info_type xc16xl_info_struct = -{ - 16, /* Bits per word. */ - 32, /* Bits per address. */ - 8, /* Bits per byte. */ - bfd_arch_xc16x, /* Architecture. */ - bfd_mach_xc16xl, /* Machine. */ - "xc16x", /* Architecture name. */ - "xc16xl", /* Printable name. */ - 1, /* Section alignment - 16 bit. */ - TRUE, /* The default ? */ - bfd_default_compatible, /* Architecture comparison fn. */ - bfd_default_scan, /* String to architecture convert fn. */ - & xc16xs_info_struct /* Next in list. */ -}; + N (32, bfd_mach_xc16xl, "xc16xl", FALSE, & xc16xs_info_struct); const bfd_arch_info_type bfd_xc16x_arch = -{ - 16, /* Bits per word. */ - 16, /* Bits per address. */ - 8, /* Bits per byte. */ - bfd_arch_xc16x, /* Architecture. */ - bfd_mach_xc16x, /* Machine. */ - "xc16x", /* Architecture name. */ - "xc16x", /* Printable name. */ - 1, /* Section alignment - 16 bit. */ - TRUE, /* The default ? */ - bfd_default_compatible, /* Architecture comparison fn. */ - bfd_default_scan, /* String to architecture convert fn. */ - & xc16xl_info_struct /* Next in list. */ -}; + N (16, bfd_mach_xc16x, "xc16x", TRUE, & xc16xl_info_struct); +