[Mesa-dev] [PATCH] st/mesa: don't fall back to 16F when 32F is requested

Marek Olšák maraeo at gmail.com
Sun Sep 6 10:26:48 PDT 2015


On Sun, Sep 6, 2015 at 5:31 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> Nothing in the spec allows for the reduced precision, and this also
> fixes st_QuerySamplesForFormat for nv50, which does not allow MS8 on
> RGBA32F. Now this will be respected instead of reporting MS8 as
> supported with an assumption that the format used will be RGBA16F.
>
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> Cc: "10.6 11.0" <mesa-stable at lists.freedesktop.org>
> ---
>  src/mesa/state_tracker/st_format.c | 21 ++++++++-------------
>  1 file changed, 8 insertions(+), 13 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c
> index eeb3f0f..6971836 100644
> --- a/src/mesa/state_tracker/st_format.c
> +++ b/src/mesa/state_tracker/st_format.c
> @@ -1270,46 +1270,41 @@ static const struct format_mapping format_map[] = {
>     /* 32-bit float formats */
>     {
>        { GL_RGBA32F_ARB, 0 },
> -      { PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
> +      { PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
>     },
>     {
>        { GL_RGB32F_ARB, 0 },
>        { PIPE_FORMAT_R32G32B32_FLOAT, PIPE_FORMAT_R32G32B32X32_FLOAT,
> -        PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
> +        PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
>     },
>     {
>        { GL_LUMINANCE_ALPHA32F_ARB, 0 },
>        { PIPE_FORMAT_L32A32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT,
> -        PIPE_FORMAT_L16A16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
> +        PIPE_FORMAT_L16A16_FLOAT, 0 }

L16A16? With that fixed:

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

Marek


More information about the mesa-dev mailing list