profile/ivi/mesa.git
16 years agoMerge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
Ben Skeggs [Thu, 13 Mar 2008 02:39:05 +0000 (13:39 +1100)]
Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1

16 years agoAdd some basic documentation for gallivm code
Zack Rusin [Thu, 13 Mar 2008 02:06:51 +0000 (22:06 -0400)]
Add some basic documentation for gallivm code

16 years agodocument hash collision resolutions
Zack Rusin [Thu, 13 Mar 2008 01:42:33 +0000 (21:42 -0400)]
document hash collision resolutions

16 years agogallium: fix polygon stipple
Brian [Thu, 13 Mar 2008 01:29:30 +0000 (19:29 -0600)]
gallium: fix polygon stipple

Was broken by commit 4528287e040415c2071012d02f20979ff995c754 (bind all
samplers/texures at once).

16 years agogallium: in clear_stencil_buffer() check surface format to determine stencil clear...
Brian [Thu, 13 Mar 2008 00:24:46 +0000 (18:24 -0600)]
gallium: in clear_stencil_buffer() check surface format to determine stencil clear value

... as we do for the Z and Z+stencil cases

16 years agonouveau: update to latest nouveau_class.h
Stephane Marchesin [Wed, 12 Mar 2008 23:42:50 +0000 (00:42 +0100)]
nouveau: update to latest nouveau_class.h

16 years agoi915: handle NULL object in i915_bind_rasterizer_state()
Brian [Wed, 12 Mar 2008 22:56:12 +0000 (16:56 -0600)]
i915: handle NULL object in i915_bind_rasterizer_state()

16 years agomesa: set SamplersUsed bitmask when parsing ARB fragment programs
Brian [Wed, 12 Mar 2008 21:33:41 +0000 (15:33 -0600)]
mesa: set SamplersUsed bitmask when parsing ARB fragment programs

16 years agogallium: pass NULL to cso_single_sampler() when the sampler isn't used.
Brian [Wed, 12 Mar 2008 20:20:54 +0000 (14:20 -0600)]
gallium: pass NULL to cso_single_sampler() when the sampler isn't used.

This fixes an AA line crash/regression.
The aaline stage needs to find a free/unused sampler to do its thing.

16 years agoremove reference to obsolete ExtDivide
Brian [Wed, 12 Mar 2008 19:22:58 +0000 (13:22 -0600)]
remove reference to obsolete ExtDivide

16 years agogallium: use TXP rather than ExtDivide flag
Brian [Wed, 12 Mar 2008 19:21:41 +0000 (13:21 -0600)]
gallium: use TXP rather than ExtDivide flag

16 years agogallium: change draw_vertex_shader->state from pointer to struct
Brian [Wed, 12 Mar 2008 19:20:29 +0000 (13:20 -0600)]
gallium: change draw_vertex_shader->state from pointer to struct

We were sometimes keeping a pointer to a stack-allocated object.
Now make a copy of the pipe_shader_state object.
This should fix some seemingly random memory errors/crashes.

16 years agonv30: debug dumps vp constants
Patrice Mandin [Wed, 12 Mar 2008 18:06:22 +0000 (19:06 +0100)]
nv30: debug dumps vp constants

16 years agonouveau: update to latest reg header.
Stephane Marchesin [Wed, 12 Mar 2008 17:43:29 +0000 (18:43 +0100)]
nouveau: update to latest reg header.

16 years agonv30: line up the miptree creation to latest changes.
Stephane Marchesin [Wed, 12 Mar 2008 17:40:37 +0000 (18:40 +0100)]
nv30: line up the miptree creation to latest changes.

16 years agotgsi: Remove ExtDivide field from existence. Implement OPCODE_TXP.
Michal Krol [Wed, 12 Mar 2008 15:41:25 +0000 (16:41 +0100)]
tgsi: Remove ExtDivide field from existence. Implement OPCODE_TXP.

