profile/ivi/mesa.git
16 years agoMerge commit 'origin/master' into gallium-0.2
Keith Whitwell [Thu, 18 Sep 2008 17:57:46 +0000 (18:57 +0100)]
Merge commit 'origin/master' into gallium-0.2

Conflicts:

progs/trivial/Makefile
src/mesa/glapi/glthread.c

16 years agomesa: bring sources into line with sources.mak, but omit gallium code
Keith Whitwell [Fri, 12 Sep 2008 14:10:50 +0000 (15:10 +0100)]
mesa: bring sources into line with sources.mak, but omit gallium code

16 years agodri/swrast: fix swapBuffers after dri2
George Sapountzis [Fri, 12 Sep 2008 09:43:10 +0000 (12:43 +0300)]
dri/swrast: fix swapBuffers after dri2

16 years agoi965: Add support for G41 chipset which is another 4 series.
Xiang, Haihao [Fri, 12 Sep 2008 01:25:34 +0000 (09:25 +0800)]
i965: Add support for G41 chipset which is another 4 series.

16 years agocell: Fix bug with complement logic for SGE and SLE
Jonathan White [Thu, 18 Sep 2008 17:11:49 +0000 (11:11 -0600)]
cell: Fix bug with complement logic for SGE and SLE

16 years agocell: Added SGE and SLE instructions to dispatch function
Jonathan White [Thu, 18 Sep 2008 16:37:45 +0000 (10:37 -0600)]
cell:  Added SGE and SLE instructions to dispatch function

16 years agocell: Added SGE and SLE instructions
Jonathan White [Thu, 18 Sep 2008 16:36:09 +0000 (10:36 -0600)]
cell: Added SGE and SLE instructions

16 years agoCELL: finish fragment ops blending (except for unusual D3D modes)
Robert Ellison [Thu, 18 Sep 2008 07:29:41 +0000 (01:29 -0600)]
CELL: finish fragment ops blending (except for unusual D3D modes)

- Added new "macro" functions spe_float_min() and spe_float_max()
  to rtasm_ppc_spe.{ch}.  These emit instructions that cause
  the minimum or maximum of each element in a vector of floats
  to be saved in the destination register.

- Major changes to cell_gen_fragment.c to implement all the blending
  modes (except for the mysterious D3D-based PIPE_BLENDFACTOR_SRC1_COLOR,
  PIPE_BLENDFACTOR_SRC1_ALPHA, PIPE_BLENDFACTOR_INV_SRC1_COLOR, and
  PIPE_BLENDFACTOR_INV_SRC1_ALPHA).

- Some revamping of code in cell_gen_fragment.c: use the new spe_float_min()
  and spe_float_max() functions (instead of expanding these calculations
  inline via macros); create and use an inline utility function for handling
  "optional" register allocation (for the {1,1,1,1} vector, and the
  blend color vectors) instead of expanding with macros; use the Float
  Multiply and Subtract (fnms) instruction to simplify and optimize many
  blending calculations.

16 years agomesa: fix bug in previous changes to _slang_resolve_attributes()
Brian Paul [Wed, 17 Sep 2008 15:05:04 +0000 (09:05 -0600)]
mesa: fix bug in previous changes to _slang_resolve_attributes()

16 years agocell: example of doing fs/fm sequence with fnms in blending
Brian Paul [Wed, 17 Sep 2008 14:17:02 +0000 (08:17 -0600)]
cell: example of doing fs/fm sequence with fnms in blending

16 years agocell: dump generated code if CELL_DEBUG=asm
Brian Paul [Wed, 17 Sep 2008 14:11:42 +0000 (08:11 -0600)]
cell: dump generated code if CELL_DEBUG=asm

16 years agoCELL: fleshing out the blending fragment ops
Robert Ellison [Wed, 17 Sep 2008 08:30:20 +0000 (02:30 -0600)]
CELL: fleshing out the blending fragment ops

