mesa.git
16 years agogallium: TGSI to PPC code generation
Brian Paul [Wed, 22 Oct 2008 17:07:35 +0000 (11:07 -0600)]
gallium: TGSI to PPC code generation

Based on the TGSIto SSE2 code generator.
Incomplete and lots of SSE stuff still hanging around but the basic dozen
or so TGSI opcodes are functioning.

16 years agogallium: added ppc_lvewx()
Brian Paul [Wed, 22 Oct 2008 17:06:39 +0000 (11:06 -0600)]
gallium: added ppc_lvewx()

16 years agocell: include pthread.h
Brian Paul [Wed, 22 Oct 2008 17:04:29 +0000 (11:04 -0600)]
cell: include pthread.h

16 years agocell: implement many more PPC instructions for code gen
Brian Paul [Wed, 22 Oct 2008 16:35:38 +0000 (10:35 -0600)]
cell: implement many more PPC instructions for code gen

16 years agocell: implement fencing for texture buffers
Brian Paul [Wed, 22 Oct 2008 16:34:13 +0000 (10:34 -0600)]
cell: implement fencing for texture buffers

If we delete a texture, we need to keep the underlying tiled data buffer
around until any rendering that references it has completed.
Keep a list of buffers referenced by a rendering batch.  Unref/free them when
the associated batch's fence is executed/signalled.

16 years agocell: set cell->num_textures
Brian Paul [Wed, 22 Oct 2008 16:30:12 +0000 (10:30 -0600)]
cell: set cell->num_textures

16 years agocell: note that dst reg writing needs clamping
Brian Paul [Wed, 22 Oct 2008 14:12:42 +0000 (08:12 -0600)]
cell: note that dst reg writing needs clamping

16 years agogallium: implement tests for PPC/PPC64
Brian Paul [Tue, 21 Oct 2008 20:12:17 +0000 (14:12 -0600)]
gallium: implement tests for PPC/PPC64

16 years agogallium: remove unused var
Brian Paul [Tue, 21 Oct 2008 20:10:09 +0000 (14:10 -0600)]
gallium: remove unused var

16 years agomesa: more test options in progs/demos/textures.c
Brian Paul [Mon, 20 Oct 2008 23:43:05 +0000 (17:43 -0600)]
mesa: more test options in progs/demos/textures.c

16 years agocell: minor improvements to batch buffer functions
Brian Paul [Mon, 20 Oct 2008 21:44:22 +0000 (15:44 -0600)]
cell: minor improvements to batch buffer functions

16 years agocell: temporarily disable freeing of tiled texture memory
Brian Paul [Mon, 20 Oct 2008 15:35:18 +0000 (09:35 -0600)]
cell: temporarily disable freeing of tiled texture memory

Allows glDrawPixels to work for now...

16 years agocell: use an approximation in compute_lambda_2d() to avoid sqrt
Brian Paul [Fri, 17 Oct 2008 15:09:57 +0000 (09:09 -0600)]
cell: use an approximation in compute_lambda_2d() to avoid sqrt

Though, the logf() call still needs attention.

16 years agocell: add new debug flag (cache) to report texture cache stats on exit
Brian Paul [Fri, 17 Oct 2008 02:25:28 +0000 (20:25 -0600)]
cell: add new debug flag (cache) to report texture cache stats on exit

16 years agocell: more efficient state emit for textures/samplers
Brian Paul [Thu, 16 Oct 2008 22:51:23 +0000 (16:51 -0600)]
cell: more efficient state emit for textures/samplers

16 years agocell: use 7-bit weights in sample_texture_2d_bilinear_int()
Brian Paul [Thu, 16 Oct 2008 21:48:04 +0000 (15:48 -0600)]
cell: use 7-bit weights in sample_texture_2d_bilinear_int()

This allows us to use 16-bit signed mul/add instructions.  Had to
used unsigned mul before and there's no unsigned mul/add instruction.

16 years agoMerge commit 'origin/gallium-0.1' into gallium-0.2
Brian Paul [Fri, 17 Oct 2008 20:13:00 +0000 (14:13 -0600)]
Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

