summaryrefslogtreecommitdiff
path: root/src/mesa/swrast
AgeCommit message (Collapse)Author
2007-02-25remove 'maxInst' parameter from _mesa_execute_program()Brian
2007-02-25remove unused 'element' parameter from _mesa_execute_program()Brian
2007-02-24Remove unneeded _Fragment/VertexShaderPresent fields, update comments.Brian
2007-02-22Use the new unified vertex/fragment program interpreter from prog_execute.c.Brian
Currently, DDX, DDY don't work.
2007-02-22use MAX_PROGRAM_ENV_PARAMSBrian
2007-02-22Merge branch 'origin' into glsl-compiler-1Brian
Conflicts: src/mesa/main/state.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/programopt.c src/mesa/shader/slang/slang_execute.c src/mesa/sources src/mesa/swrast/s_arbshader.c src/mesa/swrast/s_context.c src/mesa/swrast/s_span.c src/mesa/swrast/s_zoom.c src/mesa/tnl/t_context.c src/mesa/tnl/t_save_api.c src/mesa/tnl/t_vb_arbprogram.c src/mesa/tnl/t_vp_build.c src/mesa/tnl/t_vtx_eval.c
2007-02-17Lots of changes to prog_print.c code.Brian
Mainly, allow printing programs in either ARB, NV or "debug" formats.
2007-02-14test for POT before using sample_2d_linear_repeat()Etienne Clement
2007-02-08consolidate BRA with BRK, CONTBrian
2007-02-08Simplify code with eval_condition(). Implement conditional BRK.Brian
2007-02-07Use IR_LOOP to represent do-while and for-loops.Brian
Also, start moving high vs. low-level instruction selection into slang_emit.c
2007-02-06BRK and CONT work the sameBrian
2007-02-06Implement CONT, improve BRK.Brian
IR_LOOP's BranchNode ptr is the head of a linked list of CONT and BRK nodes. After emitting loop, walk over the linked list, filling in the CONT/BRK instruction's BranchTarget field (location of the ENDLOOP instruction, or one past).
2007-02-05BRK instruction's BranchTarget field now used for efficiently breaking out ↵Brian
of loops. BRK's BranchTarget field actually points to the top of the loop, not the bottom, since we don't know the later's location yet. In the interpreter, basically do an indirect jump to update the PC.
2007-02-05Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.Brian
This allows us to back-patch the IF/ELSE instruction's BranchTarget field to point to the location of the ELSE/ENDIF instructions. No longer have to search for ELSE/ENDIF in the interpreter. Also makes it trivial to translate IF/ELSE instructions into conditional/unconditional BRA instructions.
2007-02-05Initial implementation of high-level flow-control instructions.Brian
IF/ELSE/ENDIF and BEGIN_LOOP/END_LOOP/BREAK instructions seem to work. Disabled by default though until better tested. Implemented IR_NOT, but needs optimization.
2007-02-05Initial support of loop and subroutine instructions.Brian
New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines.
2007-02-05Merge SWvertex texcoord and varying fields into attrib[] array field.Brian
Fragment texcoords and varying code is now unified in the point/line/triangle rasterization code. In the future, merge color, fog, etc. attribs.
2007-02-02fix maxInst argumentBrian
2007-02-02unroll inner loop of interpolate_varying()Brian
2007-02-02simplify derivative-related codeBrian
2007-02-02simplify interpolate_texcoords()Brian
2007-02-02Replace color, z, w, texture interpolants with new generic attrib interpolants.Brian
2007-02-02New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. ↵Brian
fields. More to come.
2007-02-02get rid of unused span->start fieldBrian
2007-02-01commentsBrian
2007-02-01New SWspanarrays attribs[] array.Brian
Replace texcoord[], varying[], etc. arrays with single attribs[] array, indexed by FRAG_ATTRIB_* values. Eliminates need to copy data into fragment program machine input registers. Will lead to future clean-ups.
2007-02-01move span-related types/tokens into s_span.hBrian
2007-02-01additional assertions, bump up MAX_EXECBrian
2007-01-28noise functionsBrian
2007-01-25asst fixes, tranpose span->varying array indexesBrian
2007-01-25fixes, clean-ups, transpose span->varying array indexingBrian
2007-01-25new comments, ideasBrian
2007-01-24fix varying interpolationBrian
2007-01-24only setup varying vars that will be usedBrian
2007-01-23fix g++ warnings/errorsBrian
2007-01-23silence C++ warningsBrian
2007-01-23fixes for C++ warnings/errorsBrian
2007-01-20Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.Brian
2007-01-17Added OPCODE_INT to convert 4 floats to 4 ints.Brian
2007-01-09more debug code (disabled)Brian
2007-01-08check if _Current == NULL for TXBBrian
2007-01-08Remove if (tObj) conditional so that texture units without a texture imageBrian
return black (0,0,0,1) when sampled.
2007-01-06Use GLuint instead of GLint to store intermediate Z values. Fixes problems ↵Brian
when using 32-bit Z buffer.
2006-12-21added INTERP_VARYING codeBrian
2006-12-21s/attribute/varying/Brian
2006-12-19Overhaul of GLSL API functions, dispatching, etc.Brian
2006-12-18Added instruction counter to catch infinite loops (temporary).Brian
2006-12-16fix comment, handle NOPBrian
2006-12-16Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH.Brian
This restores the behaviour of Mesa 6.5.1, fixing a regression in 6.5.2. See bug 9345. Revisit someday...