- Added two new debug flags (to be used with the CELL_DEBUG environment
  variable).  The first, "CELL_DEBUG=fragops", activates SPE fragment
  ops debug messages.  The second, "CELL_DEBUG=fragopfallback", will
  eventually be used to disable the use of generated SPE code for
  fragment ops in favor of the default fallback reference routine.
  (During development, though, the parity of this flag is reversed:
  all users will get the reference code *unless* CELL_DEBUG=fragopfallback
  is set.  This will prevent hiccups in code generation from affecting
  the other developers.)

- Formalized debug message usage and macros in spu/spu_main.c.

- Added lots of new code to ppu/cell_gen_fragment.c to extend the
  number of supported source RGB factors from 4 to 15, and to
  complete the list of supported blend equations.

More coming, to complete the source and destination RGB and alpha
factors, and to complete the rest of the fragment operations...

16 years agointel: Destroy bufmgr in screen destroy, not context.
Eric Anholt [Wed, 17 Sep 2008 00:01:06 +0000 (17:01 -0700)]
intel: Destroy bufmgr in screen destroy, not context.

Caused server crashes on second context creation since
7e0bbdcf033981282978554c2e68ce48b55aa291.

Bug #17600.

16 years agomesa: rework GLSL vertex attribute binding
Brian Paul [Tue, 16 Sep 2008 22:28:36 +0000 (16:28 -0600)]
mesa: rework GLSL vertex attribute binding

Calls to glBindAttribLocation() should not take effect until the next time
that glLinkProgram() is called.
gl_shader_program::Attributes now just contains user-defined bindings.
gl_shader_program::VertexProgram->Attributes contains the actual/final bindings.

16 years agocell: Added RCP and RSQ instruction support.
Jonathan White [Tue, 16 Sep 2008 22:00:42 +0000 (16:00 -0600)]
cell: Added RCP and RSQ instruction support.

16 years agocell: Added DP3 and DP4 instructions
Jonathan White [Tue, 16 Sep 2008 19:56:56 +0000 (13:56 -0600)]
cell: Added DP3 and DP4 instructions

16 years agomesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList())
Brian Paul [Tue, 16 Sep 2008 19:23:01 +0000 (13:23 -0600)]
mesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList())

16 years agost: hash-warning not recognised on Windows.
Michal Krol [Tue, 16 Sep 2008 17:26:28 +0000 (19:26 +0200)]
st: hash-warning not recognised on Windows.

16 years agocell: Optimized LERP with fma
Jonathan White [Tue, 16 Sep 2008 15:42:28 +0000 (09:42 -0600)]
cell: Optimized LERP with fma
 Please enter the commit message for your changes.

16 years agocell: Fixed MIN/MAX algorithm
Jonathan White [Tue, 16 Sep 2008 15:36:38 +0000 (09:36 -0600)]
cell: Fixed MIN/MAX algorithm

16 years agocell: export CELL_DEBUG=asm to dump SPU assembly code
Brian Paul [Tue, 16 Sep 2008 01:38:39 +0000 (19:38 -0600)]
cell: export CELL_DEBUG=asm to dump SPU assembly code

16 years agomesa: fix MSAA enable state in update_multisample()
Brian Paul [Mon, 15 Sep 2008 23:10:04 +0000 (17:10 -0600)]
mesa: fix MSAA enable state in update_multisample()

16 years agocell: Added LERP instruction
Jonathan White [Mon, 15 Sep 2008 21:45:51 +0000 (15:45 -0600)]
cell: Added LERP instruction

16 years agogallium: emit SPU instructions in assembler-compatible syntax
Brian Paul [Mon, 15 Sep 2008 21:10:02 +0000 (15:10 -0600)]
gallium: emit SPU instructions in assembler-compatible syntax

16 years agocell: Added support for SLT, SEQ and SNE instructions
Jonathan White [Mon, 15 Sep 2008 19:45:09 +0000 (13:45 -0600)]
cell: Added support for SLT, SEQ and SNE instructions

16 years agocell: Added support for ABS instruction
Jonathan White [Mon, 15 Sep 2008 18:27:10 +0000 (12:27 -0600)]
cell: Added support for ABS instruction

16 years agoAdded support for SUB and MAD instructions
Jonathan White [Mon, 15 Sep 2008 17:56:51 +0000 (11:56 -0600)]
Added support for SUB and MAD instructions