progs/trivial/tri.c

16 years agomesa: redraw upon keypress in trivial/tri.c
Brian Paul [Fri, 17 Oct 2008 19:37:11 +0000 (13:37 -0600)]
mesa: redraw upon keypress in trivial/tri.c

16 years agogallium: fix mis-matched malloc/free vs. aligned malloc/free
Brian Paul [Fri, 17 Oct 2008 19:35:42 +0000 (13:35 -0600)]
gallium: fix mis-matched malloc/free vs. aligned malloc/free

Use aligned malloc/free for teximage data everywhere to be consistant.
The mismatch didn't make any difference when HAVE_POSIX_MEMALIGN was defined.

16 years agobuild "GLX" egl driver by default and egl demos
Alan Hourihane [Thu, 16 Oct 2008 22:41:13 +0000 (23:41 +0100)]
build "GLX" egl driver by default and egl demos

16 years agocell: pass spu_texture_level ptr to get_four_texels()
Brian Paul [Thu, 16 Oct 2008 19:54:17 +0000 (13:54 -0600)]
cell: pass spu_texture_level ptr to get_four_texels()

16 years agocell: implement KIL instruction
Brian Paul [Thu, 16 Oct 2008 19:49:42 +0000 (13:49 -0600)]
cell: implement KIL instruction

16 years agocell: CELL_NUM_SPUS env var
Brian Paul [Thu, 16 Oct 2008 17:48:05 +0000 (11:48 -0600)]
cell: CELL_NUM_SPUS env var

16 years agocell: trilinear mipmap interpolation
Brian Paul [Thu, 16 Oct 2008 17:19:22 +0000 (11:19 -0600)]
cell: trilinear mipmap interpolation

16 years agocell: update comments
Brian Paul [Thu, 16 Oct 2008 15:52:02 +0000 (09:52 -0600)]
cell: update comments

16 years agocell: call proper sampler function in sample_texture_cube()
Brian Paul [Thu, 16 Oct 2008 15:33:45 +0000 (09:33 -0600)]
cell: call proper sampler function in sample_texture_cube()

16 years agocell: clean up various texture-related things
Brian Paul [Thu, 16 Oct 2008 15:00:05 +0000 (09:00 -0600)]
cell: clean up various texture-related things

Distinguish among texture targets in codegen.
progs/demos/cubemap.c runs correctly now too.

16 years agocell: start some performance measurements
Brian Paul [Thu, 16 Oct 2008 02:46:43 +0000 (20:46 -0600)]
cell: start some performance measurements

Use the spu_write_decrementer() and spu_read_decrementer() functions to
measure time.  Convert to milliseconds according to the system timebase value.

16 years agocell: updated debug code
Brian Paul [Thu, 16 Oct 2008 01:40:51 +0000 (19:40 -0600)]
cell: updated debug code

16 years agocell: updated status in docs/cell.html
Brian Paul [Wed, 15 Oct 2008 21:46:53 +0000 (15:46 -0600)]
cell: updated status in docs/cell.html

16 years agocell: get rid of last usage of float4 union/typedef
Brian Paul [Wed, 15 Oct 2008 21:34:02 +0000 (15:34 -0600)]
cell: get rid of last usage of float4 union/typedef

Results in slightly tighter code.

16 years agocell: simplify triangle front/back face determination
Brian Paul [Wed, 15 Oct 2008 21:20:09 +0000 (15:20 -0600)]
cell: simplify triangle front/back face determination

16 years agocell: send rasterizer state to SPUs in proper way, remove front_winding hack
Brian Paul [Wed, 15 Oct 2008 20:39:16 +0000 (14:39 -0600)]
cell: send rasterizer state to SPUs in proper way, remove front_winding hack

16 years agocell: query # cells too
Brian Paul [Wed, 15 Oct 2008 20:26:08 +0000 (14:26 -0600)]
cell: query # cells too

