diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 55c0fa33f11..287ddb8f6b2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2007-04-17 H.J. Lu + + * config/i386/sse.md (sse_vmaddv4sf3): Use register_operand + on "0". + (sse_vmmulv4sf3): Likewise. + (sse2_vmaddv2df3): Likewise. + (sse2_vmmulv2df3): Likewise. + 2007-04-17 Zdenek Dvorak PR rtl-optimization/31360 diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 68e3dbe50f0..a0047db8c29 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -351,7 +351,7 @@ (define_insn "sse_vmaddv4sf3" [(set (match_operand:V4SF 0 "register_operand" "=x") (vec_merge:V4SF - (plus:V4SF (match_operand:V4SF 1 "nonimmediate_operand" "0") + (plus:V4SF (match_operand:V4SF 1 "register_operand" "0") (match_operand:V4SF 2 "nonimmediate_operand" "xm")) (match_dup 1) (const_int 1)))] @@ -407,7 +407,7 @@ (define_insn "sse_vmmulv4sf3" [(set (match_operand:V4SF 0 "register_operand" "=x") (vec_merge:V4SF - (mult:V4SF (match_operand:V4SF 1 "nonimmediate_operand" "0") + (mult:V4SF (match_operand:V4SF 1 "register_operand" "0") (match_operand:V4SF 2 "nonimmediate_operand" "xm")) (match_dup 1) (const_int 1)))] @@ -1455,7 +1455,7 @@ (define_insn "sse2_vmaddv2df3" [(set (match_operand:V2DF 0 "register_operand" "=x") (vec_merge:V2DF - (plus:V2DF (match_operand:V2DF 1 "nonimmediate_operand" "0") + (plus:V2DF (match_operand:V2DF 1 "register_operand" "0") (match_operand:V2DF 2 "nonimmediate_operand" "xm")) (match_dup 1) (const_int 1)))] @@ -1511,7 +1511,7 @@ (define_insn "sse2_vmmulv2df3" [(set (match_operand:V2DF 0 "register_operand" "=x") (vec_merge:V2DF - (mult:V2DF (match_operand:V2DF 1 "nonimmediate_operand" "0") + (mult:V2DF (match_operand:V2DF 1 "register_operand" "0") (match_operand:V2DF 2 "nonimmediate_operand" "xm")) (match_dup 1) (const_int 1)))]