Commit Graph

182 Commits

Author SHA1 Message Date
Robert Ellison
711f8a1dd9 CELL: stencil bug fixes
Two definitive bugs in stenciling were fixed.

The first, reversed registers in the generated Select Bytes (selb)
instruction, caused the stenciling INCR and DECR operations to
fail dramatically, putting new values in where old values were
supposed to be and vice versa.

The second caused stencil tiles to not be read and written from
main memory by the SPUs.  A per-spu flag, spu.read_depth, was used
to indicate whether the SPU should be reading depth tiles, and was set
only when depth was enabled.  A second flag, spu.read_stencil, was
set when stenciling was enabled, but never referenced.

As stenciling and depth are in the same tiles on the Cell, and there
is no corresponding TAG_WRITE_TILE_STENCIL to complement
TAG_WRITE_TILE_COLOR and TAG_WRITE_TILE_Z, I fixed this by
eliminating the unused "spu.read_stencil", renaming "spu.read_depth"
to "spu.read_depth_stencil", and setting it if either stenciling or
depth is enabled.

I also added an optimization to the fragment ops generation code,
that avoids calculating stencil values and/or stencil writemask
when the stencil operations are all KEEP.
2008-10-30 15:24:52 -06:00
Brian Paul
87a6fe57e8 Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	progs/trivial/tri.c
2008-10-17 14:13:00 -06:00
Brian Paul
d422c1eb5c mesa: redraw upon keypress in trivial/tri.c 2008-10-17 13:37:50 -06:00
Keith Whitwell
cf85e413ad Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	src/mesa/main/context.c
2008-10-15 17:20:30 +01:00
Keith Whitwell
055d986efe trivial: more vp tests 2008-10-14 14:18:36 +01:00
Keith Whitwell
d7f1cb5b5a Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	src/gallium/auxiliary/gallivm/instructionssoa.cpp
	src/gallium/auxiliary/gallivm/soabuiltins.c
	src/gallium/auxiliary/rtasm/rtasm_x86sse.c
	src/gallium/auxiliary/rtasm/rtasm_x86sse.h
	src/mesa/main/texenvprogram.c
	src/mesa/shader/arbprogparse.c
	src/mesa/shader/prog_statevars.c
	src/mesa/state_tracker/st_draw.c
	src/mesa/vbo/vbo_exec_draw.c
2008-10-10 15:23:36 +01:00
Brian Paul
02aea66b1a mesa: toggle colormask values with r/g/b keys in tri-mask-tri.c
Plus misc clean-up.
2008-10-09 19:51:26 -06:00
Keith Whitwell
1ec78df1e7 trivial: add more vp tests 2008-10-07 19:14:18 +01:00
Keith Whitwell
a381c9e8b3 trivial: exercise vertprog sligtly 2008-10-07 16:33:52 +01:00
Keith Whitwell
89ab66448e Merge commit 'origin/master' into gallium-0.2
Conflicts:

	progs/trivial/Makefile
	src/mesa/glapi/glthread.c
2008-09-18 19:03:02 +01:00
Keith Whitwell
a30d2c5727 add dlist-degenerate test case 2008-09-15 13:49:04 +01:00
Keith Whitwell
fd0ee68305 trivial: remove stray merge conflict 2008-09-11 20:11:11 +01:00
Keith Whitwell
cc7dd4fc1b Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	Makefile
	progs/demos/Makefile
	progs/glsl/Makefile
	progs/redbook/Makefile
	progs/samples/Makefile
	progs/tests/Makefile
	progs/trivial/Makefile
	progs/xdemos/Makefile
	src/gallium/Makefile
	src/mesa/main/attrib.c
	src/mesa/main/bufferobj.c
	src/mesa/vbo/vbo_exec_draw.c
