Commit graph

20016 commits

Author SHA1 Message Date
Alan Hourihane
a22d865f93 Merge commit 'origin/master' into gallium-0.2 2008-12-15 11:16:03 +00:00
Pierre Willenbrock
e72a442153 intel: Don't steal renderbuffer from caller in intel_miptree_create_for_region
Fixes double-frees of some regions, once from the renderbuffer code and
once from the miptree itself.

Bug #19062
2008-12-14 19:27:56 -08:00
Eric Anholt
0dfec4ab61 i965: Add decode of index/vertex buffer and primitive emit. 2008-12-14 19:27:56 -08:00
Eric Anholt
bc3b8a39a7 intel: Add batchbuffer assertions to hopefully catch future mistakes. 2008-12-14 19:27:55 -08:00
Ian Romanick
1126aa86bf Perform range checking on app supplied texture base level
It is possible for applications to specify any texture base level,
including trivially invalid values (i.e., 47000000).  When an app
specifies an invalide base level, we should gracefully disable the
texture instead of accessing memory outside the gl_texture_object.

This fixes an occasional segfault in one of our conformance tests.
2008-12-14 18:46:18 -08:00
Ian Romanick
63cca2ba10 GLX: Include glapi.h before glapitable.h
A previous commit (2dbc515a66) change
some of the interdependencies between these two header files.  Now
glapi.h must be included before glapitable.h.
2008-12-14 18:46:17 -08:00
Ian Romanick
2dd0c16f21 GLX: Change resulting from previous commit
Commit db61cbfa2aa241da49589331d8b6875d9a77d826 made modifications to
the protocol generator data and scripts.  This commit represents the
changes to the generated files resulting from the previous changes.

This is the client-side part of the fix for bugzilla #11003.
2008-12-14 18:46:17 -08:00
Neil Roberts
1709ab01ef Return 0 as the request size when the pixels parameter is NULL
img_null_flag was being ignored when calculating the size of a request
so a BadLength error gets thrown for glTexImage3D when the pixels
parameter is NULL.

See bug #11003
2008-12-14 18:46:17 -08:00
Ian Romanick
0f73302d24 GLX: Fix protocol for glTexSubImage#D
The TexSubImage commands do not have the "NULL image" flag that was
introduced with glTexImage3D.  However, there is a CARD32 pad element
where that flag would be.  Removing the img_null_flag causes the flag
to be removed from the protocol.  This changes the protocol and breaks
everything.

In order to prevent needing to hand-code all of the TexSubImage
functions, a new attribute was added to the param element.  This new
attribute, called "padding," is a boolean flag that selects whether or
not the parameter is a real parameter (default / false) or is protocol
padding (true) that does not appear in the function's parameter list.

This change resulted in a number of changes to other Python scripts.
In almost all cases parameters with the is_padding flag set should not
be emitted.

This patch only changes the the XML, the DTD, and the generator
scripts.  It does NOT include the resulting changes to the generated
code.  Generated code in the X server is also changed by the script /
XML changes in this patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2008-12-14 18:46:17 -08:00
Dan Nicholson
8be02fc8c6 Add OSMesa pkg-config file
This makes the GLU .pc file a little simpler, too.
2008-12-14 09:35:29 -08:00
Dan Nicholson
71e208bafe Add more package metadata to the pkg-config files
The pkg-config files have been filled in more thoroughly to allow users
to use mesa more effectively. By adding metadata to Requires.private,
Libs.private and Cflags, we can ensure that all the libraries and
headers will be found in all situations. However, the full substitutions
are only done when using the configure script.

This also fixes the glu pkg-config file to account for using GL or
OSMesa.

Fixes bug 18161.
2008-12-14 08:47:03 -08:00
Gary Wong
a42342cd90 Fix silly type mismatch error in multinoise demo. 2008-12-13 20:06:21 -07:00
Gary Wong
d28e852895 i965: Finish OPCODE_NOISEn instructions.
Added missing OPCODE_NOISE4, and use BRW_REGISTER_TYPE_D (instead of _UD)
in the initial RNDD instructions (which avoids saturating negative inputs
to 0).
2008-12-13 14:28:28 -07:00
Gary Wong
d427a2910f Add "multinoise" demo, to test 1/2/3/4 dimensional noise. 2008-12-13 14:28:04 -07:00
Gary Wong
0df3dfab82 Ensure p.w is initialised in noise demo. 2008-12-13 14:25:52 -07:00
Pekka Paalanen
f72848a09a Nouveau: move the definition of log2i() to header
Also make the type unsigned instead of signed, since negative
values do not make sense.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-12-13 23:24:39 +02:00
Alan Hourihane
079116e6a4 Merge commit 'origin/master' into gallium-0.2 2008-12-12 23:02:13 +00:00
Alan Hourihane
a725a8e27a mesa: move declaration 2008-12-12 20:37:21 +00:00
Alan Hourihane
c828adc3f6 mesa: when we have interleaved arrays, check bounds for both
VBO's and user space objects
2008-12-12 20:35:59 +00:00
Patrice Mandin
6432d03c3d nouveau: remove useless NOUVEAU_BO_SWIZZLED flag, copy/paste nv40 work to swizzle textures 2008-12-12 17:22:41 +01:00
Roland Scheidegger
fd2492d244 gallium: fixes for srgb, new srgb formats
add some more srgb texture formats, including compressed ones
various fixes relating to srgb formats

issues: the util code for generating mipmaps will not handle srgb formats
        correctly (would need to use a linear->srgb conversion shader)
2008-12-12 05:12:55 +01:00
Roland Scheidegger
5bd093bd7b mesa: fixes for srgb, new srgb formats
add some more srgb texture formats, including compressed ones
various fixes relating to srgb formats

