summaryrefslogtreecommitdiffstats
path: root/src/mesa/swrast
Commit message (Collapse)AuthorAgeFilesLines
* comment about SPAN_* vs FRAG_BIT_* valuesBrian2007-03-131-0/+2
|
* Check if FRAG_RESULT_COLR is written and update span->interpMask, arrayMask.Brian2007-03-131-1/+8
| | | | Also, fix an assertion.
* Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1.Brian2007-03-114-73/+148
| | | | | | GL_MAX_DRAW_BUFFERS is currently 4. Added gl_FragData[] output for fragment programs. In _swrast_write_rgba_span() loop over the color outputs/renderbuffers.
* Implement gl_FrontFacing for fragment shaders.Brian2007-03-101-0/+4
| | | | | | For the time being, we put the gl_FrontFacing value in the FOGC.Y input register. Combining FOGC and FrontFacing in one register is a bit of a hack and may need to be changed someday.
* clean-up formattingBrian2007-03-101-10/+11
|
* Merge branch 'origin' into glsl-compiler-1Brian2007-03-091-9/+17
|\ | | | | | | | | | | Conflicts: src/mesa/main/context.c
| * if renderbuffer ptr is null, just returnBrian2007-02-261-9/+17
| |
* | fix deferredTexture bugBrian2007-03-071-1/+1
| |
* | remove unneeded includesBrian2007-02-251-4/+0
| |
* | remove 'maxInst' parameter from _mesa_execute_program()Brian2007-02-251-2/+1
| |
* | remove unused 'element' parameter from _mesa_execute_program()Brian2007-02-251-2/+1
| |
* | Remove unneeded _Fragment/VertexShaderPresent fields, update comments.Brian2007-02-241-4/+0
| |
* | Use the new unified vertex/fragment program interpreter from prog_execute.c.Brian2007-02-221-1511/+12
| | | | | | | | Currently, DDX, DDY don't work.
* | use MAX_PROGRAM_ENV_PARAMSBrian2007-02-221-3/+3
| |
* | Merge branch 'origin' into glsl-compiler-1Brian2007-02-2212-43/+59
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * test for POT before using sample_2d_linear_repeat()Etienne Clement2007-02-141-1/+3
| |
| * silence C++ warningsBrian2007-01-235-18/+24
| |
| * fixes for C++ warnings/errorsBrian2007-01-235-23/+32
| |
| * Use GLuint instead of GLint to store intermediate Z values. Fixes problems ↵Brian2007-01-062-8/+9
| | | | | | | | when using 32-bit Z buffer.
| * Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH.Brian2006-12-161-10/+12
| | | | | | | | | | This restores the behaviour of Mesa 6.5.1, fixing a regression in 6.5.2. See bug 9345. Revisit someday...
| * don't allow fog when using a fragment shader (bug 9346)Brian2006-12-161-2/+5
| |
* | Lots of changes to prog_print.c code.Brian2007-02-171-1/+2
| | | | | | | | Mainly, allow printing programs in either ARB, NV or "debug" formats.
* | consolidate BRA with BRK, CONTBrian2007-02-081-7/+3
| |
* | Simplify code with eval_condition(). Implement conditional BRK.Brian2007-02-081-69/+56
| |
* | Use IR_LOOP to represent do-while and for-loops.Brian2007-02-071-7/+5
| | | | | | | | Also, start moving high vs. low-level instruction selection into slang_emit.c
* | BRK and CONT work the sameBrian2007-02-061-20/+4
| |
* | Implement CONT, improve BRK.Brian2007-02-061-0/+6
| | | | | | | | | | | | | | 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).
* | BRK instruction's BranchTarget field now used for efficiently breaking out ↵Brian2007-02-051-17/+13
| | | | | | | | | | | | | | | | 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.
* | Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.Brian2007-02-051-51/+6
| | | | | | | | | | | | | | 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.
* | Initial implementation of high-level flow-control instructions.Brian2007-02-051-6/+32
| | | | | | | | | | | | 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.
* | Initial support of loop and subroutine instructions.Brian2007-02-051-0/+13
| | | | | | | | | | New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines.
* | Merge SWvertex texcoord and varying fields into attrib[] array field.Brian2007-02-0512-561/+363
| | | | | | | | | | Fragment texcoords and varying code is now unified in the point/line/triangle rasterization code. In the future, merge color, fog, etc. attribs.
* | fix maxInst argumentBrian2007-02-021-1/+2
| |
* | unroll inner loop of interpolate_varying()Brian2007-02-021-13/+22
| |
* | simplify derivative-related codeBrian2007-02-021-90/+41
| |
* | simplify interpolate_texcoords()Brian2007-02-021-262/+126
| |
* | Replace color, z, w, texture interpolants with new generic attrib interpolants.Brian2007-02-028-277/+280
| |
* | New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. ↵Brian2007-02-028-115/+118
| | | | | | | | fields. More to come.
* | get rid of unused span->start fieldBrian2007-02-022-5/+2
| |
* | commentsBrian2007-02-012-2/+7
| |
* | New SWspanarrays attribs[] array.Brian2007-02-0116-171/+140
| | | | | | | | | | | | | | 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.
* | move span-related types/tokens into s_span.hBrian2007-02-012-200/+204
| |
* | additional assertions, bump up MAX_EXECBrian2007-02-011-1/+6
| |
* | noise functionsBrian2007-01-281-0/+45
| |
* | asst fixes, tranpose span->varying array indexesBrian2007-01-251-38/+54
| |
* | fixes, clean-ups, transpose span->varying array indexingBrian2007-01-251-21/+29
| |
* | new comments, ideasBrian2007-01-251-21/+22
| |
* | fix varying interpolationBrian2007-01-241-2/+5
| |
* | only setup varying vars that will be usedBrian2007-01-242-25/+35
| |
* | fix g++ warnings/errorsBrian2007-01-231-4/+3
| |