mesa.git
16 years agogallium: release textures during context tear-down (fix mem leak)
Brian Paul [Fri, 16 May 2008 22:04:30 +0000 (16:04 -0600)]
gallium: release textures during context tear-down (fix mem leak)

16 years agogallium: ref counting clean-ups
Brian Paul [Fri, 16 May 2008 22:04:04 +0000 (16:04 -0600)]
gallium: ref counting clean-ups

16 years agomesa: call glutDestroyWindow() on exit to help find mem leaks
Brian Paul [Fri, 16 May 2008 22:02:52 +0000 (16:02 -0600)]
mesa: call glutDestroyWindow() on exit to help find mem leaks

16 years agobring in fixes/changes from master
Brian Paul [Fri, 16 May 2008 21:48:11 +0000 (15:48 -0600)]
bring in fixes/changes from master

16 years agoFix a program refcounting error, don't share program parameter lists.
Brian Paul [Fri, 16 May 2008 15:56:59 +0000 (09:56 -0600)]
Fix a program refcounting error, don't share program parameter lists.

The refcounting bug was causing a memleak (unfreed programs).
The old parameter list sharing is not needed since the change in how
uniforms are handled.

16 years agofix an attr/src mix-up when setting-up/binding vertex arrays
Brian Paul [Fri, 16 May 2008 21:34:22 +0000 (15:34 -0600)]
fix an attr/src mix-up when setting-up/binding vertex arrays

This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.

16 years agofix parsing of state.texenv.color (bug 14931)
Brian Paul [Thu, 15 May 2008 01:19:53 +0000 (19:19 -0600)]
fix parsing of state.texenv.color (bug 14931)

cherry-picked from master

16 years agoConsolidate texture fetch code and use partial derivatives when possible.
Brian Paul [Thu, 15 May 2008 01:14:41 +0000 (19:14 -0600)]
Consolidate texture fetch code and use partial derivatives when possible.

picked from master

16 years agomesa: fix InfoLog memleak, misc sync with master
Brian Paul [Wed, 14 May 2008 22:44:08 +0000 (16:44 -0600)]
mesa: fix InfoLog memleak, misc sync with master

16 years agoBug #13492: Only call ProgramStringNotify if program parsing succeeded.
Eric Anholt [Tue, 15 Jan 2008 23:08:34 +0000 (15:08 -0800)]
Bug #13492: Only call ProgramStringNotify if program parsing succeeded.

Wine intentionally tries some out-of-spec programs to test strictness, and
calling ProgramStringNotify on the results of a failed program parse resulted
in crashes in the 965 driver.

16 years agofix swizzle error test (bug 11881)
Brian [Tue, 7 Aug 2007 20:42:34 +0000 (21:42 +0100)]
fix swizzle error test (bug 11881)

16 years agofix-up inlined/non-inlined function inconsistencies
Brian Paul [Wed, 14 May 2008 22:32:18 +0000 (16:32 -0600)]
fix-up inlined/non-inlined function inconsistencies

cherry-picked from master

16 years agomesa: rm unneeded file
Brian Paul [Wed, 14 May 2008 22:30:15 +0000 (16:30 -0600)]
mesa: rm unneeded file

16 years agomesa: prefix rm command with -
Brian Paul [Wed, 14 May 2008 22:27:34 +0000 (16:27 -0600)]
mesa: prefix rm command with -

16 years agorewrite some of the mat*mat, mat*vec intrinsics
Brian Paul [Wed, 14 May 2008 22:20:28 +0000 (16:20 -0600)]
rewrite some of the mat*mat, mat*vec intrinsics

Also, remove obsolete matrix codegen code.

cherry-picked from master

16 years agomesa: regenerate slang built-in data (asin(vec4) fix)
Brian Paul [Wed, 14 May 2008 22:07:18 +0000 (16:07 -0600)]
mesa: regenerate slang built-in data (asin(vec4) fix)

16 years agomesa: fix missing w assignment in asin(vec4)
Brian Paul [Wed, 14 May 2008 22:06:10 +0000 (16:06 -0600)]
mesa: fix missing w assignment in asin(vec4)

16 years agomesa: use CALLOC_STRUCT()
Brian Paul [Wed, 14 May 2008 22:05:48 +0000 (16:05 -0600)]
mesa: use CALLOC_STRUCT()

16 years agomesa: sync up swrast/s_fragprog.c with master
Brian Paul [Wed, 14 May 2008 22:05:25 +0000 (16:05 -0600)]
mesa: sync up swrast/s_fragprog.c with master

