History log of /external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
38d1191f4133dc427fccdbaec61bef33201c2dcc 14-Sep-2012 Marek Olšák <maraeo@gmail.com> draw: fix non-indexed draw calls if there's an index buffer

pipe_draw_info::indexed determines if it should be indexed and not
the presence of an index buffer.

This fixes crashes in r300g.

NOTE: This is a candidate for the stable branches.

Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
(cherry picked from commit 2988fa940e1d8a4531fddff4d554eec1e6e04474)
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
185ed2105829d6f5eb19edb9abbf0d7977e157c3 25-May-2012 Brian Paul <brianp@vmware.com> draw: simplify index buffer specification

Replace draw_set_index_buffer() and draw_set_mapped_index_buffer() with
draw_set_indexes() which simply takes a pointer and an index size.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
1609efb4180659322557380550d17ed7adb8eae2 24-May-2012 Brian Paul <brianp@vmware.com> draw: fix primitive restart bug by using the index buffer offset

The code which scans the index buffer for restart indexes wasn't adding
the index buffer offset so we were always starting at offset=0. The
offset is usually zero so it wasn't noticed before.

Fixes a failure in the piglit primitive-restart test when testing
vertex data + index data in a single VBO.

NOTE: This is a candidate for the 8.0 branch.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
685a28fd8a046e8dac02c2c26ab8b169de7a2a29 30-Mar-2012 Marek Olšák <maraeo@gmail.com> gallium/util: remove unused parameter nr_vertex_buffers in util_draw_max_index
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
b6d3a435a0e0e53a9e8cc4c4249dc7c2f897a83d 24-Jan-2011 Jakob Bornecrantz <wallbraker@gmail.com> draw: Only run prepare when state, prim and opt changes

In bad applications like ipers which does a lot of draw calls with
no state changes this helps to greatly reduce time spent in prepare.
In ipers around 7% of CPU was spent in various prepare functions,
after this commit no prepare function show on the profile.

This commit also has the added benefit of now grouping all pipelined
drawing into a single draw call if the driver uses vbuf_render.

Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
4a79545bdfb9e948329a761ef350eb83a3d87496 05-Dec-2010 Jakob Bornecrantz <wallbraker@gmail.com> draw: Remove reduced_prim

Conflicts:

src/gallium/auxiliary/draw/draw_context.c

Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
438d7ac146dc89d1c2943610c662c57e11a47382 12-Nov-2011 Brian Paul <brianp@vmware.com> util/draw: replace assertions with conditionals in util_draw_max_index()

Don't assert/die if a VBO is too small. Return zero instead. For
debug builds, emit a warning message since this is an unusual situation
that might indicate that there's a bug in the app.

Note that util_draw_max_index() now returns max_index+1 instead of
max_index. This lets us return zero to indicate that one of the VBOs
is too small to draw anything.

Fixes a failure with the new piglit vbo-too-small test.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
3733da31e8b4405b65e1b6ca3b6599ecc5af5fe7 31-Mar-2011 José Fonseca <jfonseca@vmware.com> draw: Prevent out-of-bounds vertex buffer access.

Based on some code and ideas from Keith Whitwell.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
cdca3c58aa2d9549f5188910e2a77b438516714f 10-Jan-2011 Marek Olšák <maraeo@gmail.com> gallium: remove pipe_vertex_buffer::max_index

This is redundant to pipe_draw_info::max_index and doesn't really fit
in the optimizations I plan.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0eaaceb218b2cfdb3fcfb420eca3220e74e53d4a 22-Oct-2010 Brian Paul <brianp@vmware.com> draw: implement primitive splitting for primitive restart
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
6c0dc4bafbdbdc0cb4b6e5934fe064226dbd47ec 20-Aug-2010 Keith Whitwell <keithw@vmware.com> draw: specialized cliptesting routines
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
22f6026324f63c142925244ff575fefc29a90389 25-Aug-2010 Chia-I Wu <olv@lunarg.com> gallium: Use draw_set_index_buffer and others.

Update all drivers to use draw_set_index_buffer,
draw_set_mapped_index_buffer, and draw_vbo. Remove
draw_set_mapped_element_buffer and draw_set_mapped_element_buffer_range.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
4f024e0f642f4f743e4d051ec71c00e45bfd361f 25-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Add draw_set_index_buffer and others.

This commit adds draw_set_index_buffer, draw_set_mapped_index_buffer,
and draw_vbo. The idea behind the new functions is that an index buffer
should be a state.

