Mesa (gallium-mesa-7.4): 75 new commits
Alan Hourihane
alanh at kemper.freedesktop.org
Fri Mar 20 10:50:03 UTC 2009
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7e0dbe0cf291096908f624173ac85edbed39cc88
Merge: 5e9781ddfeb6668fddbeeef28ad7d292a43493e5 7122490982f2d22cb276b1c4e393712fa73f004f
Author: Alan Hourihane <alanh at vmware.com>
Date: Fri Mar 20 10:49:46 2009 +0000
Merge commit 'origin/mesa_7_4_branch' into gallium-mesa-7.4
Conflicts:
src/mesa/main/imports.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7122490982f2d22cb276b1c4e393712fa73f004f
Author: Brian Paul <brianp at vmware.com>
Date: Mon Feb 9 13:58:32 2009 -0700
mesa: avoid setting texObj->_Complete = GL_FALSE when there's no state change
Avoid a little bit of unneeded state validation and fixes a bug where the
texture complete flags was set to false, but we didn't signal _NEW_TEXTURE.
Fixes piglit tex1d-2dborder failure.
(cherry picked from commit aad3f546a046fe40b771e5d5f965b29189821d51)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6ada1d47d9f9ba14f564329af777298eeaa160a1
Author: Brian Paul <brianp at vmware.com>
Date: Mon Feb 9 13:50:36 2009 -0700
mesa: add no-change testing for a few more texture parameters
(cherry picked from commit 37c768b36aad22ecad48c7caab272354383e26a7)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=55865335f425ea423fd6e03bb5bd06cfa4ad286a
Author: Robert Ellison <papillo at vmware.com>
Date: Thu Mar 12 11:46:31 2009 -0600
i965: fix polygon stipple when rendering to FBO
The polygon stipple pattern, like the viewport and the
polygon face orientation, must be inverted on the i965
when rendering to a FBO (which itself has an inverted pixel
coordinate system compared to raw Mesa).
In addition, the polygon stipple offset, which orients
the stipple to the window system, disappears when rendering
to an FBO (because the window system offset doesn't apply,
and there's no associated FBO offset).
With these fixes, the conform triangle and polygon stipple
tests pass when rendering to texture.
(cherry picked from commit 29309b45b011b4c44721b8f7346272fb22a4d4c2)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=918e5221efa4d4d0cd60c6446dc0df2b84e44851
Author: Robert Ellison <papillo at vmware.com>
Date: Wed Mar 11 16:27:38 2009 -0600
i965: fix polygon face orientation when rendering to FBO
In the i965, the FBO coordinate system is inverted from the standard
OpenGL/Mesa coordinate system; that means that the viewport and the
polygon face orientation have to be inverted if rendering to a FBO.
The viewport was already being handled correctly; but polygon face
was not. This caused a conform failure when rendering to texture with
two-sided lighting enabled.
This fixes the problem in the i965 driver, and adds to the comment about
the gl_framebuffer "Name" field so that this isn't a surprise to other
driver writers.
(cherry picked from commit 6dceeb2eb804d708639d68a13a924d65f366458a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9feb26584a40135f4eaa59e1db9149298f63a869
Author: Brian Paul <brianp at vmware.com>
Date: Tue Mar 17 10:34:45 2009 -0600
swrast: use better _swrast_compute_lambda() function
The MAX-based function can produce values that are non-monotonic for a span
which causes glitches in texture filtering. The sqrt-based one avoids that.
This is perhaps slightly slower than before, but the difference
probably isn't noticable given we're doing software mipmap filtering.
Issue reported by Nir Radian <nirr at horizonsemi.com>
(cherry picked from master, commit c334ce273e946733928339b1c7f9a02ccdef1b4b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a8528a2e8653b5237c1d1d66fe98c6e031d007f9
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Mon Mar 16 13:39:32 2009 -0700
Mark current bits as 2009Q1-RC1 for Intel driver.
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=119360cccdd49475eed67dde6344bf9f9904bc1b
Author: Brian Paul <brianp at vmware.com>
Date: Thu Mar 5 15:08:36 2009 -0700
i965: init dest reg CondMask = COND_TR (the proper default)
Plus fix up a debug printf.
(cherry picked from commit 20f49252e1fe2e72bb620c26292f33d5315452a1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ac2216542d4887641b47bb3bd05470b94576cd07
Author: Brian Paul <brianp at vmware.com>
Date: Fri Feb 20 11:42:28 2009 -0700
glsl: fix vec4_texp_rect IR code (need projective version) (cherry picked from commit ad2cfa41992d0676881440596c43ab6021c1b025)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=37e5c057f18ec1796e995c7f7616cb68e289694e
Author: Brian Paul <brianp at vmware.com>
Date: Fri Mar 6 16:00:25 2009 -0700
i965: check if we run out of GRF/temp registers
Before this change we would up emitting instructions with invalid register
numbers. This typically (but not always) hung the GPU. For now, just
prevent emitting bad instructions to avoid hangs. Still need to do some
kind of proper error recovery.
(cherry picked from commit e60b3067d81319236d63ad497e70658fd2e14eb3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d9b8e0f938911d6ce8492959b5483467dce83b0
Author: Brian Paul <brianp at vmware.com>
Date: Thu Jan 22 10:32:08 2009 -0700
mesa: added _mesa_fprintf() wrapper (cherry picked from commit 596b8fbbbf65cef227ce60216a57d4bbfd627099)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c1b71f46b5a79257cab2731ee9fbfd70ca1d4205
Author: Brian Paul <brianp at vmware.com>
Date: Thu Mar 5 17:23:42 2009 -0700
i965: fix emit_math1() function used for scalar instructions
Instructions such as RCP, RSQ, LOG must smear the result of the function
across the dest register's X, Y, Z and W channels (subject to write masking).
Before this change, only the X component was getting written.
Among other things, this fixes cube map texture sampling in GLSL shaders
(since cube lookups involve normalizing the texcoord).
(cherry picked from commit 348580197802406fc36219dc3f1ab90fbb8f4717)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a25ac95646024d216966861b9ac17e1f37fb869
Author: Brian Paul <brianp at vmware.com>
Date: Fri Feb 13 17:17:52 2009 -0700
i965: rewrite the code for handling shader subroutine calls
Previously, the prog_instruction::Data field was used to map original Mesa
instructions to brw instructions in order to resolve subroutine calls. This
was a rather tangled mess. Plus it's an obstacle to implementing dynamic
allocation/growing of the instruction buffer (it's still a fixed size).
Mesa's GLSL compiler emits a label for each subroutine and CAL instruction.
Now we use those labels to patch the subroutine calls after code generation
has been done. We just keep a list of all CAL instructions that needs patching
and a list of all subroutine labels. It's a simple matter to resolve them.
This also consolidates some redundant post-emit code between brw_vs_emit.c and
brw_wm_glsl.c and removes some loops that cleared the prog_instruction::Data
fields at the end.
Plus, a bunch of new comments.
(cherry picked from commit c51c822ee02cb47ddba46da668577d51b7c02831)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=35d965b39bc4d1a5e38cf2745f206b94a9745163
Author: Eric Anholt <eric at anholt.net>
Date: Thu Mar 5 23:32:00 2009 -0800
intel: Fix bpp setting of blits to 8bpp targets.
This was causing hangs in cairogears, as we would blit to the 8bpp target
(A8 texture) as 16bpp, and stomp over state objects.
(cherry picked from commit 19e134051c1025bbfe3838108492d705ab2b5b8b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d0aab0060917209e1a06d7cd9b0b03a6ac63f3c5
Author: Robert Ellison <papillo at vmware.com>
Date: Wed Mar 4 16:48:51 2009 -0700
i965: add software fallback for conformant 3D textures and GL_CLAMP
The i965 hardware cannot do GL_CLAMP behavior on textures; an earlier
commit forced a software fallback if strict conformance was required
(i.e. the INTEL_STRICT_CONFORMANCE environment variable was set) and
2D textures were used, but it was somewhat flawed - it could trigger
the software fallback even if 2D textures weren't enabled, as long
as one texture unit was enabled.
This fixes that, and adds software fallback for GL_CLAMP behavior with
1D and 3D textures.
It also adds support for a particular setting of the INTEL_STRICT_CONFORMANCE
environment variable, which forces software fallbacks to be taken *all*
the time. This is helpful with debugging. The value is:
export INTEL_STRICT_CONFORMANCE=2
(cherry picked from commit 34683150878e0af0859c94d0c1f0c4bf8395b042)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ef33d0f103ff3d4b8412c50f6adbe05194623510
Author: Brian Paul <brianp at vmware.com>
Date: Mon Mar 2 12:27:16 2009 -0700
mesa: don't draw arrays if vertex position array is not enabled
For regular GL, we must have vertex positions in order to draw. But ES2
doesn't have that requirement (positions can be computed from any array
of data).
See bug 19911.
(cherry picked from commit 97dd2ddbd97ba95e8bc8ab572ec05e8081556e1e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=349b81976847019682f04d66df98df4eaeb2ba52
Author: Robert Ellison <papillo at vmware.com>
Date: Fri Feb 27 00:21:07 2009 -0700
i965: texture fixes: bordered textures, fallback rendering
i965 doesn't natively support GL_CLAMP; it treats it like
GL_CLAMP_TO_EDGE, which fails conformance tests.
This fix adds a clause to the check_fallbacks() test to check
whether GL_CLAMP is in use on any enabled 2D texture. If so,
and if strict conformance is required (via INTEL_STRICT_CONFORMANCE),
a software fallback is mandated.
In addition, validate textures *before* checking for fallbacks,
rather than after; otherwise, the texture state is never validated
and can't be trusted. (In particular, if texturing is enabled and
the sampler would access any level beyond level 0 of a texture, the
sampler will segfault, because texture validation sets the firstLevel
and lastLevel fields of a texture object so that the valid levels
will be mapped and accessed correctly. If texture validation doesn't
occur, only level 0 is accessed correctly, and that only because
firstLevel and lastLevel happen to be set to 0.)
(cherry picked from commit 17c7852bf93c4d4edf0c2cf0bdc553d399e2f51a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=50443db882af1f5fd18e99982c3571d2268150b7
Author: Dave Airlie <airlied at linux.ie>
Date: Sun Feb 22 10:37:54 2009 +1000
texmem: fix typo from brianp's changes.
Reported by cjb via tinderbox on irc
(cherry picked from commit 487a55af7864a3b16531af5481aab7f585622e4a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c503cacb531a57df3ad1dd372334e920e327e1ed
Author: Brian Paul <brianp at vmware.com>
Date: Sat Feb 21 14:53:25 2009 -0700
mesa: use an array for current texture objects
Use loops to consolidate lots of texture object code.
(cherry picked from commit 9818734e0148510967ca9ee0d1aa8b196b509f02)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e862b4e38f937004d2cfaede167235522a2ec92b
Author: Brian Paul <brianp at vmware.com>
Date: Sat Feb 21 13:59:29 2009 -0700
mesa: use an array for default texture objects
Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX].
The same should be done with the Current1D/2D/3D/etc pointers...
(cherry picked from commit 4d24b639d160fe485a3e8f7395e7654538be29e0)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9dfc858fb3d2e18f4d2e05d1dbf59158d67e55e
Author: Robert Ellison <papillo at i965-laptop.(none)>
Date: Wed Feb 11 18:01:34 2009 -0700
Fix an i965 assertion failure on glClear()
While running conform with render-to-texture:
conform -d 33 -v 2 -t -direct
the i965 driver failed this assertion:
intel_clear.c:77: intel_clear_tris: Assertion `(mask & ~((1 << BUFFER_BACK_LEFT) | (1 << BUFFER_FRONT_LEFT) | (1 << BUFFER_DEPTH) | (1 << BUFFER_STENCIL))) == 0' failed.
The problem is that intel_clear_tris() is called by intelClear() to
clear any and all of the available color buffers, but intel_clear_tris()
actually only handles the back left and front left color buffers; so
the assertion fails as soon as you try to clear a non-standard color
buffer.
The fix is to have intelClear() only call intel_clear_tris() with
buffers that intel_clear_tris() can support. intelClear() already backs
down to _swrast_Clear() for all buffers that aren't handled explicitly.
(cherry picked from commit 0ccbc3c905f0594a35d72887a1f115e148aaa596)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5efbca1e21bd4e1c281c2dd8cdeafcf42eea7b18
Author: Brian Paul <brianp at vmware.com>
Date: Fri Feb 20 10:47:28 2009 -0700
intel: fix datatype typo, s/GLboolean/GLuint/
Fixes mysterious failures in glean glsl1 test.
(cherry picked from commit da2b661ee45a2754bab06359477428ef7df570ca)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6d8663a88aa6b9820fa977cf2efd75e1f433f5f
Author: Kristian Høgsberg <krh at redhat.com>
Date: Fri Feb 13 11:05:54 2009 -0500
intel: Fix intelSetTexBuffer miptree leak.
The intelImage also holds a reference to the miptree, so unref that as well.
(cherry picked from commit 5b354d39d466e3a463c6766fe06f737aa6e6b7bd)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=13990bd98a97e4f0898a9b3cab2d445c1c456fc7
Author: Eric Anholt <eric at anholt.net>
Date: Wed Feb 18 11:34:47 2009 -0800
intel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.
This lets us avoid allocing new buffers for renderbuffers, finalized miptrees,
and PBO-uploaded textures when there's an unreferenced but still active one
cached, while also avoiding CPU waits for batchbuffers and CPU-uploaded
textures. The size of BOs allocated for a desktop running current GL
cairogears on i915 is cut in half with this.
Note that this means we require libdrm 2.4.5.
(cherry picked from commit 40dd024be618d805b3744e15d25e115018641324)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=def630d0a21c66da788a06f8b764a88b340d4c76
Author: Eric Anholt <eric at anholt.net>
Date: Thu Feb 19 13:53:46 2009 -0800
i965: Fix render target read domains.
We were asking for something illegal (write_domain != 0 && read_domains !=
write_domain) because at the time of writing the region surfaces were used
for texturing occasionally as well, and we weren't really clear on the model
GEM was going to use.
This reliably triggered a kernel bug with domain handling, resulting in
oglconform mustpass.c failure. Of course, it only became visible after
01bc4d441fd6821ad9fc20d5e9544e4e587e4ff0 cleaned up some gratuitous flushing.
(cherry picked from commit 078e8a61b2aa547c6794f586a5c8bfaa575bb066)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca2564f1e688e63884c614284b4ca9f14298448b
Author: Eric Anholt <eric at anholt.net>
Date: Mon Feb 9 15:55:15 2009 -0800
intel: Don't do the extra MI_FLUSH in flushing except when doing glFlush().
Everything other than "make sure the last rendering ends up visible on the
screen" doesn't need that behavior.
(cherry picked from commit 01bc4d441fd6821ad9fc20d5e9544e4e587e4ff0)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=711a57f7c70447f54caf035089be204f9ce083a8
Author: Eric Anholt <eric at anholt.net>
Date: Sun Feb 8 15:39:51 2009 +0100
intel: don't crash when dri2 tells us about buffers we don't care about. (cherry picked from commit f82f1ffba9f2e5971a6a3f3927ae3b22b798bab2)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=058cf2fff1a987ab147ff5f092966c3ce55601b1
Author: Eric Anholt <eric at anholt.net>
Date: Sun Feb 8 15:22:34 2009 +0100
dri2: Initialize variables for the getbuffers round-trip reduction.
Missed setting the initial values which usually didn't hurt at runtime.
(cherry picked from commit 680c708deeb4d18474cf7ba86c587dede51d3633)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=715f509c5de8fcc7d24f0ccad052becfef19ed46
Author: Eric Anholt <eric at anholt.net>
Date: Tue Feb 17 10:53:37 2009 -0800
intel: Fix tri clear to do FBO color attachments as well.
This is a 2% win in fbo_firecube, and would avoid a sw fallback for
masked clears.
(cherry picked from commit fd51cf1531f1630ee1cb154b3b7fefad9ed820f1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e704e6c6f3d111a8600ae71f94cb3e6e352322aa
Author: Eric Anholt <eric at anholt.net>
Date: Tue Feb 17 10:53:11 2009 -0800
i965: Fix fallback on stencil drawing to fbo when the visual lacks stencil.
Noticed this with the fbotexture demo.
(cherry picked from commit c06f4e2a371a917cfcce47e7ee4aa8f1f6528e3b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=01f34e667ac36b4f2e20d4b746e711afe2c6c294
Author: Brian Paul <brianp at vmware.com>
Date: Mon Feb 9 12:12:09 2009 -0700
i965: need to disable current shader, if any, in intel_clear_tris()
Fixes bad background in all the progs/glsl/ tests.
(cherry picked from commit 60b3fe6c19eb881f6193ba46450c0c9f559a10e5)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d0a7b33c592bd68cd8563c3b58e007c413d926a
Author: Eric Anholt <eric at anholt.net>
Date: Mon Feb 9 14:55:31 2009 +0100
intel: Speed up glDrawPixels(GL_ALPHA) by using an alpha texture format. (cherry picked from commit 0b63f6449e095fa3b5ef510e1c1eadc2e0e0ea36)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fb1d2ed34c4043bfb24f682bc119e469abe82841
Author: Eric Anholt <eric at anholt.net>
Date: Mon Feb 9 15:25:30 2009 +0100
intel: Fix some state leakage of {Client,}ActiveTexture in metaops.
Found while debugging cairo-gl.
(cherry picked from commit d11981e0d722282894b5012d37b2960ee3fbfac2)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9395fedf984ab982c40bce82a65b97e3b8f982fe
Author: Eric Anholt <eric at anholt.net>
Date: Fri Jan 30 14:32:23 2009 -0800
i965: Remove brw->attribs now that we can just always look in the GLcontext. (cherry picked from commit 052c1d66a1ab1f2665870dc77dab28d20416cdf1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9abc0d80afa02bfff591d93c952a6146c0ab956e
Author: Eric Anholt <eric at anholt.net>
Date: Fri Jan 30 14:18:03 2009 -0800
i965: Delete old metaops code now that there are no remaining consumers. (cherry picked from commit 14321fcfde9e30d0b9f15aab3c9a057271ae6295)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=90e89c01dfe2c6548299092f4fe16b54db2bde2a
Author: Brian Paul <brianp at vmware.com>
Date: Fri Jan 23 17:37:21 2009 -0700
i965: init array->Format fields (see bug 19708) (cherry picked from commit 628b52241b13132e2d4065b653befdf81236e651)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=790d93e362367e5a1311262aea36f444a109f26e
Author: Eric Anholt <eric at anholt.net>
Date: Fri Jan 30 11:24:04 2009 -0800
intel: If we're doing a depth clear with tris, do color with it.
This is a 10% win on the ever-important glxgears not-a-benchmark.
(cherry picked from commit 67ee22c89f42146e7befb2fdd39bdd68a5258c30)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9f37831698846bbd960b9eac07b0e520d64f799
Author: Eric Anholt <eric at anholt.net>
Date: Thu Jan 29 16:45:08 2009 -0800
i915: Only call CalcViewport from DrawBuffers instead of Viewport.
This saves an inadvertent round-trip to the X Server on DrawBuffers, which was
hurting some metaops.
(cherry picked from commit ac0dfbdf0f5e5dea08ec717ae8c4e1e141b15c05)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e41780fedc2c1f22b43118da30a0103fa68b769f
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 16:33:45 2009 -0700
intel: move some driver functions around
A step toward consolidating i915/intel_state.c and i965/intel_state.c
(cherry picked from commit 84c8b5bbf980deea6322009354c3331dc5d5eb57)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d0edbbb3f36b569ab0ecce2dd10b8abfb41b8388
Author: Eric Anholt <eric at anholt.net>
Date: Thu Jan 29 15:49:30 2009 -0800
intel: replace custom metaops clear with generic.
No real-world impact on performance seen. Even glxgears seems to be, if
anything, happier.
(cherry picked from commit c96bac0950eda6e707455b0c1ee29c1d87daf727)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e10119c23e353b8bbef56645cf0118f65e3b51d3
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 12:36:17 2009 -0700
intel: make intelUpdateScreenFromSAREA() static (cherry picked from commit aae2729aeb3f6eed26e8f7673f47f2b978786bb1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=208c087f3951ebdf6d558e748dff86bcbc996132
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 12:33:58 2009 -0700
intel: remove unused var (cherry picked from commit 66c7f06413cc96a75befa4323677b26a2917ebb3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0c8b40b42bd32be8afd7980eb3038967863a58a2
Author: Shaohua Li <shaohua.li at intel.com>
Date: Mon Feb 23 15:19:21 2009 +0800
i915: Add support for a new G33-like chipset.
Signed-off-by: Shaohua Li <shaohua.li at intel.com>
Signed-off-by: Eric Anholt <eric at anholt.net>
(cherry picked from commit 40290745ea645b52d30f866abfe25ac5d58a755c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5199f451bb518e6b37d5a993a9ae2403e9eddd07
Author: Xiang, Haihao <haihao.xiang at intel.com>
Date: Thu Feb 26 17:31:01 2009 +0800
i965: fix for RHW workaround
It is possible that an object whose vertices all are outside of a
view plane is passed to clip thread due to the RHW workaround. This
object should be rejected by clip thread. Fix bug #19879
(cherry picked from commit 68915fd6fac44dd000080298e3afb0669e8754aa)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dd7cde523040ed3d3af751f40674ef4a7fa593b6
Author: Brian Paul <brianp at vmware.com>
Date: Mon Feb 16 11:45:57 2009 -0700
i965: tell GLSL compiler to emit code using condition codes
The default for EmitCondCodes got flipped when gallium-0.2 was merged.
This fixes GLSL if/else/endif regressions.
Drivers that use GLSL should always explicitly set the flag to be safe.
(cherry picked from commit a9e753c84cc5acc2a89686a5e4109f3b056d4fb4)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ab5746e5d8e7cda19c4fb610df800a4b4aa5c7db
Author: Eric Anholt <eric at anholt.net>
Date: Tue Feb 10 14:22:26 2009 -0800
tdfx: Fix begin/endquery for current API. (cherry picked from commit 0cb295584ff2e3d442029fe9e079f69fafaf8dd9)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3bd446c0ab02663614527f56c49d5653e4c8c72f
Author: Brian Paul <brianp at vmware.com>
Date: Fri Feb 13 16:56:25 2009 -0700
i965: add missing break for OPCODE_RET case
This doesn't effect correctness, but we were emitting an extraneous ADD.
(cherry picked from commit 74b6d55864b9264323a09856781f655e453b182b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b78402ee46ba87b253c7e9b5838af0d628cb75b
Author: Brian Paul <brianp at vmware.com>
Date: Wed Feb 4 14:22:12 2009 -0700
mesa: more info in error messages (cherry picked from commit 1ca05a066b8d8cb8a99da88743a48f7d97f695fe)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cf1ef0f3088857c844922a68e4d38c80d35915ee
Author: Brian Paul <brianp at vmware.com>
Date: Tue Feb 3 16:33:12 2009 -0700
mesa: minor error msg improvement (cherry picked from commit 803504e69fbd85713fc6d93af21f5245852cecab)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fd1f65ba615586c0abeb097432ac11f9684fb5cc
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Feb 4 20:59:22 2009 +0000
intel: Decode MI operands using specific length masks
The MI opcodes have different variable length masks, so use an operand
specific mask to decode the length.
(cherry picked from commit e92d97d75bcd1ac2caafc2a565b304639cedd520)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=967345b49709b1e7719080f7dfc1d10acc120953
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Feb 4 20:25:08 2009 +0000
intel: Correct decoding of 3DSTATE_PIXEL_SHADER_CONSTANTS
A couple of minor typos that proclaimed an error in the wrong command, and
failed to offset the mask.
(cherry picked from commit 05d130a35acf10c0c002fcf5f3a32154ca9cb19e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=41ad853a6adf367735c2b27e5dca90e215c097a8
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Sun Feb 1 11:54:42 2009 -0800
glxgears: No, really. Fix the dyslexia. (cherry picked from commit 5b5ddfb89c74ecb527d035e77aaf999cf0fb86b5)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=842baa29cbbe7f4497066bfeebd92259787119f9
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Fri Jan 30 14:55:42 2009 -0800
Fix dyslexia. (cherry picked from commit 9d6880ec8d4c13540452a8208ca69a58a3f8459d)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9556d870a1127d37219897b2cc2c49e620dc0f8a
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Fri Jan 30 14:43:03 2009 -0800
glxgears: Log a message if synched to vblank
Tries to use either GLX_MESA_swap_control or GLX_SGI_video_sync to
detect whether the display is synchronized to the vertical blank. If
it detects this, a message will be printed. HOPEFULLY this will
prevent some of the bug reports such as "glxgears only gets 59.7fps.
What's wrong with my driver?"
(cherry picked from commit 58b9cd411fd81e257364efb3f2738bd1ac556e34)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=42ce7900865f857ff6fa07a3e0d1d910426e3633
Author: Brian Paul <brianp at vmware.com>
Date: Tue Jan 27 11:07:21 2009 -0700
mesa: refactor glTexParameter code (cherry picked from commit 318e53a4bf27499935c874f475af111ffaa71fdd)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b17769af42a6c6a1b515b825e1cfe357a8854043
Author: Robert Ellison <papillo at tungstengraphics.com>
Date: Mon Jan 26 10:22:34 2009 -0700
mesa: add missing texture_put_row_rgb() function in texrender.c
The wrap_texture() function doesn't set the renderbuffer PutRowRGB() method,
which is used to implement DrawPixels(). This fix adds an implementation
of this method.
(cherry picked from commit 523febe12ea2aa6992ed1161d962615a40a04eb6)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9030277b0d825226ca14ef719f549a52578c09d5
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 12:02:25 2009 -0700
intel: move glClear-related code into new intel_clear.c file (cherry picked from commit 4451eb2e7533a41f67ed21d05a8d9ab5efec77e9)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a37a9bf769814adf8fdbd5a03c08a492b4402837
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 11:53:06 2009 -0700
intel: Move swap-related functions from intel_buffers.c to new intel_swapbuffers.c (cherry picked from commit 6fcebbe719eab1f8e292c8dcd6c3e898b0f8d261)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8afb8a814562ab2e754b1fc4d9a024dea893f47e
Author: Brian Paul <brianp at vmware.com>
Date: Mon Jan 26 11:38:30 2009 -0700
i965: scissor rect was inverted when rendering to texture (cherry picked from commit 3b23a8e07d59ff6ee766e7d3eb384137279a5250)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=801f933694041965f98181f35e55485f52a4e212
Author: Brian Paul <brianp at vmware.com>
Date: Fri Jan 23 14:15:45 2009 -0700
mesa: consolidate glGetTexEnvi/f() code with new get_texenvi() helper (cherry picked from commit ad338c14c2aca87199da7ec1ae08ceb5062a9954)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=75ecd6ebbf2cea55ec00bd02f2715a7d1d6ce99f
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date: Fri Jan 23 13:18:13 2009 -0800
intel: fix the mismerge of the vblank pipe enable sanity check
Fix the last merge fix, had the blocks ordered incorrectly.
(cherry picked from commit e57e39896049a045751201e912779872026fc741)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1cd7317fdbae3fd61e6ee1b1c929be142ef59996
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date: Fri Jan 23 13:13:23 2009 -0800
intel: move pipe enable sanity check to where it belongs
Bah, applied the patches in the wrong order, not Owain's fault...
(cherry picked from commit 216bff5fd4699a694a1d76f91c4ee193c2bbe23a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=186529170135455d811cecc1353b18cdcb314b68
Author: Owain Ainsworth <zerooa at googlemail.com>
Date: Wed Jan 21 21:57:24 2009 +0000
intel: fix vblank crtc selection with DRI1 when only one pipe is enabled.
On Mobile chipsets, we often enable PipeB instead of PipeA, but the test
in here was insufficient, falling back to pipe A if the area
intersection returned zero. Therefore, in the case where a window went
off to the top of the left of the screen, it would freeze, waiting on
the wrong vblank.
Fix this mess by checking the sarea for a crtc being zero sized, and in
that case always default to the other one.
(cherry picked from commit 0b5266ff648b03b3f2beda9838598abc00c4f7b2)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3edbcce7d5e6b821b0c8de1a74f4a665fee77df0
Author: Owain G. Ainsworth <oga at openbsd.org>
Date: Wed Jan 21 22:41:26 2009 +0000
intel: Prevent an "irq is not working" printf when only pipe B is enabled.
intelMakeCurrent is called before intelWindowMoved (in fact, it calls
it), so calculation of the correct vblank crtc has not happened yet.
Fix this by making a function that fixes up a set of vblank flags and
call if from both functions.
(cherry picked from commit 39b4061bb9be540dfb51891e22c505bc235ec8a2)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b1fb34d0ac3a28c1b7885b5f4dd55f383ac77d42
Author: Robert Ellison <papillo at vmware.com>
Date: Fri Feb 20 17:04:15 2009 -0700
i965: fix line stipple fallback for GL_LINE_STRIP primitives
When doing line stipple, the stipple count resets on each line segment,
unless the primitive is a GL_LINE_LOOP or a GL_LINE_STRIP.
The existing code correctly identifies the need for a software fallback
to handle conformant line stipple on GL_LINE_LOOP primitives, but
neglects to make the same assessment on GL_LINE_STRIP primitives.
This fixes it so they match.
(cherry picked from commit 73658ff04fd4cb5f492b0477775430efc5f8b4ca)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=606099f545f908d07b5b2605e6efd581f86a1e76
Author: Ian Romanick <idr at freedesktop.org>
Date: Fri Jan 9 15:47:05 2009 -0800
swrast: Enable GL_EXT_stencil_two_side (cherry picked from commit b5fbdef7ec3deb823ad1db8a7b7a731800082f75)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=32e314207103b085da964573ed9d2e1947bdbe66
Author: Brian Paul <brianp at vmware.com>
Date: Wed Jan 28 11:42:42 2009 -0700
i965: minor improvements in brw_wm_populate_key() (cherry picked from commit 89fddf978c9d2ab5042f89110015234e979c2686)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=66eea4e1045476b6e6602470bd813a7ee37aada7
Author: Brian Paul <brianp at vmware.com>
Date: Thu Feb 19 14:36:58 2009 -0700
mesa: fix/update/restore comments related to two-sided stencil (cherry picked from commit a304cc6cca2ee21c3b25041abf882ef0616e5244)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e428cf3afd464b1b823ba63ff815635ad282d2ae
Author: Brian Paul <brianp at vmware.com>
Date: Thu Feb 19 14:34:33 2009 -0700
mesa: initialize ctx->Stencil._BackFace = 1
Back-face stencil operations didn't work correctly because this value was
zero. It needs to be 1 or 2. The only place it's set otherwise is in
glEnable/Disable(GL_STENCIL_TEST_TWO_SIDE_EXT).
(cherry picked from commit 2a968113a925845331f0532a5a20d9fa1502c118)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=842b5164d29ae92808ab9b01130178810c031403
Author: Ian Romanick <idr at freedesktop.org>
Date: Fri Jan 9 15:43:17 2009 -0800
Track two sets of back-face stencil state
Track separate back-face stencil state for OpenGL 2.0 /
GL_ATI_separate_stencil and GL_EXT_stencil_two_side. This allows all
three to be enabled in a driver. One set of state is set via the 2.0
or ATI functions and is used when STENCIL_TEST_TWO_SIDE_EXT is
disabled. The other is set by StencilFunc and StencilOp when the
active stencil face is set to BACK. The GL_EXT_stencil_two_side spec has
more details.
http://opengl.org/registry/specs/EXT/stencil_two_side.txt
(cherry picked from commit dde7cb962860e72e1bf3175069767358cc5b3f3c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a6f7e909a7e50982b7db5611aeaedbf44e542749
Author: Brian Paul <brianp at vmware.com>
Date: Thu Mar 12 09:32:55 2009 -0600
mesa: fix transposed red/blue in store_texel_rgb888/bgr888() functions
(cherry picked from master, commit 862dccd56054196dc5adf1377f682d0138fa1789)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca87e5a7bd07161ca9215fa047181677c7214b0a
Author: Brian Paul <brianp at vmware.com>
Date: Thu Mar 12 08:12:54 2009 -0600
mesa: add missing _glthread_INIT_MUTEX in _mesa_new_framebuffer()
(cherry picked from master, commit 81569c2f697586daab01486ec1da28f0a03b5c6a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=45c4b4dfbd019260dd0df37ba6776c77149ec7ba
Author: Alan Hourihane <alanh at vmware.com>
Date: Wed Mar 11 13:33:49 2009 +0000
xdemos: On termination with `esc` close the contexts correctly.
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2adaec12267767747a22646c759b0d6c1651d3bf
Author: Brian Paul <brianp at vmware.com>
Date: Mon Mar 9 16:28:50 2009 -0600
xmesa: set back-buffer's drawable field
Fixes back-buffer rendering when MESA_BACK_BUFFER=pixmap
(cherry picked from master, commit 22bac2a1a0d315172f815cb8a516bfe198b0a6f3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=549586c3197ba5f0aee90d09cdfb6a3f403277f7
Author: Brian Paul <brianp at vmware.com>
Date: Mon Mar 9 11:57:16 2009 -0600
i965: fix cube map lock-up / corruption
If we're using anything but GL_NEAREST sampling of a cube map, we need to
use the BRW_TEXCOORDMODE_CUBE texcoord wrap mode. Before this, the GPU
would either lock up or subsequent texture filtering would be corrupted.
(cherry picked from master, commit 6f915b10d5963466567ea5445631192fd9c4e802)
More information about the mesa-commit
mailing list