[llvm-dev] Vectorization with fast-math on irregular ISA sub-sets
Hal Finkel via llvm-dev
llvm-dev at lists.llvm.org
Mon Feb 8 19:51:46 PST 2016
----- Original Message -----
> From: "Stephen Canon via llvm-dev" <llvm-dev at lists.llvm.org>
> To: "James Molloy" <James.Molloy at arm.com>
> Cc: "LLVM Dev" <llvm-dev at lists.llvm.org>, "nd" <nd at arm.com>
> Sent: Monday, February 8, 2016 1:44:23 PM
> Subject: Re: [llvm-dev] Vectorization with fast-math on irregular ISA sub-sets
>
> > On Feb 8, 2016, at 2:25 PM, James Molloy via llvm-dev
> > <llvm-dev at lists.llvm.org> wrote:
> >
> > Sorry, on phone so cherry picking what I reply to :
> >
> >> On 8 Feb 2016, at 19:15, Renato Golin <renato.golin at linaro.org>
> >> wrote:
> >>
> >> For 16275, the fix is to disable loop vect. for no-fast-math +
> >> hasUnsafeAlgebra.
> >
> > Do you think there is a set of people that care about IEEE accuracy
> > in so far that they don't want FTZ, but *are* happy to reassociate
> > FP operations? That seems fairly niche to me?
>
> I agree. FZ is usually relatively benign (it only causes major
> problems when programs expect x != y to imply that x - y != 0, an
> axiom of floating-point that’s broken in FZ). Re-association more
> frequently causes significant instability.
>
> I think it’s reasonable for unsafeAlgebra to imply "FZ is an allowed
> mode”.
FWIW, as currently formulated, our unsafeAlgebra flag implies all others:
void setUnsafeAlgebra() {
Flags |= UnsafeAlgebra;
setNoNaNs();
setNoInfs();
setNoSignedZeros();
setAllowReciprocal();
}
-Hal
>
> – Steve
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-dev
mailing list