summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader
Commit message (Collapse)AuthorAgeFilesLines
* mesa: no longer need Writemask field in GLSL IR nodesBrian Paul2008-11-134-69/+23
| | | | The Swizzle and Size fields carry all the info we need now.
* mesa: revamp GLSL instruction emit codeBrian Paul2008-11-131-244/+381
| | | | | | | | | | | | | | | 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...
* mesa: make writemask_string() non-staticBrian Paul2008-11-132-4/+7
|
* mesa: remove some do-nothing GLSL codeBrian Paul2008-11-131-16/+0
|
* mesa: fix accidental regression in GLSL built-in texture matrix lookupBrian Paul2008-11-131-0/+1
| | | | Was broken by commit 9aca9a4b72b2a7b378e50bd88f9c3324d07375ec.
* mesa: use the tighter definition of GLSL ftransform() from the gallium branchesBrian Paul2008-11-132-31/+40
|
* mesa: remove unused/obsolete __NormalMatrixTranspose matrixBrian Paul2008-11-133-188/+184
|
* mesa: fix bug in GLSL built-in matrix state lookupBrian Paul2008-11-131-2/+5
|
* mesa: tweak program register printing for RelAddr caseBrian Paul2008-11-131-1/+1
|
* mesa: allow relative indexing into all register files and indirect dst ↵Brian Paul2008-11-113-128/+128
| | | | register indexing
* mesa: track initialization status of uniform variables. Plus, asst clean-ups.Brian Paul2008-11-107-31/+52
|
* mesa: initial support for uniform variable initializers.Brian Paul2008-11-101-5/+22
| | | | | This lets one specify initial values for uniforms in the code, avoiding the need to call glUniform() in some cases.
* mesa: fix logic error in GLSL linker when looking for main() shadersBrian Paul2008-11-101-5/+10
|
* mesa: allows 'f' suffix on GLSL float literalsBrian Paul2008-11-102-6/+16
|
* mesa: remove OPCODE_INT #defineBrian2008-11-081-3/+0
|
* mesa: add support for 'centroid' qualifier in GLSL 1.20Brian Paul2008-11-0711-2598/+2706
|
* mesa: add support for 'invariant' keyword for GLSL 1.20Brian Paul2008-11-0711-2609/+2749
|
* mesa: reformat comments, rewrap lines, etc for a little better readabilityBrian Paul2008-11-072-402/+418
|
* mesa: forgot sqrt in NRM3/4 instructionsBrian Paul2008-11-071-2/+2
|
* mesa: fix opcode table order bugBrian Paul2008-11-071-2/+2
|
* mesa: add GLSL support for DP2, NRM3, NRM4 instructions (not actually ↵Brian Paul2008-11-074-3/+18
| | | | emitted yet though)
* mesa: added DP2, DP2A instructionsBrian Paul2008-11-073-2/+32
|
* mesa: added AND/OR/NOT/XOR instructionsBrian Paul2008-11-073-23/+199
|
* mesa: include shader/prog_instruction.hBrian Paul2008-11-071-0/+1
| | | | Seems to fix a mysteriously missing build dependency.
* mesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.Brian Paul2008-11-073-0/+45
| | | | | | We may emit these instructions from GLSL instead of DP3/RCP/MUL. Also, implement SSG (set sign) instruction in the interpreter.
* mesa: rename OPCODE_INT -> OPCODE_TRUNCBrian Paul2008-11-064-14/+17
| | | | Trunc is a more accurate description; there's no type conversion involved.
* mesa: update the shader programs->TexturesUsed array at link timeBrian Paul2008-11-063-4/+26
| | | | | | | | 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.
* mesa: Fix compiler warnings on Windows.Brian Paul2008-11-051-1/+1
| | | | cherry-picked subset of a77976d2ee578d0483c64f2aa41719bbae9c1c97
* mesa: fix a GLSL array indexing codegen bugBrian Paul2008-11-052-8/+101
| | | | Expressions like array[i] + array[j] didn't work properly before.
* mesa: remove extra \n from printf stringBrian Paul2008-11-051-1/+1
|
* mesa: add Initialized field to gl_uniform struct, for debugging purposes onlyBrian Paul2008-11-053-7/+16
|
* mesa: fix float-valued GLSL vertex attribute variablesBrian Paul2008-11-041-8/+8
| | | | The swizzle mask for such variables wasn't set up properly.
* mesa: silence warningsBrian Paul2008-11-011-3/+3
|
* mesa: do scope replacement for while/for loops tooBrian Paul2008-11-011-3/+7
| | | | This fixes a function inlining bug involving vars declared inside loop bodies.
* mesa: glsl tree print improvementsBrian Paul2008-11-011-1/+17
|
* mesa: fix assignment / parameter passing of sampler typesBrian Paul2008-11-013-8/+29
|
* mesa: additional debug flags for glsl debug/disassemblyBrian Paul2008-11-012-23/+25
|
* mesa: fix some bugs with precision qualifier parsingBrian Paul2008-10-319-2382/+2459
|
* mesa: do scope replacement for variable initializers tooBrian Paul2008-10-311-0/+11
|
* mesa: fix copy/paste error in GLSL error msgBrian Paul2008-10-311-1/+1
|
* mesa: set FRAG_BIT_FOGC bit in InputsUsed if FogOption!=GL_NONEBrian Paul2008-10-061-0/+3
|
* GLSL: Implement _mesa_get_handleIan Romanick2008-09-291-17/+8
| | | | | Implementing _mesa_get_handle in using glGetIntegerv(GL_CURRENT_PROGRAM, ...) allows glGetHandleARB to work.
* GLSL: AttachShader returns INVALID_OPERATION for repeated attachIan Romanick2008-09-291-1/+7
| | | | | | | The GL_ARB_shader_objects spec says that glAttachShaderARB is supposed to return GL_INVALID_OPERATION if a shader is attached to a program where it is already attached. _mesa_attach_shader perviously returned without error in this case.
* mesa: asst updates for VMSJouk Jansen2008-09-292-4/+7
|
* mesa: fix assertion in _mesa_reference_program()Brian Paul2008-09-261-1/+5
|
* mesa: fix function params to match prototypesSam Hocevar2008-09-251-5/+5
|
* mesa: prevent the slang code generator from aborting when faced with a ↵Sam Hocevar2008-09-251-1/+5
| | | | sampler variable redeclaration.
* mesa: glsl: fix glGetUniform for matrix queriesBrian Paul2008-09-231-50/+79
| | | | (cherry picked from commit 7a6eba54d064cadf15f93df2c1748cf5e474ef03)
* mesa: glsl: fix a number of glUniform issuesBrian Paul2008-09-231-31/+199
| | | | | | | | | Additional error checking. Allow setting elements of uniform arrays. This involves encoding both a uniform location and a parameter offset in the value returned by glGetUniformLocation(). Limit glUniform[if]v()'s count to the size of the uniform array. When setting bool-valued uniforms, convert all float/int values to 0 or 1.
* mesa: glsl: fix error check in get_uniformfv()Brian Paul2008-09-231-4/+9
| | | | (cherry picked from commit 18cd9c229a1fc8da8b7669b8d1d100f6bbeca183)