16 years agocell: query number SPUs with spe_cpu_info_get()
Brian Paul [Wed, 15 Oct 2008 20:20:10 +0000 (14:20 -0600)]
cell: query number SPUs with spe_cpu_info_get()

16 years agocell: use CELL_MAX_SPUS consistently.
Brian Paul [Wed, 15 Oct 2008 20:18:51 +0000 (14:18 -0600)]
cell: use CELL_MAX_SPUS consistently.

16 years agocell: remove some old, pre-batchbuffer stuff
Brian Paul [Wed, 15 Oct 2008 20:12:55 +0000 (14:12 -0600)]
cell: remove some old, pre-batchbuffer stuff

16 years agocell: move some CELL_MAX constants
Brian Paul [Wed, 15 Oct 2008 19:58:58 +0000 (13:58 -0600)]
cell: move some CELL_MAX constants

16 years agocell: remove obsolete spu_debug.h file
Brian Paul [Wed, 15 Oct 2008 19:56:00 +0000 (13:56 -0600)]
cell: remove obsolete spu_debug.h file

16 years agocell: simplify spu debug code
Brian Paul [Wed, 15 Oct 2008 19:55:18 +0000 (13:55 -0600)]
cell: simplify spu debug code

16 years agocell: propogate blend color to SPUs for the fallback fragment ops code
Brian Paul [Wed, 15 Oct 2008 18:35:51 +0000 (12:35 -0600)]
cell: propogate blend color to SPUs for the fallback fragment ops code

16 years agogallium: fix the shader-rebind test in softpipe, as was done for the draw module.
Brian Paul [Wed, 15 Oct 2008 17:59:34 +0000 (11:59 -0600)]
gallium: fix the shader-rebind test in softpipe, as was done for the draw module.

16 years agogallium: fix the test in vs_exec_prepare() to avoid redundant bindings
Brian Paul [Wed, 15 Oct 2008 17:56:57 +0000 (11:56 -0600)]
gallium: fix the test in vs_exec_prepare() to avoid redundant bindings

Fixes regressions seen in progs/samples/prim.c, progs/demos/ray.c

16 years agogallium: temporariliy revert softpipe shader optimization
Brian Paul [Wed, 15 Oct 2008 16:37:49 +0000 (10:37 -0600)]
gallium: temporariliy revert softpipe shader optimization

16 years agocell: updated vertex dump/debug code
Brian Paul [Wed, 15 Oct 2008 16:54:36 +0000 (10:54 -0600)]
cell: updated vertex dump/debug code

16 years agocell: additional debug
Brian Paul [Wed, 15 Oct 2008 16:54:06 +0000 (10:54 -0600)]
cell: additional debug

16 years agocell: fix/add some fallback blend cases
Brian Paul [Wed, 15 Oct 2008 16:53:48 +0000 (10:53 -0600)]
cell: fix/add some fallback blend cases

16 years agocell: need to flush draw module when constants change
Brian Paul [Wed, 15 Oct 2008 16:43:53 +0000 (10:43 -0600)]
cell: need to flush draw module when constants change

16 years agomesa: revert accidental change to fslight.c demo
Brian Paul [Wed, 15 Oct 2008 16:23:14 +0000 (10:23 -0600)]
mesa: revert accidental change to fslight.c demo

16 years agodraw: don't assume output buffer pointer is aligned
Keith Whitwell [Tue, 7 Oct 2008 15:44:24 +0000 (16:44 +0100)]
draw: don't assume output buffer pointer is aligned
(cherry picked from commit 23cc303994eb630c56b1224dfdac51dcea41ed03)

16 years agoMerge commit 'origin/gallium-0.1' into gallium-0.2
Keith Whitwell [Wed, 15 Oct 2008 16:20:30 +0000 (17:20 +0100)]
Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

src/mesa/main/context.c

16 years agoUpdate DRI2 implementation according to new specification.
Kristian Høgsberg [Sun, 12 Oct 2008 00:41:14 +0000 (20:41 -0400)]
Update DRI2 implementation according to new specification.

