mesa: move/fix MAX_WIDTH/HEIGHT-related assertions

Max texture and viewport size is only limited by MAX_WIDTH/HEIGHT for swrast.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
This commit is contained in:
Brian Paul
2012-02-19 20:08:52 -07:00
parent 3e88e43224
commit 08687c7912
2 changed files with 12 additions and 9 deletions

View File

@@ -712,20 +712,15 @@ check_context_limits(struct gl_context *ctx)
assert(ctx->Const.MaxCubeTextureLevels <= MAX_CUBE_TEXTURE_LEVELS);
assert(ctx->Const.MaxTextureRectSize <= MAX_TEXTURE_RECT_SIZE);
/* make sure largest texture image is <= MAX_WIDTH in size */
assert((1 << (ctx->Const.MaxTextureLevels - 1)) <= MAX_WIDTH);
assert((1 << (ctx->Const.MaxCubeTextureLevels - 1)) <= MAX_WIDTH);
assert((1 << (ctx->Const.Max3DTextureLevels - 1)) <= MAX_WIDTH);
/* Texture level checks */
assert(MAX_TEXTURE_LEVELS >= MAX_3D_TEXTURE_LEVELS);
assert(MAX_TEXTURE_LEVELS >= MAX_CUBE_TEXTURE_LEVELS);
/* Max texture size should be <= max viewport size (render to texture) */
assert((1 << (MAX_TEXTURE_LEVELS - 1)) <= MAX_WIDTH);
assert(ctx->Const.MaxViewportWidth <= MAX_WIDTH);
assert(ctx->Const.MaxViewportHeight <= MAX_WIDTH);
assert((1 << (ctx->Const.MaxTextureLevels - 1))
<= ctx->Const.MaxViewportWidth);
assert((1 << (ctx->Const.MaxTextureLevels - 1))
<= ctx->Const.MaxViewportHeight);
assert(ctx->Const.MaxDrawBuffers <= MAX_DRAW_BUFFERS);

View File

@@ -726,6 +726,14 @@ _swrast_CreateContext( struct gl_context *ctx )
const GLuint maxThreads = 1;
#endif
assert(ctx->Const.MaxViewportWidth <= MAX_WIDTH);
assert(ctx->Const.MaxViewportHeight <= MAX_WIDTH);
/* make sure largest texture image is <= MAX_WIDTH in size */
assert((1 << (ctx->Const.MaxTextureLevels - 1)) <= MAX_WIDTH);
assert((1 << (ctx->Const.MaxCubeTextureLevels - 1)) <= MAX_WIDTH);
assert((1 << (ctx->Const.Max3DTextureLevels - 1)) <= MAX_WIDTH);
if (SWRAST_DEBUG) {
_mesa_debug(ctx, "_swrast_CreateContext\n");
}