16 years agotgsi: Dump TXP opcode.
Michal Krol [Wed, 12 Mar 2008 14:29:39 +0000 (15:29 +0100)]
tgsi: Dump TXP opcode.

16 years agogallium: Generic handle table.
José Fonseca [Wed, 12 Mar 2008 15:02:11 +0000 (15:02 +0000)]
gallium: Generic handle table.

16 years agogallium: Change assert behavior on runtime (Mark Mueller).
José Fonseca [Wed, 12 Mar 2008 15:01:18 +0000 (15:01 +0000)]
gallium: Change assert behavior on runtime (Mark Mueller).

16 years agotgsi: Introduce OPCODE_TXP. Depricate ExdDivide field.
Michal Krol [Wed, 12 Mar 2008 13:54:43 +0000 (14:54 +0100)]
tgsi: Introduce OPCODE_TXP. Depricate ExdDivide field.

16 years agoscons: Faithfully mimic every WINDDK builtin compiler/linker option.
José Fonseca [Wed, 12 Mar 2008 13:34:30 +0000 (13:34 +0000)]
scons: Faithfully mimic every WINDDK builtin compiler/linker option.

16 years agogallium: reduce signed/unsigned warnings
Keith Whitwell [Wed, 12 Mar 2008 10:43:53 +0000 (10:43 +0000)]
gallium: reduce signed/unsigned warnings

16 years agogallium: Add TEX_FILTER_ANISO img filter
Keith Whitwell [Wed, 12 Mar 2008 10:39:25 +0000 (10:39 +0000)]
gallium: Add TEX_FILTER_ANISO img filter

Hardware almost universally expects us to set a special filtering mode
when anisotropic filtering is enabled, as opposed to varying a max-aniso
values.  Do this once in the state tracker & simplify the driver code.

16 years agotgsi: Dump source register divide component.
Michal Krol [Wed, 12 Mar 2008 10:37:02 +0000 (11:37 +0100)]
tgsi: Dump source register divide component.

16 years agocell: check for NULL shader pointer in cell_bind_vs_state()
Brian [Wed, 12 Mar 2008 02:03:37 +0000 (20:03 -0600)]
cell: check for NULL shader pointer in cell_bind_vs_state()

16 years agogallium: dummy install target
Brian [Wed, 12 Mar 2008 01:02:51 +0000 (19:02 -0600)]
gallium: dummy install target

16 years agogallium: rework CSO-related code in state tracker
Brian [Wed, 12 Mar 2008 00:54:31 +0000 (18:54 -0600)]
gallium: rework CSO-related code in state tracker

Use the code in cso_context.c rather than st_cache.c.
Basically, binding of state objects now goes through the CSO module.
But Vertex/fragment shaders go through pipe->bind_fs/vs_state() since they're
not cached by the CSO module at this time.

Also, update softpipe driver to handle NULL state objects in various places.
This happens during context destruction.  May need to update other drivers...

16 years agogallium: Silence MSVC warnings.
José Fonseca [Tue, 11 Mar 2008 23:51:27 +0000 (23:51 +0000)]
gallium: Silence MSVC warnings.

16 years agogallium: Conditional debugging output.
José Fonseca [Tue, 11 Mar 2008 12:03:11 +0000 (12:03 +0000)]
gallium: Conditional debugging output.

Generalize the conditional debugging output code found trhought the gallium
drivers.

16 years agotgsi: Map OPCODE_TEXKILL to OPCODE_KILP.
Michal Krol [Tue, 11 Mar 2008 22:21:36 +0000 (23:21 +0100)]
tgsi: Map OPCODE_TEXKILL to OPCODE_KILP.

16 years agogallium: fix some cso_state_callback cast warnings
Brian [Tue, 11 Mar 2008 21:01:52 +0000 (15:01 -0600)]
gallium: fix some cso_state_callback cast warnings

16 years agogallium: fix fs/vs typo in cso_set_vertex_shader()
Brian [Tue, 11 Mar 2008 20:31:17 +0000 (14:31 -0600)]
gallium: fix fs/vs typo in cso_set_vertex_shader()

