[cfe-dev] Warning for partially implemented options/pragmas?

Cameron McInally via cfe-dev cfe-dev at lists.llvm.org
Thu Apr 16 13:18:47 PDT 2020

On Thu, Apr 16, 2020 at 4:01 PM Kevin Neal via cfe-dev
<cfe-dev at lists.llvm.org> wrote:
> Bug 45329 “segfault with frounding-math” “https://bugs.llvm.org/show_bug.cgi?id=45329” highlights that we are silently allowing people to use options that are unimplemented or only partially implemented.
> If use the -frounding-math option on a compile I expect it to work. I do not expect it to trigger an ICE, a crash, or much worse silently not work and produce wrong results.
> I propose a warning be printed so that we can avoid issues like bug 45329 in the future. And it needs to be per-target since some targets are closer to supporting this feature than others.
> Thoughts?

Thanks for bringing this up, Kevin.

We have a customer code that has been using
`-fno-unsafe-math-optimizations` for some time. That option implies
`-ftrapping-math`, which was a no-op until a few months ago. Now,
`-ftrapping-math` enables the constrained FP intrinsics, which aren't
fully supported on all targets. That behavior change looked like a
regression to the customer.

A warning would be a good short-term solution.


More information about the cfe-dev mailing list