16 years agoFixed emit_RRR
Jonathan White [Mon, 15 Sep 2008 17:56:21 +0000 (11:56 -0600)]
Fixed emit_RRR

16 years agoi915simple: dri winsys does now compile and works
Jakob Bornecrantz [Mon, 15 Sep 2008 15:55:09 +0000 (17:55 +0200)]
i915simple: dri winsys does now compile and works

Glxgears hits an assert, but tri works

16 years agomesa: remove some assertions that are invalid during context tear-down
Brian Paul [Mon, 15 Sep 2008 15:07:32 +0000 (09:07 -0600)]
mesa: remove some assertions that are invalid during context tear-down

16 years agomesa: get another class of degenerate dlists working
Keith Whitwell [Mon, 15 Sep 2008 12:47:25 +0000 (13:47 +0100)]
mesa: get another class of degenerate dlists working

Primitive begin in one dlist, end in another.

16 years agoadd dlist-degenerate test case
Keith Whitwell [Mon, 15 Sep 2008 12:47:12 +0000 (13:47 +0100)]
add dlist-degenerate test case

16 years agoglut: s/glut_fbc.c/glut_fcb.c/
Shane Blackett [Sun, 14 Sep 2008 23:51:01 +0000 (17:51 -0600)]
glut: s/glut_fbc.c/glut_fcb.c/

16 years agodraw: Silence compiler warnings on Windows.
Michal Krol [Sun, 14 Sep 2008 17:04:53 +0000 (19:04 +0200)]
draw: Silence compiler warnings on Windows.

16 years agocell: implement negation, absolute value and set-sign for src regs in code gen
Brian Paul [Sat, 13 Sep 2008 21:32:46 +0000 (15:32 -0600)]
cell: implement negation, absolute value and set-sign for src regs in code gen

16 years agonegate.txt - test negation of a src reg
Brian Paul [Sat, 13 Sep 2008 21:31:46 +0000 (15:31 -0600)]
negate.txt - test negation of a src reg

16 years agogallium: add another value check to util_fast_pow()
Brian Paul [Sat, 13 Sep 2008 21:21:58 +0000 (15:21 -0600)]
gallium: add another value check to util_fast_pow()

Fixes glitches seen in morph3d demo.

16 years agotdfx: fix crash and lack of visuals bug
Jakub Bogusz [Sat, 13 Sep 2008 20:35:02 +0000 (14:35 -0600)]
tdfx: fix crash and lack of visuals bug

16 years agoi915: fix himask constant init for 64-bit build
Guillaume Melquiond [Sat, 13 Sep 2008 20:25:02 +0000 (14:25 -0600)]
i915: fix himask constant init for 64-bit build

16 years agoglx: fix 64-bit datatype issue
Guillaume Melquiond [Sat, 13 Sep 2008 20:24:31 +0000 (14:24 -0600)]
glx: fix 64-bit datatype issue

16 years agomesa: return after _mesa_problem() calls
Guillaume Melquiond [Sat, 13 Sep 2008 20:23:39 +0000 (14:23 -0600)]
mesa: return after _mesa_problem() calls

16 years agomesa: #include <stdio.h>
Guillaume Melquiond [Sat, 13 Sep 2008 20:23:14 +0000 (14:23 -0600)]
mesa: #include <stdio.h>

16 years agoremove invalid XDestroyWindow() call
Guillaume Melquiond [Sat, 13 Sep 2008 20:22:15 +0000 (14:22 -0600)]
remove invalid XDestroyWindow() call

16 years agosilence warning
Guillaume Melquiond [Sat, 13 Sep 2008 20:21:50 +0000 (14:21 -0600)]
silence warning

16 years agoGLU: fix asst warnings
Guillaume Melquiond [Sat, 13 Sep 2008 20:20:14 +0000 (14:20 -0600)]
GLU: fix asst warnings

16 years agocell: remove old disassembly/dump code; use dumper code in SPE emitter.
Brian Paul [Sat, 13 Sep 2008 03:54:25 +0000 (21:54 -0600)]
cell: remove old disassembly/dump code; use dumper code in SPE emitter.

