summaryrefslogtreecommitdiff
path: root/src/mesa/shader
AgeCommit message (Collapse)Author
2008-11-25Merge commit 'origin/master' into gallium-0.2Alan Hourihane
2008-11-24mesa: added support for GLSL 1.20 array.length() methodBrian Paul
This is the only method supported in GLSL 1.20 so we take a few short-cuts.
2008-11-24mesa: support for GLSL 1.20 array typesBrian Paul
This allows syntax like "float[8] foo, bar;"
2008-11-24Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: progs/glsl/Makefile
2008-11-24mesa: copy centroid/invariance/precision info in parse_init_declarator()Brian Paul
2008-11-24mesa: check that varying variable qualifiers agreeBrian Paul
2008-11-24mesa: copy precision/variant/centroid info in slang_fully_specified_type_copy()Brian Paul
2008-11-24mesa: set flags for varying varsBrian Paul
2008-11-24mesa: rename program parameter flags to match other Mesa conventionsBrian Paul
2008-11-24mesa: copy Flags in _mesa_clone_parameter_list()Brian Paul
2008-11-24mesa: dump/debug varying vars listBrian Paul
2008-11-24mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolationBrian Paul
Plus, update the print/debug code.
2008-11-24mesa: add Flags field to gl_program_parameterBrian Paul
Only one flag defined so far: PROG_PARAM_CENTROID_BIT
2008-11-24mesa: issue error, don't crash, when calling a prototyped, but undefined ↵Brian Paul
function Bug #18659.
2008-11-24mesa: better variable name: s/aux/store/Brian Paul
2008-11-24mesa: add gl_program::Input/OutputFlags[] arrayBrian Paul
These arrays will indicate per-input or per-output options for vertex/fragment programs such as centroid-sampling and invariance.
2008-11-24mesa: copy centroid/invariance/precision info in parse_init_declarator()Brian Paul
2008-11-24mesa: check that varying variable qualifiers agreeBrian Paul
2008-11-24mesa: copy precision/variant/centroid info in slang_fully_specified_type_copy()Brian Paul
2008-11-24mesa: set flags for varying varsBrian Paul
2008-11-24mesa: rename program parameter flags to match other Mesa conventionsBrian Paul
2008-11-24mesa: copy Flags in _mesa_clone_parameter_list()Brian Paul
2008-11-24mesa: dump/debug varying vars listBrian Paul
2008-11-24mesa: added PROG_PARAM_ bits for invariant, flat/linear interpolationBrian Paul
Plus, update the print/debug code.
2008-11-24mesa: add Flags field to gl_program_parameterBrian Paul
Only one flag defined so far: PROG_PARAM_CENTROID_BIT
2008-11-21mesa: issue error, don't crash, when calling a prototyped, but undefined ↵Brian Paul
function Bug #18659.
2008-11-21mesa: better variable name: s/aux/store/Brian Paul
2008-11-20Merge commit 'origin/master' into gallium-0.2Alan Hourihane
2008-11-19mesa: minor comment reformatttingBrian Paul
2008-11-19mesa: glsl compiler debug codeBrian Paul
RETURN0 macro reports file/line before returning zero.
2008-11-19mesa: rework GLSL array code generationBrian Paul
We now express arrays in terms of indirect addressing. For example: dst = a[i]; becomes: MOV dst, TEMP[1 + TEMP[2].y]; At instruction-emit time indirect addressing is converted into ARL/ ADDR-relative form: ARL ADDR.x, TEMP[2].y; MOV dst, TEMP[1 + ADDR.x]; This fixes a number of array-related issues. Arrays of arrays and complex array/struct nesting works now. There may be some regressions, but more work is coming.
2008-11-19mesa: don't realloc instruction buffer so oftenBrian Paul
2008-11-19mesa: updated commentBrian Paul
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