OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [insight/] [bfd/] [cpu-i370.c] - Diff between revs 578 and 1765

Only display areas with differences | Details | Blame | View Log

Rev 578 Rev 1765
/* BFD i370 CPU definition
/* BFD i370 CPU definition
   Copyright 1994, 1995, 1996, 1998, 1999, 2000
   Copyright 1994, 1995, 1996, 1998, 1999, 2000
   Free Software Foundation, Inc.
   Free Software Foundation, Inc.
   Contributed by Ian Lance Taylor, Cygnus Support.
   Contributed by Ian Lance Taylor, Cygnus Support.
   Hacked by Linas Vepstas <linas@linas.org> in 1998, 1999
   Hacked by Linas Vepstas <linas@linas.org> in 1998, 1999
 
 
This file is part of BFD, the Binary File Descriptor library.
This file is part of BFD, the Binary File Descriptor library.
 
 
This program is free software; you can redistribute it and/or modify
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
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 2 of the License, or
(at your option) any later version.
(at your option) any later version.
 
 
This program is distributed in the hope that it will be useful,
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
GNU General Public License for more details.
 
 
You should have received a copy of the GNU General Public License
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 
#include "bfd.h"
#include "bfd.h"
#include "sysdep.h"
#include "sysdep.h"
#include "libbfd.h"
#include "libbfd.h"
 
 
/* The common i360/370 architecture comes in many forms  */
/* The common i360/370 architecture comes in many forms  */
 
 
static const bfd_arch_info_type *i370_compatible
static const bfd_arch_info_type *i370_compatible
  PARAMS ((const bfd_arch_info_type *, const bfd_arch_info_type *));
  PARAMS ((const bfd_arch_info_type *, const bfd_arch_info_type *));
 
 
static const bfd_arch_info_type *
static const bfd_arch_info_type *
i370_compatible (a, b)
i370_compatible (a, b)
     const bfd_arch_info_type *a;
     const bfd_arch_info_type *a;
     const bfd_arch_info_type *b;
     const bfd_arch_info_type *b;
{
{
  BFD_ASSERT (a->arch == bfd_arch_i370);
  BFD_ASSERT (a->arch == bfd_arch_i370);
  switch (b->arch)
  switch (b->arch)
    {
    {
    default:
    default:
      return NULL;
      return NULL;
    case bfd_arch_i370:
    case bfd_arch_i370:
      return bfd_default_compatible (a, b);
      return bfd_default_compatible (a, b);
    }
    }
  /*NOTREACHED*/
  /*NOTREACHED*/
}
}
 
 
static const bfd_arch_info_type arch_info_struct[] =
static const bfd_arch_info_type arch_info_struct[] =
{
{
  /* hack alert: old old machines are really 16 and 24 bit arch ...  */
  /* hack alert: old old machines are really 16 and 24 bit arch ...  */
  {
  {
    32, /* 32 bits in a word */
    32, /* 32 bits in a word */
    32, /* 32 bits in an address */
    32, /* 32 bits in an address */
    8,  /* 8 bits in a byte */
    8,  /* 8 bits in a byte */
    bfd_arch_i370,
    bfd_arch_i370,
    360, /* for the 360 */
    360, /* for the 360 */
    "i370",
    "i370",
    "i370:360",
    "i370:360",
    3,
    3,
    false, /* not the default */
    false, /* not the default */
    i370_compatible,
    i370_compatible,
    bfd_default_scan,
    bfd_default_scan,
    &arch_info_struct[1]
    &arch_info_struct[1]
  },
  },
  {
  {
    32, /* 32 bits in a word */
    32, /* 32 bits in a word */
    32, /* 32 bits in an address */
    32, /* 32 bits in an address */
    8,  /* 8 bits in a byte */
    8,  /* 8 bits in a byte */
    bfd_arch_i370,
    bfd_arch_i370,
    370, /* for the 370 */
    370, /* for the 370 */
    "i370",
    "i370",
    "i370:370",
    "i370:370",
    3,
    3,
    false, /* not the default */
    false, /* not the default */
    i370_compatible,
    i370_compatible,
    bfd_default_scan,
    bfd_default_scan,
    0
    0
  },
  },
};
};
 
 
const bfd_arch_info_type bfd_i370_arch =
const bfd_arch_info_type bfd_i370_arch =
  {
  {
    32, /* 32 bits in a word */
    32, /* 32 bits in a word */
    32, /* 32 bits in an address */
    32, /* 32 bits in an address */
    8,  /* 8 bits in a byte */
    8,  /* 8 bits in a byte */
    bfd_arch_i370,
    bfd_arch_i370,
    0,  /* for the 360/370 common architecture */
    0,  /* for the 360/370 common architecture */
    "i370",
    "i370",
    "i370:common",
    "i370:common",
    3,
    3,
    true, /* the default */
    true, /* the default */
    i370_compatible,
    i370_compatible,
    bfd_default_scan,
    bfd_default_scan,
    &arch_info_struct[0]
    &arch_info_struct[0]
  };
  };
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.