mesa.git
15 years agoslang: redo the last commit for if/break & if/continue tests as it
Alan Hourihane [Wed, 18 Mar 2009 21:42:14 +0000 (21:42 +0000)]
slang: redo the last commit for if/break & if/continue tests as it
wasn't good enough for deeply nested if's.

15 years agoRevert "slang: if we detect an if/break or if/continue within a loop and we're"
Alan Hourihane [Wed, 18 Mar 2009 21:40:03 +0000 (21:40 +0000)]
Revert "slang: if we detect an if/break or if/continue within a loop and we're"

This reverts commit 752296b8f311c5e3844f3ce89d17ba57224ce5ba.

15 years agoslang: if we detect an if/break or if/continue within a loop and we're
Alan Hourihane [Wed, 18 Mar 2009 21:16:35 +0000 (21:16 +0000)]
slang: if we detect an if/break or if/continue within a loop and we're
trying to unroll, bail, and fallback to doing the real loop.

15 years agost: call _glapi_check_multithread from st_make_current
Keith Whitwell [Wed, 18 Mar 2009 19:14:45 +0000 (19:14 +0000)]
st: call _glapi_check_multithread from st_make_current

This function is called from many OS-dependent versions of MakeCurrent.

Move the check for multithreading to this central location to avoid
having to make this check from all the callers.

15 years agostw: Fix makeCurrent.
Thomas Hellstrom [Wed, 18 Mar 2009 11:28:31 +0000 (12:28 +0100)]
stw: Fix makeCurrent.

Flush if we change current context.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agoprogs: Build the wgl examples with scons.
José Fonseca [Wed, 18 Mar 2009 16:37:20 +0000 (16:37 +0000)]
progs: Build the wgl examples with scons.

15 years agoprogs/trivial: Make quad-tex-sub repeat patterns
Jakob Bornecrantz [Wed, 18 Mar 2009 16:24:40 +0000 (17:24 +0100)]
progs/trivial: Make quad-tex-sub repeat patterns

15 years agotests: remove/update old comments
Brian Paul [Wed, 18 Mar 2009 16:23:31 +0000 (10:23 -0600)]
tests: remove/update old comments

15 years agost: need to free/realloc pipe texture when we're handed image level > last_level
Brian Paul [Wed, 18 Mar 2009 16:22:05 +0000 (10:22 -0600)]
st: need to free/realloc pipe texture when we're handed image level > last_level

Fixes progs/tests/tri-fbo-tex-mip.c

15 years agost: clean up some if-statment code
Brian Paul [Wed, 18 Mar 2009 16:21:05 +0000 (10:21 -0600)]
st: clean up some if-statment code

15 years agosoftpipe: more texture transfer fixes.
Brian Paul [Wed, 18 Mar 2009 16:17:48 +0000 (10:17 -0600)]
softpipe: more texture transfer fixes.

Need to null-out pointers after freeing transfer objects.
Fix mix-ups between tc->transfer and tc->tex_trans fields.

15 years agosoftpipe: need to set tc->transfer=NULL after destroying the transfer object
Brian Paul [Wed, 18 Mar 2009 15:55:00 +0000 (09:55 -0600)]
softpipe: need to set tc->transfer=NULL after destroying the transfer object

This fixes a number of crashes/regressions in programs such as lodbias.c,
mipmap_limits.c, etc.

15 years agost: update texture comments
Brian Paul [Wed, 18 Mar 2009 15:40:37 +0000 (09:40 -0600)]
st: update texture comments

15 years agoprogs/trivial: Add quad-tex-sub
Jakob Bornecrantz [Wed, 18 Mar 2009 16:15:40 +0000 (17:15 +0100)]
progs/trivial: Add quad-tex-sub

   Tests glTexSubImage

15 years agoUse the specified X11 headers for xlib mesa
Dan Nicholson [Wed, 18 Mar 2009 06:33:04 +0000 (23:33 -0700)]
Use the specified X11 headers for xlib mesa

The xlib build was using the system's Xlib headers or bombing if they
weren't available.

15 years agotests: add simplest mipgen test
Keith Whitwell [Wed, 18 Mar 2009 14:01:47 +0000 (14:01 +0000)]
tests: add simplest mipgen test