16 years agoRevert pointless reindents to avoid merge conflicts.
Kristian Høgsberg [Wed, 15 Oct 2008 03:07:42 +0000 (23:07 -0400)]
Revert pointless reindents to avoid merge conflicts.

Why are we reindenting code that's work in progress...

16 years agoglx: indent -br -i3 -npcs --no-tabs glxclient.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:14:33 +0000 (15:14 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxclient.h

16 years agoglx: indent -br -i3 -npcs --no-tabs glcontextmodes.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:13:21 +0000 (15:13 +0200)]
glx: indent -br -i3 -npcs --no-tabs glcontextmodes.h

16 years agoglx: indent -br -i3 -npcs --no-tabs glxextensions.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:10:59 +0000 (15:10 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxextensions.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glxextensions.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:07:23 +0000 (15:07 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxextensions.h

16 years agoglx: indent -br -i3 -npcs --no-tabs xfont.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:04:31 +0000 (15:04 +0200)]
glx: indent -br -i3 -npcs --no-tabs xfont.c

16 years agoglx: indent -br -i3 -npcs --no-tabs xf86dristr.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:03:54 +0000 (15:03 +0200)]
glx: indent -br -i3 -npcs --no-tabs xf86dristr.h

16 years agoglx: indent -br -i3 -npcs --no-tabs XF86dri.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:03:13 +0000 (15:03 +0200)]
glx: indent -br -i3 -npcs --no-tabs XF86dri.c

16 years agoglx: indent -br -i3 -npcs --no-tabs xf86dri.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 13:02:55 +0000 (15:02 +0200)]
glx: indent -br -i3 -npcs --no-tabs xf86dri.h

16 years agoglx: kill old K&R syntax in XF86dri.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:58:33 +0000 (14:58 +0200)]
glx: kill old K&R syntax in XF86dri.c

16 years agoglx: indent -br -i3 -npcs --no-tabs vertarr.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:41:33 +0000 (14:41 +0200)]
glx: indent -br -i3 -npcs --no-tabs vertarr.c

16 years agoglx: indent -br -i3 -npcs --no-tabs singlepix.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:37:06 +0000 (14:37 +0200)]
glx: indent -br -i3 -npcs --no-tabs singlepix.c

16 years agoglx: indent -br -i3 -npcs --no-tabs single2.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:35:18 +0000 (14:35 +0200)]
glx: indent -br -i3 -npcs --no-tabs single2.c

16 years agoglx: indent -br -i3 -npcs --no-tabs renderpix.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:34:43 +0000 (14:34 +0200)]
glx: indent -br -i3 -npcs --no-tabs renderpix.c

16 years agoglx: indent -br -i3 -npcs --no-tabs render2.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:34:18 +0000 (14:34 +0200)]
glx: indent -br -i3 -npcs --no-tabs render2.c

16 years agoglx: indent -br -i3 -npcs --no-tabs pixelstore.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:33:28 +0000 (14:33 +0200)]
glx: indent -br -i3 -npcs --no-tabs pixelstore.c

16 years agoglx: indent -br -i3 -npcs --no-tabs pixel.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:32:52 +0000 (14:32 +0200)]
glx: indent -br -i3 -npcs --no-tabs pixel.c

16 years agoglx: indent -br -i3 -npcs --no-tabs packsingle.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:31:49 +0000 (14:31 +0200)]
glx: indent -br -i3 -npcs --no-tabs packsingle.h

