Commit Graph

29957 Commits

Author SHA1 Message Date
Brian Paul a904a7b990 llvmpipe: manually unroll the inputs.step[] setup code
Good for a few more fps in some tests.
2010-01-21 16:21:33 -07:00
Brian Paul e5829ccc2b progs/demos: call glutDestroyWindow() upon exit 2010-01-21 15:41:03 -07:00
Brian Paul cd9d9e2436 llvmpipe: added simple perf/statistics counting facility
Currently counting number of tris, how many tiles of each size are
fully covered, partially covered or empty, etc.

Set LP_DEBUG=counters to enable.  Results are printed upon context
destruction.
2010-01-21 15:39:57 -07:00
Brian Paul 63f249bf90 llvmpipe: optimize tile writing code
The code which converts/copies color tiles to the linear layout has
been rewritten.  There's less arithmetic and better loop unrolling,
and possibly a better memory access pattern.
Some demos, like gears, are about 20% faster now.
2010-01-20 17:48:13 -07:00
Brian Paul 7319ae0954 llvmpipe: remove tile clipping code
The surface is always a multiple of the tile size now.
2010-01-20 17:47:26 -07:00
Brian Paul 0706dae088 llvmpipe: align display target size to multiple of tile size
This will allow us to skip clipping tiles to surface bounds.
2010-01-20 17:44:12 -07:00
Brian Paul 58903b3781 llvmpipe: put TILE_SIZE #define in its own header
To avoid including lp_tile_soa.h in other places.
2010-01-20 17:23:11 -07:00
Brian Paul 9b534400d9 llvmpipe: add makefile rule for generating .s files 2010-01-20 17:19:00 -07:00
Brian Paul 4d2dc9da82 llvmpipe: updated comment 2010-01-20 11:32:48 -07:00
Brian Paul ec459f2aec llvmpipe: asst. task-related clean-ups 2010-01-19 16:58:25 -07:00
Brian Paul d8d80a8d74 llvmpipe: fix-up comment 2010-01-19 11:58:43 -07:00
Brian Paul 1073e39ab9 llvmpipe: re-order file list, fix indentation 2010-01-19 09:45:51 -07:00
Brian Paul 0fccfc9cc0 llvmpipe: remove unneeded DEBUG checks, use step var 2010-01-19 09:30:44 -07:00
Brian Paul 75f262b8b4 llvmpipe: updated comments 2010-01-19 09:30:13 -07:00
Brian Paul 9a23d810be llvmpipe: tweak a comment 2010-01-18 17:39:54 -07:00
Brian Paul 89bb07730b util: fix broken util_ringbuffer_dequeue()
The tests for an empty ring buffer were incorrect.
Fixes glxinfo segfaults.

Plus, add a new assertion.
2010-01-18 14:35:43 -07:00
Brian Paul 62623c4dc5 llvmpipe: added show_tiles and show_subtiles debug options
These options draw lines over the tiles to show the 64x64 tile
bounds and 16x16 sub-tile bounds.  For debugging/visualization.
2010-01-18 13:10:14 -07:00
Keith Whitwell 591401ff05 llvmpipe: use new u_ringbuffer for scene queue 2010-01-17 00:30:23 +00:00
José Fonseca ba5d600c90 Merge remote branch 'origin/master' into lp-binning
Conflicts:
	src/gallium/drivers/llvmpipe/lp_quad.h
	src/gallium/drivers/llvmpipe/lp_setup.c
2010-01-16 23:21:06 +00:00
Keith Whitwell 164fd16cfb util: add generic ringbuffer utitilty 2010-01-16 21:15:55 +00:00
Chia-I Wu dee52d5bd3 gallium: Fix uninitialized instance divisor and index. 2010-01-16 18:18:09 +01:00
Christoph Bumiller 83387cb6c4 nv50: fix tile flags for scanout tex usage 2010-01-16 18:07:31 +01:00
Christoph Bumiller 0ae3db1734 nv50: handle all and more system values 2010-01-16 18:07:31 +01:00
Christoph Bumiller 4c223aaa3b nv50: hook up geometry programs 2010-01-16 18:07:31 +01:00
Christoph Bumiller bbb615382d nv50: support for geometry programs in nv50_program 2010-01-16 18:07:31 +01:00
Christoph Bumiller e791e6f27c nv50: get access to primitive input space
Vertex data in geometry programs is located in p[] space.
The base address in p[] for vertex i is located in vertex
attribute space, i.e. a[i << 2].

