diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/expmed.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3d6e93e..a14e763 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-07-03 Geoff Keating <geoffk@cygnus.com> + + * expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when + mode instead of wider_mode is being used. + 2000-07-03 Jakub Jelinek <jakub@redhat.com> * config/i386/i386.md (movstrictqi_xor): Use 'q' constraint instead diff --git a/gcc/expmed.c b/gcc/expmed.c index 883d33f..778e990 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -2785,7 +2785,7 @@ expand_mult_highpart (mode, op0, cnst1, target, unsignedp, max_cost) { mul_highpart_optab = unsignedp ? umul_highpart_optab : smul_highpart_optab; target = expand_binop (mode, mul_highpart_optab, - op0, wide_op1, target, unsignedp, OPTAB_DIRECT); + op0, op1, target, unsignedp, OPTAB_DIRECT); if (target) return target; } @@ -2796,7 +2796,7 @@ expand_mult_highpart (mode, op0, cnst1, target, unsignedp, max_cost) { mul_highpart_optab = unsignedp ? smul_highpart_optab : umul_highpart_optab; target = expand_binop (mode, mul_highpart_optab, - op0, wide_op1, target, unsignedp, OPTAB_DIRECT); + op0, op1, target, unsignedp, OPTAB_DIRECT); if (target) /* We used the wrong signedness. Adjust the result. */ return expand_mult_highpart_adjust (mode, target, op0, |