mesa.git
15 years agog3dvl: Ref count everywhere.
Younes Manton [Sun, 18 Jan 2009 23:11:18 +0000 (18:11 -0500)]
g3dvl: Ref count everywhere.

15 years agog3dvl: Mark all buffers for incoming frame data as discardable.
Younes Manton [Wed, 14 Jan 2009 05:28:58 +0000 (00:28 -0500)]
g3dvl: Mark all buffers for incoming frame data as discardable.

15 years agonouveau: Rename buffer on map if discardable, busy, and write-only.
Younes Manton [Wed, 14 Jan 2009 05:27:42 +0000 (00:27 -0500)]
nouveau: Rename buffer on map if discardable, busy, and write-only.

15 years agogallium: Add PIPE_BUFFER_USAGE_DISCARD.
Younes Manton [Wed, 14 Jan 2009 05:21:24 +0000 (00:21 -0500)]
gallium: Add PIPE_BUFFER_USAGE_DISCARD.

When passed to map() signals that the buffer's previous contents are
not required, allowing the driver to allocate a new buffer if the
current buffer can not be mapped immediately.

15 years agog3dvl: Return BadAlloc if we can't create an XvMC surface.
Younes Manton [Wed, 14 Jan 2009 03:58:43 +0000 (22:58 -0500)]
g3dvl: Return BadAlloc if we can't create an XvMC surface.

15 years agog3dvl: Follow mesa naming conventions for src dirs.
Younes Manton [Mon, 12 Jan 2009 18:19:07 +0000 (13:19 -0500)]
g3dvl: Follow mesa naming conventions for src dirs.

15 years agoegl: eglinfo load i915 driver
Jakob Bornecrantz [Mon, 19 Jan 2009 01:29:54 +0000 (02:29 +0100)]
egl: eglinfo load i915 driver

15 years agoi915: Build gem and egl winsys by default
Jakob Bornecrantz [Mon, 19 Jan 2009 01:24:29 +0000 (02:24 +0100)]
i915: Build gem and egl winsys by default

15 years agoi915: Make gem submit commands
Jakob Bornecrantz [Mon, 19 Jan 2009 01:22:34 +0000 (02:22 +0100)]
i915: Make gem submit commands

15 years agoegl: Fix swap and creation of front buffer
Jakob Bornecrantz [Mon, 19 Jan 2009 01:00:35 +0000 (02:00 +0100)]
egl: Fix swap and creation of front buffer

15 years agoi915: Use new egl state_tracker
Jakob Bornecrantz [Sun, 18 Jan 2009 14:49:06 +0000 (15:49 +0100)]
i915: Use new egl state_tracker

15 years agoegl: Add a egl state_tracker that use Gallium
Jakob Bornecrantz [Sun, 18 Jan 2009 14:36:47 +0000 (15:36 +0100)]
egl: Add a egl state_tracker that use Gallium

This works on top Gallium and KMS. The only thing that
does not work currently is swap buffers for shown mesa
screens. So the only fun thing this will produce is a
white screen.

The driver wishing to us the state_tracker needs to
implement the intrace as define in drm_api.h located
in gallium/include/state_tracker. And also have a
working KMS implementation.

15 years agoi915: Update gem backend a bit
Jakob Bornecrantz [Sun, 18 Jan 2009 14:35:50 +0000 (15:35 +0100)]
i915: Update gem backend a bit

15 years agoegl: Make eglscreen sleep for five seconds
Jakob Bornecrantz [Sun, 18 Jan 2009 12:40:24 +0000 (13:40 +0100)]
egl: Make eglscreen sleep for five seconds

15 years agoegl: Add eglscreen to help debug egl mesa screen
Jakob Bornecrantz [Sun, 18 Jan 2009 04:14:01 +0000 (05:14 +0100)]
egl: Add eglscreen to help debug egl mesa screen

15 years agoegl: Make eglinfo print screen info
Jakob Bornecrantz [Sat, 17 Jan 2009 19:50:00 +0000 (20:50 +0100)]
egl: Make eglinfo print screen info

15 years agoMerge commit 'origin/master' into gallium-0.2
Alan Hourihane [Fri, 16 Jan 2009 16:44:53 +0000 (16:44 +0000)]
Merge commit 'origin/master' into gallium-0.2

