mesa: Branch 'glsl-compiler-1' - 7 commits

Brian Paul brianp at kemper.freedesktop.org
Wed Mar 7 20:07:49 UTC 2007


 src/mesa/main/getstring.c                       |    4 -
 src/mesa/shader/slang/library/slang_core.gc     |    4 -
 src/mesa/shader/slang/library/slang_core_gc.h   |   42 +++++++++---------
 src/mesa/shader/slang/slang_codegen.c           |   55 +++++++++++-------------
 src/mesa/shader/slang/slang_compile.c           |    4 -
 src/mesa/shader/slang/slang_compile_function.c  |    1 
 src/mesa/shader/slang/slang_compile_function.h  |    5 --
 src/mesa/shader/slang/slang_compile_operation.c |    3 +
 src/mesa/shader/slang/slang_compile_operation.h |    4 -
 src/mesa/shader/slang/slang_emit.c              |    4 +
 src/mesa/shader/slang/slang_print.c             |    4 -
 src/mesa/shader/slang/slang_typeinfo.c          |    4 -
 src/mesa/shader/slang/slang_typeinfo.h          |    2 
 src/mesa/swrast/s_span.c                        |    2 
 14 files changed, 69 insertions(+), 69 deletions(-)

New commits:
diff-tree c3412e9a082a0c23b865b58c8bfab64adf404946 (from 842c782ceede0548546a7a015c6e04a4626f7b37)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 13:07:40 2007 -0700

    regenerated

diff --git a/src/mesa/shader/slang/library/slang_core_gc.h b/src/mesa/shader/slang/library/slang_core_gc.h
index 9bfa472..ea0f32f 100644
--- a/src/mesa/shader/slang/library/slang_core_gc.h
+++ b/src/mesa/shader/slang/library/slang_core_gc.h
@@ -766,27 +766,27 @@
 0,18,118,0,58,105,118,101,99,51,0,16,10,49,0,0,0,47,20,0,0,1,0,8,0,95,95,112,111,115,116,68,101,99,
 114,0,1,0,2,8,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,58,
 105,118,101,99,52,0,16,10,49,0,0,0,47,20,0,0,1,0,9,0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,9,
-97,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,17,49,0,48,0,0,47,
-20,0,0,1,0,10,0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,10,118,0,0,0,1,9,18,95,95,114,101,116,
-86,97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,
-11,0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,11,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,
-18,118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,12,0,95,95,
-112,111,115,116,68,101,99,114,0,1,0,2,12,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,
-20,0,9,18,118,0,18,118,0,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,13,0,95,95,112,111,
-115,116,68,101,99,114,0,1,0,2,13,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,109,0,20,0,9,18,
-109,0,16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,9,18,109,0,
-16,10,49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,14,0,95,
-95,112,111,115,116,68,101,99,114,0,1,0,2,14,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,109,
-0,20,0,9,18,109,0,16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,
-9,18,109,0,16,10,49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,9,18,
-109,0,16,10,50,0,57,18,109,0,16,10,50,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,15,
-0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,15,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,
-109,0,20,0,9,18,109,0,16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,
-20,0,9,18,109,0,16,10,49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,
-9,18,109,0,16,10,50,0,57,18,109,0,16,10,50,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,9,18,
-109,0,16,10,51,0,57,18,109,0,16,10,51,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,9,0,
-95,95,112,111,115,116,73,110,99,114,0,1,0,2,9,97,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,97,
-0,20,0,9,18,97,0,18,97,0,16,10,49,0,46,20,0,0,1,0,10,0,95,95,112,111,115,116,73,110,99,114,0,1,0,2,
+97,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,97,0,20,0,9,18,97,0,18,97,0,17,49,0,48,0,0,47,20,
+0,0,1,0,10,0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,10,118,0,0,0,1,9,18,95,95,114,101,116,86,
+97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,11,
+0,95,95,112,111,115,116,68,101,99,114,0,1,0,2,11,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,
+118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,12,0,95,95,112,
+111,115,116,68,101,99,114,0,1,0,2,12,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,20,0,
+9,18,118,0,18,118,0,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,13,0,95,95,112,111,115,116,
+68,101,99,114,0,1,0,2,13,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,109,0,20,0,9,18,109,0,
+16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,9,18,109,0,16,10,
+49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,50,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,14,0,95,95,112,
+111,115,116,68,101,99,114,0,1,0,2,14,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,109,0,20,0,
+9,18,109,0,16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,9,18,
+109,0,16,10,49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,9,18,109,
+0,16,10,50,0,57,18,109,0,16,10,50,0,57,58,118,101,99,51,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,15,0,95,
+95,112,111,115,116,68,101,99,114,0,1,0,2,15,109,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,109,
+0,20,0,9,18,109,0,16,8,48,0,57,18,109,0,16,8,48,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,
+9,18,109,0,16,10,49,0,57,18,109,0,16,10,49,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,9,18,
+109,0,16,10,50,0,57,18,109,0,16,10,50,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,9,18,109,
+0,16,10,51,0,57,18,109,0,16,10,51,0,57,58,118,101,99,52,0,17,49,0,48,0,0,0,0,47,20,0,0,1,0,9,0,95,
+95,112,111,115,116,73,110,99,114,0,1,0,2,9,97,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,97,0,
+20,0,9,18,97,0,18,97,0,16,10,49,0,46,20,0,0,1,0,10,0,95,95,112,111,115,116,73,110,99,114,0,1,0,2,
 10,118,0,0,0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,
 50,0,17,49,0,48,0,0,0,0,46,20,0,0,1,0,11,0,95,95,112,111,115,116,73,110,99,114,0,1,0,2,11,118,0,0,
 0,1,9,18,95,95,114,101,116,86,97,108,0,18,118,0,20,0,9,18,118,0,18,118,0,58,118,101,99,51,0,17,49,