16 years agogallium: added print/dump code to SPE code emitter
Brian Paul [Sat, 13 Sep 2008 03:52:47 +0000 (21:52 -0600)]
gallium: added print/dump code to SPE code emitter

16 years agocell: implement DDX/DDY codegen (untested)
Brian Paul [Sat, 13 Sep 2008 03:09:10 +0000 (21:09 -0600)]
cell: implement DDX/DDY codegen (untested)

16 years agogallium: added spe_splat_word()
Brian Paul [Sat, 13 Sep 2008 03:08:01 +0000 (21:08 -0600)]
gallium: added spe_splat_word()

16 years agocell: implement TGSI immediates in SPE code generator
Brian Paul [Fri, 12 Sep 2008 23:10:20 +0000 (17:10 -0600)]
cell: implement TGSI immediates in SPE code generator

16 years agointel: Add a width field to regions, and use it for making miptrees in TFP.
Eric Anholt [Fri, 12 Sep 2008 22:48:13 +0000 (15:48 -0700)]
intel: Add a width field to regions, and use it for making miptrees in TFP.

Otherwise, we would use the pitch as width of the texture, and compiz would
render the pitch padding on the right hand side.

16 years agocell: initial support for IF/ELSE/ENDIF in fragment shader codegen
Brian Paul [Fri, 12 Sep 2008 22:31:53 +0000 (16:31 -0600)]
cell: initial support for IF/ELSE/ENDIF in fragment shader codegen

Only one level of if/else/endif nesting is currently working.

16 years agocell: evaluate multiple fragment inputs
Brian Paul [Fri, 12 Sep 2008 22:11:52 +0000 (16:11 -0600)]
cell: evaluate multiple fragment inputs

16 years agoFinish off the previous fix for TFP.
Eric Anholt [Fri, 12 Sep 2008 21:18:14 +0000 (14:18 -0700)]
Finish off the previous fix for TFP.

A couple of those lines of debug printfs I deleted weren't actually debug
printfs.

16 years agocell: disable invalid spe_release_func() calls, fixes crash on exit
Brian Paul [Fri, 12 Sep 2008 21:07:04 +0000 (15:07 -0600)]
cell: disable invalid spe_release_func() calls, fixes crash on exit

16 years agointel: Don't segfault on TFP from a bad drawable.
Eric Anholt [Fri, 12 Sep 2008 20:47:37 +0000 (13:47 -0700)]
intel: Don't segfault on TFP from a bad drawable.

16 years agointel: Remove dead allow_batchbuffer param.
Eric Anholt [Thu, 11 Sep 2008 16:50:47 +0000 (09:50 -0700)]
intel: Remove dead allow_batchbuffer param.

16 years agoMakefile was previously checked in with merge diffs still present. I just selected...
Jonathan White [Fri, 12 Sep 2008 19:24:05 +0000 (13:24 -0600)]
Makefile was previously checked in with merge diffs still present.   I just selected HEAD and removed the old.

16 years agomesa: bump gallium version string to 0.2
Brian Paul [Fri, 12 Sep 2008 18:05:10 +0000 (12:05 -0600)]
mesa: bump gallium version string to 0.2

16 years agocell: more documentation updates
Brian Paul [Fri, 12 Sep 2008 18:04:49 +0000 (12:04 -0600)]
cell: more documentation updates

16 years agocell: implement colormask on fallback path
Brian Paul [Fri, 12 Sep 2008 17:43:37 +0000 (11:43 -0600)]
cell: implement colormask on fallback path

Also, some var renaming and additional comments

16 years agogallium: avoid redundant tgsi_exec_machine_bind_shader() calls on draw exec path
Brian Paul [Fri, 12 Sep 2008 17:42:33 +0000 (11:42 -0600)]
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.

16 years agogallium: use copy_token() function to avoid type punning/aliasing problems
Brian Paul [Fri, 12 Sep 2008 17:40:31 +0000 (11:40 -0600)]
gallium: use copy_token() function to avoid type punning/aliasing problems

