Brian Paul [Wed, 21 Jan 2009 14:57:45 +0000 (07:57 -0700)]
Revert "windows: new VC8 projects statically linked against libcmt"
This reverts commit
bbda892c551e7d3f2d94cc877cc6e80f8568fa99.
Static configs rolled into regular project files (in next commit).
Provided by Karl Schultz.
Brian Paul [Tue, 20 Jan 2009 22:36:01 +0000 (15:36 -0700)]
docs: document glXMakeContextCurrent() and Windows fixes
Ian Romanick [Tue, 20 Jan 2009 21:55:18 +0000 (13:55 -0800)]
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.
Timo Aaltonen [Tue, 20 Jan 2009 16:45:35 +0000 (11:45 -0500)]
[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.
Owain G. Ainsworth [Wed, 14 Jan 2009 01:14:32 +0000 (01:14 +0000)]
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.
Brian Paul [Tue, 20 Jan 2009 16:21:32 +0000 (09:21 -0700)]
glsl: silence unused var warnings
Brian Paul [Tue, 20 Jan 2009 16:20:41 +0000 (09:20 -0700)]
mesa: silence uninitialized var warnings
Brian Paul [Tue, 20 Jan 2009 16:17:12 +0000 (09:17 -0700)]
mesa: silence compiler warning at -O2
Brian Paul [Tue, 20 Jan 2009 16:13:41 +0000 (09:13 -0700)]
mesa: bump version to 7.3-rc3
Brian Paul [Tue, 20 Jan 2009 16:13:06 +0000 (09:13 -0700)]
mesa: inlclude whole windows/VC8/ directory in tarballs
Thomas Henn [Tue, 20 Jan 2009 16:05:18 +0000 (09:05 -0700)]
windows: new VC8 projects statically linked against libcmt
Karl Schultz [Tue, 20 Jan 2009 15:58:40 +0000 (08:58 -0700)]
windows: more VC8 project file updates
Make some compiler flags per-file.
Remove driverfuncs.c from osmesa project.
Thomas Hellstrom [Tue, 20 Jan 2009 10:40:51 +0000 (11:40 +0100)]
Add a comment about _tnl_emit_indexed_vertices_to_buffer.
Thomas Hellstrom [Tue, 20 Jan 2009 10:15:57 +0000 (11:15 +0100)]
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.
Thomas Hellstrom [Tue, 20 Jan 2009 10:13:38 +0000 (11:13 +0100)]
Fix store texel for argb4444.
Thomas Hellstrom [Tue, 20 Jan 2009 10:13:05 +0000 (11:13 +0100)]
Fix store texel for argb8888_rev.
Thomas Hellstrom [Tue, 20 Jan 2009 10:12:17 +0000 (11:12 +0100)]
Add RGBA4444 and RGBA5551 texture formats.
Thomas Hellstrom [Tue, 20 Jan 2009 10:07:10 +0000 (11:07 +0100)]
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.
Brian Paul [Tue, 13 Jan 2009 21:39:55 +0000 (14:39 -0700)]
mesa: fix build of stand-alone glslcompiler driver
Brian Paul [Mon, 19 Jan 2009 19:03:17 +0000 (12:03 -0700)]
tests: test pseudo-XOR blend mode.
GL_XOR logicop mode can be approximated with blending by computing 1 - dst.
Here's a couple test programs for that.
Alan Hourihane [Mon, 19 Jan 2009 15:40:30 +0000 (15:40 +0000)]
dri: add fake front definitions
Thomas Henn [Mon, 19 Jan 2009 15:23:22 +0000 (08:23 -0700)]
windows: updated VC8 project files
Brian Paul [Sun, 18 Jan 2009 16:59:07 +0000 (09:59 -0700)]
glx: gcc 2.95 build fix (move declaration before code)
Adapted from patch by Matthieu Herbb <matthieu.herrb@laas.fr>
Brian Paul [Fri, 16 Jan 2009 20:33:19 +0000 (13:33 -0700)]
i965: fix polygon culling bug when rendering to a texture/FBO
Since we use an inverted viewport transformation for render to texture, that
inverts front/back polygon orientation.
Now glCullFace(GL_FRONT / GL_BACK) works correctly.
Brian Paul [Fri, 16 Jan 2009 20:31:04 +0000 (13:31 -0700)]
intel: added intel_rendering_to_texture() helper function.
When we're rendering to textures we have to invert the viewport transformation.
This helper cleans up that test and can be used elsewhere...
Brian Paul [Fri, 16 Jan 2009 20:25:41 +0000 (13:25 -0700)]
mesa: remove GL_DEPTH_TEST + no depth buffer test
One could enable depth testing before binding an FBO that has a depth buffer
so this test is no longer useful or correct.
Brian Paul [Fri, 16 Jan 2009 16:30:37 +0000 (09:30 -0700)]
glsl: fix broken sampler assignments
Xiang, Haihao [Fri, 16 Jan 2009 08:06:33 +0000 (16:06 +0800)]
i915: fallback on transfer mode
Karl Schultz [Thu, 15 Jan 2009 18:32:47 +0000 (11:32 -0700)]
windows: updated VC8 project file
Karl Schultz [Thu, 15 Jan 2009 14:05:15 +0000 (07:05 -0700)]
windows: updated mesa.def file
Brian Paul [Thu, 15 Jan 2009 14:04:52 +0000 (07:04 -0700)]
glsl: use _mesa_sprintf()
Brian Paul [Thu, 15 Jan 2009 14:04:36 +0000 (07:04 -0700)]
glsl: move declaration before code
Alan Hourihane [Thu, 15 Jan 2009 11:51:39 +0000 (11:51 +0000)]
mesa: check frambuffer complete status before rendering
Brian Paul [Thu, 15 Jan 2009 00:01:35 +0000 (17:01 -0700)]
mesa: bump version to 7.3-rc2
Brian Paul [Wed, 14 Jan 2009 19:35:43 +0000 (12:35 -0700)]
glsl: fix comment
Brian Paul [Wed, 14 Jan 2009 19:33:06 +0000 (12:33 -0700)]
glsl: minor clean-up for rect sampler test
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.
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.
Brian Paul [Wed, 14 Jan 2009 23:28:55 +0000 (16:28 -0700)]
i965: fix incorrect renderbuffer DataType assignment
Brian Paul [Wed, 14 Jan 2009 23:26:41 +0000 (16:26 -0700)]
i965: fix some FBO depth/stencil assertions
Ian Romanick [Wed, 14 Jan 2009 20:46:06 +0000 (12:46 -0800)]
intel: SW fallback maps texture images, not texture coordinates
Brian Paul [Wed, 14 Jan 2009 19:16:00 +0000 (12:16 -0700)]
glsl: propagate pragma info down into compiler from preprocessor
Brian Paul [Wed, 14 Jan 2009 19:07:25 +0000 (12:07 -0700)]
windows: remove reference to swizzle.c file
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.
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.
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>
Alan Hourihane [Wed, 14 Jan 2009 16:32:44 +0000 (16:32 +0000)]
glsl: fix regression from sampler arrays commit
Brian Paul [Wed, 14 Jan 2009 15:33:45 +0000 (08:33 -0700)]
i965: indentation fixes
Brian Paul [Tue, 13 Jan 2009 17:40:19 +0000 (10:40 -0700)]
i965: allow larger AA points on fallback path
Brian Paul [Tue, 13 Jan 2009 17:38:15 +0000 (10:38 -0700)]
i965: fix indentation
Brian Paul [Tue, 13 Jan 2009 17:26:25 +0000 (10:26 -0700)]
i965: comment for emit_kil()
Brian Paul [Tue, 13 Jan 2009 17:20:15 +0000 (10:20 -0700)]
mesa: put _NV suffix on a few opcodes
Brian Paul [Tue, 13 Jan 2009 17:09:02 +0000 (10:09 -0700)]
i965: fix indentation
Xiang, Haihao [Wed, 14 Jan 2009 01:32:55 +0000 (09:32 +0800)]
intel: bump driver date
Alan Hourihane [Tue, 13 Jan 2009 23:59:18 +0000 (23:59 +0000)]
glsl: fix a comment typo
Alan Hourihane [Tue, 13 Jan 2009 23:54:46 +0000 (23:54 +0000)]
glsl: support sampler arrays.
Brian Paul [Tue, 13 Jan 2009 22:09:13 +0000 (15:09 -0700)]
docs: #pragma now handled
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.
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>
Brian Paul [Tue, 13 Jan 2009 16:03:43 +0000 (09:03 -0700)]
docs: fixes since 7.3-rc1
Karl Schultz [Tue, 13 Jan 2009 16:01:34 +0000 (09:01 -0700)]
windows: try to create a context in wglCreateLayerContext()
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].
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].
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).
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.
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
Thomas Henn [Mon, 12 Jan 2009 17:56:42 +0000 (10:56 -0700)]
windows: updated VC8 project files
Brian Paul [Mon, 12 Jan 2009 15:52:54 +0000 (08:52 -0700)]
glsl: better fix for for-loop scope issue (commit
6333005f7aea3e5d1d86a5c47b3fa2a1ed2f3ff0)
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)
Brian Paul [Mon, 12 Jan 2009 14:55:14 +0000 (07:55 -0700)]
mesa: add osmesa.pc.in to tarball list
Matthieu Herrb [Sun, 11 Jan 2009 23:56:34 +0000 (16:56 -0700)]
Build fixes for gcc 2.95
Matthieu Herrb [Sat, 11 Oct 2008 06:51:43 +0000 (08:51 +0200)]
Big endian fixes.
Matthieu Herrb [Sun, 21 Sep 2008 08:56:57 +0000 (10:56 +0200)]
build fix on big endian OpenBSD architectures.
Matthieu Herrb [Sun, 14 Sep 2008 18:58:29 +0000 (20:58 +0200)]
replace nearbyint() by rint() for now.
Owain G. Ainsworth [Sun, 11 Jan 2009 20:40:07 +0000 (20:40 +0000)]
Fix build with GCC 2.95.
Matthieu Herrb [Sat, 13 Sep 2008 17:07:28 +0000 (19:07 +0200)]
__builtin_expect is a gcc 3.x feature. define it out for gcc 2.95.
Patch suggested by miod@. Thanks.
Brian [Sat, 10 Jan 2009 23:32:32 +0000 (16:32 -0700)]
mesa: require libdrm 2.4.3 in configure.ac
Brian Paul [Sat, 10 Jan 2009 19:21:37 +0000 (12:21 -0700)]
mesa: omit old headers from tarball
Brian Paul [Sat, 10 Jan 2009 19:09:08 +0000 (12:09 -0700)]
docs: document deprecated/removed headers/interfaces
Brian Paul [Sat, 10 Jan 2009 19:07:58 +0000 (12:07 -0700)]
mesa: remove old GLView.h header for BeOS
Brian Paul [Sat, 10 Jan 2009 19:06:29 +0000 (12:06 -0700)]
mesa: remove deprecated headers from Makefile.am
Brian Paul [Sat, 10 Jan 2009 19:04:39 +0000 (12:04 -0700)]
mesa: deprecate GL/amesa.h header (allegro driver)
Brian Paul [Sat, 10 Jan 2009 19:01:40 +0000 (12:01 -0700)]
mesa: deprecate the GL/fxmesa.h header
Brian Paul [Sat, 10 Jan 2009 19:00:27 +0000 (12:00 -0700)]
mesa: remove the ancient include/GL/ugl*.h headers
Brian Paul [Sat, 10 Jan 2009 18:57:13 +0000 (11:57 -0700)]
xmesa: deprecate the "XMesa" interface
Move the include/GL/xmesa*.h files to src/mesa/drivers/x11/ so they're no
longer considered public.
Brian Paul [Sat, 10 Jan 2009 18:52:55 +0000 (11:52 -0700)]
docs: prerequisite updates
Brian Paul [Sat, 10 Jan 2009 18:40:20 +0000 (11:40 -0700)]
glsl: force creation of new scope for for-loop body
Fixes regression in progs/demos/convolution.c due to loop unrolling.
This also allows the following to be compiled correctly:
for (int i = 0; i < n; i++) {
int i;
...
}
This fix is a bit of a hack, however. The better fix would be to change
the slang_shader.syn grammar. Will revisit that...
Brian Paul [Sat, 10 Jan 2009 18:39:05 +0000 (11:39 -0700)]
glsl: replace 0/1 with GL_FALSE/GL_TRUE
Ian Romanick [Fri, 9 Jan 2009 21:56:44 +0000 (13:56 -0800)]
swrast: Fix GL_ATI_separate_stencil
GL_ATI_separate_stencil is enabled by default for software
rasterizers, but the extension functions weren't hooked up to the
dispatch table.
Brian Paul [Fri, 9 Jan 2009 16:59:49 +0000 (09:59 -0700)]
glsl: make minimum struct size = 2, not 1
1-component structs such as "struct foo { float x; }" could get placed at
any position within a register. This caused some trouble computing the
field offset which assumed all struct objects were placed at R.x.
It would be unusual to hit this case in normal shaders.
Brian Paul [Fri, 9 Jan 2009 00:21:20 +0000 (17:21 -0700)]
mesa: 7.3-rc-1 Makefile changes
Brian Paul [Fri, 9 Jan 2009 00:20:41 +0000 (17:20 -0700)]
mesa: latest glxext.h header, no version change
Brian Paul [Fri, 9 Jan 2009 00:20:18 +0000 (17:20 -0700)]
mesa: import glext.h version 44
Brian Paul [Fri, 9 Jan 2009 00:19:51 +0000 (17:19 -0700)]
docs: dri2proto, libdrm tweaks
Brian Paul [Fri, 9 Jan 2009 00:07:28 +0000 (17:07 -0700)]
glsl: fix typo in the vec2 += operator function
Brian Paul [Thu, 8 Jan 2009 23:16:36 +0000 (16:16 -0700)]
mesa: set version string to 7.3-rc1
Brian Paul [Thu, 8 Jan 2009 23:15:31 +0000 (16:15 -0700)]
docs: updated Cell docs, from gallium-0.2 branch
Brian Paul [Thu, 8 Jan 2009 23:14:19 +0000 (16:14 -0700)]
docs: more 7.3 doc updates
Brian Paul [Thu, 8 Jan 2009 23:12:23 +0000 (16:12 -0700)]
docs: import 7.2 relnotes, start on 7.3 relnotes
Brian Paul [Thu, 8 Jan 2009 22:32:02 +0000 (15:32 -0700)]
glsl: fix broken +=, -=, *=, /= operators
These functions need to return the final computed value.
Now expressions such as a = (b += c) work properly.
Also, no need to use __asm intrinsics in these functions. The resulting
code is the same when using ordinary arithmetic operators and is more legible.