aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* glx: implement drawable refcounting.Stéphane Marchesin2011-06-176-21/+37
| | | | | | | | | | | | The current dri context unbind logic will leak drawables until the process dies (they will then get released by the GEM code). There are two ways to fix this: either always call driReleaseDrawables every time we unbind a context (but that costs us round trips to the X server at getbuffers() time) or implement proper drawable refcounting. This patch implements the latter. Signed-off-by: Antoine Labour <[email protected]> Signed-off-by: Stéphane Marchesin <[email protected]> Reviewed-by: Adam Jackson <[email protected]>
* scons: Move all env setup to scons/gallium.pyJosé Fonseca2011-06-172-22/+18
|
* scons: make embedding orthogonal to the platformJosé Fonseca2011-06-1713-83/+56
| | | | To enable embedding in platforms other than linux.
* mesa: use helper functions to distinguish between user/winsys FBOsBrian Paul2011-06-161-18/+42
| | | | And replace IS_CUBE_FACE() macro w/ inline function.
* mesa: refactor, create _mesa_update_draw_buffers() helperBrian Paul2011-06-163-11/+27
| | | | | Move this code out of _mesa_make_current() and put it into a helper function.
* mesa: updated comments in _make_current()Brian Paul2011-06-161-8/+5
|
* r600: fix SPI inputs setup on r600/r700Vadim Girlin2011-06-161-4/+9
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* intel: Fix typo in intel_offset_S8 commentsChad Versace2011-06-151-1/+1
| | | | Signed-off-by: Chad Versace <[email protected]>
* i965/gen5,6: Fix hang when emitting hiz buffer without stencil bufferChad Versace2011-06-151-18/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When emitting either a hiz or stencil buffer, the 'separate stencil enable' and 'hiz enable' bits are set in 3DSTATE_DEPTH_BUFFER. Therefore we must emit both 3DSTATE_HIER_DEPTH_BUFFER and 3DSTATE_STENCIL_BUFFER. Even if there is no stencil buffer, 3DSTATE_STENCIL_BUFFER must be emitted; failure to do so causes a hang on gen5 and a stall on gen6. This also fixes a silly, obvious segfault that occured when a hiz buffer xor separate stencil buffer existed. Fixes the piglit tests below on Gen5 when hiz and separate stencil are manually enabled: fbo-alphatest-nocolor fbo-depth-sample-compare fbo hiz-depth-read-fbo-d24-s0 hiz-depth-stencil-test-fbo-d24-s0 hiz-depth-test-fbo-d24-s0 hiz-stencil-read-fbo-d0-s8 hiz-stencil-test-fbo-d0-s8 fbo-missing-attachment-clear fbo-clear-formats fbo-depth-* Changes piglit test result from crash to fail: hiz-depth-stencil-test-fbo-d0-s8 Signed-off-by: Chad Versace <[email protected]>
* r600g: disable render condition for some blitter operationsMarek Olšák2011-06-153-6/+34
|
* r600g: fix TXD src regs needing fetching.Mike Kaplinskiy2011-06-151-46/+50
| | | | | | | | | [airlied: final chunk of Mike's patch from bug 37476 this uses a loop to emit the GRADIENTS and does a check to see if we need to fetch to a temporary register. It also increases the context src gpr to 4 which is needed here.] Signed-off-by: Dave Airlie <[email protected]>
* r600g: use inlines for some common tex instr setup code.Mike Kaplinskiy2011-06-151-11/+24
| | | | | | [airlied: taken from Mike's patch in bug 37476] Signed-off-by: Dave Airlie <[email protected]>
* glsl/builtins: Actually implement int/ivec variants of abs().Kenneth Graunke2011-06-141-0/+20
| | | | | | | Signed-off-by: Kenneth Graunke <[email protected]> NOTE: This is a candidate for stable release branches (and don't forget to re-run "make builtins" after cherry-picking.)
* r600g: fix TXD when shadowing is enabled.Mike Kaplinskiy2011-06-152-6/+17
| | | | | | | | Mike had actually done a lot of the TXD support in a patch in bug 37476 which I see now, I'll add the bits of his work that I didn't think to add to my work. Signed-off-by: Dave Airlie <[email protected]>
* r600g: add TXD support.Dave Airlie2011-06-154-6/+64
| | | | | | | | This at least passes the piglit arb_shader_texture_lod-texgrad test, the AMD shader analyzer seems to multiply the V component by an unspecified constant value no idea why. Signed-off-by: Dave Airlie <[email protected]>
* i915g: add const qualifier to silence warningBrian Paul2011-06-141-1/+1
|
* r600g: also set TILE_MODE of the base levelMarek Olšák2011-06-151-1/+1
|
* r600g: force OpenGL's BASE_LEVEL behavior on r600-r700Marek Olšák2011-06-151-10/+16
| | | | | | | | | | This sets the base level as the zero level, which fixes piglit/texturing/tex-miplevel-selection*. The r600 hardware ignores the BASE_LEVEL field in some cases, so we can't use it. Evergreen might need this too.
* glsl/generate_builtins.py: Remove regexp to kill pointer addresses.Kenneth Graunke2011-06-141-4/+0
| | | | | | | | | Commit 56ef62d9885f805bbfb2243dc860ff425d5b4d3b "glsl: Generate readable unique names at print time." changed ir_print_visitor to not generate @0x1234567 suffixes except where necessary. So there's no need to manually remove them. Signed-off-by: Kenneth Graunke <[email protected]>
* glapi: _glapi_create_table_from_handle: Set missing pointers to NoOp rather ↵Jeremy Huddleston2011-06-142-2586/+2666
| | | | | | | | | | | | | | than NULL This change to _glapi_create_table_from_handle causes it to fill the dispatch table with NoOps for unimplemented functionality. This matches what is done in indirect_init.c and also allows us to enable logging (when built with -DDEBUG and the MESA_DEBUG or LIBGL_DEBUG environment variables are set) to catch cases where clients are trying to use these unimplemented extentions. Additionally, this fixes some gcc -pedantic warnings. Signed-off-by: Jeremy Huddleston <[email protected]>
* st/mesa: fix indentation, whitespaceBrian Paul2011-06-141-69/+74
|
* st/mesa: replace st->ctx with ctxBrian Paul2011-06-147-69/+80
|
* st/mesa: fix comments, whitespaceBrian Paul2011-06-141-3/+4
|
* docs: 7.10.3 updatesBrian Paul2011-06-143-1/+312
|
* st/mesa: improved is_interleaved_arrays() checkingBrian Paul2011-06-141-31/+19
| | | | | | | | | | | | | | Check that the difference in array pointers/offsets from the 0th array are less than the stride, for both VBOs and user-space arrays. Previously, we were only doing this for the later. This tightens up the interleaved array test and fixes a problem with the llvmpipe driver where we were creating way too many vertex fetch variants only because the pipe_vertex_element::src_offset values were changing frequently. This change results in a 5x speed-up for one of the viewperf tests. Also, clean up the function to make it easier to understand.
* r600c: add tiling support for evergreen+Alex Deucher2011-06-141-45/+95
| | | | Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix RGB32F texturingMarek Olšák2011-06-141-1/+2
|
* r600g: fix indentation and commentsMarek Olšák2011-06-142-37/+40
|
* mesa: Switch generate_mipmaps_compressed() to using TexImage2D to upload.Eric Anholt2011-06-144-69/+52
| | | | | | | | | | | | | The code was playing fast and loose with rowstrides, which meant that if a driver chose anything different for its alignment requirements, the generated mipmaps came out garbage. Unlike the uncompressed case, we can't generate mipmaps directly into image->Data, so by using TexImage2D we cut out most of the weird logic that existed to generate in-place into ->Data. The up/downside is that the driver recovery code for the fact that _mesa_generate_mipmaps whacked ->Data has to be turned off for compressed now. Fixes 6 piglit tests about compressed mipmap gen.
* mesa: Remove uncompressed code from generate_mipmaps_compressed().Eric Anholt2011-06-141-100/+77
|
* mesa: Remove compressed code from generate_mipmaps_uncompressed().Eric Anholt2011-06-141-114/+4
|
* mesa: Split _mesa_generate_mipmap along compressed/uncompressed lines.Eric Anholt2011-06-141-26/+225
| | | | | | | | | | The path taken is wildly different based on this (do we generate from a temporary image, or from level-1's data), and we appear to have stride bugs in the compressed case that are tough to disentangle. This just duplicates the code for the moment, the followon commit will do the actual changes. Only real code change here is handling maxLevel in one common place.
* intel: Fix miptree height alignment for compressed NPOT textures.Eric Anholt2011-06-141-4/+2
| | | | | | This is effectively just "round up when dividing by 4" compared to the previous code. Fixes the broken stripe at the top of fbo-generatemipmap-formats GL_EXT_texture_compression_rgtc.
* intel: Drop dead preinitialization of align_w, align_h.Eric Anholt2011-06-141-1/+1
|
* intel: Drop the cpp argument to intel_miptree_create().Eric Anholt2011-06-145-22/+5
|
* intel: Calculate compress_byte in intel_miptree_create.Eric Anholt2011-06-145-26/+18
| | | | One less argument and thing to get wrong.
* intel: Use the gl_format to get the base_format for miptree create.Eric Anholt2011-06-145-5/+1
| | | | One less argument to this insanely long function call.
* intel: Drop the internal_format field of the mipmap tree.Eric Anholt2011-06-145-15/+4
| | | | This has been replaced with the gl_format now.
* intel: Make the intel_miptree_match_image format check more specific.Eric Anholt2011-06-142-12/+3
| | | | | | | | We don't care just about the internalFormat/cpp/compressed, but about the specific format chosen. We have no support for format translations as part of texture validation, and furthermore it has restrictions in the GL specification. However, we should be making consistent decisions for this check anyway.
* i915: Drop dead argument to translate_texture_format().Eric Anholt2011-06-142-6/+3
|
* intel: Add block alignment for RGTC textures.Eric Anholt2011-06-144-32/+18
| | | | | We were using the default 4x2 alignment instead of the 4x4 required for RGTC textures.
* intel: Add the MESA_FORMAT as a field of the miptree.Eric Anholt2011-06-145-4/+14
| | | | | We only had internal_format before, which is way more irritating to work with.
* intel: Fix 2x2 and 1x1 compressed teximages from _mesa_generate_mipmap()Eric Anholt2011-06-141-5/+12
| | | | | | | | | | Generally image uploads to a the region occur at TexImage time, but that's not the case for fallback _mesa_generate_mipmap(), and in this path we were forgetting to align the width when dividing height. We were just leaving out parts of the compressed block at 2x2 and 1x1 levels. Fixes gen-compressed-teximage.
* r600g: disable shader_texture_lod until there is driver supportMarek Olšák2011-06-141-1/+1
|
* llvmpipe: SSE2 fastpaths for b8g8r8x8 {un,}swizzleAdam Jackson2011-06-141-2/+66
| | | | | | | | Copy-and-paste from the bgra cases. The C paths attempt to avoid copying the 'x' channel, but it's harmless, you might as well. Good for about 5% in glxgears (740 to 780 fps). Signed-off-by: Adam Jackson <[email protected]>
* nv50: fix copy/paste error in nv50_gmtyprog_validateChristoph Bumiller2011-06-141-2/+4
| | | | Used the vertprog instead of gmtyprog.
* apple: Set the glapi dispatch table on context bindJeremy Huddleston2011-06-144-3/+4
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* configure.ac: cleanup the gallium-r300 optionMarek Olšák2011-06-141-19/+13
|
* st/xorg: remove unused variableMarek Olšák2011-06-141-1/+0
|
* r600g: do not link with softpipeMarek Olšák2011-06-141-1/+0
|