Merge commit 'origin/gallium-0.1' into gallium-0.2
[mesa.git] / src / mesa / main / get_gen.py
index a9e04863a7e3841fa06cac86961b26c61020e207..decc9dd52a634f42bf0e4feefd245b39958dcdb3 100644 (file)
@@ -190,7 +190,7 @@ StateVars = [
        ( "GL_DOUBLEBUFFER", GLboolean,
          ["ctx->DrawBuffer->Visual.doubleBufferMode"], "", None ),
        ( "GL_DRAW_BUFFER", GLenum, ["ctx->DrawBuffer->ColorDrawBuffer[0]"], "", None ),
-       ( "GL_EDGE_FLAG", GLboolean, ["ctx->Current.EdgeFlag"],
+       ( "GL_EDGE_FLAG", GLboolean, ["(ctx->Current.Attrib[VERT_ATTRIB_EDGEFLAG][0] == 1.0)"],
          "FLUSH_CURRENT(ctx, 0);", None ),
        ( "GL_FEEDBACK_BUFFER_SIZE", GLint, ["ctx->Feedback.BufferSize"], "", None ),
        ( "GL_FEEDBACK_BUFFER_TYPE", GLenum, ["ctx->Feedback.Type"], "", None ),
@@ -337,16 +337,16 @@ StateVars = [
        ( "GL_PACK_INVERT_MESA", GLboolean, ["ctx->Pack.Invert"], "", None ),
        ( "GL_PERSPECTIVE_CORRECTION_HINT", GLenum,
          ["ctx->Hint.PerspectiveCorrection"], "", None ),
-       ( "GL_PIXEL_MAP_A_TO_A_SIZE", GLint, ["ctx->Pixel.MapAtoAsize"], "", None ),
-       ( "GL_PIXEL_MAP_B_TO_B_SIZE", GLint, ["ctx->Pixel.MapBtoBsize"], "", None ),
-       ( "GL_PIXEL_MAP_G_TO_G_SIZE", GLint, ["ctx->Pixel.MapGtoGsize"], "", None ),
-       ( "GL_PIXEL_MAP_I_TO_A_SIZE", GLint, ["ctx->Pixel.MapItoAsize"], "", None ),
-       ( "GL_PIXEL_MAP_I_TO_B_SIZE", GLint, ["ctx->Pixel.MapItoBsize"], "", None ),
-       ( "GL_PIXEL_MAP_I_TO_G_SIZE", GLint, ["ctx->Pixel.MapItoGsize"], "", None ),
-       ( "GL_PIXEL_MAP_I_TO_I_SIZE", GLint, ["ctx->Pixel.MapItoIsize"], "", None ),
-       ( "GL_PIXEL_MAP_I_TO_R_SIZE", GLint, ["ctx->Pixel.MapItoRsize"], "", None ),
-       ( "GL_PIXEL_MAP_R_TO_R_SIZE", GLint, ["ctx->Pixel.MapRtoRsize"], "", None ),
-       ( "GL_PIXEL_MAP_S_TO_S_SIZE", GLint, ["ctx->Pixel.MapStoSsize"], "", None ),
+       ( "GL_PIXEL_MAP_A_TO_A_SIZE", GLint, ["ctx->PixelMaps.AtoA.Size"], "", None ),
+       ( "GL_PIXEL_MAP_B_TO_B_SIZE", GLint, ["ctx->PixelMaps.BtoB.Size"], "", None ),
+       ( "GL_PIXEL_MAP_G_TO_G_SIZE", GLint, ["ctx->PixelMaps.GtoG.Size"], "", None ),
+       ( "GL_PIXEL_MAP_I_TO_A_SIZE", GLint, ["ctx->PixelMaps.ItoA.Size"], "", None ),
+       ( "GL_PIXEL_MAP_I_TO_B_SIZE", GLint, ["ctx->PixelMaps.ItoB.Size"], "", None ),
+       ( "GL_PIXEL_MAP_I_TO_G_SIZE", GLint, ["ctx->PixelMaps.ItoG.Size"], "", None ),
+       ( "GL_PIXEL_MAP_I_TO_I_SIZE", GLint, ["ctx->PixelMaps.ItoI.Size"], "", None ),
+       ( "GL_PIXEL_MAP_I_TO_R_SIZE", GLint, ["ctx->PixelMaps.ItoR.Size"], "", None ),
+       ( "GL_PIXEL_MAP_R_TO_R_SIZE", GLint, ["ctx->PixelMaps.RtoR.Size"], "", None ),
+       ( "GL_PIXEL_MAP_S_TO_S_SIZE", GLint, ["ctx->PixelMaps.StoS.Size"], "", None ),
        ( "GL_POINT_SIZE", GLfloat, ["ctx->Point.Size"], "", None ),
        ( "GL_POINT_SIZE_GRANULARITY", GLfloat,
          ["ctx->Const.PointSizeGranularity"], "", None ),
@@ -372,6 +372,9 @@ StateVars = [
        ( "GL_POLYGON_OFFSET_BIAS_EXT", GLfloat, ["ctx->Polygon.OffsetUnits"], "", None ),
        ( "GL_POLYGON_OFFSET_FACTOR", GLfloat, ["ctx->Polygon.OffsetFactor "], "", None ),
        ( "GL_POLYGON_OFFSET_UNITS", GLfloat, ["ctx->Polygon.OffsetUnits "], "", None ),
+       ( "GL_POLYGON_OFFSET_POINT", GLboolean, ["ctx->Polygon.OffsetPoint"], "", None ),
+       ( "GL_POLYGON_OFFSET_LINE", GLboolean, ["ctx->Polygon.OffsetLine"], "", None ),
+       ( "GL_POLYGON_OFFSET_FILL", GLboolean, ["ctx->Polygon.OffsetFill"], "", None ),
        ( "GL_POLYGON_SMOOTH", GLboolean, ["ctx->Polygon.SmoothFlag"], "", None ),
        ( "GL_POLYGON_SMOOTH_HINT", GLenum, ["ctx->Hint.PolygonSmooth"], "", None ),
        ( "GL_POLYGON_STIPPLE", GLboolean, ["ctx->Polygon.StippleFlag"], "", None ),
@@ -425,18 +428,18 @@ StateVars = [
        ( "GL_TEXTURE_1D", GLboolean, ["_mesa_IsEnabled(GL_TEXTURE_1D)"], "", None ),
        ( "GL_TEXTURE_2D", GLboolean, ["_mesa_IsEnabled(GL_TEXTURE_2D)"], "", None ),
        ( "GL_TEXTURE_3D", GLboolean, ["_mesa_IsEnabled(GL_TEXTURE_3D)"], "", None ),
+       ( "GL_TEXTURE_1D_ARRAY_EXT", GLboolean, ["_mesa_IsEnabled(GL_TEXTURE_1D_ARRAY_EXT)"], "", ["MESA_texture_array"] ),
+       ( "GL_TEXTURE_2D_ARRAY_EXT", GLboolean, ["_mesa_IsEnabled(GL_TEXTURE_2D_ARRAY_EXT)"], "", ["MESA_texture_array"] ),
        ( "GL_TEXTURE_BINDING_1D", GLint,
          ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].Current1D->Name"], "", None ),
        ( "GL_TEXTURE_BINDING_2D", GLint,
          ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].Current2D->Name"], "", None ),
        ( "GL_TEXTURE_BINDING_3D", GLint,
          ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].Current3D->Name"], "", None ),
-       ( "GL_TEXTURE_ENV_COLOR", GLfloatN,
-         ["color[0]", "color[1]", "color[2]", "color[3]"],
-         "const GLfloat *color = ctx->Texture.Unit[ctx->Texture.CurrentUnit].EnvColor;",
-         None ),
-       ( "GL_TEXTURE_ENV_MODE", GLenum,
-         ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].EnvMode"], "", None ),
+       ( "GL_TEXTURE_BINDING_1D_ARRAY_EXT", GLint,
+         ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].Current1DArray->Name"], "", ["MESA_texture_array"] ),
+       ( "GL_TEXTURE_BINDING_2D_ARRAY_EXT", GLint,
+         ["ctx->Texture.Unit[ctx->Texture.CurrentUnit].Current2DArray->Name"], "", ["MESA_texture_array"] ),
        ( "GL_TEXTURE_GEN_S", GLboolean,
          ["((ctx->Texture.Unit[ctx->Texture.CurrentUnit].TexGenEnabled & S_BIT) ? 1 : 0)"], "", None ),
        ( "GL_TEXTURE_GEN_T", GLboolean,
@@ -624,11 +627,11 @@ StateVars = [
 
        # GL_SGI_color_table / GL_ARB_imaging
        ( "GL_COLOR_TABLE_SGI", GLboolean,
-         ["ctx->Pixel.ColorTableEnabled"], "", ["SGI_color_table"] ),
+         ["ctx->Pixel.ColorTableEnabled[COLORTABLE_PRECONVOLUTION]"], "", ["SGI_color_table"] ),
        ( "GL_POST_CONVOLUTION_COLOR_TABLE_SGI", GLboolean,
-         ["ctx->Pixel.PostConvolutionColorTableEnabled"], "", ["SGI_color_table"] ),
+         ["ctx->Pixel.ColorTableEnabled[COLORTABLE_POSTCONVOLUTION]"], "", ["SGI_color_table"] ),
        ( "GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI", GLboolean,
-         ["ctx->Pixel.PostColorMatrixColorTableEnabled"], "", ["SGI_color_table"] ),
+         ["ctx->Pixel.ColorTableEnabled[COLORTABLE_POSTCOLORMATRIX]"], "", ["SGI_color_table"] ),
 
        # GL_SGI_texture_color_table
        ( "GL_TEXTURE_COLOR_TABLE_SGI", GLboolean,
@@ -958,6 +961,7 @@ StateVars = [
        # OpenGL 2.0
        ( "GL_STENCIL_BACK_FUNC", GLenum, ["ctx->Stencil.Function[1]"], "", None ),
        ( "GL_STENCIL_BACK_VALUE_MASK", GLint, ["ctx->Stencil.ValueMask[1]"], "", None ),
+       ( "GL_STENCIL_BACK_WRITEMASK", GLint, ["ctx->Stencil.WriteMask[1]"], "", None ),
        ( "GL_STENCIL_BACK_REF", GLint, ["ctx->Stencil.Ref[1]"], "", None ),
        ( "GL_STENCIL_BACK_FAIL", GLenum, ["ctx->Stencil.FailFunc[1]"], "", None ),
        ( "GL_STENCIL_BACK_PASS_DEPTH_FAIL", GLenum, ["ctx->Stencil.ZFailFunc[1]"], "", None ),
@@ -976,21 +980,35 @@ StateVars = [
          ["ctx->Const.MaxRenderbufferSize"], "",
          ["EXT_framebuffer_object"] ),
 
+       # GL_EXT_framebuffer_blit
+       # NOTE: GL_DRAW_FRAMEBUFFER_BINDING_EXT == GL_FRAMEBUFFER_BINDING_EXT
+       ( "GL_READ_FRAMEBUFFER_BINDING_EXT", GLint, ["ctx->ReadBuffer->Name"], "",
+         ["EXT_framebuffer_blit"] ),
+
        # GL_ARB_fragment_shader
        ( "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB", GLint,
-         ["MAX_FRAGMENT_UNIFORM_COMPONENTS"], "", ["ARB_fragment_shader"] ),
+         ["ctx->Const.FragmentProgram.MaxUniformComponents"], "",
+         ["ARB_fragment_shader"] ),
        ( "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB", GLenum,
          ["ctx->Hint.FragmentShaderDerivative"], "", ["ARB_fragment_shader"] ),
 
        # GL_ARB_vertex_shader
        ( "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB", GLint,
-         ["MAX_VERTEX_UNIFORM_COMPONENTS"], "", ["ARB_vertex_shader"] ),
+         ["ctx->Const.VertexProgram.MaxUniformComponents"], "",
+         ["ARB_vertex_shader"] ),
        ( "GL_MAX_VARYING_FLOATS_ARB", GLint,
-         ["MAX_VARYING_FLOATS"], "", ["ARB_vertex_shader"] ),
+         ["ctx->Const.MaxVarying * 4"], "", ["ARB_vertex_shader"] ),
        ( "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB", GLint,
-         ["MAX_VERTEX_TEXTURE_IMAGE_UNITS"], "", ["ARB_vertex_shader"] ),
+         ["ctx->Const.MaxVertexTextureImageUnits"], "", ["ARB_vertex_shader"] ),
        ( "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB", GLint,
-         ["MAX_COMBINED_TEXTURE_IMAGE_UNITS"], "", ["ARB_vertex_shader"] )
+         ["MAX_COMBINED_TEXTURE_IMAGE_UNITS"], "", ["ARB_vertex_shader"] ),
+
+       # GL_ARB_shader_objects
+       # Actually, this token isn't part of GL_ARB_shader_objects, but is
+       # close enough for now.
+       ( "GL_CURRENT_PROGRAM", GLint,
+         ["ctx->Shader.CurrentProgram ? ctx->Shader.CurrentProgram->Name : 0"],
+         "", ["ARB_shader_objects"] )
 ]
 
 
@@ -1111,10 +1129,6 @@ def EmitHeader():
 
 #define INT_TO_BOOLEAN(I)     ( (I) ? GL_TRUE : GL_FALSE )
 
-#define ENUM_TO_BOOLEAN(E)    ( (E) ? GL_TRUE : GL_FALSE )
-#define ENUM_TO_INT(E)        ( (GLint) (E) )
-#define ENUM_TO_FLOAT(E)      ( (GLfloat) (E) )
-
 #define BOOLEAN_TO_INT(B)     ( (GLint) (B) )
 #define BOOLEAN_TO_FLOAT(B)   ( (B) ? 1.0F : 0.0F )