diff options
author | chaoyingfu <chaoyingfu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-08 22:51:14 +0000 |
---|---|---|
committer | chaoyingfu <chaoyingfu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-05-08 22:51:14 +0000 |
commit | 43fda2619f4b075d814e64a161fec03b09f95b9b (patch) | |
tree | 4f99bbafe98aff39b7f5885c910746129d4e95e8 /gcc/optabs.c | |
parent | 1121ac6fd3429a1a6a31cc627adc05a0b18f644d (diff) | |
download | gcc-43fda2619f4b075d814e64a161fec03b09f95b9b.tar.gz |
* doc/md.texi (msub@var{m}@var{n}4, usub@var{m}@var{n}4): Document.
* optabs.h (OTI_smsub_widen, OTI_umsub_widen): New optab_indexes.
(smsub_widen_optab, umsub_widen_optab): Define.
* optabs.c (init_optabs): Initialize smsub_widen_optab and
umsub_widen_optab.
* genopinit.c (optabs): Fill in smsub_widen_optab and
umsub_widen_optab.
* expr.c (expand_expr_real_1): Try to use smsub_widen_optab
and umsub_widen_optab to implement multiply-subtract sequences.
* config/mips/mips.md (*msac<u>_di): Rename to...
(<u>msubsidi4): ...this. Extend condition to include
GENERATE_MADD_MSUB and TARGET_DSPR2. Change the constraint
of operand 0 to "ka" and use the three-operand form of msub<u>
for TARGET_DSPR2.
* config/mips/mips-dspr2.md (mips_msub, mips_msubu): Convert
to define_expands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124558 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r-- | gcc/optabs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c index b63acccba50..416c4d43e9b 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -5442,6 +5442,8 @@ init_optabs (void) usmul_widen_optab = init_optab (UNKNOWN); smadd_widen_optab = init_optab (UNKNOWN); umadd_widen_optab = init_optab (UNKNOWN); + smsub_widen_optab = init_optab (UNKNOWN); + umsub_widen_optab = init_optab (UNKNOWN); sdiv_optab = init_optab (DIV); sdivv_optab = init_optabv (DIV); sdivmod_optab = init_optab (UNKNOWN); |