summaryrefslogtreecommitdiff
path: root/gcc/genopinit.c
diff options
context:
space:
mode:
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-20 18:49:18 +0000
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-20 18:49:18 +0000
commit8f0c8a8b1d184a7d759f6736cddd5d7a485a908b (patch)
treeced326957170072ff9481ff36ed4bba3a5eb7c8e /gcc/genopinit.c
parent77f8ffcbeff911eeb82431db33383c102ee556a5 (diff)
downloadgcc-8f0c8a8b1d184a7d759f6736cddd5d7a485a908b.tar.gz
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107258 138bc75d-0d04-0410-961f-82ee72b054a4
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 8bf574743e9..c48d07979bd 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$)",