15 years agopipe/atomic: dont use ms interlock calls from gcc
Keith Whitwell [Wed, 18 Mar 2009 13:27:53 +0000 (13:27 +0000)]
pipe/atomic: dont use ms interlock calls from gcc

15 years agoutil: avoid clashprone UINT, UBYTE enum values
Keith Whitwell [Wed, 18 Mar 2009 11:35:58 +0000 (11:35 +0000)]
util: avoid clashprone UINT, UBYTE enum values

15 years agodraw: use AOS_ERROR rather than clash-prone ERROR() macro
Keith Whitwell [Wed, 18 Mar 2009 11:35:26 +0000 (11:35 +0000)]
draw: use AOS_ERROR rather than clash-prone ERROR() macro

15 years agopipe/atomic: clean up #ifdef maze
Keith Whitwell [Wed, 18 Mar 2009 11:29:01 +0000 (11:29 +0000)]
pipe/atomic: clean up #ifdef maze

15 years agoprogs/tests: Update mipmap_limits to show image and colors
Jakob Bornecrantz [Wed, 18 Mar 2009 12:29:03 +0000 (13:29 +0100)]
progs/tests: Update mipmap_limits to show image and colors

15 years agoxlib st: Fix makeCurrent.
Thomas Hellstrom [Wed, 18 Mar 2009 10:52:24 +0000 (11:52 +0100)]
xlib st: Fix makeCurrent.

Flush if we change context.
Also reinstate the old optimization of doing nothing if
nothing changes.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agoprogs/trivial: Add tri-fbo-tex-mip
Jakob Bornecrantz [Tue, 17 Mar 2009 14:04:07 +0000 (15:04 +0100)]
progs/trivial: Add tri-fbo-tex-mip

   Tests rendering to mip levels other then first

15 years agonouveau: rewrite winsys in terms of drm_api, support dri2 state tracker
Ben Skeggs [Tue, 17 Mar 2009 22:22:35 +0000 (08:22 +1000)]
nouveau: rewrite winsys in terms of drm_api, support dri2 state tracker

drm_api is a set of hooks used by the dri2 state tracker, this wraps our
dri1 code around the same set of hooks.

Currently the dri2 build will produce nouveau_dri2.so which you'll need
to install as nouveau_dri.so if you wish to try it.  The dri2 state
tracker doesn't make it easy for a driver to support both paths in the
same binary.

15 years agost/dri2: use pipe_screen.is_format_supported to choose depth/stencil format
Ben Skeggs [Tue, 17 Mar 2009 22:21:32 +0000 (08:21 +1000)]
st/dri2: use pipe_screen.is_format_supported to choose depth/stencil format

15 years agor300-gallium: Move all unsorted state into invariant state.
Corbin Simpson [Tue, 17 Mar 2009 20:11:55 +0000 (13:11 -0700)]
r300-gallium: Move all unsorted state into invariant state.

Gotta just slowly whittle this down.

15 years agor300-gallium: Emit invariant state, no matter what.
Corbin Simpson [Tue, 17 Mar 2009 20:10:41 +0000 (13:10 -0700)]
r300-gallium: Emit invariant state, no matter what.

It's called "invariant" for a reason. :3

15 years agor300-gallium: Quick little cleanup of surface_fill state.
Corbin Simpson [Tue, 17 Mar 2009 20:07:44 +0000 (13:07 -0700)]
r300-gallium: Quick little cleanup of surface_fill state.

15 years agotgsi: Restore statement ordering.
José Fonseca [Tue, 17 Mar 2009 19:50:27 +0000 (19:50 +0000)]
tgsi: Restore statement ordering.

15 years agor300-gallium: Debugging for the more sensitive card registers.
Corbin Simpson [Tue, 17 Mar 2009 18:49:29 +0000 (11:49 -0700)]
r300-gallium: Debugging for the more sensitive card registers.

These are nearly always the cause of hardlocks, so let's dump them.

15 years agor300-gallium: r500-fs: Fixup immediate->constant counting a bit.
Corbin Simpson [Tue, 17 Mar 2009 18:48:55 +0000 (11:48 -0700)]
r300-gallium: r500-fs: Fixup immediate->constant counting a bit.

