summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* draw: Fix the edge flags of flatshade_first polygons.Chia-I Wu2010-08-041-4/+4
| | | | | | | This bug can be triggered by rendering polygons with glProvokingVertexEXT(GL_FIRST_VERTEX_CONVENTION_EXT); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
* r300/compiler: r500 hw support for break and continue in loops.Tom Stellard2010-08-031-2/+7
| | | | | | | The BGNLOOP and ENDLOOP instructions are now being used correctly, which makes break and continue possible. The deadcode pass has been modified to handle breaks, and the compiler is more careful about which loops are unrolled.
* r300g: disable multisample visuals until the state tracker bits catch up.Dave Airlie2010-08-041-0/+3
| | | | | | This stops us advertising lots of ms visuals we can't actually use. Signed-off-by: Dave Airlie <[email protected]>
* draw: check for instance divisors in vcache_check_run()Brian Paul2010-08-031-0/+22
| | | | | | | | | | When we have instance divisors we don't really know which vertex elements we'll be fetching ahead of time. This fixes a bug in instanced drawing which was exposed by the new draw_vbo() code because of max_index not being ~0 as often as it used to be. The test for max_index >= DRAW_PIPE_MAX_VERTICES often hid this problem before.
* gallium/translate: make generic_run() and generic_run_elts() more alikeBrian Paul2010-08-031-19/+44
| | | | Plus more debug code and do clamping in generic_run().
* draw: added a commentBrian Paul2010-08-031-0/+1
|
* draw: use instance divisor in draw_print_arrays()Brian Paul2010-08-031-0/+5
|
* draw: add assertion, rearrange debug codeBrian Paul2010-08-031-4/+10
|
* st/dri: fix crash when dri2_drawable_get_buffers failsMarek Olšák2010-08-041-1/+2
| | | | | | | | | | | | | | | | | It's easily reproducible with Compiz with its Resize window mode set to Normal (which is usually not the default mode). https://bugs.freedesktop.org/show_bug.cgi?id=28658 https://bugs.freedesktop.org/show_bug.cgi?id=29303 This is actually a workaround to prevent Compiz crashes. Instead, a completely white titlebar might show up during resizing transparent windows (a rare case). The underlying cause should be fixed by someone who has more knowledge about the code. (dri2_drawable_get_buffers should not return NULL) Acked-By: Jakob Bornecrantz <[email protected]>
* r600g: add polygon offset supportJerome Glisse2010-08-033-7/+62
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: flush and resubmit if we reach limitJerome Glisse2010-08-034-37/+13
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: fix color target maskJerome Glisse2010-08-031-2/+1
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* gallium/draw: forgot about PIPE_PRIM_LINE_STRIP_ADJACENCYZack Rusin2010-08-031-0/+1
|
* gallium/util: add extra primitives to the trimmerZack Rusin2010-08-031-0/+13
|
* r600g: fix stencilJerome Glisse2010-08-032-8/+7
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: fix LIT + fix multiple constant one ALU + fix ALU block splittingJerome Glisse2010-08-035-113/+207
| | | | | | | | | | | | | Make sure LIT fills all slot for instruction (can't do W instruction without having the Z slot filled with at least a NOP). ALU instruction can't access more than 4 constant, move constant to temporary reg if we reach the limit. Fix ALU block splitting, only split ALU after ALU with last instruction bit sets. Signed-off-by: Jerome Glisse <[email protected]>
* r300g: handle polygon offset correctlyMarek Olšák2010-08-031-5/+5
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=29372
* r600g: split alu block to conform to limit + RCP opcodeJerome Glisse2010-08-022-2/+4
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: add autogenerated reg definition + debug print cleanupJerome Glisse2010-08-026-173/+194
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r300g: fix hardlock when using more than one stuffed sprite coordsMarek Olšák2010-08-022-19/+21
| | | | | | | If texture coordinates come from the vertex shader, there are always 4 components in the rasterizer input packet, but if the coordinates are stuffed (like for point sprites), there are only 2 or 3 components (based on GB_ENABLE) and if we rasterize more, it locks up.
* util: Fix unpacking of R8G8Bx_SNORM format.Michal Krol2010-08-021-3/+12
| | | | | Apparently, we must always use integers to perform calculations, otherwise the results won't match D3D's CxV8U8 definition.
* r600g: add stencil op/func translationDave Airlie2010-08-022-3/+66
|
* r600g: initial alpha test stateDave Airlie2010-08-021-5/+13
|
* r600g: add initial blend state.Dave Airlie2010-08-025-20/+262
| | | | migrates cb_cntl to be regenerated
* r600g: set correct tex coord type for rect textures.Dave Airlie2010-08-021-4/+6
|
* r600g: make r600_db_format static.Dave Airlie2010-08-021-1/+1
| | | | this isn't used anywhere else yet.
* draw: fix warning in sse code.Dave Airlie2010-08-021-0/+1
| | | | Not sure if this will actually fix the issue, but it fixes the warning.
* r300g: fix microtiling on RS6xxMarek Olšák2010-08-011-4/+18
| | | | | Getting tiling right has always been tricky. There are so many subtle details...
* r600g: Remove unnecessary header.Vinson Lee2010-07-311-1/+0
|
* r600g: Remove unnecessary header.Vinson Lee2010-07-311-1/+0
|
* egl: Add checks for EGL_MESA_screen_surface.Chia-I Wu2010-07-312-4/+10
| | | | | This allows Mesa EGL to be compiled with eglext.h that does not define EGL_MESA_screen_surface.
* st/dri: Remove unnecessary headers.Vinson Lee2010-07-312-2/+0
|
* r600g: add KIL opcode supportJerome Glisse2010-07-301-1/+25
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* st/dri: move backend hooks to appropriate objectGeorge Sapountzis2010-07-307-29/+78
|
* st/dri: drop dri1_helperGeorge Sapountzis2010-07-3013-229/+23
|
* st/dri: mv driDriverAPI to backendsGeorge Sapountzis2010-07-306-130/+49
|
* llvmpipe: Silence unused value warning.Vinson Lee2010-07-301-0/+1
|
* draw: actually a noop, rather than not implementedZack Rusin2010-07-301-1/+4
| | | | we just have nothing to do in it right now
* tgsi: remove incorrect assertionBrian Paul2010-07-301-1/+0
|
* llvmpipe: Fix implicit declaration of lp_func_delete_body warnings.Vinson Lee2010-07-302-0/+2
|
* util: Fix the range of util_draw_elements_instanced.Chia-I Wu2010-07-301-2/+0
| | | | Keep min_index and max_index at their defaults (0 and ~0).
* llvmpipe: delete function bodies after generating machine codeZack Rusin2010-07-304-0/+13
|
* r600g: fix typo in tex instruction + shader semantic id fixJerome Glisse2010-07-301-8/+9
| | | | | | | It seems we never get semantic id from TGSI so fallback to use output number as id. Signed-off-by: Jerome Glisse <[email protected]>
* util: more helpers for old draw codeKeith Whitwell2010-07-302-25/+141
|
* llvmpipe: fix on-debug build breakageBrian Paul2010-07-291-1/+1
|
* llvmpipe: added some jit debug codeBrian Paul2010-07-292-0/+40
| | | | | If we crash in the jitted function we can examine jit_line and jit_state in gdb to learn more about the shader.
* draw: do bounds checking of array elements (debug only)Brian Paul2010-07-291-9/+26
| | | | | | | | | Make sure that all the element indexes actually lie inside the vertex buffer. Also, rename pipe_run() to pipe_run_elts() to be more specific. And assert/check the vertex count for the non-indexed case.
* draw: assorted clean-ups in clipper codeBrian Paul2010-07-291-20/+20
|
* gallium: implement bounds checking for constant buffersBrian Paul2010-07-2916-27/+117
| | | | | | Plumb the constant buffer sizes down into the tgsi interpreter where we can do bounds checking. Optional debug code warns upon out-of-bounds reading. Plus add a few other assertions in the TGSI interpreter.
* draw: add vertex buffer offset in draw_print_arrays()Brian Paul2010-07-291-0/+1
|