mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-01 15:30:26 +01:00
st/mesa: don't fall back to 16F when 32F is requested
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@alum.mit.edu>
Cc: "10.6 11.0" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit e40f32d562)
This commit is contained in:
parent
271290f077
commit
254a07841d
1 changed files with 8 additions and 14 deletions
|
|
@ -1270,46 +1270,40 @@ 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_L32A32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
{
|
||||
{ GL_ALPHA32F_ARB, 0 },
|
||||
{ PIPE_FORMAT_A32_FLOAT, PIPE_FORMAT_L32A32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_A16_FLOAT,
|
||||
PIPE_FORMAT_L16A16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
{
|
||||
{ GL_INTENSITY32F_ARB, 0 },
|
||||
{ PIPE_FORMAT_I32_FLOAT, PIPE_FORMAT_L32A32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_I16_FLOAT,
|
||||
PIPE_FORMAT_L16A16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
{
|
||||
{ GL_LUMINANCE32F_ARB, 0 },
|
||||
{ PIPE_FORMAT_L32_FLOAT, PIPE_FORMAT_L32A32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_L16_FLOAT,
|
||||
PIPE_FORMAT_L16A16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
{
|
||||
{ GL_R32F, 0 },
|
||||
{ PIPE_FORMAT_R32_FLOAT, PIPE_FORMAT_R32G32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, PIPE_FORMAT_R16_FLOAT,
|
||||
PIPE_FORMAT_R16G16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
{
|
||||
{ GL_RG32F, 0 },
|
||||
{ PIPE_FORMAT_R32G32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT,
|
||||
PIPE_FORMAT_R16G16_FLOAT, PIPE_FORMAT_R16G16B16A16_FLOAT, 0 }
|
||||
{ PIPE_FORMAT_R32G32_FLOAT, PIPE_FORMAT_R32G32B32A32_FLOAT, 0 }
|
||||
},
|
||||
|
||||
/* R, RG formats */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue