summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r600g: add support for missing colorbuffer formatsMarek Olšák2012-03-052-2/+158
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: remove support for SCALED colorbuffer formatsMarek Olšák2012-03-052-34/+0
| | | | | | | | Unused by the current stack and APIs, therefore untestable. It was used to facilitate the transition to integers. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: permit blitting between textures with STREAM and STAGING usageMarek Olšák2012-03-051-8/+1
| | | | | | | | Eventually I'd like to make every format blittable, so that the function can go away. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: fix and improve rasterizer discard for r600-r700Marek Olšák2012-03-052-6/+15
| | | | | | | | | | | | For polygons, we have been using face culling with success, but that doesn't work for points and lines. Setting the point size and line width to 0 fixes it. Also improve it even more by setting SCREEN_SCISSOR to a zero area. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework rasterizer discard for evergreenMarek Olšák2012-03-055-16/+46
| | | | | | | | | | | Implement it right using STRMOUT_CONFIG.RAST_STREAM. This fixes rasterizer discard with points and lines. This also adds another derived state. It's a combination of rasterizer discard and streamout enable. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: make some scissor regs invariant on r600-r700Marek Olšák2012-03-052-16/+8
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: make some scissor regs invariant on evergreenMarek Olšák2012-03-052-22/+16
| | | | | | | We only need one scissor for the framebuffer. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework scissor for r600-r700Marek Olšák2012-03-056-46/+72
| | | | | | | | | | | | | We must use VPORT_SCISSOR, because that's the only one we can use for multiple scissor rectangles in ARB_viewport_array. R700 can use the VPORT_SCISSOR_ENABLE bit, but R600 doesn't have that and must emit a 8192x8192 rectangle if scissor is disabled. This commit also cleanups magic numbers in create_rs_state. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: rework scissor for evergreenMarek Olšák2012-03-053-71/+31
| | | | | | | | VPORT_SCISSOR is the OpenGL scissor. How do I know? Because there are 16 of them just like GL4.1 has multiple scissor rectangles. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: remove obsolete todo commentsMarek Olšák2012-03-059-32/+22
| | | | | | | | Also use XXX in the other ones, because it's the most used word for that purpose in Mesa. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: correctly handle queries which don't need begin_queryMarek Olšák2012-03-051-6/+27
| | | | | Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: don't suspend timer queries for u_blitterMarek Olšák2012-03-055-23/+88
| | | | | | | | | | | | Timer queries should be able to measure the time spent in u_blitter as well. Queries are split into two groups: the timer ones and the others (streamout, occlusion), because we should only suspend non-timer queries for u_blitter, and later if the non-timer queries are suspended, the context flush should only suspend and resume the timer queries. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: release query buffers in destroy_queryMarek Olšák2012-03-051-0/+9
| | | | | | | This fixes a memory leak introduced with the rework. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* r600g: move all query code into r600_query.cMarek Olšák2012-03-055-456/+414
| | | | | | | | And rename or inline functions where appropriate. There is no reason to keep this stuff in r600_hw_context.c. Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* Revert "gallium: add flag PIPE_TRANSFER_MAP_PERMANENTLY"Marek Olšák2012-03-0512-57/+6
| | | | | | | This reverts commit 0950086376b1c8b7fb89eda81ed7f2f06dee58bc. It was decided to refactor the transfer API instead of adding workarounds to address the performance issues.
* r300/compiler: Add support for inline literalsTom Stellard2012-03-0412-9/+192
| | | | | On R500 chips, shader instructions can take 7-bit (3-bit mantissa, 4-bit exponent) floating point values as inputs in place of registers.
* vl: fix shader in/out numberingChristian König2012-03-035-10/+10
| | | | | | Fix all the other wrong numberings. Signed-off-by: Christian König <[email protected]>
* vl/compositor: fix shader in/out numberingChristian König2012-03-021-5/+5
| | | | | | | Michel pointed out that my assumption of a global index namespace is incorrect and breaks r300g. Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfaceQueryPutBitsYCbCrCapabilitiesChristian König2012-03-021-1/+33
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfacePutBitsYCbCrChristian König2012-03-021-1/+82
| | | | | | v2: the csc_matrix is optional Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement VideoSurfaceGetBitsYCbCrChristian König2012-03-021-8/+53
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfaceQueryGetPutBitsNativeCapabilitiesChristian König2012-03-021-1/+23
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfaceGetBitsNativeChristian König2012-03-021-1/+36
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfacePutBitsNativeChristian König2012-03-023-15/+43
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfaceQueryPutBitsIndexedCapabilitiesChristian König2012-03-021-1/+43
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: fix default swizzle for Output/Bitmap samplersChristian König2012-03-024-6/+24
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: add support for per vertex colorsChristian König2012-03-021-2/+28
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement BitmapSurfaceQueryCapabilitiesChristian König2012-03-021-1/+35
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement OutputSurfaceRenderBitmapSurfaceChristian König2012-03-021-1/+40
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement BitmapSurfaceGetParametersChristian König2012-03-021-1/+14
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement BitmapSurfacePutBitsNativeChristian König2012-03-021-2/+31
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: implement BitmapSurfaceCreate/DestroyChristian König2012-03-022-3/+81
| | | | Signed-off-by: Christian König <[email protected]>
* st/vdpau: avoid an unnessasary copyChristian König2012-03-025-21/+112
| | | | | | | Delay the actual mixer rendering until we really know which surface is the real destination. Signed-off-by: Christian König <[email protected]>
* vl/csc: simplify matrix handlingChristian König2012-03-028-85/+82
| | | | | | A csc matrix is only 4x3 not 4x4, also define a VDPAU compatible type for it. Signed-off-by: Christian König <[email protected]>
* vl/compositor: add support for per layer dst areasChristian König2012-03-025-44/+51
| | | | Signed-off-by: Christian König <[email protected]>
* vl/compositor: add per vertex color suportChristian König2012-03-026-35/+88
| | | | | | Used in subtitles, for example. Signed-off-by: Christian König <[email protected]>
* vl/compositor: replace pipe_video_rect with u_rectChristian König2012-03-0210-62/+55
| | | | | | So we support things like flipping also. Signed-off-by: Christian König <[email protected]>
* vl/compositor: split shaders and stateChristian König2012-03-0210-204/+311
| | | | Signed-off-by: Christian König <[email protected]>
* Revert "gallivm: Change getExtent and readByte to non-const with llvm-3.1."Vinson Lee2012-03-011-8/+0
| | | | | | | | | This reverts commit d5a6c172547d8964f4d4bb79637651decaf9deee. llvm-3.1svn r151687 makes MemoryObject accessor members const again. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* vl: move dirty area handling into winsys abstractionChristian König2012-03-017-10/+56
| | | | | | Fixing uninitialized areas in SwapBuffers mode. Signed-off-by: Christian König <[email protected]>
* vl: hide X latency by using asynchronous requestsChristian König2012-03-011-11/+37
| | | | Signed-off-by: Christian König <[email protected]>
* vl: use SwapBuffers instead of CopyBuffersChristian König2012-03-013-42/+11
| | | | | | | | | This should speed things up a bit, but also shows some bugs with the kernel implementation. v2: require xcb-dri2 version 1.8 Signed-off-by: Christian König <[email protected]>
* st/xvmc: remove dst buffer texture workaroundChristian König2012-03-013-23/+11
| | | | Signed-off-by: Christian König <[email protected]>
* vl: rewrite vl DRI backend using XCBChristian König2012-03-016-858/+147
| | | | | | v2: also set array_size of texture Signed-off-by: Christian König <[email protected]>
* gallivm: Update comments and prototype of vector-selects.José Fonseca2012-03-011-20/+31
| | | | | No runtime behavior change. As vector selects are still not very well supported by LLVM.
* r300g: init chan=0 to silence warningBrian Paul2012-02-291-1/+1
|
* util: replace format equality test with compatibility test in blit codeBrian Paul2012-02-291-1/+21
| | | | | | | | | | This lets us use the resource_copy_region() path when blitting from R8G8B8A8 to R8G8B8x8, for example. v2: be smarter when src_format==dst_format Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* util: better comment for util_is_format_compatible()Brian Paul2012-02-291-2/+3
|
* util: fix assertions in u_blitter.c codeBrian Paul2012-02-291-11/+11
| | | | | | | Assertions of the form assert(a && b) should be written as separate assertions so that you can actually tell which part is false when there's a failure. Reviewed-by: Marek Olšák <[email protected]>
* svga: fix max_lod clamping in update_tss_binding()Brian Paul2012-02-291-2/+2
| | | | | | | | | After biasing we need to clamp to be sure we don't exceed the number of levels in the mipmap. This fixes an assertion at svga_sampler_view.c:70 v2: simplify the biasing, clamping code per Jose's suggestion. Reviewed-by: José Fonseca <[email protected]>