From fa645861af6b357aef2e8ae7923a1143da4ff71f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Pavel=20Ondra=C4=8Dka?= Date: Fri, 20 May 2022 08:32:31 +0200 Subject: [PATCH] r300: expose PIPE_CAP_LEGACY_MATH_RULES MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Filip Gawin Part-of: --- src/gallium/drivers/r300/r300_screen.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c index 6c7f05d..ffcaf64 100644 --- a/src/gallium/drivers/r300/r300_screen.c +++ b/src/gallium/drivers/r300/r300_screen.c @@ -144,6 +144,7 @@ static int r300_get_param(struct pipe_screen* pscreen, enum pipe_cap param) case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT: case PIPE_CAP_CLIP_HALFZ: case PIPE_CAP_ALLOW_MAPPED_BUFFERS_DURING_EXECUTION: + case PIPE_CAP_LEGACY_MATH_RULES: return 1; case PIPE_CAP_TEXTURE_TRANSFER_MODES: -- 2.7.4