16 years agomesa: updated comment
Brian Paul [Wed, 14 May 2008 22:04:51 +0000 (16:04 -0600)]
mesa: updated comment

16 years agomesa: minor bug fixes from master
Brian Paul [Wed, 14 May 2008 22:04:29 +0000 (16:04 -0600)]
mesa: minor bug fixes from master

16 years agomesa: dead code removal
Brian Paul [Wed, 14 May 2008 22:04:00 +0000 (16:04 -0600)]
mesa: dead code removal

16 years agomesa: minor bug fixes, null ptr checks, dead code removal
Brian Paul [Wed, 14 May 2008 22:03:38 +0000 (16:03 -0600)]
mesa: minor bug fixes, null ptr checks, dead code removal

16 years agomesa: fix errors in LightModelProduct state, other misc error cases
Brian Paul [Wed, 14 May 2008 22:02:20 +0000 (16:02 -0600)]
mesa: fix errors in LightModelProduct state, other misc error cases

16 years agomesa: glUniform(location==-1) is not an error
Brian Paul [Wed, 14 May 2008 22:01:31 +0000 (16:01 -0600)]
mesa: glUniform(location==-1) is not an error

16 years agofix some additional program refcounting bugs
Brian Paul [Wed, 14 May 2008 18:19:22 +0000 (12:19 -0600)]
fix some additional program refcounting bugs

cherry-picked from master

16 years agoadjust llvm code to the changes in 2.3
Zack Rusin [Mon, 12 May 2008 21:17:18 +0000 (17:17 -0400)]
adjust llvm code to the changes in 2.3

16 years agogallium: optimize the flush_spans() function
Brian [Sat, 10 May 2008 18:46:00 +0000 (12:46 -0600)]
gallium: optimize the flush_spans() function

16 years agogallium: remove unused code
Brian [Sat, 10 May 2008 18:16:19 +0000 (12:16 -0600)]
gallium: remove unused code

16 years agodraw: Fix number of vertices allocated in draw_pt_emit().
Michel Dänzer [Fri, 9 May 2008 17:04:16 +0000 (18:04 +0100)]
draw: Fix number of vertices allocated in draw_pt_emit().

16 years agodraw: mimize cost of translate key compares, use cache universally
Keith Whitwell [Fri, 9 May 2008 12:10:15 +0000 (13:10 +0100)]
draw: mimize cost of translate key compares, use cache universally

16 years agotranslate: helper functions for mimizing cost of key compares
Keith Whitwell [Fri, 9 May 2008 12:09:58 +0000 (13:09 +0100)]
translate: helper functions for mimizing cost of key compares

16 years agodraw: only fill in / compare the part of the translate key we're using.
Keith Whitwell [Thu, 8 May 2008 21:13:21 +0000 (22:13 +0100)]
draw: only fill in / compare the part of the translate key we're using.

It's quite a big struct & we examine it a lot (too much).  Reduce
the impact of this by just looking at the active part where possible.

16 years agoxlib: more SP_NO_RAST support
Keith Whitwell [Thu, 8 May 2008 21:10:15 +0000 (22:10 +0100)]
xlib: more SP_NO_RAST support

For some resaon normal (non-display-buffer) buffers are being allocated
through Xshm...  Bypass at least for SP_NO_RAST

16 years agosoftpipe: don't calc det if NO_RAST set
Keith Whitwell [Thu, 8 May 2008 21:07:52 +0000 (22:07 +0100)]
softpipe: don't calc det if NO_RAST set

16 years agocso_cache: Fix test for currently bound blend state.
Michel Dänzer [Thu, 8 May 2008 18:00:11 +0000 (19:00 +0100)]
cso_cache: Fix test for currently bound blend state.

16 years agomesa: update/add newer GL ES headers
Brian Paul [Wed, 7 May 2008 14:47:55 +0000 (08:47 -0600)]
mesa: update/add newer GL ES headers

16 years agomesa: free shader program data before deleting shader objects.
Brian [Wed, 7 May 2008 05:08:02 +0000 (23:08 -0600)]
mesa: free shader program data before deleting shader objects.

Picked from master.
Fixes mem corruption seen when glean/api2 test exits.

16 years agogallium: implement full reference counting for vertex/fragment programs
Brian [Wed, 7 May 2008 04:13:06 +0000 (22:13 -0600)]
gallium: implement full reference counting for vertex/fragment programs

Use _mesa_reference_vert/fragprog() wherever we assign program pointers.
Fixes a memory corruption bug found with glean/api2 test.
Another memory bug involving shaders yet to be fixed...