Conflicts:
src/mesa/shader/slang/slang_compile.c

15 years agoglsl: fix broken sampler assignments
Brian Paul [Fri, 16 Jan 2009 16:30:37 +0000 (09:30 -0700)]
glsl: fix broken sampler assignments

15 years agoscons: Use -std=gnu99
José Fonseca [Wed, 14 Jan 2009 13:03:09 +0000 (13:03 +0000)]
scons: Use -std=gnu99

It a scary world out there: people use all sort of non standard C stuff,
and we must enable support for that in here in order to build.

-pedantic still warn us when we use that nonstandard though.

15 years agostw: Dispatch to our stw_winsys::flush_front_buffer
José Fonseca [Wed, 14 Jan 2009 12:56:12 +0000 (12:56 +0000)]
stw: Dispatch  to our stw_winsys::flush_front_buffer

pipe_winsys::flush_front_buffer should die someday, but this is good enough
for now.

15 years agoi915: fallback on transfer mode
Xiang, Haihao [Fri, 16 Jan 2009 08:06:33 +0000 (16:06 +0800)]
i915: fallback on transfer mode

15 years agowindows: updated VC8 project file
Karl Schultz [Thu, 15 Jan 2009 18:32:47 +0000 (11:32 -0700)]
windows: updated VC8 project file

15 years agowindows: updated mesa.def file
Karl Schultz [Thu, 15 Jan 2009 14:05:15 +0000 (07:05 -0700)]
windows: updated mesa.def file

15 years agoglsl: use _mesa_sprintf()
Brian Paul [Thu, 15 Jan 2009 14:04:52 +0000 (07:04 -0700)]
glsl: use _mesa_sprintf()

15 years agoglsl: move declaration before code
Brian Paul [Thu, 15 Jan 2009 14:04:36 +0000 (07:04 -0700)]
glsl: move declaration before code

15 years agomesa: tweak to formatting
Alan Hourihane [Thu, 15 Jan 2009 14:02:09 +0000 (14:02 +0000)]
mesa: tweak to formatting

15 years agomesa: check frambuffer complete status before rendering
Alan Hourihane [Thu, 15 Jan 2009 11:51:39 +0000 (11:51 +0000)]
mesa: check frambuffer complete status before rendering

15 years agomesa: small cleanup
Alan Hourihane [Thu, 15 Jan 2009 11:54:41 +0000 (11:54 +0000)]
mesa: small cleanup

15 years agomesa: revert partial commit for 0x0 render targets
Alan Hourihane [Thu, 15 Jan 2009 11:53:59 +0000 (11:53 +0000)]
mesa: revert partial commit for 0x0 render targets

15 years agomesa: check frambuffer complete status before rendering
Alan Hourihane [Thu, 15 Jan 2009 11:51:39 +0000 (11:51 +0000)]
mesa: check frambuffer complete status before rendering

15 years agomesa: Fix merge conflicts
Jakob Bornecrantz [Thu, 15 Jan 2009 11:28:23 +0000 (12:28 +0100)]
mesa: Fix merge conflicts

15 years agomesa: bump version to 7.3-rc2
Brian Paul [Thu, 15 Jan 2009 00:01:35 +0000 (17:01 -0700)]
mesa: bump version to 7.3-rc2

15 years agoglsl: fix comment
Brian Paul [Wed, 14 Jan 2009 19:35:43 +0000 (12:35 -0700)]
glsl: fix comment

15 years agoglsl: minor clean-up for rect sampler test
Brian Paul [Wed, 14 Jan 2009 19:33:06 +0000 (12:33 -0700)]
glsl: minor clean-up for rect sampler test

15 years agor300: work-around FRAG_BIT_FOGC warning/error
Brian Paul [Wed, 14 Jan 2009 23:48:54 +0000 (16:48 -0700)]
r300: work-around FRAG_BIT_FOGC warning/error

See bug 17929.

Fog doesn't actually work, but the often complained about warning is
silenced.

15 years agoi965: asst. fixes, work-arounds for FBOs and render to texture
Brian Paul [Wed, 14 Jan 2009 23:42:19 +0000 (16:42 -0700)]
i965: asst. fixes, work-arounds for FBOs and render to texture