15 years agor300-gallium: More query stuff.
Corbin Simpson [Tue, 17 Mar 2009 18:42:13 +0000 (11:42 -0700)]
r300-gallium: More query stuff.

Should work, but doesn't. At least it doesn't hardlock.

15 years agoswrast: use better _swrast_compute_lambda() function
Brian Paul [Tue, 17 Mar 2009 16:28:32 +0000 (10:28 -0600)]
swrast: use better _swrast_compute_lambda() function

The MAX-based function can produce values that are non-monotonic for a span
which causes glitches in texture filtering.  The sqrt-based one avoids that.

This is perhaps slightly slower than before, but the difference
probably isn't noticable given we're doing software mipmap filtering.

Issue reported by Nir Radian <nirr@horizonsemi.com>

15 years agomesa: update/fix doxygen comments
Vinson Lee [Tue, 17 Mar 2009 15:34:30 +0000 (09:34 -0600)]
mesa: update/fix doxygen comments

15 years agoutil: Realloc takes bytes.
José Fonseca [Tue, 17 Mar 2009 14:36:37 +0000 (14:36 +0000)]
util: Realloc takes bytes.

15 years agowgl: Port sharedtex_mt to WGL.
Michal Krol [Tue, 17 Mar 2009 13:27:47 +0000 (14:27 +0100)]
wgl: Port sharedtex_mt to WGL.

15 years agotgsi: Document ps_2_0 instruction set operations.
Michal Krol [Tue, 17 Mar 2009 11:41:39 +0000 (12:41 +0100)]
tgsi: Document ps_2_0 instruction set operations.

15 years agotgsi: Document ps_1_4 instruction set operations.
Michal Krol [Tue, 17 Mar 2009 11:31:06 +0000 (12:31 +0100)]
tgsi: Document ps_1_4 instruction set operations.

15 years agotgsi: Document ps_1_1 instruction set operations.
Michal Krol [Tue, 17 Mar 2009 11:29:07 +0000 (12:29 +0100)]
tgsi: Document ps_1_1 instruction set operations.

15 years agotgsi: Begin documenting GLSL instruction set operations.
Michal Krol [Tue, 17 Mar 2009 11:26:25 +0000 (12:26 +0100)]
tgsi: Begin documenting GLSL instruction set operations.

15 years agotgsi: Begin documenting NV_geometry_program4 instruction set operations.
Michal Krol [Tue, 17 Mar 2009 11:21:03 +0000 (12:21 +0100)]
tgsi: Begin documenting NV_geometry_program4 instruction set operations.

15 years agoxdemos: Fix sharedtex_mt.
Thomas Hellstrom [Tue, 17 Mar 2009 10:33:20 +0000 (11:33 +0100)]
xdemos: Fix sharedtex_mt.

1) Don't allow multiple threads sharing current context,
   even if they are mutex protected.
2) Remove all XLockDisplay(), XUnLockDisplay() calls, as they were
   only workarounds for xcb.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agopython: Return on unknown pixel format.
Michal Krol [Tue, 17 Mar 2009 10:34:42 +0000 (11:34 +0100)]
python: Return on unknown pixel format.

15 years agogallium: Use `_new' name, `new' is a reserved keyword in C++.
Michal Krol [Tue, 17 Mar 2009 09:56:00 +0000 (10:56 +0100)]
gallium: Use `_new' name, `new' is a reserved keyword in C++.

15 years agogallium: Provide unprotected atomic implementation for display and miniport interfaces.
Michal Krol [Tue, 17 Mar 2009 09:54:08 +0000 (10:54 +0100)]
gallium: Provide unprotected atomic implementation for display and miniport interfaces.

15 years agopython: Fix build after refcount rework.
Michal Krol [Tue, 17 Mar 2009 09:43:04 +0000 (10:43 +0100)]
python: Fix build after refcount rework.

15 years agopython: Include `p_winsys_screen.h'.
Michal Krol [Tue, 17 Mar 2009 09:33:25 +0000 (10:33 +0100)]
python: Include `p_winsys_screen.h'.