16 years agonv30: silence some warnings
Patrice Mandin [Tue, 11 Mar 2008 18:22:02 +0000 (19:22 +0100)]
nv30: silence some warnings

16 years agonv50: start on fb state
Ben Skeggs [Tue, 11 Mar 2008 17:50:53 +0000 (04:50 +1100)]
nv50: start on fb state

16 years agonv50: rasterizer stateobj
Ben Skeggs [Tue, 11 Mar 2008 17:29:58 +0000 (04:29 +1100)]
nv50: rasterizer stateobj

16 years agonv50: scissor/viewport/blend colour/stipple
Ben Skeggs [Tue, 11 Mar 2008 16:54:53 +0000 (03:54 +1100)]
nv50: scissor/viewport/blend colour/stipple

16 years agonv50: depth_stencil_alpha stateobj
Ben Skeggs [Tue, 11 Mar 2008 16:41:05 +0000 (03:41 +1100)]
nv50: depth_stencil_alpha stateobj

16 years agonv50: ouch, next_subchannel++ :)
Ben Skeggs [Tue, 11 Mar 2008 16:21:48 +0000 (03:21 +1100)]
nv50: ouch, next_subchannel++ :)

16 years agonv50: crappy state validate/emit function
Ben Skeggs [Tue, 11 Mar 2008 15:59:20 +0000 (02:59 +1100)]
nv50: crappy state validate/emit function

Just for testing stateobjs to make sure they don't hang the engine.

16 years agonv50: create blend stateobj
Ben Skeggs [Tue, 11 Mar 2008 15:56:10 +0000 (02:56 +1100)]
nv50: create blend stateobj

16 years agonv50: convert to hwctx-in-screen as nv40 is
Ben Skeggs [Tue, 11 Mar 2008 15:39:13 +0000 (02:39 +1100)]
nv50: convert to hwctx-in-screen as nv40 is

16 years agonv50: some forgotten changes
Ben Skeggs [Tue, 11 Mar 2008 15:20:40 +0000 (02:20 +1100)]
nv50: some forgotten changes

16 years agodraw: don't free our copy of the render stage -- just borrowing it from vbuf stage
Keith Whitwell [Tue, 11 Mar 2008 14:23:08 +0000 (14:23 +0000)]
draw: don't free our copy of the render stage -- just borrowing it from vbuf stage

16 years agogallium: missing file
Keith Whitwell [Tue, 11 Mar 2008 08:42:49 +0000 (08:42 +0000)]
gallium: missing file

16 years agofix double deletion
Zack Rusin [Tue, 11 Mar 2008 02:10:18 +0000 (22:10 -0400)]
fix double deletion
plus, if the current hash is bigger than max size make sure
we delete enough from it

16 years agofix compilation
Zack Rusin [Tue, 11 Mar 2008 02:10:07 +0000 (22:10 -0400)]
fix compilation

16 years agofix Height2/Depth2 init problem when using texture borders
Brian [Mon, 10 Mar 2008 23:41:00 +0000 (17:41 -0600)]
fix Height2/Depth2 init problem when using texture borders

16 years agogallium: disable an unneeded assertion (hit with texwrap.c)
Brian [Tue, 4 Mar 2008 15:38:54 +0000 (08:38 -0700)]
gallium: disable an unneeded assertion (hit with texwrap.c)

16 years agoMove SPE register allocator to rtasm code
Ian Romanick [Mon, 10 Mar 2008 23:28:54 +0000 (16:28 -0700)]
Move SPE register allocator to rtasm code

Move the register allocator to a common location.  There is more code
on the way that will make use of this interface.

16 years agodraw: placeholder/prototype code for a passthrough draw path
Keith Whitwell [Mon, 10 Mar 2008 19:49:15 +0000 (19:49 +0000)]
draw: placeholder/prototype code for a passthrough draw path

