summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_vartable.h
AgeCommit message (Collapse)Author
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.
2007-01-28Lots of vartable clean-ups, fixes. Report an error message when we run outBrian
of registers, rather than crash.
2007-01-27Clean-up of var/temp allocation function parameters.Brian
2007-01-27Improved register allocation: allow four 'float' vars or temporaries to ↵Brian
share a single register. Clean-up needed.
2007-01-13Rework code related to temp register allocation, both for user variablesBrian
and expression temporarires. Much better register utilization now. Lots of other fixes. The OpenGL GLSL "orange book" brick shader demo works now.