Age | Commit message (Collapse) | Author |
|
New gl_texgen struct allows quite a bit of code reduction.
|
|
Such TEX instructions will have the TexShadow flag set.
The gl_program::ShadowSamplers field is now set in the linker. We missed
that before.
|
|
If the instruction is TEX/TXP/TXL/etc the TexShadow field will be true if
the instruction is a texture fetch with shadow compare.
|
|
|
|
|
|
|
|
Move the is_boolean/integer_type() calls out of the loops.
Move the is_sampler_type() function near the bool/int functions.
Add a bunch of comments.
|
|
We were off by one when checking for too many uniform values.
|
|
If the vertex shader writes to a varying array with a variable index,
mark all the elements of that array as being written.
For example, if the vertex shader does:
for (i = 0; i < 4; i++)
gl_TexCoord[i] = expr;
Mark all texcoord outputs as being written, not just the first.
Linking will fail if a fragment shader tries to read an input that's not
written by the vertex shader. Before this fix, this linker test could fail.
|
|
|
|
Old limit was 256. Note that no arrays are declared to this size.
The only place we have to be careful about raising this limit is the
prog_src/dst_register Index bitfields. These have been bumped up too.
Added assertions to check we don't exceed the bitfield in the future too.
|
|
This new issue was exposed by commit 6eabfc27f19a10dfc2663e99f9560966ba1ff697
|
|
|
|
This fixes a bug found with swizzled array indexes such as in "array[index.z]"
where "index" is an ivec4.
|
|
Not all cases were handled before.
|
|
Note: the default value for EmitCondCodes is FALSE. This means the GLSL
compiler will emit code like this:
SEQ TEMP[0].x, A, B;
IF TEMP[0].x;
...
ENDIF
But if EmitCondCodes is TRUE, condition codes will be used instead:
SEQ.C TEMP[0].x, A, B;
IF (NE.xxxx);
...
ENDIF
|
|
|
|
Arrays of sampler vars haven't been tested much and might actually be broken.
Will need to be revisited someday.
Another fix for bug 20056.
|
|
location = -1 is silently ignored, but other negative values should raise
an error.
Another fix for bug 20056.
|
|
intermediate array
|
|
If too many array elements are specified, they're to be silently ignored (don't
raise a GL error).
Fixes another issue in bug 20056.
|
|
Fixes one of the issues in bug 20056.
|
|
snprint symbol does not exist in Windows.
|
|
(cherry picked from commit f7d80aa00611917bc8ce637136d982b151b8f44f)
This also involved adding the new MSAA fields to driCreateConfigs().
Also, re-add prog_instructions->Sampler field for i965 driver. Will
have to revisit that.
|
|
Merge commit 'origin/gallium-0.2' into gallium-master-merge
Conflicts:
Makefile
docs/relnotes-7.4.html
docs/relnotes.html
src/mesa/drivers/dri/i965/brw_wm.h
src/mesa/main/imports.c
src/mesa/main/mtypes.h
src/mesa/main/texcompress.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_save_draw.c
|
|
Replaces the VERBOSE_GLSL, VERBOSE_GLSL_DUMP flags which only worked in debug
builds. MESA_GLSL will work both in debug and non-debug builds.
Also add facility to dump glUniform() calls to stdout.
|
|
Enclose GPU code in comments to the file can be re-fed back into GLSL compiler.
|
|
This reverts commit b2e779988eeb595187933fe2122d86f8ccfe059c.
I didn't mean to push this stuff yet. I'm having a bad git day...
|
|
|
|
|
|
|
|
We were hitting the assertion when we ran out of registers, which can happen.
Also, add some additional assertions and freshen up some comments.
|
|
Only 15 actually worked before since we always reserved generic[0] as an
alias for vertex position.
The case of vertex attribute 0 is tricky. The spec says that there is no
aliasing between generic vertex attributes 0..MAX_VERTEX_ATTRIBS-1 and the
conventional attributes. But it also says that calls to glVertexAttrib(0, v)
are equivalent to glVertex(v). The distinction seems to be in glVertex-mode
versus vertex array mode.
So update the VBO code so that if the shader uses generic[0] but not gl_Vertex,
route the attribute data set with glVertex() to go to shader input generic[0].
No change needed for the glDrawArrays/Elements() path.
This is a potentially risky change so regressions are possible. All the usual
tests seem OK though.
|
|
This info will be used in the linker for allocating generic vertex attribs.
|
|
|
|
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
Everyone should be using the newer/better ARB versions of these extensions.
|
|
|
|
Used to log a shader to a file. Includes shader source code, the info log
and generated GPU instructions.
|
|
|
|
Conflicts:
windows/VC8/mesa/osmesa/osmesa.vcproj
windows/VC8/progs/demos/gears.vcproj
windows/VC8/progs/progs.sln
|
|
|
|
|
|
Conflicts:
src/mesa/shader/slang/slang_compile.c
|
|
|
|
|
|
|
|
|
|
|