OSDN Git Service

* doc/contrib.texi: Mention crx.
authorwoepaul <woepaul@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Aug 2005 16:35:26 +0000 (16:35 +0000)
committerwoepaul <woepaul@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Aug 2005 16:35:26 +0000 (16:35 +0000)
* doc/extend.texi: Document crx extensions.
* doc/install.texi: Document crx install.
* doc/invoke.texi: Document crx options.
* doc/md.texi: Document crx constraints.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102700 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/doc/contrib.texi
gcc/doc/extend.texi
gcc/doc/install.texi
gcc/doc/invoke.texi
gcc/doc/md.texi

index d4c71ec..d902629 100644 (file)
@@ -962,6 +962,9 @@ problems in various places that nobody else wanted to work on, strength
 reduction and other loop optimizations.
 
 @item
+Paul Woegerer and Tal Agmon for the CRX port.
+
+@item
 Carlo Wood for various fixes.
 
 @item
index 225f5a3..270223d 100644 (file)
@@ -1887,7 +1887,7 @@ this attribute to work correctly.
 
 @item interrupt
 @cindex interrupt handler functions
-Use this attribute on the ARM, AVR, C4x, M32C, M32R/D and Xstormy16
+Use this attribute on the ARM, AVR, C4x, CRX, M32C, M32R/D and Xstormy16
 ports to indicate that the specified function is an interrupt handler.
 The compiler will generate function entry and exit sequences suitable
 for use in an interrupt handler when this attribute is present.
index cf1ee69..6f0939b 100644 (file)
@@ -2629,6 +2629,32 @@ information about this platform is available at
 @html
 <hr />
 @end html
+@heading @anchor{crx}CRX
+
+The CRX CompactRISC architecture is a low-power 32-bit architecture with
+fast context switching and architectural extensibility features.
+
+@ifnothtml
+@xref{CRX Options,, CRX Options, gcc, Using and Porting the GNU Compiler
+Collection (GCC)},
+@end ifnothtml
+
+@ifhtml
+See ``CRX Options'' in the main manual for a list of CRX-specific options.
+@end ifhtml
+
+Use @samp{configure --target=crx-elf --enable-languages=c,c++} to configure
+GCC@ for building a CRX cross-compiler. The option @samp{--target=crx-elf}
+is also used to build the @samp{newlib} C library for CRX.
+
+It is also possible to build libstdc++-v3 for the CRX architecture. This
+needs to be done in a sepearate step with the following configure settings:
+@samp{gcc/libstdc++-v3/configure --host=crx-elf --with-newlib
+--enable-sjlj-exceptions --enable-cxx-flags='-fexceptions -frtti'}
+
+@html
+<hr />
+@end html
 @heading @anchor{dos}DOS
 
 Please have a look at the @uref{binaries.html,,binaries page}.
index e62a160..b4de87c 100644 (file)
@@ -431,6 +431,9 @@ Objective-C and Objective-C++ Dialects}.
 -melf  -maout  -melinux  -mlinux  -sim  -sim2 @gol
 -mmul-bug-workaround  -mno-mul-bug-workaround}
 
+@emph{CRX Options}
+@gccoptlist{-mmac -mpush-args}
+
 @emph{Darwin Options}
 @gccoptlist{-all_load  -allowable_client  -arch  -arch_errors_fatal @gol
 -arch_only  -bind_at_load  -bundle  -bundle_loader @gol
@@ -6986,6 +6989,7 @@ platform.
 * AVR Options::
 * Blackfin Options::
 * CRIS Options::
+* CRX Options::
 * Darwin Options::
 * DEC Alpha Options::
 * DEC Alpha/VMS Options::
@@ -7657,6 +7661,24 @@ Like @option{-sim}, but pass linker options to locate initialized data at
 0x40000000 and zero-initialized data at 0x80000000.
 @end table
 
+@node CRX Options
+@subsection CRX Options
+@cindex CRX Options
+
+These options are defined specifically for the CRX ports.
+
+@table @gcctabopt
+
+@item -mmac
+@opindex mmac
+Enable the use of multiply-accumulate instructions. Disabled by default.
+
+@item -mpush-args
+@opindex mpush-args
+Push instructions will be used to pass outgoing arguments when functions
+are called. Enabled by default.
+@end table
+
 @node Darwin Options
 @subsection Darwin Options
 @cindex Darwin options
index 682269b..0d0e517 100644 (file)
@@ -1746,6 +1746,37 @@ Constant integer 1
 A floating point constant 0.0
 @end table
 
+@item CRX Architecture---@file{crx.h}
+@table @code
+
+@item b
+Registers from r0 to r14 (registers without stack pointer)
+
+@item l
+Register r16 (64-bit accumulator lo register)
+
+@item h
+Register r17 (64-bit accumulator hi register)
+
+@item k
+Register pair r16-r17. (64-bit accumulator lo-hi pair)
+
+@item I
+Constant that fits in 3 bits
+
+@item J
+Constant that fits in 4 bits
+
+@item K
+Constant that fits in 5 bits
+
+@item L
+Constant that is one of -1, 4, -4, 7, 8, 12, 16, 20, 32, 48
+
+@item G
+Floating point constant that is legal for store immediate
+@end table
+
 @item PowerPC and IBM RS6000---@file{rs6000.h}
 @table @code
 @item b