summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* st/vega: Add support for per-channel alpha.Chia-I Wu2010-12-044-41/+140
| | | | | | | | | | Drawing an image in VG_DRAW_IMAGE_STENCIL mode produces per-channel alpha for use in blending. Add a new shader stage to produce and save it in TEMP[1]. For other modes that do not need per-channel alpha, the stage does MOV TEMP[1], TEMP[0].wwww
* st/vega: Move masking after blending.Chia-I Wu2010-12-044-58/+58
| | | | | Masking should happen after blending. The shader is not entirely correct, but leave it as is for now.
* st/vega: Refactor blend shaders.Chia-I Wu2010-12-041-62/+112
| | | | | | | | | Add a helper function, blend_generic, that supports all blend modes and per-channel alpha. Make other blend generators a wrapper to it. Both the old and new code expects premultiplied colors, yet the input is non-premultiplied. Per-channel alpha is also not used for stencil image. They still need to be fixed.
* st/vega: Add some comments to pipeline shaders.Chia-I Wu2010-12-041-2/+11
|
* st/mesa: new comment about updating state varsBrian Paul2010-12-031-0/+5
|
* mesa: update comments, remove dead codeBrian Paul2010-12-031-3/+3
|
* mesa: remove unneeded castBrian Paul2010-12-031-1/+1
|
* mesa: make glGet*(GL_NONE) generate GL_INVALID_ENUMBrian Paul2010-12-031-3/+5
| | | | | | | | | In find_value() check if we've hit the 0th/invalid entry before checking if the pname matches. Fixes http://bugs.freedesktop.org/show_bug.cgi?id=31987 NOTE: This is a candidate for the 7.9 branch.
* swrast: restructure some glReadPixels() codeBrian Paul2010-12-031-28/+25
|
* swrast: accept GL_RG in glReadPixels()Brian Paul2010-12-031-16/+3
| | | | Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32088
* ir_print_visitor: Print out constant structure values.Kenneth Graunke2010-12-031-0/+9
| | | | In the form (constant type ((field1 value) (field2 value) ...))
* 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: consolidate some compiler -D flagsBrian Paul2010-12-032-5/+0
| | | | | -D__STDC_CONSTANT_MACROS and -D__STDC_LIMIT_MACROS are only needed for LLVM build.
* r300g: one more r500_index_bias_supported leftoverMarek Olšák2010-12-031-2/+1
|
* r300g: add capability bit index_bias_supportedMarek Olšák2010-12-036-12/+10
| | | | .. instead of calling r500_index_bias_supported(..) every draw call.
* r600g: more indentation fix + warning silencing + dead code removalJerome Glisse2010-12-035-91/+14
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: indentation fixJerome Glisse2010-12-037-105/+101
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: update polygon offset only when rasterizer or zbuffer changeJerome Glisse2010-12-034-80/+114
| | | | | | Aim is to build as little state as possible in draw functions. Signed-off-by: Jerome Glisse <[email protected]>
* llvmpipe: fix broken stencil writemaskBrian Paul2010-12-031-1/+1
| | | | Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32070
* r600g: set address of pop instructions to next instructionFabian Bieler2010-12-031-0/+1
|
* r600g: dump raw shader output for debuggingJerome Glisse2010-12-033-0/+27
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* mesa: return GL_FRAMEBUFFER_DEFAULT as FBO attachment typeBrian Paul2010-12-031-1/+1
| | | | | | | | | If querying the default/window-system FBO's attachment type, return GL_FRAMEBUFFER_DEFAULT (per the GL_ARB_framebuffer_object spec). See http://bugs.freedesktop.org/show_bug.cgi?id=31947 NOTE: This is a candidate for the 7.9 branch.
* mesa: fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME queryBrian Paul2010-12-031-2/+2
| | | | | | | | | | | | Return 0 instead of generating an error. See http://bugs.freedesktop.org/show_bug.cgi?id=30993 Note that piglit fbo-getframebufferattachmentparameter-01 still does not pass. But Mesa behaves the same as the NVIDIA driver in this case. Perhaps the test is incorrect. NOTE: This is a candidate for the 7.9 branch.
* gallivm: fix null builder pointersBrian Paul2010-12-031-3/+2
|
* st/vega: Add a missing break.Chia-I Wu2010-12-031-0/+1
|
* st/vega: Move vertex transformation to shader.Chia-I Wu2010-12-038-54/+116
| | | | | | | It was done in path-to-polygon conversion. That meant that the results were invalidated when the transformation was modified, and CPU had to recreate the vertex buffer with new vertices. It could be a performance hit for apps that animate.
* st/vega: Set pipe_resource::array_size to 1.Chia-I Wu2010-12-031-0/+1
|
* st/egl: Set pipe_resource::array_size to 1.Chia-I Wu2010-12-031-0/+1
|
* r300g: do not remove unused constants if we are not near the limitMarek Olšák2010-12-032-2/+9
|
* r300g: fix pointer arithmetic with void* in transfer_inline_writeMarek Olšák2010-12-032-3/+3
|
* mesa, st/mesa: fix gl_FragCoord with FBOs in GalliumMarek Olšák2010-12-033-15/+51
| | | | | | | | | | | | | | | | | | | | | | | | | gl_FragCoord.y needs to be flipped upside down if a FBO is bound. This fixes: - piglit/fbo-fragcoord - https://bugs.freedesktop.org/show_bug.cgi?id=29420 Here I add a new program state STATE_FB_WPOS_Y_TRANSFORM, which is set based on whether a FBO is bound. The state contains a pair of transformations. It can be either (XY=identity, ZW=transformY) if a FBO is bound, or (XY=transformY, ZW=identity) otherwise, where identity = (1, 0), transformY = (-1, height-1). A classic driver (or st/mesa) may, based on some other state, choose whether to use XY or ZW, thus negate the conditional "if (is a FBO bound) ...". The reason for this is that a Gallium driver is allowed to only support WPOS relative to either the lower left or the upper left corner, so we must flip the Y axis accordingly again. (the "invert" parameter in emit_wpos_inversion) NOTE: This is a candidate for the 7.9 branch. Signed-off-by: Marek Olšák <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* r300g: implement simple transfer_inline_write for buffersMarek Olšák2010-12-031-10/+38
| | | | | r600g might need something like that as well. This speeds up constant buffer upload a bit.
* r300g: use internal BO handle for add_buffer and write_relocMarek Olšák2010-12-0313-49/+77
| | | | | | | Small perf improvement in ipers. radeon_drm_get_cs_handle is exactly what this commit tries to avoid in every write_reloc.
* gallivm/llvmpipe: remove lp_build_context::builderBrian Paul2010-12-0213-278/+359
| | | | The field was redundant. Use the gallivm->builder value instead.
* mesa: replace more MAX_WIDTH stack allocations with heap allocationsBrian Paul2010-12-022-38/+111
|
* r300g: fix buildMarek Olšák2010-12-031-1/+1
|
* r300g: Drop unnecessary castnobled2010-12-031-1/+1
|
* r300g: Abort if draw_create() failsnobled2010-12-031-0/+2
| | | | The other drivers need to be updated to do this, too.
* r300g: Abort if atom allocations failnobled2010-12-031-18/+28
|
* nv50: silence some unknown get_param warningsBen Skeggs2010-12-031-0/+4
| | | | Signed-off-by: Ben Skeggs <[email protected]>
* st/mesa: avoid large stack allocations in readpixels codeBrian Paul2010-12-021-1/+10
|
* swrast: avoid large stack allocations in tex combine codeBrian Paul2010-12-021-6/+39
|
* swrast: avoid large stack allocations in blend codeBrian Paul2010-12-021-1/+13
|
* mesa: replace large/MAX_WIDTH stack allocations with heap allocationsBrian Paul2010-12-021-4/+34
|
* mesa: replace large/MAX_WIDTH stack allocations with heap allocationsBrian Paul2010-12-021-3/+24
|
* r600g: bump texture/cb limits appropriately for evergreenAlex Deucher2010-12-021-2/+14
|
* r600c: bump texture limits to hw limitsAlex Deucher2010-12-021-2/+7
|
* gallium/util: add states relevant to geometry shadersZack Rusin2010-12-021-0/+4
|
* mesa: Temporary hack to prevent stack overflow on windowsJosé Fonseca2010-12-021-0/+17
| | | | | e.g. st_readpixels is trying to alloca() an huge ammount of memory from the stack.