draw_arrays and draw_set_mapped_element_buffer are preserved, but the
latter will be removed soon.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
f201217c1d87919572a3b1cf7de94f580f20e5f0 15-Aug-2010 Luca Barbieri <luca@luca-barbieri.com> draw_llvm: fix segfaults on non-SSE2 CPUs where it is disabled (v2)

Changes in v2:
- Change function name

Currently draw_llvm refuses to create itself on non-SSE2 CPUs due to
an alleged LLVM bug.

However, this is implemented improperly, because other parts of draw
still attempt to access draw->llvm, resulting in segfaults.

Instead, put the check in debug_get_option_draw_use_llvm, check that
before calling draw_llvm_create, and then check whether draw->llvm is
non-null everywhere else.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
5a085c623faebf957be3fae2f82dc89ef6214585 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Replace vcache by vsplit.

vcache decomposes primitives while vsplit splits primitives. Splitting
is generally easier to do and is faster. More importantly, vcache
depends on flatshade_first to decompose. The outputs may have incorrect
vertex order which is significant to GS.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
5b6bf799e637e9020af3a4bebe514b53d7c38eca 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Replace varray by vsplit.

vsplit is a superset of varray. It sets the split flags comparing to
varray.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
56213a64fe9e4270fd7886675b1e8224b2d88794 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Add new util function draw_pt_trim_count.

draw_pt_trim_count is renamed from trim in draw_pt.c.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
9d2be38fad109d9a10942fddde0b9dc3824c329c 18-Jul-2010 Chia-I Wu <olv@lunarg.com> draw: Simplify frontend interface a little.

The run method is simplified to take the start vertex and the vertex
count.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0e7b53c75be6051b2a935e65f4dbc02449714ee1 03-Aug-2010 Brian Paul <brianp@vmware.com> draw: use instance divisor in draw_print_arrays()
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
f94e7e25d101a8691a5276a5aa0eb97d2f4eebbc 03-Aug-2010 Brian Paul <brianp@vmware.com> draw: add assertion, rearrange debug code
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
8a2933f3663177f32f5ee45bb696463b8549dcbb 29-Jul-2010 Brian Paul <brianp@vmware.com> draw: add vertex buffer offset in draw_print_arrays()
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
80e07c41907cc0ac43d68aeb3abf9de8435e70fd 16-Jul-2010 Brian Paul <brianp@vmware.com> draw: updated debug/dump code
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
839608a8be2dbcb759626b629f98176e4125e0a2 15-Jul-2010 Brian Paul <brianp@vmware.com> draw: update comments for drawing functions
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
425870c5fdb40f7daf2e25323fa28c90c4367bae 10-Jul-2010 Zack Rusin <zackr@vmware.com> mesa: get the translation from mesa 2d regs to tgsi working

first working version of arb_geometry_shader4
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
64682da8ab7aff7b4ce651db99a32ed1fd8b178c 23-Jun-2010 Keith Whitwell <keithw@vmware.com> draw: don't try to precalculate the pipeline output primitive

We were previously calculating a value which was either the geometry
shader output primitive or the application's input primitive, and
passing that to the various front/middle/back components for use as
the ultimate rendering primtive.

Unfortunately, this was not correct -- if the vcache decomposition
path is active and geometry shaders are *not* active, we can end up
with a third primitive -- specifically the decomposed version of the
input primitive.

Rather than trying to precalculate this, just let the individual
components inform their successors about which primitive type they are
recieving.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
d4ef0f6c67aefe06d8dd647acf8d9005df39a709 09-Jun-2010 Zack Rusin <zack@kde.org> geometry shaders: make gs work with changable primitives and variable number of vertices

lots and lots of fixes for geometry shaders. in particular now we work when the gs
emits a different primitive than the one the pipeline was started with and also
we work when gs emits more vertices than would fit in the original buffer.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
045174b6853608f1f17194115da570067b4ce121 07-Jun-2010 Keith Whitwell <keithw@vmware.com> draw: don't use llvm engine when geometry shaders active

They aren't implemented for llvm.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0e4f0e8725cd93fc1e51e4caa09aadf340add11a 28-Apr-2010 Brian Paul <brianp@vmware.com> draw: remove extra semicolons
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
6ecbbc3c056d177174c97ac4d1a57abed3ac3177 26-Apr-2010 José Fonseca <jfonseca@vmware.com> draw: Always use the llvm middle end when available & enabled.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
1820d240cd0b517ca1d73f1e8e0a528ca8d5b092 22-Apr-2010 Jakob Bornecrantz <jakob@vmware.com> gallium: Convert some uses of get option to static
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a6171a9dd99713266091982215bf1008c9ac8e64 20-Apr-2010 José Fonseca <jfonseca@vmware.com> Merge branch 'gallium-index-bias'
7dfde3aadc7f776abf828e4c45dbce2177564a53 19-Apr-2010 Zack Rusin <zackr@vmware.com> draw llvm: make sure use_llvm isn't used when not defined
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
4df3e76949e1ca7b29f844ad9a715b442396a024 19-Apr-2010 Zack Rusin <zackr@vmware.com> draw llvm: allow runtime switching of pipelines (yes/no to llvm)

