diff options
| author | Dan Nicholson <dbn.lists@gmail.com> | 2008-05-06 14:29:59 -0700 | 
|---|---|---|
| committer | Dan Nicholson <dbn.lists@gmail.com> | 2008-05-06 14:29:59 -0700 | 
| commit | 8eee0146f28285bdc778051afd89088685f2c3b6 (patch) | |
| tree | 21ece7cf3f2f0f133031972c0a1ec370520f7b49 | |
| parent | 9f948b8c335b099b305b55a2c176841a0354cdad (diff) | |
| parent | 7f747204ea3b61e507b8bd48f33e8dd83f34705b (diff) | |
Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa
| -rw-r--r-- | src/mesa/main/dlist.c | 33 | 
1 files changed, 33 insertions, 0 deletions
| diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c index 23ede7bb68..63a00e04f5 100644 --- a/src/mesa/main/dlist.c +++ b/src/mesa/main/dlist.c @@ -3248,6 +3248,36 @@ save_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)  static void GLAPIENTRY +save_StencilFuncSeparateATI(GLenum frontfunc, GLenum backfunc, GLint ref, +                            GLuint mask) +{ +   GET_CURRENT_CONTEXT(ctx); +   Node *n; +   ASSERT_OUTSIDE_SAVE_BEGIN_END_AND_FLUSH(ctx); +   /* GL_FRONT */ +   n = ALLOC_INSTRUCTION(ctx, OPCODE_STENCIL_FUNC_SEPARATE, 4); +   if (n) { +      n[1].e = GL_FRONT; +      n[2].e = frontfunc; +      n[3].i = ref; +      n[4].ui = mask; +   } +   /* GL_BACK */ +   n = ALLOC_INSTRUCTION(ctx, OPCODE_STENCIL_FUNC_SEPARATE, 4); +   if (n) { +      n[1].e = GL_BACK; +      n[2].e = backfunc; +      n[3].i = ref; +      n[4].ui = mask; +   } +   if (ctx->ExecuteFlag) { +      CALL_StencilFuncSeparate(ctx->Exec, (GL_FRONT, frontfunc, ref, mask)); +      CALL_StencilFuncSeparate(ctx->Exec, (GL_BACK, backfunc, ref, mask)); +   } +} + + +static void GLAPIENTRY  save_StencilMaskSeparate(GLenum face, GLuint mask)  {     GET_CURRENT_CONTEXT(ctx); @@ -7838,6 +7868,9 @@ _mesa_init_dlist_table(struct _glapi_table *table)     SET_StencilMaskSeparate(table, save_StencilMaskSeparate);     SET_StencilOpSeparate(table, save_StencilOpSeparate); +   /* ATI_separate_stencil */  +   SET_StencilFuncSeparateATI(table, save_StencilFuncSeparateATI); +     /* GL_ARB_imaging */     /* Not all are supported */     SET_BlendColor(table, save_BlendColor); | 
