summaryrefslogtreecommitdiff
path: root/src/mesa/main/shaderapi.c
AgeCommit message (Collapse)Author
2010-10-27Track separate programs for each stageIan Romanick
The assumption is that all stages are the same program or that varyings are passed between stages using built-in varyings.
2010-10-27mesa: Track an ActiveProgram distinct from CurrentProgramIan Romanick
ActiveProgram is the GL_EXT_separate_shader_objects state variable used for glUniform calls. glUseProgram also sets this.
2010-10-27mesa: Skeletal support for GL_EXT_separate_shader_objectsIan Romanick
Really just filling in the entry points. None of them do anything other than validate their inputs.
2010-10-13mesa: Clean up various 'unused parameter' warnings in shaderapiIan Romanick
2010-10-13mesa: Clean up two 'comparison between signed and unsigned' warningsIan Romanick
2010-10-13mesa: Refactor validation of shader targetsIan Romanick
Actually validate that the implementation supports the particular shader target as well. Previously if a driver only supported vertex shaders, for example, glCreateShaderObjectARB would gladly create a fragment shader. NOTE: this is a candidate for the 7.9 branch.
2010-10-13Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg
2010-09-09glsl2: Add EmitNoNoise flag, use it to remove noise opcodesIan Romanick
2010-09-08glsl: add several EmitNo* options, and MaxUnrollIterationsLuca Barbieri
This increases the chance that GLSL programs will actually work. Note that continues and returns are not yet lowered, so linking will just fail if not supported. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-09-08glsl: make compiler options per-targetLuca Barbieri
This allows us to specify different options, especially useful for chips without unified shaders. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-08-25Revert "mesa: Don't add 1 to GL_ACTIVE_UNIFORM_MAX_LENGTH."Eric Anholt
This reverts commit 001a7bfdfc8b3c8930d5ced21982dbdfb8cd35b3. I hadn't found the section of the spec clarifying that the old behavior was right. Reverting fixes the new version of the testcase, and the Humus demos that could no longer find their uniforms. Bug #29782 Bug #29783
2010-08-23mesa: Don't add 1 to GL_ACTIVE_UNIFORM_MAX_LENGTH.Eric Anholt
Fixes: glsl-getactiveuniform-length.
2010-08-18mesa: Remove unnecessary heaaders from shaderapi.c.Vinson Lee
2010-07-26Merge remote branch 'origin/master' into glsl2Eric Anholt
This pulls in multiple i965 driver fixes which will help ensure better testing coverage during development, and also gets past the conflicts of the src/mesa/shader -> src/mesa/program move. Conflicts: src/mesa/Makefile src/mesa/main/shaderapi.c src/mesa/main/shaderobj.h
2010-07-03mesa: Fix OpenGL ES-only builds.Chia-I Wu
Check FEATURE_GL in _mesa_init_shader_dispatch and _mesa_init_shader_uniform_dispatch. OpenGL ES can not and does not use _mesa_init_<...>_dispatch. This is supposed to be temporary. Ideally, a more flexible way for initializing dispatch tables should be developed.
2010-07-02mesa: add geometry shader fields to gl_shader_programBrian Paul
These 3 fields are per shader-program. Copy them into the geometry program at link time for convenient access later. Also, add some missing glGetProgramiv() queries.
2010-07-02mesa: add missing error checks in _mesa_program_parameteri()Brian Paul
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-06-10mesa: rename src/mesa/shader/ to src/mesa/program/Brian Paul
2010-06-10mesa: move shader/slang/* sources to main/slang/*Brian Paul
Reduce the source tree depth a bit.
2010-06-10mesa: refactor shader api / object codeBrian Paul
Remove the unneeded ctx->Driver hooks for shader-related functions. Move state and API-related things into main/.