Hi! On Tue, 23 Dec 2014 19:49:35 +0100, I wrote: > On Mon, 10 Nov 2014 17:19:57 +0100, Bernd Schmidt <ber...@codesourcery.com> > wrote: > > The scripts (11/11) I've put up on github, along with a hacked up > > newlib. These are at [...]
> > They are likely to migrate to MentorEmbedded from bernds, but that had > > some permissions problems last week. > > That has recently been done: > <https://github.com/MentorEmbedded/nvptx-tools> and > <https://github.com/MentorEmbedded/nvptx-newlib> are now available. > > (I'm aware that we still are to write up how to actually build and test > all this.) I just updated <https://gcc.gnu.org/wiki/Offloading?action=diff&rev2=26&rev1=25>. OK to check in the following to trunk? commit a0c73cb76d1f13642df7725d64bc618ee0909abc Author: Thomas Schwinge <tho...@codesourcery.com> Date: Mon Feb 2 16:29:36 2015 +0100 Begin documenting the nvptx backend. gcc/ * doc/install.texi (nvptx-*-none): New section. * doc/invoke.texi (Nvidia PTX Options): Likewise. * config/nvptx/nvptx.opt: Update. --- gcc/config/nvptx/nvptx.opt | 10 +++++----- gcc/doc/install.texi | 23 +++++++++++++++++++++++ gcc/doc/invoke.texi | 26 ++++++++++++++++++++++++++ 3 files changed, 54 insertions(+), 5 deletions(-) diff --git gcc/config/nvptx/nvptx.opt gcc/config/nvptx/nvptx.opt index 1448dfc..249a61d 100644 --- gcc/config/nvptx/nvptx.opt +++ gcc/config/nvptx/nvptx.opt @@ -17,13 +17,13 @@ ; along with GCC; see the file COPYING3. If not see ; <http://www.gnu.org/licenses/>. -m64 -Target Report RejectNegative Mask(ABI64) -Generate code for a 64 bit ABI - m32 Target Report RejectNegative InverseMask(ABI64) -Generate code for a 32 bit ABI +Generate code for a 32-bit ABI + +m64 +Target Report RejectNegative Mask(ABI64) +Generate code for a 64-bit ABI mmainkernel Target Report RejectNegative diff --git gcc/doc/install.texi gcc/doc/install.texi index c9e3bf1..b31f9b6 100644 --- gcc/doc/install.texi +++ gcc/doc/install.texi @@ -3302,6 +3302,8 @@ information have to. @item @uref{#nds32be-x-elf,,nds32be-*-elf} @item +@uref{#nvptx-x-none,,nvptx-*-none} +@item @uref{#powerpc-x-x,,powerpc*-*-*} @item @uref{#powerpc-x-darwin,,powerpc-*-darwin*} @@ -4269,6 +4271,27 @@ Andes NDS32 target in big endian mode. @html <hr /> @end html +@anchor{nvptx-x-none} +@heading nvptx-*-none +Nvidia PTX target. + +Instead of GNU binutils, you will need to install +@uref{https://github.com/MentorEmbedded/nvptx-tools/,,nvptx-tools}. +Tell GCC where to find it: +@option{--with-build-time-tools=[install-nvptx-tools]/nvptx-none/bin}. + +A nvptx port of newlib is available at +@uref{https://github.com/MentorEmbedded/nvptx-newlib/,,nvptx-newlib}. +It can be automatically built together with GCC@. For this, add a +symbolic link to nvptx-newlib's @file{newlib} directory to the +directory containing the GCC sources. + +Use the @option{--disable-sjlj-exceptions} and +@option{--enable-newlib-io-long-long} options when configuring. + +@html +<hr /> +@end html @anchor{powerpc-x-x} @heading powerpc-*-* You can specify a default version for the @option{-mcpu=@var{cpu_type}} diff --git gcc/doc/invoke.texi gcc/doc/invoke.texi index ba81ec7..1fb329e 100644 --- gcc/doc/invoke.texi +++ gcc/doc/invoke.texi @@ -840,6 +840,9 @@ Objective-C and Objective-C++ Dialects}. -mcustom-fpu-cfg=@var{name} @gol -mhal -msmallc -msys-crt0=@var{name} -msys-lib=@var{name}} +@emph{Nvidia PTX Options} +@gccoptlist{-m32 -m64 -mmainkernel} + @emph{PDP-11 Options} @gccoptlist{-mfpu -msoft-float -mac0 -mno-ac0 -m40 -m45 -m10 @gol -mbcopy -mbcopy-builtin -mint32 -mno-int16 @gol @@ -11967,6 +11970,7 @@ platform. * MSP430 Options:: * NDS32 Options:: * Nios II Options:: +* Nvidia PTX Options:: * PDP-11 Options:: * picoChip Options:: * PowerPC Options:: @@ -18277,6 +18281,28 @@ This option is typically used to link with a library provided by a HAL BSP. @end table +@node Nvidia PTX Options +@subsection Nvidia PTX Options +@cindex Nvidia PTX options +@cindex nvptx options + +These options are defined for Nvidia PTX: + +@table @gcctabopt + +@item -m32 +@itemx -m64 +@opindex m32 +@opindex m64 +Generate code for 32-bit or 64-bit ABI. + +@item -mmainkernel +@opindex mmainkernel +Link in code for a __main kernel. This is for stand-alone instead of +offloading execution. + +@end table + @node PDP-11 Options @subsection PDP-11 Options @cindex PDP-11 Options Grüße, Thomas
pgp0CHeeOXpKu.pgp
Description: PGP signature