History log of /external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bef196c7929606bb8c7e9c06fe83a90fc0d95f09 10-Aug-2012 Brian Paul <brianp@vmware.com> draw: move tgsi-related state into a tgsi sub-struct

To better organize things a bit.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
fa2a76a21c8c513de506f2c5ec938c829cc65fdf 28-Jan-2012 Dave Airlie <airlied@redhat.com> draw: fix fog coord export.

This does what we do in the hw drivers, and only export the X.

fixes the fogcoord.dp* tests.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
6b63e25b3d7a6ac0bd738c139ead0c7e7ad84368 14-Jan-2012 Tom Stellard <tstellar@gmail.com> gallium: Prefix #defines in tgsi_exec.h with TGSI_
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
34a78b7ef6b0edf217acf221eab4b63542be5552 05-Jan-2012 Dave Airlie <airlied@redhat.com> tgsi/softpipe: add VertexID support.

This required changing the system value semantics, so we stored
a system value per vertex, instance id is the only other system
value we currently support, so I span it across the channels.

This passes the 3 vertexid-* piglit tests + lots of instanceid tests.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
ec8cbd79ac4065111365a6720c9564de56855cc8 04-Jan-2012 Dave Airlie <airlied@redhat.com> draw/softpipe: EXT_transform_feedback support (v2)

This replaces the current code with an implementation compatible with
the new gallium interface. I've left some of the remains of the interface
intact so llvmpipe keeps building correctly, and I'll take a look at fixing
llvmpipe up later.

v2: fixup as per Brian's review

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
5f996e2b1d09dad64c088ccabb1a4a53ebfb8102 16-Feb-2011 Luca Barbieri <luca@luca-barbieri.com> draw: implement vertex color clamping, and disable SSE and PPC paths

(some little changes by Marek Olšák)

Squashed commit of the following:

commit 737c0c6b7d591ac0fc969a7590e1691eeef0ce5e
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Fri Aug 27 02:13:57 2010 +0200

draw: disable SSE and PPC paths (use LLVM instead)

These paths don't support vertex clamping, and are anyway
obsoleted by LLVM.

If you want to re-enable them, add vertex clamping and test that it
works with the ARB_color_buffer_float piglit tests.

commit fed3486a7ca0683b403913604a26ee49a3ef48c7
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:27:38 2010 +0200

draw_llvm: respect vertex color clamp

commit ef0efe9f3d1d0f9b40ebab78940491d2154277a9
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Thu Aug 26 18:26:43 2010 +0200

draw: respect vertex clamping in interpreter path
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
652901e95b4ed406293d0e1fabee857c054119b1 15-Jan-2011 Brian Paul <brianp@vmware.com> Merge branch 'draw-instanced'

Conflicts:
src/gallium/auxiliary/draw/draw_llvm.c
src/gallium/drivers/llvmpipe/lp_state_fs.c
src/glsl/ir_set_program_inouts.cpp
src/mesa/tnl/t_vb_program.c
b7e150605d402224cdd8fa3d186924bdee3c6c49 16-Dec-2010 Brian Paul <brianp@vmware.com> draw: s/varient/variant/
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
0be042cb4d256393750f7060d79bdaa2cd47d72e 09-Dec-2010 Brian Paul <brianp@vmware.com> draw: setup instance ID for VS interpreter
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
ba2cc3b8e6ad161181b67fd2575c6bc768584d23 29-Jul-2010 Brian Paul <brianp@vmware.com> gallium: implement bounds checking for constant buffers

