summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2008-11-15Merge commit 'origin/master' into gallium-0.2Keith Whitwell
Conflicts: src/mesa/shader/prog_print.c
2008-11-13mesa: no longer need Writemask field in GLSL IR nodesBrian Paul
The Swizzle and Size fields carry all the info we need now.
2008-11-13mesa: revamp GLSL instruction emit codeBrian Paul
This is a step toward better array handling code. In particular, when more than one operand of an instruction uses indirect addressing, we'll need some temporary instructions and registers. By converting IR storage to instruction operands all in one place (emit_instruction()) we can be smarter about this. Also, somewhat better handling of dst register swizzle/writemask handling. This results in tighter writemasks on some instructions which is good for SOA execution. And, cleaner instruction commenting with inst_comment(). Next: remove some more dead code and additional clean-ups...
2008-11-13mesa: make writemask_string() non-staticBrian Paul
2008-11-13mesa: remove some do-nothing GLSL codeBrian Paul
2008-11-13mesa: fix accidental regression in GLSL built-in texture matrix lookupBrian Paul
Was broken by commit 9aca9a4b72b2a7b378e50bd88f9c3324d07375ec.
2008-11-13mesa: use the tighter definition of GLSL ftransform() from the gallium branchesBrian Paul
2008-11-13mesa: remove unused/obsolete __NormalMatrixTranspose matrixBrian Paul
2008-11-13mesa: fix bug in GLSL built-in matrix state lookupBrian Paul
2008-11-13mesa: tweak program register printing for RelAddr caseBrian Paul
2008-11-11Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/shader/prog_execute.c src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
2008-11-11mesa: allow relative indexing into all register files and indirect dst ↵Brian Paul
register indexing
2008-11-10mesa: track initialization status of uniform variables. Plus, asst clean-ups.Brian Paul
2008-11-10mesa: initial support for uniform variable initializers.Brian Paul
This lets one specify initial values for uniforms in the code, avoiding the need to call glUniform() in some cases.
2008-11-10mesa: fix logic error in GLSL linker when looking for main() shadersBrian Paul
2008-11-10mesa: allows 'f' suffix on GLSL float literalsBrian Paul
2008-11-08mesa: remove OPCODE_INT #defineBrian
2008-11-07mesa: add support for 'centroid' qualifier in GLSL 1.20Brian Paul
2008-11-07mesa: add support for 'invariant' keyword for GLSL 1.20Brian Paul
2008-11-07mesa: reformat comments, rewrap lines, etc for a little better readabilityBrian Paul
2008-11-07Merge commit 'origin/master' into gallium-0.2Brian Paul
2008-11-07mesa: forgot sqrt in NRM3/4 instructionsBrian Paul
2008-11-07mesa: fix opcode table order bugBrian Paul
2008-11-07Merge commit 'origin/master' into gallium-0.2Brian Paul
2008-11-07mesa: add GLSL support for DP2, NRM3, NRM4 instructions (not actually ↵Brian Paul
emitted yet though)
2008-11-07mesa: added DP2, DP2A instructionsBrian Paul
2008-11-07mesa: added AND/OR/NOT/XOR instructionsBrian Paul
2008-11-07mesa: include shader/prog_instruction.hBrian Paul
Seems to fix a mysteriously missing build dependency.
2008-11-07mesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.Brian Paul
We may emit these instructions from GLSL instead of DP3/RCP/MUL. Also, implement SSG (set sign) instruction in the interpreter.
2008-11-06Merge commit 'origin/master' into gallium-0.2Brian Paul
2008-11-06mesa: rename OPCODE_INT -> OPCODE_TRUNCBrian Paul
Trunc is a more accurate description; there's no type conversion involved.
2008-11-06mesa: update the shader programs->TexturesUsed array at link timeBrian Paul
If an application never calls glUniform() to set sampler variable values they'll remain 0 (the default value/unit). Now call _mesa_update_shader_textures_used() at link time in case glUniform() is never called. program->TextureUsed[] will then be correct for state validation.
2008-11-06Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul
2008-11-06mesa: update the shader programs->TexturesUsed array at link timeBrian Paul
If an application never calls glUniform() to set sampler variable values they'll remain 0 (the default value/unit). Now call _mesa_update_shader_textures_used() at link time in case glUniform() is never called. program->TextureUsed[] will then be correct for state validation.
2008-11-05mesa: Fix compiler warnings on Windows.Brian Paul
cherry-picked subset of a77976d2ee578d0483c64f2aa41719bbae9c1c97
2008-11-05mesa: fix a GLSL array indexing codegen bugBrian Paul
Expressions like array[i] + array[j] didn't work properly before.
2008-11-05Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul
Conflicts: src/gallium/auxiliary/rtasm/rtasm_execmem.c src/mesa/shader/slang/slang_emit.c src/mesa/shader/slang/slang_log.c src/mesa/state_tracker/st_atom_framebuffer.c
2008-11-05mesa: fix a GLSL array indexing codegen bugBrian Paul
Expressions like array[i] + array[j] didn't work properly before.
2008-11-05mesa: remove extra \n from printf stringBrian Paul
2008-11-05mesa: remove extra \n from printf stringBrian Paul
2008-11-05mesa: add Initialized field to gl_uniform struct, for debugging purposes onlyBrian Paul
2008-11-05mesa: add Initialized field to gl_uniform struct, for debugging purposes onlyBrian Paul
2008-11-05Merge commit 'origin/master' into gallium-0.2Alan Hourihane
2008-11-04mesa: fix float-valued GLSL vertex attribute variablesBrian Paul
The swizzle mask for such variables wasn't set up properly.
2008-11-04mesa: fix float-valued GLSL vertex attribute variablesBrian Paul
The swizzle mask for such variables wasn't set up properly.
2008-11-01Merge commit 'origin/master' into gallium-0.2Alan Hourihane
Conflicts: src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
2008-11-01mesa: silence warningsBrian Paul
2008-11-01mesa: do scope replacement for while/for loops tooBrian Paul
This fixes a function inlining bug involving vars declared inside loop bodies.
2008-11-01mesa: glsl tree print improvementsBrian Paul
2008-11-01mesa: fix assignment / parameter passing of sampler typesBrian Paul