[PATCH] D79903: FastMathFlags.allowContract should be init from FPFeatures.allowFPContractAcrossStatement

Melanie Blower via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed May 13 14:42:47 PDT 2020


mibintc marked an inline comment as done.
mibintc added inline comments.


================
Comment at: clang/lib/Frontend/CompilerInvocation.cpp:2943
+  if (Opts.FastRelaxedMath)
+    Opts.setDefaultFPContractMode(LangOptions::FPM_Fast);
   Opts.HexagonQdsp6Compat = Args.hasArg(OPT_mqdsp6_compat);
----------------
rjmccall wrote:
> mibintc wrote:
> > I changed this because the FAST version of this test clang/test/CodeGenOpenCL/relaxed-fpmath.cl wants the 'fast' attribute on the instruction dump.  All the LLVM FMF bits must be set for the fast attribute print.  By default, the value for OpenCL is ffp-contract=on
> Is there an overall behavior change for OpenCL across these patches?
I think the answer to your question is no.  Here is more details: OpenCL sets the default behavior to ffp-contract=on.  In https://reviews.llvm.org/D72841 I added the function UpdateFastMathFlags, that function set the llvm FMF.allowContract bit to be ( ffp-contract=on or ffp-contract=fast).  This patch just drops the check on ffp-contract=on.   I didn't wind back to see how the llvm fast attribute was being set for this [opencl] test case originally. 


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79903/new/

https://reviews.llvm.org/D79903





More information about the cfe-commits mailing list