summaryrefslogtreecommitdiff
path: root/src/gallium
AgeCommit message (Collapse)Author
2008-03-23gallium: Fix memory leak.José Fonseca
pipe cso's were being destroyed, but the hash elements themselves not. proper fix is IMHO add a destructor callback to cso_hash.
2008-03-23gallium: Remove the debug_mask_* stuff.José Fonseca
Overcomplex and not much different from using a global variable...
2008-03-23gallium: Fix typo.José Fonseca
2008-03-23gallium: Memory debugging utilities.José Fonseca
There are no known tools for windows kernel memory debugging, so this is a simple set of malloc etc wrappers. Enabled by default on win32 debug builds
2008-03-23gallium: wrap decls in extern "C"José Fonseca
2008-03-23draw: fix some unsigned vs ushort confusionKeith Whitwell
Middle-end elements are ushort, but prior to that have to treat all elements as unsigned to avoid wrapping and/or overruns.
2008-03-23gallium: beginnings of draw module vertex reworkKeith Whitwell
Trying to put a structure in place that we can actually optimize. Initially just implementing a passthrough mode, this will fairly soon replace all the vertex_cache/prim_queue/shader_queue stuff that's so hard to understand... Split the vertex processing into a couple of distinct stages: - Frontend - Prepares two lists of elements (fetch and draw) to be processed by the next stage. This stage doesn't fetch or draw vertices, but makes the decision which to draw. Multiple implementations of this will implement different strategies, currently just a vcache implementation. - MiddleEnd - Takes the list of fetch elements, fetches them, runs the vertex shader, cliptest, viewport transform on them to produce a linear array of vertex_header vertices. - Passes that list of vertices, plus the draw_elements (which index into that list) onto the backend - Backend - Either the existing primitive/clipping pipeline, or the vbuf_render hardware backend provided by the driver. Currently, the middle-end is the old passthrough code, and it build hardware vertices, not vertex_header vertices as above. It may be that passthrough is a special case in this respect.
2008-03-23nv40: vp reg changes similar to recent fp changesBen Skeggs
2008-03-23nv40: fix fp depth writeBen Skeggs
2008-03-23nv40: remove some badness from fp temp/result allocationBen Skeggs
Should hopefully be OK now (on the fragprog size) for MRT. The hack from a commit 01cb2cd93efe7ad94d7fd36aa5a776c2e3ab4c7d is no longer needed.
2008-03-23nv40: catch fp extra-const cases where both const and immd have same idxBen Skeggs
2008-03-23nv40: fp: fix multiple refs to a single const withing an instructionBen Skeggs
2008-03-23nv40: workaround fp result.data[0] clobberageBen Skeggs
Temporary, the fp reg handling will get reworked at some point in the near future. But before that, there's a few bugs to find.
2008-03-23nv40: add dxtn formats (disabled)Ben Skeggs
2008-03-23Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1Ben Skeggs
2008-03-22gallium: free samplers, textures in destroy()Brian
2008-03-22gallium: remove temporary _screen suffix from function namesBrian
2008-03-22gallium: fix mem leak (fee pstipple stage)Brian
2008-03-22gallium: Remove pedantic asserts.José Fonseca
Move these to a higher level instead.
2008-03-21cell: Generate blend / depth test code when state atom is createdIan Romanick
Code generation should be performed when the device-specific state atom is created, not when it is bound.
2008-03-21cell: Change code-gen for CONST_COLOR blend factorIan Romanick
Previously the constant color blend factor was compiled into the generated code. This meant that the code had to be regenerated each time the constant color was changed. This doesn't fit with the model used in Gallium. As-is, the code could be better. The constant color is loaded for every quad processed, even if it is not used. Also, if a lot of (1-x) blend factors are used, 1.0 will be loaded and reloaded into registers many times.
2008-03-21Tabs to spacesIan Romanick
2008-03-21cell: Remove unnecessary default_blend work-aroundIan Romanick
I suspect that there was some other bug in the blend code-gen that made this work-around necessary.
2008-03-21i915: added to-do note about setting the max_lod register to get proper ↵Brian
min/mag filter selection
2008-03-21gallium: added DXT formats (preliminary, will probably change)Brian Paul
2008-03-21gallium: document is_format_supported()'s type paramBrian Paul
2008-03-21gallium: PIPE_FORMAT_TYPE_ commentsBrian Paul
2008-03-21gallium: added sRGB formatsBrian Paul
2008-03-21gallium: additional comments, fix typos, etcBrian Paul
2008-03-21nv40: fix bug in query codeBen Skeggs
2008-03-21nv40: add 16-bit SSCALED vb formatsBen Skeggs
2008-03-21nv40: ensure vb relocs don't end up on list for swtnlBen Skeggs
Avoids bo code bailing out because of mapped buffers being validated.
2008-03-21nv40: call semi-magic 0x1d88 methodBen Skeggs
2008-03-21nv40: swtnl fallback on unsupported array formatBen Skeggs
2008-03-21nv40: oopsBen Skeggs
2008-03-21nv40: s/free/FREE/Ben Skeggs
2008-03-21nv40: align each level to 64 pixelsBen Skeggs
2008-03-21nv40: use num_cbufsBen Skeggs
2008-03-21nouveau: do a retry if initial buffer alloc failsBen Skeggs
2008-03-21nouveau: use saved fence pointer, not head of unsignalled listBen Skeggs
It's possible for the unsignalled list head to change during fence_flush. Fixes valgrind complaint exposed by a previous commit.
2008-03-21nouveau: potentially delay buffer destructionBen Skeggs
Rather than spinning waiting for the GPU to finish with the buffer, add a callback on the buffer's fence object instead. Gives a sizable performance increase in OA.
2008-03-21nouveau: try combining prev and next resources on freeBen Skeggs
Fixes some cases where we end up with a list of many unused chunks that are too small to be useful.
2008-03-21nv40: use new pipe_framebuffer width/height fieldsBen Skeggs
2008-03-21Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1Ben Skeggs
2008-03-20cell: Fix several bugs in blend code-genIan Romanick
- Alpha factor set to a _COLOR mode was mishandled - Cases when either dst factor or src factor was ZERO were mishandled - MIN and MAX cases were backwards - Case when blend was disabled was mishandled - Incorrect comments about number of instructions generated The tests blendminmax and blendsquare run correctly.
2008-03-20cell: Call the correct function to generate blending codeIan Romanick
Cut-and-paste for the lose. :(
2008-03-20cell: Fix bus error when there is no depth bufferIan Romanick
2008-03-20cell: Use code-gen for alpha blendIan Romanick
So far this is only tested when GL_BLEND is disabled.
2008-03-20gallium: set fb.width/heightBrian
2008-03-20gallium: enable vp input semantic infoBrian