r600g: do not require MSAA renderbuffer support if not asked for
to allow stencil-only sampler-only formats (like X24S8) NOTE: This is a candidate for the stable branches.
This commit is contained in:
@@ -643,13 +643,6 @@ boolean evergreen_is_format_supported(struct pipe_screen *screen,
|
|||||||
default:
|
default:
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* require render-target support for multisample resources */
|
|
||||||
if (util_format_is_depth_or_stencil(format)) {
|
|
||||||
usage |= PIPE_BIND_DEPTH_STENCIL;
|
|
||||||
} else {
|
|
||||||
usage |= PIPE_BIND_RENDER_TARGET;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((usage & PIPE_BIND_SAMPLER_VIEW) &&
|
if ((usage & PIPE_BIND_SAMPLER_VIEW) &&
|
||||||
|
@@ -592,6 +592,10 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
|
|||||||
format == PIPE_FORMAT_R11G11B10_FLOAT)
|
format == PIPE_FORMAT_R11G11B10_FLOAT)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
|
/* MSAA integer colorbuffers hang. */
|
||||||
|
if (util_format_is_pure_integer(format))
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
switch (sample_count) {
|
switch (sample_count) {
|
||||||
case 2:
|
case 2:
|
||||||
case 4:
|
case 4:
|
||||||
@@ -600,15 +604,6 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
|
|||||||
default:
|
default:
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* require render-target support for multisample resources */
|
|
||||||
if (util_format_is_depth_or_stencil(format)) {
|
|
||||||
usage |= PIPE_BIND_DEPTH_STENCIL;
|
|
||||||
} else if (util_format_is_pure_integer(format)) {
|
|
||||||
return FALSE; /* no integer textures */
|
|
||||||
} else {
|
|
||||||
usage |= PIPE_BIND_RENDER_TARGET;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((usage & PIPE_BIND_SAMPLER_VIEW) &&
|
if ((usage & PIPE_BIND_SAMPLER_VIEW) &&
|
||||||
|
Reference in New Issue
Block a user