summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-09-23d3d1x: autogenerate shader enums and text from def filesLuca Barbieri
This avoids the duplication in tpf.h and tpf_text.cpp
2010-09-23d3d1x: initialize the mutexLuca Barbieri
2010-09-23draw: Prevent clipped vertices overflow.José Fonseca
Some pathological triangles cause a theoritically impossible number of clipped vertices. The clipper will still assert, but at least release builds will not crash, while this problem is further investigated.
2010-09-23draw: don't apply flatshading to clipped tris with <3 vertsKeith Whitwell
If a triangle was completely culled by clipping, we would still try to fix up its provoking vertex.
2010-09-23d3d1x: bind NULL CSOs before destroying default CSOs on context dtorLuca Barbieri
Otherwise softpipe and llvmpipe assert.
2010-09-23d3d1x: fix deadlocks on non-recursive mutexLuca Barbieri
2010-09-23egl: fix build since 17eace581d25a626a7d75d9d1205d012cbb14a6eDave Airlie
looks like mesa st didn't get updated.
2010-09-23r600g: fix warnings since last commit.Dave Airlie
2010-09-23r600g: use blitter to do db->cb flushing.Dave Airlie
use the blitter + custom stage to avoid doing a whole lot of state setup by hand. This makes life a lot easier for doing this on evergreen it also keeps all the state setup in one place. We setup a custom context state at the start with a flag to denote its for the flush, when it gets generated we generate the correct state for the flush and no longer have to do it all by hand. this should also make adding texture *to* depth easier.
2010-09-23u_blitter: add a custom blitter call passing a dsa csoDave Airlie
reimplement the flush stage added for r300 to allow a custom DSA stage to be used in the pipeline, this allows for r600 hw DB->CB flushes.
2010-09-23d3d1x: properly reference count the backendLuca Barbieri
2010-09-22dri: Pass the __DRIscreen and the __DRIscreen private back to image lookupKristian Høgsberg
We will typically have a current context when we need to lookup the image, but the lookup implementation don't need it so drop it.
2010-09-22rbug: fix rbug when contexts are being destroyedZack Rusin
2010-09-23r600g: fix typo in evergreen register listDave Airlie
pointed out by glisse on irc.
2010-09-23r600g: fix depth readback on rv610 and other quirky variants.Dave Airlie
at least zreaddraw works for me here now on my rv610
2010-09-23r600g: use floats instead of hex for blit vboDave Airlie
once I go past 0x3f80000, I can't translate hex to float in-brain anymore.
2010-09-22i965: Warning fix for vector result any_nequal/all_equal change.Eric Anholt
2010-09-22i965: Update expression splitting for the vector-result change to compares.Eric Anholt
Fixes: glsl1-precision exp2 glsl1-precision log2
2010-09-22i965: When splitting vector variable assignment, ignore unset channels.Eric Anholt
The new checks for sanity in ir_assignment creation got angry about this write_mask == 0. Fixes: glsl-fs-dot-vec2. glsl-fs-atan-2 glsl-fs-dot-vec2
2010-09-22glx: Invalidate buffers after binding a drawableKristian Høgsberg
If the server doesn't send invalidate events, we may miss a resize before the rendering starts. Invalidate the buffers now so the driver will recheck before rendering starts. https://bugs.freedesktop.org/show_bug.cgi?id=29984 https://bugs.freedesktop.org/show_bug.cgi?id=30155
2010-09-22i965: Fix the vector/expression splitting for the write_mask change.Eric Anholt
+113 piglits.
2010-09-22tgsi: Fix missing test before checkJakob Bornecrantz
As introduced with commit d21301675c249602e19310d5b62fad424f2f2ac2 NOTE: This is a candidate for the 7.9 branch.
2010-09-22ir_to_mesa: Only compare vector_elements present for any_nequal/all_equalEric Anholt
Fixes: glsl-mat-from-int-ctor-03
2010-09-22glsl: Fix copy'n'wasted ir_noop_swizzle conditions.Eric Anholt
It considered .xyyy a noop for vec4 instead of .xyzw, and similar for vec3.
2010-09-22glsl: Rework assignments with write_masks to have LHS chan count match RHS.Eric Anholt
It turns out that most people new to this IR are surprised when an assignment to (say) 3 components on the LHS takes 4 components on the RHS. It also makes for quite strange IR output: (assign (constant bool (1)) (x) (var_ref color) (swiz x (var_ref v) )) (assign (constant bool (1)) (y) (var_ref color) (swiz yy (var_ref v) )) (assign (constant bool (1)) (z) (var_ref color) (swiz zzz (var_ref v) )) But even worse, even we get it wrong, as shown by this line of our current step(float, vec4): (assign (constant bool (1)) (w) (var_ref t) (expression float b2f (expression bool >= (swiz w (var_ref x))(var_ref edge)))) where we try to assign a float to the writemasked-out x channel and don't supply anything for the actual w channel we're writing. Drivers right now just get lucky since ir_to_mesa spams the float value across all the source channels of a vec4. Instead, the RHS will now have a number of components equal to the number of components actually being written. Hopefully this confuses everyone less, and it also makes codegen for a scalar target simpler. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2010-09-22d3d1x: add Wine dlls (tri, tex working, but no other testing)Luca Barbieri
2010-09-22d3d1x: define GUIDs in the normal wayLuca Barbieri
2010-09-22d3d1x: fix API nameLuca Barbieri
2010-09-22d3d1x: redesign the HWND resolver interfaceLuca Barbieri
This one should be powerful enough to hook up Wine.
2010-09-22d3d1x: fix GUID declarationsLuca Barbieri
2010-09-22d3d1x: destroy native_display on adapter destructionLuca Barbieri
2010-09-22dri2: Make createImageFromName() take a __DRIscreen instead of __DRIcontextKristian Høgsberg
We can't expect to have a context when this is called, and we don't need one so just require a __DRIscreen instead. Reported by Yu Dai <yu.dai@intel.com>
2010-09-22r600g: fix multiple occlusion query on same idJerome Glisse
When calling query begin using same query id we need to discard previous query results. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-22r600g: disable shader rebuild optimization & account cb flush packetJerome Glisse
Shader rebuild should be more clever, we should store along each shader all the value that change shader program rather than using flags in context (ie change sequence like : change vs buffer, draw, change vs buffer, switch shader will trigger useless shader rebuild). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-22llvmpipe: fix sprite texcoord setup for non-projective texturingBrian Paul
Normally the Mesa state tracker uses TXP instructions for texturing. But if a fragment shader uses texture2D() that's a TEX instruction. In that case we were incorrectly computing the texcoord coefficients in the point sprite setup code. Some new comments in the code explain things.
2010-09-22intel: Fix GL_ARB_shading_language_120 commitKristian Høgsberg
Fix commit e7087175f8a04f777403366fb34b58edd00f4d60. Move the reference to GL_VERSION_2_1_functions to intel_extensions.c where it's available, don't try to enable a non-existing extension and advertise 1.20 for all intel chipsets, not just GEN4 and up.
2010-09-22r600g: flush color buffer after draw commandJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-22llvmpipe: Make rgb/alpha bland func/factors match, when there is no alpha.José Fonseca
Makes AoS blending easier, and state more canonical.
2010-09-22llvmpipe: Special case complementary and identify blend factors in SoA.José Fonseca
One multiplication instead of two. Also fix floating point random number generation and verification. TODO: Do the same for AoS blending.
2010-09-22gallivm: Add unorm support to lp_build_lerp()José Fonseca
Unfortunately this can cause segfault with LLVM 2.6, if x is a constant.
2010-09-22util: Flush stdout on util_format.José Fonseca
2010-09-22d3d1x: fix segfault when hashingLuca Barbieri
2010-09-22d3d1x: fix warningLuca Barbieri
2010-09-22d3d1x: fix cf analysisLuca Barbieri
2010-09-22d3d1x: link with CXXFLAGSLuca Barbieri
Otherwise, -m32 doesn't make it there.
2010-09-22d3d1x: add missing memory barrierLuca Barbieri
2010-09-22d3d1x: don't build progs automaticallyLuca Barbieri
progs requires winsys, which hasn't yet been built by the time we go into state_trackers. It may be a good idea to also move it into tests. After a normal build, run make in src/gallium/state_trackers/d3d1x/progs to build them.
2010-09-22winsys: automatically build sw winsys needed by EGL and d3d1xLuca Barbieri
A cleaner solution would be preferable, but this does no harm and works.
2010-09-22glx: decouple dri2.c and GLX, fixing Gallium EGL and d3d1x buildLuca Barbieri
The Gallium EGL state tracker reuses dri2.c but not the GLX code. Currently there is a bit of code in dri2.c that is incorrectly tied to GLX: instead, make it call an helper that both GLX and Gallium EGL implement, like dri2InvalidateBuffers. This avoids a link error complaining that dri2GetGlxDrawableFromXDrawableId is undefined. Note that we might want to move the whole event translation elsewhere, and probably stop using non-XCB DRI2 altogether, but this seems to be the minimal fix.
2010-09-22nvfx: remove gl_PointCoord hackLuca Barbieri
Now Gallium has the proper fix, thanks to Brian Paul.