mesa: Apply MSVC portability fixes from Alan Hourihane.
authorJosé Fonseca <jrfonseca@tungstengraphics.com>
Sat, 31 May 2008 09:14:09 +0000 (18:14 +0900)
committerKeith Whitwell <keith@tungstengraphics.com>
Wed, 24 Sep 2008 00:20:38 +0000 (17:20 -0700)
16 files changed:
src/mesa/main/api_validate.c
src/mesa/main/dlist.c
src/mesa/main/drawpix.c
src/mesa/main/framebuffer.c
src/mesa/main/get.c
src/mesa/main/image.c
src/mesa/main/light.c
src/mesa/main/mipmap.c
src/mesa/main/pixel.c
src/mesa/main/pixel.h
src/mesa/main/texenvprogram.c
src/mesa/shader/prog_execute.c
src/mesa/shader/prog_statevars.c
src/mesa/shader/prog_uniform.c
src/mesa/vbo/vbo_exec_array.c
src/mesa/vbo/vbo_split_inplace.c

index 5a199939760fac3e2b5ac2cef1dc91b9a9b447ee..98dfbb105f5679a9b3f307a8e75d45ddc11d67d3 100644 (file)
@@ -131,7 +131,7 @@ _mesa_validate_DrawElements(GLcontext *ctx,
       }
 
       /* make sure count doesn't go outside buffer bounds */
-      if (indexBytes > ctx->Array.ElementArrayBufferObj->Size) {
+      if (indexBytes > (GLuint) ctx->Array.ElementArrayBufferObj->Size) {
          _mesa_warning(ctx, "glDrawElements index out of buffer bounds");
          return GL_FALSE;
       }
index 4f56d468312889860f444e895781bc70922edc53..f7660930a9c39e8d7c90b9deef6f601591f25c1d 100644 (file)
@@ -5109,7 +5109,7 @@ save_Indexfv(const GLfloat * v)
 static void GLAPIENTRY
 save_EdgeFlag(GLboolean x)
 {
-   save_Attr1fNV(VERT_ATTRIB_EDGEFLAG, x ? 1.0 : 0.0);
+   save_Attr1fNV(VERT_ATTRIB_EDGEFLAG, x ? (GLfloat)1.0 : (GLfloat)0.0);
 }
 
 static void GLAPIENTRY
index d69e51ae31f27ae8019160613ed07db48701e788..ac97bc1ff9efac6466e6a3b582e3fc4123170666 100644 (file)
@@ -218,7 +218,7 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
 
    if (ctx->RenderMode == GL_RENDER) {
       /* Truncate, to satisfy conformance tests (matches SGI's OpenGL). */
-      const GLfloat epsilon = 0.0001;
+      const GLfloat epsilon = (const GLfloat)0.0001;
       GLint x = IFLOOR(ctx->Current.RasterPos[0] + epsilon - xorig);
       GLint y = IFLOOR(ctx->Current.RasterPos[1] + epsilon - yorig);
 
index b2ec679a5492cef8c2190761a726a88a41b5002f..af78363ad3a028ec06d37114cedf2d15bf40ecb4 100644 (file)
@@ -69,7 +69,7 @@ compute_depth_max(struct gl_framebuffer *fb)
    fb->_DepthMaxF = (GLfloat) fb->_DepthMax;
 
    /* Minimum resolvable depth value, for polygon offset */
-   fb->_MRD = 1.0 / fb->_DepthMaxF;
+   fb->_MRD = (GLfloat)1.0 / fb->_DepthMaxF;
 }
 
 
index ae6afef17dab035fa3157644125b75fcc5c408e9..5202c3ddacdd11adee07af2aa19fcb06ce9fb105 100644 (file)
@@ -2137,7 +2137,7 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
          params[0] = (GLfloat)(ctx->DrawBuffer->Visual.depthBits);
          break;
       case GL_DEPTH_CLEAR_VALUE:
-         params[0] = ctx->Depth.Clear;
+         params[0] = (GLfloat)ctx->Depth.Clear;
          break;
       case GL_DEPTH_FUNC:
          params[0] = ENUM_TO_FLOAT(ctx->Depth.Func);
@@ -2940,7 +2940,7 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
          GLuint i, n = _mesa_get_compressed_formats(ctx, formats, GL_FALSE);
          ASSERT(n <= 100);
          for (i = 0; i < n; i++)
-            params[i] = ENUM_TO_INT(formats[i]);
+            params[i] = (GLfloat)(ENUM_TO_INT(formats[i]));
          }
          break;
       case GL_ARRAY_ELEMENT_LOCK_FIRST_EXT:
index 651ebe1b7c04763f086923bf15ceac010d0368a6..1a6e864b98d39c5bf7cf1be12afa066bf5aea8fb 100644 (file)
@@ -1650,7 +1650,7 @@ _mesa_apply_stencil_transfer_ops(const GLcontext *ctx, GLuint n,
       GLuint mask = ctx->PixelMaps.StoS.Size - 1;
       GLuint i;
       for (i = 0; i < n; i++) {
-         stencil[i] = ctx->PixelMaps.StoS.Map[ stencil[i] & mask ];
+         stencil[i] = (GLstencil)ctx->PixelMaps.StoS.Map[ stencil[i] & mask ];
       }
    }
 }
