summaryrefslogtreecommitdiff
path: root/gcc/README.C4X
diff options
context:
space:
mode:
authorYamaArashi <shadow962@live.com>2016-01-06 01:47:28 -0800
committerYamaArashi <shadow962@live.com>2016-01-06 01:47:28 -0800
commitbe8b04496302184c6e8f04d6179f9c3afc50aeb6 (patch)
tree726e2468c0c07add773c0dbd86ab6386844259ae /gcc/README.C4X
initial commit
Diffstat (limited to 'gcc/README.C4X')
-rwxr-xr-xgcc/README.C4X48
1 files changed, 48 insertions, 0 deletions
diff --git a/gcc/README.C4X b/gcc/README.C4X
new file mode 100755
index 0000000..994e67d
--- /dev/null
+++ b/gcc/README.C4X
@@ -0,0 +1,48 @@
+This file describes the implementation notes of the GNU C Compiler for
+the Texas Instruments Floating Point Digital Signal Processor
+families, TMS320C3x and TMS320C4x (including the C30, C31, C32, C40,
+and C44 chips).
+
+
+Currently, only two code variants are generated---those for the C3x
+and C4x architectures. Note that the new operand combinations for
+parallel instructions, included in newer silicon revisions, are not
+yet supported. These should be trivial to add for someone with the
+newer chips and the inclination.
+
+
+While the generated assembly code is fairly similar to that recognised
+by the TI assembler, there are a few differences (currently the machine
+option -mti, designed to enfore compatibility, is not fully
+implemented). The major difference is the use of the ^ operator to
+load the 16 MSBs of an address or constant for the C4x.
+
+
+The generated assembly code requires the GNU assembler (GAS). This is
+not currently included as part of the binutils package, due to the
+many hacks required to be compatible with TI's kludged COFF
+implementation, and the binutils not being designed for 32-bit bytes.
+Patches against binutils-2.7.2 can be obtained from
+http://www.elec.canterbury.ac.nz/c4x. This site also has patches for
+the GNU debugger (GDB), incoporating a cycle accurate simulator that
+can display profiles and histories of code execution, detailing
+pipeline conflicts etc.
+
+
+GCC can be configured as a cross compiler for both the C3x and C4x
+architectures on the same system. Use `configure --target=c4x' to
+configure GCC for both the C3x and C4x. Then use the -m30 option to
+generate code for the C30 or -m40 (the default) for the C40.
+
+
+Further installation notes and other optimization patches for the C4x
+target can also be obtained from http://www.elec.canterbury.ac.nz/c4x.
+
+
+A Majordomo mailing list, gcc_c40@atlantek.com.au, exists to discuss
+related issues and suggestions for further optimizations. To
+subscribe send a message with `subscribe gcc_c40' in the body to
+majordomo@atlantek.com.au.
+
+
+Michael Hayes, 26 Nov 98