[PATCH 1/1] R600: FMA is VecALU only instruction

Jan Vesely jan.vesely at rutgers.edu
Fri Oct 10 08:36:34 PDT 2014


On Fri, 2014-10-10 at 10:50 -0400, Tom Stellard wrote:
> On Thu, Oct 09, 2014 at 07:59:55PM -0400, Jan Vesely wrote:
> > Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
> 
> This patch looks good to me.  However, according
> to the docs, FMA only exists on double precision
> parts.  As a follow on patch it would be nice to
> make this instruction conditional on FeatureFP64
> and also mark FMA to exapand for targets that
> don't support FeatureFP64.

I only found a note of f32 FMA needing double precision parts in SI
manual. Is it true for EG too?

the EG manual only says that double precision is not available on all
r7xx hw.
Are there EG+ (pre SI) GPUs that don't have F64 capabilities? since r600
and r700 don't have FMA at all, it would make handling it a bit easier.

thanks,
jan

> 
> -Tom
> 
> > ---
> > 
> > Fixes hangs/failures of sin/cos/tan tests on my EG card
> > 
> >  lib/Target/R600/R600Instructions.td | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/lib/Target/R600/R600Instructions.td b/lib/Target/R600/R600Instructions.td
> > index a883c83..114c6e4 100644
> > --- a/lib/Target/R600/R600Instructions.td
> > +++ b/lib/Target/R600/R600Instructions.td
> > @@ -917,7 +917,7 @@ class MULADD_IEEE_Common <bits<5> inst> : R600_3OP <
> >  
> >  class FMA_Common <bits<5> inst> : R600_3OP <
> >    inst, "FMA",
> > -  [(set f32:$dst, (fma f32:$src0, f32:$src1, f32:$src2))]
> > +  [(set f32:$dst, (fma f32:$src0, f32:$src1, f32:$src2))], VecALU
> >  >;
> >  
> >  class CNDE_Common <bits<5> inst> : R600_3OP <
> > -- 
> > 1.9.3
> > 

-- 
Jan Vesely <jan.vesely at rutgers.edu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141010/cdc662a7/attachment.sig>


More information about the llvm-commits mailing list