summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-12-04st/vega: Add support for per-channel alpha.Chia-I Wu
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
2010-12-04st/vega: Move masking after blending.Chia-I Wu
Masking should happen after blending. The shader is not entirely correct, but leave it as is for now.
2010-12-04st/vega: Refactor blend shaders.Chia-I Wu
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.
2010-12-04st/vega: Add some comments to pipeline shaders.Chia-I Wu
2010-12-03st/mesa: new comment about updating state varsBrian Paul
2010-12-03mesa: update comments, remove dead codeBrian Paul
2010-12-03mesa: remove unneeded castBrian Paul
2010-12-03mesa: make glGet*(GL_NONE) generate GL_INVALID_ENUMBrian Paul
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.
2010-12-03swrast: restructure some glReadPixels() codeBrian Paul
2010-12-03swrast: accept GL_RG in glReadPixels()Brian Paul
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32088
2010-12-03ir_print_visitor: Print out constant structure values.Kenneth Graunke
In the form (constant type ((field1 value) (field2 value) ...))
2010-12-03swrast: fix indentationBrian Paul
2010-12-03swrast: allow GL_RG format in glDrawPixels()Brian Paul
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
2010-12-03mesa: consolidate some compiler -D flagsBrian Paul
-D__STDC_CONSTANT_MACROS and -D__STDC_LIMIT_MACROS are only needed for LLVM build.
2010-12-03r300g: one more r500_index_bias_supported leftoverMarek Olšák
2010-12-03r300g: add capability bit index_bias_supportedMarek Olšák
.. instead of calling r500_index_bias_supported(..) every draw call.
2010-12-03r600g: more indentation fix + warning silencing + dead code removalJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-03r600g: indentation fixJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-03r600g: update polygon offset only when rasterizer or zbuffer changeJerome Glisse
Aim is to build as little state as possible in draw functions. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-03llvmpipe: fix broken stencil writemaskBrian Paul
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=32070
2010-12-03r600g: set address of pop instructions to next instructionFabian Bieler
2010-12-03r600g: dump raw shader output for debuggingJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-12-03mesa: return GL_FRAMEBUFFER_DEFAULT as FBO attachment typeBrian Paul
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.
2010-12-03mesa: fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME queryBrian Paul
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.
2010-12-03gallivm: fix null builder pointersBrian Paul
2010-12-03st/vega: Add a missing break.Chia-I Wu
2010-12-03st/vega: Move vertex transformation to shader.Chia-I Wu
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.
2010-12-03st/vega: Set pipe_resource::array_size to 1.Chia-I Wu
2010-12-03st/egl: Set pipe_resource::array_size to 1.Chia-I Wu
2010-12-03r300g: do not remove unused constants if we are not near the limitMarek Olšák
2010-12-03r300g: fix pointer arithmetic with void* in transfer_inline_writeMarek Olšák
2010-12-03mesa, st/mesa: fix gl_FragCoord with FBOs in GalliumMarek Olšák
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 <maraeo@gmail.com> Signed-off-by: Brian Paul <brianp@vmware.com>
2010-12-03r300g: implement simple transfer_inline_write for buffersMarek Olšák
r600g might need something like that as well. This speeds up constant buffer upload a bit.
2010-12-03r300g: use internal BO handle for add_buffer and write_relocMarek Olšák
Small perf improvement in ipers. radeon_drm_get_cs_handle is exactly what this commit tries to avoid in every write_reloc.
2010-12-02gallivm/llvmpipe: remove lp_build_context::builderBrian Paul
The field was redundant. Use the gallivm->builder value instead.
2010-12-02mesa: replace more MAX_WIDTH stack allocations with heap allocationsBrian Paul
2010-12-03r300g: fix buildMarek Olšák
2010-12-03r300g: Drop unnecessary castnobled
2010-12-03r300g: Abort if draw_create() failsnobled
The other drivers need to be updated to do this, too.
2010-12-03r300g: Abort if atom allocations failnobled
2010-12-03nv50: silence some unknown get_param warningsBen Skeggs
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-02st/mesa: avoid large stack allocations in readpixels codeBrian Paul
2010-12-02swrast: avoid large stack allocations in tex combine codeBrian Paul
2010-12-02swrast: avoid large stack allocations in blend codeBrian Paul
2010-12-02mesa: replace large/MAX_WIDTH stack allocations with heap allocationsBrian Paul
2010-12-02mesa: replace large/MAX_WIDTH stack allocations with heap allocationsBrian Paul
2010-12-02r600g: bump texture/cb limits appropriately for evergreenAlex Deucher
2010-12-02r600c: bump texture limits to hw limitsAlex Deucher
2010-12-02gallium/util: add states relevant to geometry shadersZack Rusin
2010-12-02mesa: Temporary hack to prevent stack overflow on windowsJosé Fonseca
e.g. st_readpixels is trying to alloca() an huge ammount of memory from the stack.