summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300
Commit message (Collapse)AuthorAgeFilesLines
* gallium: make user vertex buffers optionalMarek Olšák2012-04-244-34/+5
| | | | | | | | | | | This couldn't be split because it would break bisecting. Summary: * r300g,r600g: stop using u_vbuf * r300g,r600g: also report that the FIXED vertex type is unsupported * u_vbuf: refactor for use in the state tracker * cso: wire up u_vbuf with cso_context * st/mesa: conditionally install u_vbuf
* r300g: don't share u_upload_mgr with u_vbuf, create its ownMarek Olšák2012-04-244-4/+10
|
* u_vbuf: pull u_vbuf_draw_max_vertex_count into r300gMarek Olšák2012-04-241-1/+50
|
* u_vbuf: make use of the new CAPs to determine what to doMarek Olšák2012-04-242-4/+11
| | | | | | | This adds the ability to initialize u_vbuf_caps before creating u_vbuf itself. It will be useful for determining if u_vbuf should be used or not. Also adapt r300g and r600g.
* u_vbuf: remove u_vbuf_resourceMarek Olšák2012-04-2410-107/+105
|
* gallium: add user_ptr in pipe_resourceMarek Olšák2012-04-241-0/+2
| | | | I need to access the pointer in st/mesa when I only have pipe_resource.
* u_vbuf: override draw_vboMarek Olšák2012-04-241-5/+1
|
* u_vbuf: override create/bind/destroy_vertex_elements_stateMarek Olšák2012-04-243-18/+4
|
* u_vbuf: override set_vertex_buffersMarek Olšák2012-04-246-31/+26
|
* u_vbuf: override set_index_bufferMarek Olšák2012-04-243-20/+19
| | | | This makes u_vbuf_mgr call the driver instead of the other way around.
* r300g/automake: add $ARCH_FLAGS and $OPT_FLAGSMarek Olšák2012-04-231-0/+2
| | | | Reviewed-by: Tom Stellard <[email protected]>
* r300/compiler: Exit immediately from rc_vert_fc() if there is an errorTom Stellard2012-04-141-0/+4
| | | | | | | | This way we correctly report "Too many temporaries" errors. https://bugs.freedesktop.org/show_bug.cgi?id=48680 Note: This is a candidate for the stable branches.
* r300/compiler: Copy all instruction attributes during local transfomsTom Stellard2012-04-141-31/+42
| | | | | | | | | | | | | | | | | | | | | Instruction attributes like WriteALUResult and ALUResultCompare were being discarded during the some of the local transformations. This fixes the following piglit tests: glsl1-inequality (vec2, pass) loopfunc fs-any-bvec2-using-if fs-op-ne-bvec2-bvec2-using-if fs-op-ne-ivec2-ivec2-using-if fs-op-ne-mat2-mat2-using-if fs-op-ne-vec2-vec2-using-if fs-op-ne-mat2x3-mat2x3-using-if fs-op-ne-mat2x4-mat2x4-using-if https://bugs.freedesktop.org/show_bug.cgi?id=45921 NOTE: This is a candidate for the stable branches.
* r300/compiler: Fix nested flow control in r500 vertex shadersTom Stellard2012-04-1311-178/+438
|
* r300/compiler: Clear loop registers in vertex shaders w/o loopsTom Stellard2012-04-132-16/+13
| | | | | | | | | | | | | | The loop registers weren't being cleared, so any shader that was executed after a shader containing loops was at risk of having a loop randomly inserted into it. This fixes over one hundred piglit tests, although these test only failed during full piglit runs and would pass if run individually. The exact number of piglit tests that this patch fixes will vary depending on the version of piglit and the order the tests are run. NOTE: This is a candidate for the stable branches.
* r300g: align vertex buffer suballocations to 4Marek Olšák2012-04-131-1/+1
|
* gallium: rename DUAL_SOURCE_BLEND cap to MAX_DUAL_SOURCE_RENDER_TARGETSDave Airlie2012-04-131-1/+1
| | | | | | Though I don't think we'll ever expose > 1. Signed-off-by: Dave Airlie <[email protected]>
* r300g/swtcl: fix crash when back color is present in vertex shaderMarek Olšák2012-04-041-39/+56
| | | | The shader transformation code sometimes produced invalid TGSI.
* r300g/swtcl: initialize some Draw optionsMarek Olšák2012-04-041-0/+3
|
* r300g/swtcl: fix polygon offsetMarek Olšák2012-04-041-0/+4
|
* r300g/swtcl: don't expose shader subroutine supportMarek Olšák2012-04-041-0/+1
| | | | RET in the main function doesn't work. This should be fixed in Draw, but meh.
* r300g: initialize state & render functions before creating u_vbuf & u_blitterMarek Olšák2012-04-043-11/+15
|
* r300g/swtcl: don't enter u_vbuf_mgrMarek Olšák2012-04-045-34/+48
|
* r300g/swtcl: don't print an error when getting ClipVertexMarek Olšák2012-04-044-9/+21
| | | | Draw can do it just fine.
* r300g: cleanup after get_query_result changeMarek Olšák2012-03-301-10/+13
|
* gallium: adapt to get_query_result interface changeMarek Olšák2012-03-301-2/+2
| | | | Reviewed-by: Brian Paul <[email protected]>
* Add Makefile.in to toplevel .gitignoreKenneth Graunke2012-03-201-1/+0
| | | | | | | To avoid redundancies, this patch also removes Makefile.in from the other .gitignore files. Acked-by: Eric Anholt <[email protected]>
* Add .deps/, .libs/, and *.la to toplevel .gitignorePaul Berry2012-03-201-2/+0
| | | | | | | To avoid redundancies, this patch also removes .deps, .libs, and *.la from .gitignore files in subdirectories. Reviewed-by: Kenneth Graunke <[email protected]>
* gallium/drivers: Use automake to generate makefileTom Stellard2012-03-141-4/+0
|
* winsys/radeon: add usage parameter to cs_is_buffer_referencedMarek Olšák2012-03-051-1/+1
| | | | | 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-051-4/+0
| | | | | | | 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.
* r300g: init chan=0 to silence warningBrian Paul2012-02-291-1/+1
|
* gallium: remove PIPE_SHADER_CAP_OUTPUT_READMarek Olšák2012-02-271-2/+0
| | | | | | | | | | | | r600g is the only driver which has made use of it. The reason the CAP was added was to fix some piglit tests when the GLSL pass lower_output_reads didn't exist. However, not removing output reads breaks the fallback for glClampColorARB, which assumes outputs are not readable. The fix would be non-trivial and my personal preference is to remove the CAP, considering that reading outputs is uncommon and that we can now use lower_output_reads to fix the issue that the CAP was supposed to workaround in the first place.
* r300g: Use automake to generate Makefile v3Tom Stellard2012-02-265-80/+43
| | | | | | | | | | v2: - s/$(top_builddir)/$(top_srcdir)/ - Always generate Makefile.in v3: - Fixes from Matt Turner - Use Mesa CFLAGS
* r300g: Reorganize the compiler unit testsTom Stellard2012-02-264-2/+12
|
* r300/compiler: Schedule KIL instructions before output writesTom Stellard2012-02-261-0/+4
|
* r300/compiler: Use the smart scheduler for r300 cardsTom Stellard2012-02-261-73/+54
|
* r300/compiler: Fix bug when lowering KILP on r300 cardsTom Stellard2012-02-261-10/+54
| | | | | | | | | | | KILP instruction inside IF blocks were being lowered to an unconditional KIL. Since r300 doesn't support branching, when the IF's were lowered to conditional moves, the KIL would always be executed. This is not a problem with the mesa state tracker, because the GLSL compiler handles lowering IF's, but this bug was appearing in the VDPAU state tracker, which does not use the GLSL compiler. Note: This is a candidate for the stable branches.
* gallium: remove unused winsys pointers in pipe_screen and pipe_contextMarek Olšák2012-02-212-2/+0
| | | | A winsys is already a private object of a driver.
* r300g: Fix build when libdrm is installed to non-standard dirTom Stellard2012-02-191-0/+2
|
* r300g: don't use pipe_screen::winsysMarek Olšák2012-02-171-2/+2
|
* r300g: don't use pipe_context::winsysMarek Olšák2012-02-171-1/+1
|
* r300g: always fail to create a multisample resourceMarek Olšák2012-02-121-0/+3
| | | | Just to be safe.
* r300g: assert-fail when calling resource_resolveMarek Olšák2012-02-121-0/+3
| | | | And reset the dest pointer to NULL after it.
* gallium: add PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTIONChristoph Bumiller2012-02-091-0/+1
| | | | | | | Just let the hardware do it if it can and avoid drivers having to check for the special case on each draw call. v2: update the draw module
* scons: r300/r600 now depends on libdrm.José Fonseca2012-02-071-0/+3
| | | | As they now indirectly include on libdrm/radeon_surface.h.
* r600g: add support for common surface allocator for tiling v13Jerome Glisse2012-02-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tiled surface have all kind of alignment constraint that needs to be met. Instead of having all this code duplicated btw ddx and mesa use common code in libdrm_radeon this also ensure that both ddx and mesa compute those alignment in the same way. v2 fix evergreen v3 fix compressed texture and workaround cube texture issue by disabling 2D array mode for cubemap (need to check if r7xx and newer are also affected by the issue) v4 fix texture array v5 fix evergreen and newer, split surface values computation from mipmap tree generation so that we can get them directly from the ddx v6 final fix to evergreen tile split value v7 fix mipmap offset to avoid to use random value, use color view depth view to address different layer as hardware is doing some magic rotation depending on the layer v8 fix COLOR_VIEW on r6xx for linear array mode, use COLOR_VIEW on evergreen, align bytes per pixel to a multiple of a dword v9 fix handling of stencil on evergreen, half fix for compressed texture v10 fix evergreen compressed texture proper support for stencil tile split. Fix stencil issue when array mode was clear by the kernel, always program stencil bo. On evergreen depth buffer bo need to be big enough to hold depth buffer + stencil buffer as even with stencil disabled things get written there. v11 rebase on top of mesa, fix pitch issue with 1d surface on evergreen, old ddx overestimate those. Fix linear case when pitch*height < 64. Fix r300g. v12 Fix linear case when pitch*height < 64 for old path, adapt to libdrm API change v13 add libdrm check Signed-off-by: Jerome Glisse <[email protected]>
* vl: add interlacing capabilitiesChristian König2012-02-061-0/+6
| | | | | | | Let the driver control interlaced or progressive format of video buffers. Signed-off-by: Christian König <[email protected]>
* r300g: don't use pipe_context::winsysMarek Olšák2012-01-311-6/+3
|