Commit graph

14489 commits

Author SHA1 Message Date
Brian Paul
f763cc3cb5 gallium: don't free shader.tokens in get_passthrough_fs() 2008-05-08 19:32:49 -06:00
Brian Paul
2a39dbe736 gallium: fix out of tex memory crashes 2008-05-08 19:19:52 -06:00
Brian Paul
044d583ba1 gallium: handle null ptrs 2008-05-08 18:38:02 -06:00
Brian Paul
f9e2f26df3 gallium: re-enable call to init_renderbuffer_bits(), remove dead code 2008-05-08 17:45:59 -06:00
Brian Paul
2f07e1caa0 gallium: fix render to depth texture 2008-05-08 17:42:18 -06:00
Brian Paul
a7e8e31eee gallium: replace pipe_buffer_destroy() call with pipe_buffer_reference(NULL) 2008-05-08 17:13:01 -06:00
Brian Paul
f3ecd488dd gallium: remove dead code 2008-05-08 17:11:55 -06:00
Brian Paul
29d9f6b0d2 gallium: no-op st_Bitmap() if width or height is zero 2008-05-08 17:11:05 -06:00
Brian Paul
e93243cb80 gallium: clean-up, minor fix 2008-05-08 16:02:19 -06:00
Brian Paul
6548e9b018 gallium: plug in dummy stage->destroy func 2008-05-08 14:21:10 -06:00
Michel Dänzer
d2ec02f440 Merge branch 'gallium-0.1' into gallium-tex-surfaces 2008-05-08 19:01:34 +01:00
Michel Dänzer
1dfb3d4729 cso_cache: Fix test for currently bound blend state. 2008-05-08 19:00:11 +01:00
José Fonseca
8eab7de888 pipebuffer: Temporarily reimplement validation as growable array.
Jose
2008-05-09 00:37:50 +09:00
Brian Paul
79e57695e1 disable GL_DEPTH_TEST before glDrawPixels in case window has unrequested depth buffer 2008-05-08 08:33:44 -06:00
Michel Dänzer
7ffbfaccfb gallium: Make sure functions have proper prototypes and remove unused variable. 2008-05-08 13:26:23 +01:00
José Fonseca
82dd0225e7 pipebuffer: Preliminary buffer validation.
Use table to store a list of buffers to validate. Unfortunately cso_hash
shrinks/regrows the hash every time, so still has to be addressed.

Multi-thread validation is still WIP.
2008-05-08 15:29:20 +09:00
José Fonseca
665b327a47 gallium: Really free hash entries.
Hook up to the new cso_hash_erase function.
2008-05-08 15:29:20 +09:00
José Fonseca
53996e562f pipebuffer: Don't include standard headers directly. 2008-05-08 15:29:20 +09:00
Brian Paul
a266af9200 mesa: minor fixes in _mesa_free_shader_program_data() and _mesa_link_program()
From master:
Set shProg->NumShaders = 0 after freeing program's list of shaders.
Set _NEW_PROGRAM in _mesa_link_program() to fix a state validation bug.
2008-05-07 20:18:49 -06:00
Brian Paul
1a82d9648b gallium: fix some render to texture bugs
Before, we were sometimes rendering into a stale texture because
st_finalize_texture() would discard the old texture and create a new one.

Moved st_update_framebuffer atom after texture validation so that we
can create a new renderbuffer surface if the texture changes.

Also, split texture validation into two parts: finalize_textures and
update_textures.  Do finalize_textures first to avoid getting into the
situtation where we're doing a pipe->surface_copy() mid-way through
state validation.

Some debug code still in place, but disabled...
2008-05-07 16:44:33 -06:00
Brian Paul
8f76459f62 mesa: document a/s keys 2008-05-07 11:57:46 -06:00
Brian Paul
f34a30bf79 mesa: add texturing to thread test
Run with -t to enable texture mapping.
Press 't' to update the texture image.  When the texture is changed in one
thread it should also get updated in the other threads since textures are
shared by all contexts.
2008-05-07 11:57:46 -06:00
Keith Whitwell
ffe78987dc Merge commit 'origin/gallium-0.1' into gallium-tex-surfaces 2008-05-07 15:57:36 +01:00
Brian Paul
3e1a4c2869 mesa: free shader program data before deleting shader objects.
Picked from master.
Fixes mem corruption seen when glean/api2 test exits.
2008-05-07 08:56:08 -06:00
Brian Paul
a56a59ce74 gallium: implement full reference counting for vertex/fragment programs
Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
Another memory bug involving shaders yet to be fixed...