2008-09-11 18:32:05 +01:00
Brian Paul
90c93bbeee define new APP_CC configuration variable for building apps/demos/tests
For Cell, need to use different compilers for the libraries vs. the demos/tests
to avoid strange link error regarding "_Unwind_GetIPInfo@GCC_4.2.0"
2008-09-11 11:00:54 -06:00
Brian Paul
83054d9297 press 'c' to toggle Z clear value between 0/1 2008-09-11 10:39:27 -06:00
Brian Paul
8df4c3a21f press 'f' to cycle through depth test funcs 2008-09-11 10:39:27 -06:00
Keith Whitwell
0397b2bb41 Merge branch 'gallium-0.1' into gallium-0.2
A first attempt at moving gallium onto a branch directly off master...

It will be interesting to see how much work this takes to get running.

Have resolved the conflicts semi-arbitarily, not compiled or tested.

Conflicts:

	.gitignore
	Makefile
	configs/config.mgw
	configs/darwin
	configs/darwin-x86ppc
	configs/default
	configs/freebsd-dri
	configs/linux-dri
	configs/linux-dri-xcb
	configs/linux-fbdev
	configs/linux-static
	configs/linux-x86-64-static
	configs/linux-x86-static
	doxygen/Makefile
	include/GL/gl.h
	progs/demos/Makefile
	progs/demos/descrip.mms
	progs/demos/texenv.c
	progs/egl/.gitignore
	progs/egl/Makefile
	progs/glsl/.gitignore
	progs/glsl/Makefile
	progs/glsl/convolutions.c
	progs/samples/Makefile.mgw
	progs/tests/.gitignore
	progs/trivial/.gitignore
	progs/trivial/point-param.c
	progs/trivial/tri.c
	progs/xdemos/.gitignore
	progs/xdemos/glthreads.c
	src/egl/drivers/demo/Makefile
	src/egl/drivers/dri/Makefile
	src/egl/main/Makefile
	src/glu/Makefile
	src/glu/sgi/Makefile
	src/glu/sgi/Makefile.mgw
	src/glut/glx/Makefile.mgw
	src/glut/os2/WarpWin.cpp
	src/glut/os2/glut_cindex.cpp
	src/glut/os2/glut_gamemode.cpp
	src/glut/os2/glut_win.cpp
	src/glut/os2/glut_winmisc.cpp
	src/glut/os2/os2_glx.cpp
	src/glut/os2/os2_menu.cpp
	src/glut/os2/os2_winproc.cpp
	src/glw/Makefile
	src/glx/x11/dri_glx.c
	src/glx/x11/glxext.c
	src/mesa/Makefile
	src/mesa/Makefile.mgw
	src/mesa/descrip.mms
	src/mesa/drivers/beos/Makefile
	src/mesa/drivers/common/descrip.mms
	src/mesa/drivers/common/driverfuncs.c
	src/mesa/drivers/directfb/Makefile
	src/mesa/drivers/dri/Makefile.template
	src/mesa/drivers/dri/common/dri_bufmgr.c
	src/mesa/drivers/dri/common/dri_bufmgr.h
	src/mesa/drivers/dri/common/dri_util.c
	src/mesa/drivers/dri/common/extension_helper.h
	src/mesa/drivers/dri/common/mmio.h
	src/mesa/drivers/dri/common/utils.c
	src/mesa/drivers/dri/common/utils.h
	src/mesa/drivers/dri/glcore/Makefile
	src/mesa/drivers/dri/i810/i810screen.c
	src/mesa/drivers/dri/i915/intel_ioctl.c
	src/mesa/drivers/dri/i915/intel_ioctl.h
	src/mesa/drivers/dri/i915/intel_screen.c
	src/mesa/drivers/dri/i915/server/i830_common.h
	src/mesa/drivers/dri/i915/server/i830_dri.h
	src/mesa/drivers/dri/i965/intel_screen.c
	src/mesa/drivers/dri/i965/server/i830_common.h
	src/mesa/drivers/dri/i965/server/i830_dri.h
	src/mesa/drivers/dri/mach64/mach64_screen.c
	src/mesa/drivers/dri/nouveau/nouveau_context.h
	src/mesa/drivers/dri/nouveau/nouveau_fifo.c
	src/mesa/drivers/dri/nouveau/nouveau_fifo.h
	src/mesa/drivers/dri/nouveau/nouveau_screen.c
	src/mesa/drivers/dri/nouveau/nouveau_screen.h
	src/mesa/drivers/dri/r128/r128_tex.h
	src/mesa/drivers/dri/savage/savageioctl.h
	src/mesa/drivers/fbdev/Makefile
	src/mesa/drivers/osmesa/Makefile
	src/mesa/drivers/osmesa/descrip.mms
	src/mesa/drivers/x11/Makefile
	src/mesa/drivers/x11/descrip.mms
	src/mesa/drivers/x11/xm_dd.c
	src/mesa/glapi/glapi.c
	src/mesa/glapi/glthread.c
	src/mesa/main/api_validate.c
	src/mesa/main/attrib.c
	src/mesa/main/bufferobj.c
	src/mesa/main/bufferobj.h
	src/mesa/main/buffers.c
	src/mesa/main/config.h
	src/mesa/main/context.c
	src/mesa/main/descrip.mms
	src/mesa/main/drawpix.c
	src/mesa/main/enums.c
	src/mesa/main/fbobject.c
	src/mesa/main/glheader.h
	src/mesa/main/imports.c
	src/mesa/main/mipmap.c
	src/mesa/main/mm.c
	src/mesa/main/mm.h
	src/mesa/main/mtypes.h
	src/mesa/main/points.c
	src/mesa/main/sources
	src/mesa/main/state.c
	src/mesa/main/texcompress_fxt1.c
	src/mesa/main/texenvprogram.c
	src/mesa/main/texobj.c
	src/mesa/main/texstate.c
	src/mesa/main/texstore.c
	src/mesa/math/descrip.mms
	src/mesa/shader/arbprogram.c
	src/mesa/shader/descrip.mms
	src/mesa/shader/prog_execute.c
	src/mesa/shader/prog_statevars.c
	src/mesa/shader/prog_statevars.h
	src/mesa/shader/prog_uniform.c
	src/mesa/shader/program.c
	src/mesa/shader/program.h
	src/mesa/shader/shader_api.c
	src/mesa/shader/slang/descrip.mms
	src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
	src/mesa/sources
	src/mesa/swrast/descrip.mms
	src/mesa/swrast/s_drawpix.c
	src/mesa/swrast/s_fragprog.c
	src/mesa/swrast/s_readpix.c
	src/mesa/swrast/s_span.c
	src/mesa/swrast_setup/descrip.mms
	src/mesa/tnl/descrip.mms
	src/mesa/tnl/t_context.h
	src/mesa/tnl/t_vp_build.c
	src/mesa/tnl/tnl.h
	src/mesa/vbo/descrip.mms
	src/mesa/vbo/vbo_context.c
	src/mesa/vbo/vbo_exec_array.c
	src/mesa/x86-64/xform4.S
	src/mesa/x86/rtasm/x86sse.c
	src/mesa/x86/rtasm/x86sse.h
	windows/VC6/progs/glut/glut.dsp
	windows/VC7/mesa/gdi/gdi.vcproj
	windows/VC7/mesa/glu/glu.vcproj
	windows/VC7/mesa/mesa.sln
	windows/VC7/mesa/mesa/mesa.vcproj
	windows/VC7/mesa/osmesa/osmesa.vcproj
	windows/VC7/progs/glut/glut.vcproj
	windows/VC8/mesa/gdi/gdi.vcproj
	windows/VC8/mesa/glu/glu.vcproj
	windows/VC8/mesa/mesa.sln
	windows/VC8/mesa/mesa/mesa.vcproj
	windows/VC8/progs/glut/glut.vcproj