This means p[] is always accessed with an address register,
and I had to to mess with their allocation once again.

Also fixes negative offsets e.g. CONST[ADDR[0].x - 3].
2010-01-16 18:07:30 +01:00
Alex Deucher 8d24273750 r600: remove stray END_BATCH in blit code 2010-01-16 08:45:08 -05:00
Jakob Bornecrantz a5c03bd6f1 draw: Fix memory leak in gs code 2010-01-16 10:44:57 +00:00
Dave Airlie 66e561a036 i965g: make xorg state tracker build i965g_drv.so
don't make modesetting_drv.so anymore
2010-01-16 19:28:45 +10:00
Alex Deucher 8b704396a3 r600: improve blit support
- fill in more src/dst formats
- disable depth copies for now
- set proper data formats in render target regs
- fill in additional default state

The swizzles on some of the less used mesa formats
are probably wrong.
2010-01-15 23:06:18 -05:00
Andre Maasikas 7283a246ce r600: add initial blit support 2010-01-15 23:06:05 -05:00
Alex Deucher ec8ce40083 r600: add r600_blit.c
Unfinished.
2010-01-15 23:05:56 -05:00
Patrice Mandin 923aab93d9 nouveau: nv30: Remove useless variables fs, txp. Also do not change txf, as bit 13 is in the texture format
Signed-off-by: Patrice Mandin <patmandin@gmail.com>
2010-01-15 22:29:13 +01:00
Brian Paul fdfe06ad80 llvmpipe: implement scissor test in triangle setup 2010-01-15 12:06:00 -07:00
Brian Paul adb48d5350 llvmpipe: remove lp_rast_triangle::min/max fields
These values aren't needed outside the do_triangle_ccw() function.
2010-01-15 11:52:14 -07:00
Brian Paul 47fee14687 llvmpipe: skip 4x4 in/out test code
It's a litte faster to just do the in/out testing in the shader
jit code.
2010-01-15 11:35:30 -07:00
Brian Paul 12ba9e99db llvmpipe: added comment about lookup-tables vs. computation 2010-01-15 11:26:35 -07:00
Brian Paul 4bef3575e6 llvmpipe: change 'in' to boolean, add comments 2010-01-15 11:25:13 -07:00
Brian Paul 2797f2bf57 llvmpipe: generate two shader varients, one omits triangle in/out testing
When we know that a 4x4 pixel block is entirely inside of a triangle
use the jit function which omits the in/out test code.

Results in a few percent speedup in many tests.
2010-01-15 11:21:16 -07:00
Michal Krol e124080cd6 util: Handle FORMAT_Z32_FLOAT in util_pack_z(). 2010-01-15 19:00:15 +01:00
Michal Krol 1433a2d935 util: Handle the remaining formats in pipe_put_tile_rgba(). 2010-01-15 19:00:11 +01:00
Michal Krol d29e72633c util: Fix encoding for R8G8B8A8_UNORM formats and friends. 2010-01-15 19:00:09 +01:00
Michal Krol 42d55953b1 tgsi: Add ureg_property_gs_input_prim(). 2010-01-15 19:00:06 +01:00
Michal Krol 181adca5d6 tgsi: Add ureg_src_dimension(). 2010-01-15 19:00:03 +01:00
Michal Krol 857b37980c regress: Add .gitgnore for *.png files. 2010-01-15 18:59:59 +01:00
Michal Krol b96976cc7c draw: Add missing header include. 2010-01-15 18:59:55 +01:00
Brian Paul 3b1920a349 llvmpipe: asst code changes in lp_state_fs.c 2010-01-15 10:25:59 -07:00
Roland Scheidegger bf575b6c27 gallium: document set_constant_buffer 2010-01-15 18:25:14 +01:00
Roland Scheidegger 5e5d0ad081 Merge branch 'gallium-noconstbuf'
Conflicts:
	src/gallium/drivers/softpipe/sp_draw_arrays.c
	src/mesa/state_tracker/st_draw_feedback.c
2010-01-15 18:09:45 +01:00
Brian Paul 345178a7fc llvmpipe: put labels on some value refs 2010-01-15 10:04:16 -07:00