Mesa (arb_geometry_shader4): gs: fix getters
Zack Rusin
zack at kemper.freedesktop.org
Mon Jul 13 20:51:21 UTC 2009
Module: Mesa
Branch: arb_geometry_shader4
Commit: 67d7ef2f562a694ed011c8ca27eb06a148d1025f
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=67d7ef2f562a694ed011c8ca27eb06a148d1025f
Author: Zack Rusin <zackr at vmware.com>
Date: Mon Jul 13 16:55:18 2009 -0400
gs: fix getters
---
src/mesa/main/get.c | 68 +++++++++++++++++++++++++++-----
src/mesa/main/get_gen.py | 16 ++++++++
src/mesa/shader/slang/slang_codegen.c | 2 +-
3 files changed, 74 insertions(+), 12 deletions(-)
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index 35c8aeb..caf8cf4 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -1867,6 +1867,30 @@ _mesa_GetBooleanv( GLenum pname, GLboolean *params )
CHECK_EXT1(ARB_vertex_shader, "GetBooleanv");
params[0] = INT_TO_BOOLEAN(MAX_COMBINED_TEXTURE_IMAGE_UNITS);
break;
+ case GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxGeometryTextureImageUnit);
+ break;
+ case GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxGeometryOutputVertices);
+ break;
+ case GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxGeometryTotalOutputComponents);
+ break;
+ case GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxGeometryUniformComponents);
+ break;
+ case GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxGeometryVaryingComponents);
+ break;
+ case GL_MAX_VERTEX_VARYING_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetBooleanv");
+ params[0] = INT_TO_BOOLEAN(ctx->Const.GeometryProgram.MaxVertexVaryingComponents);
+ break;
case GL_CURRENT_PROGRAM:
CHECK_EXT1(ARB_shader_objects, "GetBooleanv");
params[0] = INT_TO_BOOLEAN(ctx->Shader.CurrentProgram ? ctx->Shader.CurrentProgram->Name : 0);
@@ -3689,6 +3713,30 @@ _mesa_GetFloatv( GLenum pname, GLfloat *params )
CHECK_EXT1(ARB_vertex_shader, "GetFloatv");
params[0] = (GLfloat)(MAX_COMBINED_TEXTURE_IMAGE_UNITS);
break;
+ case GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxGeometryTextureImageUnit);
+ break;
+ case GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxGeometryOutputVertices);
+ break;
+ case GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxGeometryTotalOutputComponents);
+ break;
+ case GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxGeometryUniformComponents);
+ break;
+ case GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxGeometryVaryingComponents);
+ break;
+ case GL_MAX_VERTEX_VARYING_COMPONENTS_ARB:
+ CHECK_EXT1(ARB_geometry_shader4, "GetFloatv");
+ params[0] = (GLfloat)(ctx->Const.GeometryProgram.MaxVertexVaryingComponents);
+ break;
case GL_CURRENT_PROGRAM:
CHECK_EXT1(ARB_shader_objects, "GetFloatv");
params[0] = (GLfloat)(ctx->Shader.CurrentProgram ? ctx->Shader.CurrentProgram->Name : 0);
@@ -5511,15 +5559,6 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
CHECK_EXT1(ARB_vertex_shader, "GetIntegerv");
params[0] = MAX_COMBINED_TEXTURE_IMAGE_UNITS;
break;
- case GL_CURRENT_PROGRAM:
- CHECK_EXT1(ARB_shader_objects, "GetIntegerv");
- params[0] = ctx->Shader.CurrentProgram ? ctx->Shader.CurrentProgram->Name : 0;
- break;
- case GL_MAX_SAMPLES:
- CHECK_EXT1(ARB_framebuffer_object, "GetIntegerv");
- params[0] = ctx->Const.MaxSamples;
- break;
-<<<<<<< HEAD:src/mesa/main/get.c
case GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB:
CHECK_EXT1(ARB_geometry_shader4, "GetIntegerv");
params[0] = ctx->Const.GeometryProgram.MaxGeometryTextureImageUnit;
@@ -5543,11 +5582,18 @@ _mesa_GetIntegerv( GLenum pname, GLint *params )
case GL_MAX_VERTEX_VARYING_COMPONENTS_ARB:
CHECK_EXT1(ARB_geometry_shader4, "GetIntegerv");
params[0] = ctx->Const.GeometryProgram.MaxVertexVaryingComponents;
-=======
+ break;
+ case GL_CURRENT_PROGRAM:
+ CHECK_EXT1(ARB_shader_objects, "GetIntegerv");
+ params[0] = ctx->Shader.CurrentProgram ? ctx->Shader.CurrentProgram->Name : 0;
+ break;
+ case GL_MAX_SAMPLES:
+ CHECK_EXT1(ARB_framebuffer_object, "GetIntegerv");
+ params[0] = ctx->Const.MaxSamples;
+ break;
case GL_VERTEX_ARRAY_BINDING_APPLE:
CHECK_EXT1(APPLE_vertex_array_object, "GetIntegerv");
params[0] = ctx->Array.ArrayObj->Name;
->>>>>>> origin/master:src/mesa/main/get.c
break;
default:
_mesa_error(ctx, GL_INVALID_ENUM, "glGetIntegerv(pname=0x%x)", pname);
diff --git a/src/mesa/main/get_gen.py b/src/mesa/main/get_gen.py
index 5666ad0..abb74ed 100644
--- a/src/mesa/main/get_gen.py
+++ b/src/mesa/main/get_gen.py
@@ -1001,6 +1001,22 @@ StateVars = [
( "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB", GLint,
["MAX_COMBINED_TEXTURE_IMAGE_UNITS"], "", ["ARB_vertex_shader"] ),
+ # GL_ARB_geometry_shader4
+ ( "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxGeometryTextureImageUnit"], "",
+ ["ARB_geometry_shader4"] ),
+ ( "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxGeometryOutputVertices"], "", ["ARB_geometry_shader4"] ),
+ ( "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxGeometryTotalOutputComponents"], "", ["ARB_geometry_shader4"] ),
+ ( "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxGeometryUniformComponents"], "", ["ARB_geometry_shader4"] ),
+ ( "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxGeometryVaryingComponents"], "", ["ARB_geometry_shader4"] ),
+ ( "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB", GLint,
+ ["ctx->Const.GeometryProgram.MaxVertexVaryingComponents"], "", ["ARB_geometry_shader4"] ),
+
+
# GL_ARB_shader_objects
# Actually, this token isn't part of GL_ARB_shader_objects, but is
# close enough for now.
diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c
index 5ee2eab..d93097e 100644
--- a/src/mesa/shader/slang/slang_codegen.c
+++ b/src/mesa/shader/slang/slang_codegen.c
@@ -851,7 +851,7 @@ _slang_is_noop(const slang_operation *oper)
/**
* Recursively search tree for a node of the given type.
*/
-#if 0
+#if 1
static slang_operation *
_slang_find_node_type(slang_operation *oper, slang_operation_type type)
{
More information about the mesa-commit
mailing list