History log of /external/mesa3d/src/mesa/state_tracker/st_atom.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ac032d800e5f4cb3ab9166187150a93c17a508aa 02-Aug-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: _NEW_TEXTURE & CONSTANTS shouldn't flag states that aren't used

Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
c323d5b8096cec3251c7a4a4269f0f7570fb274f 02-Aug-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: when changing shaders, only dirty states that are affected by them

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>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
0be30ea1a87532650d930f76493902217f96955c 02-Aug-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: don't update clip state on VS changes if it has no effect

Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
60dc36a680ff0f768647d928395e19e4fdffa68d 09-Aug-2016 Brian Paul <brianp@vmware.com> st/mesa: define ST_NEW_ flags as uint64_t values, not enums

MSVC doesn't support 64-bit enum values, at least not with C code.
The compiler was warning:

c:\users\brian\projects\mesa\src\mesa\state_tracker\st_atom_list.h(43) : warning
C4309: 'initializing' : truncation of constant value
c:\users\brian\projects\mesa\src\mesa\state_tracker\st_atom_list.h(44) : warning
C4309: 'initializing' : truncation of constant value
...

And at runtime we crashed since the high 32-bits of the 'dirty' bitmask
was always 0xffffffff and the 32+u_bit_scan() index went out of bounds of
the atoms[] array.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
b47839ad8361ef42a0f38c52fe24307b865c5489 17-Jul-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: update sampler states when shaders are changed

This bug seems to have always been there. Applications changing shaders
but not textures between draw calls would have gotten undefined behavior.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
0a46e6f410f2838886828e18f0b6604b2702d809 17-Jul-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: skip updates of states that have no effect

v2: - also don't check edge flags for GLES

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
c8fe3b9dca73e3b91979d92ba4136b302001b3bb 17-Jul-2016 Marek Olšák <marek.olsak@amd.com> st/mesa: completely rewrite state atoms

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>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
d1bdc1238a39469e6760758876e8832019795a54 11-Jun-2016 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add support for GL_EXT_window_rectangles

Make sure to pass the requisite information in draws, blits, and clears
that work on the context's draw buffer.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
78093167b18ac9cb40e449916e85590d595ab297 09-Jan-2016 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add an image atom for shader images

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
805d92e54038255c145e464670d3352276ae27a9 05-Jan-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> st/mesa: add state validation for compute shaders

This binds atomics, constants, samplers, ssbos, textures and ubos.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
7c79c1e3e25857a45150f6a0bf2e813fed074a6c 07-Jan-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> st/mesa: add compute shader states

Changes from v2:
- use as much common code as possible (eg. st_basic_variant)

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
08c46025c87654fbc885136a2c8cc4cce902dd37 05-Jan-2016 Samuel Pitoiset <samuel.pitoiset@gmail.com> st/mesa: add a second pipeline for compute

Compute needs a new and different validation path.

Changes from v2:
- make use of unreachable() instead of assert() when the pipeline is
invalid
- move the st_pipeline enumeration to st_context.h instead of st_api.h

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
688003669469d787847d58572956e9d3fcecaf3c 18-Jan-2016 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add support for SSBO binding and GLSL intrinsics

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>

v1 -> v2: some 80 char reformatting
/external/mesa3d/src/mesa/state_tracker/st_atom.h
9d6f9ccf6b7ca7c9d1ac40354d6ae47c130e2024 20-Sep-2014 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add atomic counter support

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
72f31c63d7b73abcdf47bc303d09987f299aff7a 25-Jul-2015 Marek Olšák <marek.olsak@amd.com> st/mesa: remove st_finalize_textures atom

It only checks fragment textures and ignores other shaders, which makes it
incomplete, and textures are already finalized in update_single_texture.

There are no piglit regressions.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
bda9094f1d69817ed1a51677d38e157ec3b37826 18-May-2015 Marek Olšák <marek.olsak@amd.com> st/mesa: set default tessellation levels
/external/mesa3d/src/mesa/state_tracker/st_atom.h
40bc1c32d2fb42207ea860053045fa49e45d80b9 12-Jul-2014 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add texture updates for tessellation programs
/external/mesa3d/src/mesa/state_tracker/st_atom.h
bda79139d4579b5105c45561401960a82bab2f7e 12-Jul-2014 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: handle constbufs/ubos for tessellation shaders
/external/mesa3d/src/mesa/state_tracker/st_atom.h
ba9fb96f86344f1631b82114bb0ce6f926d3853a 12-Jul-2014 Ilia Mirkin <imirkin@alum.mit.edu> st/mesa: add tessellation shader states

