diff options
author | daney <daney@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-11 20:14:51 +0000 |
---|---|---|
committer | daney <daney@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-11 20:14:51 +0000 |
commit | bc4c18f793c2c511f38461ddc98f6455f176bbd0 (patch) | |
tree | 14dfcb7d16ebfd463a4f9ecab96e3573379f51d0 /gcc/doc/install.texi | |
parent | 9ba1ed5a8ff65cefe456fbdd48b7244800de1f87 (diff) | |
download | ppe42-gcc-bc4c18f793c2c511f38461ddc98f6455f176bbd0.tar.gz ppe42-gcc-bc4c18f793c2c511f38461ddc98f6455f176bbd0.zip |
* doc/invoke.texi: Document new MIPS -mllsc and -mno-llsc options.
* doc/install.texi: Document new --with-llsc and --without-llsc
options.
* config.gcc: Handle --with-llsc and --without-llsc configure options.
* config/mips/mips.md (sync, memory_barrier): Wrap sync instrunction
in %| and %- operand codes. Depend on GENERATE_SYNC instead of
ISA_HAS_SYNC.
(sync_compare_and_swap<mode>, sync_add<mode>, sync_sub<mode>,
sync_old_add<mode>, sync_old_sub<mode>, sync_new_add<mode>,
sync_new_sub<mode>, sync_<optab><mode>, sync_old_<optab><mode>,
sync_new_<optab><mode>, sync_nand<mode>, sync_old_nand<mode>,
sync_new_nand<mode>, sync_lock_test_and_set<mode>): Depend on
GENERATE_LL_SC instead of ISA_HAS_LL_SC.
* config/mips/mips.opt (mllsc): New option.
* config/mips/mips.c (mips_llsc): Define variable.
(mips_handle_option): Handle mllsc option.
(override_options): Set mips_print_operand_punct for '|' and '-'.
(print_operand): Add new %| and %- operand codes.
* config/mips/mips.h (mips_llsc_setting): New enum type.
(mips_llsc): Declare.
(OPTION_DEFAULT_SPECS): Add llsc handling.
(GENERATE_SYNC): New macro.
(GENERATE_LL_SC): New macro.
(MIPS_COMPARE_AND_SWAP, MIPS_SYNC_OP, MIPS_SYNC_OLD_OP,
MIPS_SYNC_NEW_OP, MIPS_SYNC_NAND, MIPS_SYNC_OLD_NAND,
MIPS_SYNC_NEW_NAND, MIPS_SYNC_EXCHANGE): Wrap instructions
in %| and %- operand codes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128392 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/install.texi')
-rw-r--r-- | gcc/doc/install.texi | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index bac3bb20a55..2517303260f 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -1062,6 +1062,19 @@ systems that support conditional traps). Division by zero checks use the break instruction. @end table +@c If you make --with-llsc the default for additional targets, +@c update the --with-llsc description in the MIPS section below. + +@item --with-llsc +On MIPS targets, make @option{-mllsc} the default when no +@option{-mno-lsc} option is passed. This is the default for +Linux-based targets, as the kernel will emulate them if the ISA does +not provide them. + +@item --without-llsc +On MIPS targets, make @option{-mno-llsc} the default when no +@option{-mllsc} option is passed. + @item --enable-__cxa_atexit Define if you want to use __cxa_atexit, rather than atexit, to register C++ destructors for local statics and global objects. @@ -3610,6 +3623,20 @@ configure for @samp{mipsel-elf} as a workaround. The @samp{mips*-*-linux*} target continues to use the MIPS II routines. More work on this is expected in future releases. +@c If you make --with-llsc the default for another target, please also +@c update the description of the --with-llsc option. + +The built-in @code{__sync_*} functions are available on MIPS II and +later systems and others that support the @samp{ll}, @samp{sc} and +@samp{sync} instructions. This can be overridden by passing +@option{--with-llsc} or @option{--without-llsc} when configuring GCC. +Since the Linux kernel emulates these instructions if they are +missing, the default for @samp{mips*-*-linux*} targets is +@option{--with-llsc}. The @option{--with-llsc} and +@option{--without-llsc} configure options may be overridden at compile +time by passing the @option{-mllsc} or @option{-mno-llsc} options to +the compiler. + MIPS systems check for division by zero (unless @option{-mno-check-zero-division} is passed to the compiler) by generating either a conditional trap or a break instruction. Using |