summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* gallium/noop: Add prototype for noop_init_state_functions.Vinson Lee2010-12-041-0/+2
| | | | | | Silences this GCC warning. noop_state.c:247: warning: no previous prototype for 'noop_init_state_functions'
* i965: Fix compile warning about missing opcodes.Eric Anholt2010-12-041-0/+5
|
* i965: Update gen6 SF state on fragment program change too.Eric Anholt2010-12-041-1/+3
| | | | | SF state depends on what inputs there are to the fragment program, not just the outputs of the VS.
* i965: Update gen6 WM state on compiled program change, not just FP change.Eric Anholt2010-12-041-1/+3
|
* intel: Add an env var override to execute for a different GPU revision.Eric Anholt2010-12-044-9/+15
| | | | | | | Sometimes I'm on the train and want to just read what's generated under INTEL_DEBUG=vs,wm for some code on another generation. Or, for the next gen enablement we'll want to dump aub files before we have the actual hardware. This will let us do that.
* st/vega: Fix pipe blend state for various blend modes.Chia-I Wu2010-12-043-60/+76
| | | | | | | | | rgb_src_factor and rgb_dst_factor should be PIPE_BLENDFACTOR_ONE for VG_BLEND_SRC_IN and VG_BLEND_DST_IN respectively. VG_BLEND_SRC_OVER can be supported only when the fb has no alpha channel. VG_BLEND_DST_OVER and VG_BLEND_ADDITIVE have to be supported with a shader. Note that Porter-Duff blending rules assume premultiplied alpha.
* st/vega: Add blend shaders for all blend modes.Chia-I Wu2010-12-044-72/+145
|
* st/vega: Fix VG_BLEND_MULTIPLY.Chia-I Wu2010-12-041-1/+1
| | | | | TEMP[1].w will be needed for OUT.w just below. Use TEMP[0] to store the intermediate value.
* mesa: Clean up header file inclusion in texobj.h.Vinson Lee2010-12-041-1/+2
|
* mesa: Clean up header file inclusion in texgetimage.h.Vinson Lee2010-12-041-1/+5
|
* mesa: Clean up header file inclusion in texformat.h.Vinson Lee2010-12-041-1/+1
|
* mesa: Clean up header file inclusion in texenvprogram.h.Vinson Lee2010-12-041-1/+1
|
* mesa: Clean up header file inclusion in texcompress_s3tc.h.Vinson Lee2010-12-041-1/+5
|
* st/vega: Silence uninitialized variable warning.Vinson Lee2010-12-041-0/+1
| | | | | | Fixes this GCC warning. api_filters.c: In function 'execute_filter': api_filters.c:184: warning: 'tex_wrap' may be used uninitialized in this function
* mesa: Clean up header file inclusion in texcompress.h.Vinson Lee2010-12-041-1/+4
|
* st/vega: Blending should use premultiplied alpha.Chia-I Wu2010-12-041-8/+72
| | | | | | Convert color values to and back from premultiplied form for blending. Finally the rendering result of the blend demo looks much closer to that of the reference implementation.
* 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-033-7/+3
| | | | | -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.