Operations on floating-point complex data had incorrect FP attributes
in strictfp mode, because IRBuilder object was not synchronized with AST
node attributes.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Are we testing _Complex multiply or subtraction anywhere? I have a vague memory of multiply not working correctly.
clang/test/CodeGen/complex-strictfp.c | ||
---|---|---|
8–10 | So the tests are wrong but should no longer be fixed? |
clang/test/CodeGen/complex-strictfp.c | ||
---|---|---|
8–10 | The tests were wrong and are now correct. He left the comment to tell the future that if either "fpexcept.maytrap" or "round.tonearest" reappear then it means a regression in clang. How about changing "all' to "any"? And change "wrong" to "clang bugs"? As in 'Any cases of "fpexcept.maytrap" in this test are clang bugs.'? |
There is a test clang/test/CodeGen/complex-math.c that checks complex operations including subtraction and multiplication. The check for multiplication is not thorough however. And only default FP environment is checked.
IIRC spec2017 contains a test that uses C99 complex numbers. If there were issues, I think they would be reported.
So the tests are wrong but should no longer be fixed?