OpenGL allows mixing and matching depth and stencil renderbuffers in
framebuffer objects while the hardware really only supports interleaved
depth/stencil buffers.  This makes for some tricky buffer management.

An extra wrinkle is the situation where the user allocates a 16bpp depth
texture or renderbuffer then tries to render to it along with a stencil
buffer.  We'd have to promote the 16bpp Z values to 24-bit Z values and
mix in the stencil values to setup the depth/stencil renderbuffer.

There's no support for that now, so always allocate 32bpp depth textures/
renderbuffers for now.

15 years agoi965: fix incorrect renderbuffer DataType assignment
Brian Paul [Wed, 14 Jan 2009 23:28:55 +0000 (16:28 -0700)]
i965: fix incorrect renderbuffer DataType assignment

15 years agoi965: fix some FBO depth/stencil assertions
Brian Paul [Wed, 14 Jan 2009 23:26:41 +0000 (16:26 -0700)]
i965: fix some FBO depth/stencil assertions

15 years agoMerge commit 'origin/master' into gallium-0.2
Alan Hourihane [Wed, 14 Jan 2009 23:33:41 +0000 (23:33 +0000)]
Merge commit 'origin/master' into gallium-0.2

Conflicts:
docs/install.html
docs/relnotes-7.3.html
src/mesa/shader/slang/slang_codegen.c
src/mesa/shader/slang/slang_compile.c
src/mesa/shader/slang/slang_emit.c
src/mesa/shader/slang/slang_preprocess.c
src/mesa/shader/slang/slang_preprocess.h

15 years agointel: SW fallback maps texture images, not texture coordinates
Ian Romanick [Wed, 14 Jan 2009 20:46:06 +0000 (12:46 -0800)]
intel: SW fallback maps texture images, not texture coordinates

15 years agoglsl: propagate pragma info down into compiler from preprocessor
Brian Paul [Wed, 14 Jan 2009 19:16:00 +0000 (12:16 -0700)]
glsl: propagate pragma info down into compiler from preprocessor

15 years agowindows: remove reference to swizzle.c file
Brian Paul [Wed, 14 Jan 2009 19:07:25 +0000 (12:07 -0700)]
windows: remove reference to swizzle.c file

15 years agoglsl: simplify IR storage for samplers
Brian Paul [Wed, 14 Jan 2009 18:58:45 +0000 (11:58 -0700)]
glsl: simplify IR storage for samplers

Don't overload the Size field with the texture target, to avoid confusion.

15 years agomesa: fix incorrect transformation of GL_SPOT_DIRECTION
Brian Paul [Wed, 14 Jan 2009 18:50:32 +0000 (11:50 -0700)]
mesa: fix incorrect transformation of GL_SPOT_DIRECTION

This was changed between GL 1.0 and 1.1.  Mesa still had the 1.0 behaviour.

15 years agoTreat image units and coordinate units differently.
Ian Romanick [Wed, 14 Jan 2009 18:05:40 +0000 (10:05 -0800)]
Treat image units and coordinate units differently.

Previously MaxTextureUnits was used to validate both texture image
units and texture coordinate units in fragment programs.  Instead, use
MaxTextureCoordUnits for texture coordinate units and
MaxTextureImageUnits for texture image units.

Fixes bugzilla #19468.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
15 years agomesa: add new samplers_array test
Alan Hourihane [Wed, 14 Jan 2009 17:01:16 +0000 (17:01 +0000)]
mesa: add new samplers_array test

15 years agomesa: handle some cases of 0x0 render targets
Alan Hourihane [Wed, 14 Jan 2009 16:53:22 +0000 (16:53 +0000)]
mesa: handle some cases of 0x0 render targets

15 years agoglsl: fix regression from sampler arrays commit
Alan Hourihane [Wed, 14 Jan 2009 16:32:44 +0000 (16:32 +0000)]
glsl: fix regression from sampler arrays commit

15 years agoglsl: fix regression from sampler arrays commit
Alan Hourihane [Wed, 14 Jan 2009 16:32:44 +0000 (16:32 +0000)]
glsl: fix regression from sampler arrays commit

15 years agoi965: indentation fixes
Brian Paul [Wed, 14 Jan 2009 15:33:45 +0000 (08:33 -0700)]
i965: indentation fixes

