[FPEnv][X86] Platform-specific builtin constrained FP enablement
When constrained floating point is enabled the X86-specific builtins don't use constrained intrinsics in some cases. Fix that.
Paths
| Differential D73570
[FPEnv][X86] Platform-specific builtin constrained FP enablement ClosedPublic Authored by kpn on Jan 28 2020, 11:43 AM.
Details Summary [FPEnv][X86] Platform-specific builtin constrained FP enablement When constrained floating point is enabled the X86-specific builtins don't use constrained intrinsics in some cases. Fix that.
Diff Detail
Event Timeline
kpn added inline comments. Comment Actions Address review comments: FMA tests are now run optimized. This changes where the FIXME lines are located. Closed by commit rG208470dd5d0a: [FPEnv][X86] Platform-specific builtin constrained FP enablement (authored by kpn). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 242964 clang/lib/CodeGen/CGBuiltin.cpp
clang/test/CodeGen/avx512f-builtins-constrained.c
clang/test/CodeGen/fma-builtins-constrained.c
clang/test/CodeGen/sse-builtins-constrained.c
|
Technically the fmsub/fnmsub/fnmadd assembly requires optimizations to be enabled. If it appears to work without optimizations its only because fast-isel fell back to SelectionDAG and picked up optimizations due to that. Not something that should be relied on.