16 years agomesa: fast-track glColor and similar calls when not immediate mode rendering
Keith Whitwell [Mon, 10 Mar 2008 19:44:54 +0000 (19:44 +0000)]
mesa: fast-track glColor and similar calls when not immediate mode rendering

Often these are mixed in with draw arrays calls, etc.  Try not to get
the whole immediate rendering state machine going when we receive one
of these on their own.

16 years agogallium: fix compiler warning
Keith Whitwell [Mon, 10 Mar 2008 19:41:51 +0000 (19:41 +0000)]
gallium: fix compiler warning

16 years agogallium: use the same bypass_clipping logic on all vs paths
Keith Whitwell [Mon, 10 Mar 2008 19:41:12 +0000 (19:41 +0000)]
gallium: use the same bypass_clipping logic on all vs paths

16 years agogallium: enable bug workaround in draw_vertex_cache_invalidate
Keith Whitwell [Mon, 10 Mar 2008 19:37:32 +0000 (19:37 +0000)]
gallium: enable bug workaround in draw_vertex_cache_invalidate

16 years agogallium: new surface/context tracker (sct) module
Brian [Mon, 10 Mar 2008 23:21:43 +0000 (17:21 -0600)]
gallium: new surface/context tracker (sct) module

Will be used for tracking the surfaces and textures which are bound/used by
contexts.

16 years agocell: sync up with sampler/texture state-setting changes
Brian [Mon, 10 Mar 2008 22:43:36 +0000 (16:43 -0600)]
cell: sync up with sampler/texture state-setting changes

16 years agogallium: Use hardcoded breakpoints on x86 targets.
José Fonseca [Mon, 10 Mar 2008 21:18:00 +0000 (21:18 +0000)]
gallium: Use hardcoded breakpoints on x86 targets.

16 years agoSome notes about debugging
José Fonseca [Mon, 10 Mar 2008 21:15:31 +0000 (21:15 +0000)]
Some notes about debugging

16 years agogallium: Import Dennis Smit cpu detection code.
José Fonseca [Mon, 10 Mar 2008 16:45:19 +0000 (16:45 +0000)]
gallium: Import Dennis Smit cpu detection code.

It still needs a slight code massasing to integrate with the rest of
gallium (namely mapping the OS_* ARCH_* defines), but I'm commiting anyway
so that it is available to be used when somebody needs it.

16 years agogallium: WinCE portability fixes.
José Fonseca [Mon, 10 Mar 2008 13:04:13 +0000 (13:04 +0000)]
gallium: WinCE portability fixes.

16 years agonv30: put the card into vtxprog mode + small cleanups/fixes
Ben Skeggs [Mon, 10 Mar 2008 03:27:22 +0000 (14:27 +1100)]
nv30: put the card into vtxprog mode + small cleanups/fixes

16 years agogallium: avoid deleting currently-bound CSO's on cache destruction
Keith Whitwell [Sun, 9 Mar 2008 20:21:45 +0000 (20:21 +0000)]
gallium: avoid deleting currently-bound CSO's on cache destruction

16 years agodraw: cope with binding NULL vertex shader (on context delete, for instance)
Keith Whitwell [Sun, 9 Mar 2008 20:17:02 +0000 (20:17 +0000)]
draw: cope with binding NULL vertex shader (on context delete, for instance)

16 years agocso: fix line endings
Keith Whitwell [Sun, 9 Mar 2008 16:06:20 +0000 (17:06 +0100)]
cso: fix line endings

16 years agocso: Use MALLOC
Keith Whitwell [Sun, 9 Mar 2008 16:05:46 +0000 (17:05 +0100)]
cso: Use MALLOC

16 years agocso: add a higher-level interface which does all pipe interactions to set a given...
Keith Whitwell [Sun, 9 Mar 2008 14:09:55 +0000 (15:09 +0100)]
cso: add a higher-level interface which does all pipe interactions to set a given state

16 years agogallium: add some commonly implemented bits of hw state
Keith Whitwell [Sun, 9 Mar 2008 14:07:09 +0000 (15:07 +0100)]
gallium: add some commonly implemented bits of hw state

