Age | Commit message (Collapse) | Author |
|
The gl_program_constants struct is for limits that are applicable to
any/all shader stages. Move the geometry shader-only fields into the
gl_constants struct.
Remove redundant MaxGeometryUniformComponents field too.
|
|
Need to flush rendering (or at least indicate that the rug might be getting
pulled out from underneath us) when a shader, buffer object or query object
is about to be deleted.
Also, this helps to tell the VBO module to unmap its current vertex buffer.
|
|
|
|
|
|
|
|
Drivers should override the default range/precision info as needed.
No drivers do this yet.
|
|
Fixes no-op dispatch warning in piglit
arb_es2_compatibility-releaseshadercompiler.c.
|
|
|
|
Directly include mtypes.h if a file uses a gl_context struct. This
allows future removal of headers that are not strictly necessary but
indirectly include mtypes.h for a file.
|
|
|
|
Flushing the vertices after having already updated the state doesn't
do any good. Fixes useshaderprogram-flushverts-1. As a side effect,
by moving it to the right place we end up skipping no-op state changes
for traditional glUseProgram.
|
|
Fixes failure on restoring state when the program was active but
deleted, and the name no longer exists.
Bug #31194
|
|
|
|
The assumption is that all stages are the same program or that
varyings are passed between stages using built-in varyings.
|
|
ActiveProgram is the GL_EXT_separate_shader_objects state variable
used for glUniform calls. glUseProgram also sets this.
|
|
Really just filling in the entry points. None of them do anything
other than validate their inputs.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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>
|
|
This allows us to specify different options, especially useful for chips
without unified shaders.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
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
|
|
Fixes: glsl-getactiveuniform-length.
|
|
|
|
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
|
|
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.
|
|
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.
|
|
|
|
laying down the foundation for everything and implementing most of the
stuff.
linking, gl_VerticesIn and multidimensional inputs are left.
|
|
|
|
Reduce the source tree depth a bit.
|
|
Remove the unneeded ctx->Driver hooks for shader-related functions.
Move state and API-related things into main/.
|