summaryrefslogtreecommitdiffstats
path: root/src/mesa/swrast/s_drawpix.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: remove outdated version lines in commentsRico Schüller2013-06-051-1/+0
| | | | Signed-off-by: Brian Paul <[email protected]>
* mesa: Restore 78-column wrapping of license text in C-style comments.Kenneth Graunke2013-04-231-3/+4
| | | | | | | | | | | | | | The previous commit introduced extra words, breaking the formatting. This text transformation was done automatically via the following shell command: $ git grep 'THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY' | sed 's/:.*$//' | xargs -I {} sh -c 'vim -e -s {} < vimscript where 'vimscript' is a file containing: /THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY/;/\*\// !fmt -w 78 -p ' * ' :wq Reviewed-by: Brian Paul <[email protected]>
* mesa: Add "OR COPYRIGHT HOLDERS" to license text disclaiming liability.Kenneth Graunke2013-04-231-1/+1
| | | | | | | | | | | | | | | This brings the license text in line with the MIT License as published on the Open Source Initiative website: http://opensource.org/licenses/mit-license.php Generated automatically be the following shell command: $ git grep 'THE AUTHORS BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/THE AUTHORS/THE AUTHORS OR COPYRIGHT HOLDERS/' {} This introduces some wrapping issues, to be fixed in the next commit. Reviewed-by: Brian Paul <[email protected]>
* mesa: Change "BRIAN PAUL" to "THE AUTHORS" in license text.Kenneth Graunke2013-04-231-1/+1
| | | | | | | | | | | | | | | | Generated automatically be the following shell command: $ git grep 'BRIAN PAUL BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/BRIAN PAUL/THE AUTHORS/' {} The intention here is to protect all authors, not just Brian Paul. I believe that was already the sensible interpretation, but spelling it out is probably better. More practically, it also prevents people from accidentally copy & pasting the license into a new file which says Brian is not liable when he isn't even one of the authors. Reviewed-by: Brian Paul <[email protected]>
* Replace gl_frag_attrib enum with gl_varying_slot.Paul Berry2013-03-151-2/+2
| | | | | | | | | | | | This patch makes the following search-and-replace changes: gl_frag_attrib -> gl_varying_slot FRAG_ATTRIB_* -> VARYING_SLOT_* FRAG_BIT_* -> VARYING_BIT_* Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Tested-by: Brian Paul <[email protected]>
* Remove useless checks for NULL before freeingMatt Turner2012-09-051-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch has been generated by the following Coccinelle semantic patch: // Remove useless checks for NULL before freeing // // free (NULL) is a no-op, so there is no need to avoid it @@ expression E; @@ + free (E); + E = NULL; - if (unlikely (E != NULL)) { - free(E); ( - E = NULL; | - E = 0; ) ... - } @@ expression E; type T; @@ + free ((T) E); + E = NULL; - if (unlikely (E != NULL)) { - free((T) E); ( - E = NULL; | - E = 0; ) ... - } @@ expression E; @@ + free (E); - if (unlikely (E != NULL)) { - free (E); - } @@ expression E; type T; @@ + free ((T) E); - if (unlikely (E != NULL)) { - free ((T) E); - } Reviewed-by: Brian Paul <[email protected]>
* Don't cast the return value of malloc/reallocMatt Turner2012-09-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch has been generated by the following Coccinelle semantic patch: // Don't cast the return value of malloc/realloc. // // Casting the return value of malloc/realloc only stands to hide // errors. @@ type T; expression E1, E2; @@ - (T) ( _mesa_align_calloc(E1, E2) | _mesa_align_malloc(E1, E2) | calloc(E1, E2) | malloc(E1) | realloc(E1, E2) )
* swrast: define, use SWRAST_MAX_WIDTH/HEIGHTBrian Paul2012-02-241-7/+7
| | | | We'll get rid of MAX_WIDTH, MAX_HEIGHT soon.
* swrast: remove MAX_WIDTH arrays in s_drawpix.cBrian Paul2012-02-241-27/+36
|
* mesa: added swapBytes parameter to _mesa_format_matches_format_and_type()Brian Paul2012-01-271-1/+2
| | | | | | Not actually used yet though. Reviewed-by: Ian Romanick <[email protected]>
* swrast: use swrast_renderbuffer instead of gl_renderbufferBrian Paul2012-01-241-1/+2
|
* mesa: remove gl_renderbuffer:RowStride fieldBrian Paul2012-01-241-1/+1
|
* swrast: remove gl_renderbuffer::DataType check in DrawPixels()Brian Paul2012-01-241-5/+8
| | | | The field will be going away so update this code.
* swrast: rewrite glDrawPixels(GL_DEPTH) with zoomBrian Paul2011-12-241-44/+14
| | | | | | | This gets rid of another renderbuffer->PutRow() call and _DepthBuffer usage. We always work with 32-bit uint Z values now. Reviewed-by: Eric Anholt <[email protected]>
* swrast: refactor/rewrite fast_draw_rgba_pixels()Brian Paul2011-12-241-234/+167
| | | | | | | | | Use Map/UnmapRenderbuffer() for the special, optimized cases we care about. Note that we're dropping some seldom-used cases in the new fast-path code: as CI->RGB conversion and zooming. Reviewed-by: Eric Anholt <[email protected]>
* swrast: move swrast_render_start/finish() call in drawpixels codeBrian Paul2011-12-241-10/+24
| | | | | | | | We don't want to call these functions where we'll be using Map/UnmapRenderbuffer(). So push them further down in the drawpixels cases so that we can switch over to Map/UnmapRenderbuffer() step by step. Reviewed-by: Eric Anholt <[email protected]>
* swrast: new fast_draw_depth_stencil() for glDrawPixels(GL_DEPTH_STENCIL)Brian Paul2011-12-241-16/+40
| | | | | | | | Stop using deprecated renderbuffer PutRow() function. Note that we aren't using Map/UnmapRenderbuffer() yet because this call is inside a swrast_render_start/finish() pair. v2: use _mesa_pack_uint_24_8_depth_stencil_row(), per Eric.
* swrast: remove needless assignment in draw_depth_stencil_pixels()Brian Paul2011-12-241-1/+0
| | | | Reviewed-by: Eric Anholt <[email protected]>
* swrast: Don't do Z24S8 drawpixels fast-paths with Z32_X24S8 input data.Eric Anholt2011-12-141-2/+4
| | | | | | | | | | The cool part was that in the "fbo-depthstencil -drawpixels GL_DEPTH24_STENCIL8 32F_24_8_REV" testcase, the shifting happened to end up with a value awfully close to the expected value, except for every other pixel being 0 (the stencil value, shifted away to nothing). Reviewed-by: Brian Paul <[email protected]>
* mesa: replace GLstencil with GLubyteBrian Paul2011-11-151-6/+4
|
* swrast: Fix fastpaths for glRead/WritePixels(GL_DEPTH_STENCIL)Chad Versace2011-10-181-0/+2
| | | | | | | | | | | | | | | | | | | In some cases, Intel hardware requires that depth and stencil buffers be separate. To accommodate swrast, i965 resorts to hackery that causes a segfault in the fastpaths of draw_depth_stencil_pixels() and read_depth_stencil_pixels(). The hack is that i965 sets framebuffer->Attachment[BUFFER_DEPTH].Renderbuffer and framebuffer->Attachment[BUFFER_STENCIL].Renderbuffer to a dummy renderbuffer for which the GetRow accessors and friends are null. The real buffers are located at framebuffer->_DepthBuffer and framebuffer->_Stencilbuffer. To fix the segault, this patch skips the fastpath if framebuffer->Attachment[BUFFER_DEPTH].Renderbuffer->GetRow is null. Note: This is a candidate for the 7.11 branch. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* swrast: Remove redundant term in logic expressionChad Versace2011-10-151-1/+0
| | | | | | | | Fix is in {read,draw}_depth_stencil_pixels(). If depthRb == stencilRb, then it is redundant to check depthRb->x *and* stencilRb->x. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* swrast: Fix fastpaths in glRead/WritePixels(GL_DEPTH_STENCIL)Chad Versace2011-10-151-0/+2
| | | | | | | | | | | | | | | | | | | | For glReadPixels, the user supplied pixels have format GL_UNSIGNED_INT_24_8. But, when the depthstencil buffer's format was MESA_FORMAT_S8_Z24, the fastpath read from the buffer without reordering the depth and stencil bits. To fix this, this patch just skips the fastpath when the format is not MESA_FORMAT_Z24_S8. The problem and fix for glWritePixels is analagous. Fixes the Piglit tests below on i965/gen6 and causes no regressions. general/depthstencil-default_fb-drawpixels-24_8 general/depthstencil-default_fb-readpixels-24_8 EXT_packed_depth_stencil/fbo-depthstencil-GL_DEPTH24_STENCIL8-drawpixels-24_8 EXT_packed_depth_stencil/fbo-depthstencil-GL_DEPTH24_STENCIL8-readpixels-24_8 Note: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* swrast: Use GL_STENCIL_INDEX for address calculationsIan Romanick2011-09-061-1/+1
| | | | | | | | | GL_COLOR_INDEX produced the same result (because GL_BITMAP is always used for stencil glDrawPixels), but it was confusing to read. I spent about 15 minutes wondering, "WTF?" Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: move PBO-related functions into a new fileBrian Paul2011-02-281-0/+1
|
* swrast: fix indentationBrian Paul2010-12-031-6/+6
|
* swrast: allow GL_RG format in glDrawPixels()Brian Paul2010-12-031-18/+6
| | | | | | | Restructure the switch statement to avoid having to add additional color formats in the future. Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32086
* mesa: split up the image.c fileBrian Paul2010-10-231-1/+3
| | | | | | New files: pack.c - image/row packing/unpacking functions pixeltransfer.c - pixel scale/bias/lookup functions
* swrast: Print out format on unexpected failure in _swrast_DrawPixels.Vinson Lee2010-10-201-1/+1
|
* Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg2010-10-131-6/+6
|
* mesa: Remove EXT_convolution.Eric Anholt2010-09-231-57/+0
| | | | More optional code.
* mesa: Remove EXT_histogram.Eric Anholt2010-09-231-20/+15
| | | | This has always been optional, and not useful.
* swrast: Remove support for DrawPixels into a color-index bufferIan Romanick2010-03-031-79/+2
| | | | Signed-off-by: Ian Romanick <[email protected]>
* Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg2010-02-191-5/+5
|
* Remove _mesa_memcpy in favor of plain memcpy.Kenneth Graunke2010-02-191-1/+1
| | | | This may break the SUNOS4 build, but it's no longer relevant.
* Merge branch 'mesa_7_7_branch'Jakob Bornecrantz2010-01-141-1/+0
|\ | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/auxiliary/util/Makefile src/gallium/drivers/r300/r300_state_derived.c
| * swrast: Remove unnecessary header from s_drawpix.c.Vinson Lee2010-01-131-1/+0
| |
* | swrast: add check for conditional renderingBrian Paul2009-12-311-0/+4
|/
* swrast: wrap comment to 80 columns, remove dead codeBrian Paul2009-09-031-57/+6
|
* mesa: consolidate PBO map/unmap helpersBrian Paul2009-09-031-2/+2
| | | | | | | Instead of _mesa_map_readpix_pbo() use _mesa_map_pbo_source(). Instead of _mesa_map_drawpix_pbo() and _mesa_map_bitmap_pbo() use _mesa_map_pbo_dest().
* swrast: Set vp_override flag during DrawPixelsNicolai Haehnle2009-02-181-0/+11
| | | | | | | | | Obviously, the color of fragments produced by DrawPixels is not constant, even if the current vertex array / vertex program state indicates that the color for normal rendering will be constant. Therefore, we need to override certain optimisations that have been added to texenvprogram.c Signed-off-by: Nicolai Haehnle <[email protected]>
* swrast: fix typo: s/drapix/drawpix/Brian Paul2009-02-091-1/+1
|
* swrast: replace RENDER_START/FINISH macros with inline functionsBrian Paul2009-01-301-5/+5
|
* mesa: remove unneeded s_drawpix.h headerBrian2008-09-181-1/+0
|
* mesa: prefix a bunch of #include lines with "main/".Brian Paul2008-09-181-9/+9
| | | | | This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
* mesa: Call RENDER_FINISH on the zero pixel case.Xiang, Haihao2008-05-081-1/+3
|
* Refactor PBO validate/map code.Brian2008-03-211-2/+1
| | | | We always need to do PBO validation, so do that in core Mesa before calling driver routine.
* add a number of PBO validate/map/unmap functionsBrian2008-03-211-27/+5
| | | | Helper functions for (some) drivers, including swrast.
* Fix some issues with glDrawBuffer(GL_NONE), bug 14198Brian2008-01-221-1/+6
| | | | | Set _ColorDrawBuffers[0] = NULL if no renderbuffers enabled. Check that _ColorDrawBuffers[0] is non-null before dereferencing in a few places.
* Simplify ctx->_NumColorDrawBuffers, _ColorDrawBuffers and fix bug 13835.Brian2008-01-061-3/+3
| | | | | | | | | | | These fields are no longer indexed by shader output. Now, we just have a simple array of renderbuffer pointers. If the shader writes to gl_FragData[i], send those colors to the N _ColorDrawBuffers. Otherwise, replicate the single gl_FragColor (or the fixed-function color) to the N _ColorDrawBuffers. A few more changes and simplifications can follow from this...