16 years agoscons: Ensure the paths to the WINDDK's executables are found before the MSVC ones.
José Fonseca [Sun, 9 Mar 2008 20:14:31 +0000 (20:14 +0000)]
scons: Ensure the paths to the WINDDK's executables are found before the MSVC ones.

16 years agogallium: Document debug_printf usage.
José Fonseca [Sat, 8 Mar 2008 16:29:12 +0000 (16:29 +0000)]
gallium: Document debug_printf usage.

16 years agonouveau: another "argh gallium fscks with assert" fix
Ben Skeggs [Fri, 7 Mar 2008 11:48:26 +0000 (22:48 +1100)]
nouveau: another "argh gallium fscks with assert" fix

16 years agogallium: Surround externs with extern "C".
Michal Krol [Thu, 6 Mar 2008 18:57:41 +0000 (19:57 +0100)]
gallium: Surround externs with extern "C".

16 years agonv30: a couple of vtxprog fixes
Ben Skeggs [Thu, 6 Mar 2008 00:52:25 +0000 (11:52 +1100)]
nv30: a couple of vtxprog fixes

16 years agogallium: michel's patch to rework texture/sampler binding interface
Keith Whitwell [Wed, 5 Mar 2008 09:50:14 +0000 (10:50 +0100)]
gallium: michel's patch to rework texture/sampler binding interface

Bind all the samplers/textures at once rather than piecemeal.
This is easier for drivers to understand.

16 years agogallium: Use custom vsnprintf in WINDDK.
José Fonseca [Wed, 5 Mar 2008 10:38:21 +0000 (11:38 +0100)]
gallium: Use custom vsnprintf in WINDDK.

EngDebugPrint does not handle float point arguments, so we need to use
our own vsnprintf implementation.

16 years agoscons: Preliminary code for quieting command lines.
José Fonseca [Tue, 4 Mar 2008 13:29:27 +0000 (14:29 +0100)]
scons: Preliminary code for quieting command lines.

16 years agodraw: dont' compute clipmask or apply viewport when not clipping (rename bypass_clipp...
Keith Whitwell [Tue, 4 Mar 2008 16:55:02 +0000 (17:55 +0100)]
draw: dont' compute clipmask or apply viewport when not clipping (rename bypass_clipping to coords_in_window_space?

16 years agogallium: Add missing file for scons build.
Michel Dänzer [Tue, 4 Mar 2008 17:32:43 +0000 (18:32 +0100)]
gallium: Add missing file for scons build.

16 years agogallium: Fix scons condition for building the xlib winsys.
Michel Dänzer [Tue, 4 Mar 2008 17:32:16 +0000 (18:32 +0100)]
gallium: Fix scons condition for building the xlib winsys.

16 years agogallium: Make scons build gallivm before other auxiliary modules.
Michel Dänzer [Tue, 4 Mar 2008 17:30:12 +0000 (18:30 +0100)]
gallium: Make scons build gallivm before other auxiliary modules.

This ensures that the gallivm symbols referenced by the draw module are
resolved properly.

16 years agogallium: Only use C++ compiler for linking when using LLVM.
Michel Dänzer [Tue, 4 Mar 2008 17:28:23 +0000 (18:28 +0100)]
gallium: Only use C++ compiler for linking when using LLVM.

Otherwise, the shared objects needlessly link against the C++ runtime
environment.

16 years agoscons: Force C++ linkage.
José Fonseca [Tue, 4 Mar 2008 11:40:18 +0000 (12:40 +0100)]
scons: Force C++ linkage.

We have some C++ code (LLVM), which must be linked with g++ on certain
platforms. SCons tries to guess when to use g++ by looking to the source files,
but this fails, if the C++ code is not list in the command line, but inside in
the library.

16 years agoscons: Make command line arguments effective again.
José Fonseca [Mon, 3 Mar 2008 17:52:37 +0000 (18:52 +0100)]
scons: Make command line arguments effective again.

