Commit graph

20107 commits

Author SHA1 Message Date
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
Brian Paul
a9475cc240 mesa: use IFLOOR(x) instead of (int) FLOORF(x) 2008-12-12 18:03:48 -07:00
Brian Paul
3b61e9c6e6 mesa: place glsl constant arrays in constant memory
For example, a declaration like
   const float[3] xxx = float[3](1.1, 2.2, 3.3);
will place the array in the constant buffer whereas a regular, non-const array
would be placed in the temporary register file.
Next up: do the same thing for uniform arrays.
2008-12-12 18:00:47 -07:00
Brian Paul
0da44c62cc mesa: remove old size=4 limit 2008-12-12 18:00:19 -07:00
Brian Paul
d4be09fb2b mesa: code clean-up in glsl compiler 2008-12-12 16:20:31 -07:00
Brian Paul
240e211c71 mesa: remove unneeded swizzle init code in glsl compiler 2008-12-12 16:02:31 -07:00
Alan Hourihane
079116e6a4 Merge commit 'origin/master' into gallium-0.2 2008-12-12 23:02:13 +00:00
Brian Paul
4d49fc83f1 mesa: disable glsl debug output 2008-12-12 15:34:58 -07:00
Brian Paul
81253be334 mesa: remove unused varpool code in glsl compiler 2008-12-12 15:11:08 -07:00
Brian Paul
5c0c5e5af9 mesa: basic array constructors work now
For example: float[3] xxx = float[3](1.1, 2.2, 3.3);

Optimizations for const-qualified arrays next.
2008-12-12 15:07:21 -07:00
Brian Paul
c20d00f04b mesa: copy array_len in slang_fully_specified_type_copy() 2008-12-12 15:01:00 -07:00
Brian Paul
9016331d0f mesa: remove incorrect array_len assignment 2008-12-12 15:00:06 -07: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
Brian Paul
87a00959ba mesa: array size fix in _slang_typeof_operation() 2008-12-12 13:18:30 -07:00
Brian Paul
8571401d7d mesa: fix some more GLSL 1.20 array things.
Function that return arrays should work now.
2008-12-12 13:05:29 -07:00
Keith Whitwell
3a5d260cb1 gallium: fix refcount bug introduced in eb20e2984 2008-12-12 18:34:49 +00:00
Keith Whitwell
56f36ed166 Merge branch 'no-validate' into gallium-0.1 2008-12-12 17:41:49 +00:00
Brian Paul
d5367622a3 mesa: more glsl function renaming 2008-12-12 10:32:56 -07:00
Brian Paul
b4019483de mesa: use _slang_alloc() 2008-12-12 10:29:15 -07:00
Brian Paul
456a4e274f mesa: glsl compiler function renaming 2008-12-12 10:22:47 -07:00
Brian Paul
9a174ef409 mesa: more glsl type/function movement 2008-12-12 10:17:58 -07:00
Brian Paul
aeeb9bca27 mesa: move some glsl compiler functions to different files to be more consistant 2008-12-12 10:11:41 -07:00
Brian Paul
ea9dc3879f mesa: move _slang_locate_function() to different file 2008-12-12 10:03:31 -07:00
Brian Paul
19ca2908be mesa: remove unused fixup table code in glsl compiler 2008-12-12 09:58:18 -07:00
Keith Whitwell
d2c2e9316d gallium: avoid mapping same vertex buffer in subsequent frames
Quite a few util modules were maintaining a single vertex buffer over multiple
frames, and potentially reusing it in subsequent frames.  Unfortunately that
would force us into syncrhonous rendering as the buffer manager would be
forced to wait for the previous rendering to complete prior to allowing the
map.

This resolves that issue, but requires the state tracker to issue a few new
flush() calls at the end of each frame.
2008-12-12 16:57:39 +00:00
Keith Whitwell
eb20e2984e st: reduce unnecessary calls to pipe->set_vertex_buffers() 2008-12-12 16:57:38 +00:00
Keith Whitwell
8627a14ec8 st: move feedback draw function to new file 2008-12-12 16:57:38 +00:00
Keith Whitwell
ec007dbe0f st: don't unilaterally ABS the argument to RSQ 2008-12-12 16:57:38 +00:00
Brian Paul
ade777ea1b mesa: checkpoint: GLSL 1.20 array constructors 2008-12-12 09:56:13 -07: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
Keith Whitwell
aef455c4a7 Revert "pipebuffer: Implement proper buffer validation."
This reverts commit a6d866f72c.
2008-12-12 12:05:39 +00:00
Keith Whitwell
9b3bce6bed Revert "pipebuffer: Ondemand buffer manager."
This reverts commit 17849eafaa.
2008-12-12 12:05:30 +00:00
Keith Whitwell
71051f1f40 Revert "pipebuffer: Fix buffer overflow."
This reverts commit 55839ae064.
2008-12-12 12:05:21 +00:00
José Fonseca
d725537dba glut: MinGW portability fixes.
Still, it doesn't run as well as the glut binaries...
2008-12-12 16:06:42 +09:00
José Fonseca
e9e43321ee gdi: Reimplement using the WGL statetracker. 2008-12-12 16:06:34 +09:00
José Fonseca
638e942959 mesa: Bring in new mesa sub-statetracker.
Some code cleanup is still in order.
2008-12-12 16:06:28 +09: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
José Fonseca
500b304463 scons: Build progs.
Just demos and trivial dirs for starters.

Conflicts:

	.gitignore
2008-12-12 12:37:21 +09:00
Brian Paul
1737f2dbdd mesa: consolidate variable declaration initializer code for globals too 2008-12-11 19:34:43 -07:00
Brian Paul
2760bca1e1 mesa: move variable initializer IR generation into _slang_gen_var_decl()
More code consolidation coming...
2008-12-11 19:28:22 -07:00