Add support to GDB for the Renesas rl78 architecture.
[external/binutils.git] / bfd / cpu-xc16x.c
1 /* BFD support for the Infineon XC16X Microcontroller.
2    Copyright 2006, 2007 Free Software Foundation, Inc.
3    Contributed by KPIT Cummins Infosystems 
4
5    This file is part of BFD, the Binary File Descriptor library.
6    Contributed by Anil Paranjpe(anilp1@kpitcummins.com)
7
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.
12
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.
17
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.  */
22
23 #include "sysdep.h"
24 #include "bfd.h"
25 #include "libbfd.h"
26
27 const bfd_arch_info_type xc16xs_info_struct =
28 {
29   16,                           /* Bits per word.  */
30   16,                           /* Bits per address.  */
31   8,                            /* Bits per byte.  */
32   bfd_arch_xc16x,               /* Architecture.  */
33   bfd_mach_xc16xs,              /* Machine.  */
34   "xc16x",                      /* Architecture name.  */
35   "xc16xs",                     /* Printable name.  */
36   1,                            /* Section alignment - 16 bit.  */
37   TRUE,                         /* The default ?  */
38   bfd_default_compatible,       /* Architecture comparison fn.  */
39   bfd_default_scan,             /* String to architecture convert fn.  */
40   bfd_arch_default_fill,        /* Default fill.  */
41   NULL                          /* Next in list.  */
42 };
43
44 const bfd_arch_info_type xc16xl_info_struct =
45 {
46   16,                           /* Bits per word.  */
47   32,                           /* Bits per address.  */
48   8,                            /* Bits per byte.  */
49   bfd_arch_xc16x,               /* Architecture.  */
50   bfd_mach_xc16xl,              /* Machine.  */
51   "xc16x",                      /* Architecture name.  */
52   "xc16xl",                     /* Printable name.  */
53   1,                            /* Section alignment - 16 bit.  */
54   TRUE,                         /* The default ?  */
55   bfd_default_compatible,       /* Architecture comparison fn.  */
56   bfd_default_scan,             /* String to architecture convert fn.  */
57   bfd_arch_default_fill,        /* Default fill.  */
58   & xc16xs_info_struct          /* Next in list.  */
59 };
60
61 const bfd_arch_info_type bfd_xc16x_arch =
62 {
63   16,                           /* Bits per word.  */
64   16,                           /* Bits per address.  */
65   8,                            /* Bits per byte.  */
66   bfd_arch_xc16x,               /* Architecture.  */
67   bfd_mach_xc16x,               /* Machine.  */
68   "xc16x",                      /* Architecture name.  */
69   "xc16x",                      /* Printable name.  */
70   1,                            /* Section alignment - 16 bit.  */
71   TRUE,                         /* The default ?  */
72   bfd_default_compatible,       /* Architecture comparison fn.  */
73   bfd_default_scan,             /* String to architecture convert fn.  */
74   bfd_arch_default_fill,        /* Default fill.  */
75   & xc16xl_info_struct          /* Next in list.  */
76 };