[PATCH] D113107: Support of expression granularity for _Float16.
John McCall via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Nov 17 13:44:44 PST 2021
rjmccall added a comment.
> Basically agree with everything John said, with a note that #3 is not quite FP_CONTRACT, which allows evaluating an expression as if intermediate steps were infinitely-precise, but rather FLT_EVAL_METHOD == 32 as defined in ISO/IEC TS 18661-3: "evaluate operations and constants, whose semantic type has at most the range and precision of the _Float32 type, to the range and precision of the _Float32 type; evaluate all other operations and constants to the range and precision of the semantic type".
Ah, thank you, I wasn't aware that the intent was for FP_CONTRACT to only allow evaluation as if infinitely precise. That's much more limited; wouldn't it preclude things like doing `float` arithmetic with `double`-only hardware, or with the x87 operations without intermediate rounding?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D113107/new/
https://reviews.llvm.org/D113107
More information about the cfe-commits
mailing list