diff-tree 842c782ceede0548546a7a015c6e04a4626f7b37 (from faeea574afcdd45200aea4a78fb7d80b2aa56552)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 13:07:07 2007 -0700

    use 2.0, 2.1 version strings

diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c
index f033ddc..e41e989 100644
--- a/src/mesa/main/getstring.c
+++ b/src/mesa/main/getstring.c
@@ -54,8 +54,8 @@ _mesa_GetString( GLenum name )
    static const char *version_1_3 = "1.3 Mesa " MESA_VERSION_STRING;
    static const char *version_1_4 = "1.4 Mesa " MESA_VERSION_STRING;
    static const char *version_1_5 = "1.5 Mesa " MESA_VERSION_STRING;
-   static const char *version_2_0 = "1.5 Mesa " MESA_VERSION_STRING;
-   static const char *version_2_1 = "1.5 Mesa " MESA_VERSION_STRING;
+   static const char *version_2_0 = "2.0 Mesa " MESA_VERSION_STRING;
+   static const char *version_2_1 = "2.1 Mesa " MESA_VERSION_STRING;
 
 #if FEATURE_ARB_shading_language_100
    static const char *sl_version_110 = "1.10 Mesa " MESA_VERSION_STRING;
diff-tree faeea574afcdd45200aea4a78fb7d80b2aa56552 (from 35d25c0ce4104d41feead679573543427f99a031)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 13:00:06 2007 -0700

    remove end_label field

diff --git a/src/mesa/shader/slang/slang_compile_function.c b/src/mesa/shader/slang/slang_compile_function.c
index 9b0bdaf..2f74050 100644
--- a/src/mesa/shader/slang/slang_compile_function.c
+++ b/src/mesa/shader/slang/slang_compile_function.c
@@ -86,7 +86,6 @@ slang_function_construct(slang_function 
    func->param_count = 0;
    func->body = NULL;
    func->address = ~0;
-   func->end_label = 0;
    slang_fixup_table_init(&func->fixups);
    return 1;
 }
diff --git a/src/mesa/shader/slang/slang_compile_function.h b/src/mesa/shader/slang/slang_compile_function.h
index 09fbfd9..a59b094 100644
--- a/src/mesa/shader/slang/slang_compile_function.h
+++ b/src/mesa/shader/slang/slang_compile_function.h
@@ -66,11 +66,6 @@ typedef struct slang_function_
    slang_operation *body;      /**< The instruction tree */
    unsigned int address;       /**< Address of this func in memory */
    slang_fixup_table fixups;   /**< Mem locations which need func's address */
