Ben Skeggs [Tue, 20 Mar 2007 04:59:55 +0000 (15:59 +1100)]
nouveau: fix typo
Ben Skeggs [Tue, 20 Mar 2007 04:52:57 +0000 (15:52 +1100)]
nouveau: fail translate if we use too many params somehow
Ben Skeggs [Tue, 20 Mar 2007 04:05:35 +0000 (15:05 +1100)]
nouveau: NVSDBG macro
Nicolai Haehnle [Mon, 19 Mar 2007 22:32:36 +0000 (23:32 +0100)]
r300: Cleanup fragment program constant allocation, share constants
The constant/parameter allocation was significantly simplified, removing
one unnecessary copy operation of parameters. The dirty state tracking is
unchanged and far from optimal, since all state is always re-fetched.
Constants and parameters are now emitted only once, which significantly
reduces the resource pressure on larger programs.
Nicolai Haehnle [Mon, 19 Mar 2007 21:26:08 +0000 (22:26 +0100)]
r300: Fix special case (tmp.x <= 0) in fragment program LIT instruction
Also, fix a typo in a related comment.
Nicolai Haehnle [Mon, 19 Mar 2007 21:17:16 +0000 (22:17 +0100)]
r300: Clear fragment program instruction slots on first use
Make sure that instruction slots are fully initialized with NOPs during
find_and_prepare_slot(). This fixes a bug when a fragment program was
translated more than once (e.g. due to a second call to glProgramStringARB).
This partially fixes glean/fragProg1.
Nicolai Haehnle [Mon, 19 Mar 2007 19:01:20 +0000 (20:01 +0100)]
r300: Dump fragment program after translation if RADEON_DEBUG=pixel is set
Nicolai Haehnle [Mon, 19 Mar 2007 18:46:25 +0000 (19:46 +0100)]
r300: Whitespace cleanup (remove trailing spaces)
Nicolai Haehnle [Mon, 19 Mar 2007 18:45:45 +0000 (19:45 +0100)]
r300: Fix WRITEMASK handling when writing to result.depth
This is a necessary change to emit the right instructions when writing
to result.depth.
However, even with this test, Z-write doesn't work properly, and I don't
fully understand why. In addition to this, we'll at least have to disable
early-Z, but even that doesn't seem to be enough.
Nicolai Haehnle [Sun, 18 Mar 2007 17:32:32 +0000 (18:32 +0100)]
r300: Streamlined fragment program LIT implementation
Fix a bug in the LIT implementation (clamp exponent to 128, not 0.5)
and change the implementation around. In theory, the new implementation
needs as little as 5 instruction slots. Unfortunately, the dependency
analysis in find_and_replace_slot is not strong enough to look at
individual components of a register yet.
Nicolai Haehnle [Sun, 18 Mar 2007 12:29:18 +0000 (13:29 +0100)]
r300: Fix fragment program reordering
Do not move an instruction that writes to a temp forward past an instruction
that reads the same temporary.
Nicolai Haehnle [Sun, 18 Mar 2007 12:09:21 +0000 (13:09 +0100)]
r300: Fragment program dumps format tex instructions
Nicolai Haehnle [Sun, 18 Mar 2007 11:46:53 +0000 (12:46 +0100)]
r300: Fix hw fragment program dump
Dumps of fragment programs were incorrect when the program consisted of multiple
nodes.
Also, improved the formatting a bit.
Nicolai Haehnle [Sun, 18 Mar 2007 01:15:56 +0000 (02:15 +0100)]
r300: Fix fragment program instruction pairing and register allocation
There were a number of bugs related to the pairing of vector and scalar
operations where swizzles ended up using the wrong source register,
or an instruction was moved forward and ended up overwriting an aliased
register.
The new algorithm for register allocation is quite conservative and may
run out of registers before necessary. On the plus side, It Just Works.
Pairing is done whenever possible, and in more cases than before, so
in practice this change should be a net win.
Michel Dänzer [Mon, 19 Mar 2007 17:34:27 +0000 (18:34 +0100)]
i915tex: The intended triple buffering fix.
Making modifications while the editor spawned by git-commit was suspended
didn't have the intended effect.
Michel Dänzer [Mon, 19 Mar 2007 16:23:44 +0000 (17:23 +0100)]
i915tex: Fix triple buffering after recent Mesa core changes.
Remove superfluous _mesa_resize_framebuffer call which is now harmful because
it causes the third renderbuffer to have width/height 0, so Mesa refuses to
render to it.
In the long term, it would be nice to remove the hack in
intel_alloc_window_storage in favour of a proper Mesa interface for flipping
between more than two colour buffers.
Keith Whitwell [Sun, 18 Mar 2007 20:13:06 +0000 (20:13 +0000)]
fix off-by-one in load_state_immediate
Keith Whitwell [Sun, 18 Mar 2007 20:12:53 +0000 (20:12 +0000)]
fix typo in subrect_disable packet
Keith Whitwell [Sun, 18 Mar 2007 20:12:38 +0000 (20:12 +0000)]
fix typo in subrect_disable packet
Miguel Marte [Sun, 18 Mar 2007 17:08:29 +0000 (11:08 -0600)]
screen offset changes, bug 9965
Nicolai Haehnle [Sun, 18 Mar 2007 17:02:35 +0000 (11:02 -0600)]
fix assertion in read_depth_pixels()
Oliver McFadden [Sun, 18 Mar 2007 16:57:45 +0000 (16:57 +0000)]
r300: Removed the deprecated $XFree86$ CVS keywords.
Oliver McFadden [Sun, 18 Mar 2007 16:44:20 +0000 (16:44 +0000)]
r300: Corrected the string for polygon mode; it wasn't updated from unkXXX.
Ben Skeggs [Sun, 18 Mar 2007 13:08:45 +0000 (00:08 +1100)]
nouveau: avoid using uninitialised TexSrcUnit.
Xiang, Haihao [Sun, 18 Mar 2007 10:44:51 +0000 (18:44 +0800)]
mesa: SWAP_BUFF support when calling DrawPixels(DEPTH_COMPONENT)
or TexImage(DEPTH_COMPONENT)
Xiang, Haihao [Sun, 18 Mar 2007 10:34:21 +0000 (18:34 +0800)]
mesa: enhance fxt1_quantize_ALPHA1
If possible, let minCol != maxCol
Xiang, Haihao [Sun, 18 Mar 2007 10:26:16 +0000 (18:26 +0800)]
i965: fix for FXT1 & S3TC texture format
choose the right mesa texformat for FXT1 & S3TC
Oliver McFadden [Sun, 18 Mar 2007 07:21:21 +0000 (07:21 +0000)]
Use _mesa_copy_instructions rather than memcpy in _mesa_insert_mvp_code.
Haihao Xiang [Sat, 17 Mar 2007 15:42:36 +0000 (09:42 -0600)]
fix some format conversion bugs in glGetTexImage(), bug 10288
Dave Airlie [Sat, 17 Mar 2007 05:46:24 +0000 (16:46 +1100)]
r300: change vendor string to DRI R300 Project
Brian [Fri, 16 Mar 2007 17:00:07 +0000 (11:00 -0600)]
Assorted fixes for dealing with zero-size frame/renderbuffers.
In xmesa_check_and_update_buffer_size() handle xmctx==NULL correctly: still
call _mesa_resize_framebufer(). If we don't we can wind up in a situation
where the framebuffer size is non-zero but an attached renderbuffer size
is still initialized to zero. This inconsistancy can later cause problems.
Check for zero-size renderbuffers in update_color_draw_buffers() and
update_color_read_buffer().
See bug 7205.
Brian [Fri, 16 Mar 2007 15:36:12 +0000 (09:36 -0600)]
Colortable re-org.
The pixel transfer path has three color table lookups.
Use an array [3] to store that info, rather than separate variables.
Brian [Fri, 16 Mar 2007 14:36:22 +0000 (08:36 -0600)]
added a renderbuffer comment
Mathias Hopf [Fri, 16 Mar 2007 14:28:34 +0000 (08:28 -0600)]
added null xmctx check to XMesaResizeBuffers(), bug 7205
Oliver McFadden [Thu, 15 Mar 2007 21:57:31 +0000 (21:57 +0000)]
Fixed a minor typo in the comment near _mesa_copy_instructions.
Oliver McFadden [Thu, 15 Mar 2007 20:55:30 +0000 (20:55 +0000)]
r300: Added _mesa_copy_instructions.
Oliver McFadden [Thu, 15 Mar 2007 20:39:07 +0000 (20:39 +0000)]
r300: Renamed r300_vertexprog.c to r300_vertprog.c
Oliver McFadden [Thu, 15 Mar 2007 19:49:10 +0000 (19:49 +0000)]
r300: Use _mesa_alloc_instructions/_mesa_init_instructions instead of malloc.
Note that insert_wpos in r300_vertexprog.c is still a little flaky and could be
improved.
Oliver McFadden [Thu, 15 Mar 2007 19:09:10 +0000 (19:09 +0000)]
r300: Updated R300 to use the new SWIZZLE macros.
Oliver McFadden [Thu, 15 Mar 2007 18:44:29 +0000 (18:44 +0000)]
r300: Fixed an unused variable warning and removed some cruft, too.
Oliver McFadden [Thu, 15 Mar 2007 18:29:13 +0000 (18:29 +0000)]
r300: Fixed a printf conversion warning.
Oliver McFadden [Thu, 15 Mar 2007 18:26:01 +0000 (18:26 +0000)]
r300: Fixed "no previous prototype for 'r300RefillCurrentDmaRegion'" warning.
Brian [Thu, 15 Mar 2007 17:51:54 +0000 (11:51 -0600)]
added SWIZZLE_XXXX, YYYY, etc. macros
Oliver McFadden [Thu, 15 Mar 2007 17:35:34 +0000 (17:35 +0000)]
Committed Rune Petersen's fragment.position patch (Bug #10024) plus a few small
corrections.
Brian [Thu, 15 Mar 2007 17:16:41 +0000 (11:16 -0600)]
no-op clear if buffer width or height is zero (bug 7205)
Brian [Thu, 15 Mar 2007 17:11:41 +0000 (11:11 -0600)]
add some rb->Data null ptr checks (bug 7205)
Brian [Thu, 15 Mar 2007 15:03:03 +0000 (09:03 -0600)]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Brian [Thu, 15 Mar 2007 15:02:14 +0000 (09:02 -0600)]
implement byteswapping for all multi-byte types in _mesa_pack_rgba_span_float(), bug 10298
Keith Whitwell [Thu, 15 Mar 2007 10:27:47 +0000 (10:27 +0000)]
Fix off by one error in immediate state packet size.
Brian [Wed, 14 Mar 2007 20:56:39 +0000 (14:56 -0600)]
pixelmap code simplification
Brian [Wed, 14 Mar 2007 20:33:46 +0000 (14:33 -0600)]
Re-org of gl_pixel_attrib struct.
Reorder fields according to the order in which the pixel transfer operations
take place. Improve comments.
Move the pixel maps out of gl_pixel_attrib since they're not supposed to be
pushed/popped by glPush/PopAttrib.
New gl_pixelmap and gl_pixelmaps structs to contain the pixelmaps.
Brian [Wed, 14 Mar 2007 18:52:53 +0000 (12:52 -0600)]
clear the b->frontxrb->drawable field in xmesa_free_buffer(), see bug 7205
Brian [Wed, 14 Mar 2007 18:43:26 +0000 (12:43 -0600)]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Brian [Wed, 14 Mar 2007 18:42:30 +0000 (12:42 -0600)]
move CLIENT_ID code in xmesa_delete_framebuffer(), see bug 7205
Roland Scheidegger [Tue, 13 Mar 2007 18:04:28 +0000 (19:04 +0100)]
sync up t_vp_build.c brw_vs_tnl.c a bit
Bring over the optimizations for fog and normalized spot dir
from t_vp_build.c to brw_vs_tnl.c. Likewise, port a fix for point size
calc from brw_vs_tnl.c to t_vp_build.c (use ABS(eyez) instead of -eyez). Leave
the now differing point size calcs alone though, not sure what's better (it's
basically MOV, ABS, MUL, DP3 vs. ABS, MAD, MAD).
Roland Scheidegger [Tue, 13 Mar 2007 16:43:21 +0000 (17:43 +0100)]
enable ARB_vertex_buffer_object for more dri drivers
ARB_vertex_buffer_object looks like a useful extension even for old chips.
The drivers should not need any code to be able to use this extension since
they just use mesa's vbo code anyway.
Newly enabled for i810, mach64, mga, r128, radeon, savage, sis and unichrome.
Oliver McFadden [Tue, 13 Mar 2007 14:46:45 +0000 (14:46 +0000)]
r300: Renamed the CACHE_CTLSTAT values to include UNKNOWN in the name; not
enough information is known about them to be sure as to what the values mean.
Roland Scheidegger [Tue, 13 Mar 2007 12:44:23 +0000 (13:44 +0100)]
use movdqu instead of movdqa for unaligned load avoiding a segfault (bug 10265)
Oliver McFadden [Tue, 13 Mar 2007 06:24:56 +0000 (06:24 +0000)]
Add defines for the values written to R300_RB3D_ZCACHE_CTLSTAT.
Note that just like the values written to R300_RB3D_DSTCACHE_CTLSTAT these
values are really unknown; ideally more reverse engineering should be done to
determine what these values mean and when they should be set.
Oliver McFadden [Tue, 13 Mar 2007 06:08:36 +0000 (06:08 +0000)]
Documented the value written for R300_TX_CNTL cache flush.
Xiang, Haihao [Tue, 13 Mar 2007 05:39:34 +0000 (13:39 +0800)]
mesa: _mesa_unpack_image
1. take packed pixel data as a component
2. fix for GL_BITMAP when compiling glTexImage, etc into
a display list: a. flip byte if lsbFirst is true since
DefaultPacking->lsbFirst is false. b. handle SkipPixels
Oliver McFadden [Tue, 13 Mar 2007 01:31:38 +0000 (01:31 +0000)]
Corrected values written to R300_RB3D_DSTCACHE_CTLSTAT to either
R300_RB3D_DSTCACHE_02 or R300_RB3D_DSTCACHE_0A, rather than hexadecimal values.
Oliver McFadden [Tue, 13 Mar 2007 00:48:17 +0000 (00:48 +0000)]
Guess another unknown register used for R300 pacification.
Michel Dänzer [Mon, 12 Mar 2007 18:08:28 +0000 (19:08 +0100)]
i915tex: Don't crash when intel_fb->color_rb[i] is NULL.
This can be the case on some systems when running glxinfo.
Brian [Mon, 12 Mar 2007 15:49:44 +0000 (09:49 -0600)]
clean-up, simplify _mesa_image_row_stride()
Brian [Mon, 12 Mar 2007 15:35:44 +0000 (09:35 -0600)]
take GL_UNPACK_ALIGNMENT into account in _mesa_image_row_stride() for GL_BITMAP type (bug 10261)
Alan Swanson [Mon, 12 Mar 2007 09:03:01 +0000 (10:03 +0100)]
r200: Simplify r200SetCliprects like radeonSetCliprects in radeon and r300.
Alan Swanson [Mon, 12 Mar 2007 08:59:45 +0000 (09:59 +0100)]
r200: Adapt cliprect fixes from r300.
Alan Swanson [Mon, 12 Mar 2007 08:59:28 +0000 (09:59 +0100)]
radeon: Adapt cliprect fixes from r300.
Xiang, Haihao [Sun, 11 Mar 2007 14:41:26 +0000 (22:41 +0800)]
fix for bug#10196
Compute half if LOCAL_VIEWER is enabled and the light is
a directional source.
Aapo Tahkola [Sun, 11 Mar 2007 09:47:03 +0000 (11:47 +0200)]
Guess another unknown register in R300 command buffer initialization. (Oliver McFadden)
Oliver McFadden [Sun, 11 Mar 2007 01:18:27 +0000 (12:18 +1100)]
Renamed some of the unkXXX variables in the command buffer init
ialization code.
Note that there are still plenty of actual unknown variables left that should
probably be deciphered.
There are a number of things incomplete in the driver; the different polygon
offset modes (line, point, etc), the other texture filter, texture chroma key,
etc. These should probably be fixed in the future, or at least added to the TODO
list.
Brian [Sat, 10 Mar 2007 18:50:50 +0000 (11:50 -0700)]
Fix TEXREL issues.
Patch submitted by Christoph Brill.
See http://www.gentoo.org/proj/en/hardened/pic-fix-guide.xml
Brian [Sat, 10 Mar 2007 18:48:59 +0000 (11:48 -0700)]
check for EXT_blend_equation_separate for 2.0
Michel Dänzer [Sat, 10 Mar 2007 16:12:58 +0000 (17:12 +0100)]
i915tex: Fix build against libdrm git...
Michel Dänzer [Sat, 10 Mar 2007 15:40:22 +0000 (16:40 +0100)]
i915tex: Fix intel_wait_flips being declared implicitly.
Michel Dänzer [Sat, 10 Mar 2007 15:06:38 +0000 (16:06 +0100)]
i915tex: Fix build against released version of libdrm.
Stephane Marchesin [Sat, 10 Mar 2007 12:46:26 +0000 (13:46 +0100)]
nouveau: fix nv04 swtcl.
Stephane Marchesin [Sat, 10 Mar 2007 00:25:51 +0000 (01:25 +0100)]
nouveau: fix the nv04 swtcl code.
Stephane Marchesin [Sat, 10 Mar 2007 00:24:32 +0000 (01:24 +0100)]
nouveau: oops don't debug by default.
Stephane Marchesin [Sat, 10 Mar 2007 00:23:40 +0000 (01:23 +0100)]
nouveau: some fixes to the nv04 state code.
Stephane Marchesin [Sat, 10 Mar 2007 00:23:14 +0000 (01:23 +0100)]
nouveau: add a fifo size debug check.
Michel Dänzer [Fri, 9 Mar 2007 23:19:17 +0000 (00:19 +0100)]
Merge branch 'i915tex-pageflip'
Michel Dänzer [Fri, 9 Mar 2007 19:00:13 +0000 (20:00 +0100)]
i915tex: Wait for pending scheduled flips before switching vsync pipe.
This avoids hangs when the vblank sequence numbers are not in sync between
pipes, in particular when they run at different refresh rates.
Michel Dänzer [Fri, 9 Mar 2007 18:56:55 +0000 (19:56 +0100)]
i915tex: Set intel_fb->vbl_waited to current instead of what we aimed for.
Michel Dänzer [Fri, 9 Mar 2007 16:52:29 +0000 (17:52 +0100)]
i915tex: Sync pages between pipes immediately again.
This should be safe now that we no longer use the MI_WAIT_FOR_EVENT instruction
incorrectly and should also work correctly with applications that render to the
front buffer.
Michel Dänzer [Fri, 9 Mar 2007 16:41:04 +0000 (17:41 +0100)]
i915tex: Do not wait for pending flips on both pipes at the same time.
The MI_WAIT_FOR_EVENT instruction does not support waiting for several events
at once, so this should fix the lockups with page flipping when both pipes are
enabled.
Brian [Fri, 9 Mar 2007 16:08:41 +0000 (09:08 -0700)]
New IMAGE_RED_TO_LUMINANCE flag passed to _mesa_pack_rgba_span_float() to fix glGetTexImage(GL_LUMINANCE) bug #10232.
Michel Dänzer [Fri, 9 Mar 2007 08:43:17 +0000 (09:43 +0100)]
r300: Also update window state when it's already bound but its stamp changed.
And set new cliprects before deriving other state from them. This ensures
cliprects aren't accessed after having been freed.
Thanks to Panagiotis Papadakos for testing various iterations of this.
Xiang, Haihao [Thu, 8 Mar 2007 14:54:14 +0000 (22:54 +0800)]
remove a if-statement
glMaterial changes the current specular exponent or glLight changes
the intensity distribution of the light, but _mesa_update_state doesn't
update the corresponding light table. So they must be updated at this time.
J.Jansen [Thu, 8 Mar 2007 08:53:28 +0000 (09:53 +0100)]
Updates of the OpenVMS makefiles.
-include missing definitions
-add files to compile
-remove files from compile list which are removed from the repositry
-add support for vbo
new file: src/mesa/vbo/descrip.mms
modified: src/mesa/descrip.mms
modified: src/mesa/drivers/osmesa/descrip.mms
modified: src/mesa/drivers/x11/descrip.mms
modified: src/mesa/swrast_setup/descrip.mms
modified: src/mesa/tnl/descrip.mms
Michel Dänzer [Wed, 7 Mar 2007 17:01:39 +0000 (18:01 +0100)]
i915tex: Set framebuffer size to match window before calling _mesa_make_current.
Fixes issues with apps that don't call glViewport by default.
Michel Dänzer [Wed, 7 Mar 2007 16:52:44 +0000 (17:52 +0100)]
i945_miptree_layout: Adapt cubemap fixes from i915_miptree_layout.
Cubemaps aren't working fully correctly yet, but at least they don't seem to
cause crashes anymore.
Brian [Tue, 6 Mar 2007 23:33:00 +0000 (16:33 -0700)]
destroy window during cleanup
Brian [Tue, 6 Mar 2007 23:27:23 +0000 (16:27 -0700)]
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa
Brian [Tue, 6 Mar 2007 23:26:22 +0000 (16:26 -0700)]
explicit calls to _mesa_unreference_framebuffer() not always needed now
Brian [Tue, 6 Mar 2007 23:26:02 +0000 (16:26 -0700)]
unreference old framebuffer, if needed, in _mesa_reference_framebuffer()
Brian [Tue, 6 Mar 2007 23:25:07 +0000 (16:25 -0700)]
fix renderbuffer mem leak
Brian [Tue, 6 Mar 2007 23:24:48 +0000 (16:24 -0700)]
formatting fix
Ian Romanick [Tue, 6 Mar 2007 19:50:33 +0000 (11:50 -0800)]
Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa