aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Fix assertions for block size handling in glCompressedTexSubImage2D.Eric Anholt2011-12-021-2/+2
| | | | | | | | | | | Anything of less than (bw, bh) size is possible when you consider rectangular textures, and this code is (now) safe for those. Even for power-of-two textures, width could be 4 for FXT1 while not being aligned to block size. Fixes piglit compressedteximage GL_COMPRESSED_RGB_FXT1_3DFX Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix glCompressedTexSubImage (and non-Sub) for height == 2 or 1.Eric Anholt2011-12-021-1/+1
| | | | | | | | | | Generally this code works with width and height aligned to compressed blocks, but at the 2x2 and 1x1 levels of a square texture (or height < bh in general), we were skipping uploading our single row of blocks. Fixes piglit compressedteximage GL_COMPRESSED_RGBA_S3TC_DXT5_EXT. Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix glCompressedTexImage when dstRowStride != srcRowStride.Eric Anholt2011-12-021-28/+9
| | | | | | | | | | | | | | | | | | | | | | Since the MapTextureImage changes on Intel, nwn had corruption in the scrollbar at the load game menu, and corrupted ground textures in the starting zone. Heroes of Newerth's intro screen was also thoroughly garbled. A new piglit test "compressedteximage" was created to regression test this. The issue was this code now seeing dstRowStride aligned to hardware requirements instead of a temporary buffer that gets uploaded to hardware later. The existing code was just trying to memcpy srcRowStride * height / bh, while the glCompressedTexSubImage2D() storage code nearby did the correct walking by blockheight rows at a time. Just reuse the subimage upload instead of duplicating that logic. v2: Update comment at the top of the function (suggestion by Joel Forsberg) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41451 Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* nv50/nvc0: fix crash when channel allocation failsMarcin Slusarz2011-12-022-2/+4
|
* mesa: add casts to fix unpack_SIGNED_GR1616()Brian Paul2011-12-021-2/+2
| | | | We were passing unsigned values to the macro before.
* mesa: remove unreachable code in _mesa_unpack_color_span_ubyte()Brian Paul2011-12-021-64/+0
| | | | | | | | We checked if srcType == GL_UNSIGNED_BYTE earlier so there was no way to reach this code. This was left-over code from the GLchan removal work. Reviewed-by: José Fonseca <[email protected]>
* vbo: remove unreachable _mesa_error() callBrian Paul2011-12-021-3/+0
| | | | | | | If mode is not GL_POINT/LINE/FILL we'll have already reported the error earlier in the function and returned so we can never get here. Reviewed-by: José Fonseca <[email protected]>
* mesa: move _mesa_error() call in compressedteximage()Brian Paul2011-12-021-7/+2
| | | | | | | | We shouldn't call _mesa_error() if the target is a proxy texture. Errors are handled later in the function. Fixes a Coverity warning. Reviewed-by: José Fonseca <[email protected]>
* mesa: fix potential mem leak in generate_mipmap_compressed()Brian Paul2011-12-021-0/+1
| | | | | | Fixes a coverity warning. Reviewed-by: Vinson Lee <[email protected]>
* glsl: return visit_stop in ir_validate::visit_enter() to silence warningBrian Paul2011-12-021-0/+1
|
* mesa: fix some minor texstore commentsBrian Paul2011-12-021-3/+3
| | | | For the texsubimage commands, we're not mapping the whole image/region.
* mesa: rename MESA_FORMAT_RG88_REV to MESA_FORMAT_RG88Brian Paul2011-12-027-19/+19
| | | | R is in the high byte, G in the low byte.
* mesa: rename MESA_FORMAT_RG88 to MESA_FORMAT_GR88Brian Paul2011-12-0212-30/+30
| | | | | To better reflect the component ordering and be consistent with other format names.
* mesa: fix unpacking of RG88_REV texelsBrian Paul2011-12-022-5/+5
| | | | R should be in the high byte and G in the low byte for this format.
* i965: Make gen6_resolve_implied_move a no-op for MRF sources.Kenneth Graunke2011-12-021-0/+3
| | | | | | | | | | Attempting to move an MRF to a MRF is not only pointless, it will fail because MRFs are read-only, resulting in garbage in your register. If we already set up a MRF source, there's nothing to resolve anyway. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Renumber the tnl attributes to match VERT_ATTRIB*.Mathias Fröhlich2011-12-021-29/+29
| | | | | | | | | | | | | Also renumber the tnl modules vertex attributes to match the renumbered VERT_ATTRIB_* values. This should fix https://bugs.freedesktop.org/show_bug.cgi?id=43353 Signed-off-by: Mathias Froehlich <[email protected]> Tested-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Extend BITSET64_*_RANGE to work on arbitrary ranges.Mathias Fröhlich2011-12-021-3/+18
| | | | | | | | | | The BITSET64_{TEST,SET,CLEAR}_RANGE macros only work on ranges wither in the lower 32 or in the upper 32 bits of the bitset. This change extends these macros to work on arbitrary ranges possibly crossing the bitset word boundary. Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i915g: Implement GL_STREAM_* for textures by using untiled textures.Stéphane Marchesin2011-12-011-1/+1
|
* i915g: Add unsupported PIPE_SHADER_CAP_OUTPUT_READ to silence warnings.Stéphane Marchesin2011-12-011-0/+2
|
* docs: list GL_OES_compressed_ETC1_RGB8_texture in 7.12 release notesChia-I Wu2011-12-021-0/+1
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/mesa: add support for GL_OES_compressed_ETC1_RGB8_textureChia-I Wu2011-12-022-0/+20
| | | | | | | Have st/mesa recognize MESA_FORMAT_ETC1_RGB8 then we are good to advertise the extension. Reviewed-by: Brian Paul <[email protected]>
* gallium: add PIPE_FORMAT_ETC1_RGB8Chia-I Wu2011-12-028-2/+165
| | | | | | | The format is defined by GL_OES_compressed_ETC1_RGB8_texture. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
* mesa: add support for GL_OES_compressed_ETC1_RGB8_textureChia-I Wu2011-12-0213-0/+130
| | | | | | | | | | | Add support for GL_OES_compressed_ETC1_RGB8_texture to core mesa. There is no driver support yet. Unlike desktop GL compressed texture formats, GLES compressed texture formats usually can only be used with glCompressedTexImage2D. All other gl*Tex*Image* functions are updated to check for that. Reviewed-by: Brian Paul <[email protected]>
* mesa: add ETC1 decoding routinesChia-I Wu2011-12-025-0/+249
| | | | | | | The format is defined by GL_OES_compressed_ETC1_RGB8_texture. These routines will be used in the following commit. Reviewed-by: Brian Paul <[email protected]>
* glapi: regenerate files for GL_OES_compressed_ETC1_RGB8_textureChia-I Wu2011-12-021-3035/+3038
| | | | Reviewed-by: Brian Paul <[email protected]>
* glapi: add GL_OES_compressed_ETC1_RGB8_texture for GLESChia-I Wu2011-12-021-0/+4
| | | | Reviewed-by: Brian Paul <[email protected]>
* swrast: Fix signed/unsigned problems with negative strides.Mathias Fröhlich2011-12-011-2/+2
| | | | | | | | | | In swrast_map_renderbuffer negative strides lead to render buffer map pointers that are off by 2^32. Make sure that intermediate negative values are not converted to an unsigned. Signed-off-by: Mathias Froehlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* u_vbuf: Silence uninitialized variable warnings.Vinson Lee2011-12-011-0/+2
| | | | | | | | | | Fixes these GCC warnings. u_vbuf.c: In function ‘u_vbuf_draw_begin’: u_vbuf.c:839:20: warning: ‘max_index’ may be used uninitialized in this function [-Wuninitialized] u_vbuf.c:838:20: warning: ‘min_index’ may be used uninitialized in this function [-Wuninitialized] Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* r600g: add some new pci idsAlex Deucher2011-12-011-0/+8
| | | | | | Note: this is a candidate for the stable branches. Signed-off-by: Alex Deucher <[email protected]>
* mesa: fix unpack_ARGB1555_REV()Brian Paul2011-12-011-4/+5
| | | | | | | | We weren't doing the necessary byte swap. v2: use same arithmetic as unpack_ARGB1555() to be consistent. Reviewed-by: Michel Dänzer <[email protected]>
* mesa: fix indentation in attrib.cBrian Paul2011-11-301-1/+1
|
* i965/fs: Fix regression in fbo-alphatest-nocolor.Eric Anholt2011-11-301-1/+1
| | | | | | | | | | In the refactor for handling user-defined out params, we failed to set up the new color output tracking when there was no color drawbuffer in place but alpha testing was on. Just always set up at least one when handling gl_FragColor, since we won't make use of its value unless we need to. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42806
* i965/fs: Make register file enum 0 be the undefined register file.Eric Anholt2011-11-302-8/+25
| | | | | | | | | | In 6d874d0ee18b3694c49e0206fa519bd8b746ec24, I checked whether a register that had been stored was BAD_FILE (as opposed to a legitimate GRF), but actually the unset register was ARF NULL because it had been memset to 0. Finding BAD_FILE for unset values in debugging was my intention with that file, so make it the case more often by rearranging the enum. There was only one place we relied on the magic enum register_file to hardware register file correspondance anyway.
* i965: Don't perform the precompile on fragment shaders by default.Eric Anholt2011-11-304-2/+10
| | | | | | | | | | | | | | | | It is useful to have this option for shader-db, and it was also good at the time where we were rejecting shaders due to various internal limits we hadn't supported yet. However, at this point the precompile step takes extra time (since not all NOS is known at link time) and spews misleading debug in the common case of debugging a real app. This is left in place for VS, where we still have a couple of codegen failure paths that result in link failure through precompile. Those need to be fixed. shader-db can still get at the debug info it wants using "shader_precompile=true" driconf option. Long term, we can probably build a good-enough app for shader-db to trigger real codegen.
* gallium/failover: Remove the deprecated module.Kai Wasserbäch2011-11-3015-1207/+12
| | | | | Signed-off-by: Kai Wasserbäch <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* st/mesa: fix indentationBrian Paul2011-11-301-1/+1
|
* mesa: use _mesa_is_bufferobj() in update_array()Brian Paul2011-11-301-1/+1
|
* mesa: use Elements() macro in program printing codeBrian Paul2011-11-301-4/+4
|
* mesa: fix signed/unsigned comparison warningBrian Paul2011-11-301-1/+1
|
* mesa: fix MESA_FORMAT_RG88 format match testBrian Paul2011-11-301-1/+1
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: fix printf format warning in _mesa_fprint_program_parameters()Brian Paul2011-11-301-2/+2
|
* tnl: s/INLINE/inline/Brian Paul2011-11-302-4/+4
|
* mesa: regenerated dispatch.h (s/INLINE/inline/)Brian Paul2011-11-301-1946/+1946
|
* glapi: s/INLINE/inline/ for dispatch.h fileBrian Paul2011-11-301-2/+2
|
* swrast: use STATIC_ASSERT to make sure texfetch table isn't missing entriesBrian Paul2011-11-301-1/+2
| | | | | | | When new MESA_FORMAT_x enums are added we need to add a new entry in the table of texture fetch functions. In the past this has been missed if swrast isn't actually tested. Using a static assertion should help with that.
* mesa: add STATIC_ASSERT() macro for compile-time assertionsBrian Paul2011-11-301-0/+12
| | | | | | | | | This can be used to check that tables have the right number of entries, etc. at compile-time. This will hopefully catch things that are missed if particular drivers aren't tested, for example. v2: Simplify the macro to omit the extra line number info (the compiler already indicates the line number). And wrap the macro for readability.
* mesa: access pixels as GLushort in unpack_SL8()Brian Paul2011-11-301-3/+3
| | | | | Per the format comments and the texstore code, use a GLushort to access the pixel. The code was OK as-is on little endian machines.
* mesa: Make _mesa_is_stencil_format() consistent with _mesa_is_depth_format().Eric Anholt2011-11-291-1/+0
| | | | | | | | | | | | | | | | | There was only one consumer of this API, meta.c, which was intending to ask "is this format just stencil index (and nothing else)?". Instead, if one tried to glDrawPixels of GL_DEPTH_STENCIL-type formats, it would just try to draw the stencil parts. Nothing good came of this. This function looks rather silly at this point, but I'm leaving it in place to be the obvious parallel API to _mesa_is_depth_format(). Note that if you want the old behavior, you should use it as (_mesa_is_stencil_format() || _mesa_is_depthstencil_format()) like is commonly done for depth-related tests. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix the datatype of GL_DEPTH32F_STENCIL8's depth channel.Eric Anholt2011-11-291-1/+4
| | | | | | | | | | | | | | | | | Asking for the datatype of MESA_FORMAT_Z32_FLOAT_X24S8 is a bit funny -- there's a float depth channel, and a stencil channel that doesn't have a particular GLenum associated with its type, so what's the correct response? Because there is no query for stencil, just make this format's datatype be that of the depth channel. It fixes the depth query (and thus a failure in piglit gl-3.0-required-sized-formats), and none of the other consumers of the _mesa_get_format_datatype() API care. v2: Add a comment for why the DataType is this way for this format. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Always handle GL_DEPTH_TEXTURE_MODE through the shader.Eric Anholt2011-11-292-32/+30
| | | | | | | | | | | | We were already doing it through the shader (layered underneath GL_EXT_texture_swizzle) in the shadow compare case. This avoids having per-format logic for switching out the surface format dependent on the depth mode. v2: Also do the swizzling for DEPTH_STENCIL. oops. Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>