summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-10-09start on a unified vertex/fragment program translation functionBrian
2007-10-09Generate DCLs for temporaries.Brian
2007-10-09Finish up decls for packed fragment program outputs.Brian
2007-10-09Pack fragment program outputs to be consistant with vertex programs.Brian
Previously, output[0] was always Z and output[1] was color. Now output[0] will be color if Z is not written. In shade_quad() use the semantic info to determine which quantity is in which output slot.
2007-10-09update some commentsBrian
2007-10-09More work on flow control for CAL/RET.Brian
2007-10-09New ATTRIB interpolation type for vertex program inputs/declarations.Brian
2007-10-09Don't emit semantic info for vertex program inputs.Brian
2007-10-09Use linked fragment shader inputs (if present) to determine which outputs ↵Brian
are needed.
2007-10-03use different temps in exec_tex() for biasBrian
2007-10-03updated commentsBrian
2007-10-03Add outputs_written bitfield to pipe_shader_state, use it to determine if ↵Brian
fragment shader writes Z.
2007-10-03Move XSTDCALL definition to p_compiler.hBrian
2007-10-03handle frag progs that write ZBrian
2007-10-03basic support for reading GL_DEPTH_COMPONENTBrian
2007-10-03added s8z24_get_tile()Brian
2007-10-03fix eq/neq bugsBrian
2007-10-03fix f/u mix-up in micro_trunc()Brian
2007-10-03move TEX code into exec_tex()Brian
2007-10-03Some minor cleanups.Michel Dänzer
2007-10-03Double amount of memory allocated for generated shader code.Michel Dänzer
The code generated for the glxgears vertex shader didn't fit, causing a crash.
2007-10-03Track fragment and vertex shader code generation via pipe shader state objects.Michel Dänzer
Unfortunately, the generated fragment shader code is effectively unusable until it handles quad->mask.
2007-10-03intel_winsys: Adapt to DRM changes (again).Michel Dänzer
It was decided after all to stick to 'pipes' here, even though the actual meaning is now 'planes'.
2007-10-03In vertex shaders also expect the template to be stack allocatedZack Rusin
structure so allocate a private copy of it.
2007-10-03Unify the definitions of the 4 component dot product into oneZack Rusin
location.
2007-10-03Unify handling of userplanes and regular planes to simplifyZack Rusin
the clipping code. (really done by Keith)
2007-10-03Get rid of ST_NEW_SHADER flag and the dependency on _NEW_PROGRAMZack Rusin
which is being hit all the time. Done by Keith really.
2007-10-03Explain a little better what we're doing here.Zack Rusin
2007-10-03Make softpipe behave more like a real driver by always allocating somethingZack Rusin
in the state functions.
2007-10-02clean-upsBrian
2007-10-02Implement/use fragment kill resultsBrian
2007-10-02Implement TGSI_OPCODE_SNE with micro_ne()Brian
2007-10-02Separate TGSI_OPCODE_KIL and TGSI_OPCODE_KILP (predicated).Brian
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.
2007-10-02assert that program length > 1 (some code, plus END)Brian
2007-10-02added MESA_FORMAT_Z16 in st_mesa_format_to_pipe_format(), for GleanBrian
2007-10-02Generate a texenv fragment program if there's a GLSL vertex shader but no ↵Brian
GLSL fragment shader. This allows Glean glsl1 test to get pretty far.
2007-10-02Push mask stacks upon CAL, pop upon RET.Brian
Still need to handle conditional RET statements...
2007-10-02added license and interpreter commentsBrian
2007-10-02Implement CONT statement.Brian
2007-10-02added micro_trunc(), re-order some codeBrian
2007-10-02Minor optimization: no-op CAL when ExecMask==0x0.Brian
2007-10-02Added TGSI_FILE_OUTPUT case in fetch_src_file_channel().Brian
GLSL output variables (such as vertex varyings) can be read (they're not write-only).
2007-10-02Implement CAL/RET and a call stack for subroutines.Brian
The glsl/brick.c shader demo runs now.
2007-10-02Added TGSI_OPCODE_ENDBrian
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.
2007-10-02Fold expand_program() into tgsi_exec_prepare()Brian
2007-10-02no more need for tgsi_exec_machine_run2(), remove dead codeBrian
2007-10-02remove dead codeBrian
2007-10-02Move tgsi machine state init/allocations so they're done less frequently.Brian
This, plus expanding all instructions ahead of time, seems to have improved the performance of program execution by 8x or so.
2007-10-02checkpoint: unpack all instructions before interpretation. Actual looping ↵Brian
works.
2007-10-01comments/code for min/max_lod - revisit somedayBrian