diff options
author | Catherine Moore <clm@codesourcery.com> | 2008-11-03 18:55:25 -0500 |
---|---|---|
committer | Catherine Moore <clm@gcc.gnu.org> | 2008-11-03 18:55:25 -0500 |
commit | 1e27273ff09c94c23e5823710f2bc3722e9fab5c (patch) | |
tree | fb04b17bca35630ee148d2a8cc3b0882058e1b5c /gcc | |
parent | f61d4b67ff5a1dd89acba91b3f5389128ceb929d (diff) | |
download | gcc-1e27273ff09c94c23e5823710f2bc3722e9fab5c.zip gcc-1e27273ff09c94c23e5823710f2bc3722e9fab5c.tar.gz gcc-1e27273ff09c94c23e5823710f2bc3722e9fab5c.tar.bz2 |
mips.c (mips_conditional_register_usage): Handle the DSP control register.
* config/mips.c (mips_conditional_register_usage): Handle the
DSP control register.
* doc/extend.texi: Document the DSP control register.
From-SVN: r141568
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/mips/mips.c | 9 | ||||
-rw-r--r-- | gcc/doc/extend.texi | 6 |
3 files changed, 20 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0d698b9..ea8aed4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-11-03 Catherine Moore <clm@codesourcery.com> + + * config/mips.c (mips_conditional_register_usage): Handle the + DSP control register. + * doc/extend.texi: Document the DSP control register. + 2008-11-03 Steve Ellcey <sje@cup.hp.com> Jakub Jelinek <jakub@redhat.com> diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index f566e03..fa78c8b 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -14019,7 +14019,14 @@ mips_swap_registers (unsigned int i) void mips_conditional_register_usage (void) { - if (!ISA_HAS_DSP) + + if (ISA_HAS_DSP) + { + /* These DSP control register fields are global. */ + global_regs[CCDSP_PO_REGNUM] = 1; + global_regs[CCDSP_SC_REGNUM] = 1; + } + else { int regno; diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index da9c1da..e03eaf9 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -8698,6 +8698,12 @@ otherwise backwards-compatible with it. You can select revision 2 using the command-line option @option{-mdspr2}; this option implies @option{-mdsp}. +The SCOUNT and POS bits of the DSP control register are global. The +WRDSP, EXTPDP, EXTPDPV and MTHLIP instructions modify the SCOUNT and +POS bits. During optimization, the compiler will not delete these +instructions and it will not delete calls to functions containing +these instructions. + At present, GCC only provides support for operations on 32-bit vectors. The vector type associated with 8-bit integer data is usually called @code{v4i8}, the vector type associated with Q7 |