15 years agopython: Do not pass screen object to pipe_buffer_reference.
Michal Krol [Tue, 17 Mar 2009 09:26:38 +0000 (10:26 +0100)]
python: Do not pass screen object to pipe_buffer_reference.

15 years agotgsi: Silence const pointer cast warnings.
Michal Krol [Tue, 17 Mar 2009 09:18:24 +0000 (10:18 +0100)]
tgsi: Silence const pointer cast warnings.

15 years agor300-gallium: r500-fs: Properly set up TEX/OUT.
Corbin Simpson [Tue, 17 Mar 2009 00:00:27 +0000 (17:00 -0700)]
r300-gallium: r500-fs: Properly set up TEX/OUT.

15 years agor300-gallium: r500-fs: Texture insts, ABS, moar comments.
Corbin Simpson [Mon, 16 Mar 2009 23:47:05 +0000 (16:47 -0700)]
r300-gallium: r500-fs: Texture insts, ABS, moar comments.

15 years agor300-gallium: Clean up some code, un-special-case scalar ops.
Corbin Simpson [Mon, 16 Mar 2009 17:44:23 +0000 (10:44 -0700)]
r300-gallium: Clean up some code, un-special-case scalar ops.

15 years agor300-gallium: r500-fs: CMP/MOV/SWZ, negation, ADD/MAD/MUL/SUB.
Corbin Simpson [Mon, 16 Mar 2009 17:23:45 +0000 (10:23 -0700)]
r300-gallium: r500-fs: CMP/MOV/SWZ, negation, ADD/MAD/MUL/SUB.

Also a fair amount of cleanup.

15 years agor300-gallium: Fix relocation for textures.
Corbin Simpson [Mon, 16 Mar 2009 16:48:07 +0000 (09:48 -0700)]
r300-gallium: Fix relocation for textures.

This keeps texture emit from invalidating CS.

15 years agotrace: Fix memory leak
Jakob Bornecrantz [Mon, 16 Mar 2009 19:57:34 +0000 (20:57 +0100)]
trace: Fix memory leak

15 years agoutil: bitmask data type.
José Fonseca [Mon, 16 Mar 2009 19:11:08 +0000 (19:11 +0000)]
util: bitmask data type.

15 years agotrace: Re-init refcounters just incase
Jakob Bornecrantz [Mon, 16 Mar 2009 19:32:14 +0000 (20:32 +0100)]
trace: Re-init refcounters just incase

15 years agotrace: Dump buffer data via buffer writes
Jakob Bornecrantz [Sat, 14 Mar 2009 09:22:48 +0000 (10:22 +0100)]
trace: Dump buffer data via buffer writes

15 years agoprogs/trivial: Ignores
Jakob Bornecrantz [Mon, 16 Mar 2009 19:14:21 +0000 (20:14 +0100)]
progs/trivial: Ignores

15 years agoprogs/tests: Ignores
Jakob Bornecrantz [Fri, 13 Mar 2009 07:37:01 +0000 (08:37 +0100)]
progs/tests: Ignores

15 years agopython: Use transfer object to read from a surface.
Michal Krol [Mon, 16 Mar 2009 15:48:18 +0000 (16:48 +0100)]
python: Use transfer object to read from a surface.

15 years agopython: pipe_vertex_buffer's pitch member has been renamed to stride.
Michal Krol [Mon, 16 Mar 2009 15:10:54 +0000 (16:10 +0100)]
python: pipe_vertex_buffer's pitch member has been renamed to stride.

15 years agopython: size is not a member of pipe_constant_buffer any more.
Michal Krol [Mon, 16 Mar 2009 15:07:55 +0000 (16:07 +0100)]
python: size is not a member of pipe_constant_buffer any more.

15 years agor300-gallium: r500-fs: Add ABS.
Corbin Simpson [Mon, 16 Mar 2009 13:48:05 +0000 (06:48 -0700)]
r300-gallium: r500-fs: Add ABS.

15 years agor300-gallium: r500-fs: Clamp only when saturation flags are set.
Corbin Simpson [Mon, 16 Mar 2009 13:41:57 +0000 (06:41 -0700)]
r300-gallium: r500-fs: Clamp only when saturation flags are set.