16 years agomesa: comments, whitespace
Brian [Fri, 2 May 2008 01:29:25 +0000 (19:29 -0600)]
mesa: comments, whitespace

16 years agogallium: change calculate_first_last_level() to match gallium-tex-surfaces branch
Brian Paul [Tue, 6 May 2008 14:40:41 +0000 (08:40 -0600)]
gallium: change calculate_first_last_level() to match gallium-tex-surfaces branch

16 years agofix _mesa_ffs for alternative compilers
Alan Hourihane [Mon, 5 May 2008 22:09:38 +0000 (23:09 +0100)]
fix _mesa_ffs for alternative compilers

16 years agodeclare atoms as extern
Alan Hourihane [Mon, 5 May 2008 22:08:59 +0000 (23:08 +0100)]
declare atoms as extern

16 years agogallium: fix warnings
Brian Paul [Sat, 3 May 2008 15:26:25 +0000 (09:26 -0600)]
gallium: fix warnings

16 years agoPress <space> to reset limit/bias values, clean-up limit/bias printf
Brian Paul [Sat, 3 May 2008 15:08:42 +0000 (09:08 -0600)]
Press <space> to reset limit/bias values, clean-up limit/bias printf

16 years agogallium: fix sampler->max_lod computation
Brian Paul [Sat, 3 May 2008 15:07:11 +0000 (09:07 -0600)]
gallium: fix sampler->max_lod computation

16 years agogallium: fix computation of sampler->min_lod
Brian Paul [Sat, 3 May 2008 14:58:44 +0000 (08:58 -0600)]
gallium: fix computation of sampler->min_lod

The texture BaseLevel is accounted for in texture layout so it doesn't factor
in here.  May also need to adjust max_lod...

16 years agogallium: remove 0.5 vertex biases in set_vertex_data()
Brian Paul [Fri, 2 May 2008 20:00:35 +0000 (14:00 -0600)]
gallium: remove 0.5 vertex biases in set_vertex_data()

These should not be needed and were causing garbage to appear along the
edges of the mipmap images.

16 years agogallium: remove obsolete PIPE_CAP_BITMAP_TEXCOORD_BIAS
Brian Paul [Fri, 2 May 2008 20:00:08 +0000 (14:00 -0600)]
gallium: remove obsolete PIPE_CAP_BITMAP_TEXCOORD_BIAS

16 years agogallium: minor code, comments clean-up
Brian Paul [Fri, 2 May 2008 16:43:29 +0000 (10:43 -0600)]
gallium: minor code, comments clean-up

16 years agogallium: in st_finalize_texture() check texture dimensions
Brian Paul [Fri, 2 May 2008 16:38:39 +0000 (10:38 -0600)]
gallium: in st_finalize_texture() check texture dimensions

Check dimensions in addition to target, format, etc.
Fixes a bug where we failed to detect a change in texture image sizes and
wound up using the old texture data.

16 years agogallium: new debug code (disabled)
Brian Paul [Fri, 2 May 2008 16:37:20 +0000 (10:37 -0600)]
gallium: new debug code (disabled)

16 years agogallium: fix typos, comments, whitespace
Brian Paul [Fri, 2 May 2008 15:26:17 +0000 (09:26 -0600)]
gallium: fix typos, comments, whitespace

16 years agogallium: remove ^M (CR) chars
Brian Paul [Fri, 2 May 2008 14:22:25 +0000 (08:22 -0600)]
gallium: remove ^M (CR) chars

16 years agogallium: code movement (XSHM code)
Brian Paul [Fri, 2 May 2008 13:54:11 +0000 (07:54 -0600)]
gallium: code movement (XSHM code)

16 years agoset TextureID = NULL after deleting the array
Brian Paul [Thu, 1 May 2008 22:21:43 +0000 (16:21 -0600)]
set TextureID = NULL after deleting the array

16 years agogallium: comments, clean-ups
Brian Paul [Thu, 1 May 2008 21:29:25 +0000 (15:29 -0600)]
gallium: comments, clean-ups

16 years agogallium: Reallocate pipe_texture in st_TexImage if the texture object was used.
Michel Dänzer [Fri, 2 May 2008 15:22:20 +0000 (16:22 +0100)]
gallium: Reallocate pipe_texture in st_TexImage if the texture object was used.

Fixes problems with interleaved glTexImage and rendering calls.

16 years agosnprintf -> util_snprintf
Alan Hourihane [Fri, 2 May 2008 15:25:37 +0000 (15:25 +0000)]
snprintf -> util_snprintf