16 years agoglx: indent -br -i3 -npcs --no-tabs packrender.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:29:23 +0000 (14:29 +0200)]
glx: indent -br -i3 -npcs --no-tabs packrender.h

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_window_pos.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:27:46 +0000 (14:27 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_window_pos.c

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_vertex_program.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:27:07 +0000 (14:27 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_vertex_program.c

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_vertex_array_priv.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:25:55 +0000 (14:25 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array_priv.h

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:21:17 +0000 (14:21 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.h

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:20:15 +0000 (14:20 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.c

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_transpose_matrix.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:19:24 +0000 (14:19 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_transpose_matrix.c

16 years agoglx: indent -br -i3 -npcs --no-tabs indirect_texture_compression.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:18:18 +0000 (14:18 +0200)]
glx: indent -br -i3 -npcs --no-tabs indirect_texture_compression.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glx_query.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:12:40 +0000 (14:12 +0200)]
glx: indent -br -i3 -npcs --no-tabs glx_query.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glx_pbuffer.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:12:02 +0000 (14:12 +0200)]
glx: indent -br -i3 -npcs --no-tabs glx_pbuffer.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glxhash.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:10:16 +0000 (14:10 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxhash.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glxhash.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:10:06 +0000 (14:10 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxhash.h

16 years agoglx: indent -br -i3 -npcs --no-tabs glxext.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:08:45 +0000 (14:08 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxext.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glxcurrent.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:07:07 +0000 (14:07 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxcurrent.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glxcmds.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 12:06:30 +0000 (14:06 +0200)]
glx: indent -br -i3 -npcs --no-tabs glxcmds.c

16 years agoglx: indent -br -i3 -npcs --no-tabs glcontextmodes.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:49:49 +0000 (13:49 +0200)]
glx: indent -br -i3 -npcs --no-tabs glcontextmodes.c

16 years agoglx: indent -br -i3 -npcs --no-tabs eval.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:48:07 +0000 (13:48 +0200)]
glx: indent -br -i3 -npcs --no-tabs eval.c

16 years agoglx: indent -br -i3 -npcs --no-tabs drisw_glx.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:47:37 +0000 (13:47 +0200)]
glx: indent -br -i3 -npcs --no-tabs drisw_glx.c

16 years agoglx: indent -br -i3 -npcs --no-tabs dri_glx.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:40:09 +0000 (13:40 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri_glx.c

16 years agoglx: indent -br -i3 -npcs --no-tabs dri_common.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:26:09 +0000 (13:26 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri_common.h

16 years agoglx: indent -br -i3 -npcs --no-tabs dri_common.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:25:28 +0000 (13:25 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri_common.c

16 years agoglx: indent -br -i3 -npcs --no-tabs dri2.h
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:18:41 +0000 (13:18 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri2.h

16 years agoglx: indent -br -i3 -npcs --no-tabs dri2_glx.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:17:32 +0000 (13:17 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri2_glx.c

16 years agoglx: indent -br -i3 -npcs --no-tabs dri2.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:16:28 +0000 (13:16 +0200)]
glx: indent -br -i3 -npcs --no-tabs dri2.c

16 years agoglx: indent -br -i3 -npcs --no-tabs compsize.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:12:37 +0000 (13:12 +0200)]
glx: indent -br -i3 -npcs --no-tabs compsize.c

16 years agoglx: indent -br -i3 -npcs --no-tabs clientattrib.c
RALOVICH, Kristóf [Mon, 13 Oct 2008 11:11:30 +0000 (13:11 +0200)]
glx: indent -br -i3 -npcs --no-tabs clientattrib.c

16 years agoglx: add a line of Emacs helping variables
RALOVICH, Kristóf [Sat, 11 Oct 2008 12:27:07 +0000 (14:27 +0200)]
glx: add a line of Emacs helping variables

16 years agoglx: No need to zero a local variable.
RALOVICH, Kristóf [Sat, 11 Oct 2008 11:09:50 +0000 (13:09 +0200)]
glx: No need to zero a local variable.

My previous commit e2060348630b59a446bac7f734fdde40033093ab introduced this.

16 years agoglx: make INIT_MESA_SPARC more robust
RALOVICH, Kristóf [Sat, 11 Oct 2008 10:56:32 +0000 (12:56 +0200)]
glx: make INIT_MESA_SPARC more robust

Embed the macro body into do { ... } while(0) .

16 years agoi915: Texture instructions use r/t/oC/oD register as texture coordinate.
Xiang, Haihao [Mon, 13 Oct 2008 05:04:04 +0000 (13:04 +0800)]
i915: Texture instructions use r/t/oC/oD register as texture coordinate.

Fix http://bugs.freedesktop.org/show_bug.cgi?id=16287.