-#if 0
-   slang_atom end_label;       /**< The end-of-function label */
-#else
-   struct slang_label_ *end_label;
-#endif
 } slang_function;
 
 extern int slang_function_construct(slang_function *);
diff-tree 35d25c0ce4104d41feead679573543427f99a031 (from 5b5a80d011d143f1bbd9be39dc4ca6a0af4bad7c)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 12:59:01 2007 -0700

    Fix problem with nested function calls such as y = f(f(x))
    
    Replace CurFunction with curFuncEndLabel.

diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c
index d1e3544..fc000db 100644
--- a/src/mesa/shader/slang/slang_codegen.c
+++ b/src/mesa/shader/slang/slang_codegen.c
@@ -437,6 +437,7 @@ static slang_ir_node *
 new_label(slang_label *label)
 {
    slang_ir_node *n = new_node0(IR_LABEL);
+   assert(label);
    if (n)
       n->Label = label;
    return n;
@@ -474,6 +475,7 @@ static slang_ir_node *
 new_jump(slang_label *dest)
 {
    slang_ir_node *n = new_node0(IR_JUMP);
+   assert(dest);
    if (n)
       n->Label = dest;
    return n;
@@ -1007,7 +1009,7 @@ slang_inline_function_call(slang_assembl
                                                     &inlined->children,
                                                     inlined->num_children);
       lab->type = SLANG_OPER_LABEL;
-      lab->label = A->CurFunction->end_label;
+      lab->label = A->curFuncEndLabel;
    }
 
    for (i = 0; i < totalArgs; i++) {
@@ -1049,16 +1051,13 @@ _slang_gen_function_call(slang_assemble_
 {
    slang_ir_node *n;
    slang_operation *inlined;
-   slang_function *prevFunc;
+   slang_label *prevFuncEndLabel;
+   char name[200];
 
-   prevFunc = A->CurFunction;
-   A->CurFunction = fun;
-
-   if (!A->CurFunction->end_label) {
-      char name[200];
-      sprintf(name, "__endOfFunc_%s_", (char *) A->CurFunction->header.a_name);
-      A->CurFunction->end_label = _slang_label_new(name);
-   }
+   prevFuncEndLabel = A->curFuncEndLabel;
+   sprintf(name, "__endOfFunc_%s_", (char *) fun->header.a_name);
+   A->curFuncEndLabel = _slang_label_new(name);
+   assert(A->curFuncEndLabel);
 
    if (slang_is_asm_function(fun) && !dest) {
       /* assemble assembly function - tree style */
@@ -1088,9 +1087,9 @@ _slang_gen_function_call(slang_assemble_
 
    n = _slang_gen_operation(A, oper);
 
-   A->CurFunction->end_label = NULL; /* XXX delete/free? */
-
-   A->CurFunction = prevFunc;
+   /*_slang_label_delete(A->curFuncEndLabel);*/
+   A->curFuncEndLabel = prevFuncEndLabel;
+   assert(A->curFuncEndLabel);
 
    return n;
 }
@@ -1712,7 +1711,8 @@ _slang_gen_return(slang_assemble_ctx * A
       slang_operation gotoOp;
       slang_operation_construct(&gotoOp);
       gotoOp.type = SLANG_OPER_GOTO;
-      gotoOp.label = A->CurFunction->end_label;
+      gotoOp.label = A->curFuncEndLabel;
+      assert(gotoOp.label);
 
       /* assemble the new code */
       n = _slang_gen_operation(A, &gotoOp);
@@ -1767,9 +1767,10 @@ _slang_gen_return(slang_assemble_ctx * A
       /* child[1]: goto __endOfFunction */
       jump = &block->children[1];
       jump->type = SLANG_OPER_GOTO;
-      assert(A->CurFunction->end_label);
+      assert(A->curFuncEndLabel);
       /* XXX don't call function? */
-      jump->label = A->CurFunction->end_label;
+      jump->label = A->curFuncEndLabel;
+      assert(jump->label);
 
 #if 0 /* debug */
       printf("NEW RETURN:\n");
@@ -2679,11 +2680,8 @@ _slang_codegen_function(slang_assemble_c
    /* fold constant expressions, etc. */
    _slang_simplify(fun->body, &A->space, A->atoms);
 
-   A->CurFunction = fun;
-
    /* Create an end-of-function label */
-   if (!A->CurFunction->end_label)
-      A->CurFunction->end_label = _slang_label_new("__endOfFunc__main");
+   A->curFuncEndLabel = _slang_label_new("__endOfFunc__main");
 
    /* push new vartable scope */
    _slang_push_var_table(A->vartable);
@@ -2702,9 +2700,10 @@ _slang_codegen_function(slang_assemble_c
    }
 
    /* append an end-of-function-label to IR tree */
-   n = new_seq(n, new_label(fun->end_label));
+   n = new_seq(n, new_label(A->curFuncEndLabel));
 
-   A->CurFunction = NULL;
+   /*_slang_label_delete(A->curFuncEndLabel);*/
+   A->curFuncEndLabel = NULL;
 
 #if 0
    printf("************* New AST for %s *****\n", (char*)fun->header.a_name);
diff --git a/src/mesa/shader/slang/slang_emit.c b/src/mesa/shader/slang/slang_emit.c
index 9532e07..55338d6 100644
--- a/src/mesa/shader/slang/slang_emit.c
+++ b/src/mesa/shader/slang/slang_emit.c
@@ -899,6 +899,8 @@ static struct prog_instruction *
 emit_jump(slang_emit_info *emitInfo, slang_ir_node *n)
 {
    struct prog_instruction *inst;
+   assert(n);
+   assert(n->Label);
    inst = new_instruction(emitInfo, OPCODE_BRA);
    inst->DstReg.CondMask = COND_TR;  /* always branch */
    inst->BranchTarget = _slang_label_get_location(n->Label);
@@ -1557,6 +1559,8 @@ emit(slang_emit_info *emitInfo, slang_ir
    case IR_LABEL:
       return emit_label(emitInfo, n);
    case IR_JUMP:
+      assert(n);
+      assert(n->Label);
       return emit_jump(emitInfo, n);
    case IR_CJUMP0:
       return emit_cjump(emitInfo, n, 0);
diff --git a/src/mesa/shader/slang/slang_typeinfo.h b/src/mesa/shader/slang/slang_typeinfo.h
index 62cf000..bde2e67 100644
--- a/src/mesa/shader/slang/slang_typeinfo.h
+++ b/src/mesa/shader/slang/slang_typeinfo.h
@@ -62,7 +62,7 @@ typedef struct slang_assemble_ctx_
    struct gl_program *program;
    slang_var_table *vartable;
    slang_info_log *log;
-   struct slang_function_ *CurFunction;
+   struct slang_label_ *curFuncEndLabel;
    struct slang_ir_node_ *CurLoop;
 } slang_assemble_ctx;
 
diff-tree 5b5a80d011d143f1bbd9be39dc4ca6a0af4bad7c (from ab673c852724e81365ab9d979881da7464131854)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 11:26:47 2007 -0700

    s/equal/EQUAL/, fix bugs in logical or/and code.

diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c
index 5c2ee3c..d1e3544 100644
--- a/src/mesa/shader/slang/slang_codegen.c
+++ b/src/mesa/shader/slang/slang_codegen.c
@@ -1650,8 +1650,8 @@ _slang_gen_logical_and(slang_assemble_ct
    slang_operation_copy(&select->children[0], &oper->children[0]);
    slang_operation_copy(&select->children[1], &oper->children[1]);
    select->children[2].type = SLANG_OPER_LITERAL_BOOL;
-   ASSIGN_4V(select->children[2].literal, 0, 0, 0, 0);
-   select->children[2].literal_size = 2;
+   ASSIGN_4V(select->children[2].literal, 0, 0, 0, 0); /* false */
+   select->children[2].literal_size = 1;
 
    n = _slang_gen_select(A, select);
 
@@ -1680,9 +1680,9 @@ _slang_gen_logical_or(slang_assemble_ctx
 
    slang_operation_copy(&select->children[0], &oper->children[0]);
    select->children[1].type = SLANG_OPER_LITERAL_BOOL;
-   ASSIGN_4V(select->children[2].literal, 1, 1, 1, 1);
+   ASSIGN_4V(select->children[1].literal, 1, 1, 1, 1); /* true */
+   select->children[1].literal_size = 1;
    slang_operation_copy(&select->children[2], &oper->children[1]);
-   select->children[2].literal_size = 2;
 
    n = _slang_gen_select(A, select);
 
@@ -2281,11 +2281,11 @@ _slang_gen_operation(slang_assemble_ctx 
       return new_node2(IR_SGT,
                       _slang_gen_operation(A, &oper->children[1]),
                       _slang_gen_operation(A, &oper->children[0]));
-   case SLANG_OPER_GREATERequal:
+   case SLANG_OPER_GREATEREQUAL:
       return new_node2(IR_SGE,
                       _slang_gen_operation(A, &oper->children[0]),
                       _slang_gen_operation(A, &oper->children[1]));
-   case SLANG_OPER_LESSequal:
+   case SLANG_OPER_LESSEQUAL:
       /* child[0] <= child[1]  ---->   child[1] >= child[0] */
       return new_node2(IR_SGE,
                       _slang_gen_operation(A, &oper->children[1]),
diff --git a/src/mesa/shader/slang/slang_compile.c b/src/mesa/shader/slang/slang_compile.c
index 4609de6..e183752 100644
--- a/src/mesa/shader/slang/slang_compile.c
+++ b/src/mesa/shader/slang/slang_compile.c
@@ -1037,12 +1037,12 @@ parse_expression(slang_parse_ctx * C, sl
             return 0;
          break;
       case OP_LESSEQUAL:
-         op->type = SLANG_OPER_LESSequal;
+         op->type = SLANG_OPER_LESSEQUAL;
          if (!handle_nary_expression(C, op, &ops, &num_ops, 2))
             return 0;
          break;
       case OP_GREATEREQUAL:
-         op->type = SLANG_OPER_GREATERequal;
+         op->type = SLANG_OPER_GREATEREQUAL;
          if (!handle_nary_expression(C, op, &ops, &num_ops, 2))
             return 0;
          break;
diff --git a/src/mesa/shader/slang/slang_compile_operation.c b/src/mesa/shader/slang/slang_compile_operation.c
index aa66be8..cf82080 100644
--- a/src/mesa/shader/slang/slang_compile_operation.c
+++ b/src/mesa/shader/slang/slang_compile_operation.c
@@ -42,6 +42,7 @@ slang_operation_construct(slang_operatio
    oper->children = NULL;
    oper->num_children = 0;
    oper->literal[0] = 0.0;
+   oper->literal_size = 1;
    oper->a_id = SLANG_ATOM_NULL;
    oper->locals = _slang_variable_scope_new(NULL);
    if (oper->locals == NULL)
@@ -104,6 +105,8 @@ slang_operation_copy(slang_operation * x
    z.literal[2] = y->literal[2];
    z.literal[3] = y->literal[3];
    z.literal_size = y->literal_size;
+   assert(y->literal_size >= 1);
+   assert(y->literal_size <= 4);
    z.a_id = y->a_id;
    if (y->locals) {
       if (!slang_variable_scope_copy(z.locals, y->locals)) {
diff --git a/src/mesa/shader/slang/slang_compile_operation.h b/src/mesa/shader/slang/slang_compile_operation.h
index 4adcd2a..02f677f 100644
--- a/src/mesa/shader/slang/slang_compile_operation.h
+++ b/src/mesa/shader/slang/slang_compile_operation.h
@@ -77,8 +77,8 @@ typedef enum slang_operation_type_
    SLANG_OPER_NOTEQUAL,         /* [expr] "!=" [expr] */
    SLANG_OPER_LESS,             /* [expr] "<" [expr] */
    SLANG_OPER_GREATER,          /* [expr] ">" [expr] */
-   SLANG_OPER_LESSequal,        /* [expr] "<=" [expr] */
-   SLANG_OPER_GREATERequal,     /* [expr] ">=" [expr] */
+   SLANG_OPER_LESSEQUAL,        /* [expr] "<=" [expr] */
+   SLANG_OPER_GREATEREQUAL,     /* [expr] ">=" [expr] */
    /*SLANG_OPER_LSHIFT, */
    /*SLANG_OPER_RSHIFT, */
    SLANG_OPER_ADD,              /* [expr] "+" [expr] */
diff --git a/src/mesa/shader/slang/slang_print.c b/src/mesa/shader/slang/slang_print.c
index e53378e..a2f3691 100644
--- a/src/mesa/shader/slang/slang_print.c
+++ b/src/mesa/shader/slang/slang_print.c
@@ -499,11 +499,11 @@ slang_print_tree(const slang_operation *
       print_binary(op, ">", indent);
       break;
 
-   case SLANG_OPER_LESSequal:
+   case SLANG_OPER_LESSEQUAL:
       print_binary(op, "<=", indent);
       break;
 
-   case SLANG_OPER_GREATERequal:
+   case SLANG_OPER_GREATEREQUAL:
       print_binary(op, ">=", indent);
       break;
 
diff --git a/src/mesa/shader/slang/slang_typeinfo.c b/src/mesa/shader/slang/slang_typeinfo.c
index 07ec514..6a358d6 100644
--- a/src/mesa/shader/slang/slang_typeinfo.c
+++ b/src/mesa/shader/slang/slang_typeinfo.c
@@ -392,8 +392,8 @@ _slang_typeof_operation_(const slang_ope
    case SLANG_OPER_NOTEQUAL:
    case SLANG_OPER_LESS:
    case SLANG_OPER_GREATER:
-   case SLANG_OPER_LESSequal:
-   case SLANG_OPER_GREATERequal:
+   case SLANG_OPER_LESSEQUAL:
+   case SLANG_OPER_GREATEREQUAL:
    case SLANG_OPER_NOT:
       ti->spec.type = SLANG_SPEC_BOOL;
       break;
diff-tree ab673c852724e81365ab9d979881da7464131854 (from 1dca0891492dc5d2974239f04883a41a1738d91f)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 11:25:37 2007 -0700

    fix broken __postDecr()

diff --git a/src/mesa/shader/slang/library/slang_core.gc b/src/mesa/shader/slang/library/slang_core.gc
index 0c45515..25afccf 100644
--- a/src/mesa/shader/slang/library/slang_core.gc
+++ b/src/mesa/shader/slang/library/slang_core.gc
@@ -2333,8 +2333,8 @@ ivec4 __postDecr(inout ivec4 v)
 
 float __postDecr(inout float a)
 {
-   __retVal = v;
-   v = v - 1.0;
+   __retVal = a;
+   a = a - 1.0;
 }
 
 vec2 __postDecr(inout vec2 v)
diff-tree 1dca0891492dc5d2974239f04883a41a1738d91f (from 3efd0c7b8d1aaa8abd78b35e4cb92dae4279dd77)
Author: Brian <brian at yutani.localnet.net>
Date:   Wed Mar 7 10:42:44 2007 -0700

    fix deferredTexture bug

diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c
index 724cf61..a2044d0 100644
--- a/src/mesa/swrast/s_span.c
+++ b/src/mesa/swrast/s_span.c
@@ -1351,7 +1351,7 @@ _swrast_write_rgba_span( GLcontext *ctx,
    }
    else if (shaderOrTexture) {
       if (ctx->FragmentProgram._Current) {
-         if (ctx->FragmentProgram.Current->Base.OutputsWritten
+         if (ctx->FragmentProgram._Current->Base.OutputsWritten
              & (1 << FRAG_RESULT_DEPR)) {
             /* Z comes from fragment program/shader */
             deferredTexture = GL_FALSE;



More information about the mesa-commit mailing list