mesa/src/gallium/auxiliary/util
Thomas Hellstrom cf4cd8592a gallium/util: Upload manager optimizations
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 <thellstrom@vmware.com>
2011-07-01 13:30:36 +02:00
..
.gitignore gallium: untrack u_indices_gen.c and u_indices_gen.c 2010-05-06 14:23:04 +01:00
dbghelp.h util: Fix typo in last commit. 2011-02-17 17:15:57 +00:00
u_atomic.h Revert "Prefer intrinsics to handrolled atomic ops." 2010-09-30 14:41:53 -06:00
u_bitmask.c util: Minor enhancements/corrections to the bitmask logic. 2010-01-03 00:50:13 +00:00
u_bitmask.h util: Include missing header in u_bitmask.h. 2010-08-25 23:31:04 -07:00
u_blit.c gallium: Delay the creation of simple helper shaders 2011-03-12 19:39:45 +01:00
u_blit.h gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_blitter.c Gallium: fix indentation in u_blitter.c 2011-06-06 12:35:59 -07:00
u_blitter.h u_blitter: let the driver check whether there's a recursion 2011-02-10 11:27:34 +01:00
u_box.h gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_cache.c util: add ensure_sanity checks, fix a bug 2011-03-09 11:17:14 +00:00
u_cache.h util: Add remove to util_cache 2011-03-09 11:16:49 +00:00
u_caps.c gallium: remove the geom_flags param from is_format_supported 2011-03-11 21:39:30 +01:00
u_caps.h gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3) 2010-09-14 06:07:41 +02:00
u_clear.h gallium: rename clearRT / clearDS to clear_render_target / clear_depth_stencil 2010-06-03 16:33:25 +02:00
u_cpu_detect.c util: add cpu detection for sse 4.2 and avx 2011-04-07 13:41:52 -06:00
u_cpu_detect.h util: add cpu detection for sse 4.2 and avx 2011-04-07 13:41:52 -06:00
u_debug.c scons: make embedding orthogonal to the platform 2011-06-17 14:50:37 +01:00
u_debug.h util: add \n to debug_checkpoint_full 2011-06-06 12:41:07 +01:00
u_debug_describe.c gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_debug_describe.h auxiliary: add copyright headers 2010-08-21 12:37:39 +02:00
u_debug_memory.c util: Reimplement all utility functions in terms of the new OS abstraction. 2010-02-03 12:13:06 +00:00
u_debug_refcnt.c util: Make refcnt and symbol debuggers work on windows 2011-02-18 14:46:23 +00:00
u_debug_refcnt.h auxiliary: add copyright headers 2010-08-21 12:37:39 +02:00
u_debug_stack.c util: __builtin_frame_address() doesn't work on mingw. 2010-12-02 15:14:58 +00:00
u_debug_stack.h util: Stack backtracing facilities. 2009-02-20 11:54:18 +00:00
u_debug_symbol.c util: Make refcnt and symbol debuggers work on windows 2011-02-18 14:46:23 +00:00
u_debug_symbol.h u_debug_symbol: add symbol name caching 2010-08-20 18:18:28 +02:00
u_dirty_flags.h gallium/util: add states relevant to geometry shaders 2010-12-02 15:50:15 -05:00
u_dirty_surfaces.h gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_dl.c util: use pointer_to_func() to silence warning 2010-10-25 09:17:40 -06:00
u_dl.h util: Also add a define for the dynamic library's prefix. 2010-05-27 19:37:56 +01:00
u_double_list.h gallium: list use inline function to avoid macro shot coming 2011-03-30 17:03:00 -04:00
u_draw.c draw: Prevent out-of-bounds vertex buffer access. 2011-04-01 20:18:18 +01:00
u_draw.h draw: Prevent out-of-bounds vertex buffer access. 2011-04-01 20:18:18 +01:00
u_draw_quad.c util: Allow util_draw_texquad to draw quads with non-integer coordinates. 2011-03-09 11:16:49 +00:00
u_draw_quad.h gallium: always save and restore vertex buffers using cso_cache 2011-02-14 21:50:07 +01:00
u_dump.h gallium: added util_dump_logicop() 2010-05-20 10:27:11 -06:00
u_dump_defines.c gallium: fix/update tex target dumping 2010-05-20 10:27:11 -06:00
u_dump_state.c gallium: remove pipe_vertex_buffer::max_index 2011-02-14 21:50:08 +01:00
u_dynarray.h nvfx: support clip planes sensibly and fix them on nv30 2010-08-23 15:09:22 +02:00
u_fifo.h util: Add super simple fifo 2009-09-09 00:43:35 +01:00
u_format.c gallium: add and use generic function for querying patented format support (v2) 2011-04-15 05:08:00 +02:00
u_format.csv util: implement R11G11B10_FLOAT pack/unpack functions 2011-04-29 11:31:55 +02:00
u_format.h gallium: add and use generic function for querying patented format support (v2) 2011-04-15 05:08:00 +02:00
u_format_latc.c gallium/util: add LATC support 2011-03-08 23:52:37 +01:00
u_format_latc.h gallium/util: add LATC support 2011-03-08 23:52:37 +01:00
u_format_other.c util: implement R11G11B10_FLOAT pack/unpack functions 2011-04-29 11:31:55 +02:00
u_format_other.h util: implement R11G11B10_FLOAT pack/unpack functions 2011-04-29 11:31:55 +02:00
u_format_pack.py gallium: add RGTC UNORM support to u_format. 2011-03-02 15:30:16 +10:00
u_format_parse.py util: Remove unnecessary semicolons in Python scripts. 2010-05-19 06:43:14 -07:00
u_format_r11g11b10f.h util: fix strict aliasing issues in u_format_r11g11b10f.h 2011-06-09 01:14:51 +02:00
u_format_rgb9e5.h mesa, util: move RGB9E5 conversion functions to gallium/util 2011-04-29 11:31:55 +02:00
u_format_rgtc.c gallium/util: add LATC support 2011-03-08 23:52:37 +01:00
u_format_rgtc.h gallium/util: add LATC support 2011-03-08 23:52:37 +01:00
u_format_s3tc.c Revert "util: fix DXT1 RGBA texture compression if the source color is (0, 0, 0, 0)" 2011-02-16 16:13:58 +10:00
u_format_s3tc.h util: Add dedicated depth-stencil packing/unpacking functions. 2010-04-09 16:32:47 +01:00
u_format_srgb.h util: Support all SRGB formats. 2010-04-06 15:38:21 +01:00
u_format_srgb.py gallium: Avoid using __doc__ in python scripts. 2010-10-28 17:38:18 +01:00
u_format_table.py gallium/util: add LATC support 2011-03-08 23:52:37 +01:00
u_format_tests.c util: Get all depth stencil tests passing. 2010-04-09 16:32:48 +01:00
u_format_tests.h util: Allow to have block format test cases 2010-04-01 13:12:43 +01:00
u_format_yuv.c util: Add dedicated depth-stencil packing/unpacking functions. 2010-04-09 16:32:47 +01:00
u_format_yuv.h util: Add dedicated depth-stencil packing/unpacking functions. 2010-04-09 16:32:47 +01:00
u_format_zs.c gallium/format: add X32_S8X24_USCALED format. 2010-10-13 09:30:03 +10:00
u_format_zs.h gallium/format: add X32_S8X24_USCALED format. 2010-10-13 09:30:03 +10:00
u_framebuffer.c auxiliary: fix util_framebuffer_copy 2010-08-11 16:27:57 +02:00
u_framebuffer.h util: add util_framebuffer_min_size 2010-06-07 16:34:55 +01:00
u_gen_mipmap.c gallium: Delay the creation of simple helper shaders 2011-03-12 19:39:45 +01:00
u_gen_mipmap.h gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_half.h util: Add copyright header to u_half.h 2010-04-07 21:00:18 +01:00
u_half.py util: Remove unnecessary semicolons in Python scripts. 2010-05-19 06:43:14 -07:00
u_handle_table.c util: fix possible null pointer usage 2009-07-06 17:21:37 -04:00
u_handle_table.h
u_hash.c gallium: const correctness. 2008-12-22 16:55:27 +00:00
u_hash.h gallium: const correctness. 2008-12-22 16:55:27 +00:00
u_hash_table.c util: Rename from u_* to util_* while we're at it. 2009-10-17 11:45:04 +01:00
u_hash_table.h gallium: Move enum pipe_error into p_defines.h. 2009-10-25 21:11:54 +00:00
u_index_modify.c gallium: add usage parameter to pipe_buffer_create 2011-02-15 22:44:21 +01:00
u_index_modify.h util: Add forward declarations in u_index_modify.h. 2010-12-30 01:54:35 -08:00
u_init.h gallium/util: use #pragma section instead of #pragma data_seg 2010-04-02 00:48:27 +02:00
u_inlines.h gallium/util: Use PIPE_TRANSFER_DISCARD_RANGE in pipe_buffer_write. 2011-03-15 15:39:38 +01:00
u_keymap.c util: Remove unnecessary header. 2010-02-03 22:42:02 -08:00
u_keymap.h
u_linear.c gallium: interface cleanups, remove nblocksx/y from pipe_texture and more 2009-11-30 20:29:18 +01:00
u_linear.h util: Include missing header in u_linear.h. 2010-09-02 16:30:34 -07:00
u_linkage.c util: Silence uninitialized variable warnings. 2010-08-21 15:49:17 -07:00
u_linkage.h gallium: s/bool/boolean/ 2011-06-08 08:05:40 -06:00
u_math.c
u_math.h util: add gcc version check for builtins 2011-06-09 01:14:50 +02:00
u_memory.h util: Silence pointer to integer size mismatch errors. 2010-03-31 20:16:15 +01:00
u_mm.c util: also print out memory statistics 2009-11-25 10:20:08 -05:00
u_mm.h gallium: minor code/comments clean-up 2009-07-28 08:55:43 -06:00
u_network.c util: Add PIPE_OS_CYGWIN to u_network. 2010-07-23 18:50:04 -07:00
u_network.h gallium/util: Add PIPE_OS_APPLE to u_network. 2009-12-22 15:59:50 -08:00
u_pack_color.h util: Cleanup util_pack_z_stencil and friends. 2010-10-06 19:08:18 +01:00
u_pointer.h util: Add a func_to_pointer util function too. 2010-06-14 16:50:39 +01:00
u_prim.h u_prim: convert u_trim_pipe_prim to table driven. 2011-06-03 15:26:59 +10:00
u_pstipple.c gallium/util: new polygon stipple utility helper 2011-03-10 09:44:32 -07:00
u_pstipple.h gallium/util: new polygon stipple utility helper 2011-03-10 09:44:32 -07:00
u_rect.c util: fix util_fill_rect to take util_color instead of u32 param 2010-08-23 17:55:16 +02:00
u_rect.h util: add rectangle helpers to u_rect.h 2010-08-25 10:07:36 +01:00
u_resource.c gallium: kill is_resource_referenced 2011-03-11 21:39:30 +01:00
u_ringbuffer.c Merge remote branch 'origin/lp-binning' 2010-02-05 13:48:35 +00:00
u_ringbuffer.h util: add generic ringbuffer utitilty 2010-01-16 21:15:55 +00:00
u_sampler.c gallium: support for array textures and related changes 2010-12-02 04:33:43 +01:00
u_sampler.h Squashed commit of the following: 2010-04-10 16:05:54 +01:00
u_simple_list.h util: make calling remove_from_list multiple times in a row safe 2010-09-24 02:29:04 +02:00
u_simple_screen.h gallium: add timeout parameter to fence_finish 2011-03-08 23:52:37 +01:00
u_simple_shaders.c u_blitter: interpolate clear color using a GENERIC varying instead of COLOR 2010-11-28 17:45:39 +01:00
u_simple_shaders.h u_blitter: interpolate clear color using a GENERIC varying instead of COLOR 2010-11-28 17:45:39 +01:00
u_slab.c util: rename u_mempool -> u_slab 2010-11-30 10:12:26 +01:00
u_slab.h util: rename u_mempool -> u_slab 2010-11-30 10:12:26 +01:00
u_snprintf.c util: Add cast. 2009-06-18 14:54:09 +01:00
u_split_prim.h util: Add include guard in u_split_prim.h. 2010-08-25 22:55:15 -07:00
u_sse.h gallium: move some intrinsics helpers to u_sse.h 2010-10-15 13:29:56 +01:00
u_staging.c gallium: s/bool/boolean/ 2011-06-08 08:05:40 -06:00
u_staging.h gallium: s/bool/boolean/ 2011-06-08 08:05:40 -06:00
u_string.h util: Use size_t (for x86_64). 2009-03-25 21:01:49 +00:00
u_surface.c galahad,util: warn on resource target mismatch in copy_region 2011-04-21 15:51:18 +02:00
u_surface.h util: C++ safe. 2010-12-02 12:26:55 +00:00
u_surfaces.c init ps->context with util_surfaces_get and do_get 2010-12-05 12:09:38 +01:00
u_surfaces.h init ps->context with util_surfaces_get and do_get 2010-12-05 12:09:38 +01:00
u_texture.c util: Add missing includes. 2010-02-01 15:11:06 +00:00
u_texture.h util: add a function which converts 2D coordinates to cubemap coordinates 2009-12-15 17:59:54 +00:00
u_tile.c gallium/util: added pipe_put_tile_rgba_format() 2011-01-22 18:33:35 -07:00
u_tile.h gallium/util: added pipe_put_tile_rgba_format() 2011-01-22 18:33:35 -07:00
u_time.h Merge remote branch 'origin/lp-binning' 2010-02-05 13:48:35 +00:00
u_transfer.c gallium: kill is_resource_referenced 2011-03-11 21:39:30 +01:00
u_transfer.h gallium: kill is_resource_referenced 2011-03-11 21:39:30 +01:00
u_upload_mgr.c gallium/util: Upload manager optimizations 2011-07-01 13:30:36 +02:00
u_upload_mgr.h gallium/util: Upload manager optimizations 2011-07-01 13:30:36 +02:00
u_vbuf_mgr.c u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmask 2011-06-19 21:09:18 +02:00
u_vbuf_mgr.h u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmask 2011-06-19 21:09:18 +02:00