Commit graph

17807 commits

Author SHA1 Message Date
José Fonseca
57d00016ca glew: Initial import.
From glew 1.5.1 release.
2009-01-23 12:32:35 +00:00
Alan Hourihane
4df482086e Merge commit 'origin/master' into gallium-0.2
Conflicts:
	windows/VC8/mesa/osmesa/osmesa.vcproj
	windows/VC8/progs/demos/gears.vcproj
	windows/VC8/progs/progs.sln
2009-01-22 09:43:42 +00:00
Eric Anholt
b8bd0b0ddc i915: Add decode for PS in batchbuffers. 2009-01-21 14:03:56 -08:00
Eric Anholt
fc3971d800 i965: Remove gratuitous whitespace in INTEL_DEBUG=wm output. 2009-01-21 14:03:56 -08:00
Eric Anholt
046e88fc0b i965: Use _mesa_num_inst_src_regs() instead of keeping a copy of its contents. 2009-01-21 14:03:56 -08:00
Younes Manton
01cbd76496 nouveau: Map correct mip level when using the shadow (nv30, nv40). 2009-01-21 16:55:35 -05:00
Patrice Mandin
bcb5ea097c nouveau: nv30 does not support separate blend functions for alpha and rgb 2009-01-21 22:08:21 +01:00
Kristian Høgsberg
194d039f1e [intel] Remove remaining references to intel_wait_flips().
Oops.
2009-01-21 11:47:01 -05:00
Brian Paul
8c7135ee14 swrast: fix redundant texture application in affine_textured_triangle().
This function does simple texture mapping so disable normal texture mapping
before we call _swrast_write_rgba_span() so that we don't do it twice.
2009-01-21 09:05:02 -07:00
Brian Paul
4683cab29a mesa: add some debug assertions to detect null current texture object pointers
See bug #17895.  These assertions could be removed when this is resolved.
2009-01-21 08:18:07 -07:00
Ian Romanick
ab9b4e1f59 Fix issues with glXMakeContextCurrent and glXMakeCurrentReadSGI
There were several bugs in the infrastructure for these two routines.

1. GLX_ALIAS was incorrectly used.  The function and its alias must be
identical!  glXMakeContextCurrent / glXMakeCurrentReadSGI and
MakeContextCurrent had different parameters.  This caused the last
parameter of MakeContextCurrent to get random values.

2. We based the implementation of glXMakeContextCurrent on the manual
page instead of the GLX spec.  The GLX spec says that
glXMakeContextCurrent can be passed a Window as a drawable.  When this
happens, it will behave just like glXMakeCurrentReadSGI or
glXMakeCurrent.

3. If there was a problem finding or creating the DRI drawable,
MakeContextCurrent would crash instead of returning an error.

This commit fixes all three issues, and fixes bug #18367 and bug #19625.
2009-01-20 13:55:18 -08:00
Jakob Bornecrantz
73a4c945d3 i915: Fix gem backend after surface changes 2009-01-20 19:08:52 +01:00
Timo Aaltonen
39e6d0d810 [intel] Go back to using the typedef for the sarea struct
The upstream linux kernel headers and libdrm kernel headers disagree on the
tag name for the sarea struct: _drm_i915_sarea vs drm_i915_sarea.  They
both typedef it to drm_i915_sarea_t though, so just use that.
2009-01-20 11:52:32 -05:00
Owain G. Ainsworth
b5da7feee0 Remove intel pageflipping support in its entirety.
It's been broken and deprecated for a while, so it's time to die. This has the
wonderful benefit of cleaning up the code a fair amount; making it marginally
less twisty.

I'm unsure if the for loops in IntelWindowMoved are still needed.
2009-01-20 11:52:32 -05:00
Brian Paul
0f548dbc98 glsl: silence unused var warnings 2009-01-20 09:21:32 -07:00
Brian Paul
9d216be8cf mesa: silence uninitialized var warnings 2009-01-20 09:20:41 -07:00
Brian Paul
eb26cc6cf5 mesa: silence compiler warning at -O2 2009-01-20 09:17:12 -07:00
Brian Paul
bb63a663b1 mesa: bump version to 7.3-rc3 2009-01-20 09:13:41 -07:00
José Fonseca
5897383344 gallium: Remove the standalone surfaces.
This commit is mostly just a cosmetic change that cleans-up the interfaces,
replacing pipe_winsys::surface_* calls by

   /**
    * Allocate storage for a display target surface.
    *
    * Often surfaces which are meant to be blitted to the front screen (i.e.,
    * display targets) must be allocated with special characteristics, memory
    * pools, or obtained directly from the windowing system.
    *
    * This callback is invoked by the pipe_screenwhen creating a texture marked
    * with the PIPE_TEXTURE_USAGE_DISPLAY_TARGET flag  to get the underlying
    * buffer storage.
    */
   struct pipe_buffer *(*surface_buffer_create)(struct pipe_winsys *ws,
                                        unsigned width, unsigned height,
                                        enum pipe_format format,
                                        unsigned usage,
                                        unsigned *stride);