Picked from gallium-0.1
2008-05-07 08:55:33 -06:00
Brian Paul
deceeca18d mesa: update/add newer GL ES headers 2008-05-07 08:47:55 -06:00
José Fonseca
10b7192747 gallium: Implement util_pack_color for A8, L8, and I8 formats. 2008-05-07 22:01:27 +09:00
José Fonseca
33cda1e5e5 gallium: Fix release build.
pf_sprint_name might be used there too.
2008-05-07 21:37:32 +09:00
Michal Krol
5efd2d59eb gallium: Fix compilation errors. 2008-05-07 14:24:14 +02:00
José Fonseca
55c13f5af7 gallium: Implement pf_sprint_name as a simple static table. 2008-05-07 20:27:42 +09:00
José Fonseca
942b02956e gallium: Use the u_string.h functions. 2008-05-07 19:39:34 +09:00
Michel Dänzer
79931e38ab Revert "gallium: move setup of dest_surface in do_copy_texsubimage()"
This reverts commit f7dbd18371.

Looks like an accidental revert of commit
650c57f193.
2008-05-07 08:46:28 +01:00
José Fonseca
4d1bf8a85e gallium: Output the total of leaked memory. 2008-05-07 16:29:36 +09:00
José Fonseca
c7ad942c54 gallium: Propagate tex_usage flags down to winsys. 2008-05-07 14:17:59 +09:00
José Fonseca
fe06a47361 gallium: New PIPE_TEXTURE_USAGE_PRIMARY flag for primary surfaces. 2008-05-07 14:14:48 +09:00
Brian
05370685fe mesa: free shader program data before deleting shader objects.
Picked from master.
Fixes mem corruption seen when glean/api2 test exits.
2008-05-06 23:08:02 -06:00
Brian
103ae5d16f gallium: implement full reference counting for vertex/fragment programs
Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
Another memory bug involving shaders yet to be fixed...
2008-05-06 22:13:06 -06:00
Brian
10f6ae0355 mesa: comments, whitespace 2008-05-06 19:16:26 -06:00
Brian Paul
6b0fd0f157 gallium: re-enable temporarily disabled code in do_copy_texsubimage() 2008-05-06 15:39:39 -06:00
Brian Paul
296378b6c8 gallium: create drawing surfaces as GPU_READ/WRITE only
Create different temporary surfaces for CPU_READ/WRITE when needed (such as
for glReadPixels, glAccum, some glCopy/DrawPixels, glCopyTexSubImage, etc).
2008-05-06 13:48:27 -06:00
Michal Danzer
973d0c014d gallium: create renderbuffer surface w/out CPU_READ/WRITE flags 2008-05-06 13:48:27 -06:00
Michal Danzer
f7dbd18371 gallium: move setup of dest_surface in do_copy_texsubimage() 2008-05-06 13:48:27 -06:00
José Fonseca
a6ad492774 gallium: Simple facility to dump and view images for debugging. 2008-05-07 04:51:55 +09:00
Brian Paul
66f703dca9 gallium: change calculate_first_last_level() to match gallium-tex-surfaces branch 2008-05-06 08:40:41 -06:00
Brian Paul
809dd9089b gallium: sync up texture/sampler changes with master 2008-05-06 08:37:28 -06:00
Michel Dänzer
d0279fc4b3 gallium: Make sure to release texture surfaces (at the right time). 2008-05-06 12:24:04 +01:00
Michel Dänzer
650c57f193 gallium: glCopyTexSubImage improvement.
Only get a texture surface for attempting an accelerated copy, and mark it for
GPU use only.
2008-05-06 12:23:16 +01:00
Michel Dänzer
4c6c073f99 gallium: Define util_sprintf for non-WIN32. 2008-05-06 09:07:11 +01:00
Keith Whitwell
09e6be9b57 Merge commit 'origin/gallium-0.1' into gallium-tex-surfaces
Conflicts:

	src/mesa/state_tracker/st_atom_sampler.c
	src/mesa/state_tracker/st_cb_texture.c
2008-05-06 07:45:28 +01:00
José Fonseca
6361d6f48d gallium: New pipe_screen interface to overlay a texture on existing memory. 2008-05-06 14:57:18 +09:00