/* BFD support for the ft32 processor.
   Copyright (C) 2013-2018 Free Software Foundation, Inc.
   Written by FTDI (support@ftdichip.com)

   This file is part of BFD, the Binary File Descriptor library.

   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 3 of the License, or
   (at your option) any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software Foundation,
   Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */

#include "sysdep.h"
#include "bfd.h"
#include "libbfd.h"


static const bfd_arch_info_type arch_info_struct[] =
  {
    {
      32,		/* 32 bits in a word.  */
      32,		/* 32 bits in an address.  */
      8,		/*  8 bits in a byte.  */
      bfd_arch_ft32,	/* enum bfd_architecture arch.  */
      bfd_mach_ft32,
      "ft32",		/* Arch name.  */
      "ft32",		/* Printable name.  */
      2,		/* Unsigned int section alignment power.  */
      FALSE,		/* The one and only.  */
      bfd_default_compatible,
      bfd_default_scan,
      bfd_arch_default_fill,
      &arch_info_struct[1],
    },
    {
      32,		/* 32 bits in a word.  */
      32,		/* 32 bits in an address.  */
      8,		/*  8 bits in a byte.  */
      bfd_arch_ft32,	/* enum bfd_architecture arch.  */
      bfd_mach_ft32b,
      "ft32b",		/* Arch name.  */
      "ft32b",		/* Printable name.  */
      2,		/* Unsigned int section alignment power.  */
      FALSE,		/* The one and only.  */
      bfd_default_compatible,
      bfd_default_scan,
      bfd_arch_default_fill,
      0,
    },
  };

const bfd_arch_info_type bfd_ft32_arch =
  {
    32,			/* 32 bits in a word.  */
    32,			/* 32 bits in an address.  */
    8,			/*  8 bits in a byte.  */
    bfd_arch_ft32,	/* enum bfd_architecture arch.  */
    bfd_mach_ft32,
    "ft32",		/* Arch name.  */
    "ft32",		/* Printable name.  */
    2,			/* Unsigned int section alignment power.  */
    TRUE,		/* The one and only.  */
    bfd_default_compatible,
    bfd_default_scan,
    bfd_arch_default_fill,
    arch_info_struct,
  };
