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:
Marek Olšák
2012-09-08 15:50:30 +02:00
parent 61706915a3
commit df5e2c058f
2 changed files with 4 additions and 16 deletions

View File

@@ -643,13 +643,6 @@ boolean evergreen_is_format_supported(struct pipe_screen *screen,
default:
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) &&

View File

@@ -592,6 +592,10 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
format == PIPE_FORMAT_R11G11B10_FLOAT)
return FALSE;
/* MSAA integer colorbuffers hang. */
if (util_format_is_pure_integer(format))
return FALSE;
switch (sample_count) {
case 2:
case 4:
@@ -600,15 +604,6 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
default:
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) &&