[PATCH] D93769: [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

Zahira Ammarguellat via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 30 05:55:22 PDT 2021


zahiraam added a comment.

In D93769#2970097 <https://reviews.llvm.org/D93769#2970097>, @matthewtff wrote:

> This CL breaks -E flow. I've created a repro: https://pastebin.com/fFuUdsfp
> If you build it on linux with ToT clang like this: clang++ -target i386-unknown-linux-gnu repro.cc -o repro.bin
> and then run the binary you'll get output "Hello, One". But if you make a roundtrip via preprocessing:
> clang++ -target i386-unknown-linux-gnu -E repro.cc > repro_pp.cc
> clang++ -target i386-unknown-linux-gnu repro_pp.cc -o repro_pp.bin
> And then run ./repro_pp.bin, you'll get output "Hello, Three". So now the binary differs.
>
> If you revert this CL, then both ways of compiling would give the same binary, that would output "Hello, One".

I do see a previous comment from Melanie mentioning this issue:
"Thanks for this, I'm building with assertions on now. This patch doesn't expand FLT_EVAL_METHOD in -E mode, I'm guessing that's why it fails. It can't expand the macro during -E because the context showing the value of the macro setting is only available in Sema. I haven't yet studied the test but do you know have an idea how I might be able to solve the problem?"
It looks like Melanie asked the questions but it wasn't resolved.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D93769



More information about the cfe-commits mailing list