15 years agoi965: allow larger AA points on fallback path
Brian Paul [Tue, 13 Jan 2009 17:40:19 +0000 (10:40 -0700)]
i965: allow larger AA points on fallback path

15 years agoi965: fix indentation
Brian Paul [Tue, 13 Jan 2009 17:38:15 +0000 (10:38 -0700)]
i965: fix indentation

15 years agoi965: comment for emit_kil()
Brian Paul [Tue, 13 Jan 2009 17:26:25 +0000 (10:26 -0700)]
i965: comment for emit_kil()

15 years agomesa: put _NV suffix on a few opcodes
Brian Paul [Tue, 13 Jan 2009 17:20:15 +0000 (10:20 -0700)]
mesa: put _NV suffix on a few opcodes

15 years agoi965: fix indentation
Brian Paul [Tue, 13 Jan 2009 17:09:02 +0000 (10:09 -0700)]
i965: fix indentation

15 years agoegl: fix makecurrent with null drawable/context
Alan Hourihane [Wed, 14 Jan 2009 11:34:29 +0000 (11:34 +0000)]
egl: fix makecurrent with null drawable/context

15 years agogallium: Disable memory debugging for Windows OGL.
José Fonseca [Wed, 14 Jan 2009 11:39:12 +0000 (11:39 +0000)]
gallium: Disable memory debugging for Windows OGL.

Unfortunately both Mesa and Gallium use the same defines for memory
allocation (MALLOC, FREE, etc), and worse, some times memory is allocated
with one set and freed with the other set, causing the homegrown memory
debugger to trip on itself.

In the future mesa and gallium should use different names, but for now,
memory debugging on Windows will have to be carried with different tools..

15 years agoprogs: List tri-clear.
José Fonseca [Wed, 14 Jan 2009 11:36:14 +0000 (11:36 +0000)]
progs: List tri-clear.

15 years agoscons: Use .a suffix for MinGW.
José Fonseca [Wed, 14 Jan 2009 11:36:02 +0000 (11:36 +0000)]
scons: Use .a suffix for MinGW.

This allows to build MinGW and MSVC within the same dir.

15 years agointel: Add a none working GEM backend for intel
Jakob Bornecrantz [Mon, 5 Jan 2009 10:44:56 +0000 (11:44 +0100)]
intel: Add a none working GEM backend for intel

15 years agocell: Specify constant as float for CEILF().
Jonathan Adamczewski [Wed, 14 Jan 2009 01:37:46 +0000 (12:37 +1100)]
cell: Specify constant as float for CEILF().

Without the f, the constant is treated as a double, resulting in
slower arithmetic and libgcc conversion calls each time CEILF()
is used.

15 years agointel: bump driver date
Xiang, Haihao [Wed, 14 Jan 2009 01:32:55 +0000 (09:32 +0800)]
intel: bump driver date

15 years agoglsl: fix a comment typo
Alan Hourihane [Tue, 13 Jan 2009 23:59:18 +0000 (23:59 +0000)]
glsl: fix a comment typo

15 years agoglsl: support sampler arrays.
Alan Hourihane [Tue, 13 Jan 2009 23:54:46 +0000 (23:54 +0000)]
glsl: support sampler arrays.

15 years agoglsl: fix a comment typo
Alan Hourihane [Tue, 13 Jan 2009 23:59:18 +0000 (23:59 +0000)]
glsl: fix a comment typo

15 years agoglsl: support sampler arrays.
Alan Hourihane [Tue, 13 Jan 2009 23:54:46 +0000 (23:54 +0000)]
glsl: support sampler arrays.

15 years agodocs: #pragma now handled
Brian Paul [Tue, 13 Jan 2009 22:09:13 +0000 (15:09 -0700)]
docs: #pragma now handled

15 years agoglsl: add preprocessor support for #pragma
Brian Paul [Tue, 13 Jan 2009 22:06:52 +0000 (15:06 -0700)]
glsl: add preprocessor support for #pragma

Two forms are supported:

Pragmas are silently ignored at this time.

15 years agoAdd language about implicit flush and command completion
Ian Romanick [Sat, 10 Jan 2009 02:28:38 +0000 (18:28 -0800)]
Add language about implicit flush and command completion

Copied language from the glXSwapBuffers manual page about the implicit
glFlush and expected command completion.  This just codifies what
people already expect from glXCopySubBufferMESA.  The intention of
this command is to work like glXSwapBuffers but on a sub-rectangle of
the drawable.

