mesa/progs/trivial
Keith Whitwell 1fa4cde757 mesa/vbo: fix compile and replay of nodes ending in a FALLBACK
Where vbo save nodes are terminated with a call to DO_FALLBACK(), as in
the case of a recursive CallList which is itself within a Begin/End pair,
there two problems:
1) The display list node's primitive information was incorrect, stating
the cut-off prim had zero vertices
2) On replay, we would get confused by a primitive that started in a
node, but was terminated by individual opcodes.

This change fixes the first problem by correctly terminating the last
primitive on fallback, and the second by forcing the display list to
use the Loopback path, converting all nodes into immediate-mode rendering.

The loopback fix is a performance hit, but avoiding this would require
a fairly large rework of this code.
2009-06-30 19:52:44 +01:00
..
.gitignore progs: Ignores 2009-04-02 17:00:25 +02:00
clear-fbo-tex.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear-fbo.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear-random.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear-repeat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear-scissor.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear-undefined.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
clear.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
createwin.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
dlist-begin-call-end.c mesa/vbo: fix compile and replay of nodes ending in a FALLBACK 2009-06-30 19:52:44 +01:00
dlist-dangling.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
dlist-degenerate.c add dlist-degenerate test case 2008-09-15 13:49:04 +01:00
dlist-edgeflag-dangling.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
dlist-edgeflag.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
dlist-flat-tri.c progs/trivial: add dlist-flat-tri.c 2009-06-30 17:06:50 +01:00
dlist-mat-tri.c progs/trivial: add dlist-mat-tri.c 2009-06-30 18:37:34 +01:00
dlist-recursive-call.c progs/trivial: add dlist-recursive-call 2009-06-30 17:02:16 +01:00
dlist-tri-flat-tri.c dlist-tri-flat-tri: make tri render differently if flatshade not enabled 2009-06-30 16:57:21 +01:00
dlist-tri-mat-tri.c progs/trivial: add test case for short-circuiting material changes 2009-06-30 18:17:39 +01:00
draw2arrays.c trivial: draw non-interleaved arrays 2009-03-12 17:21:50 +00:00
drawarrays.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
drawelements.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
drawrange.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
flat-clip.c more usage info 2007-08-30 14:44:40 -06:00
fs-tri.c progs: Get more samples building on windows. 2009-02-01 12:00:17 +00:00
line-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-cull.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-flat.c trivial: add line-flat.c 2009-05-08 14:57:26 +01:00
line-smooth.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-stipple-wide.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-userclip-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-userclip-nop-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-userclip-nop.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-userclip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line-wide.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
line.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
lineloop-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
lineloop-elts.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
lineloop.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
linestrip-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
linestrip-flat-stipple.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
linestrip-stipple-wide.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
linestrip-stipple.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
linestrip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
long-fixed-func.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
Makefile mesa/vbo: fix compile and replay of nodes ending in a FALLBACK 2009-06-30 19:52:44 +01:00
pgon-mode.c gallium: new pgon-mode.c test 2008-02-14 18:59:24 -07:00
point-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
point-param.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
point-sprite.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
point-wide-smooth.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
point-wide.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
point.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
poly-flat-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
poly-flat-unfilled-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
poly-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
poly-unfilled.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
poly.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
psb_context.c gallium: more trivial tests 2007-12-09 14:06:00 +00:00
quad-clip-all-vertices.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-clip-nearplane.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-degenerate.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-offset-factor.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-offset-unfilled.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-offset-units.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-tex-2d.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-tex-3d.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-tex-alpha.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-tex-pbo.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-tex-sub.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-unfilled-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-unfilled-stipple.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad-unfilled.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quad.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quads.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quadstrip-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quadstrip-cont.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quadstrip-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
quadstrip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
readpixels.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
SConscript progs/trivial: add test for vertex program invarient transform 2009-05-08 14:57:28 +01:00
tri-alpha-tex.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-alpha.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-array-interleaved.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
tri-blend-color.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-blend-max.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
tri-blend-min.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
tri-blend-revsub.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
tri-blend-sub.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
tri-blend.c Add GLUT_ALPHA for softpipe 2007-06-14 18:25:10 +01:00
tri-clear.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-cull-both.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-cull.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-dlist.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-edgeflag.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-fbo-tex-mip.c tests: remove/update old comments 2009-03-18 10:24:19 -06:00
tri-fbo-tex.c tests: remove/update old comments 2009-03-18 10:24:19 -06:00
tri-fbo.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-flat-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-fog.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-fp-const-imm.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-fp.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-lit-material.c progs/trivial: add test case for lighting plus per-vertex materials 2009-06-30 16:19:23 +01:00
tri-lit.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-logicop-none.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-logicop-xor.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-mask-tri.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-multitex-vbo.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-orig.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-query.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-repeat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-scissor-tri.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-square.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-stencil.c trival: Make the last of progs show the name 2009-02-19 22:50:18 +01:00
tri-stipple.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-tex-3d.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-tex.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-tri.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-edgeflag.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-fog.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-point.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-smooth.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-tri-lit.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-tri.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-userclip-stip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled-userclip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-unfilled.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-userclip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-viewport.c trivial/tri-viewport: add keys for frustrum/ortho and z coordinate 2009-04-21 11:40:59 +01:00
tri-z-9.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-z-eq.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tri-z.c trivial/tri-z: add controls for depthrange min/max 2009-06-01 18:39:58 -07:00
tri.c trivial: destroy window upon exit 2009-05-11 16:08:01 -06:00
trifan-flat-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
trifan-flat-unfilled-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
trifan-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
trifan-unfilled.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
trifan.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tristrip-clip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tristrip-flat.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
tristrip.c progs/trivial: add fflushes for cygwin 2009-03-24 16:35:29 +00:00
vbo-drawarrays.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vbo-drawelements.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vbo-drawrange.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vbo-noninterleaved.c progs/trivial: add vbo-noninterleaved test 2009-05-08 14:57:27 +01:00
vp-array-int.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-array.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-clip.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-line-clip.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-tri-cb-pos.c progs/trivial: Label program windows with actual program name 2009-02-18 18:22:23 +00:00
vp-tri-cb-tex.c progs/trivial: Label program windows with actual program name 2009-02-18 18:22:23 +00:00
vp-tri-cb.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-tri-imm.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-tri-invariant.c progs/trivial: add test for vertex program invarient transform 2009-05-08 14:57:28 +01:00
vp-tri-swap.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-tri-tex.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-tri.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00
vp-unfilled.c progs/trivial: Use glew where needed. 2009-01-23 14:35:36 +00:00