summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* draw/llvm: add clip distance supportDave Airlie2012-03-061-46/+77
| | | | | | | | | | | | | | | | This add clipdistance support like the non-llvm draw paths, if we have a clip distance we compare with it instead of doing the dot4. We also have to put the have_clipvertex bit into the emitted vertex header. Fixes vs-clip-distance-all-planes-enabled, vs-clip-distance-const-reject, vs-clip-distance-enables, vs-clip-distance-implicitly-sized, vs-clip-distance-in-param, vs-clip-distance-uint-index. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* draw/llvm: fix storing of clipvertex and positions into pre_clip_pos (v2)Dave Airlie2012-03-061-8/+11
| | | | | | | | | This fixes the rest of the piglit clipvertex tests. v2: fixup comments. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* draw/llvm: fix clipvertex setting up clipmask. (v2)Dave Airlie2012-03-061-11/+30
| | | | | | | | | | | | We incorrectly setup clipmask for gl_ClipVertex, this fixes the clipmask setup. v2: fix comment Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]> fix comment
* gallium: add llvm-related TODOs. (v2)Dave Airlie2012-03-061-0/+21
| | | | | | | | | | | This is just a simple text file containing a list of goals for gallivm/llvmpipe and some info on what is required to get there along with some info on who is looking at things. v2: add EXT_texture_array. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix valid texture target test in _mesa_GetTexLevelParameteriv()Anuj Phogat2012-03-052-2/+1
| | | | | | | | | | | | | | | | | | | | _mesa_max_texture_levels() is also used to test valid texture target in _mesa_GetTexLevelParameteriv(). GL_TEXTURE_CUBE_MAP is not allowed as texture target in glGetTexLevelParameter(). So, this should throw GL_INVALID_ENUM error. Few other functions which use _mesa_max_texture_levels() like getcompressedteximage_error_check() and getteximage_error_check() also don't accept GL_TEXTURE_CUBE_MAP. Above fix makes piglit fbo-cubemap test to fail. This is because of incorrect texture target passed to _mesa_max_texture_levels() in framebuffer_texture(). Fixing that as well Note: This is a candidate for the stable branches Signed-off-by: Anuj Phogat <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* egl: Use -no-undefined libtool flagJon TURNEY2012-03-051-1/+1
| | | | | | | | | | | | | "Use -no-undefined to assure libtool that the library has no unresolved symbols at link time, so that libtool will build a shared library on platforms require that all symbols are resolved when the library is linked." If I had a dollar for every time I wrote this patch, I'd have about $10 :-) Signed-off-by: Jon TURNEY <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* i965: fixup W-tile offset computation to take swizzling into accountDaniel Vetter2012-03-057-22/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's even a comment in the code containing the right swizzling computations! Previously this has not been noticed because we need to manually enabled swizzling on snb/ivb (kernel 3.4 will do that) and we don't use the separate stencil on ilk (where the bios enables swizzling). This fixes piglit ./bin/fbo-stencil readpixels GL_DEPTH32F_STENCIL8 -auto on recent drm-intel-next kernels. Also remove the comment about ivb, it's stale now. Swizzling detection is done by allocating a temporary x-tiled buffer object. Unfortunately kernels before v3.2 lie on snb/ivb because they claim that swizzling is enable, but it isn't. The kernel commit that fixes this for backport to pre-v3.2 is commit acc83eb5a1e0ae7dbbf89ca2a1a943ade224bb84 Author: Daniel Vetter <[email protected]> Date: Mon Sep 12 20:49:16 2011 +0200 drm/i915: fix swizzling on gen6+ But if the kernel doesn't lie, this now works on swizzling and not swizzling machines. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* meta: Fix compilation without FEATURE_EXT_transform_feedbackBenjamin Franzke2012-03-051-0/+6
| | | | | | | | | That is when building with --disable-opengl. Fix for commit cb045880b113b0042d8dfb7e4cdf76e6cc76c1d1. CC: Paul Berry <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* meta: Fix compilation without FEATURE_feedbackBenjamin Franzke2012-03-051-0/+6
| | | | | | | | | That is when building with --disable-opengl. Fix for commit c5f4024a793f1209b1693aed9a46be9374ba4741. CC: Chad Versace <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* wayland: Use new wl_display_disconnectBenjamin Franzke2012-03-053-3/+3
| | | | | | This replaces the previously used wl_display_destroy. wl_display_destroy was povided by wayland-client.so and wayland-server.so, to resolve that conflict its renamed client-side.
* gallivm: fix floating type in lp_build_mod helperRoland Scheidegger2012-03-051-1/+1
| | | | untested, but cannot have worked before.
* st/vdpau: make the interface thread saveChristian König2012-03-059-35/+175
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement support for high-precision output timingChristian König2012-03-054-41/+136
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement support for extra mixer layersChristian König2012-03-051-6/+21
| | | | Signed-off-by: Christian König <[email protected]>
* r600g: replace atom_ prefix with _state and _cmd suffixesMarek Olšák2012-03-058-59/+59
|
* r600g: cleanup includesMarek Olšák2012-03-0519-129/+37
|
* winsys/radeon: cleanup includesMarek Olšák2012-03-051-3/+1
|
* r600g: move r600_context_bo_reloc to r600_pipe.hMarek Olšák2012-03-055-11/+7
| | | | | so that we don't have to include r600_hw_context_priv.h outside of the *hw_context* files.
* r600g: remove unused function r600_context_reg_boMarek Olšák2012-03-052-17/+0
|
* r600g: remove unused definitionsMarek Olšák2012-03-053-12/+0
|
* r600g: don't enable tiling for STAGING and STREAM usage casesMarek Olšák2012-03-051-6/+7
| | | | Reviewed by: Christian König <[email protected]>
* winsys/radeon: add usage parameter to cs_is_buffer_referencedMarek Olšák2012-03-055-6/+21
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: initialize DB_DEPTH_CONTROL at beginning of CSMarek Olšák2012-03-052-0/+3
| | | | | | | | Otherwise streamout with rasterizer discard will make the kernel upset if the state tracker doesn't set a depth-stencil-alpha state. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: initialize VS_GS_OUT_PRIM_TYPEMarek Olšák2012-03-055-0/+38
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: initialize SX_SURFACE_SYNCMarek Olšák2012-03-054-0/+11
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: if pixel shader is NULL, bind a dummy oneMarek Olšák2012-03-053-7/+28
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: add support for missing colorbuffer formatsMarek Olšák2012-03-052-2/+158
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: remove support for SCALED colorbuffer formatsMarek Olšák2012-03-052-34/+0
| | | | | | | | Unused by the current stack and APIs, therefore untestable. It was used to facilitate the transition to integers. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: permit blitting between textures with STREAM and STAGING usageMarek Olšák2012-03-051-8/+1
| | | | | | | | Eventually I'd like to make every format blittable, so that the function can go away. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: fix and improve rasterizer discard for r600-r700Marek Olšák2012-03-052-6/+15
| | | | | | | | | | | | For polygons, we have been using face culling with success, but that doesn't work for points and lines. Setting the point size and line width to 0 fixes it. Also improve it even more by setting SCREEN_SCISSOR to a zero area. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework rasterizer discard for evergreenMarek Olšák2012-03-055-16/+46
| | | | | | | | | | | Implement it right using STRMOUT_CONFIG.RAST_STREAM. This fixes rasterizer discard with points and lines. This also adds another derived state. It's a combination of rasterizer discard and streamout enable. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: make some scissor regs invariant on r600-r700Marek Olšák2012-03-052-16/+8
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: make some scissor regs invariant on evergreenMarek Olšák2012-03-052-22/+16
| | | | | | | We only need one scissor for the framebuffer. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework scissor for r600-r700Marek Olšák2012-03-056-46/+72
| | | | | | | | | | | | | We must use VPORT_SCISSOR, because that's the only one we can use for multiple scissor rectangles in ARB_viewport_array. R700 can use the VPORT_SCISSOR_ENABLE bit, but R600 doesn't have that and must emit a 8192x8192 rectangle if scissor is disabled. This commit also cleanups magic numbers in create_rs_state. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework scissor for evergreenMarek Olšák2012-03-053-71/+31
| | | | | | | | VPORT_SCISSOR is the OpenGL scissor. How do I know? Because there are 16 of them just like GL4.1 has multiple scissor rectangles. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: remove obsolete todo commentsMarek Olšák2012-03-059-32/+22
| | | | | | | | Also use XXX in the other ones, because it's the most used word for that purpose in Mesa. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: correctly handle queries which don't need begin_queryMarek Olšák2012-03-051-6/+27
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: don't suspend timer queries for u_blitterMarek Olšák2012-03-055-23/+88
| | | | | | | | | | | | Timer queries should be able to measure the time spent in u_blitter as well. Queries are split into two groups: the timer ones and the others (streamout, occlusion), because we should only suspend non-timer queries for u_blitter, and later if the non-timer queries are suspended, the context flush should only suspend and resume the timer queries. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: release query buffers in destroy_queryMarek Olšák2012-03-051-0/+9
| | | | | | | This fixes a memory leak introduced with the rework. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: move all query code into r600_query.cMarek Olšák2012-03-055-456/+414
| | | | | | | | And rename or inline functions where appropriate. There is no reason to keep this stuff in r600_hw_context.c. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* Revert "gallium: add flag PIPE_TRANSFER_MAP_PERMANENTLY"Marek Olšák2012-03-0512-57/+6
| | | | | | | This reverts commit 0950086376b1c8b7fb89eda81ed7f2f06dee58bc. It was decided to refactor the transfer API instead of adding workarounds to address the performance issues.
* i915: fix wrong rendering of gl_PointSize on PineviewYuanhan Liu2012-03-051-0/+4
| | | | | | | | | | | | | | | | | | The current code would ignore the point size specified by gl_PointSize builtin variable in vertex shader on Pineview. This patch servers as fixing that. This patch fixes the following issues on Pineview: webglc: https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/rendering/point-size.html piglit: glsl-vs-point-size NOTE: This is a candidate for stable release branches. v2: pick Eric's nice tip for fixing this issue in hardware rendering. v3: the last arg of EMIT_ATTR specify the size in _byte_. (Eric) Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* tnl: let _TNL_ATTRIB_POINTSIZE do not depend on ctx->VertexProgram._EnabledYuanhan Liu2012-03-051-2/+1
| | | | | | | | | | | | We may specify the point size in a glsl vertex shader. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46311 piglit: glsl-vs-point-size NOTE: This is a candidate for stable release branches. Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* r300/compiler: Add support for inline literalsTom Stellard2012-03-0412-9/+192
| | | | | On R500 chips, shader instructions can take 7-bit (3-bit mantissa, 4-bit exponent) floating point values as inputs in place of registers.
* vl: fix shader in/out numberingChristian König2012-03-035-10/+10
| | | | | | Fix all the other wrong numberings. Signed-off-by: Christian König <[email protected]>
* egl: Also put a symlink from libEGL.so in lib/ for now.Eric Anholt2012-03-021-0/+1
| | | | | | This fixes the egl_gallium.so driver build when no system libEGL.so is present, since it's relying on the lib/ to build against until it gets converted to automake.
* i915: Fix i830 polygon stipple from PBOs.Kurt Roeckx2012-03-021-1/+7
| | | | | | | | | | | This is a direct port of the i915 patch in a856da63247a4b403f6350914f732e14d1530ed1. Fixes glean's pbo test. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41372 Reviewed-by: Eric Anholt <[email protected]> NOTE: This is a candidate for release branches.
* i915: Compute maximum number of verts using the actual batchbuffer size.Kurt Roeckx2012-03-021-3/+3
| | | | | | | | | | | We were looking at the size of batch.map for how big the batchbuffer was, but on 865 we just use a single-page batchbuffer due to hardware limits. v2: Removed check for sizeof map < bo->size, since that's always false. [change by anholt] NOTE: This is a candidate for release branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41495
* i830: Compute initial number of vertices from remaining batch spaceChris Wilson2012-03-021-5/+11
| | | | | | | | | | | | | In order to prevent an overflow of the batch buffer when emitting triangles, we need to limit the initial primitive to fit within the current batch. To do we need to measure the remaining space and thence compute the maximum number of vertices that fit into that space. Reported-by: Kurt Roeckx <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41495 Signed-off-by: Chris Wilson <[email protected]> Reviewed-by: Eric Anholt <[email protected]> NOTE: This is a candidate for release branches.
* dri/i915: Fix off-by-one in i830 clip region size.Alban Browaeys2012-03-021-2/+2
| | | | | | | | | | | | | | | | | | The hardware, like i915, uses an inclusive bounds on min and max for the drawing rectangle, but we were providing a number for exclusive. The number of bits used by the hardware only covers this value going up to the maximum size, so when we programmed 2048 as the maximum inclusive X, it saw a maximum X of 0 and clipped all rendering. This caused rendering failures in gnome-shell. Fixes piglit fbo-maxsize. v2: dropped changes to the blitter, which does use an exclusive x2, y2. [change by anholt] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45558 Reviewed-by: Eric Anholt <[email protected]> NOTE: This is a candidate for release branches.