This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
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