瀏覽代碼

swrast: clean up and remove dead code in triangle functions

tags/mesa_7_7_rc1
Brian Paul 16 年之前
父節點
當前提交
0103d7a47a
共有 1 個文件被更改,包括 47 次插入57 次删除
  1. 47
    57
      src/mesa/swrast/s_triangle.c

+ 47
- 57
src/mesa/swrast/s_triangle.c 查看文件

@@ -134,15 +134,17 @@ _swrast_culltriangle( GLcontext *ctx,

#define SETUP_CODE \
struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[0]; \
struct gl_texture_object *obj = \
const struct gl_texture_object *obj = \
ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; \
const GLint b = obj->BaseLevel; \
const GLfloat twidth = (GLfloat) obj->Image[0][b]->Width; \
const GLfloat theight = (GLfloat) obj->Image[0][b]->Height; \
const GLint twidth_log2 = obj->Image[0][b]->WidthLog2; \
const GLubyte *texture = (const GLubyte *) obj->Image[0][b]->Data; \
const GLint smask = obj->Image[0][b]->Width - 1; \
const GLint tmask = obj->Image[0][b]->Height - 1; \
const struct gl_texture_image *texImg = \
obj->Image[0][obj->BaseLevel]; \
const GLfloat twidth = (GLfloat) texImg->Width; \
const GLfloat theight = (GLfloat) texImg->Height; \
const GLint twidth_log2 = texImg->WidthLog2; \
const GLubyte *texture = (const GLubyte *) texImg->Data; \
const GLint smask = texImg->Width - 1; \
const GLint tmask = texImg->Height - 1; \
ASSERT(texImg->TexFormat == MESA_FORMAT_RGB888); \
if (!rb || !texture) { \
return; \
}
@@ -186,15 +188,17 @@ _swrast_culltriangle( GLcontext *ctx,

#define SETUP_CODE \
struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[0]; \
struct gl_texture_object *obj = \
const struct gl_texture_object *obj = \
ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; \
const GLint b = obj->BaseLevel; \
const GLfloat twidth = (GLfloat) obj->Image[0][b]->Width; \
const GLfloat theight = (GLfloat) obj->Image[0][b]->Height; \
const GLint twidth_log2 = obj->Image[0][b]->WidthLog2; \
const GLubyte *texture = (const GLubyte *) obj->Image[0][b]->Data; \
const GLint smask = obj->Image[0][b]->Width - 1; \
const GLint tmask = obj->Image[0][b]->Height - 1; \
const struct gl_texture_image *texImg = \
obj->Image[0][obj->BaseLevel]; \
const GLfloat twidth = (GLfloat) texImg->Width; \
const GLfloat theight = (GLfloat) texImg->Height; \
const GLint twidth_log2 = texImg->WidthLog2; \
const GLubyte *texture = (const GLubyte *) texImg->Data; \
const GLint smask = texImg->Width - 1; \
const GLint tmask = texImg->Height - 1; \
ASSERT(texImg->TexFormat == MESA_FORMAT_RGB888); \
if (!rb || !texture) { \
return; \
}
@@ -536,16 +540,17 @@ affine_span(GLcontext *ctx, SWspan *span,
#define SETUP_CODE \
struct affine_info info; \
struct gl_texture_unit *unit = ctx->Texture.Unit+0; \
struct gl_texture_object *obj = \
const struct gl_texture_object *obj = \
ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; \
const GLint b = obj->BaseLevel; \
const GLfloat twidth = (GLfloat) obj->Image[0][b]->Width; \
const GLfloat theight = (GLfloat) obj->Image[0][b]->Height; \
info.texture = (const GLchan *) obj->Image[0][b]->Data; \
info.twidth_log2 = obj->Image[0][b]->WidthLog2; \
info.smask = obj->Image[0][b]->Width - 1; \
info.tmask = obj->Image[0][b]->Height - 1; \
info.format = obj->Image[0][b]->TexFormat; \
const struct gl_texture_image *texImg = \
obj->Image[0][obj->BaseLevel]; \
const GLfloat twidth = (GLfloat) texImg->Width; \
const GLfloat theight = (GLfloat) texImg->Height; \
info.texture = (const GLchan *) texImg->Data; \
info.twidth_log2 = texImg->WidthLog2; \
info.smask = texImg->Width - 1; \
info.tmask = texImg->Height - 1; \
info.format = texImg->TexFormat; \
info.filter = obj->MinFilter; \
info.envmode = unit->EnvMode; \
span.arrayMask |= SPAN_RGBA; \
@@ -563,25 +568,17 @@ affine_span(GLcontext *ctx, SWspan *span,
} \
\
switch (info.format) { \
case MESA_FORMAT_A8: \
case MESA_FORMAT_L8: \
case MESA_FORMAT_I8: \
info.tbytesline = obj->Image[0][b]->Width; \
break; \
case MESA_FORMAT_AL88: \
info.tbytesline = obj->Image[0][b]->Width * 2; \
break; \
case MESA_FORMAT_RGB888: \
info.tbytesline = obj->Image[0][b]->Width * 3; \
info.tbytesline = texImg->Width * 3; \
break; \
case MESA_FORMAT_RGBA8888: \
info.tbytesline = obj->Image[0][b]->Width * 4; \
info.tbytesline = texImg->Width * 4; \
break; \
default: \
_mesa_problem(NULL, "Bad texture format in affine_texture_triangle");\
return; \
} \
info.tsize = obj->Image[0][b]->Height * info.tbytesline;
info.tsize = texImg->Height * info.tbytesline;

#define RENDER_SPAN( span ) affine_span(ctx, &span, &info);

@@ -807,14 +804,15 @@ fast_persp_span(GLcontext *ctx, SWspan *span,
#define SETUP_CODE \
struct persp_info info; \
const struct gl_texture_unit *unit = ctx->Texture.Unit+0; \
struct gl_texture_object *obj = \
const struct gl_texture_object *obj = \
ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; \
const GLint b = obj->BaseLevel; \
info.texture = (const GLchan *) obj->Image[0][b]->Data; \
info.twidth_log2 = obj->Image[0][b]->WidthLog2; \
info.smask = obj->Image[0][b]->Width - 1; \
info.tmask = obj->Image[0][b]->Height - 1; \
info.format = obj->Image[0][b]->TexFormat; \
const struct gl_texture_image *texImg = \
obj->Image[0][obj->BaseLevel]; \
info.texture = (const GLchan *) texImg->Data; \
info.twidth_log2 = texImg->WidthLog2; \
info.smask = texImg->Width - 1; \
info.tmask = texImg->Height - 1; \
info.format = texImg->TexFormat; \
info.filter = obj->MinFilter; \
info.envmode = unit->EnvMode; \
\
@@ -831,25 +829,17 @@ fast_persp_span(GLcontext *ctx, SWspan *span,
} \
\
switch (info.format) { \
case MESA_FORMAT_A8: \
case MESA_FORMAT_L8: \
case MESA_FORMAT_I8: \
info.tbytesline = obj->Image[0][b]->Width; \
break; \
case MESA_FORMAT_AL88: \
info.tbytesline = obj->Image[0][b]->Width * 2; \
break; \
case MESA_FORMAT_RGB888: \
info.tbytesline = obj->Image[0][b]->Width * 3; \
info.tbytesline = texImg->Width * 3; \
break; \
case MESA_FORMAT_RGBA8888: \
info.tbytesline = obj->Image[0][b]->Width * 4; \
info.tbytesline = texImg->Width * 4; \
break; \
default: \
_mesa_problem(NULL, "Bad texture format in persp_textured_triangle");\
return; \
} \
info.tsize = obj->Image[0][b]->Height * info.tbytesline;
info.tsize = texImg->Height * info.tbytesline;

#define RENDER_SPAN( span ) \
span.interpMask &= ~SPAN_RGBA; \
@@ -1067,9 +1057,9 @@ _swrast_choose_triangle( GLcontext *ctx )
texObj2D = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX];

texImg = texObj2D ? texObj2D->Image[0][texObj2D->BaseLevel] : NULL;
format = texImg ? texImg->TexFormat : -1;
minFilter = texObj2D ? texObj2D->MinFilter : (GLenum) 0;
magFilter = texObj2D ? texObj2D->MagFilter : (GLenum) 0;
format = texImg ? texImg->TexFormat : MESA_FORMAT_NONE;
minFilter = texObj2D ? texObj2D->MinFilter : GL_NONE;
magFilter = texObj2D ? texObj2D->MagFilter : GL_NONE;
envMode = ctx->Texture.Unit[0].EnvMode;

/* First see if we can use an optimized 2-D texture function */

Loading…
取消
儲存