summaryrefslogtreecommitdiffstats
path: root/include/coff
diff options
context:
space:
mode:
authorcvs2svn <>2002-08-29 06:49:36 +0000
committercvs2svn <>2002-08-29 06:49:36 +0000
commite29580df9f56e884ebb55f5681f2703fe75228a3 (patch)
tree637f9cea54ac4767e73f1e1053f440fd266c0e36 /include/coff
parente3853f659096680f4953e1ec051d10b1f0ff084e (diff)
downloadcygnal-e29580df9f56e884ebb55f5681f2703fe75228a3.tar.gz
cygnal-e29580df9f56e884ebb55f5681f2703fe75228a3.tar.bz2
cygnal-e29580df9f56e884ebb55f5681f2703fe75228a3.zip
This commit was manufactured by cvs2svn to create branch 'gdb_5_3-branch'.kseitz_interps-20020829-mergegdb_5_3-2002-12-12-releasegdb_5_3-2002-09-04-branchpoint
Sprout from cagney_sysregs-20020825-branch 2002-08-23 22:24:59 UTC cvs2svn 'This commit was manufactured by cvs2svn to create branch' Cherrypick from master 2002-08-29 06:49:35 UTC Nick Clifton <nickc@redhat.com> 'Add linker relaxation to v850 toolchain': include/ChangeLog include/coff/internal.h include/coff/ti.h include/coff/tic4x.h include/dis-asm.h include/elf/ChangeLog include/elf/v850.h include/opcode/tic4x.h
Diffstat (limited to 'include/coff')
-rw-r--r--include/coff/internal.h4
-rw-r--r--include/coff/ti.h1
-rw-r--r--include/coff/tic4x.h46
3 files changed, 51 insertions, 0 deletions
diff --git a/include/coff/internal.h b/include/coff/internal.h
index 4babbd4de..b9b6368f0 100644
--- a/include/coff/internal.h
+++ b/include/coff/internal.h
@@ -600,6 +600,7 @@ struct internal_reloc
};
#define R_DIR16 1
+#define R_REL24 5
#define R_DIR32 6
#define R_IMAGEBASE 7
#define R_RELBYTE 15
@@ -608,12 +609,15 @@ struct internal_reloc
#define R_PCRBYTE 18
#define R_PCRWORD 19
#define R_PCRLONG 20
+#define R_PCR24 21
#define R_IPRSHORT 24
#define R_IPRLONG 26
#define R_GETSEG 29
#define R_GETPA 30
#define R_TAGWORD 31
#define R_JUMPTARG 32 /* strange 29k 00xx00xx reloc */
+#define R_PARTLS16 32
+#define R_PARTMS8 33
#define R_PCR16L 128
#define R_PCR26L 129
diff --git a/include/coff/ti.h b/include/coff/ti.h
index d98fc89bd..0a59b226a 100644
--- a/include/coff/ti.h
+++ b/include/coff/ti.h
@@ -118,6 +118,7 @@ struct external_filehdr
#define F_RELFLG (0x0001)
#define F_EXEC (0x0002)
#define F_LNNO (0x0004)
+#define F_VERS (0x0010) /* TMS320C4x code */
/* F_LSYMS needs to be redefined in your source file */
#define F_LSYMS_TICOFF (0x0010) /* normal COFF is 0x8 */
diff --git a/include/coff/tic4x.h b/include/coff/tic4x.h
new file mode 100644
index 000000000..03215fb53
--- /dev/null
+++ b/include/coff/tic4x.h
@@ -0,0 +1,46 @@
+/* TI COFF information for Texas Instruments TMS320C4X/C3X.
+ This file customizes the settings in coff/ti.h.
+
+ Copyright 2002 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. */
+
+#ifndef COFF_TIC4X_H
+#define COFF_TIC4X_H
+
+#define TIC4X_TARGET_ID 0x0093
+/* Octets per byte, as a power of two. */
+#define TI_TARGET_ID TIC4X_TARGET_ID
+#define OCTETS_PER_BYTE_POWER 2
+/* Add to howto to get absolute/sect-relative version. */
+#define HOWTO_BANK 6
+#define TICOFF_TARGET_ARCH bfd_arch_tic4x
+/* We use COFF2. */
+#define TICOFF_DEFAULT_MAGIC TICOFF2MAGIC
+
+#define TICOFF_TARGET_MACHINE_GET (FLAGS) \
+ (((FLAGS) & F_VERS) ? bfd_mach_c4x : bfd_mach_c3x)
+
+#define TICOFF_TARGET_MACHINE_SET (FLAGSP, MACHINE) \
+ do \
+ { \
+ if ((MACHINE) == bfd_mach_c4x) \
+ *(FLAGSP) = F_VERS; \
+ } \
+ while (0)
+
+#include "coff/ti.h"
+
+#endif /* COFF_TIC4X_H */