This fixes parsing errors seen with optimized builds on PPC (which led to crashes).
The memcpy() is heavy-handed, but works.  A lighter uint assignment could
be used on x86...

16 years agocell: fix twiddled tile display for XSHM. Fixed blank window problem.
Brian Paul [Fri, 12 Sep 2008 17:35:22 +0000 (11:35 -0600)]
cell: fix twiddled tile display for XSHM.  Fixed blank window problem.

16 years agogallium: use new compare32() function to fix warnings about type punning and aliasing
Brian Paul [Fri, 12 Sep 2008 17:02:18 +0000 (11:02 -0600)]
gallium: use new compare32() function to fix warnings about type punning and aliasing

16 years agogallium: silence warning
Brian Paul [Fri, 12 Sep 2008 17:01:31 +0000 (11:01 -0600)]
gallium: silence warning

16 years agocell: fix non-debug build error
Brian Paul [Fri, 12 Sep 2008 15:43:11 +0000 (09:43 -0600)]
cell: fix non-debug build error

16 years agocell: implement swizzling for src regs
Brian Paul [Fri, 12 Sep 2008 14:48:08 +0000 (08:48 -0600)]
cell: implement swizzling for src regs

16 years agocell: setup fragment program inputs in SOA format
Brian Paul [Fri, 12 Sep 2008 14:47:45 +0000 (08:47 -0600)]
cell: setup fragment program inputs in SOA format

Also remove old code, etc.

16 years agosimple add with swizzle and mul with swizzle tests
Brian Paul [Fri, 12 Sep 2008 14:40:50 +0000 (08:40 -0600)]
simple add with swizzle and mul with swizzle tests

16 years agocell: updated docs/status
Brian Paul [Fri, 12 Sep 2008 14:26:47 +0000 (08:26 -0600)]
cell: updated docs/status

16 years agogallium: minor optimization to spe_load_int()
Brian Paul [Fri, 12 Sep 2008 14:22:15 +0000 (08:22 -0600)]
gallium: minor optimization to spe_load_int()

16 years agogallium: initial PPC/Altivec codegen
Brian Paul [Fri, 12 Sep 2008 14:21:43 +0000 (08:21 -0600)]
gallium: initial PPC/Altivec codegen

16 years agocell: update branch info in docs
Brian Paul [Fri, 12 Sep 2008 13:57:28 +0000 (07:57 -0600)]
cell: update branch info in docs

16 years agocell: disable calls to old gen code
Brian Paul [Fri, 12 Sep 2008 13:57:08 +0000 (07:57 -0600)]
cell: disable calls to old gen code

16 years agogallium: don't build winsys/ here
Brian Paul [Fri, 12 Sep 2008 13:56:43 +0000 (07:56 -0600)]
gallium: don't build winsys/ here

16 years agoi915simple: A step closer to compiling
Jakob Bornecrantz [Fri, 12 Sep 2008 13:09:44 +0000 (15:09 +0200)]
i915simple: A step closer to compiling

16 years agomesa: build gallium directories before core mesa
Keith Whitwell [Fri, 12 Sep 2008 11:24:21 +0000 (12:24 +0100)]
mesa: build gallium directories before core mesa

16 years agomesa: regenerate shader files
Keith Whitwell [Fri, 12 Sep 2008 11:23:28 +0000 (12:23 +0100)]
mesa: regenerate shader files

16 years agodri/swrast: fix swapBuffers after dri2
George Sapountzis [Fri, 12 Sep 2008 09:43:10 +0000 (12:43 +0300)]
dri/swrast: fix swapBuffers after dri2

16 years agovp: add run script
Keith Whitwell [Fri, 12 Sep 2008 09:31:51 +0000 (10:31 +0100)]
vp: add run script

16 years agoMerge commit 'origin/gallium-0.1' into gallium-0.2
Keith Whitwell [Fri, 12 Sep 2008 09:31:23 +0000 (10:31 +0100)]
Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

progs/fp/Makefile

16 years agofp: put test name in window title, add run script
Keith Whitwell [Fri, 12 Sep 2008 09:28:36 +0000 (10:28 +0100)]
fp: put test name in window title, add run script