16 years agowin32: don't prepend all debug with gallium3d
Keith Whitwell [Mon, 3 Mar 2008 16:49:38 +0000 (17:49 +0100)]
win32: don't prepend all debug with gallium3d

16 years agodraw: add fetch for bgra ubyte surfaces
Keith Whitwell [Mon, 3 Mar 2008 16:44:04 +0000 (17:44 +0100)]
draw: add fetch for bgra ubyte surfaces

16 years agogallium: remove obsolete comment
Keith Whitwell [Thu, 28 Feb 2008 17:08:37 +0000 (17:08 +0000)]
gallium: remove obsolete comment

16 years agogallium: document user_buffer_create a little
Keith Whitwell [Wed, 27 Feb 2008 13:06:18 +0000 (13:06 +0000)]
gallium: document user_buffer_create a little

16 years agonv40: re-do vtxbuf format code
Ben Skeggs [Sun, 2 Mar 2008 13:01:44 +0000 (00:01 +1100)]
nv40: re-do vtxbuf format code

16 years agonv40: nuke debug
Ben Skeggs [Sun, 2 Mar 2008 05:48:15 +0000 (16:48 +1100)]
nv40: nuke debug

16 years agonouveau: silence some warnings
Ben Skeggs [Sun, 2 Mar 2008 05:39:24 +0000 (16:39 +1100)]
nouveau: silence some warnings

16 years agonouveau: fix potential crash
Ben Skeggs [Sun, 2 Mar 2008 05:35:47 +0000 (16:35 +1100)]
nouveau: fix potential crash

16 years agoMerge remote branch 'nouveau/gallium-0.1' into nouveau-gallium-0.1
Ben Skeggs [Sun, 2 Mar 2008 04:42:53 +0000 (15:42 +1100)]
Merge remote branch 'nouveau/gallium-0.1' into nouveau-gallium-0.1

16 years agonv40: fix segv when app "skips" texture units.
Ben Skeggs [Sun, 2 Mar 2008 04:28:24 +0000 (15:28 +1100)]
nv40: fix segv when app "skips" texture units.

16 years agonouveau: enable multi-context/single-channel support for nv40
Ben Skeggs [Sun, 2 Mar 2008 03:56:42 +0000 (14:56 +1100)]
nouveau: enable multi-context/single-channel support for nv40

16 years agonouveau: turn pushbuf macros into inline functions
Ben Skeggs [Sun, 2 Mar 2008 03:09:57 +0000 (14:09 +1100)]
nouveau: turn pushbuf macros into inline functions

16 years agorefactor code calling builtins and implement dp4
Zack Rusin [Sat, 1 Mar 2008 14:50:41 +0000 (09:50 -0500)]
refactor code calling builtins and implement dp4

16 years agomake the first builtin work (dp3)
Zack Rusin [Sat, 1 Mar 2008 13:32:31 +0000 (08:32 -0500)]
make the first builtin work (dp3)

16 years agostart implementing start of bultins
Zack Rusin [Sat, 1 Mar 2008 13:04:21 +0000 (08:04 -0500)]
start implementing start of bultins

16 years agoMerge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
Ben Skeggs [Sat, 1 Mar 2008 15:35:17 +0000 (02:35 +1100)]
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1

16 years agogallium: change st->state.sampler_texture[] to store pipe_texture pointers
Brian Paul [Fri, 29 Feb 2008 23:16:16 +0000 (16:16 -0700)]
gallium: change st->state.sampler_texture[] to store pipe_texture pointers

This is a better fix for the previous check-in.
Fixes texadd.c conform test, and probably other bugs.

16 years agogallium: fix update_textures() bug in pipe_texture binding logic
Brian Paul [Fri, 29 Feb 2008 22:38:43 +0000 (15:38 -0700)]
gallium: fix update_textures() bug in pipe_texture binding logic

The 'st' pointer might not have changed, but st->pt might have.  The dirtyData flag
will indicate when that's happened, so check it.