15 years agor300-gallium: r500-fs: Working ADD and MUL, add more sop stuff.
Corbin Simpson [Mon, 16 Mar 2009 13:36:55 +0000 (06:36 -0700)]
r300-gallium: r500-fs: Working ADD and MUL, add more sop stuff.

15 years agor300-gallium: Cleanup a few things.
Corbin Simpson [Mon, 16 Mar 2009 13:19:30 +0000 (06:19 -0700)]
r300-gallium: Cleanup a few things.

15 years agor300-gallium: r500-fs: MUL.
Corbin Simpson [Mon, 16 Mar 2009 13:14:23 +0000 (06:14 -0700)]
r300-gallium: r500-fs: MUL.

15 years agor300-gallium: r500-fs: Stub out the simple scalar ops.
Corbin Simpson [Mon, 16 Mar 2009 12:58:46 +0000 (05:58 -0700)]
r300-gallium: r500-fs: Stub out the simple scalar ops.

COS, SIN, and CSC are not simple.

15 years agor300-gallium: r500-fs: Add DPH.
Corbin Simpson [Mon, 16 Mar 2009 12:13:03 +0000 (05:13 -0700)]
r300-gallium: r500-fs: Add DPH.

15 years agor300-gallium: r500-fs: Add dot products.
Corbin Simpson [Mon, 16 Mar 2009 11:57:43 +0000 (04:57 -0700)]
r300-gallium: r500-fs: Add dot products.

We're cookin' now.

15 years agogallium: Implement atomic for MSVC on x86.
Michal Krol [Mon, 16 Mar 2009 12:42:22 +0000 (13:42 +0100)]
gallium: Implement atomic for MSVC on x86.

15 years agogallium: Implement atomic interface for windows user mode subsystem.
Michal Krol [Mon, 16 Mar 2009 12:07:22 +0000 (13:07 +0100)]
gallium: Implement atomic interface for windows user mode subsystem.

15 years agoscons: Promote declaration-after-statement to error. Detect more warnings.
José Fonseca [Fri, 13 Mar 2009 16:21:30 +0000 (16:21 +0000)]
scons: Promote declaration-after-statement to error. Detect more warnings.

15 years agoprogs: Try to read the texture from the current dir, if full path fails.
José Fonseca [Fri, 13 Mar 2009 16:16:00 +0000 (16:16 +0000)]
progs: Try to read the texture from the current dir, if full path fails.

15 years agogallium: Use macro parameter names consistently.
Michal Krol [Mon, 16 Mar 2009 11:39:07 +0000 (12:39 +0100)]
gallium: Use macro parameter names consistently.

15 years agogallium: pipe_mutex_init() is of type void.
Michal Krol [Mon, 16 Mar 2009 11:36:22 +0000 (12:36 +0100)]
gallium: pipe_mutex_init() is of type void.

Both the windows and fallback versions are void already.

15 years agogallium: Include p_compiler.h for integer types.
Michal Krol [Mon, 16 Mar 2009 11:27:47 +0000 (12:27 +0100)]
gallium: Include p_compiler.h for integer types.

15 years agosoftpipe: Use p_atomic_read, not atomic_read.
Michal Krol [Mon, 16 Mar 2009 11:22:50 +0000 (12:22 +0100)]
softpipe: Use p_atomic_read, not atomic_read.

15 years agogallium: Use struct pipe_atomic for pipe refcounts.
Thomas Hellstrom [Fri, 13 Mar 2009 14:47:18 +0000 (15:47 +0100)]
gallium: Use struct pipe_atomic for pipe refcounts.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agogallium: Add simple atomic class api.
Thomas Hellstrom [Mon, 16 Mar 2009 10:40:18 +0000 (11:40 +0100)]
gallium: Add simple atomic class api.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agotgsi: Begin documenting NV_gpu_program4 instruction set operations.
Michal Krol [Mon, 16 Mar 2009 09:24:16 +0000 (10:24 +0100)]
tgsi: Begin documenting NV_gpu_program4 instruction set operations.

15 years agotgsi: Document NV_vertex_program3 instruction set operations.`
Michal Krol [Mon, 16 Mar 2009 09:04:51 +0000 (10:04 +0100)]
tgsi: Document NV_vertex_program3 instruction set operations.`

