You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Why a new feature? Is your feature request related to a problem? Please describe it.
The new tester will work without a pipe connecting two processes. Introducing this tester will resolve the posix dependency problem.
The new tester can be used in environments where MPFR is not available. It will be much easier to do testing on Windows.
I expect the new tester to work faster than the current tester/iut combo.
What feature would you like?
The tester compares the output of SLEEF to the output of TLFloat for a predetermined set of inputs.
By comparing the outputs to the higher precision output of TLFloat, the tester verifies that the error in SLEEF's outputs is within a predetermined range.
How would you like this feature to be implemented?
The structure will be like a combination of the existing IUT and tester, and will be built with different settings for each vector extension.
How portable is the feature across architectures and platforms?
The purpose of introducing this tester is to address the current portability issues associated with MPFR and pipe.
TLFloat has fewer portability issues than MPFR and can be used in a wider range of environments.
However, it will require a C++20 compiler and cannot be compiled with clang 16 or earlier due to compiler bugs.
Describe alternative approaches you have considered
The current tester/iut will not be deleted.
At the time of build, the user can select either the current tester/iut or the new tester to be introduced.
I will allow the user to choose whether to build the current tester/iut and the new tester by cmake options.
Additional context
The addition of the new tester will not constitute a major code change.
However, the addition of C++ code and the introduction of submodules may affect the user's build environment and future development.
The default setting is to test with the existing tester/iut, as is the case at present. Only when new cmake options are specified, the new tester will be built and used for testing instead of the current tester/iut.
Why a new feature? Is your feature request related to a problem? Please describe it.
The new tester will work without a pipe connecting two processes. Introducing this tester will resolve the posix dependency problem.
The new tester can be used in environments where MPFR is not available. It will be much easier to do testing on Windows.
I expect the new tester to work faster than the current tester/iut combo.
What feature would you like?
How would you like this feature to be implemented?
As described in Incorporating tlfloat as a submodule #568, I will incorporate TLFloat as a submodule of SLEEF.
The structure will be like a combination of the existing IUT and tester, and will be built with different settings for each vector extension.
How portable is the feature across architectures and platforms?
The purpose of introducing this tester is to address the current portability issues associated with MPFR and pipe.
TLFloat has fewer portability issues than MPFR and can be used in a wider range of environments.
However, it will require a C++20 compiler and cannot be compiled with clang 16 or earlier due to compiler bugs.
Describe alternative approaches you have considered
The current tester/iut will not be deleted.
At the time of build, the user can select either the current tester/iut or the new tester to be introduced.
I will allow the user to choose whether to build the current tester/iut and the new tester by cmake options.
Additional context
The addition of the new tester will not constitute a major code change.
However, the addition of C++ code and the introduction of submodules may affect the user's build environment and future development.
The default setting is to test with the existing tester/iut, as is the case at present. Only when new cmake options are specified, the new tester will be built and used for testing instead of the current tester/iut.