Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
These correspond to the NV and ARB-style fragment program KIL instructions.
The former is really supposed to examine the NV condition codes but Mesa's
GLSL compiler always emits unconditional KIL instructions.
|
|
Still need to handle conditional RET statements...
|
|
|
|
|
|
|
|
|
|
GLSL output variables (such as vertex varyings) can be read (they're not
write-only).
|
|
The glsl/brick.c shader demo runs now.
|
|
Halt program execution when we get to END instruction. The GLSL compiler
puts subroutines after the end instruction so we have to stop before then.
|
|
|
|
|
|
This, plus expanding all instructions ahead of time, seems to have improved
the performance of program execution by 8x or so.
|
|
works.
|
|
Also, instead of passing cond mask to each micro op, just apply it in the
store_dest() function.
|
|
mach->CondMask controls writing to each of the 4 components in a quad.
mach->CondMaskStack handles nested conditionals.
Only a few of the micro ops (add/sub/mul/store) have been updated to obey CondMask at this time.
|
|
In mesa_to_tgsi.c, use TGSI_INTERPOLATE_PERSPECTIVE by default (to match
post-transform vertex info convention). More to be done there...
In sp_quad_fs.c, interpolate W in addition to Z. This fixes the divide
by zero happening in perspective_interpolation() tgsi_exec.c
As it was, we were only getting perspective correction of texture coords
used by the TGSI_TEX instruction since it does a homogeneous divide.
Other coords/varyings were incorrect.
|
|
|
|
|