@@ -4161,7 +4161,7 @@ _mesa_unpack_stencil_span( const GLcontext *ctx, GLuint n,
          const GLuint mask = ctx->PixelMaps.StoS.Size - 1;
          GLuint i;
          for (i = 0; i < n; i++) {
-            indexes[i] = ctx->PixelMaps.StoS.Map[ indexes[i] & mask ];
+            indexes[i] = (GLuint)ctx->PixelMaps.StoS.Map[ indexes[i] & mask ];
          }
       }
 
@@ -4513,7 +4513,7 @@ _mesa_unpack_depth_span( const GLcontext *ctx, GLuint n,
    if (needClamp) {
       GLuint i;
       for (i = 0; i < n; i++) {
-         depthValues[i] = CLAMP(depthValues[i], 0.0, 1.0);
+         depthValues[i] = (GLfloat)CLAMP(depthValues[i], 0.0, 1.0);
       }
    }
 
index 94625b9f9167be84526503273d6fd5ae70716587..10ee088a2da74d6363585c0b2a12015d0e3ebb26 100644 (file)
@@ -1129,7 +1129,7 @@ compute_light_positions( GLcontext *ctx )
       }
       else {
          /* positional light w/ homogeneous coordinate, divide by W */
-         GLfloat wInv = 1.0 / light->_Position[3];
+         GLfloat wInv = (GLfloat)1.0 / light->_Position[3];
          light->_Position[0] *= wInv;
          light->_Position[1] *= wInv;
          light->_Position[2] *= wInv;
index ebc3c9ace40c99db344ca8f0b5c35d55359bb95e..13d90e78fe4f9953a8fd0d7dd59122867357e668 100644 (file)
@@ -292,7 +292,7 @@ do_row(GLenum datatype, GLuint comps, GLint srcWidth,
       GLfloat *dst = (GLfloat *) dstRow;
       for (i = j = 0, k = k0; i < (GLuint) dstWidth;
            i++, j += colStride, k += colStride) {
-         dst[i] = rowA[j] / 4 + rowA[k] / 4 + rowB[j] / 4 + rowB[k] / 4;
+         dst[i] = (GLfloat)(rowA[j] / 4 + rowA[k] / 4 + rowB[j] / 4 + rowB[k] / 4);
       }
    }
 
index 2b42490a1109fca728caf542509cfb84afce96c3..c98506b2bb00cdd9281eab48fea0631595432c1f 100644 (file)
@@ -114,7 +114,7 @@ store_pixelmap(GLcontext *ctx, GLenum map, GLsizei mapsize,
       /* special case */
       ctx->PixelMaps.StoS.Size = mapsize;
       for (i = 0; i < mapsize; i++) {
-         ctx->PixelMaps.StoS.Map[i] = IROUND(values[i]);
+         ctx->PixelMaps.StoS.Map[i] = (GLfloat)IROUND(values[i]);
       }
       break;
    case GL_PIXEL_MAP_I_TO_I:
index 32e2bd10753edab6b159feb3021caa8c86fee684..cb6c5262a396f55803c36cc5eea451b16f9cf5c2 100644 (file)
@@ -69,48 +69,6 @@ _mesa_PixelZoom( GLfloat xfactor, GLfloat yfactor );
 /*@}*/
 
 
-/** \name Pixel processing functions */
-/*@{*/
-
-extern void
-_mesa_scale_and_bias_rgba(GLuint n, GLfloat rgba[][4],
-                          GLfloat rScale, GLfloat gScale,
-                          GLfloat bScale, GLfloat aScale,
-                          GLfloat rBias, GLfloat gBias,
-                          GLfloat bBias, GLfloat aBias);
-
-extern void
-_mesa_map_rgba(const GLcontext *ctx, GLuint n, GLfloat rgba[][4]);
-
-
-extern void
-_mesa_transform_rgba(const GLcontext *ctx, GLuint n, GLfloat rgba[][4]);
-
-
-extern void
-_mesa_lookup_rgba_float(const struct gl_color_table *table,
-                        GLuint n, GLfloat rgba[][4]);
-
-extern void
-_mesa_lookup_rgba_ubyte(const struct gl_color_table *table,
-                        GLuint n, GLubyte rgba[][4]);
-
-
-extern void
-_mesa_map_ci_to_rgba(const GLcontext *ctx,
-                     GLuint n, const GLuint index[], GLfloat rgba[][4]);
-
-
-extern void
-_mesa_map_ci8_to_rgba8(const GLcontext *ctx, GLuint n, const GLubyte index[],
-                       GLubyte rgba[][4]);
-
-
-extern void
-_mesa_scale_and_bias_depth(const GLcontext *ctx, GLuint n,
-                           GLfloat depthValues[]);
-
-
 extern void 
 _mesa_update_pixel( GLcontext *ctx, GLuint newstate );
 
index bfb22bbf02cd29f44bcb568e0f8194bb42b261cf..5f7634b46093e69dbbb5ffd9c080132a5f310b33 100644 (file)
@@ -916,14 +916,14 @@ emit_texenv(struct texenv_fragment_program *p, GLuint unit)
     */
    if (alpha_shift || rgb_shift) {
       if (rgb_shift == alpha_shift) {
-        shift = register_scalar_const(p, 1<<rgb_shift);
+        shift = register_scalar_const(p, (GLfloat)(1<<rgb_shift));
       }
       else {
         shift = register_const4f(p, 
-                                 1<<rgb_shift,
-                                 1<<rgb_shift,
-                                 1<<rgb_shift,
-                                 1<<alpha_shift);
+                                 (GLfloat)(1<<rgb_shift),
+                                 (GLfloat)(1<<rgb_shift),
+                                 (GLfloat)(1<<rgb_shift),
+                                 (GLfloat)(1<<alpha_shift));
       }
       return emit_arith( p, OPCODE_MUL, dest, WRITEMASK_XYZW, 
                         saturate, out, shift, undef );
index e9957d3a5f07140f0a49047159eaaced575fb520..32b6ff4fd4205d8f7161fd1c17cb178b419dbc7b 100644 (file)
@@ -93,7 +93,7 @@ get_register_pointer(const struct prog_src_register *source,
                 source->File == PROGRAM_STATE_VAR ||
                 source->File == PROGRAM_UNIFORM);
          params = machine->CurProgram->Parameters;
-         if (reg < 0 || reg >= params->NumParameters)
+         if (reg < 0 || reg >= (GLint)params->NumParameters)
             return ZeroVec;
          else
             return params->ParameterValues[reg];
@@ -228,7 +228,7 @@ fetch_vector4_deriv(GLcontext * ctx,
                     const struct gl_program_machine *machine,
                     char xOrY, GLfloat result[4])
 {
-   if (source->File == PROGRAM_INPUT && source->Index < machine->NumDeriv) {
+   if (source->File == PROGRAM_INPUT && source->Index < (GLint)machine->NumDeriv) {
       const GLint col = machine->CurElement;
       const GLfloat w = machine->Attribs[FRAG_ATTRIB_WPOS][col][3];
       const GLfloat invQ = 1.0f / w;
@@ -507,7 +507,7 @@ _mesa_execute_program(GLcontext * ctx,
 {
    const GLuint numInst = program->NumInstructions;
    const GLuint maxExec = 10000;
-   GLint pc, numExec = 0;
+   GLuint pc, numExec = 0;
 
    machine->CurProgram = program;
 
index 93ee2d20290f2d5c38435bf1eb59f19ad039bea2..971eb25a4918dcfe09891556cc3947d95a8a0f1f 100644 (file)
@@ -427,8 +427,8 @@ _mesa_fetch_state(GLcontext *ctx, const gl_state_index state[],
          value[0] = (ctx->Fog.End == ctx->Fog.Start)
             ? 1.0f : (GLfloat)(-1.0F / (ctx->Fog.End - ctx->Fog.Start));
          value[1] = ctx->Fog.End * -value[0];
-         value[2] = ctx->Fog.Density * ONE_DIV_LN2;
-         value[3] = ctx->Fog.Density * ONE_DIV_SQRT_LN2;
+         value[2] = (GLfloat)(ctx->Fog.Density * ONE_DIV_LN2);
+         value[3] = (GLfloat)(ctx->Fog.Density * ONE_DIV_SQRT_LN2);
          return;
 
       case STATE_LIGHT_SPOT_DIR_NORMALIZED: {
index 0b1d0232a06dd10fe479509bf96d11f8ad0d4091..f57df3d86dcb3b129647f7c02c8dec9c029bf6ce 100644 (file)
@@ -135,7 +135,7 @@ _mesa_longest_uniform_name(const struct gl_uniform_list *list)
    GLuint i;
    for (i = 0; list && i < list->NumUniforms; i++) {
       GLuint len = _mesa_strlen(list->Uniforms[i].Name);
-      if (len > max)
+      if (len > (GLuint)max)
          max = len;
    }
    return max;
index 7541de675c9776e5b7f48ebeb1258e9bfd2a5bf8..68c555ae8f1b4e380652aeb7858801c31dc08349 100644 (file)
@@ -40,7 +40,7 @@ static void get_minmax_index( GLuint count, GLuint type,
                              GLuint *min_index,
                              GLuint *max_index)
 {
-   GLint i;
+   GLuint i;
 
    switch(type) {
    case GL_UNSIGNED_INT: {
index 958afccd0c0a278e2c30a5288a6cc2a5f64e89a0..fbc856e93b0f8b5aa308d781e8a628edf3f1dbb0 100644 (file)
@@ -58,7 +58,7 @@ struct split_context {
 
 static void flush_vertex( struct split_context *split )
 {
-   GLint min_index, max_index;
+   GLuint min_index, max_index;
 
    if (!split->dstprim_nr) 
       return;