use DRAW_USE_LLVM to disable or enable (default) llvm
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
2197fac47cb1f87387820678357cc67c9a2536b9 19-Apr-2010 José Fonseca <jfonseca@vmware.com> draw: Implement index bias.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
ea532f0e725bd68e7784189c9b7f6f7bf7f9d901 10-Apr-2010 José Fonseca <jfonseca@vmware.com> scons: Make LLVM a black-white dependency.

Now that draw depends on llvm it is very difficult to correctly handle
broken llvm installations. Either the user requests LLVM and it needs to
supply a working installation. Or it doesn't, and it gets no LLVM
accelerate pipe drivers.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
78fd65fd2c9b537b88bf35454b98323029ee1bb3 07-Apr-2010 Brian Paul <brianp@vmware.com> draw: init draw->pt.middle.general = NULL just to be safe

This field should be null from the initial calloc() of the draw context,
but let's be safe (and improve understanding of the code).
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
45c89091487a9cd3999362cdb486299c4a0f24c6 07-Apr-2010 Brian Paul <brianp@vmware.com> gallium/draw: add additional DRAW_LLVM check

Fixes build breakage.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
275c4bd3643d773210780cb8d578ca84f2604684 15-Mar-2010 Zack Rusin <zackr@vmware.com> Merge remote branch 'origin/master' into gallium_draw_llvm
685340a53e1dcb2a888e634ee71ba24356befe69 09-Mar-2010 Roland Scheidegger <sroland@vmware.com> Merge branch 'gallium-vertexelementcso'

Conflicts:
src/gallium/auxiliary/cso_cache/cso_context.c
src/gallium/auxiliary/util/u_blit.c
src/gallium/auxiliary/util/u_gen_mipmap.c
src/gallium/drivers/i915/i915_context.h
src/gallium/drivers/i965/brw_draw_upload.c
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_context.h
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r300/r300_state_derived.c
src/mesa/state_tracker/st_cb_bitmap.c
src/mesa/state_tracker/st_cb_clear.c
c5c5cd7132e18f4aad8e73d8ee879f8823c4c1e7 23-Feb-2010 Zack Rusin <zackr@vmware.com> gallium/draw: initial code to properly support llvm in the draw module

code generate big chunks of the vertex pipeline in order to speed up
software vertex processing.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
63cb6f59eac91ba34cf80ff3736568e40b094fe1 22-Feb-2010 Michal Krol <michal@vmware.com> gallium: Remove bypass_vs_clip_and_viewport from rasteriser state.

Needs testing.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
464a72dd4154f314e08c9d0c4d07417e2bf255f0 17-Feb-2010 Roland Scheidegger <sroland@vmware.com> gallium: remove redundant nr_components field from pipe_vertex_element

This is a property of the associated src_format pipe format.
Hence use util_format_get_nr_components to query this when necessary instead.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
13701aae40d8edb5b38be5fb04739f74c1fc8001 14-Feb-2010 José Fonseca <jfonseca@vmware.com> draw: Use util_format_name().
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
dc544ad9c6e6e24fd2f19dfe83aa294d218f7310 22-Jan-2010 Vinson Lee <vlee@vmware.com> draw: Remove unnecessary headers.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
6481f40eec0a6c5dea4a74a11b83415478f2c814 30-Dec-2009 Michal Krol <michal@vmware.com> draw: Implement draw_arrays() in terms of draw_arrays_instanced().
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
7ca0ce38340144794267609646048b3820d594ab 29-Dec-2009 Michal Krol <michal@vmware.com> Implement draw_arrays_instanced() in softpipe.

Modify the translate module to respect instance divisors and accept
instance id as a parameter to calculate input vertex offset.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a0127b6ced257919180ba3a1bf534b68d9c750be 14-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: more work for edgeflags changes

fixes, cleanups, etc.
not working yet
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a08e348a84f57ed5e8bf5888f1ce13934d2ce8fa 09-Dec-2009 Keith Whitwell <keithw@vmware.com> gallium: first steps to treat edgeflags as regular vertex element

