mesa: fix double->float assignment warnings, int/uint comparison warnings
authorBrian Paul <brianp@vmware.com>
Thu, 28 Jan 2010 00:03:04 +0000 (17:03 -0700)
committerBrian Paul <brianp@vmware.com>
Thu, 28 Jan 2010 00:04:30 +0000 (17:04 -0700)
Reported by Karl Schultz.

src/mesa/shader/nvprogram.c
src/mesa/shader/prog_execute.c
src/mesa/shader/prog_optimize.c
src/mesa/shader/program.c
src/mesa/shader/shader_api.c
src/mesa/shader/slang/slang_codegen.c

index fd6cbb0f40972c11b8cf49d535d041fa422f0a19..87f295e39ae1db5bdf6ccb01dde0de6d807b8d6d 100644 (file)
@@ -515,7 +515,7 @@ _mesa_emit_nv_temp_initialization(GLcontext *ctx,
                                  struct gl_program *program)
 {
    struct prog_instruction *inst;
-   int i;
+   GLuint i;
 
    if (!ctx->Shader.EmitNVTempInitialization)
       return;
@@ -559,7 +559,7 @@ _mesa_emit_nv_temp_initialization(GLcontext *ctx,
 void
 _mesa_setup_nv_temporary_count(GLcontext *ctx, struct gl_program *program)
 {
-   int i;
+   GLuint i;
 
    program->NumTemporaries = 0;
    for (i = 0; i < program->NumInstructions; i++) {
index c212790dcd9f21c78cfe48ac8901432f427a9ba6..5641014d2c6b32d7c470f68fcd68976f4c306cf2 100644 (file)
@@ -1017,12 +1017,12 @@ _mesa_execute_program(GLcontext * ctx,
             /* XXX we could probably just use pow() here */
             if (a[0] > 0.0F) {
                if (a[1] == 0.0 && a[3] == 0.0)
-                  result[2] = 1.0;
+                  result[2] = 1.0F;
                else
                   result[2] = (GLfloat) _mesa_pow(a[1], a[3]);
             }
             else {
-               result[2] = 0.0;
+               result[2] = 0.0F;
             }
             result[3] = 1.0F;
             store_vector4(inst, machine, result);
index ce411731b229ab35cd43ab625ff98d461dd43bc7..e1ec52254c0882432de81c8ef5fa6b8a80a444c3 100644 (file)
@@ -459,7 +459,7 @@ _mesa_remove_extra_move_use(struct gl_program *prog)
        */
       for (j = i + 1; j < prog->NumInstructions; j++) {
         struct prog_instruction *inst2 = prog->Instructions + j;
-        int arg;
+        GLuint arg;
 
         if (_mesa_is_flow_control_opcode(inst2->Opcode))
             break;
@@ -867,7 +867,7 @@ find_live_intervals(struct gl_program *prog,
          _mesa_printf("Reg[%d] live [%d, %d]:",
                       inv->Reg, inv->Start, inv->End);
          if (1) {
-            int j;
+            GLuint j;
             for (j = 0; j < inv->Start; j++)
                _mesa_printf(" ");
             for (j = inv->Start; j <= inv->End; j++)
@@ -945,7 +945,7 @@ _mesa_reallocate_registers(struct gl_program *prog)
           */
          {
             GLint j;
-            for (j = 0; j < activeIntervals.Num; j++) {
+            for (j = 0; j < (GLint) activeIntervals.Num; j++) {
                const struct interval *inv = activeIntervals.Intervals + j;
                if (inv->End >= live->Start) {
                   /* Stop now.  Since the activeInterval list is sorted
@@ -994,7 +994,7 @@ _mesa_reallocate_registers(struct gl_program *prog)
       }
    }
 
-   if (maxTemp + 1 < liveIntervals.Num) {
+   if (maxTemp + 1 < (GLint) liveIntervals.Num) {
       /* OK, we've reduced the number of registers needed.
        * Scan the program and replace all the old temporary register
        * indexes with the new indexes.
index 6b8d94e66142354c0a09ef86e88e120372c496bd..3e86d0adad47de590425e87a89b21653e4693e8f 100644 (file)
@@ -580,7 +580,7 @@ _mesa_delete_instructions(struct gl_program *prog, GLuint start, GLuint count)
    for (i = 0; i < prog->NumInstructions; i++) {
       struct prog_instruction *inst = prog->Instructions + i;
       if (inst->BranchTarget > 0) {
-         if (inst->BranchTarget > start) {
+         if (inst->BranchTarget > (GLint) start) {
             inst->BranchTarget -= count;
          }
       }
index e522d7017a9bc545f88d00ca77edd9df7ad050c0..d53580f5f6940f3a40e464c834df3b768a3beff7 100644 (file)
@@ -955,7 +955,7 @@ _mesa_get_active_uniform(GLcontext *ctx, GLuint program, GLuint index,
 
    if (size) {
       GLint typeSize = sizeof_glsl_type(param->DataType);
-      if (param->Size > typeSize) {
+      if ((GLint) param->Size > typeSize) {
          /* This is an array.
           * Array elements are placed on vector[4] boundaries so they're
           * a multiple of four floats.  We round typeSize up to next multiple
@@ -1726,7 +1726,7 @@ set_program_uniform(GLcontext *ctx, struct gl_program *program,
       const GLint typeSize = sizeof_glsl_type(param->DataType);
       GLsizei k, i;
 
-      if (param->Size > typeSize) {
+      if ((GLint) param->Size > typeSize) {
          /* an array */
          /* we'll ignore extra data below */
       }
@@ -1911,7 +1911,7 @@ set_program_uniform_matrix(GLcontext *ctx, struct gl_program *program,
    GLuint mat, row, col;
    GLuint src = 0;
    const struct gl_program_parameter * param = &program->Parameters->Parameters[index];
-   const GLint slots = (param->Size + 3) / 4;
+   const GLuint slots = (param->Size + 3) / 4;
    const GLint typeSize = sizeof_glsl_type(param->DataType);
    GLint nr, nc;
 
@@ -1923,7 +1923,7 @@ set_program_uniform_matrix(GLcontext *ctx, struct gl_program *program,
       return;
    }
 
-   if (param->Size <= typeSize) {
+   if ((GLint) param->Size <= typeSize) {
       /* non-array: count must be at most one; count == 0 is handled by the loop below */
       if (count > 1) {
          _mesa_error(ctx, GL_INVALID_OPERATION,
index 372a9acdd03116ca34a298ec35c351b0af6ba5e7..83098b7350eff67bd04c9bdb378567b8e8355246 100644 (file)
@@ -3196,7 +3196,7 @@ _slang_unroll_for_loop(slang_assemble_ctx * A, const slang_operation *oper)
          newOper = slang_operation_new(1);
          newOper->type = SLANG_OPER_LITERAL_INT;
          newOper->literal_size = 1;
-         newOper->literal[0] = iter;
+         newOper->literal[0] = (GLfloat) iter;
 
          /* replace instances of the loop variable with newOper */
          slang_substitute(A, body, 1, &oldVar, &newOper, GL_FALSE);