2008-09-11 16:05:15 +01:00
Brian Paul
380385ab7d mesa: added test for very long fixed-function vertex programs 2008-08-28 15:22:44 -06:00
Guillaume Melquiond
3e8e292db0 Always pass CFLAGS when compiling or linking demos
To ensure that the correct architecture flags are used, always pass the
user's CFLAGS when compiling or linking the demos. Fixes #16860.
2008-07-30 07:56:42 -07:00
Jakob Bornecrantz
4e52fa9b91 git: Updated .gitignore files 2008-06-16 12:20:17 +02:00
Jakob Bornecrantz
d89b1e4a03 trivial: Update clear-undefined 2008-06-13 19:18:56 +02:00
Jakob Bornecrantz
39bd7eb6dc trival: Added test for undefined context of buffer 2008-06-13 17:45:55 +02:00
Keith Whitwell
3bdeff5bec trivial: add test for integer vertex arrays 2008-06-11 09:19:48 +01:00
Keith Whitwell
ac833b9aef trivial: add trifan tests 2008-06-10 14:48:57 +01:00
Keith Whitwell
f5801fba24 trivial: add poly-flat-clip tests 2008-06-10 14:48:57 +01:00
Keith Whitwell
d915f40195 trivial: add tristrip-flat to makefile 2008-06-10 14:48:57 +01:00
Zack Rusin
f869ddf297 add new binaries to ignore to make 'git status' cleaner 2008-05-20 19:18:22 -04:00
Brian Paul
b86cf71491 mesa: call glutDestroyWindow() on exit to help find mem leaks 2008-05-16 16:02:52 -06:00
Brian Paul
6a3fac8711 call glutDestroyWindow() 2008-05-08 08:37:52 -06:00
Dan Nicholson
a6464b3cb0 Never fail `make clean'
Mostly some pedantic changes such that `make clean' always ignores
errors. Also changed the top clean target to do the `touch
configs/current' dance instead of realclean.
2008-05-07 11:35:23 -07:00
Keith Whitwell
63e6e33db6 trivial: simple edgeflag test 2008-04-24 12:39:09 +01:00
Keith Whitwell
1e3087cd03 mesa: add dedicated point-wide-smooth test, restore original tri.c as tri-orig.c 2008-04-23 13:10:13 +01:00
Brian
40905c909d mesa: add missing glPush/PopMatrix() calls 2008-04-04 19:28:33 -06:00
Brian
ae0ea14ff6 mesa: add missing glPush/PopMatrix() calls 2008-04-04 19:28:33 -06:00
Brian
fe1c9c0585 mesa: add missing glPush/PopMatrix() calls 2008-04-04 16:45:05 -06:00
Brian
1e4cd24e9c mesa: add missing glPush/PopMatrix() calls 2008-04-04 16:45:05 -06:00
Brian Paul
14150bc856 mesa: call glColorMask(1,1,1,1) before glClear()
Without this, second and subsequent redraws rendered incorrectly.
Plus comments.
2008-03-14 11:35:57 -06:00
Brian
bc3f2c908e Added line smooth test 2008-02-25 16:26:37 -07:00
José Fonseca
9bcc8ad0ca Update git ignores. 2008-02-25 17:05:15 +09:00
Brian
ca2f2c7664 gallium: new pgon-mode.c test
A two-triangle strip is drawn such that the first tri is front-facing and
the second tri is back-facing.  Use different front/back polygon modes.
2008-02-14 18:59:24 -07:00
José Fonseca
e122a8fa18 gallium: Ignore generated files. 2008-01-17 12:05:37 +09:00
Keith Whitwell
ded6ce2bd5 vp-tri: match vertex/color data of other tests 2007-12-19 15:13:20 +00:00
Keith Whitwell
2c8e50c0cb use a depth buffer temporarily 2007-12-19 13:13:53 +00:00
Brian
aef25b1994 set window size to 256x256 2007-12-10 17:32:43 -07:00
Keith Whitwell
b1399a5dd2 gallium: more trivial tests 2007-12-09 14:06:00 +00:00
Keith Whitwell
56bc8d9199 gallium: remove unneeded depth buffer 2007-12-09 14:05:12 +00:00
Brian
44c8dac0af better front-plane clip test 2007-11-30 09:08:58 -07:00
Brian
be1fa5b3d7 better test of point attenuation 2007-11-23 16:19:25 -07:00
Brian
88b067cb04 #define GL_GLEXT_PROTOTYPES to silence warning 2007-11-23 14:35:46 -07:00
Dan Nicholson
c05aa5ec4c specify app lib dependencies in Makefiles (patch 1/3) 2007-10-29 09:03:01 -06:00