Acked-by: Brian Paul <brianp@vmware.com>
15 years agodocs: fixes since 7.3-rc1
Brian Paul [Tue, 13 Jan 2009 16:03:43 +0000 (09:03 -0700)]
docs: fixes since 7.3-rc1

15 years agowindows: try to create a context in wglCreateLayerContext()
Karl Schultz [Tue, 13 Jan 2009 16:01:34 +0000 (09:01 -0700)]
windows: try to create a context in wglCreateLayerContext()

15 years agonv50: fix progs/tests/manytex
Ben Skeggs [Tue, 13 Jan 2009 03:25:14 +0000 (13:25 +1000)]
nv50: fix progs/tests/manytex

Previously all squares were textured with the same texture.. not quite what
the demo was supposed to look like!

15 years agonv50: get glxgears showing all 3 gears instead of 1!!
Ben Skeggs [Tue, 13 Jan 2009 03:19:22 +0000 (13:19 +1000)]
nv50: get glxgears showing all 3 gears instead of 1!!

This fixes a lot of other things where not all the geometry got drawn
also.

15 years agonv50: change some magic reg, makes more things work
Ben Skeggs [Tue, 13 Jan 2009 02:49:53 +0000 (12:49 +1000)]
nv50: change some magic reg, makes more things work

No real idea what this does.. but a lot of things that misrendered and
made the GPU throw a DATA_ERROR now work..  I'm wondering what side-effects
we'll see from this :)

15 years agonv50: add DXTn formats
Ben Skeggs [Tue, 13 Jan 2009 01:44:30 +0000 (11:44 +1000)]
nv50: add DXTn formats

15 years agonv50: shadow mapping
Ben Skeggs [Tue, 13 Jan 2009 00:58:17 +0000 (10:58 +1000)]
nv50: shadow mapping

15 years agonv50: aniso
Ben Skeggs [Tue, 13 Jan 2009 00:55:06 +0000 (10:55 +1000)]
nv50: aniso

15 years agonv50: occlusion queries
Ben Skeggs [Tue, 13 Jan 2009 00:44:52 +0000 (10:44 +1000)]
nv50: occlusion queries

Not quite working, but the general idea is right I think.

15 years agonv50: implement KIL enough for progs/fp/kil to work
Ben Skeggs [Mon, 12 Jan 2009 23:56:40 +0000 (09:56 +1000)]
nv50: implement KIL enough for progs/fp/kil to work

15 years agocell: Add missing suffix to SHUFFLE macro
Jonathan Adamczewski [Tue, 13 Jan 2009 03:02:18 +0000 (14:02 +1100)]
cell: Add missing suffix to SHUFFLE macro

15 years agocell: allocate batch buffers w/ 16-byte alignment
Jonathan Adamczewski [Mon, 12 Jan 2009 23:24:49 +0000 (16:24 -0700)]
cell: allocate batch buffers w/ 16-byte alignment

Replace cell_batch{align,alloc)*() with cell_batch_alloc16(), allocating
multiples of 16 bytes that are 16 byte aligned.

Opcodes are stored in preferred slot of SPU machine word.

Various structures are explicitly padded to 16 byte multiples.

Added STATIC_ASSERT().

15 years agoi965: fix glDrawPixels Z coordinate in intel_texture_drawpixels().
Brian Paul [Mon, 12 Jan 2009 22:47:36 +0000 (15:47 -0700)]
i965: fix glDrawPixels Z coordinate in intel_texture_drawpixels().

As for glBitmap, it needs to be an NDC coord in [-1,1].

15 years agoi965: fix broken glBitmap + depth test
Brian Paul [Mon, 12 Jan 2009 22:43:54 +0000 (15:43 -0700)]
i965: fix broken glBitmap + depth test

When we use the do_blit_bitmap() function, it seems the fragment Z is always
1.0.  If depth testing is on, that means that bitmap fragments are often
occluded by other rendering.  So, the bitmap doesn't appear even if
rasterpos.Z==0.
The fix is to use the intel_texture_bitmap() path when depth testing is on.
Also, fix the incorrect Z coordinate.  It needs to be an NDC value in [-1,1].