Most drivers were updated but not all were tested. Use the softpipe pipe
driver and the xlib winsys changes as a reference when fixing other drivers.
2009-01-20 12:22:49 +00:00
Thomas Hellstrom
437fa85ba3 Add a comment about _tnl_emit_indexed_vertices_to_buffer. 2009-01-20 11:40:51 +01:00
Thomas Hellstrom
b00477acf3 tnl: Add a utility to emit indexed vertices to a DMA buffer.
This utility is useful for hardware that doesn't support HW index buffers.
It's a bit inefficient but appears to give a substantial performance gain,
as we can emit tri strips that would otherwise be split into triangles.
2009-01-20 11:15:57 +01:00
Thomas Hellstrom
7374285f07 Fix store texel for argb4444. 2009-01-20 11:13:38 +01:00
Thomas Hellstrom
5c84a1032c Fix store texel for argb8888_rev. 2009-01-20 11:13:05 +01:00
Thomas Hellstrom
dbda49a9e6 Add RGBA4444 and RGBA5551 texture formats. 2009-01-20 11:12:17 +01:00
Thomas Hellstrom
11351f0c8a dri1: Add a macro to validate two dri drawables in one go.
Dri drivers often may validate first a write drawable and then a read
drawable ("readable"). However, the hardware lock may be unlocked when
validating the readable, causing the write drawable status to be stale.

Drivers should use this macro instead when validating two drawables.
2009-01-20 11:07:10 +01:00
Brian Paul
a5b5bc9f95 mesa: fix build of stand-alone glslcompiler driver 2009-01-19 17:50:44 -07:00
Keith Whitwell
ecc563b17f xlib: fix dependencies 2009-01-19 20:03:42 +00:00
Brian Paul
2fa407be8b statetracker: copy back color buffer to front buffer when needed
Fixes front-buffer rendering when following a SwapBuffers.
See progs/tests/rubberband.c
2009-01-19 12:55:35 -07:00
Brian Paul
b9a3952f8f gallium: minor reformatting 2009-01-19 12:55:35 -07:00
Keith Whitwell
bc0e00ad42 util: add reduced prim helper 2009-01-19 19:44:12 +00:00
Brian Paul
ba3a879b1c gallium: use align() intead of round_up() 2009-01-19 11:51:23 -07:00
Brian Paul
1907135235 tgsi: change an if to an else-if, added const qual, added comments 2009-01-19 08:51:58 -07:00
Keith Whitwell
41b99b0070 Merge commit 'origin/gallium-0.2' into gallium-xlib-rework
Conflicts:

	src/gallium/state_trackers/glx/xlib/fakeglx.c
	src/gallium/state_trackers/glx/xlib/xm_api.c
	src/gallium/winsys/xlib/xmesaP.h
2009-01-19 10:32:35 +00:00
Keith Whitwell
ea55b62f37 xlib: fix compilation after xmesa header moves 2009-01-19 10:29:27 +00:00
Keith Whitwell
b5db6b039c Merge commit 'origin/gallium-0.2' into gallium-xlib-rework 2009-01-19 10:15:04 +00:00
Younes Manton
76753e3078 g3dvl: Some cleanups. 2009-01-18 21:40:11 -05:00
Younes Manton
9ddca0b41d g3dvl: Ref count everywhere. 2009-01-18 21:40:11 -05:00
Younes Manton
3933d338f7 g3dvl: Mark all buffers for incoming frame data as discardable. 2009-01-18 21:40:11 -05:00
Younes Manton
7309e80578 nouveau: Rename buffer on map if discardable, busy, and write-only. 2009-01-18 21:40:10 -05:00
Younes Manton
0521c2682a 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.
2009-01-18 21:40:10 -05:00
Younes Manton
11f91936f2 g3dvl: Return BadAlloc if we can't create an XvMC surface. 2009-01-18 21:40:10 -05:00
Younes Manton
c35dc4a741 g3dvl: Follow mesa naming conventions for src dirs. 2009-01-18 21:40:10 -05:00
Jakob Bornecrantz
a835eb930d i915: Build gem and egl winsys by default 2009-01-19 02:24:29 +01:00
Jakob Bornecrantz
353f824379 i915: Make gem submit commands 2009-01-19 02:22:34 +01:00
Jakob Bornecrantz
e082923af6 egl: Fix swap and creation of front buffer 2009-01-19 02:00:35 +01:00
Brian Paul
b7f802eca2 glx: gcc 2.95 build fix (move declaration before code)
Adapted from patch by Matthieu Herbb <matthieu.herrb@laas.fr>
2009-01-18 10:00:34 -07:00
Jakob Bornecrantz
df3ef7a8d6 i915: Use new egl state_tracker 2009-01-18 15:50:15 +01:00
Jakob Bornecrantz
7047f1755f 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.
2009-01-18 15:40:12 +01:00
Jakob Bornecrantz
a874cf37ee i915: Update gem backend a bit 2009-01-18 15:35:50 +01:00
Keith Whitwell
8f3fac6107 debug: add noprefix version of debug_dump_enum 2009-01-17 18:45:20 +00:00