Plumb the constant buffer sizes down into the tgsi interpreter where
we can do bounds checking. Optional debug code warns upon out-of-bounds
reading. Plus add a few other assertions in the TGSI interpreter.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
35883f42967a6dd31939e5653a818233c2e34abf 28-Apr-2010 Brian Paul <brianp@vmware.com> draw: put 'create' in the vs varient create function names
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
7c5f255201f42303188137f56ea8acc030444f0e 25-Jan-2010 Michal Krol <michal@vmware.com> gallium: Rename PIPE_MAX_CONSTANT to PIPE_MAX_CONSTANT_BUFFERS.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
9851644435f991a1a1bbb145333a97601627b37d 25-Jan-2010 Michal Krol <michal@vmware.com> gallium: Enable multiple constant buffers for vertex and geometry shaders.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
835bab0143e11ab98551a061043f944fd6eab456 19-Jan-2010 Michal Krol <michal@vmware.com> gallium: Implement 2D constant buffers for fragment shader in softpipe.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
c202fe187cf7a08d60e23ce617a5820a8bc510fd 16-Jul-2009 Keith Whitwell <keith@tungstengraphics.com> gallium: reduce recursive include of tgsi_exec.h

A lot of draw code no longer needs to see this header.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
6175653d0bceedba1f599d27111bab14f312f134 16-Jul-2009 Keith Whitwell <keith@tungstengraphics.com> gallium: proper constructor and destructor for tgsi_exec_machine

Centralize the creation, initialization and destruction of this struct.
Use align_malloc instead of home-brew alternatives.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
986d4a9ec60ee52067b2d6f81c05f8ec3b8dc8b1 02-May-2009 Brian Paul <brianp@vmware.com> draw: added some inf/nan debug code (disabled)
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
ef6f1027ff0b6027976a7467b8461ffdd53ce2a8 01-Apr-2009 Brian Paul <brianp@vmware.com> draw: added Nan/Inf assertion in debug code
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
f2bccfd3c806a879abf0c40858806ec3825d0628 03-Dec-2008 Brian <brian.paul@tungstengraphics.com> gallium: added draw_texture_samplers() to support texture fetches from vertex shaders

This may only be practical for the softpipe driver at this time.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
80a718a63bf2fa817e346f0f5731ee9ef2e0e68b 05-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

src/gallium/auxiliary/rtasm/rtasm_execmem.c
src/mesa/shader/slang/slang_emit.c
src/mesa/shader/slang/slang_log.c
src/mesa/state_tracker/st_atom_framebuffer.c
f0debbb0bb951bfc6dc0ae467564b3b1230324cf 05-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: call tgsi_set_exec_mask() and use exec mask in SSE ARL code

This prevents vertex shaders from referencing invalid memory locations when
the shader is operating on less than four vertices or fragments.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
05a8f203cdea768466e5faf1dec4155e1e945c78 15-Oct-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix the test in vs_exec_prepare() to avoid redundant bindings

Fixes regressions seen in progs/samples/prim.c, progs/demos/ray.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
e852232ebf256d1587ae0d456c366553749fd275 14-Sep-2008 Michal Krol <michal@tungstengraphics.com> draw: Silence compiler warnings on Windows.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
9defef29c59c580da1f6312f737822cd2efc9e28 12-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: avoid redundant tgsi_exec_machine_bind_shader() calls on draw exec path

tgsi_exec_machine_bind_shader() isn't cheap so avoiding unecessary calls
is a big win.
A similar change should be done for softpipe's fragment exec path but
extra care needs to be taken with the texture sampler state/params.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
4f25420bdd834e81a3e22733304efc5261c2998a 25-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.h

Also, rename p_tile.[ch] to u_tile.[ch]
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
c208a2c791fa24c7c5887fc496738cbddbfafc72 27-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> Merge tgsi/exec and tgsi/util directories.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
7c99d7fe60e7bb0b7cf103a851aeef4614278ca6 15-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: create specialized vs varients incorporating fetch & emit
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
2f0d1396e4c1626b3b1ac799bd29e86a9530369e 13-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move some state into a new 'vs' area
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
9671f7ae476cadb46f9f8f9d0363f24aabaf9f87 17-May-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: in drivers, make copy of tokens passed to pipe->create_vs/fs_state()

The caller can then free the token array immediately.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
dd903d83b3ff8dd19f75ac7542b96bc8f1387fe6 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: remove old vertex_shader->run() functions
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
a773f06e969a3992451dd7fe6fd55ea96b2774fa 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: split off all the extra functionality in the vertex shader

