aboutsummaryrefslogtreecommitdiff
path: root/gcc/genopinit.c
diff options
context:
space:
mode:
authorBernd Schmidt <bernd.schmidt@analog.com>2005-11-20 18:49:18 +0000
committerBernd Schmidt <bernds@gcc.gnu.org>2005-11-20 18:49:18 +0000
commit8b44057d9b7417293c2e9fc81bb0f355cabe83b6 (patch)
treeced326957170072ff9481ff36ed4bba3a5eb7c8e /gcc/genopinit.c
parent23ffc23579daf0e63042a4952ff47317125279dd (diff)
downloadgcc-8b44057d9b7417293c2e9fc81bb0f355cabe83b6.zip
gcc-8b44057d9b7417293c2e9fc81bb0f355cabe83b6.tar.gz
gcc-8b44057d9b7417293c2e9fc81bb0f355cabe83b6.tar.bz2
expr.c (expand_expr_real): Use usmul_optab for widening signed * unsigned multiplies.
* expr.c (expand_expr_real): Use usmul_optab for widening signed * unsigned multiplies. * genopinit.c (optabs): Add usmul_widen_optab. * optabs.c (init_optabs): Likewise. * optabs.h (enum optab_index): Add OTI_usmul_widen. (usmul_widen_optab): Define. * config/bfin/bfin.md (usmulhisi3): New pattern. * doc/md.texi (usmulqihi3, usmulhisi3, usmulsidi3): Document. From-SVN: r107258
Diffstat (limited to 'gcc/genopinit.c')
-rw-r--r--gcc/genopinit.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/genopinit.c b/gcc/genopinit.c
index 8bf5747..c48d079 100644
--- a/gcc/genopinit.c
+++ b/gcc/genopinit.c
@@ -84,6 +84,7 @@ static const char * const optabs[] =
"smul_highpart_optab->handlers[$A].insn_code = CODE_FOR_$(smul$a3_highpart$)",
"smul_widen_optab->handlers[$B].insn_code = CODE_FOR_$(mul$a$b3$)$N",
"umul_widen_optab->handlers[$B].insn_code = CODE_FOR_$(umul$a$b3$)$N",
+ "usmul_widen_optab->handlers[$B].insn_code = CODE_FOR_$(usmul$a$b3$)$N",
"sdiv_optab->handlers[$A].insn_code = CODE_FOR_$(div$a3$)",
"sdivv_optab->handlers[$A].insn_code = CODE_FOR_$(div$V$I$a3$)",
"udiv_optab->handlers[$A].insn_code = CODE_FOR_$(udiv$I$a3$)",