Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-06-18 | i965: Fix the name of aa_coverage_slope in the improved AA line params. | Eric Anholt | |
2010-06-16 | intel: Remove unnecessary headers. | Vinson Lee | |
2010-06-16 | r600: GL_COORD_REPLACE state is only relevant when point sprites are enabled. | Henri Verbeet | |
2010-06-16 | r600: fix warnings | Marc | |
2010-06-14 | i965: Remove unnecessary header. | Vinson Lee | |
2010-06-14 | i965: Fix surface state dumping with INTEL_DEBUG=batch. | Eric Anholt | |
I broke this with the state streaming changes. | |||
2010-06-14 | i965: correct the gen6 line stipple enable define. | Zhenyu Wang | |
2010-06-14 | intel: Remove long-dead comment about releasing texture heaps. | Eric Anholt | |
BOs are stored in the bufmgr, which is freed as part of the screen structure. | |||
2010-06-12 | i965: Fix gen6 front cull mode. | Eric Anholt | |
2010-06-12 | i965: Use the new message header format for FF_SYNC on gen6. | Zhenyu Wang | |
2010-06-12 | i965: Add support for math instructions in the gen6 WM. | Zhenyu Wang | |
2010-06-12 | i965: Set the correct WM GRF start reg on gen6. | Zhenyu Wang | |
2010-06-12 | i965: Update gen6 paths for the streaming rework. | Eric Anholt | |
2010-06-12 | i965: Stream out CC unit state. | Eric Anholt | |
before: [ # ] backend test min(s) median(s) stddev. count [ 0] gl firefox-talos-gfx 31.791 32.287 1.11% 6/6 after: [ 0] gl firefox-talos-gfx 31.198 31.675 0.96% 6/6 | |||
2010-06-12 | r300/compiler: fix scons build | Joakim Sindholt | |
2010-06-12 | i965: Remove unnecessary header. | Vinson Lee | |
2010-06-11 | r300/compiler: Handle more complex conditionals in loops. | Tom Stellard | |
2010-06-11 | r300/compiler: Fix warning. | Tom Stellard | |
2010-06-11 | r300/compiler: Handle SGT and SLE at the beginning of loops. | Tom Stellard | |
2010-06-11 | r300/compiler: Verify assumptions about opcode types. | Tom Stellard | |
2010-06-11 | r300/compiler: Unroll loops that decrement the counter. | Tom Stellard | |
e.g. for(i=10; i>0; i--) | |||
2010-06-11 | r300/compiler: Unroll loops that have a constant number of iterations. | Tom Stellard | |
This only works with for loops that increment the counter. e.g. for(i=0; i<10; i++) | |||
2010-06-11 | r300/compiler: Implement simple loop emulation | Tom Stellard | |
The loop emulation unrolls loops as may times as possbile while still keeping the shader program below the maximum instruction limit. At this point, there are no checks for constant conditionals. This is only enabled for fragment shaders. | |||
2010-06-11 | i965: Remove the surface key used to generate constant surfaces. | Eric Anholt | |
We had to fill out all that junk when using the cache, but no more. | |||
2010-06-11 | i965: Warning fixes from the i965-streaming merge. | Eric Anholt | |
2010-06-11 | i965: Use the state base address to avoid relocations. | Eric Anholt | |
This makes the binding table code simpler, and is required for gen6, which requires binding table addresses to be under 64k offset from the surface state base addr. No significant change in performance on firefox-talos-gfx. | |||
2010-06-11 | i965: GC the last two arguments to brw_cache_data. | Eric Anholt | |
Now that the binding table is streamed indirect state, they were always NULL/0. | |||
2010-06-11 | i965: Remove brw_state_cache_bo_delete now that it's unused again. | Eric Anholt | |
2010-06-11 | i965: Remove caching of surface state objects. | Eric Anholt | |
It turns out that computing a 56 byte key to look up a 20-byte object out of a hash table was some sort of a bad idea. Whoops. before: [ # ] backend test min(s) median(s) stddev. count [ 0] gl firefox-talos-gfx 37.799 38.203 0.39% 6/6 after: [ 0] gl firefox-talos-gfx 34.761 34.784 0.17% 5/6 | |||
2010-06-11 | i965: Convert the binding table to streamed indirect state. | Eric Anholt | |
This slightly reduces reduces cairo-gl firefox-talos-gfx runtime on my Ironlake: before: [ # ] backend test min(s) median(s) stddev. count [ 0] gl firefox-talos-gfx 38.236 38.383 0.43% 5/6 after: [ 0] gl firefox-talos-gfx 37.799 38.203 0.39% 6/6 It turns out the cost of caching these objects and looking them up in the cache again is greater than the cost of just computing the object again, particularly when the overhead of having a separate BO to pin is removed. (Those that are paying close attention will note that this is a reversal of the path I was moving the driver in a couple of years ago. The major thing that has changed is that back then all state was recomputed when we wrapped the streaming state buffer, including recompiling our precious programs. Now, we're uncaching just the objects that are cheap to compute, and retaining caching of expensive objects) | |||
2010-06-11 | i965: Split constant buffer setup from its surface state/binding state. | Eric Anholt | |
This was bothering me when redoing the binding tables. | |||
2010-06-11 | i965: Add support for streaming indirect state rather than caching objects. | Eric Anholt | |
2010-06-11 | i965: Set the CC VP state immediately on state change. | Eric Anholt | |
The cache lookup of these two little floats was .12% of total CPU time on firefox-talos-gfx because we did it any time commonly-changed state changed. On the other hand, updating the CC VP bo immediately whenver CC VP state changes is a .07% overhead due to putting a driver hoook in glEnable(). | |||
2010-06-11 | i965: Update old comment about state cache sizing. | Eric Anholt | |
2010-06-11 | i965: Move no_batch_wrap assertion out across the area we're trying to verify. | Eric Anholt | |
It's more likely that we wrap badly in state setup than in the little primitive packet. | |||
2010-06-10 | i965: remove UseProgram driver callback | Brian Paul | |
It just duplicated the default/core Mesa behaviour. | |||
2010-06-10 | intel: Remove unnecessary header. | Vinson Lee | |
2010-06-10 | i965: Add support for GL_ALPHA framebuffer objects. | Eric Anholt | |
2010-06-09 | intel: Use the blitter to upload TexSubImage data to busy textures. | Eric Anholt | |
This avoids many pipeline stalls in cairo-gl. [ # ] backend test min(s) median(s) stddev. count Before: [ 0] gl firefox-talos-gfx 36.799 36.851 2.34% 3/3 [ 0] gl firefox-talos-svg 33.429 35.360 3.46% 3/3 After: [ 0] gl firefox-talos-gfx 35.895 36.250 0.48% 3/3 [ 0] gl firefox-talos-svg 26.669 29.888 5.34% 3/3 This doesn't avoid all the pipeline stalls because the kernel reports !busy for buffers on the flushing list. That should be fixed in .36. | |||
2010-06-09 | i965: Avoid calloc/free in the CURBE upload process. | Eric Anholt | |
In exchange we end up with an extra memcpy, but that seems better than calloc/free. Each buffer is 4k maximum, and on the i965-streaming branch this allocation was showing up as the top entry in brw_validate_state profiling for cairo-gl. | |||
2010-06-08 | intel: Flag NEW_BUFFERS when changing draw buffers. | Eric Anholt | |
There were entries to this function (most imporantly, prepare_render -> update_renderbuffers) that wouldn't have had NEW_BUFFERS set, but brw_wm_surface_state (the i965 state tracking the drawing regions) expected this to change. | |||
2010-06-08 | intel: Convert remaining dri_bo_emit_reloc to drm_intel_bo_emit_reloc. | Eric Anholt | |
The new API makes so much more sense, I'd like to forget how the old one worked. | |||
2010-06-08 | intel: Change dri_bo_* to drm_intel_bo* to consistently use new API. | Eric Anholt | |
The slightly less mechanical change of converting the emit_reloc calls will follow. | |||
2010-06-08 | intel: Clean up stale comments in intel_batchbuffer.c. | Eric Anholt | |
2010-06-08 | intel: Remove the non-gem paths for batchbuffer upload. | Eric Anholt | |
2010-06-08 | intel: Update comment in intel_tex_copy from before miptree x/y rework. | Eric Anholt | |
2010-06-08 | r600: Make next_inst() static. | Henri Verbeet | |
2010-06-08 | r600: Assert output registers have a valid export index. | Henri Verbeet | |
2010-06-08 | r600: Process exports for all written fragment outputs. | Henri Verbeet | |
2010-06-08 | r600: Fill uiFP_OutputMap for all written fragment outputs. | Henri Verbeet | |