mesa.git
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 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 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 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 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 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.

16 years agogallium: fix line emit order for unfilled tris
Brian Paul [Fri, 29 Feb 2008 20:00:17 +0000 (13:00 -0700)]
gallium: fix line emit order for unfilled tris

A tri drawn with GL_LINE_LOOP and GL_POLYGON w/ fillmode=GL_LINE should produce
the same results when line stipple is enabled.  Results are correct now.

16 years agogallium: point rast coord tweak
Brian Paul [Fri, 29 Feb 2008 19:22:04 +0000 (12:22 -0700)]
gallium: point rast coord tweak

16 years agogallium: need precalc_flat=1 for wide lines
Brian Paul [Fri, 29 Feb 2008 19:21:42 +0000 (12:21 -0700)]
gallium: need precalc_flat=1 for wide lines

16 years agoscons: List sp_screen.c.
Michal Krol [Fri, 29 Feb 2008 09:32:25 +0000 (10:32 +0100)]
scons: List sp_screen.c.

16 years agogallium: tweak coords for wide lines
Brian Paul [Fri, 29 Feb 2008 18:37:12 +0000 (11:37 -0700)]
gallium: tweak coords for wide lines

16 years agogallium: fix glCopyPixels(GL_DEPTH) when Z format conversion is needed
Brian Paul [Fri, 29 Feb 2008 18:09:45 +0000 (11:09 -0700)]
gallium: fix glCopyPixels(GL_DEPTH) when Z format conversion is needed

16 years agogallium: added pipe_get/put_tile_z() functions
Brian Paul [Fri, 29 Feb 2008 18:09:02 +0000 (11:09 -0700)]
gallium: added pipe_get/put_tile_z() functions

16 years agogallium: remove the ugly pipe->draw stage lookup code in aaline/point/pstipple stages
Brian [Fri, 29 Feb 2008 17:07:44 +0000 (10:07 -0700)]
gallium: remove the ugly pipe->draw stage lookup code in aaline/point/pstipple stages

Added a void *draw ptr to pipe_context.  Probably look for a better solution someday.

16 years agonv40: move "channel context" stuff into nv40_screen
Ben Skeggs [Fri, 29 Feb 2008 12:08:01 +0000 (23:08 +1100)]
nv40: move "channel context" stuff into nv40_screen

16 years agonouveau: hand nouveau_winsys in with pipe_screen init
Ben Skeggs [Fri, 29 Feb 2008 11:54:40 +0000 (22:54 +1100)]
nouveau: hand nouveau_winsys in with pipe_screen init

16 years agonouveau: implement pipe_screen
Ben Skeggs [Fri, 29 Feb 2008 04:03:57 +0000 (15:03 +1100)]
nouveau: implement pipe_screen

Untested on NV3x/NV5x.  Quite possibly broken.

16 years agoMerge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1
Ben Skeggs [Fri, 29 Feb 2008 02:24:31 +0000 (13:24 +1100)]
Merge branch 'upstream-gallium-0.1' into nouveau-gallium-0.1

16 years agocell: convert all points/lines to tris for the time being
Brian [Fri, 29 Feb 2008 01:02:05 +0000 (18:02 -0700)]
cell: convert all points/lines to tris for the time being

Allows more programs to look correct.  We'll want native points/lines someday.

16 years agocell: remove obsolete texture field
Brian [Fri, 29 Feb 2008 00:57:54 +0000 (17:57 -0700)]
cell: remove obsolete texture field

16 years agoAdded calibrate_rast.c program
Brian [Fri, 29 Feb 2008 00:42:18 +0000 (17:42 -0700)]
Added calibrate_rast.c program

Measures rasterization of points/lines/tris and suggests fixes/biases when
something doesn't meet spec.

16 years agogallium: new wide point/line stages (missed in prev commit)
Brian Paul [Fri, 29 Feb 2008 00:54:42 +0000 (17:54 -0700)]
gallium: new wide point/line stages (missed in prev commit)

16 years agogallium: split draw_wide_prim stage into separate point/line stages.
Brian Paul [Fri, 29 Feb 2008 00:49:22 +0000 (17:49 -0700)]
gallium: split draw_wide_prim stage into separate point/line stages.

This fixes a validation/code-path problem.  Enabling the stage for the sake
of wide points also inadvertantly caused wide lines to be converted to tris
when we actually want them passed through, such as for the AA line stage.
This is just cleaner now.
Also, replace draw_convert_wide_lines() with draw_wide_line_threshold() as
was done for points.  Allows for 1-pixel lines to be converted too if needed.

16 years agogallium: fix surface/texture format conversion in st_CopyPixels
Brian Paul [Thu, 28 Feb 2008 18:31:56 +0000 (11:31 -0700)]
gallium: fix surface/texture format conversion in st_CopyPixels

