Commit graph

92185 commits

Author SHA1 Message Date
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
Dan Nicholson
e8c2b9967f Refactor installation targets
Currently, there is a single path in src/mesa/Makefile to install that
has a few conditionals in it. This commit changes install to act like
default where we loop over $(DRIVER_DIRS), deciding what to do.

A new target, install-headers, has been broken out to accomodate
installing a standalone OSMesa where neither libGL or gl.pc are wanted.
2008-05-07 07:48:29 -07:00
Brian Paul
deceeca18d mesa: update/add newer GL ES headers 2008-05-07 08:47:55 -06:00
Dan Nicholson
ec813878e4 Ensure recursive makes always propagate errors
There were a couple spots left where a recursive make could fail in a
chain of commands without stopping.
2008-05-07 07:11:49 -07: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
Dave Airlie
3d15280278 r500: cleanup r500 RS setup 2008-05-07 17:48:17 +10:00
Dave Airlie
53a7ccc08b r500: for rectangular textures set to unscaled coordinates. 2008-05-07 17:48:17 +10: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
Corbin Simpson
1da094c9ad r5xx: Fix FP inputs. (For good?)
FP inputs are now counted and mapped correctly, and temps
are allocated tightly and correctly.
2008-05-07 00:06:26 -07:00
Corbin Simpson
49c30ce958 r5xx: Fix false error with DP3/DP4.
DP3/DP4 only takes two arguments, but tried to load three, causing
a false fallback to the dumb shader.
2008-05-06 23:36:50 -07:00
Corbin Simpson
dc24fb51a3 r5xx: Index inputs and temps.
This is not the same as r3xx indexing. It only tries to protect inputs on
the pixel stack from getting clobbered by temps or texs.

Texs don't need special treatment since they read from special input regs
and write to the same temp regs as ALU/FC instructions.
2008-05-06 22:18:28 -07: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
df43fb661b 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.
2008-05-06 23:08:51 -06: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
Keith Packard
c75b2d74d8 Merge commit 'anholt/drm-gem' into drm-gem 2008-05-06 22:07:58 -07:00
Keith Packard
a2ec8570ae [intel-GEM] partial support for memory domains.
Doesn't deal with local modifications yet (need new kernel set_domain ioctl
for that to work). Also, guesses what domains are affected based on the
read/write bits set in the flags. Works for 915, probably not so much for
965.
2008-05-06 22:06:41 -07: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
Corbin Simpson
40db59038c r5xx: FP: Add OPCODE_TXB.
Tex lookup with biased LOD. Should magically work.
2008-05-06 18:14:21 -07:00
Corbin Simpson
20baf128ef r5xx: FP: Make MOV/ABS look pretty.
We can't really do anything like emit_alu, so we're doing emit_mov instead.
2008-05-06 17:21:30 -07:00
Dan Nicholson
38c5b14853 Update make output for autoconf help 2008-05-06 15:46:40 -07:00
Eric Anholt
42d4f89264 GEM: Fix previous commit to avoid asserting when we run into reserved space.
These are the dwords that the reserved space is for.
2008-05-06 15:25:51 -07:00
Brian Paul
6b0fd0f157 gallium: re-enable temporarily disabled code in do_copy_texsubimage() 2008-05-06 15:39:39 -06:00
Dan Nicholson
8eee0146f2 Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2008-05-06 14:29:59 -07:00
Dan Nicholson
9f948b8c33 Prevent makedepend from running multiple times
The default target in src/mesa/Makefile calls a recursive $(MAKE). With
parallel jobs, this causes makedepend to run twice. Instead, block on
the first make until depend has been created.
2008-05-06 14:29:10 -07:00
Dan Nicholson
c5e2b850ad Always cleanup the makedepend backup files
Consistently cleanup the depend.bak files created by makedepend. Also,
realclean has been changed to use a single find command, which speeds it
up considerably.
2008-05-06 14:00:43 -07:00
Eric Anholt
96f52f089f GEM: Don't emit an extra MI_FLUSH in the batch since GEM handles it. 2008-05-06 13:57:08 -07:00
Michal Wajdeczko
7f747204ea Add support for ATI_separate_stencil in display lists. 2008-05-06 13:02:06 -07: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
Corbin Simpson
1562dd2c26 r5xx: Emit an OUT instruction at the end of execution.
This should make TEX/TXP work right. (Note: "Should" is not "does.")
2008-05-06 12:44:53 -07:00
Corbin Simpson
fa465fb2b1 r5xx: We update max_temp_idx now, so no need to hard-code it.
This roughly doubles the speed of glxgears (GINAB) by allowing
more pixels to run concurrently.
2008-05-06 12:42:40 -07:00
Dan Nicholson
cba14d85a8 Error consistently when running recursive make
When changing directories and running a sub-make, ensure that both the
cd and make commands propagate errors to the parent make.
2008-05-06 12:29:53 -07:00
Corbin Simpson
171ba1d0d1 r5xx: Fix typo.
Gotta be more careful with my cut'n'paste, lawl.
2008-05-06 12:18:07 -07:00
Corbin Simpson
06e2e1b87c r5xx: Use max_temp_idx. 2008-05-06 12:03:28 -07:00
Dan Nicholson
50f7e6fb5f Add .PHONY targets to top Makefile for non-file targets
When a make target doesn't result in a file of the same name, adding it
to a .PHONY target means make won't look for such a file, speeding the
build up a bit. This allows `make doxygen' to work since otherwise make
will consider the doxygen directory as up to date.
2008-05-06 11:52:34 -07:00
Dan Nicholson
e14ebbce41 autoconf: Replace the configs/current symlink from config.status
Minor tweak so that running config.status will entirely recreate the
configure settings by replacing the configs/current symlink.
2008-05-06 11:28:43 -07:00
Keith Packard
537bbe6dec [intel-GEM] Add tiling support to swrast.
Accessing tiled surfaces without using the fence registers requires that
software deal with the address swizzling itself.
2008-05-06 10:51:08 -07: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