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

16 years agogallium: updated prototype (missed in prev commit)
Brian [Tue, 26 Feb 2008 21:30:41 +0000 (14:30 -0700)]
gallium: updated prototype (missed in prev commit)

16 years agogallium: replace draw_convert_wide_points() with draw_wide_point_threshold()
Brian [Tue, 26 Feb 2008 21:29:35 +0000 (14:29 -0700)]
gallium: replace draw_convert_wide_points() with draw_wide_point_threshold()

Specifying a threshold size is a bit more flexible, and allows the option
of converting even 1-pixel points to triangles (set threshold=0).

Also, remove 0.25 pixel bias in wide_point().

16 years agogallium: fix zero-sized viewport bug
Brian [Tue, 26 Feb 2008 21:26:40 +0000 (14:26 -0700)]
gallium: fix zero-sized viewport bug

If st_create_framebuffer() is called with width=0, height=0 and the program
never called glViewport, the viewport wasn't properly initalized.  This fixes
that.

16 years agogallium: fix off by one rasterpos bug
Brian [Tue, 26 Feb 2008 21:25:36 +0000 (14:25 -0700)]
gallium: fix off by one rasterpos bug

16 years agogallium: Print texture target for short dumps.
Michal Krol [Tue, 26 Feb 2008 19:32:42 +0000 (20:32 +0100)]
gallium: Print texture target for short dumps.

16 years agocell: Multiple rendering contexts don't work yet
Ian Romanick [Tue, 26 Feb 2008 19:18:51 +0000 (11:18 -0800)]
cell: Multiple rendering contexts don't work yet

Log a message and forcibly exit.  This prevents silly fools from
thinking there's a bug...instead of just an unimplemented feature. :)

16 years agointel_winsys: Fix build failure due to DEBUG_IOCTL being undefined.
Michel Dänzer [Tue, 26 Feb 2008 18:48:13 +0000 (18:48 +0000)]
intel_winsys: Fix build failure due to DEBUG_IOCTL being undefined.

Include pipe/p_debug.h to consistently enable or disable the debugging code.

16 years agogallium/i915: Use tgsi_scan_shader() to collect shader info
Brian [Tue, 26 Feb 2008 17:47:42 +0000 (10:47 -0700)]
gallium/i915: Use tgsi_scan_shader() to collect shader info

No longer use semantic info in pipe_shader_state.
Also, remove redundant semantic info from i915_fp_compile struct.

16 years agogallium: remove unused var
Brian [Tue, 26 Feb 2008 17:44:44 +0000 (10:44 -0700)]
gallium: remove unused var

16 years agogallium: added tgsi_shader_field to sp_fragment_shader
Brian [Tue, 26 Feb 2008 17:13:39 +0000 (10:13 -0700)]
gallium: added tgsi_shader_field to sp_fragment_shader

Use the shader semantic info from there, instead of from pipe_shader_state.
Carry this idea to draw module and other drivers...

16 years agogallium: collect more shader info in tgsi_scan_shader()
Brian [Tue, 26 Feb 2008 17:12:17 +0000 (10:12 -0700)]
gallium: collect more shader info in tgsi_scan_shader()

Now getting input/output semantic info so we can eventually remove those
fields from pipe_shader_state.

16 years agogallium: remove input_map[] from pipe_shader_state
Brian [Tue, 26 Feb 2008 15:43:07 +0000 (08:43 -0700)]
gallium: remove input_map[] from pipe_shader_state

16 years agogallium: disable debug code
Brian [Tue, 26 Feb 2008 15:41:42 +0000 (08:41 -0700)]
gallium: disable debug code