r300: expose PIPE_CAP_LEGACY_MATH_RULES
authorPavel Ondračka <pavel.ondracka@gmail.com>
Fri, 20 May 2022 06:32:31 +0000 (08:32 +0200)
committerMarge Bot <emma+marge@anholt.net>
Tue, 14 Jun 2022 06:07:11 +0000 (06:07 +0000)
commitfa645861af6b357aef2e8ae7923a1143da4ff71f
tree0f5ef8243110a83467775c3af0156f290b45debe
parentfbcf65bfea52a03ab8c78eabcfd1c7193334c088
r300: expose PIPE_CAP_LEGACY_MATH_RULES

We are already doing the 0*anything = 0 by default and we are also
using the DX versions of math ops like RCP. It looks like R300 and
R400 can't do IEEE math anyway (but its hard to tell without docs).
For R500 we can do IEEE math, but testing showed that some apps
are dependent on the DX behavior, so considering we only advertise
GLSL 1.20 where this is left ot the driver, just keep the curent
status and expose PIPE_CAP_LEGACY_MATH_RULES so that nine can stop
emiting math workarounds.

Also fixes two Xnine tests.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17007>
src/gallium/drivers/r300/r300_screen.c