summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* mesa: use _mesa_rebase_rgba_float/uint() in glGetTexImage codeBrian Paul2012-03-081-73/+4
| | | | | | NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* mesa: use _mesa_rebase_rgba_float/uint() in glReadPixels codeBrian Paul2012-03-081-0/+4
| | | | | | | | | See the comments for _mesa_rebase_rgba_float() for details. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=46679 NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* mesa: add _mesa_rebase_rgba_float/uint() functionsBrian Paul2012-03-082-0/+98
| | | | | | | | | These will be used by glReadPixels() and glGetTexImage() to fix issues with reading GL_LUMINANCE and other formats. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* glsl: Refine the loop instruction counting.Eric Anholt2012-03-081-12/+36
| | | | | | | | | | | | Before, we were only counting top-level instructions. But if we have an assignment of a giant expression tree (such as the ones eventually generated by glsl-fs-unroll), we were counting the same as an assignment of a variable deref. glsl-fs-unroll-explosion now fails in a reasonable amount of time on i965 because the unrolling didn't go ridiculously far. Reviewed-by: Kenneth Graunke <[email protected]>
* r600g: enable ARB_draw_instancedMarek Olšák2012-03-081-1/+1
|
* vl/video_buffer: add YUVA and VUYA supportChristian König2012-03-081-0/+20
| | | | Signed-off-by: Christian König <[email protected]>
* gallium: remove format aliasesChristian König2012-03-082-5/+1
| | | | | | They are incomplete and don't make to much sense. Signed-off-by: Christian König <[email protected]>
* st/vdpau: cleanup YCBCR matching functionsChristian König2012-03-081-6/+6
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: fix chroma_format handling in ↵Christian König2012-03-081-4/+18
| | | | | | VideoSurfaceQueryGetPutBitsYCbCrCapabilities Signed-off-by: Christian König <[email protected]>
* r600g: use SX_MISC to implement rasterizer discardMarek Olšák2012-03-084-4/+13
| | | | Yeah I am reworking it again. This is way simpler than the other methods.
* Revert "r600g: fix and improve rasterizer discard for r600-r700"Marek Olšák2012-03-082-15/+6
| | | | | | I will use SX_MISC instead. This reverts commit 597fd6dc8c424a35f8442d5fd9de708013a69830.
* Revert "r600g: rework rasterizer discard for evergreen"Marek Olšák2012-03-085-45/+16
| | | | | | | | | | | | | I will use SX_MISC instead. This reverts commit 734792e83fdc526623d8fe0a60479648c936bd53. Conflicts: src/gallium/drivers/r600/evergreen_hw_context.c src/gallium/drivers/r600/evergreen_state.c src/gallium/drivers/r600/r600_hw_context.c src/gallium/drivers/r600/r600_pipe.h
* svga: fix the rasterizer state resetsZack Rusin2012-03-072-2/+17
| | | | | | | | | | | draw module calls back into the driver and sets certain parts of the state to whatever it needs, unfortunately unless you get the ordering of calls to draw just right you'll end up reseting your own driver state. That's what was happening to us draw module would under certain conditions reset our own driver state. Reviewed-by: Brian Paul <[email protected]>
* glx: Also put a symlink from libGL.so in lib/ for now.Johannes Obermayr2012-03-071-0/+1
| | | | | | | | | This fixes the libGLU.so.* build when a system libGL.so is not present since it is relying on the lib/ to build against until it gets converted to automake. Tested-by: Stéphane Marchesin <[email protected]> Reviewed-by: Stéphane Marchesin <[email protected]>
* gbm_dri: Fix DRIimage lookup callbackBenjamin Franzke2012-03-071-2/+2
| | | | | | | | | | | | | | | | | | | That is by making the dri extension variables static in gbm_dri.c. The image_lookup_extension is provided by egl_dri2 when using x11 or wayland platforms, when using the drm platform, gbm_dri has a wrapper for it. Both use the same variables name image_lookup_extension. Since -fvisibility=hidden was (probably by mistake) removed when converting to automake, the "image_lookup_extension" symbol from egl_dri2.c became exported in libEGL.so, so "image_lookup_extension" from gbm_dri.c was ignored. This resulted in calling incorrect callbacks. We cant make the image_lookup_extension static in egl_dri2.c right now, since its used across multiple files. Bugzilla: https://bugs.freedesktop.org/attachment.cgi?id=58099 Reviewed-by: Kristian Høgsberg <[email protected]>
* mesa: handle array textures in strip_texture_border()Brian Paul2012-03-071-17/+21
| | | | | | | | If the texture is a 1D array, don't remove the border pixel from the height. Similarly for 2D array textures and the depth direction. Simplify the function by assuming the border is always one pixel. Reviewed-by: Anuj Phogat <[email protected]>
* r600g: only emit SX_SURFACE_SYNC on r700 if there's CS checker supportMarek Olšák2012-03-071-1/+1
| | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47039
* i965: handle gl_PointCoord for Gen4 and Gen5 platformsYuanhan Liu2012-03-075-5/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add the support of gl_PointCoord gl builtin variable for platform gen4 and gen5(ILK). Unlike gen6+, we don't have a hardware support of gl_PointCoord, means hardware will not calculate the interpolation coefficient for you. Instead, you should handle it yourself in sf shader stage. But badly, gl_PointCoord is a FS instead of VS builtin variable, thus it's not included in c.vue_map generated in VS stage. Thus the current code doesn't aware of this attribute. And to handle it correctly, we need add it to c.vue_map manually to let SF shader generate the needed interpolation coefficient for FS shader. SF stage has it's own copy of vue_map, thus I think it's safe to do it manually. Since handling gl_PointCoord for gen4 and gen5 platforms is somehow a little special, I added a lot of comments and hope I didn't overdo it ;) v2: add a /* _NEW_BUFFERS */ comment to note the state flag dependency and also add the _NEW_BUFFERS dirty mask (Eric). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45975 Piglit: glsl-fs-pointcoord and fbo-gl_pointcoord NOTE: This is a candidate for stable release branches. Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i915: move the FALLBACK_DRAW_OFFSET check outside the drawing rect checkYuanhan Liu2012-03-071-4/+3
| | | | | | | | | | | | | We have to do fallback when the 'Clipped Drawing Rectangle X/Y Max' exceed the hardware's limit no matter the drawing rectangle offset changed or not. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46665 NOTE: This is a candidate for stable release branches. Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* dri/nouveau: don't use nested functionsnobled2012-03-062-64/+78
| | | | | | | | | | | | | | | | It's a GNU extension that isn't supported by clang right now: http://gcc.gnu.org/onlinedocs/gcc-4.6.3/gcc/Nested-Functions.html http://clang.llvm.org/docs/UsersManual.html#c_unimpl_gcc With this, clang now compiles the nouveau classic driver. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44061 (Types changed from e.g. 'unsigned char' to 'GLubyte' so that the types can be concatenated to form a unique function name without any whitespace interfering.) [ Francisco Jerez: give meaningful names to the dispatch functions. ]
* gallivm: Pass in a MCRegisterInfo to MCInstPrinter on llvm-3.1.Vinson Lee2012-03-061-1/+12
| | | | | | | | llvm-3.1svn r152043 changes createMCInstPrinter to take an additional MCRegisterInfo argument. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* 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]>