16 years agotgsi: Enable fast high precision rsqrt.
Michal Krol [Fri, 2 May 2008 14:12:55 +0000 (16:12 +0200)]
tgsi: Enable fast high precision rsqrt.

16 years agotgsi: Implement fast rsqrtf. Not tested, inactive.
Keith Whitwell [Fri, 2 May 2008 14:02:18 +0000 (16:02 +0200)]
tgsi: Implement fast rsqrtf. Not tested, inactive.

16 years agorevert mode change back to 644
Alan Hourihane [Fri, 2 May 2008 10:34:58 +0000 (10:34 +0000)]
revert mode change back to 644

16 years agoinline -> INLINE
Alan Hourihane [Fri, 2 May 2008 10:31:46 +0000 (10:31 +0000)]
inline -> INLINE

16 years agoSome changed for non-C99 compilers
Alan Hourihane [Fri, 2 May 2008 10:08:03 +0000 (10:08 +0000)]
Some changed for non-C99 compilers

16 years agotgsi: Do not assume IN and OUT registers are declared sequentially.
Michal Krol [Fri, 2 May 2008 09:13:58 +0000 (11:13 +0200)]
tgsi: Do not assume IN and OUT registers are declared sequentially.

16 years agotgsi: Fix build on Win32.
Michal Krol [Fri, 2 May 2008 08:20:53 +0000 (10:20 +0200)]
tgsi: Fix build on Win32.

16 years agotgsi: Dump destination register modulate modifier.
Michal Krol [Thu, 1 May 2008 14:39:54 +0000 (16:39 +0200)]
tgsi: Dump destination register modulate modifier.

16 years agogallium: temporarily disable broken SSE2 code for ARL opcode
Brian [Fri, 2 May 2008 00:56:20 +0000 (18:56 -0600)]
gallium: temporarily disable broken SSE2 code for ARL opcode

16 years agogallium: implement TGSI_OPCODE_EXP
Brian [Fri, 2 May 2008 00:49:20 +0000 (18:49 -0600)]
gallium: implement TGSI_OPCODE_EXP

16 years agogallium: implement TGSI_OPCODE_LOG
Brian [Fri, 2 May 2008 00:42:01 +0000 (18:42 -0600)]
gallium: implement TGSI_OPCODE_LOG

16 years agoadded cast for MSVC
Brian Paul [Thu, 1 May 2008 21:21:40 +0000 (15:21 -0600)]
added cast for MSVC

16 years agogallium: remove the unused softpipe_winsys code
Brian Paul [Thu, 1 May 2008 21:19:00 +0000 (15:19 -0600)]
gallium: remove the unused softpipe_winsys code

The struct is still there though until all winsys layers are updated

16 years agotgsi: remove some bogus win vs. linux crud
Keith Whitwell [Thu, 1 May 2008 19:45:15 +0000 (20:45 +0100)]
tgsi: remove some bogus win vs. linux crud

Pass arguments properly in linux now.  Still need to change this to use
a single calling convention on both platforms.

16 years agortasm: learn another version of push
Keith Whitwell [Thu, 1 May 2008 19:44:41 +0000 (20:44 +0100)]
rtasm: learn another version of push

16 years agodraw: label fn args -- shouldn't this be defined where the fn is created?
Keith Whitwell [Thu, 1 May 2008 19:42:44 +0000 (20:42 +0100)]
draw: label fn args -- shouldn't this be defined where the fn is created?

16 years agortasm: fix labels after (not so) recent change to allow dynamic fn growth
Keith Whitwell [Thu, 1 May 2008 19:41:03 +0000 (20:41 +0100)]
rtasm: fix labels after (not so) recent change to allow dynamic fn growth

Using char * for labels doesn't work if you realloc the function
during assembly and free the old storage...

16 years agoi915: avoid crashing on bad parameter
Keith Whitwell [Thu, 1 May 2008 17:50:33 +0000 (18:50 +0100)]
i915: avoid crashing on bad parameter

16 years agoi915: fix warning
Keith Whitwell [Thu, 1 May 2008 17:49:52 +0000 (18:49 +0100)]
i915: fix warning

16 years agosoftpipe: fix warning
Keith Whitwell [Thu, 1 May 2008 17:49:07 +0000 (18:49 +0100)]
softpipe: fix warning

16 years agosct: fix bug in remove_context_from_surface
Keith Whitwell [Thu, 1 May 2008 17:48:28 +0000 (18:48 +0100)]
sct: fix bug in remove_context_from_surface

