summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_context.h
AgeCommit message (Collapse)Author
2010-07-16r300g: rebuild winsys and command submission to support multiple contextsMarek Olšák
2010-07-12r300g: implement fast color clearMarek Olšák
An initial implementation made by Dave Airlie. For it to be used, a color-only clear must be invoked and exactly one point-sampled render target must be set. The render target must be macrotiled (for us to overcome alignment issues) and bpp must be either 16 or 32. I can't see a difference in performance. :( Conflicts: src/gallium/drivers/r300/r300_blit.c
2010-07-08r300g: add a function for marking framebuffer atoms as dirtyMarek Olšák
2010-07-08r300g: minor fixupsMarek Olšák
2010-06-30r300g: add workaround for multiple contextsMarek Olšák
2010-06-30r300g: move one flush from winsys to the contextMarek Olšák
This flush happens when changing the tiling flags, and it should really be done in the context. I hope this fixes FDO bug #28630.
2010-06-27r300g: separate the hyperz state and pipelined FB regs out of the FB stateMarek Olšák
2010-06-27r300g: turn rasterizer state into a command bufferMarek Olšák
2010-06-27r300g: move emission of the MSPOS regs into the framebuffer stateMarek Olšák
Now the question is whether we are allowed to ignore gl_rasterization_rules and pipe_rasterizer_state::multisample. The former is invariant anyway and I think the latter would need re-emitting the AA state which is quite costly, considering that it implicitly flushes the whole pipeline (all AA regs in the AA state are *unpipelined*).
2010-06-27r300g: turn invariant state into a command bufferMarek Olšák
2010-06-26r300g: introduce VAP invariant stateMarek Olšák
Unlike other invariant states, this one must be emitted after VAP flush.
2010-06-24r300g: move AA registers into the new AA stateMarek Olšák
2010-06-24r300g: separate the cache flush from the framebuffer stateMarek Olšák
2010-06-22r300g: optimize the immediate mode emission path a bitMarek Olšák
2010-06-21r300g: fix the KIL opcode for r3xx-r4xx (v4)Marek Olšák
2010-06-20r300g: manually assign texture cache regionsMarek Olšák
This should fix corrupted texturing on r3xx-r4xx.
2010-06-19r300g: improve the ZTOP conditionMarek Olšák
The real difference here is that ZTOP is now enabled if all stencil ops are set to KEEP. This improves performance.
2010-06-16r300g: Old MSAA code from before gallium-msaa.Corbin Simpson
2010-06-14r300g: rewrite occlusion queriesMarek Olšák
The previous implementation had issues with queries spanning over several command streams as well as using a very large number of queries. This fixes flickering in Enemy Territory: Quake Wars. The driver now renders everything correctly in this game and the graphics is awesome.
2010-06-14r300g: subclass pipe_surfaceMarek Olšák
2010-06-13r300g: optimize emission of fragment shader constantsMarek Olšák
2010-06-13r300g: turn depth stencil state into a CBMarek Olšák
2010-06-13r300g: turn clip state into a CBMarek Olšák
2010-06-13r300g: turn blend color into a CBMarek Olšák
2010-06-13r300g: turn blend state into a CBMarek Olšák
2010-06-13r300g: remove r300_state.hMarek Olšák
2010-06-13r300g: move two-sided stencilref fallback to its own fileMarek Olšák
2010-06-13r300g: move index buffer translate functions to their new homeMarek Olšák
2010-06-13r300g: add fallback for unaligned/unsupported vertex stride/offset/formatMarek Olšák
There is a problem though, the translate module cannot emit half float vertices.
2010-06-08r300g: skip rendering for unsupported vertex formats instead of abortingMarek Olšák
The next step is to replace skipping by an actual fallback.
2010-06-02r300g: store the GEM domain in buffer and texture structsMarek Olšák
2010-05-27r300g: decouple drawing code and two-sided stencil refvalue fallbackMarek Olšák
It's now more separate from the rest of the driver and it can be disabled by commenting out just 1 line. Well, I couldn't make the previous version work with SW TCL reliably, that's the reason of this little rework.
2010-05-26r300g: add get_cs_info winsys entrypoint, abandon check_csMarek Olšák
2010-05-26r300g: more efficient finish + fix commentsMarek Olšák
2010-05-26r300g: implement fake but compliant fencesMarek Olšák
2010-05-25r300g: add r300_init_render_functions, remove r300_render.hMarek Olšák
2010-05-25r300g: remove r300_query.hMarek Olšák
2010-05-25r300g: remove r300_flush.hMarek Olšák
2010-05-25r300g: add r300_init_blit_functions, remove r300_blit.hMarek Olšák
2010-05-23r300g: fix warningsMarek Olšák
2010-05-16r300g/swtcl: fix point sprite texgen (do it in HW)Marek Olšák
2010-05-15r300g: remove unused struct r300_vertex_infoMarek Olšák
2010-05-15r300g: fix emission of some non-CSO atoms at the beginning of CSMarek Olšák
2010-05-15r300g: remove unused r300_query::activeMarek Olšák
2010-05-12r300g: Correct viewport setup for SW TCL.Corbin Simpson
glxgears now renders in the right place on-screen, although it is still rather...psychedelic.
2010-05-08r300g: follow pipe_rasterizer_state::light_twosideMarek Olšák
2010-05-08r300g: move GA_POINT_MINMAX back to rs_stateMarek Olšák
This basically reverts commit 74f94e8fdfe035fa68acdc19e6b0afc2957a4264.
2010-05-08r300g: pass depth texture swizzle to the compiler if compare mode is enabledMarek Olšák
2010-05-08r300g: consolidate common render code into one functionMarek Olšák
This reduces redundant code by moving: - CS space reservation - buffer validation - dirty state emission - index bias emission - AOS emission into r300_prepare_for_rendering.
2010-05-02r300g: merge VS output mapping state (VAP) to rasterizer block state (RS)Marek Olšák
These two should be tied together because what's set in VAP or stuffed in GA should be rasterized in RS. Not doing so causes a hardlock. The reason for the merge is that if stuffed texture coordinates (e.g. point sprite texgen) happen to occupy the texcoord slot dedicated to fog or wpos, the two must be relocated to other free slots, which needs remapping the vertex shader outputs. The rasterizer code is now literally a sequence read-rasterize-write.