summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader
Commit message (Collapse)AuthorAgeFilesLines
* mesa: added nopfrag/nopvert options for MESA_GLSLBrian Paul2009-09-292-0/+14
| | | | | These options can be used to force vertex/fragment shaders to be no-op shaders (actually, simple pass-through shaders). For debug/test purposes.
* mesa: added _mesa_nop_vertex/fragment_program()Brian Paul2009-09-292-0/+98
| | | | For debug/test purposes.
* Merge branch 'asm-shader-rework-2'Ian Romanick2009-09-257-2124/+3019
|\ | | | | | | | | Conflicts: src/mesa/shader/program_parse.tab.c
| * NV fp lexer: Add UP4B and UP4UB instructions that were previously missingIan Romanick2009-09-242-667/+686
| |
| * Merge branch 'master' into asm-shader-rework-2Ian Romanick2009-09-106-418/+431
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/lex.yy.c src/mesa/shader/program_parse.tab.c src/mesa/shader/program_parse.tab.h
| * | NV fp parser: Add support for condition codesIan Romanick2009-09-104-881/+1183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conditional write masks and the condition-code based KIL instruction are all supported. The specific behavior of KIL in the following shader may or may not match the behavior of other implementations: !!ARBfp1.0 TEMP GT; MOVC GT, fragment.texcoord[0]; KIL GT.x; END Should be it interpreted as 'KIL srcReg' or as 'KIL ccTest'? The current parser will interpret it as 'KIL srcReg'.
| * | ARB prog lexer: Add missing #include to silence compile warningIan Romanick2009-09-102-173/+175
| | |
| * | ARB prog parser: Differentiate between used and unused names in the lexerIan Romanick2009-09-105-834/+851
| | | | | | | | | | | | | | | The lexer will return IDENTIFIER only when the name does not have an associated symbol. Otherwise USED_IDENTIFIER is returned.
| * | NV fp parser: Support instruction and TEMP / OUTPUT sizesIan Romanick2009-09-046-1506/+1463
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for declaring TEMP and OUTPUT variables as 'LONG' or 'SHORT' precision. The precision specifiers are parsed, but they are currently ignored. Some support for this may be added in the future, but neither Intel hardware nor, as far as I'm aware, Radeon hardware support multiple precisions. Also adds support for instruction precision ('X', 'H', and 'R') suffixes and instruction condition code output ('C') suffix. This results in a fairly major change to the lexer. Instructions are matched with all the possible suffix strings. The suffix string are then carved off by a context (i.e., which program mode and options are set) aware parser that converts the suffixes to bits in prog_instruction. This could have been handled in the same way _SAT was originally handled in the lexer, but it would have resulted in a very large lexer with lots of opportunity for cut-and-paste errors.
| * | ARB prog parser: Add new constructor for asm_instructionIan Romanick2009-09-043-334/+400
| | | | | | | | | | | | | | | The new constructor copies fields from the prog_instruction that the parser expects the lexer to set.
| * | NV fp parser: Add support for absolute value operator on instruction operandsIan Romanick2009-09-032-840/+942
| | |
| * | NV fp parser: Support new scalar constant behaviorIan Romanick2009-09-032-729/+770
| | | | | | | | | | | | | | | | | | ARBfp requires scalar constants have a '.x' suffix, but NVfp_option does not. This shows up with instructions that require a scalar parameter (e.g., COS).
| * | NV fp parser: Parse TXD instructionIan Romanick2009-09-012-842/+941
| | |
| * | NV fp lexer: Add new opcodesIan Romanick2009-08-315-1191/+1455
| | |
| * | NV fp: Parse 'OPTION NV_fragment_program' in ARB assembly shadersIan Romanick2009-08-312-0/+12
| | |
* | | Merge branch 'mesa_7_6_branch'Brian Paul2009-09-251-2/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/intel/intel_clear.c
| * | | mesa: move declaration before codeVinson Lee2009-09-251-2/+3
| | | |
* | | | mesa: remove: unused gl_vertex_program::TnlData fieldBrian Paul2009-09-241-7/+0
| | | |
* | | | Merge branch 'mesa_7_6_branch'Brian Paul2009-09-244-0/+105
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/vbo/vbo_exec_array.c
| * | | i965: Emit zero initialization for NV VP temporaries as required.Eric Anholt2009-09-243-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is similar to what r300 does inside the driver, but I've added it as a generic option since it seems most hardware will want it. Fixes piglit nv-init-zero-reg.vpfp and nv-init-zero-addr.vpfp.
| * | | mesa: Initialize NV_vertex_program fields for the parameter lists and such.Eric Anholt2009-09-243-0/+55
| | | | | | | | | | | | | | | | This helps let drivers treat NV_vp like ARB_vp.
| * | | mesa: added commentBrian Paul2009-09-241-0/+1
| | | |
* | | | Merge branch 'mesa_7_6_branch'Brian Paul2009-09-243-9/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/r600/r700_assembler.c src/mesa/drivers/dri/r600/r700_chip.c src/mesa/drivers/dri/r600/r700_render.c src/mesa/drivers/dri/r600/r700_vertprog.c src/mesa/drivers/dri/r600/r700_vertprog.h src/mesa/drivers/dri/radeon/radeon_span.c
| * | | Merge branch 'mesa_7_5_branch' into mesa_7_6_branchBrian Paul2009-09-241-6/+1
| |\ \ \
| | * | | mesa: don't bias LOD in shader interpreter; do it in swrastBrian Paul2009-09-231-6/+1
| | | | |
| * | | | glsl: init var to silence warningBrian Paul2009-09-241-1/+1
| | | | |
| * | | | glsl: fix missing initializers warningBrian Paul2009-09-241-2/+2
| | | | |
* | | | | Merge branch 'mesa_7_6_branch'Nicolai Hähnle2009-09-211-0/+1
|\| | | |
| * | | | r300: Fix handling of NV_vertex_program parametersNicolai Hähnle2009-09-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The handling is a bit inefficient, unfortunately, but I don't want to make any intrusive changes for Mesa 7.6. Signed-off-by: Nicolai Hähnle <[email protected]>
* | | | | Merge branch 'mesa_7_6_branch'Brian Paul2009-09-152-0/+43
|\| | | |
| * | | | Merge branch 'mesa_7_5_branch' into mesa_7_6_branchBrian Paul2009-09-152-0/+43
| |\| | |
| | * | | glsl: added some link debug code (disabled)Brian Paul2009-09-141-0/+15
| | | | |
| | * | | glsl: remove extra #version directives from concatenated shader sourcesBrian Paul2009-09-141-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we concatenate shaders to do our form of poor-man linking, if there's multiple #version directives, preprocessing fails. This change disables the extra #version directives by changing the first two chars to //. This should help with some Wine issues such as bug 23946.
* | | | | ARB prog parser: regenerated fileBrian Paul2009-09-151-193/+197
| | | | |
* | | | | ARB prog parser: more detailed error message for out of bounds ADDR offsetsBrian Paul2009-09-151-4/+8
| | | | |
* | | | | mesa: remove unused SATURATE_PLUS_MINUS_ONE flagKeith Whitwell2009-09-121-1/+0
| |_|_|/ |/| | | | | | | | | | | Never set in mesa. Remove from tgsi translation as well.
* | | | mesa: Include <unistd.h> only when one is available.Michal Krol2009-09-072-0/+8
|/ / /
* | | ARB prog: replace 'unsigned' with 'gl_state_index'Brian Paul2009-09-045-195/+195
| | | | | | | | | | | | Fixes compilation warnings with MSVC.
* | | ARB prog: rename POINT, SIZE to POINT_TOK, SIZE_TOKBrian Paul2009-09-045-37/+23
| | | | | | | | | | | | | | | Fixes symbol collisions with typedefs in Microsoft headers. Perhaps we should prefix/suffix all the lexer tokens to avoid this.
* | | ARB prog parser: Fix handling of stateOptModMatNumIan Romanick2009-09-012-203/+203
| | | | | | | | | | | | | | | | | | The optional array index should clearly be enclosed in square brackets. This helps the oglconform test vp_binding.c get a bit farther, but it still fails.
* | | mesa: debug printf for KILBrian Paul2009-08-311-0/+5
| |/ |/|
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-08-271-8/+8
|\|
| * mesa: direct program debug output to stderr instead of stdoutmarvin242009-08-271-9/+9
| |
* | mesa: move decls before codeVinson Lee2009-08-271-2/+4
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-08-261-4/+15
|\|
| * glsl: signal that the program needs to be re-translated when samplers changeBrian Paul2009-08-261-4/+15
| |
* | glsl: asst. clean-ups in set_program_uniform()Brian Paul2009-08-261-14/+7
| | | | | | | | | | Remove redunant type check for samplers (assert instead). Move some local vars. Update comments.
* | mesa: var renaming, new assertionBrian Paul2009-08-261-4/+5
| |
* | mesa: additional instruction field size assertionsBrian Paul2009-08-261-0/+6
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-08-261-3/+7
|\|