summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* tgsi: scan for additional info: uses_fogcoord, uses_frontfacingBrian Paul2008-12-182-15/+37
|
* Gallium: fix for conform testRobert Ellison2008-12-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following construction in util_surface_copy() in gallium/auxiliary/util/u_rect.c, introduced in commit d177c9ddda2c452cf7d6696d89cf4458ef986f98, incorrectly inverts the Y coordinate in the last parameter to pipe_copy_rect(). /* If do_flip, invert src_y position and pass negative src stride */ pipe_copy_rect(dst_map, &dst->block, dst->stride, dst_x, dst_y, w, h, src_map, do_flip ? -(int) src->stride : src->stride, src_x, do_flip ? w - src_y : src_y); The intention is to start at the last Y coordinate line and move backwards, in the case of a flip; in that case, the correct calculation is "src_y + h - 1", not "w - src_y". This fixes a Gallium assertion failure in the conformance tests: u_rect.c:65:pipe_copy_rect: Assertion `src_y >= 0' failed. debug_get_bool_option: GALLIUM_ABORT_ON_ASSERT = TRUE Trace/breakpoint trap
* gallium: Enable memory debugging on all windows platforms.José Fonseca2008-12-181-1/+1
|
* gallium: fix memory corruption in u_gen_mipmap.cBrian Paul2008-12-171-10/+9
| | | | | | | | | Remove the old/initial vbuf allocation in util_create_gen_mipmap(). We were allocating a small vbuf at this point so get_next_slot() didn't have as large of buffer as it expected. So all but the first set_vertex_data() was writing out of bounds. Also added some comments.
* Merge branch 'no-validate' into gallium-0.1Keith Whitwell2008-12-1217-686/+108
|\
| * Revert "pipebuffer: Implement proper buffer validation."Keith Whitwell2008-12-1214-367/+108
| | | | | | | | This reverts commit a6d866f72c88d48d2bcfb3e3c882fdb639b5a8ce.
| * Revert "pipebuffer: Ondemand buffer manager."Keith Whitwell2008-12-124-319/+0
| | | | | | | | This reverts commit 17849eafaacfbb2124d86f561a91b707317d3b31.
| * Revert "pipebuffer: Fix buffer overflow."Keith Whitwell2008-12-121-1/+1
| | | | | | | | This reverts commit 55839ae064d64b7fcc180fcddb364bf31ab760dc.
* | gallium: avoid mapping same vertex buffer in subsequent framesKeith Whitwell2008-12-126-35/+120
|/ | | | | | | | | | | Quite a few util modules were maintaining a single vertex buffer over multiple frames, and potentially reusing it in subsequent frames. Unfortunately that would force us into syncrhonous rendering as the buffer manager would be forced to wait for the previous rendering to complete prior to allowing the map. This resolves that issue, but requires the state tracker to issue a few new flush() calls at the end of each frame.
* draw: Silencium compiler warnings on Windows.Michal Krol2008-12-111-1/+1
|
* gallium: added draw_set_mrd() function to fix polygon offsetBrian Paul2008-12-104-2/+16
| | | | | | | | The Minimum Resolvable Depth factor depends on the driver and can't just be computed from the number of Z buffer bits. Glean's polygon offset test now passes with softpipe. Still need to determine the MRD factor for other gallium drivers, if they use the draw module's polygon offset stage...
* util: new funcs for triming/validating primitivesKeith Whitwell2008-12-101-0/+122
|
* draw: add const qualifiersKeith Whitwell2008-12-102-4/+4
|
* gallium: Abort by default on windows user space.José Fonseca2008-12-091-1/+1
|
* tgsi: Reenable OPCODE_ARR.Michal Krol2008-11-261-3/+2
|
* tgsi: Fix build.Michal Krol2008-11-261-6/+2
|
* tgsi: Implement OPCODE_ROUND for SSE2 backend.Michal Krol2008-11-261-1/+28
|
* tgsi: Implement OPCODE_SSG/SGN.Michal Krol2008-11-262-2/+46
|
* gallium: disable TGSI_OPCODE_ARR case until emit_rnd() is redone.Brian Paul2008-11-261-1/+2
|
* Revert "tgsi: Implement OPCODE_ROUND for SSE2 backend."Brian Paul2008-11-261-28/+1
| | | | | | | This reverts commit 685fd2c035e284db2447ede0f6da278adaa70a0d. Does not compile since emit_rnd() is trying to pass 4 params to emit_func_call_dst() which takes 3 params.
* tgsi: Implement OPCODE_ARR.Michal Krol2008-11-262-5/+7
|
* tgsi: Implement OPCODE_ROUND for SSE2 backend.Michal Krol2008-11-261-1/+28
|
* pipebuffer: Fix buffer overflow.José Fonseca2008-11-251-1/+1
|
* pipebuffer: Ondemand buffer manager.José Fonseca2008-11-244-0/+319
| | | | | A variation of malloc buffers which get transferred to real graphics memory when there is an attempt to validate them.
* pipebuffer: Implement proper buffer validation.José Fonseca2008-11-2414-108/+367
|
* gallium: Use costum log2 for all windows builds.José Fonseca2008-11-171-6/+8
|
* gallium: State when there are no memory leaks detected.José Fonseca2008-11-171-0/+6
|
* gallium: Make handle_table reentrant.José Fonseca2008-11-171-8/+26
| | | | | | | Ensure that the object has consistent state also when calling the destroy callback. Namely, ensure the object passed to the callback is removed from the table prior to calling the destroy callback to avoid a infinite loop or double free.
* gallium: increase table size for fast log/pow functionsBrian Paul2008-11-142-4/+6
| | | | The various conformance tests pass now.
* util: Use OpenGL rasterization rules in blits and mipmap generation.Brian Paul2008-11-142-0/+2
|
* translate: pull in prefetch and other optimizations from draw_vs_aos.cKeith Whitwell2008-11-142-112/+204
|
* util: Optimise log2().Michal Krol2008-11-121-1/+2
|
* util: Add log2() definition for MSC.Michal Krol2008-11-121-0/+5
|
* draw: Add missing include.Michal Krol2008-11-121-0/+1
|
* gallium: fix comment again. A half-closed interval was intended.Brian2008-11-101-2/+2
| | | | Never saw the [a,b[ notation before.
* gallium: fix typos in commentsBrian Paul2008-11-101-2/+2
|
* gallium: actually flip the coordinatesZack Rusin2008-11-101-1/+2
|
* util: Fix util_fast_pow/exp2/log2.Brian2008-11-092-69/+64
| | | | | | | | | | | | | | | | | | | | - Use a lookup table for log2. - Compute (float) (1 << ipart) by tweaking with the exponent directly to avoid integer overflow and float conversion. - Also table negative exponents to avoid float division and branching. - Implement util_fast_exp as function of util_fast_exp2. -------- Cherry-picked from gallium-0.2: 8415d06d90a197e16554dab98d160334fd9f9f93 This fixes some pow() glitches seen in fslight.c, spectex.c, etc. Conflicts: src/gallium/auxiliary/util/u_math.h
* gallium: _debug_vprintf() should be silent if DEBUG is not definedBrian2008-11-091-0/+2
|
* gallium: implement TGSI_OPCODE_NRM/NRM4 in tgsi_exec.cBrian2008-11-061-1/+58
|
* gallium: debug code to print vertex array data (disabled)Brian Paul2008-11-061-0/+89
|
* gallium: check execution mask in indirect register loadsBrian2008-11-051-0/+23
| | | | | Zero-out the index for disabled execution channels to avoid using potential garbage values (thus avoiding bad array indexing).
* gallium: don't range check tgsi register index for indirect accessesBrian2008-11-051-5/+9
| | | | Fixes progs/vp/arl.txt test.
* gallium: call tgsi_set_exec_mask() and use exec mask in SSE ARL codeBrian Paul2008-11-053-3/+52
| | | | | This prevents vertex shaders from referencing invalid memory locations when the shader is operating on less than four vertices or fragments.
* gallium: added tgsi_set_exec_mask()Brian Paul2008-11-051-0/+25
|
* gallium: added some sanity check assertions for constant buffer indexingBrian Paul2008-11-051-0/+4
|
* gallium: added some debug code (disabled)Brian Paul2008-11-051-0/+24
|
* gallium: disable some debug outputBrian Paul2008-11-051-1/+2
|
* draw: Implement TGSI_OPCODE_TRUNC.michal2008-11-051-0/+14
|
* tgsi: Implement OPCODE_TRUNC.michal2008-11-051-1/+17
|