Brian Paul
ade508312c
Updated GLSL uniform/sampler handling from gallium-0.1 branch
...
Previously, the shader linker combined the uniforms used by the vertex and
fragment shaders into a combined set of uniforms. This made the implementation
of glUniform*() simple, but was rather inefficient otherwise. Now each shader
gets its own set of uniforms (no more modelview matrix showing up in the
fragment shader uniforms, for example).
cherry-picked by hand from gallium-0.1 branch
2008-05-14 16:09:46 -06:00
Brian Paul
bff695b926
sync up with gallium-0.1 changes
...
New _mesa_num_inst_dst_regs(), _mesa_is_tex_instruction() functions
2008-05-14 13:00:27 -06:00
Brian Paul
450136d368
mesa: added _mesa_free_instructions()
...
cherry-picked from gallium-0.1
2008-05-14 12:37:07 -06:00
Brian
3e7d43cd48
Get rid of BRK0, BRK1, CONT0, CONT1 instructions.
2007-03-28 14:23:33 -06:00
Brian
63556fa994
Add the ability to generate programs that doesn't use condition codes.
...
ctx->Shader.EmitCondCodes determines if we use condition codes.
If not, IF statement uses first operand's X component as the condition.
Added OPCODE_BRK0, OPCODE_BRK1, OPCODE_CONT0, OPCODE_CONT1 to handle
the common cases of conditional break/continue.
2007-03-23 14:47:46 -06:00
Brian
fe20a619cf
updated comment
2007-03-22 16:07:43 -06:00
Brian
629ec2b06b
added SWIZZLE_XYZW
2007-03-21 15:40:54 -06:00
Brian
23d31efc16
merge from master
2007-03-21 11:57:30 -06:00
Brian
bd894c4705
added SWIZZLE_XXXX, SWIZZLE_YYYY, etc
2007-02-20 10:40:08 -07:00
Brian
3d001b81c2
Merge branch 'glsl-compiler-1' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into glsl-compiler-1
2007-02-20 08:04:40 -07:00
Brian
c81aedeaec
change BranchTarget to GLint
2007-02-08 14:09:34 -07:00
Brian
d434019633
additional comments for BranchTarget
2007-02-05 18:04:35 -07:00
Brian
01001d80e2
Initial support of loop and subroutine instructions.
...
New high-level flow-control instructions, both at IR level and GPU instructions
for looping and subroutines.
2007-02-05 11:28:15 -07:00
Brian
b63c100677
Overhaul handling of writemasks/swizzling. This fixes two problem cases:
...
vec2 v; v.x = v.y = 1.0; // chained assignment
vec4 v; v.zx = vec2(a,b); // swizzled writemask
2007-01-31 16:34:54 -07:00
Brian
7aece10039
noise functions
2007-01-28 19:01:35 -07:00
Brian
c920d201c2
updated comment
2007-01-23 17:41:25 -07:00
Brian
6d4e561e39
indicate which opcodes are used by Mesa GLSL, updated comments
2007-01-23 17:39:25 -07:00
Brian
5ae49cf3ed
Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.
2007-01-20 09:27:40 -07:00
Brian
0bad236cfb
Added OPCODE_INT to convert 4 floats to 4 ints.
2007-01-17 15:54:14 -07:00
Brian
eef70ff79a
added Sampler field to prog_instruction struct
2007-01-05 16:01:26 -07:00
Brian
00cdc0a472
Split the program.[ch] files into several new files.
2006-12-14 15:01:06 -07:00