Commit graph

12227 commits

Author SHA1 Message Date
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
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
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
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
Alan Hourihane
f77442fbd3 fix _mesa_ffs for alternative compilers 2008-05-05 23:09:38 +01:00
Alan Hourihane
736374c105 declare atoms as extern 2008-05-05 23:08:59 +01:00
José Fonseca
131a1fbc91 util: Alternative implementation for standard c library string functions. 2008-05-05 23:58:37 +09:00
Brian Paul
ffde4e03cf gallium: fix some BaseLevel, lastLevel bugs 2008-05-03 17:01:20 -06:00
Brian Paul
736f535b4f gallium: fix warnings 2008-05-03 09:26:25 -06:00
Brian Paul
3837d401cc gallium: fix sampler->max_lod computation 2008-05-03 09:07:11 -06:00
Brian Paul
3668d20a9f gallium: fix computation of sampler->min_lod
The texture BaseLevel is accounted for in texture layout so it doesn't factor
in here.  May also need to adjust max_lod...
2008-05-03 08:58:44 -06:00
Keith Whitwell
8e6a380798 gallium: add pipe surface layout value (Roland Scheidegger) 2008-05-03 15:41:05 +01:00
Brian Paul
6e004e973b gallium: remove 0.5 vertex biases in set_vertex_data()
These should not be needed and were causing garbage to appear along the
edges of the mipmap images.
2008-05-02 14:00:35 -06:00
Brian Paul
07aaf3a7a7 gallium: remove obsolete PIPE_CAP_BITMAP_TEXCOORD_BIAS 2008-05-02 14:00:08 -06:00
Brian Paul
99df379b2c gallium: set template.target = PIPE_TEXTURE_2D 2008-05-02 11:14:08 -06:00
Keith Whitwell
b2021e7c06 gallium: identify depth-stencil textures
And don't use the display-target path to allocate them.
2008-05-02 17:56:01 +01:00