15 years agowgl: Port glthreads to WGL.
Michal Krol [Mon, 16 Mar 2009 08:45:23 +0000 (09:45 +0100)]
wgl: Port glthreads to WGL.

15 years agomesa: Silence compiler warnings.
Michal Krol [Mon, 16 Mar 2009 08:12:21 +0000 (09:12 +0100)]
mesa: Silence compiler warnings.

15 years agor300-gallium: r500-fs: Actually handle consts and imms correctly.
Corbin Simpson [Mon, 16 Mar 2009 07:30:56 +0000 (00:30 -0700)]
r300-gallium: r500-fs: Actually handle consts and imms correctly.

This makes mad.txt draw correctly. Yay!

15 years agor300-gallium: Emit constants as floats, not uints.
Corbin Simpson [Mon, 16 Mar 2009 07:29:37 +0000 (00:29 -0700)]
r300-gallium: Emit constants as floats, not uints.

15 years agopython: Include missing `p_compiler.h' header.
michal [Mon, 16 Mar 2009 07:08:09 +0000 (08:08 +0100)]
python: Include missing `p_compiler.h' header.

15 years agopython: Do not pass shader_state to util shader functions.
michal [Mon, 16 Mar 2009 05:48:25 +0000 (06:48 +0100)]
python: Do not pass shader_state to util shader functions.

15 years agopython: Use transfer objects to initialise texture data.
michal [Mon, 16 Mar 2009 05:44:16 +0000 (06:44 +0100)]
python: Use transfer objects to initialise texture data.

15 years agopython: Use new bypass_vs_clip_and_viewport rasteriser flag.
michal [Mon, 16 Mar 2009 05:06:31 +0000 (06:06 +0100)]
python: Use new bypass_vs_clip_and_viewport rasteriser flag.

15 years agor300-gallium: Fix vertex memory offsets.
Corbin Simpson [Mon, 16 Mar 2009 06:42:42 +0000 (23:42 -0700)]
r300-gallium: Fix vertex memory offsets.

Wow, I must have been asleep when I made that mistake.

15 years agoradeon-gallium: Add my R580 to the xorg PCI ID list.
Corbin Simpson [Mon, 16 Mar 2009 06:05:55 +0000 (23:05 -0700)]
radeon-gallium: Add my R580 to the xorg PCI ID list.

At some point, going to have to grab the big list from xf86-video-ati.

15 years agor300-gallium: r500-fs: Setup immediates.
Corbin Simpson [Mon, 16 Mar 2009 06:04:49 +0000 (23:04 -0700)]
r300-gallium: r500-fs: Setup immediates.

Textures still not working. RS block shenanigans expected.

15 years agodri2-gallium: Add occlusion query support at the state tracker level.
Corbin Simpson [Thu, 12 Mar 2009 19:15:56 +0000 (12:15 -0700)]
dri2-gallium: Add occlusion query support at the state tracker level.

15 years agor300-gallium: Actually set stride when creating textures.
Corbin Simpson [Thu, 12 Mar 2009 19:14:35 +0000 (12:14 -0700)]
r300-gallium: Actually set stride when creating textures.

Duh.

15 years agor300-gallium: r500-fs: Add writemasks and some flexibility for MOV/SWZ.
Corbin Simpson [Thu, 12 Mar 2009 19:13:53 +0000 (12:13 -0700)]
r300-gallium: r500-fs: Add writemasks and some flexibility for MOV/SWZ.

15 years agor300-gallium: Always rasterize at least one color.
Corbin Simpson [Thu, 12 Mar 2009 19:13:02 +0000 (12:13 -0700)]
r300-gallium: Always rasterize at least one color.

15 years agor300-gallium: Fix spacing.
Corbin Simpson [Thu, 12 Mar 2009 19:12:26 +0000 (12:12 -0700)]
r300-gallium: Fix spacing.

It was driving me crazy.

15 years agovbo: Silence integer-to-pointer warnings.
Michal Krol [Sun, 15 Mar 2009 09:22:35 +0000 (10:22 +0100)]
vbo: Silence integer-to-pointer warnings.