summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/include/coff
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2002-12-02 09:06:04 +0000
committerobrien <obrien@FreeBSD.org>2002-12-02 09:06:04 +0000
commit4f4b0b5073010ff850cc95a6bd074066eeb7dccb (patch)
treeb6de1df6076881154726637e90c9d9bae94bab79 /contrib/binutils/include/coff
parent70d0c6024ff722929b55e70683c5bb4bd3d3b07f (diff)
downloadFreeBSD-src-4f4b0b5073010ff850cc95a6bd074066eeb7dccb.zip
FreeBSD-src-4f4b0b5073010ff850cc95a6bd074066eeb7dccb.tar.gz
Import of Binutils from the FSF 2.13 branch (just pre-.2 release).
These bits are taken from the FSF anoncvs repo on 27-Oct-2002 21:12:00 EST.
Diffstat (limited to 'contrib/binutils/include/coff')
-rw-r--r--contrib/binutils/include/coff/tic30.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/contrib/binutils/include/coff/tic30.h b/contrib/binutils/include/coff/tic30.h
new file mode 100644
index 0000000..30bf9dc
--- /dev/null
+++ b/contrib/binutils/include/coff/tic30.h
@@ -0,0 +1,50 @@
+/* coff information for Texas Instruments TMS320C3X
+
+ Copyright 2001 Free Software Foundation, Inc.
+
+ 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
+ (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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define L_LNNO_SIZE 4
+#include "coff/external.h"
+
+#define TIC30MAGIC 0xC000
+
+#define TIC30BADMAG(x) (((x).f_magic != TIC30MAGIC))
+
+/********************** RELOCATION DIRECTIVES **********************/
+
+/* The external reloc has an offset field, because some of the reloc
+ types on the z8k don't have room in the instruction for the entire
+ offset - eg with segments */
+
+struct external_reloc
+{
+ char r_vaddr[4];
+ char r_symndx[4];
+ char r_offset[4];
+ char r_type[2];
+ char r_stuff[2];
+};
+
+#define RELOC struct external_reloc
+#define RELSZ 16
+
+/* TMS320C30 relocation types. */
+
+#define R_TIC30_ABS16 0x100 /* 16 bit absolute. */
+#define R_TIC30_ABS24 0x101 /* 24 bit absolute. */
+#define R_TIC30_ABS32 0x102 /* 32 bit absolute. */
+#define R_TIC30_LDP 0x103 /* LDP bits 23-16 to 7-0. */
+#define R_TIC30_PC16 0x104 /* 16 bit pc relative. */
OpenPOWER on IntegriCloud