cb0ca2844b
* README.C4X: New file with information about the c4x ports. * ginclude/va-c4x.h: New file for c4x varargs support. * config/c4x: New directory with c4x port files. From-SVN: r22475
49 lines
2.0 KiB
Plaintext
49 lines
2.0 KiB
Plaintext
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
|
|
ftp://ongaonga.chch.cri.nz/pub/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 GCC can
|
|
also be obtained from ftp://ongaonga.chch.cri.nz/pub/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, 16 Sep 98
|