virgl: Set PIPE_CAP_DOUBLES when running on GLES This is a lie but no known app use...
authorElie Tournier <tournier.elie@gmail.com>
Fri, 15 Feb 2019 16:18:25 +0000 (16:18 +0000)
committerGert Wollny <gert.wollny@collabora.com>
Sat, 9 Mar 2019 10:33:14 +0000 (11:33 +0100)
Signed-off-by: Elie Tournier <elie.tournier@collabora.com>
Reviewed-by: <Gurchetan Singh gurchetansingh@chromium.org>
src/gallium/drivers/virgl/virgl_screen.c

index b290d7d149f7b94446d36c30f2e7364a495b16f0..66e520eab8a09a00f6800484b75d88efbb2ccd8f 100644 (file)
@@ -228,7 +228,8 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
    case PIPE_CAP_SHADER_BUFFER_OFFSET_ALIGNMENT:
       return vscreen->caps.caps.v2.shader_buffer_offset_alignment;
    case PIPE_CAP_DOUBLES:
-      return vscreen->caps.caps.v1.bset.has_fp64;
+      return vscreen->caps.caps.v1.bset.has_fp64 ||
+            (vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_FAKE_FP64);
    case PIPE_CAP_MAX_SHADER_PATCH_VARYINGS:
       return vscreen->caps.caps.v2.max_shader_patch_varyings;
    case PIPE_CAP_SAMPLER_VIEW_TARGET: