[PATCH] [OpenCL] use -cl-fast-relaxed-math to relax math

Pekka Jääskeläinen pekka.jaaskelainen at tut.fi
Mon Dec 1 07:19:45 PST 2014


Here's a trivial patch to relax the FP math also
if -cl-fast-relaxed-math is set.

This supersedes the previous patch with title
"if unsafe-fp-math FN attribute is set, enable reduction
detection with float operations"

On 11/28/2014 08:04 PM, Pekka Jääskeläinen wrote:
> Hi Hal,
> OK, I didn't know which way was the chosen "future approach" or
> if they both are used for some use cases.
> I just noticed that when I set -cl-fast-relaxed-math in OpenCL C,
> it didn't propagate to the FP instructions as 'fast' attributes,
> but the func attribute did get set.
> So I suppose it should be investigated why the flags are not
> generated to the produced instructions in this case instead
> in case the fnattr is deprecated?
> On 11/28/2014 07:43 PM, Hal Finkel wrote:
>> Pekka,
>> What's your motivation for doing this? Aside from the fact that we
>> can't yet set fast math flags on function calls (to sqrt, etc.), I
>> think we're pretty close to removing the function attribute all
>> together. The instruction-level flags play much nicer with LTO, and
>> give more precision control to the frontends; it is not clear to me
>> that overriding them with the function-level attribute is desirable.
>> -Hal
>> ----- Original Message -----
>>> From: "Pekka Jääskeläinen" <pekka.jaaskelainen at tut.fi> To: "Commit
>>> Messages and Patches for LLVM" <llvm-commits at cs.uiuc.edu> Sent:
>>> Friday, November 28, 2014 11:13:39 AM Subject: [PATCH]
>>> [LoopVectorizer] if unsafe-fp-math FN attribute is set, enable
>>> reduction detection with float operations
>>> Hi,
>>> The attached patch checks the function attributes for
>>> "unsafe-fp-math" to relax FP constraints when detecting reduction
>>> operations.
>>> -- --Pekka
>>> _______________________________________________ llvm-commits
>>> mailing list llvm-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
A non-text attachment was scrubbed...
Name: clang-3.6-opencl-c-relaxed-fpmath.patch
Type: text/x-patch
Size: 1221 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20141201/f597263b/attachment.bin>

More information about the cfe-commits mailing list