Intel's reciprocal approximation instruction is not exact for power-of-two values. It provides 12 bits of mantissa precision and keeps a balance between positive and negative errors, but the reciprocal of 2^x is not 2^-x. This affects conformance tests which expect varyings not to be affected by the perspective division. Correct for this by multiplying by the inverse. Bug 27165393 Change-Id: Ie52ec511a14a4f447adc47ce9c875bbad03cd274 Reviewed-on: https://swiftshader-review.googlesource.com/4903Tested-by:Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Constants.cpp | Loading commit data... | |
| Constants.hpp | Loading commit data... | |
| PixelPipeline.cpp | Loading commit data... | |
| PixelPipeline.hpp | Loading commit data... | |
| PixelProgram.cpp | Loading commit data... | |
| PixelProgram.hpp | Loading commit data... | |
| PixelRoutine.cpp | Loading commit data... | |
| PixelRoutine.hpp | Loading commit data... | |
| PixelShader.cpp | Loading commit data... | |
| PixelShader.hpp | Loading commit data... | |
| SamplerCore.cpp | Loading commit data... | |
| SamplerCore.hpp | Loading commit data... | |
| SetupRoutine.cpp | Loading commit data... | |
| SetupRoutine.hpp | Loading commit data... | |
| Shader.cpp | Loading commit data... | |
| Shader.hpp | Loading commit data... | |
| ShaderCore.cpp | Loading commit data... | |
| ShaderCore.hpp | Loading commit data... | |
| VertexPipeline.cpp | Loading commit data... | |
| VertexPipeline.hpp | Loading commit data... | |
| VertexProgram.cpp | Loading commit data... | |
| VertexProgram.hpp | Loading commit data... | |
| VertexRoutine.cpp | Loading commit data... | |
| VertexRoutine.hpp | Loading commit data... | |
| VertexShader.cpp | Loading commit data... | |
| VertexShader.hpp | Loading commit data... |