16 years agogallium: Set sampler->min_lod instead of always reallocating pipe_textures.
Michel Dänzer [Thu, 1 May 2008 16:31:39 +0000 (17:31 +0100)]
gallium: Set sampler->min_lod instead of always reallocating pipe_textures.

16 years agogallium: Notify driver of texture updates in util_blit_pixels().
Michel Dänzer [Thu, 1 May 2008 16:30:17 +0000 (17:30 +0100)]
gallium: Notify driver of texture updates in util_blit_pixels().

16 years agotgsi: restore HIGH_PRECISION setting
Keith Whitwell [Thu, 1 May 2008 14:45:51 +0000 (15:45 +0100)]
tgsi: restore HIGH_PRECISION setting

16 years agotgsi: add some const qualifiers to immediate pointers
Keith Whitwell [Thu, 1 May 2008 14:36:14 +0000 (15:36 +0100)]
tgsi: add some const qualifiers to immediate pointers

16 years agomesa: squash harmless warning
Keith Whitwell [Thu, 1 May 2008 14:32:03 +0000 (15:32 +0100)]
mesa: squash harmless warning

16 years agortasm: assert stack is fully popped in return
Keith Whitwell [Thu, 1 May 2008 14:31:17 +0000 (15:31 +0100)]
rtasm: assert stack is fully popped in return

16 years agodraw: avoid aliasing warning
Keith Whitwell [Thu, 1 May 2008 14:30:50 +0000 (15:30 +0100)]
draw: avoid aliasing warning

16 years agotgsi: use EBX everywhere, be sure to push/pop it
Keith Whitwell [Thu, 1 May 2008 14:27:53 +0000 (15:27 +0100)]
tgsi: use EBX everywhere, be sure to push/pop it

16 years agotgsi: use x86_fn_arg instead of get_argument() -- it knows about push/pops to the...
Keith Whitwell [Thu, 1 May 2008 14:13:46 +0000 (15:13 +0100)]
tgsi: use x86_fn_arg instead of get_argument() -- it knows about push/pops to the stack

16 years agotgsi: use ESI instead of EBX on non-win32 platforms
Keith Whitwell [Thu, 1 May 2008 13:51:18 +0000 (14:51 +0100)]
tgsi: use ESI instead of EBX on non-win32 platforms

16 years agogallium: do something sensible on the error path to try to avoid crashing in release...
Keith Whitwell [Thu, 1 May 2008 13:19:25 +0000 (14:19 +0100)]
gallium: do something sensible on the error path to try to avoid crashing in release builds

16 years agoFix build problem with MSVC
Alan Hourihane [Thu, 1 May 2008 13:54:56 +0000 (14:54 +0100)]
Fix build problem with MSVC

16 years agoAdd Brian's explanation for inheritance in C.
José Fonseca [Thu, 1 May 2008 12:52:05 +0000 (21:52 +0900)]
Add Brian's explanation for inheritance in C.

16 years agogallium: Add newline to eof.
José Fonseca [Thu, 1 May 2008 01:20:31 +0000 (10:20 +0900)]
gallium: Add newline to eof.

16 years agodraw: squash warnings
Keith Whitwell [Thu, 1 May 2008 12:47:27 +0000 (13:47 +0100)]
draw: squash warnings

16 years agodraw: turn on SSE swizzle code
Keith Whitwell [Thu, 1 May 2008 12:47:09 +0000 (13:47 +0100)]
draw: turn on SSE swizzle code

16 years agogallium: remove old files
Brian Paul [Thu, 1 May 2008 00:23:17 +0000 (18:23 -0600)]
gallium: remove old files

16 years agogallium: fix texture border removal bug
Brian Paul [Thu, 1 May 2008 00:21:10 +0000 (18:21 -0600)]
gallium: fix texture border removal bug

16 years agogallium: use the newer PIPE_FORMAT_x_UNORM format names
Brian Paul [Wed, 30 Apr 2008 22:50:17 +0000 (16:50 -0600)]
gallium: use the newer PIPE_FORMAT_x_UNORM format names

16 years agogallium: rename old PIPE_FORMAT_U_I8 with PIPE_FORMAT_I8_UNORM, etc.
Brian Paul [Wed, 30 Apr 2008 22:49:38 +0000 (16:49 -0600)]
gallium: rename old PIPE_FORMAT_U_I8 with PIPE_FORMAT_I8_UNORM, etc.

Now all the packed color types are consistantly named.
Added temporary #defines for the old names until all drivers are updated.