This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix Altivec problem with vmaddfp


David Edelsohn wrote:
> 
>         Why do you believe that the operands are reversed?  I do not see
> that in the PEM.
> 
> vmaddfp vD,vA,vC,vB
> 
> vD = (vA * vC) + vB
> 
> (define_insn "altivec_vmaddfp"
>   [(set (match_operand:V4SF 0 "register_operand" "=v")
>         (plus:V4SF (mult:V4SF (match_operand:V4SF 1 "register_operand" "v")
>                               (match_operand:V4SF 2 "register_operand" "v"))
>                    (match_operand:V4SF 3 "register_operand" "v")))]
>   "TARGET_ALTIVEC"
>   "vmaddfp %0,%1,%2,%3"
>   [(set_attr "type" "vecfloat")])
> 
> (set %0
>      (plus (mult %1 %2) %3))
> 
>         I think it is more likely that the GNU assembler is wrong because
> the operand order in the assembler (vD,vA,vC,vB) is not the same as the
> order in the instruction (vD,vA,vB,vC).

OK. I'll look into it. Aldy thought that this was right too but both of
us
may be wrong.
-- 
Alan Matsuoka
Professional Services
Red Hat Canada, Ltd
mailto:alanm@redhat.com Tel: (416) 482-2661 x250 / Fax: (416) 482-6299


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]