Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-06-11 | ir_constant_visitor: Handle dereferences of constant records | Ian Romanick | |
2010-06-11 | ir_constant: Add get_record_field query | Ian Romanick | |
2010-06-11 | Add glsl_types::field_index to get the location of a record field | Ian Romanick | |
2010-06-11 | Detect and process constant record constructors | Ian Romanick | |
2010-06-11 | Move parameter processing out of match_function_by_name | Ian Romanick | |
Eventually code that processes constant structure constructors will need to use the processed list of parameters. | |||
2010-06-11 | ir_constant_visitor: Use clone to create a constant from a variable reference | Ian Romanick | |
2010-06-11 | ir_constant: Support constant structures in clone | Ian Romanick | |
2010-06-11 | ir_constant: Add storage for multiple constants for arrays and records | Ian Romanick | |
2010-06-11 | Add glsl_type::is_record query | Ian Romanick | |
2010-06-11 | Add float/bool conversion to ir_constant_expression.cpp. | Ian Romanick | |
2010-06-11 | Constant-fold constructor parameters after type conversion | Ian Romanick | |
This causes the following tests to pass: glslparsertest/shaders/CorrectMatComma2.frag One of the incorrect errors in glslparsertest/shaders/CorrectComma.frag is also eliminated. | |||
2010-06-11 | Make constructors with all constant parameters generate in-line constants | Ian Romanick | |
2010-06-11 | Construct an ir_constant from a list of ir_constant values | Ian Romanick | |
2010-06-11 | Add queries to determine if a node is a list sentinal | Ian Romanick | |
2010-06-11 | Add methods to ir_constant to get scalar components in a particular type | Ian Romanick | |
2010-06-11 | Derefence components of constants smarter | Ian Romanick | |
During generation of calls to constructors, derefernce constants by creating new constants instead of creating dereferences. | |||
2010-06-11 | Construct an ir_constant from a scalar component of another ir_constant | Ian Romanick | |
2010-06-11 | Use ir_unop_b2i when converting a bool-to-int and add a missing break | Ian Romanick | |
The previous code just had dumb cut-and-paste errors. | |||
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 | gallium/softpipe/draw: support samplers in geometry shaders | Zack Rusin | |
2010-06-11 | tgsi: support 2d indirect addressing | Zack Rusin | |
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 | mesa: rename src/mesa/shader/ to src/mesa/program/ | Brian Paul | |
2010-06-11 | docs: Update EGL doc. | Chia-I Wu | |
Update for recent removal of demos and additions of new displays and functions. | |||
2010-06-11 | st/egl: Do not build non-working driver combinations. | Chia-I Wu | |
The KMS backend requires a hardware pipe driver. Do not build egl_kms_swrast. Also, only build egl_fbdev_swrast for fbdev backend. It is a pure software backend. | |||
2010-06-11 | st/egl: Add fbdev backend. | Chia-I Wu | |
The backend is pure software. It implements EGL_MESA_screen_surface extension, and is kept simple by only exporting the current mode. | |||
2010-06-10 | mesa: move shader/slang/* sources to main/slang/* | Brian Paul | |
Reduce the source tree depth a bit. | |||
2010-06-10 | mesa: move nvprogram.[ch] to main/ | Brian Paul | |
2010-06-10 | mesa: move arbprogram.[ch] to main/ | Brian Paul | |
2010-06-10 | mesa: move atifragshader.[ch] to main/ | Brian Paul | |
2010-06-10 | mesa: move uniforms.c to main/ | Brian Paul | |
2010-06-11 | winsys: Add fbdev software winsys. | Chia-I Wu | |
This is a simple winsys that mmap()s the framebuffer device and memcpy()s the contents of display targets to the framebuffer device for displaying. |