diff options
author | Stafford Horne <shorne@gmail.com> | 2019-07-21 21:00:47 +0000 |
---|---|---|
committer | Stafford Horne <shorne@gcc.gnu.org> | 2019-07-21 21:00:47 +0000 |
commit | 1e2e81c1a36a51f4660d30a0278366a8a0727a9d (patch) | |
tree | d7e13039d7f8f4825c12b4067c12a2c534175838 /gcc/doc | |
parent | 9c0dba7c451ddd232dc3ba8a5ebc797762c74736 (diff) | |
download | gcc-1e2e81c1a36a51f4660d30a0278366a8a0727a9d.zip gcc-1e2e81c1a36a51f4660d30a0278366a8a0727a9d.tar.gz gcc-1e2e81c1a36a51f4660d30a0278366a8a0727a9d.tar.bz2 |
or1k: Add mrori option, fix option docs
gcc/ChangeLog:
* config.gcc (or1k*-*-*): Add mrori and mror to validation.
* doc/invoke.texi (OpenRISC Options): Add mrori option, rewrite all
documenation to be more clear.
* config/or1k/elf.opt (mboard=, mnewlib): Rewrite documentation to be
more clear.
* config/or1k/or1k.opt (mrori): New option.
(mhard-div, msoft-div, mhard-mul, msoft-mul, mcmov, mror, msext,
msfimm, mshftimm): Rewrite documentation to be more clear.
* config/or1k/or1k.md (insn_support): Add ror and rori.
(enabled): Add conditions for ror and rori.
(rotrsi3): Replace condition for shftimm with ror and rori.
gcc/testsuite/ChangeLog:
* gcc.target/or1k/ror-4.c: New file.
* gcc.target/or1k/shftimm-1.c: Update test from rotate to shift
as the shftimm option no longer controls rotate.
From-SVN: r273649
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 56 |
1 files changed, 31 insertions, 25 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index b887f5f..1703a0a 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1034,7 +1034,7 @@ Objective-C and Objective-C++ Dialects}. @emph{OpenRISC Options} @gccoptlist{-mboard=@var{name} -mnewlib -mhard-mul -mhard-div @gol -msoft-mul -msoft-div @gol --mcmov -mror -msext -msfimm -mshftimm} +-mcmov -mror -mrori -msext -msfimm -mshftimm} @emph{PDP-11 Options} @gccoptlist{-mfpu -msoft-float -mac0 -mno-ac0 -m40 -m45 -m10 @gol @@ -23649,50 +23649,56 @@ newlib board library linking. The default is @code{or1ksim}. @item -mnewlib @opindex mnewlib -For compatibility, it's always newlib for elf now. +This option is ignored; it is for compatibility purposes only. This used to +select linker and preprocessor options for use with newlib. -@item -mhard-div +@item -msoft-div +@itemx -mhard-div +@opindex msoft-div @opindex mhard-div -Generate code for hardware which supports divide instructions. This is the -default. +Select software or hardware divide (@code{l.div}, @code{l.divu}) instructions. +This default is hardware divide. -@item -mhard-mul +@item -msoft-mul +@itemx -mhard-mul +@opindex msoft-mul @opindex mhard-mul -Generate code for hardware which supports multiply instructions. This is the -default. +Select software or hardware multiply (@code{l.mul}, @code{l.muli}) instructions. +This default is hardware multiply. @item -mcmov @opindex mcmov -Generate code for hardware which supports the conditional move (@code{l.cmov}) -instruction. +Enable generation of conditional move (@code{l.cmov}) instructions. By +default the equivalent will be generated using using set and branch. @item -mror @opindex mror -Generate code for hardware which supports rotate right instructions. +Enable generation of rotate right (@code{l.ror}) instructions. By default +functions from @file{libgcc} are used to perform rotate right operations. + +@item -mrori +@opindex mrori +Enable generation of rotate right with immediate (@code{l.rori}) instructions. +By default functions from @file{libgcc} are used to perform rotate right with +immediate operations. @item -msext @opindex msext -Generate code for hardware which supports sign-extension instructions. +Enable generation of sign extension (@code{l.ext*}) instructions. By default +memory loads are used to perform sign extension. @item -msfimm @opindex msfimm -Generate code for hardware which supports set flag immediate (@code{l.sf*i}) -instructions. +Enable generation of compare and set flag with immediate (@code{l.sf*i}) +instructions. By default extra instructions will be generated to store the +immediate to a register first. @item -mshftimm @opindex mshftimm -Generate code for hardware which supports shift immediate related instructions -(i.e. @code{l.srai}, @code{l.srli}, @code{l.slli}, @code{1.rori}). Note, to -enable generation of the @code{l.rori} instruction the @option{-mror} flag must -also be specified. +Enable generation of shift with immediate (@code{l.srai}, @code{l.srli}, +@code{l.slli}) instructions. By default extra instructions will be generated +to store the immediate to a register first. -@item -msoft-div -@opindex msoft-div -Generate code for hardware which requires divide instruction emulation. - -@item -msoft-mul -@opindex msoft-mul -Generate code for hardware which requires multiply instruction emulation. @end table |