summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_cb_feedback.c
Commit message (Collapse)AuthorAgeFilesLines
* st/mesa: when changing shaders, only dirty states that are affected by themMarek Olšák2016-08-121-1/+5
| | | | | | | This reduces the amount of state processing that has no effect. Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* st/mesa: don't update clip state on VS changes if it has no effectMarek Olšák2016-08-121-1/+1
| | | | | Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* state_tracker: Initialize the draw context only when needed.Eric Anholt2016-08-041-1/+4
| | | | | | | | | | | It's only used for rarely-used deprecated GL features (feedback/rasterpos), so we can skip the memory allocation and initialization for it most of the time. Saves about 659k (out of 1605k) of maximum memory size according to massif on simulated vc4 glsl-algebraic-add-add-1 Reviewed-by: Brian Paul <brianp@vmware.com>
* st/mesa: completely rewrite state atomsMarek Olšák2016-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | The goal is to do this in st_validate_state: while (dirty) atoms[u_bit_scan(&dirty)]->update(st); That implies that atoms can't specify which flags they consume. There is exactly one ST_NEW_* flag for each atom. (58 flags in total) There are macros that combine multiple flags into one for easier use. All _NEW_* flags are translated into ST_NEW_* flags in st_invalidate_state. st/mesa doesn't keep the _NEW_* flags after that. torcs is 2% faster between the previous patch and the end of this series. v2: - add st_atom_list.h to Makefile.sources Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* st/mesa: replace INLINE with inlineBrian Paul2015-02-261-1/+1
| | | | Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
* s/Tungsten Graphics/VMware/José Fonseca2014-01-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tungsten Graphics Inc. was acquired by VMware Inc. in 2008. Leaving the old copyright name is creating unnecessary confusion, hence this change. This was the sed script I used: $ cat tg2vmw.sed # Run as: # # git reset --hard HEAD && find include scons src -type f -not -name 'sed*' -print0 | xargs -0 sed -i -f tg2vmw.sed # # Rename copyrights s/Tungsten Gra\(ph\|hp\)ics,\? [iI]nc\.\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./g /Copyright/s/Tungsten Graphics\(,\? [iI]nc\.\)\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./ s/TUNGSTEN GRAPHICS/VMWARE/g # Rename emails s/alanh@tungstengraphics.com/alanh@vmware.com/ s/jens@tungstengraphics.com/jowen@vmware.com/g s/jrfonseca-at-tungstengraphics-dot-com/jfonseca-at-vmware-dot-com/ s/jrfonseca\?@tungstengraphics.com/jfonseca@vmware.com/g s/keithw\?@tungstengraphics.com/keithw@vmware.com/g s/michel@tungstengraphics.com/daenzer@vmware.com/g s/thomas-at-tungstengraphics-dot-com/thellstom-at-vmware-dot-com/ s/zack@tungstengraphics.com/zackr@vmware.com/ # Remove dead links s@Tungsten Graphics (http://www.tungstengraphics.com)@Tungsten Graphics@g # C string src/gallium/state_trackers/vega/api_misc.c s/"Tungsten Graphics, Inc"/"VMware, Inc"/ Reviewed-by: Brian Paul <brianp@vmware.com>
* st/mesa: fix GL_FEEDBACK mode inverted Y coordinate bugBrian Paul2013-11-191-2/+4
| | | | | | | | | | We need to check the drawbuffer's orientation before inverting Y coordinates. Fixes piglit feedback tests when running with the -fbo option. Cc: "9.2" "10.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* st/mesa: remove #include mfeatures.hBrian Paul2013-04-091-1/+0
| | | | | | None of these were needed. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
* Replace gl_vert_result enum with gl_varying_slot.Paul Berry2013-03-151-2/+2
| | | | | | | | | | | This patch makes the following search-and-replace changes: gl_vert_result -> gl_varying_slot VERT_RESULT_* -> VARYING_SLOT_* Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> Tested-by: Brian Paul <brianp@vmware.com>
* mesa: remove FEATURE_feedback define.Oliver McFadden2012-09-151-4/+0
| | | | | Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com> Reviewed-by: Brian Paul <brianp@vmware.com>
* st/mesa: Include mfeatures.h in files that perform feature tests.Vinson Lee2011-01-091-0/+1
|
* Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg2010-10-131-5/+5
|
* st/mesa: Make FEATURE_feedback and FEATURE_rastpos more modular.Chia-I Wu2010-05-121-0/+4
| | | | | | Make st_cb_feedback.h FEATURE_feedback aware and st_cb_rastpos.h FEATURE_rastpos aware. Move creation of selection/feedback draw context to st_init_draw.
* st/mesa: clean-up: use st_context() everywhereBrian Paul2010-04-231-2/+2
|
* mesa: Eliminate index parameter to _mesa_feedback_vertexIan Romanick2010-03-031-2/+1
| | | | Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
* st/mesa: Remove unnecessary headers.Vinson Lee2010-02-031-1/+0
|
* st/mesa: Remove unnecessary headers from st_cb_feedback.c.Vinson Lee2010-01-151-3/+0
|
* mesa: fix remaining FEEDBACK_TOKEN macrosJoakim Sindholt2009-02-281-5/+5
| | | | Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
* mesa: use new ST_CALLOC_STRUCT() macro in gallium state trackerBrian Paul2009-02-121-2/+2
|
* gallium: make p_winsys internalZack Rusin2009-01-301-1/+0
| | | | | move it to pipe/internal/p_winsys_screen.h and start converting the state trackers to the screen usage
* gallium: plug in dummy stage->destroy funcBrian Paul2008-05-081-0/+7
|
* draw: move some pipeline-specific code & state to draw_pipe.[ch]Keith Whitwell2008-04-191-1/+1
|
* gallium: plug in a select_destroy() function (fixes segfault on exit)Brian Paul2008-04-171-0/+7
|
* Code reorganization: update build.José Fonseca2008-02-151-3/+3
| | | | | | | | | Update the Makefiles and includes for the new paths. Note that there hasn't been no separation of the Makefiles yet, and make is jumping all over the place. That will be taken care shortly. But for now, make should work. It was tested with linux and linux-dri. Linux-cell and linux-llvm might require some minor tweaks.
* gallium: replace prim pipeline begin/end() functions with flush()Brian2008-01-251-20/+4
| | | | | | | | | | | | | This is basically half of Keith's draw/flush patch. The stage->point/line/tri() functions are now self-validating, the validator functions are installed by the flush() function. There were excessive calls to validate_pipeline(), however. This was caused by draw_prim_queue_flush() keeping a local 'first' variable that always pointed to the validate functions. Replaced 'first' with 'draw->pipeline.first'. Performance in gears is up just slightly with this patch.
* gallium: silence warningsBrian2008-01-211-2/+2
|
* New vbo_set_draw_func() to keep vbo context opaque to state tracker and tnl ↵Brian2007-12-071-5/+3
| | | | module.
* remove #include vf.hBrian2007-10-171-1/+0
|
* Undo prev changes.Brian2007-10-151-23/+6
|
* setup vertex format for GL_FEEDBACK modeBrian2007-10-151-0/+14
|
* GL_SELECT mode works nowBrian2007-10-151-0/+7
|
* Translate mesa vertex/fragment programs to TGSI programs at same time to do ↵Brian2007-09-251-2/+2
| | | | | | | | | | | | | | | | | | proper linking. Previously, programs were translated independently during validation. The problem is the translation to TGSI format, which packs shader input/outputs into continuous slots, depends on which vertex program is being paired with which fragment shader. Now, we look at the outputs of the vertex program in conjunction with the inputs of the fragment shader to be sure the attributes match up correctly. The new 'linked_program_pair' class keeps track of the associations between vertex and fragment shaders. It's also the place where the TGSI tokens are kept since they're no longer per-program state but per-linkage. Still a few loose ends, like implementing some kind of hash/lookup table for linked_program_pairs.
* remove #includes of tgsi_attribs.hBrian2007-09-201-1/+0
|
* Checkpoint: vertex attribute clean-up.Brian2007-09-201-2/+8
| | | | | Remove/disable the attrib/slot mapping arrays in a few places. Work in progress...
* Finishing up rename of the setup state to the rasterizer state.Zack Rusin2007-09-181-2/+2
|
* selection/feedback supportBrian2007-09-171-0/+306