additional fixes by Marek
/external/mesa3d/src/mesa/state_tracker/st_atom.h
c5d822dad902b19f06c9be3c6863a51e1881ec5b 31-Mar-2014 Ilia Mirkin <imirkin@alum.mit.edu> mesa/st: add support for ARB_sample_shading

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
877128505431adaf817dc8069172ebe4a1cdf5d8 17-Jan-2014 José Fonseca <jfonseca@vmware.com> s/Tungsten Graphics/VMware/

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>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
038a9aab33070b9ff48bb082dd1c731d89e2f9b4 13-Oct-2013 Dave Airlie <airlied@gmail.com> st/mesa: add geometry shader ubo support

This just adds the missing bits so the ubo tests don't crash.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
73ae865af8794c053812cbb5fe9532b1b6113515 06-Dec-2012 Dave Airlie <airlied@redhat.com> mesa/st: add ARB_uniform_buffer_object support (v2)

this adds UBO support to the state tracker, it works with softpipe
as-is.

It uses UARL + CONST[x][ADDR[0].x] type constructs.

v2: don't disable UBOs if geom shaders don't exist (me)
rename upload to bind (calim)
fix 12 -> 13 comparison as comment (calim + brianp)
fix signed->unsigned (Brian)
remove assert (Brian)

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
f3c3aff6efed49b7740a144f767c713cb22561e2 10-Aug-2012 Brian Paul <brianp@vmware.com> st/mesa: add support for GS textures and samplers
/external/mesa3d/src/mesa/state_tracker/st_atom.h
b4753dafcce4fc771ec3d7e3d5781bd4cae20326 12-May-2012 Marek Olšák <maraeo@gmail.com> st/mesa: atomize vertex array state

This moves the state validation to where all the other states are validated.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
bb31ecf4fb5b2dc9bad801397562535bf38ccf9b 18-May-2011 Dave Airlie <airlied@redhat.com> mesa/st: split updating vertex and fragment shader stages.

this seems like a logical thing to do and sets the correct st flags
for vertex textures.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/state_tracker/st_atom.h
fa5309f0b09f7216ddf7f00cc4f318fa9db9128d 16-Oct-2010 Brian Paul <brianp@vmware.com> st/mesa: use GLuint to avoid problem w/ uint not defined on mingw32
/external/mesa3d/src/mesa/state_tracker/st_atom.h
df66c641e34b87fdb1fae5cae544203e36ca12d3 03-Aug-2010 Vinson Lee <vlee@vmware.com> st/mesa: Include glheader.h in st_atom.h.

Include glheader.h for GLenum symbol.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
da7bd6a90e1fee5c16327338fd251c0f6be34e36 28-Jun-2010 Zack Rusin <zackr@vmware.com> mesa: initial support for ARB_geometry_shader4

laying down the foundation for everything and implementing most of the
stuff.
linking, gl_VerticesIn and multidimensional inputs are left.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
127328bfadaa5f080730fd41f404f1bc74f490d3 17-May-2010 Roland Scheidegger <sroland@vmware.com> mesa/st: adapt to interface changes

