summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* mesa: remove _DepthBuffer, _StencilBuffer resize codeBrian Paul2011-12-131-18/+0
| | | | | | This is handled in swrast now when we validate the framebuffer state. Reviewed-by: Eric Anholt <[email protected]>
* swrast: add debug code to test combined depth/stencil buffersBrian Paul2011-12-131-7/+47
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: remove unused depthstencil.[ch] filesBrian Paul2011-12-134-1074/+0
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: move depth/stencil buffer validation to swrastBrian Paul2011-12-132-3/+23
| | | | | | | | | Since gl_framebuffer::_DepthBuffer and _StencilBuffer are only used by swrast, do the validation of those fields in swrast too. The main/depthstencil.[ch] code is no longer used and will be removed next. Reviewed-by: Eric Anholt <[email protected]>
* swrast: update depth/stencil wrapper sizesBrian Paul2011-12-131-2/+6
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: build swrast/s_depthstencil.cBrian Paul2011-12-132-0/+2
| | | | Reviewed-by: Eric Anholt <[email protected]>
* swrast: add new s_depthstencil.[ch] filesBrian Paul2011-12-132-0/+1072
| | | | | | | These files are copies of main/depthstencil.[ch] with s/mesa/swrast/. The main/depthstencil.[ch] will go away soon. Reviewed-by: Eric Anholt <[email protected]>
* mesa: move update_depth/stencil_buffer() functionsBrian Paul2011-12-133-96/+89
| | | | | | | | | These functions update the gl_framebuffer::_DepthBuffer and _StencilBuffer fields, possibly creating renderbuffer wrappers that make a shared depth+stencil accessible as depth-only or stencil only. This stuff is only used by swrast now and will be moved there next. Reviewed-by: Eric Anholt <[email protected]>
* radeon: stop using _DepthBuffer, _StencilBuffer fieldsBrian Paul2011-12-132-9/+8
| | | | Reviewed-by: Eric Anholt <[email protected]>
* nouveau: stop using _DepthBuffer, _StencilBuffer fieldsBrian Paul2011-12-136-13/+14
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: stop using _Depth, _StencilBuffer fields in _mesa_BlitFramebufferEXT()Brian Paul2011-12-131-6/+8
| | | | | | | | We're just looking at the depth/stencil renderbuffers to do error checking. We don't need to look at the depth/stencil wrappers to do that. Also, remove pointless readRb = depthRb = NULL assignments. Reviewed-by: Eric Anholt <[email protected]>
* st/mesa: stop using _DepthBuffer, _StencilBuffer fieldsBrian Paul2011-12-132-15/+6
| | | | | | | | We never want to use the depth/stencil buffer wrappers so always just use the attachment renderbuffers. This is a step toward removing the _DepthBuffer, _StencilBuffer fields. Reviewed-by: Eric Anholt <[email protected]>
* swrast: add missing state validation calls for Blit, ClearBrian Paul2011-12-132-0/+6
|
* mesa: fix possible precision issues in pack/unpack/fetch functionsMarek Olšák2011-12-123-16/+16
| | | | | | | | | | | | | | | | | GLfloat doesn't have enough precision to exactly represent 0xffffff and 0xffffffff. (and a reciprocal of those, if I am not mistaken) If -ffast-math is enabled, using GLfloat causes assertion failures in: - fbo-blit-d24s8 - fbo-depth-sample-compare - fbo-readpixels-depth-formats - glean/depthStencil For example: fbo-depth-sample-compare: main/format_unpack.c:1769: unpack_float_z_Z24_X8: Assertion `dst[i] <= 1.0F' failed. Reviewed-by: Brian Paul <[email protected]>
* r300g: integer and fixed-point 16.16 textures are not supportedMarek Olšák2011-12-121-0/+11
|
* st/mesa: add color varyings to MaxVaryingMarek Olšák2011-12-121-6/+4
| | | | | | | The linker now adds color varyings to the number of used varyings and checks against that limit. NOTE: This is a candidate for the 7.11 branch.
* i915g: fix debug dump on 64 bit systemsMichael Karcher2011-12-111-1/+1
|
* i915g: Fix wrong indices for LINE_LOOP caseFatih Aşıcı2011-12-111-2/+2
|
* vl: Add missing mpeg fields to pipe_mpeg12_picture_descMaarten Lankhorst2011-12-112-0/+6
| | | | Signed-off-by: Maarten Lankhorst <[email protected]>
* g3dvl/xlib: fix build by changing include orderTobias Droste2011-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | fixes the following build error since c83fb4d45f2a47042f395271efe6e5489b2c4aee: /usr/include/strings.h:46:13: error: expected declaration specifiers or ‘...’ before numeric constant /usr/include/strings.h:46:13: error: conflicting types for ‘memset’ In file included from ../../../../src/gallium/winsys/g3dvl/xlib/xsp_winsys.c:34:0: ../../../../src/gallium/auxiliary/util/u_inlines.h: In function ‘pipe_buffer_create’: ../../../../src/gallium/auxiliary/util/u_inlines.h:189:4: error: too many arguments to function ‘memset’ /usr/include/strings.h:46:13: note: declared here bzero is defined in X11 as: #define bzero(b,len) memset(b,0,len) including strings.h after the X11 header results in preprocessor replacing 'bzero' in strings.h and generating unbuildable code. Signed-off-by: Tobias Droste <[email protected]>
* st/mesa: move frag depth up a level.Dave Airlie2011-12-102-19/+19
| | | | | | | This fixes the segfault, and seems to put this closer to where other properties are being set. Hopefully it still conforms. Signed-off-by: Dave Airlie <[email protected]>
* Revert "st/mesa: only resolve is number of samples is > 1"Dave Airlie2011-12-101-1/+1
| | | | | | This reverts commit 8c713626db33c40c18e24c880fe47d7948f4dcd7. Didn't mean to push this at all
* st/mesa: only resolve is number of samples is > 1Dave Airlie2011-12-101-1/+1
| | | | | | This fixes the firefox crash but I've no idea if its correct. Signed-off-by: Dave Airlie <[email protected]>
* mesa: add missing RG_INTEGER and some RED_INTEGER_EXT checks.Dave Airlie2011-12-104-0/+21
| | | | | | | | | | | This just adds the correct checks and asserts in the right places. This doesn't fix all the tests that I've sent to piglit, need to add int paths to go alongside the uint paths that don't go via float to fix it up properly. I'm not sure how much of that could be templated/shared will have a look once I write it the long way. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* gallium: implement ARB_conservative_depthMarek Olšák2011-12-105-1/+50
| | | | This adds a new TGSI property to represent the GLSL layout qualifier in TGSI.
* util: Add strings.h include on unicesJosé Fonseca2011-12-091-0/+4
| | | | | Fixes -Wimplicit-function-declaration for ffs with GCC. Spotted/tested by Kai Wasserbäch.
* mesa/st: Don't modify the context draw/read buffers.José Fonseca2011-12-091-64/+0
| | | | | | | | | It sets the wrong values (GL_XXX_LEFT instead of GL_XXX), and no other Mesa driver does this, given that Mesa sets the right draw/read buffers provided the Mesa visual has the doublebuffer flag filled correctly which is the case. Reviewed-by: Brian Paul <[email protected]>
* mesa,intel: use _mesa_image_offset() for PBOsnobled2011-12-082-15/+19
| | | | | | | | This avoids forming invalid pointers needlessly, which even if never dereferenced is undefined behavior. It also makes _mesa_validate_pbo_access() more comprehensible. Reviewed-by: Brian Paul <[email protected]>
* mesa: add _mesa_image_offset()nobled2011-12-082-17/+57
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa/image: assert on bad formatnobled2011-12-081-11/+9
| | | | | | | | | | | | | | | | | NULL as an error indicator is meaningless, since it will return NULL on success anyway if the caller passes in zero as the image's address and asks to calculate the offset of the first pixel. For example, _mesa_validate_pbo_access() does this. This also matches the code in the non-GL_BITMAP codepath, which already has an assert like this. v2: Per Brian Paul's review, remove the function call entirely and tighten the assert to only accept the two formats compatible with GL_BITMAP. They always have one component per pixel. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa/image: delete dead storenobled2011-12-081-7/+0
| | | | | | The return value here is a) always zero, b) never used. Reviewed-by: Brian Paul <[email protected]>
* glsl_to_tgsi: fix a bug in eliminate_dead_code_advanced()Bryan Cain2011-12-081-10/+8
| | | | | | | | | | | | | | | The bug, reported to me by Vadim Girlin on IRC, was causing overzealous elimination of code in parallel if statements such as the following: if (x) { r = false; } if (y) { r = true; } Before this commit, the assignment inside the first if block would be misdetected as dead code and removed.
* llvmpipe: Trim the fragment shader cached based on LLVM IR instruction count.José Fonseca2011-12-086-11/+62
| | | | | | | | | | | | Number of fragment shader variants is not very representative of the memory used by LLVM, neither is number of shader instructions, as often texture sampling constitutes most of the generated code. This change adds an additional trim criteria: least recently used fragment shader variants will be freed until the total number of LLVM IR instruction falls below a specified threshold. Reviewed-by: Brian Paul <[email protected]>
* llvmpipe,draw,gallivm: Ensure we don't walk beyond the end of the shader ↵José Fonseca2011-12-083-5/+18
| | | | | | | | | | | variant list. u_simple_list.h uses a sentinel element, and not a NULL element. So ensure list is not empty when reducing the list of shader variants. Something I noticed while trying to free variants more aggressively. Reviewed-by: Brian Paul <[email protected]>
* swrast: use malloc instead of MAX_WIDTH arrays in glCopyPixels, zoom codeBrian Paul2011-12-082-2/+18
| | | | | Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: use malloc instead of MAX_WIDTH array in glReadPixels()Brian Paul2011-12-081-9/+14
| | | | | Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: use malloc instead of MAX_WIDTH array in _mesa_convert_colors()Brian Paul2011-12-081-1/+7
| | | | | Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: add MAX_PIXEL_BYTES defineBrian Paul2011-12-082-0/+10
| | | | | | | | | In a few places we need to allocate space for some number of generic pixels. Use this new define instead of a magic number like 16 or 4 * sizeof(GLuint). Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: simplify _mesa_remove_renderbuffer()Brian Paul2011-12-081-10/+2
|
* mesa: remove software-based renderbuffer code from core MesaBrian Paul2011-12-082-2039/+0
| | | | | | We're now using the functions that live in swrast. Reviewed-by: Eric Anholt <[email protected]>
* mesa/drivers: use new swrast renderbuffer functionsBrian Paul2011-12-0812-62/+74
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: build new s_renderbuffer.c fileBrian Paul2011-12-082-0/+2
| | | | Reviewed-by: Eric Anholt <[email protected]>
* swrast: remove core renderbuffer functions from s_renderbuffer.[ch]Brian Paul2011-12-082-267/+49
| | | | | | | We'll use the functions that live in main/ Plus, rename the remaining functions with "swrast_" prefix. Reviewed-by: Eric Anholt <[email protected]>
* swrast: add s_renderbuffer.[ch], copied from main/renderbuffer.[ch]Brian Paul2011-12-082-0/+2318
| | | | | | | Copying these files is the first step in moving the software buffer code from main/renderbuffer.c to swrast/s_renderbuffer.c Reviewed-by: Eric Anholt <[email protected]>
* mesa: remove unused functions in depthstencil.cBrian Paul2011-12-082-171/+0
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: make some renderbuffer functions staticBrian Paul2011-12-082-76/+48
| | | | | | | The functions to allocate software color, depth, accum, etc buffers aren't called from anywhere else. Reviewed-by: Eric Anholt <[email protected]>
* swrast: remove dead accum buffer context fieldsBrian Paul2011-12-082-10/+1
|
* mesa: remove dead swrast and state tracker accum buffer codeBrian Paul2011-12-085-1049/+0
|
* mesa: rewrite accum buffer supportBrian Paul2011-12-0810-15/+434
| | | | | | | | | | | | | Implemented in terms of renderbuffer mapping/unmapping and format packing/unpacking functions. The swrast and state tracker code for implementing accumulation are unused and will be removed in the next commit. v2: don't use memcpy() in _mesa_clear_accum_buffer() v3: don't allocate MAX_WIDTH arrays, be more careful with mapping flags Reviewed-by: Eric Anholt <[email protected]>
* mesa: new format_pack.c codeBrian Paul2011-12-084-0/+2596
| | | | | | This code packs colors, Z, stencil, etc. in the various mesa pixel formats. Will be used for things like glDrawPixels, glTexImage, glAccum, etc.