16 years agomesa: get fixed-function program generation working again
Keith Whitwell [Fri, 12 Sep 2008 09:04:56 +0000 (10:04 +0100)]
mesa: get fixed-function program generation working again

16 years agouse APP_CC, remove redundant target
Keith Whitwell [Fri, 12 Sep 2008 09:02:16 +0000 (10:02 +0100)]
use APP_CC, remove redundant target

16 years agoi965: Add support for G41 chipset which is another 4 series.
Xiang, Haihao [Fri, 12 Sep 2008 01:25:34 +0000 (09:25 +0800)]
i965: Add support for G41 chipset which is another 4 series.

16 years agocell: initial support for fragment shader code generation.
Brian Paul [Thu, 11 Sep 2008 23:59:52 +0000 (17:59 -0600)]
cell: initial support for fragment shader code generation.

TGSI shaders are translated into SPE instructions which are then sent to
the SPEs for execution.  Only a few opcodes work, no swizzling yet, no
support for constants/immediates, etc.

16 years agouse APP_CC
Brian Paul [Thu, 11 Sep 2008 23:55:53 +0000 (17:55 -0600)]
use APP_CC

16 years agocell: fix tile twidding bug seen in the event of multiple expose events
Brian Paul [Thu, 11 Sep 2008 23:10:10 +0000 (17:10 -0600)]
cell: fix tile twidding bug seen in the event of multiple expose events

16 years agocell: minor improvements to fragment code-gen
Brian Paul [Thu, 11 Sep 2008 23:08:52 +0000 (17:08 -0600)]
cell: minor improvements to fragment code-gen

16 years agogallium: add special cases in spe_load_float(), spe_load_int(), added spe_splat()
Brian Paul [Thu, 11 Sep 2008 23:07:30 +0000 (17:07 -0600)]
gallium: add special cases in spe_load_float(), spe_load_int(), added spe_splat()

16 years agocell: put cell_ prefix on gen_fragment_function()
Brian Paul [Thu, 11 Sep 2008 21:48:13 +0000 (15:48 -0600)]
cell: put cell_ prefix on gen_fragment_function()

16 years agotrivial: remove stray merge conflict
Keith Whitwell [Thu, 11 Sep 2008 19:11:11 +0000 (20:11 +0100)]
trivial: remove stray merge conflict

16 years agost: adapt to new framebuffer struct, with one FIXME outstanding
Keith Whitwell [Thu, 11 Sep 2008 19:08:44 +0000 (20:08 +0100)]
st: adapt to new framebuffer struct, with one FIXME outstanding

16 years agomesa: update PointParameter usage
Keith Whitwell [Thu, 11 Sep 2008 19:08:07 +0000 (20:08 +0100)]
mesa: update PointParameter usage

16 years agodemos: fix LIBS ref in makefile
Keith Whitwell [Thu, 11 Sep 2008 19:07:41 +0000 (20:07 +0100)]
demos: fix LIBS ref in makefile

16 years agogallium: typo: s/PIPE_FORMAT_Z16UNORM/PIPE_FORMAT_Z16_UNORM/
Brian Paul [Thu, 11 Sep 2008 18:01:19 +0000 (12:01 -0600)]
gallium: typo: s/PIPE_FORMAT_Z16UNORM/PIPE_FORMAT_Z16_UNORM/

16 years agoegl_xdri: Add the top-level lib dir so we link against the libGL we built.
Dima Zavin [Thu, 21 Aug 2008 17:41:19 +0000 (10:41 -0700)]
egl_xdri: Add the top-level lib dir so we link against the libGL we built.

16 years agoegl_dri/egl_xdri: Makefiles should use pkg-config to find libdrm.
Dima Zavin [Thu, 21 Aug 2008 17:40:55 +0000 (10:40 -0700)]
egl_dri/egl_xdri: Makefiles should use pkg-config to find libdrm.

16 years agoxlib: fix typo
Keith Whitwell [Thu, 11 Sep 2008 17:35:19 +0000 (18:35 +0100)]
xlib: fix typo