adapt to blit changes, and also handle a bit more msaa state in theory
(incomplete, doesn't handle resolves in any way for now).
/external/mesa3d/src/mesa/state_tracker/st_atom.h
07fafc7c9346aa260829603bf3188596481e9e62 15-Nov-2009 Keith Whitwell <keithw@vmware.com> mesa/st: refactor vertex and fragment shader translation

Translate vertex shaders independently of fragment shaders.

Previously tried to make fragment shader semantic indexes always start
at zero and exclude holes. This was unnecessary but meant that vertex
shader translation had to be adjusted to take this into account.

Now use a fixed scheme for labelling special FS input semantics
(color, etc), and another fixed scheme for the generics.

With this, vertex shaders can be translated independently of the bound
fragment shader, assuming mesa has done its own job and ensured that
the vertex shader provides at least the inputs the fragment shader is
looking for. The state-tracker didn't attempt to do anything about
this previously, so it shouldn't be needed now.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
1a82d9648b3db780e58e4966924157542d148c58 08-May-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix some render to texture bugs

Before, we were sometimes rendering into a stale texture because
st_finalize_texture() would discard the old texture and create a new one.

Moved st_update_framebuffer atom after texture validation so that we
can create a new renderbuffer surface if the texture changes.

Also, split texture validation into two parts: finalize_textures and
update_textures. Do finalize_textures first to avoid getting into the
situtation where we're doing a pipe->surface_copy() mid-way through
state validation.

Some debug code still in place, but disabled...
/external/mesa3d/src/mesa/state_tracker/st_atom.h
736374c1052be647bd7c377344acf8db0af4ddfc 06-May-2008 Alan Hourihane <alanh@tungstengraphics.com> declare atoms as extern
/external/mesa3d/src/mesa/state_tracker/st_atom.h
bfe79babf99e6b9435195178d1ea64687c60d161 17-Dec-2007 Keith Whitwell <keith@tungstengraphics.com> gallium: incorporate alpha state into depth_stencil state object.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
94cadef31f9d4ee9fce1bfa66fabb0a403a6f049 11-Dec-2007 Keith Whitwell <keith@tungstengraphics.com> gallium: remove redundant clear_color state.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
b18763141d651ae1112e80bb7ef3e813c8ce1d18 08-Nov-2007 Brian <brian.paul@tungstengraphics.com> Replace gl_stencil_func_to_sp() and gl_depth_func_to_sp() with st_compare_func_to_pipe()
/external/mesa3d/src/mesa/state_tracker/st_atom.h
8db4acc5547370761a9a489c947e9621adc8f945 31-Oct-2007 Brian <brian.paul@tungstengraphics.com> No longer need st_update_tnl atom
/external/mesa3d/src/mesa/state_tracker/st_atom.h
088e80f6dbdaa8bdcac2d9a46e8d5f387c116371 30-Oct-2007 Brian <brian.paul@tungstengraphics.com> added st_update_pixel_transfer atom
/external/mesa3d/src/mesa/state_tracker/st_atom.h
40c543eb71368c646259afb87d5c76551f6b45b7 25-Sep-2007 Brian <brian.paul@tungstengraphics.com> Translate mesa vertex/fragment programs to TGSI programs at same time to do 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.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
6cb87cf26f904b891faa42268f373864fa33541d 21-Sep-2007 Zack Rusin <zack@tungstengraphics.com> Make the alpha test state a cso.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
294401814d1d89cc731de1c22c25333aa5d59374 17-Sep-2007 Zack Rusin <zack@tungstengraphics.com> converting the setup state to immutable object and renaming it to rasterizer state
/external/mesa3d/src/mesa/state_tracker/st_atom.h
d6ac959833a8e40a27907940969c622692f749b1 17-Sep-2007 Zack Rusin <zack@tungstengraphics.com> Combing depth and stencil objects and making them immutable.

Converting depth and stencil objects into a single state object
(d3d10 like) and making it immutable.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
07d97e80e616d9fdc437d3b41055c347d5c54932 24-Aug-2007 Keith Whitwell <keith@tungstengraphics.com> checkpoint in constant tracking rework
/external/mesa3d/src/mesa/state_tracker/st_atom.h
b3f067e8593b9fda0474041f32479b20cd64e728 18-Aug-2007 Brian <brian.paul@tungstengraphics.com> added tnl state atom
/external/mesa3d/src/mesa/state_tracker/st_atom.h
d78dab126724e6e9d475289a086fb6f85adc3985 07-Aug-2007 Brian <brian@i915.localnet.net> plug in texture/sampler state update
/external/mesa3d/src/mesa/state_tracker/st_atom.h
4824c342c864e870251a7d343c95e51274e50d23 19-Jul-2007 Keith Whitwell <keith@tungstengraphics.com> Trigger tgsi compilation for fragment programs.

Not sure the generated program looks correct though...
/external/mesa3d/src/mesa/state_tracker/st_atom.h
e89bd0fbc56ecfb96f3aff926c5891c45221dd37 11-Jul-2007 Brian <brian.paul@tungstengraphics.com> Implement polygon stipple state tracking, application.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
1be17dc446aa6b0770d76a3eccf79d0faf6608c0 27-Jun-2007 Brian <brian.paul@tungstengraphics.com> consolidate point/line state into pipe_setup_state
/external/mesa3d/src/mesa/state_tracker/st_atom.h
73f96c51052bf5233191d852ef463462306bf1d5 20-Jun-2007 Brian <brian.paul@tungstengraphics.com> Initial work for glClear(), clear color state.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
6cb2d0cb71d2019bd2c941a8c042e56275b22c1c 20-Jun-2007 Brian <brian.paul@tungstengraphics.com> hook up point state
/external/mesa3d/src/mesa/state_tracker/st_atom.h
af9b5ca0359b5712509d7815a7fbc81a3255f4af 20-Jun-2007 Brian <brian.paul@tungstengraphics.com> Re-org of surface/framebuffer state.

We should be able to render to any depth/format of X window now.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
3cdd8bfe8e5afa57001c605b42bfac1f3fbc4eb8 15-Jun-2007 Brian <brian.paul@tungstengraphics.com> Added st_update_framebuffer struct/object.
/external/mesa3d/src/mesa/state_tracker/st_atom.h
6393cda6766b707ef01e925d378239a66d143ae0 14-Jun-2007 Keith Whitwell <keith@tungstengraphics.com> Renamed softpipe directories and files to something less confusing.

softpipe/state_tracker --> state_tracker/
softpipe/ --> pipe/
softpipe/generic --> pipe/softpipe/

I don't think pipe is a great name, but I disliked all the others too.
Luckily it's fairly easy to rename with git, so this can be revisited
later.
/external/mesa3d/src/mesa/state_tracker/st_atom.h