fix g++ warnings/errors
authorBrian <brian@nostromo.localnet.net>
Tue, 23 Jan 2007 23:37:51 +0000 (16:37 -0700)
committerBrian <brian@nostromo.localnet.net>
Tue, 23 Jan 2007 23:37:51 +0000 (16:37 -0700)
src/mesa/main/texenvprogram.c
src/mesa/shader/arbprogram.c
src/mesa/shader/prog_parameter.c
src/mesa/shader/prog_parameter.h
src/mesa/shader/prog_statevars.c
src/mesa/shader/shader_api.c
src/mesa/shader/slang/slang_codegen.c
src/mesa/shader/slang/slang_emit.c
src/mesa/shader/slang/slang_link2.c
src/mesa/sources
src/mesa/swrast/s_fragprog.c

index 3cb2adbde2efc6e92b1b065beeff7a772de16219..b69e6501595542b9e84cba7918bb8b17a48aeed1 100644 (file)
@@ -1187,13 +1187,14 @@ static void cache_item( struct texenvprog_cache *cache,
                        const struct state_key *key,
                        void *data )
 {
-   struct texenvprog_cache_item *c = MALLOC(sizeof(*c));
+   struct texenvprog_cache_item *c
+      = (struct texenvprog_cache_item *) MALLOC(sizeof(*c));
    c->hash = hash;
 
    c->key = _mesa_malloc(sizeof(*key));
    memcpy(c->key, key, sizeof(*key));
 
-   c->data = data;
+   c->data = (struct gl_fragment_program *) data;
 
    if (cache->n_items > cache->size * 1.5) {
       if (cache->size < 1000)
index f3b25da3948d25c90975346ce3a9fe09655e6b7b..5583f16ce8d3224f011ebd0392736c35ed081f58 100644 (file)
@@ -312,7 +312,7 @@ _mesa_ProgramEnvParameters4fvEXT(GLenum target, GLuint index, GLsizei count,
                                 const GLfloat *params)
 {
    GET_CURRENT_CONTEXT(ctx);
-   unsigned i;
+   GLint i;
    GLfloat * dest;
    ASSERT_OUTSIDE_BEGIN_END(ctx);
 
@@ -464,7 +464,7 @@ _mesa_ProgramLocalParameters4fvEXT(GLenum target, GLuint index, GLsizei count,
 {
    GET_CURRENT_CONTEXT(ctx);
    struct gl_program *prog;
-   unsigned i;
+   GLint i;
    ASSERT_OUTSIDE_BEGIN_END(ctx);
 
    FLUSH_VERTICES(ctx, _NEW_PROGRAM);
index 90118b6294fbaa53917a502001de162466d07cfd..a87dafc598cbb0f030fc3c09533e48e5df174b65 100644 (file)
@@ -217,7 +217,7 @@ _mesa_add_unnamed_constant(struct gl_program_parameter_list *paramList,
     * constants because we rely on smearing (i.e. .yyyy or .zzzz).
     */
    if (size == 1) {
-      for (pos = 0; pos < paramList->NumParameters; pos++) {
+      for (pos = 0; pos < (GLint) paramList->NumParameters; pos++) {
          struct gl_program_parameter *p = paramList->Parameters + pos;
          if (p->Type == PROGRAM_CONSTANT && p->Size + size <= 4) {
             /* ok, found room */
@@ -321,7 +321,7 @@ _mesa_add_attribute(struct gl_program_parameter_list *paramList,
    else {
       /* add */
       gl_state_index state[STATE_LENGTH];
-      state[0] = attrib;
+      state[0] = (gl_state_index) attrib;
       if (size < 0)
          size = 4;
       i = _mesa_add_parameter(paramList, PROGRAM_INPUT, name,
@@ -373,7 +373,7 @@ _mesa_add_state_reference(struct gl_program_parameter_list *paramList,
    GLint index;
 
    /* Check if the state reference is already in the list */
-   for (index = 0; index < paramList->NumParameters; index++) {
+   for (index = 0; index < (GLint) paramList->NumParameters; index++) {
       GLuint i, match = 0;
       for (i = 0; i < 6; i++) {
          if (paramList->Parameters[index].StateIndexes[i] == stateTokens[i]) {
@@ -468,7 +468,7 @@ _mesa_lookup_parameter_index(const struct gl_program_parameter_list *paramList,
  */
 GLboolean
 _mesa_lookup_parameter_constant(const struct gl_program_parameter_list *list,
-                                const GLfloat v[], GLsizei vSize,
+                                const GLfloat v[], GLuint vSize,
                                 GLint *posOut, GLuint *swizzleOut)
 {
    GLuint i;
index bfae071be05d73a924a39a88fef12d71457808c3..459643f425493d3b0d9527e29388ae552f18b078 100644 (file)
@@ -50,7 +50,7 @@ struct gl_program_parameter
    /**
     * A sequence of STATE_* tokens and integers to identify GL state.
     */
-   GLuint StateIndexes[STATE_LENGTH];
+   GLint StateIndexes[STATE_LENGTH];
 };
 
 
@@ -127,7 +127,7 @@ _mesa_lookup_parameter_index(const struct gl_program_parameter_list *paramList,
 
 extern GLboolean
 _mesa_lookup_parameter_constant(const struct gl_program_parameter_list *list,
-                                const GLfloat v[], GLsizei vSize,
+                                const GLfloat v[], GLuint vSize,
                                 GLint *posOut, GLuint *swizzleOut);
 
 extern GLuint
index a0a00cfb95d6b7a9b4d2996744da5557379abe61..3a54ab8c58e5dea080a6a35802355e24c16bafb7 100644 (file)
@@ -775,7 +775,7 @@ _mesa_load_state_parameters(GLcontext *ctx,
    for (i = 0; i < paramList->NumParameters; i++) {
       if (paramList->Parameters[i].Type == PROGRAM_STATE_VAR) {
          _mesa_fetch_state(ctx, 
-                          paramList->Parameters[i].StateIndexes,
+                          (gl_state_index *) paramList->Parameters[i].StateIndexes,
                            paramList->ParameterValues[i]);
       }
    }
index c18bbcec4be8767ec012f03d859b285af8494008..6bae17a9051a3c469749743eeb4ac0ac49a73c5b 100644 (file)
@@ -518,7 +518,7 @@ _mesa_get_attached_shaders(GLcontext *ctx, GLuint program, GLsizei maxCount,
    struct gl_shader_program *shProg
       = _mesa_lookup_shader_program(ctx, program);
    if (shProg) {
-      GLuint i;
+      GLint i;
       for (i = 0; i < maxCount && i < shProg->NumShaders; i++) {
          obj[i] = shProg->Shaders[i]->Name;
       }
@@ -719,7 +719,7 @@ _mesa_get_uniformfv(GLcontext *ctx, GLuint program, GLint location,
    struct gl_shader_program *shProg
       = _mesa_lookup_shader_program(ctx, program);
    if (shProg) {
-      GLuint i;
+      GLint i;
       if (location >= 0 && location < shProg->Uniforms->NumParameters) {
          for (i = 0; i < shProg->Uniforms->Parameters[location].Size; i++) {
             params[i] = shProg->Uniforms->ParameterValues[location][i];
@@ -883,7 +883,7 @@ _mesa_uniform(GLcontext *ctx, GLint location, GLsizei count,
       return;
    }
 
-   if (location < 0 || location >= shProg->Uniforms->NumParameters) {
+   if (location < 0 || location >= (GLint) shProg->Uniforms->NumParameters) {
       _mesa_error(ctx, GL_INVALID_VALUE, "glUniform(location)");
       return;
    }
index aba6813a8b52995e8f46ff6b6d3a20dd46966cac..ff42db9def50fb8f3f71e35d5652476fdb20e03e 100644 (file)
@@ -661,7 +661,7 @@ static slang_operation *
 slang_inline_asm_function(slang_assemble_ctx *A,
                           slang_function *fun, slang_operation *oper)
 {
-   const int numArgs = oper->num_children;
+   const GLuint numArgs = oper->num_children;
    const slang_operation *args = oper->children;
    GLuint i;
    slang_operation *inlined = slang_operation_new(1);
@@ -1052,7 +1052,8 @@ slang_inline_function_call(slang_assemble_ctx * A, slang_function *fun,
                                                     &inlined->children,
                                                     inlined->num_children);
       lab->type = slang_oper_label;
-      lab->a_id = slang_atom_pool_atom(A->atoms, A->CurFunction->end_label);
+      lab->a_id = slang_atom_pool_atom(A->atoms,
+                                       (char *) A->CurFunction->end_label);
    }
 
    for (i = 0; i < totalArgs; i++) {
@@ -1281,7 +1282,7 @@ _slang_gen_cond(slang_ir_node *n)
 static void
 print_funcs(struct slang_function_scope_ *scope, const char *name)
 {
-   int i;
+   GLuint i;
    for (i = 0; i < scope->num_functions; i++) {
       slang_function *f = &scope->functions[i];
       if (!name || strcmp(name, (char*) f->header.a_name) == 0)
@@ -1301,7 +1302,7 @@ print_funcs(struct slang_function_scope_ *scope, const char *name)
 static slang_function *
 _slang_first_function(struct slang_function_scope_ *scope, const char *name)
 {
-   int i;
+   GLuint i;
    for (i = 0; i < scope->num_functions; i++) {
       slang_function *f = &scope->functions[i];
       if (strcmp(name, (char*) f->header.a_name) == 0)
@@ -1800,7 +1801,9 @@ _slang_gen_return(slang_assemble_ctx * A, slang_operation *oper)
       slang_operation gotoOp;
       slang_operation_construct(&gotoOp);
       gotoOp.type = slang_oper_goto;
-      gotoOp.a_id = slang_atom_pool_atom(A->atoms, A->CurFunction->end_label);
+      /* XXX don't call function? */
+      gotoOp.a_id = slang_atom_pool_atom(A->atoms,
+                                         (char *) A->CurFunction->end_label);
       /* assemble the new code */
       n = _slang_gen_operation(A, &gotoOp);
       /* destroy temp code */
@@ -1855,7 +1858,9 @@ _slang_gen_return(slang_assemble_ctx * A, slang_operation *oper)
       jump = &block->children[1];
       jump->type = slang_oper_goto;
       assert(A->CurFunction->end_label);
-      jump->a_id = slang_atom_pool_atom(A->atoms, A->CurFunction->end_label);
+      /* XXX don't call function? */
+      jump->a_id = slang_atom_pool_atom(A->atoms,
+                                        (char *) A->CurFunction->end_label);
 
 #if 0 /* debug */
       printf("NEW RETURN:\n");
index 036509c51c851b3f1517ded78d473290505ad785..82e8c0b1582d17478d2bcc857af6f2d5b6a4e4d0 100644 (file)
@@ -83,35 +83,35 @@ static slang_ir_info IrInfo[] = {
    { IR_FLOOR, "IR_FLOOR", OPCODE_FLR, 4, 1 },
    { IR_FRAC, "IR_FRAC", OPCODE_FRC, 4, 1 },
    { IR_ABS, "IR_ABS", OPCODE_ABS, 4, 1 },
-   { IR_NEG, "IR_NEG", 0/*spec case*/, 4, 1 },
+   { IR_NEG, "IR_NEG", OPCODE_NOP/*spec case*/, 4, 1 },
    { IR_DDX, "IR_DDX", OPCODE_DDX, 4, 1 },
    { IR_DDX, "IR_DDY", OPCODE_DDX, 4, 1 },
    { IR_SIN, "IR_SIN", OPCODE_SIN, 1, 1 },
    { IR_COS, "IR_COS", OPCODE_COS, 1, 1 },
    /* other */
-   { IR_SEQ, "IR_SEQ", 0, 0, 0 },
-   { IR_SCOPE, "IR_SCOPE", 0, 0, 0 },
-   { IR_LABEL, "IR_LABEL", 0, 0, 0 },
-   { IR_JUMP, "IR_JUMP", 0, 0, 0 },
-   { IR_CJUMP0, "IR_CJUMP0", 0, 0, 0 },
-   { IR_CJUMP1, "IR_CJUMP1", 0, 0, 0 },
-   { IR_IF, "IR_IF", 0, 0, 0 },
-   { IR_ELSE, "IR_ELSE", 0, 0, 0 },
-   { IR_ENDIF, "IR_ENDIF", 0, 0, 0 },
-   { IR_KILL, "IR_KILL", 0, 0, 0 },
-   { IR_COND, "IR_COND", 0, 0, 0 },
-   { IR_CALL, "IR_CALL", 0, 0, 0 },
-   { IR_MOVE, "IR_MOVE", 0, 0, 1 },
-   { IR_NOT, "IR_NOT", 0, 1, 1 },
-   { IR_VAR, "IR_VAR", 0, 0, 0 },
-   { IR_VAR_DECL, "IR_VAR_DECL", 0, 0, 0 },
+   { IR_SEQ, "IR_SEQ", OPCODE_NOP, 0, 0 },
+   { IR_SCOPE, "IR_SCOPE", OPCODE_NOP, 0, 0 },
+   { IR_LABEL, "IR_LABEL", OPCODE_NOP, 0, 0 },
+   { IR_JUMP, "IR_JUMP", OPCODE_NOP, 0, 0 },
+   { IR_CJUMP0, "IR_CJUMP0", OPCODE_NOP, 0, 0 },
+   { IR_CJUMP1, "IR_CJUMP1", OPCODE_NOP, 0, 0 },
+   { IR_IF, "IR_IF", OPCODE_NOP, 0, 0 },
+   { IR_ELSE, "IR_ELSE", OPCODE_NOP, 0, 0 },
+   { IR_ENDIF, "IR_ENDIF", OPCODE_NOP, 0, 0 },
+   { IR_KILL, "IR_KILL", OPCODE_NOP, 0, 0 },
+   { IR_COND, "IR_COND", OPCODE_NOP, 0, 0 },
+   { IR_CALL, "IR_CALL", OPCODE_NOP, 0, 0 },
+   { IR_MOVE, "IR_MOVE", OPCODE_NOP, 0, 1 },
+   { IR_NOT, "IR_NOT", OPCODE_NOP, 1, 1 },
+   { IR_VAR, "IR_VAR", OPCODE_NOP, 0, 0 },
+   { IR_VAR_DECL, "IR_VAR_DECL", OPCODE_NOP, 0, 0 },
    { IR_TEX, "IR_TEX", OPCODE_TEX, 4, 1 },
    { IR_TEXB, "IR_TEXB", OPCODE_TXB, 4, 1 },
    { IR_TEXP, "IR_TEXP", OPCODE_TXP, 4, 1 },
-   { IR_FLOAT, "IR_FLOAT", 0, 0, 0 },
-   { IR_FIELD, "IR_FIELD", 0, 0, 0 },
-   { IR_ELEMENT, "IR_ELEMENT", 0, 0, 0 },
-   { IR_SWIZZLE, "IR_SWIZZLE", 0, 0, 0 },
+   { IR_FLOAT, "IR_FLOAT", OPCODE_NOP, 0, 0 },
+   { IR_FIELD, "IR_FIELD", OPCODE_NOP, 0, 0 },
+   { IR_ELEMENT, "IR_ELEMENT", OPCODE_NOP, 0, 0 },
+   { IR_SWIZZLE, "IR_SWIZZLE", OPCODE_NOP, 0, 0 },
    { IR_NOP, NULL, OPCODE_NOP, 0, 0 }
 };
 
@@ -219,7 +219,7 @@ storage_string(const slang_ir_storage *st)
       sprintf(s, "%s[%d..%d]", files[st->File], st->Index,
               st->Index + st->Size - 1);
 #endif
-   assert(st->File < sizeof(files) / sizeof(files[0]));
+   assert(st->File < (GLint) (sizeof(files) / sizeof(files[0])));
    sprintf(s, "%s[%d]", files[st->File], st->Index);
    return s;
 }
@@ -966,7 +966,7 @@ emit(slang_var_table *vt, slang_ir_node *n, struct gl_program *prog)
       if (n->Children[1]->Opcode == IR_FLOAT) {
          /* OK, constant index */
          const GLint arrayAddr = n->Children[0]->Store->Index;
-         const GLint index = n->Children[1]->Value[0];
+         const GLint index = (GLint) n->Children[1]->Value[0];
          n->Store->Index = arrayAddr + index;
       }
       else {
index 0a517aecc5f5f741f4d1dd4352300fe4eb89d627..9676aa5fa15c42f5907c87d9cf907e220338591f 100644 (file)
@@ -133,7 +133,7 @@ link_varying_vars(struct gl_shader_program *shProg, struct gl_program *prog)
 
 
 static GLboolean
-is_uniform(enum register_file file)
+is_uniform(GLuint file)
 {
    return (file == PROGRAM_ENV_PARAM ||
            file == PROGRAM_STATE_VAR ||
index 1b0474c14b4dabbdc5628a6ad3a366af548d3a35..d0b7246ed61c23b0c172c6f72bbac906c279d9ed 100644 (file)
@@ -182,6 +182,7 @@ SLANG_SOURCES =     \
        shader/slang/slang_error.c      \
        shader/slang/slang_execute.c    \
        shader/slang/slang_export.c     \
+       shader/slang/slang_label.c      \
        shader/slang/slang_library_noise.c      \
        shader/slang/slang_library_texsample.c  \
        shader/slang/slang_link.c       \
index 813345f4cd14c969c0352a115cee1ab22e39994d..ed82460669adf216bcf3361d17c4c449e8b4f96b 100644 (file)
@@ -200,8 +200,7 @@ fetch_vector4( GLcontext *ctx,
    const GLfloat *src = get_register_pointer(ctx, source, machine, program);
    ASSERT(src);
 
-   if (source->Swizzle == MAKE_SWIZZLE4(SWIZZLE_X, SWIZZLE_Y,
-                                        SWIZZLE_Z, SWIZZLE_W)) {
+   if (source->Swizzle == SWIZZLE_NOOP) {
       /* no swizzling */
       COPY_4V(result, src);
    }
@@ -1263,8 +1262,8 @@ execute_program( GLcontext *ctx,
             {
                GLfloat a[4], result[4];
                fetch_vector1( ctx, &inst->SrcReg[0], machine, program, a );
-               result[0] = (GLfloat)_mesa_cos(a[0]);
-               result[1] = (GLfloat)_mesa_sin(a[0]);
+               result[0] = (GLfloat) _mesa_cos(a[0]);
+               result[1] = (GLfloat) _mesa_sin(a[0]);
                result[2] = 0.0;  /* undefined! */
                result[3] = 0.0;  /* undefined! */
                store_vector4( inst, machine, result );