The idea here is to eliminate the set_edgeflags() call in pipe_context
by treating edgeflags as a regular vertex element.

Edgeflags provoke special treatment in hardware, which means we need to
label them in some way, in this case we'll be passing them through the
vertex shader and labelling the vertex shader output with a new TGSI
semantic (TGSI_SEMANTIC_EDGEFLAG).
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
ea98e9820d7117f7a187f355445796b1ef5d9e0c 21-Nov-2009 Vinson Lee <vlee@vmware.com> draw: Initialize variable in draw_pt.c.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
d2e4643767ce2a1f30e6ef1c86c2aa225c025c32 19-Jun-2009 Brian Paul <brianp@vmware.com> draw: use u_reduced_prim() function
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
683e7091a953204c9aee1410ac44be3b69bae9fc 13-Mar-2009 Keith Whitwell <keithw@vmware.com> gallium: consolidate bypass_vs and bypass_clipping flags

The draw module provides a similar interface to the driver which
is retained as various bits of hardware may be able to take on
incremental parts of the vertex pipeline. However, there's no
need to advertise all this complexity to the state tracker.

There are basically two modes now - normal and passthrough/screen-coords.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
872b515e8f0bb1be5bad85fd9d01529c71f07ba2 26-Jan-2009 Zack Rusin <zack@tungstengraphics.com> gallium: standardize on stride instead of pitch in the interface
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0ee92d6ed9c6aae47d990c9ac004034ded5003f1 12-Nov-2008 Michal Krol <michal@tungstengraphics.com> draw: Add missing include.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
6c3e7365d5245cfad597cd69e2f8f689e62546b9 06-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: debug code to print vertex array data (disabled)
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
05a17f83b0a6549fde41540f9075505e81ab08d3 05-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: added some debug code (disabled)
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
c48da7d78b4e7bdbe056b3c9668756d49019be06 06-Oct-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add switch for drivers to force vertex data passthrough
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.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_pt.c
ba9e6339028c36269cb50bb8535e415fa8e6e4c9 04-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix trim() function bug when count < first

If the user called glDrawArrays(GL_TRIANGLES, count=1), trim() returned a
very large integer because of the unsigned arithmetic.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a70684bf256c3d5bc3a729bf9e9cf1a64cb2064a 10-Jun-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Deprecate GETENV. Replace by debug_get_bool_option.

debug_get_bool_option will interpret "n", "no", "0", "f", or
"false" as FALSE; and everything else as TRUE. The default value
(used when the variable is not set) is received as a parameter.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
1529a2c983f70ed7ff661ae6e8995cdfbca6d9cf 30-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: trim incoming primitives
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
807e7c4ccfdaebf8e568357fb1fd8090ccae638c 29-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add more switches to turn FSE on/off
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
728d1f7f43b6db9f4f42c2d16ba223c492d1147d 29-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: enable FSE by default
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
b23706454bb165a62888d264e95a98a2e4cf139c 13-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: get rid of fetch-shade-emit frontend hack

The code is now living in it's intended place as a pt middle end.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
bbda45ec769120324f44febf00c6bb170f594f23 12-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: turn fse path into a middle end

Also add some util functions in pt_util.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
44463b2997826cd14def00abf724a7a65a4fc7cb 12-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: streamline the varray path