This will at least allow us to make the initial gains to get decent
vertex performance much more quickly & with higher confidence of getting
it right.

At some later point can look again at code-generating all the
fetch/cliptest/viewport extras in the same block as the vertex shader.
For now, just need to get some decent baseline performance.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
280bcff1fa200b790d8712946a4ffbaa47a67433 17-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add vertex shader run_linear function
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
e3309197855b5caf7c4c167d1e7beedf33ed2fdd 14-Apr-2008 Zack Rusin <zack@tungstengraphics.com> pass vertex size to shaders so that callee can decide on the size
of the vertices and not always have to use the maximum vertex
allocation size for them
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
e106b2d3d65585b0aaa0e60afd541da020d9e220 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move vertex header init out of fetch_shade_pipeline.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
3f7a3dd58c0ce2719af83ff1d89a26185d08c04c 13-Apr-2008 Zack Rusin <zack@tungstengraphics.com> Make shaders operate on a block of memory instead of arrays of vertex_header's
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
808f968f3ad0cb32e86f517753d5715d00e9ec2c 12-Apr-2008 Zack Rusin <zack@tungstengraphics.com> return true if one of the vertices has been clipped
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
aadbb1d7fbbaada6e378cb60194e5861cadf98d1 12-Apr-2008 Zack Rusin <zack@tungstengraphics.com> pass arbitrary number of vertices to the shader execution cycle
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
2ebc99fcbc0c8fc6f6ce50e2ee674312e214ea2f 12-Apr-2008 Brian <brian.paul@tungstengraphics.com> gallium: move duplicated compute_clipmask() code to draw_vs.h
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
52f40dcc468039fc9cca45a4de20a5aa11228b67 01-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: associate rhw divide with clipping not viewport flag
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
594dab4769533afaeb30a588e1731a6753a93f0d 31-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: move the test for bypass_vs into the vs_XXX_run() functions

Also:
1. Added an identity_viewport flag to skip viewport transformation when it
has no effect. Might also add an explicit bypass_viewport flag someday.
2. Separate the code for computing clip codes and doing the viewport transform.
Predicate them separately.
Note: even if bypass_vs is set, we still look at the shader to determine the
number of inputs and outputs.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
39038c11699bbc9baab744542e96d54e91cb452a 28-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: replace PIPE_ATTRIB_MAX with PIPE_MAX_ATTRIBS

The later follows the naming scheme of other limits.
Keep the old definition until all possible usage is updated.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
ae146e4bc86aeade59d018100e39e160f7553994 24-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: make a copy of the vertex shader's token array.

This solves problems when the state tracker frees the token array when the
draw module still needs it.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
3088eb59497ec8621e003ce3bc87025f257c0a92 14-Mar-2008 Brian <brian.paul@tungstengraphics.com> gallium: added some debug code (disabled)
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
12ab5f97013e398b9f6485b97d6691c3c170447a 12-Mar-2008 Brian <brian@poulsbo.localnet.net> gallium: change draw_vertex_shader->state from pointer to struct

We were sometimes keeping a pointer to a stack-allocated object.
Now make a copy of the pipe_shader_state object.
This should fix some seemingly random memory errors/crashes.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
19cc2e363185b50d19e4f257dd3558896b9b49d3 04-Mar-2008 Keith Whitwell <keith@tungstengraphics.com> draw: dont' compute clipmask or apply viewport when not clipping (rename bypass_clipping to coords_in_window_space?
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
cddeca51adf0d2b736a223e47b60f6ef3be85bff 28-Feb-2008 Brian <brian@i915.localnet.net> gallium: remove dependencies on pipe_shader_state's semantic info

Use tgsi_scan_shader() to populate a tgsi_shader_info struct and use that instead.
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c
b29d8d27292c2ad956d3f0a307603f00ee01af28 15-Feb-2008 Keith Whitwell <keith@tungstengraphics.com> draw: subclass vertex shaders according to execution method

Create new files for shaders compiled/executed with llvm, sse, exec
respectively
/external/mesa3d/src/gallium/auxiliary/draw/draw_vs_exec.c