issues: _mesa_get_teximage is completely broken for srgb textures,
        both for non-compressed ones (swizzling) and compressed ones
        (shouldn't do standard-to-linear conversion)
        texelFetch function may be broken for little or big endian
        (or both...)
2008-12-12 05:12:48 +01:00
Xiang, Haihao
8b69c42b35 intel: check for null texture. (fix #13902) 2008-12-12 10:02:05 +08:00
Alan Hourihane
9106a18f46 gallium: catch vertex overflow higher up 2008-12-11 15:10:55 +00:00
Xiang, Haihao
c8b505d826 i915: fallback for cube map texture.
The i915 (and related graphics cores) only support TEXCOORDMODE_CLAMP and
TEXCOORDMODE_CUBE when using cube map texture coordinates, so fall back to
software rendering for other modes to avoid potential gpu hang issue. This
fixes scorched3d issue on 945GM(see bug 14539).
2008-12-11 14:03:00 +08:00
Brian Paul
ce3436795c gallium: added missing brace to fix broken build 2008-12-10 18:21:40 -07:00
Brian Paul
0c31661e73 Merge commit 'origin/gallium-0.1' into gallium-0.2 2008-12-10 18:11:31 -07:00
Brian Paul
d0bc5293d6 gallium: added draw_set_mrd() function to fix polygon offset
The Minimum Resolvable Depth factor depends on the driver and can't just
be computed from the number of Z buffer bits.
Glean's polygon offset test now passes with softpipe.
Still need to determine the MRD factor for other gallium drivers, if they use
the draw module's polygon offset stage...
2008-12-10 18:06:44 -07:00
Brian Paul
8137da952b gallium: only mark back color buffer surfaces as undefined after swapbuffers
Marking all surfaces as undefined was wrong and cause some glean failures
because glReadPixels was used after SwapBuffers.
2008-12-10 18:06:38 -07:00
Brian Paul
99b862cd77 gallium: restore default_depth_bits() call in xlib winsys
This was accidentally disabled in a long-ago commit.
2008-12-10 18:06:30 -07:00
Alan Hourihane
b716de4779 gallium: change 65535 to UNDEFINED_VERTEX_ID 2008-12-10 20:21:19 +00:00
Keith Whitwell
e1645313be mesa: more trivial tests 2008-12-10 12:53:17 +00:00
Keith Whitwell
50beb86ce3 util: new funcs for triming/validating primitives 2008-12-10 12:52:07 +00:00
Keith Whitwell
7519107a97 draw: add const qualifiers 2008-12-10 12:52:06 +00:00
Alan Hourihane
a8e7852b05 gallium: more vertex count checks 2008-12-10 12:02:24 +00:00
Alan Hourihane
e3f5370d63 gallium: temporary check for > 65535 vertices 2008-12-10 11:30:46 +00:00
Guillaume Melquiond
3b9bc821e1 tnl: Fix zeroing of the 3ub part of a 3ub+1ub attrib pair in SSE.
Bug #16520.
2008-12-09 13:18:02 -08:00
Guillaume Melquiond
b66495a0d9 tnl: Optimize SSE load[23]f_1 since they don't need the identity swizzle.
SSE movss from memory zeroes out everything above the destination dword, so
we get the (a, 0) or (a, 0, 0) result that these functions needed.

Bug #16520.
2008-12-09 13:17:48 -08:00
Guillaume Melquiond
6e29a3c8e2 tnl: Fix typo that resulted in fallback from SSE for EMIT_3UB_3F_RGB/BGR.
Bug #16520
2008-12-09 11:42:24 -08:00
Guillaume Melquiond
d507cd749b tnl: Avoid undefined input value use in insert_3f_viewport_2().
Bug #16520.
2008-12-09 09:29:08 -08:00
Alan Hourihane
608e14c5b2 Merge commit 'origin/master' into gallium-0.2 2008-12-09 16:17:57 +00:00
Alan Hourihane
ee0735fa2d Merge commit 'origin/gallium-0.1' into gallium-0.2 2008-12-09 16:17:45 +00:00
José Fonseca
51d9642f74 python/retrace: Dump indices too. 2008-12-09 19:37:25 +09:00
José Fonseca
2ce2a40a73 gallium: Abort by default on windows user space. 2008-12-09 19:35:52 +09:00
Pierre Willenbrock
a0d5c3cfe6 intel: Require the right amount of space in glBitmap blit acceleration.
This leads to problems when the batchbuffer is flushed, but the bitmap
data could not fit into it.
2008-12-08 14:06:51 -08:00
Alan Hourihane
e8a1b31ddf fix conflict breakage 2008-12-08 15:03:29 +00:00
Alan Hourihane
33a1f495d4 Merge commit 'origin/master' into gallium-0.2
Conflicts:

	progs/glsl/Makefile
2008-12-08 14:29:50 +00:00
José Fonseca
d26a43f6c6 python/retrace: Dump vertex buffer contents. 2008-12-08 17:26:02 +09:00
Pekka Paalanen
bcd5dda435 nouveau: make nv20 use NV{20,25}TCL objects
Up till now, nv20 driver has been using NV10TCL, and being
really an nv10 driver. That has changed.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-12-07 22:33:02 +02:00
Eric Anholt
f849d364c2 mesa: Fix GenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB).
The ctx->Driver.GenerateMipmap() hook only expects cubemap face enums, not
CUBE_MAP_ARB, so walk all faces when we encounter that.  Fixes oglconform
fbo.c segfault with both swrast and i965 drivers.
2008-12-06 22:41:52 -08:00