If the src buffer's format isn't supported as a texture format, find a different
texture format.

16 years agogallium: added a texture format sanity check/assertion in st_texture_create()
Brian Paul [Thu, 28 Feb 2008 18:17:30 +0000 (11:17 -0700)]
gallium: added a texture format sanity check/assertion in st_texture_create()

make sure the tex format is actually supported by the driver.

16 years agogalliums: s/uint/enum pipe_format/
Brian Paul [Thu, 28 Feb 2008 18:04:39 +0000 (11:04 -0700)]
galliums: s/uint/enum pipe_format/

16 years agogallium: in GL_SELECT mode, update hitflag in rasterpos
Brian Paul [Thu, 28 Feb 2008 16:44:09 +0000 (09:44 -0700)]
gallium: in GL_SELECT mode, update hitflag in rasterpos

16 years agogallium: Fix MSVC warnings.
José Fonseca [Thu, 28 Feb 2008 12:25:54 +0000 (21:25 +0900)]
gallium: Fix MSVC warnings.

16 years agoMake sure struct pipe_screen is declared.
Michel Dänzer [Thu, 28 Feb 2008 09:07:38 +0000 (09:07 +0000)]
Make sure struct pipe_screen is declared.

16 years agogallium: State tracker cleanups wrt clears.
Keith Whitwell [Thu, 28 Feb 2008 09:07:03 +0000 (09:07 +0000)]
gallium: State tracker cleanups wrt clears.

16 years agoConvert crlf->lf line endings.
José Fonseca [Thu, 28 Feb 2008 06:53:13 +0000 (15:53 +0900)]
Convert crlf->lf line endings.

Windows/DOS users should enable core.autocrlf from now on.

16 years agoDisable autocrlf on Visual Studio project files.
José Fonseca [Thu, 28 Feb 2008 06:52:30 +0000 (15:52 +0900)]
Disable autocrlf on Visual Studio project files.

16 years agogallium: Remove extra level of indirecttion.
José Fonseca [Thu, 28 Feb 2008 04:52:30 +0000 (13:52 +0900)]
gallium: Remove extra level of indirecttion.

16 years agogallium: Fix sign/unsign comparison.
José Fonseca [Thu, 28 Feb 2008 02:23:01 +0000 (11:23 +0900)]
gallium: Fix sign/unsign comparison.

16 years agogallium: Convert CRLF -> LF.
Jose Fonseca [Thu, 28 Feb 2008 03:57:18 +0000 (12:57 +0900)]
gallium: Convert CRLF -> LF.

DOS/Windows users should not commit text files with CRLF line endings
but use instead

  git config --global core.autocrlf true

16 years agogallium: remove unneeded pipe ptr from pipe_texture
Brian [Thu, 28 Feb 2008 01:49:35 +0000 (18:49 -0700)]
gallium: remove unneeded pipe ptr from pipe_texture

16 years agogallium: added draw_num_vs_outputs() to query number of post-transform vertex attribs
Brian [Thu, 28 Feb 2008 01:46:54 +0000 (18:46 -0700)]
gallium: added draw_num_vs_outputs() to query number of post-transform vertex attribs

16 years agogallium/i965: remove more dependencies on pipe_shader_state semantic info
Brian [Thu, 28 Feb 2008 00:21:29 +0000 (17:21 -0700)]
gallium/i965: remove more dependencies on pipe_shader_state semantic info

16 years agogallium/i965: added const to silence warning
Brian [Thu, 28 Feb 2008 00:21:01 +0000 (17:21 -0700)]
gallium/i965: added const to silence warning

16 years agoscons: Build mesa source with c99.
José Fonseca [Wed, 27 Feb 2008 23:17:53 +0000 (08:17 +0900)]
scons: Build mesa source with c99.

16 years agocell: fix minor get_tex_surface() breakage
Brian [Wed, 27 Feb 2008 23:17:15 +0000 (16:17 -0700)]
cell: fix minor get_tex_surface() breakage

16 years agogallium/i965: remove brw_shader_info struct
Brian [Wed, 27 Feb 2008 23:22:08 +0000 (16:22 -0700)]
gallium/i965: remove brw_shader_info struct

The info it contained is now found in tgsi_shader_info.
Added a few assertions to catch potential misunderstandings about register
counts vs. highest register index used.

16 years agogallium/i965: silence warnings
Brian [Wed, 27 Feb 2008 23:11:26 +0000 (16:11 -0700)]
gallium/i965: silence warnings

16 years agogallium/i965: added const to silence warnings
Brian [Wed, 27 Feb 2008 23:11:14 +0000 (16:11 -0700)]
gallium/i965: added const to silence warnings

