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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gdb-7.1/] [include/] [coff/] [i860.h] - Diff between revs 227 and 816

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 227 Rev 816
/* COFF information for the Intel i860.
/* COFF information for the Intel i860.
 
 
   Copyright 2001, 2003 Free Software Foundation, Inc.
   Copyright 2001, 2003 Free Software Foundation, Inc.
 
 
   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., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
 
 
/* This file was hacked from i386.h   [dolan@ssd.intel.com] */
/* This file was hacked from i386.h   [dolan@ssd.intel.com] */
 
 
#define L_LNNO_SIZE 2
#define L_LNNO_SIZE 2
#include "coff/external.h"
#include "coff/external.h"
 
 
/* Bits for f_flags:
/* Bits for f_flags:
        F_RELFLG        relocation info stripped from file
        F_RELFLG        relocation info stripped from file
        F_EXEC          file is executable (no unresolved external references)
        F_EXEC          file is executable (no unresolved external references)
        F_LNNO          line numbers stripped from file
        F_LNNO          line numbers stripped from file
        F_LSYMS         local symbols stripped from file
        F_LSYMS         local symbols stripped from file
        F_AR32WR        file has byte ordering of an AR32WR machine (e.g. vax).  */
        F_AR32WR        file has byte ordering of an AR32WR machine (e.g. vax).  */
 
 
#define F_RELFLG        (0x0001)
#define F_RELFLG        (0x0001)
#define F_EXEC          (0x0002)
#define F_EXEC          (0x0002)
#define F_LNNO          (0x0004)
#define F_LNNO          (0x0004)
#define F_LSYMS         (0x0008)
#define F_LSYMS         (0x0008)
 
 
#define I860MAGIC       0x14d
#define I860MAGIC       0x14d
 
 
#define I860BADMAG(x)   ((x).f_magic != I860MAGIC)
#define I860BADMAG(x)   ((x).f_magic != I860MAGIC)
 
 
#undef AOUTSZ
#undef AOUTSZ
#define AOUTSZ 36
#define AOUTSZ 36
 
 
/* FIXME: What are the a.out magic numbers?  */
/* FIXME: What are the a.out magic numbers?  */
 
 
#define _ETEXT  "etext"
#define _ETEXT  "etext"
 
 
/********************** RELOCATION DIRECTIVES **********************/
/********************** RELOCATION DIRECTIVES **********************/
 
 
struct external_reloc
struct external_reloc
{
{
  char r_vaddr[4];
  char r_vaddr[4];
  char r_symndx[4];
  char r_symndx[4];
  char r_type[2];
  char r_type[2];
};
};
 
 
#define RELOC struct external_reloc
#define RELOC struct external_reloc
#define RELSZ 10
#define RELSZ 10
 
 
/* The relocation directory entry types.
/* The relocation directory entry types.
     PAIR   : The low half that follows relates to the preceeding HIGH[ADJ].
     PAIR   : The low half that follows relates to the preceeding HIGH[ADJ].
     HIGH   : The high half of a 32-bit constant.
     HIGH   : The high half of a 32-bit constant.
     LOWn   : The low half, insn bits 15..(n-1), 2^n-byte aligned.
     LOWn   : The low half, insn bits 15..(n-1), 2^n-byte aligned.
     SPLITn : The low half, insn bits 20..16 and 10..(n-1), 2^n-byte aligned.
     SPLITn : The low half, insn bits 20..16 and 10..(n-1), 2^n-byte aligned.
     HIGHADJ: Similar to HIGH, but with adjustment.
     HIGHADJ: Similar to HIGH, but with adjustment.
     BRADDR : 26-bit branch displacement.
     BRADDR : 26-bit branch displacement.
 
 
   Note: The Intel assembler manual lists LOW4 as one of the
   Note: The Intel assembler manual lists LOW4 as one of the
   relocation types, but it appears to be useless for the i860.
   relocation types, but it appears to be useless for the i860.
   We will recognize it anyway, just in case it actually appears in
   We will recognize it anyway, just in case it actually appears in
   any object files.  */
   any object files.  */
 
 
enum {
enum {
  COFF860_R_PAIR        = 0x1c,
  COFF860_R_PAIR        = 0x1c,
  COFF860_R_HIGH        = 0x1e,
  COFF860_R_HIGH        = 0x1e,
  COFF860_R_LOW0        = 0x1f,
  COFF860_R_LOW0        = 0x1f,
  COFF860_R_LOW1        = 0x20,
  COFF860_R_LOW1        = 0x20,
  COFF860_R_LOW2        = 0x21,
  COFF860_R_LOW2        = 0x21,
  COFF860_R_LOW3        = 0x22,
  COFF860_R_LOW3        = 0x22,
  COFF860_R_LOW4        = 0x23,
  COFF860_R_LOW4        = 0x23,
  COFF860_R_SPLIT0      = 0x24,
  COFF860_R_SPLIT0      = 0x24,
  COFF860_R_SPLIT1      = 0x25,
  COFF860_R_SPLIT1      = 0x25,
  COFF860_R_SPLIT2      = 0x26,
  COFF860_R_SPLIT2      = 0x26,
  COFF860_R_HIGHADJ     = 0x27,
  COFF860_R_HIGHADJ     = 0x27,
  COFF860_R_BRADDR      = 0x28
  COFF860_R_BRADDR      = 0x28
};
};
 
 
 
 

powered by: WebSVN 2.1.0

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