summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/cso_cache
AgeCommit message (Collapse)Author
2008-09-18gallium: fix surface object memory leak in cso moduleBrian Paul
2008-09-17gallium: fix lack of surface reference counting in ↵Brian Paul
cso_set/save/restore_framebuffer() Fixes asst problems with FBO / render to texture.
2008-08-24gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.hBrian Paul
Also, rename p_tile.[ch] to u_tile.[ch]
2008-07-28Merge tgsi/exec and tgsi/util directories.José Fonseca
2008-05-25cso: use memcpy rather than structure asignment for copyingKeith Whitwell
Apparently gcc will omit to copy hidden padding bytes under some circumstances, which means later on memcmp() will indicate a difference between structs even though all the visible members are identical.
2008-05-08Merge branch 'gallium-0.1' into gallium-tex-surfacesMichel Dänzer
2008-05-08cso_cache: Fix test for currently bound blend state.Michel Dänzer
2008-05-02cso: can memcmp-compare pipe_framebuffer_state now it includes fb dimensionsKeith Whitwell
2008-04-30try to fix the deleting of the bound cso during cleanup of the hashZack Rusin
2008-04-24gallium: make cso_release_all() publicBrian Paul
2008-04-24gallium: minor clean-ups, commentsBrian Paul
2008-04-24gallium: tweak the new shader delete funcsBrian Paul
2008-04-24gallium: added cso_delete_vertex_fragment_shader() functionsBrian Paul
The state tracker now uses these functions to free shaders, rather than the pipe->delete_vs/fs-state() functions. Before, we could get in a situation where we free() a shader and happen to alloc() a new one at the same address. The cso_set_vertex/fragment_shader() function would no-op the state change since the pointers were the same. This led to problems elsewhere, of course. The new delete functions null-out the CSO's current shader pointers.
2008-04-23Create a sharable translate_cache and use it.Zack Rusin
2008-04-23fix the simple hash finding function and use itZack Rusin
2008-04-24gallium: Fix texture refcount leak.José Fonseca
2008-04-22In case the 'func' is deleting the state move the iterator beforeZack Rusin
calling it.
2008-04-22gallium: remove assertionsBrian Paul
It's possible the current vs/fs is null when cso_save_vertex/fragment_shader() is called.
2008-04-22cso: fix vs/fs confusionKeith Whitwell
2008-04-22cso: Fix build on Win32.Michal Krol
2008-04-21make the api consistent (all set functions return pipe_error status)Zack Rusin
2008-04-21handle some of the possible allocation failures within the hash itselfZack Rusin
2008-04-21initial stab at error handling in csoZack Rusin
2008-04-21cso: disable not-really-working cso_set_*_shader() funcsKeith Whitwell
2008-04-21cso: provide functions to bind fs/vs handles directlyKeith Whitwell
2008-04-21cso: propogate one easy error - many moreKeith Whitwell
2008-04-22gallium: Hash the fragment shader tokens, instead of pipe_shader_state.José Fonseca
PS: pipe_shader_state should probably go away now that it is reduced to a single pointer.
2008-04-21gallium: Do not mistake pipe state objects for state tracker state objects.José Fonseca
2008-04-20gallium: Refcount textures.José Fonseca
Pipe driver does refcount textures. If cso_context does not, dangling pointers appear.
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-20gallium: temporarily disable the memcmp() in cso_set_framebuffer()Brian
The memcmp() fails to detect buffer size changes...
2008-03-19gallium: fix bug in cso_single_sampler_done() in computation of nr_samplersBrian Paul
Need to find highest used sampler so search from end toward beginning.
2008-03-19gallium: implement CSO save/restore functions for use by meta operations ↵Brian
(blit, gen-mipmaps, quad-clear, etc) Also, additional cso_set_*() functions for viewport, framebuffer, blend color, etc. state.
2008-03-18gallium: added cso_unset_*() functionsBrian
If we go behind the CSO context's back and set pipe state directly we need to invalidate the CSO's 'current' pointers. This will be revisited...
2008-03-13add a way of removing an exact iterator from the hashZack Rusin
2008-03-13gallium: remove a debug printfBrian Paul
2008-03-13gallium: Add a bit of documentation to cso_hash.José Fonseca
2008-03-12document hash collision resolutionsZack Rusin
2008-03-11gallium: fix some cso_state_callback cast warningsBrian
2008-03-11gallium: fix fs/vs typo in cso_set_vertex_shader()Brian
2008-03-10fix double deletionZack Rusin
plus, if the current hash is bigger than max size make sure we delete enough from it
2008-03-09gallium: avoid deleting currently-bound CSO's on cache destructionKeith Whitwell
2008-03-09cso: fix line endingsKeith Whitwell
2008-03-09cso: Use MALLOCKeith Whitwell
2008-03-09cso: add a higher-level interface which does all pipe interactions to set a ↵Keith Whitwell
given state
2008-02-27gallium: Use stricter types.José Fonseca
VC++ won't silently convert a pointer to a function with typed pointer arguments to one with void pointer arguments.
2008-02-26gallium: Fix build on Windows.Michal Krol
2008-02-26implement cache limits for csoZack Rusin
by default set to 4096, which might be on the large side
2008-02-26add an explicit callback decleration and use it to silence warningsZack Rusin
2008-02-26hide cso cache definition and add some initial code for size limitingZack Rusin
the caches