16 years agogallium/i965: remove UsesDepth, UsesKill - use tgsi_shader_info instead
Brian [Wed, 27 Feb 2008 23:09:17 +0000 (16:09 -0700)]
gallium/i965: remove UsesDepth, UsesKill - use tgsi_shader_info instead

16 years agogallium/i965: remove dependencies on pipe_shader_state's semantic info
Brian [Wed, 27 Feb 2008 23:05:16 +0000 (16:05 -0700)]
gallium/i965: remove dependencies on pipe_shader_state's semantic info

The brw_shader_info struct is rendundant and could be removed...

16 years agogallium: remove dependencies on pipe_shader_state's semantic info
Brian [Wed, 27 Feb 2008 23:03:40 +0000 (16:03 -0700)]
gallium: remove dependencies on pipe_shader_state's semantic info

16 years agogallium: remove dependencies on pipe_shader_state's semantic info
Brian [Wed, 27 Feb 2008 23:02:58 +0000 (16:02 -0700)]
gallium: remove dependencies on pipe_shader_state's semantic info

Use tgsi_scan_shader() to populate a tgsi_shader_info struct and use that instead.

16 years agogallium: include p_util.h
Brian [Wed, 27 Feb 2008 23:01:35 +0000 (16:01 -0700)]
gallium: include p_util.h

16 years agogallium: include p_compiler.h instead of p_util.h
Brian [Wed, 27 Feb 2008 23:00:04 +0000 (16:00 -0700)]
gallium: include p_compiler.h instead of p_util.h

16 years agogallium: remove unnecessary assignment
Brian [Wed, 27 Feb 2008 22:48:00 +0000 (15:48 -0700)]
gallium: remove unnecessary assignment

16 years agogallium: added file_max[] array to tgsi_shader_info
Brian [Wed, 27 Feb 2008 22:47:24 +0000 (15:47 -0700)]
gallium: added file_max[] array to tgsi_shader_info

Records the highest index of a declared register.

16 years agogallium/i915: remove unneeded assignment
Brian [Wed, 27 Feb 2008 22:45:41 +0000 (15:45 -0700)]
gallium/i915: remove unneeded assignment

16 years agogallium: remove unnecessary tgsi_interp_coef decl
Brian [Wed, 27 Feb 2008 22:11:12 +0000 (15:11 -0700)]
gallium: remove unnecessary tgsi_interp_coef decl

16 years agogallium: remove uses_kill field from softpipe_shader
Brian [Wed, 27 Feb 2008 22:06:55 +0000 (15:06 -0700)]
gallium: remove uses_kill field from softpipe_shader

16 years agogallium: added uses_kill field to tgsi_shader_info
Brian [Wed, 27 Feb 2008 22:06:04 +0000 (15:06 -0700)]
gallium: added uses_kill field to tgsi_shader_info

16 years agocell: Use unified data cache for textures too
Ian Romanick [Wed, 27 Feb 2008 21:40:23 +0000 (13:40 -0800)]
cell: Use unified data cache for textures too

16 years agogallium: remove obsolete *_strings.c files
Brian [Wed, 27 Feb 2008 21:28:17 +0000 (14:28 -0700)]
gallium: remove obsolete *_strings.c files

16 years agogallium: remove pipe_context->texture_create/release/get_tex_surface()
Brian [Wed, 27 Feb 2008 21:21:12 +0000 (14:21 -0700)]
gallium: remove pipe_context->texture_create/release/get_tex_surface()

These functions are now per-screen, not per-context.

16 years agogallium: move is_format_supported() to pipe_screen struct
Brian [Wed, 27 Feb 2008 20:58:06 +0000 (13:58 -0700)]
gallium: move is_format_supported() to pipe_screen struct

16 years agogallium: start removing pipe_context->get_name/vendor/param/paramf
Brian [Wed, 27 Feb 2008 18:24:35 +0000 (11:24 -0700)]
gallium: start removing pipe_context->get_name/vendor/param/paramf

These are now per-screen functions, not per-context.
State tracker updated, code in drivers and p_context.h disabled.

16 years agogallium/i965: implement pipe_screen for i965 driver (untested)
Brian [Wed, 27 Feb 2008 17:17:57 +0000 (10:17 -0700)]
gallium/i965: implement pipe_screen for i965 driver (untested)

16 years agogallium/i915: hook up screen->get_param()
Brian [Wed, 27 Feb 2008 17:15:37 +0000 (10:15 -0700)]
gallium/i915: hook up screen->get_param()

16 years agoCell: implement pipe_screen for cell driver
Brian [Wed, 27 Feb 2008 16:55:17 +0000 (09:55 -0700)]
Cell: implement pipe_screen for cell driver

16 years agogallium: implement pipe_screen for softpipe driver
Brian [Wed, 27 Feb 2008 16:47:46 +0000 (09:47 -0700)]
gallium: implement pipe_screen for softpipe driver

