summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* tgsi: add some debug/print code in exec_tex(), disabledBrian Paul2011-07-061-0/+11
|
* draw: Fix fetch_max calculation.José Fonseca2011-07-041-1/+2
| | | | | | | | | | It should be max_index = start + count - 1 instead of max_index = count - 1
* u_upload_mgr: Use pipe_buffer_map_range istead of pipe_buffer_map.José Fonseca2011-07-011-5/+6
| | | | | pipe_buffer_map_range makes stricter assertions, and would have saved us grief detecting a bug in svga user buffer uploads.
* Gallium: fix buffer overflowMicael Dias2011-07-011-0/+11
| | | | Signed-off-by: José Fonseca <[email protected]>
* gallium/util: Upload manager optimizationsThomas Hellstrom2011-07-012-13/+42
| | | | | | | | | | | | Make sure that the upload manager doesn't upload data that's not dirty. This speeds up the viewperf test proe-04/1 a factor 5 or so on svga. Also introduce an u_upload_unmap() function that can be used instead of u_upload_flush() so that we can pack even more data in upload buffers. With this we can basically reuse the upload buffer across flushes. Signed-off-by: Thomas Hellstrom <[email protected]>
* gallivm: Pass in CPU name to createTargetMachine when on llvm-3.0.Vinson Lee2011-06-301-0/+4
| | | | | llvm-3.0svn revision 134127 changed createTargetMachine to take in an additional argument of the CPU name.
* gallivm: Rename TargetInstrDesc to MCInstrDesc when using llvm-3.0.Vinson Lee2011-06-301-0/+4
| | | | llvm-3.0svn revision 134021 renamed TargetInstrDesc to MCInstrDesc.
* Gallium:draw:aaline and aapoint: Restore the old hooks when we destroy our ↵Stéphane Marchesin2011-06-292-0/+17
| | | | stage.
* indices: fix conversion of PIPE_PRIM_POLYGON to linesBrian Paul2011-06-242-3/+8
| | | | | | | | | When the fill mode is PIPE_POLYGON_MODE_LINE we were basically converting the polygon into triangles, then drawing the outline of all the triangles. But we really only want to draw the lines around the perimeter of the polygon, not the interior lines. NOTE: This is a candidate for the 7.10 branch.
* gallivm: Fix x86 build with llvm-3.0svn.Vinson Lee2011-06-231-0/+4
| | | | LLVM revision 133739 renamed StackAlignment to StackAlignmentOverride.
* u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmaskMarek Olšák2011-06-192-31/+34
|
* u_vbuf_mgr: fix uploading if format size is greater than strideMarek Olšák2011-06-191-0/+5
|
* scons: make embedding orthogonal to the platformJosé Fonseca2011-06-175-17/+8
| | | | To enable embedding in platforms other than linux.
* target-helpers: remove copy-pasted function inline_noop_helperMarek Olšák2011-06-142-51/+8
|
* util: fix strict aliasing issues in u_format_r11g11b10f.hRoland Scheidegger2011-06-091-8/+16
|
* util: add gcc version check for builtinsRoland Scheidegger2011-06-091-3/+3
| | | | | Looks like only next_power_of_two, logbase2 and bitcount use builtins requiring gcc 3.4, so maybe everything else compiles with older gcc.
* util: better logbase2/next_power_of_two implementationsBenjamin Bellec2011-06-091-8/+24
| | | | | Use __builtin_clz when available for logbase/next_power_of_two, and replace next_power_of_two with faster implementation otherwise.
* gallium: s/bool/boolean/Brian Paul2011-06-084-4/+4
|
* draw: fix edge flag handling in clipper (for unfilled tris/quads/polygons)Brian Paul2011-06-081-5/+57
| | | | | | | | | | | | | | | | | | | | Previously, we were errantly drawing some interior edges of clipped polygons and quads. Also, we were introducing extra edges where polygons intersected the view frustum clip planes. The main problem was that we were ignoring the edgeflags encoded in the primitive header's 'flags' field which are set during polygon/quad ->tri decomposition. We need to observe those during clipping. Since we can't modify the existing vert's edgeflag fields, we need to store them in a parallel array. Edge flags also need to be handled differently for view frustum planes vs. user-defined clip planes. In the former case we don't want to draw new clip edges but in the later case we do. This matches NVIDIA's behaviour and it just looks right. Finally, note that the LLVM draw code does not properly set vertex edge flags. It's OK on the regular software path though.
* tgsi: s/varient/variant/Brian Paul2011-06-071-2/+2
|
* draw: rename draw_vs_varient.c to draw_vs_variant.cBrian Paul2011-06-073-2/+2
|
* draw/llvm: whitespace, formatting fixesBrian Paul2011-06-071-38/+51
|
* draw: s/1/TRUE/Brian Paul2011-06-071-2/+2
|
* Gallium: fix indentation in u_blitter.cStéphane Marchesin2011-06-061-1/+1
|
* util: add \n to debug_checkpoint_fullMarcin Slusarz2011-06-061-1/+1
| | | | Signed-off-by: José Fonseca <[email protected]>
* cso: move cso hashes to a more table driven schemeDave Airlie2011-06-032-84/+21
| | | | | | this removes a bad branch pain in the hash table lookup fn. Signed-off-by: Dave Airlie <[email protected]>
* u_prim: convert u_trim_pipe_prim to table driven.Dave Airlie2011-06-031-47/+24
| | | | | | | | This makes this function not be an always miss for the branch predictor. Noticed using cachegrind, makes a minor difference to gears numbers on r600g. Signed-off-by: Dave Airlie <[email protected]>
* util: faster logbase2Brian Paul2011-06-021-4/+7
|
* tgsi/ureg: bump the limit of immediatesMarek Olšák2011-05-301-1/+1
| | | | | | | | | | Lowered indirect addressing can create lots of immediates. Fixes piglit/glsl-fs-uniform-array-7 on r300g. NOTE: This is a candidate for the 7.10 branch. Reviewed-by: Brian Paul <[email protected]>
* gallivm: Fix for dynamically linked LLVM 2.8 library.José Fonseca2011-05-201-2/+12
| | | | | | | | | This prevents the error prog: for the -disable-mmx option: may only occur zero or one times! when creating a new context after XCloseDisplay with DRI drivers linked with a shared LLVM 2.8 library.
* gallivm: Tell LLVM to not assume a 16-byte aligned stack on x86.José Fonseca2011-05-181-0/+13
| | | | Fixes fdo 36738.
* u_vbuf_mgr: fix max_index computation when src_offset is abused as buffer_offsetMarek Olšák2011-05-171-1/+6
|
* gallium: block signals for new thread when spawning threadsDave Airlie2011-05-161-1/+8
| | | | | | | | | | | | | I'm hard pressed to think of any reason a gallium thread would want to receive a signal, especially considering its probably loaded as a library and you don't want the threads interfering with the main threads signal handling. This solves a problem loading llvmpipe into the X server for AIGLX, where the X server relies on the SIGIO signal going to the main thread, but once llvmpipe loads the SIGIO can end up in any of its threads. Signed-off-by: Dave Airlie <[email protected]>
* u_vbuf_mgr: fix max_index computation once againMarek Olšák2011-05-141-15/+47
| | | | | | | | | | | | See how I compute and use the 'unused' variable in the code. It's crucial for getting max_index right. Fixed with the help of apitrace. (bisecting the problematic draw call manually was not fun though) This should fix: https://bugs.freedesktop.org/show_bug.cgi?id=36268 https://bugs.freedesktop.org/show_bug.cgi?id=36609
* Remove redundant util_unsigned_logbase2Matt Turner2011-05-122-13/+1
| | | | | | | util_logbase2 is exactly the same function. Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* u_math.h: Remove redundant mingw32 ffs definitionMatt Turner2011-05-121-4/+0
| | | | | Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallium/draw: Fix enum type taken by draw_get_shader_param().Michel Dänzer2011-05-031-1/+1
| | | | | | | | | | Pointed out by clang: src/gallium/auxiliary/draw/draw_context.h:251:41: warning: implicit conversion from enumeration type 'enum pipe_cap' to different enumeration type 'enum pipe_shader_cap' [-Wconversion] return tgsi_exec_get_shader_param(param); ~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~
* tgsi: remove set-but-unused variablesMarek Olšák2011-05-011-4/+0
|
* draw: remove set-but-unused variableMarek Olšák2011-05-011-2/+1
|
* rbug: remove set-but-unused variablesMarek Olšák2011-05-013-28/+0
|
* util: implement R11G11B10_FLOAT pack/unpack functionsMarek Olšák2011-04-294-1/+336
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa, util: move RGB9E5 conversion functions to gallium/utilMarek Olšák2011-04-292-1/+165
| | | | | | | Also use MAX3 and incorporate Ian's suggestion in texformat.c. I don't think wrapping u_format_rgb9e5.h in another header and thus making it more complicated is worth it.
* util: implement R9G9B9E5 pack and unpack functionsMarek Olšák2011-04-291-5/+82
| | | | | | softpipe and llvmpipe support done (sampler only). Reviewed-by: Brian Paul <[email protected]>
* util: make macros MIN3, MAX3, MIN4, MAX4 little more efficientMarek Olšák2011-04-271-4/+4
|
* gallivm: fix warning: ‘value’ may be used uninitialized in this functionMarek Olšák2011-04-271-1/+1
| | | | The path where it's uninitialized is guarded by an assert.
* os: simplify ifdefnobled2011-04-271-1/+1
| | | | | | | The actual code that needs this include is just using "if defined (PIPE_OS_UNIX)", and the two conditions should match. This should also make the file compile under Hurd.
* draw: fix point/line/tri flushing bug in vbuf codeBrian Paul2011-04-221-4/+10
| | | | | | | | Need to reset the point/line/tri functions to point to the "first" versions whenever we flush vertices. Fixes unfilled polygon rendering errors seen in demos/samples/logo.c. See comments for more info. NOTE: This is a candidate for the 7.10 branch.
* galahad,util: warn on resource target mismatch in copy_regionMarek Olšák2011-04-211-0/+3
| | | | Reviewed-by: Jakob Bornecrantz <[email protected]>
* util: add a simple memcpy path for copying buffers in util_resource_copy_regionMarek Olšák2011-04-211-9/+13
| | | | Reviewed-by: Jakob Bornecrantz <[email protected]>
* translate: disable clamping of instanced array indexesBrian Paul2011-04-192-9/+16
| | | | | | This fixes piglit's draw-instanced-divisor test for softpipe on both the generic and SSE paths. This is temporary until we have the correct per-array max_index information.