15 years agoi965: fix broken ARB fp fog options
Brian Paul [Fri, 9 Jan 2009 22:52:04 +0000 (15:52 -0700)]
i965: fix broken ARB fp fog options

Just call _mesa_append_fog_code() if the fragment program's FogOption is
not GL_NONE.
This allows us to remove some unnecessary i965 fog code.
Note, the arbfplight.c demo can be used to test this (see DO_FRAGMENT_FOG).

15 years agoautoconf: Only _GNU_SOURCE feature test macro needed on gnu systems
Dan Nicholson [Mon, 12 Jan 2009 19:10:31 +0000 (11:10 -0800)]
autoconf: Only _GNU_SOURCE feature test macro needed on gnu systems

According to feature_test_macros(7), _GNU_SOURCE encompasses all the
other feature macros we were setting, so we can just dispose of them.

15 years agomesa: match against *-gnu* instead of *-gnu in configure.ac
Julien Cristau [Mon, 12 Jan 2009 15:04:32 +0000 (16:04 +0100)]
mesa: match against *-gnu* instead of *-gnu in configure.ac

Fixes build on arm-linux-gnueabi

15 years agowindows: updated VC8 project files
Thomas Henn [Mon, 12 Jan 2009 17:56:42 +0000 (10:56 -0700)]
windows: updated VC8 project files

15 years agoglsl: better fix for for-loop scope issue (commit 6333005f7aea3e5d1d86a5c47b3fa2a1ed2...
Brian Paul [Mon, 12 Jan 2009 15:52:54 +0000 (08:52 -0700)]
glsl: better fix for for-loop scope issue (commit 6333005f7aea3e5d1d86a5c47b3fa2a1ed2f3ff0)

15 years agowindows: added new sources for 7.3 (may be more, needs testing)
Brian Paul [Mon, 12 Jan 2009 15:35:53 +0000 (08:35 -0700)]
windows: added new sources for 7.3 (may be more, needs testing)

15 years agomesa: add osmesa.pc.in to tarball list
Brian Paul [Mon, 12 Jan 2009 14:55:14 +0000 (07:55 -0700)]
mesa: add osmesa.pc.in to tarball list

15 years agogallivm: Make sure the bitcode buffer is followed by a 0 byte.
Michel Dänzer [Mon, 12 Jan 2009 14:05:05 +0000 (15:05 +0100)]
gallivm: Make sure the bitcode buffer is followed by a 0 byte.

May fail to parse otherwise.

15 years agogallivm: Print error message from ParseBitcodeFile() in case it fails.
Michel Dänzer [Mon, 12 Jan 2009 11:39:31 +0000 (12:39 +0100)]
gallivm: Print error message from ParseBitcodeFile() in case it fails.

15 years agogallivm: Explicitly specify the LLVM components we need.
Michel Dänzer [Mon, 12 Jan 2009 11:37:13 +0000 (12:37 +0100)]
gallivm: Explicitly specify the LLVM components we need.

15 years agogallivm: Adapt to header file move in LLVM 2.4.
Michel Dänzer [Mon, 12 Jan 2009 11:34:27 +0000 (12:34 +0100)]
gallivm: Adapt to header file move in LLVM 2.4.

15 years agonv50: make rtt work again
Ben Skeggs [Mon, 12 Jan 2009 06:47:17 +0000 (16:47 +1000)]
nv50: make rtt work again

15 years agonv50: fix handling of depth textures
Ben Skeggs [Mon, 12 Jan 2009 06:32:49 +0000 (16:32 +1000)]
nv50: fix handling of depth textures

15 years agonv50: another typo..
Ben Skeggs [Mon, 12 Jan 2009 06:24:42 +0000 (16:24 +1000)]
nv50: another typo..

15 years agonouveau: fix warning
Ben Skeggs [Mon, 12 Jan 2009 06:15:58 +0000 (16:15 +1000)]
nouveau: fix warning

15 years agonv50: fix assertion failure
Ben Skeggs [Mon, 12 Jan 2009 05:42:20 +0000 (15:42 +1000)]
nv50: fix assertion failure

15 years agonv50: remove previous hack to manage tiled surfaces
Ben Skeggs [Mon, 12 Jan 2009 05:19:35 +0000 (15:19 +1000)]
nv50: remove previous hack to manage tiled surfaces