16 years agogallium/i915: remove some redundant code
Brian [Wed, 27 Feb 2008 16:46:10 +0000 (09:46 -0700)]
gallium/i915: remove some redundant code

16 years agogallium: better debug messages
Brian [Wed, 27 Feb 2008 16:15:15 +0000 (09:15 -0700)]
gallium: better debug messages

16 years agogallium: softpipe_init_texture_funcs(), make texture func static
Brian [Wed, 27 Feb 2008 15:58:12 +0000 (08:58 -0700)]
gallium: softpipe_init_texture_funcs(), make texture func static

16 years agomesa: set input read only on success
Jerome Glisse [Wed, 27 Feb 2008 14:42:48 +0000 (07:42 -0700)]
mesa: set input read only on success

16 years agoscons: Place the .sconsign file on the builddir too.
José Fonseca [Wed, 27 Feb 2008 11:13:16 +0000 (20:13 +0900)]
scons: Place the .sconsign file on the builddir too.

To avoid issues with different scons versions building the same source file

16 years agomesa: Add copyright headers.
José Fonseca [Wed, 27 Feb 2008 10:33:57 +0000 (19:33 +0900)]
mesa: Add copyright headers.

16 years agogallium: Make headers C++ friendly.
José Fonseca [Wed, 27 Feb 2008 09:39:57 +0000 (18:39 +0900)]
gallium: Make headers C++ friendly.

16 years agoscons: Move common code to a separate file.
José Fonseca [Wed, 27 Feb 2008 08:36:28 +0000 (17:36 +0900)]
scons: Move common code to a separate file.

16 years agoscons: Autodetect the default machine.
José Fonseca [Wed, 27 Feb 2008 07:53:52 +0000 (16:53 +0900)]
scons: Autodetect the default machine.

16 years agogallium: Replace // comments.
José Fonseca [Wed, 27 Feb 2008 07:42:15 +0000 (16:42 +0900)]
gallium: Replace // comments.

16 years agogallium: Remove // comments.
José Fonseca [Wed, 27 Feb 2008 07:23:50 +0000 (16:23 +0900)]
gallium: Remove // comments.

16 years agoscons: Fix winddk.py's decription and copyright.
José Fonseca [Wed, 27 Feb 2008 07:05:57 +0000 (16:05 +0900)]
scons: Fix winddk.py's decription and copyright.

16 years agogallium: update for new i915_screen.c file; fix some warnings.
José Fonseca [Wed, 27 Feb 2008 06:59:09 +0000 (15:59 +0900)]
gallium: update for new i915_screen.c file; fix some warnings.

16 years agogallium: Use stricter types.
José Fonseca [Wed, 27 Feb 2008 05:06:07 +0000 (14:06 +0900)]
gallium: Use stricter types.

VC++ won't silently convert a pointer to a function with typed pointer
arguments to one with void pointer arguments.

16 years agocell: insert a (disabled) call to spe_cpu_info_get()
Brian [Wed, 27 Feb 2008 03:12:29 +0000 (20:12 -0700)]
cell: insert a (disabled) call to spe_cpu_info_get()

Found on the Cell devel forum, but doesn't appear to be available in SDK 2.1.

16 years agogallium: introduce 'pipe_screen' for context-independent functions
Brian [Wed, 27 Feb 2008 03:15:14 +0000 (20:15 -0700)]
gallium: introduce 'pipe_screen' for context-independent functions

This will allow creating textures before a rendering context exists, for example.
Only implemented in i915 driver for now.  i915pipe->texture_create() just
dispatches through to the i915screen->texture_create() to avoid state tracker
changes for now.

16 years agogallium: use pipe_texture_reference() instead of pipe->texture_release()
Brian [Wed, 27 Feb 2008 02:35:08 +0000 (19:35 -0700)]
gallium: use pipe_texture_reference() instead of pipe->texture_release()

16 years agogallium: remove pipe parameter from pipe_texture_reference()
Brian [Wed, 27 Feb 2008 02:31:22 +0000 (19:31 -0700)]
gallium: remove pipe parameter from pipe_texture_reference()

Added pipe field to pipe_texture (temporary, see comments).
First step toward context-less texture creation...

16 years agoRevert "scons: Prefer MSVS 2003 (patch by Mark Mueller)."
José Fonseca [Wed, 27 Feb 2008 00:10:14 +0000 (09:10 +0900)]
Revert "scons: Prefer MSVS 2003 (patch by Mark Mueller)."

This reverts commit 19f6e1a975a098cf4ce935b50f7cf0c64d9db042.

16 years agogallium: #includes to silence warnings
Brian [Tue, 26 Feb 2008 21:34:19 +0000 (14:34 -0700)]
gallium: #includes to silence warnings