[PATCH] D113107: Support of expression granularity for _Float16.

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 23 10:50:47 PDT 2022

rjmccall added a comment.

I think on balance the right thing to do is probably to add an alternative to `-fexcess-precision`, like `-fexcess-precision=none`.  We can default to `-fexcess-precision=standard` and treat `-fexcess-precision=fast` as an alias for `standard` for now.

Comment at: clang/docs/LanguageExtensions.rst:746
-* X86 (Only available under feature AVX512-FP16)
+* X86 (Enabled with feature SSE2 and up)
Note that I'm not trying to propose this specific name for the option; I'm just saying that, if we provide a way to control this, it should be documented here as the central place we document Clang's `_Float16` support.

Comment at: clang/lib/CodeGen/CGExprComplex.cpp:934
+  return ComplexExprEmitter(*this).EmitPromoted(E, DstTy);
`EmitPromotedComplexExpr` should look like `EmitPromotedScalarExpr`, i.e. it should start with an expression, check for the arithmetic cases where we directly support promoted emission, and otherwise emit the unpromoted pair and then promote it.



More information about the cfe-commits mailing list