- drop support for running the pipeline (ie. don't populate the flags values)
- pass through all split-able primitives intact to the middle end
- only primitives that can't be split are shunted on the draw-element path
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
b5e5369da5fc50d63a6ece931fac44b555eb0314 12-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add fetch-shade-emit path

Enable with TEST_FSE=t. Performs fetch from API-provided vertex buffers,
transformation with one of three (two working) hard-coded shaders, and
final emit to hardware vertices all in a single pass.

Currently only really useful for profiling in conjunction with SP_NO_RAST=t.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
90a46ed277cc887d49c8d8c627174c3bd693ecf7 02-May-2008 Zack Rusin <zack@tungstengraphics.com> split larger primitives in the simple varray pt
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
14cfcb18204233d3d4848ea8e579465983df3d75 25-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: no need to special-case elts/get_elts for varray frontend
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
992d0b997f8f7e965e56852b81e01c290f8c13de 24-Apr-2008 Zack Rusin <zack@tungstengraphics.com> frontend for rendering without elts
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0588858702d1a5c9c08573ea6817e2e149473cf6 22-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: allow drivers to query pipeline state more easily

Also, provide a separate flag to say whether the driver can handle
clipping/rhw tasks, in addition to the API flag which indicates they
have already been done.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
7d72607e142c0412b88183b849fd701e698b8f79 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move incoming vertex state into draw->pt

This state is effectively private to the vertex processing part
of the draw module.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
507fbe2d327efb8d608ce8e07436b97321560808 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move some pipeline-specific code & state to draw_pipe.[ch]
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
1246d06313f443c91dea07239b43a88ba2b86dde 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: remove named clipmask flags, tidy up pt middle ends
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
b11d89dc6d230f7f945f9eb420d39921c648ec20 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: remove draw_prim.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a41c05b20a36d2160aa232d08ed57d3095438025 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: switch over to draw_pt paths, will remove old code shortly
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
26c27f6636069ca849a740c3969c577d841484e2 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: remove fetch_pipeline middle end -- just use the general path
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
fe8af141246bdfc0e98beec0089acdb92407bcfa 17-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: don't always run pipeline if clipping
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
3be453bf7fcffd945ee0238e66ff4247a4491f1c 16-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: allow pt paths to run without a vbuf render stage
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a8582efaca35d09c8ca18918a243a9284583356d 16-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: make pt run pipeline when need_pipeline is true, not just when clipped
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
2ba6e1fa71be07a2d75abe2d085d485046c0932b 14-Apr-2008 Zack Rusin <zack@tungstengraphics.com> silence some warnings
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
a82e4996a13ef3cae1497fef95c2fca7631cd889 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: flush pipeline before trying to allocate more hw vertices
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
caf293343fd236e97ce399533ac0ada3c7afee7a 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: hide passthrough shading paths behind an environment variable
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
0c1cb54923f3ab31caa2821e095685277174dd2f 13-Apr-2008 Zack Rusin <zack@tungstengraphics.com> Implement fetch/shade/pipeline or emit vertex passthrough.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
d2cb4ba0bb2388c784f145c59f3798f914dc7f39 03-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add passthrough path to the pipeline

This handles the case where bypass_vs is set, but vertices need to go
through the pipeline for some reason - eg unfilled polygon mode.

Demonstrates how to drive the pipeline from inside one of these things.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
ae3c91e98ce3355bca22738440f8ba313b3b8b23 02-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: Set the backend prim in the pt 'prepare' operation

Leaving it until 'run' is bad as the primitive is pretty much state
for some drivers and so needs to get set early. In some drivers
this is used to determine things like vertex format, etc -- by the
time we get to 'run', it's too late to change this.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
edfa8201a50c47376b7aa0c05d7851e3e1353bde 01-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: more flatshade_first changes

- Reduce the number of changes to the normal vertex ordering
- Assume that the hardware knows how to do this in the standard case.
- Add support to the passthrough vcache path.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
4b1377b2403bcb34081f91991f1ffde06df17af1 01-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: flush between pt/non-pt modes
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
63950b11b6060e4e0d06e0d14548ff132a295067 30-Mar-2008 Michal Krol <michal@tungstengraphics.com> draw: Do not run full pipeline when flatshade_first for point primitives.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
4505acf3b28f0b88bf97838ed7898f10e9200b93 25-Mar-2008 Keith Whitwell <keith@tungstengraphics.com> draw: take primitive into account when deciding if the pipeline is active
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
3b217c7fa77d397540e4b6299a35f586ad53a1a1 23-Mar-2008 Keith Whitwell <keith@tungstengraphics.com> draw: check need_pipeline() in passthrough
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c
f40357e25c0520ef1d64ffab03501da4c8b93529 23-Mar-2008 Keith Whitwell <keith@tungstengraphics.com> gallium: beginnings of draw module vertex rework

Trying to put a structure in place that we can actually optimize.
Initially just implementing a passthrough mode, this will fairly soon
replace all the vertex_cache/prim_queue/shader_queue stuff that's so
hard to understand...

Split the vertex processing into a couple of distinct stages:
- Frontend
- Prepares two lists of elements (fetch and draw) to be processed
by the next stage. This stage doesn't fetch or draw vertices, but
makes the decision which to draw. Multiple implementations of this
will implement different strategies, currently just a vcache
implementation.
- MiddleEnd
- Takes the list of fetch elements, fetches them, runs the vertex
shader, cliptest, viewport transform on them to produce a
linear array of vertex_header vertices.
- Passes that list of vertices, plus the draw_elements (which index
into that list) onto the backend
- Backend
- Either the existing primitive/clipping pipeline, or the vbuf_render
hardware backend provided by the driver.

Currently, the middle-end is the old passthrough code, and it build hardware
vertices, not vertex_header vertices as above. It may be that passthrough
is a special case in this respect.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt.c