Commit graph

37818 commits

Author SHA1 Message Date
Corbin Simpson
e6ee4e1bdf glhd: Simple rasterizer checks.
From the documentation.
2010-06-23 11:34:51 -07:00
Corbin Simpson
666fdc01c4 id, glhd: Unbreak texturing.
Argfl.
2010-06-23 11:25:52 -07:00
Ian Romanick
0e59b2698a linker: Initial implementation of varying slot allocation 2010-06-23 11:24:26 -07:00
Ian Romanick
9342d269a4 linker: Limit attribute allocation to MAX_VERTEX_ATTRIBS 2010-06-23 11:24:26 -07:00
Ian Romanick
6984670f97 linker: Support matrix and array vertex inputs 2010-06-23 11:24:26 -07:00
Ian Romanick
0ad22cd1ce linker: Initial implementation of attribute slot allocation 2010-06-23 11:24:26 -07:00
Ian Romanick
a8ca9cbc69 Import some bits Mesa's mtypes.h 2010-06-23 11:24:26 -07:00
Ian Romanick
4485c5ae78 Import gl_program_parameter and gl_program_parameter_list types from Mesa 2010-06-23 11:24:26 -07:00
Ian Romanick
abee16e8cb linker: Store the par-linked per-stage shaders in the glsl_program 2010-06-23 11:24:26 -07:00
Ian Romanick
019a59b264 linker: Initial implementation of uniform slot allocation 2010-06-23 11:24:21 -07:00
Corbin Simpson
9526305834 glhd: Use an environment variable (GALAHAD) to enable. Off by default. 2010-06-23 11:06:42 -07:00
Ian Romanick
5edf6f98d8 Import gl_uniform and gl_uniform_list types from Mesa 2010-06-23 10:56:04 -07:00
Ian Romanick
8b80e9f9e3 ir_variable: Add query to get number of slots used by a variable 2010-06-23 10:56:04 -07:00
Ian Romanick
57bb893a46 glsl_type: Add method to get number of slots used by a type 2010-06-23 10:56:04 -07:00
Ian Romanick
13e10e43c3 linker: Document what remains to be done 2010-06-23 10:56:04 -07:00
Ian Romanick
ed0626ebc7 ir_variable: Set locations for shader built-in variables 2010-06-23 10:56:03 -07:00
Ian Romanick
69a079aee8 ir_variable: Track the location of uniforms, varings, attributes, etc. 2010-06-23 10:56:03 -07:00
Ian Romanick
371019248e linker: Initial implementation of interstage input / output validation 2010-06-23 10:56:03 -07:00
Ian Romanick
950ceb2bd6 ir_variable: Add method to get string representing interpolation qualifier 2010-06-23 10:56:03 -07:00
Ian Romanick
cc22c5a544 linker: Initial implementation of interstage uniform validation 2010-06-23 10:56:03 -07:00
Ian Romanick
1e8b7a714e ir_constant: Add method to determine if two constants have the same value 2010-06-23 10:56:03 -07:00
Eric Anholt
53e48d3f63 Fix multiple usage of an rvalue in constructor component splitting.
Store the thing in a variable and deref it for each swizzle if we have to.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-06-23 10:55:25 -07:00
Keith Whitwell
64682da8ab draw: don't try to precalculate the pipeline output primitive
We were previously calculating a value which was either the geometry
shader output primitive or the application's input primitive, and
passing that to the various front/middle/back components for use as
the ultimate rendering primtive.

Unfortunately, this was not correct -- if the vcache decomposition
path is active and geometry shaders are *not* active, we can end up
with a third primitive -- specifically the decomposed version of the
input primitive.

Rather than trying to precalculate this, just let the individual
components inform their successors about which primitive type they are
recieving.
2010-06-23 18:10:20 +01:00
Ian Romanick
865cf2d1f5 ir_validate: Use callback functionality in ir_hierarchical_visitor 2010-06-23 09:25:33 -07:00
Ian Romanick
7c09576a97 ir_hierarchical_visitor: Add generic callback functionality 2010-06-23 09:25:28 -07:00
Brian Paul
292eecca8c draw: mask off DRAW_PIPE_FLAG_MASK bits in prim decompose code
Any elt may potentially have flags bits set so mask off those bits
everywhere.

Fixes crashes with demos/gamma.c, redbook/polys.c, etc. but polygon
stippling is still broken.
2010-06-23 09:20:02 -06:00
Chia-I Wu
985c2fca10 egl: Add a test for MESA_EGL_NO_X11_HEADERS.
When the macro is defined, X11 headers will not be included.
2010-06-23 15:15:00 +08:00
Chia-I Wu
78d70ddbbd egl: Add support for EGL_MESA_drm_display.
The extension defines eglGetDRMDisplay that creates an EGLDisplay from a
DRM fd.  Calling eglCreateWindowSurace or eglCreatePixmapSurface with
such displays will generate EGL_BAD_NATIVE_WINDOW or
EGL_BAD_NATIVE_PIXMAP.
2010-06-23 15:14:59 +08:00
Chia-I Wu
f22665df95 egl: Introduce platform displays internally.
This commit introduces type-safe platform displays internally.  A
platform display consists of a generic pointer and an enum that
specifies the platform.

An EGLDisplay is created from a platform display.  Native displays
become platform displays whose platform is determined by
_eglGetNativePlatform().  Platform windows and pixmaps may also be
introduced if needed.
2010-06-23 15:14:59 +08:00
Corbin Simpson
7dc1cf19ac radeong: Disable Galahad for now; breaks texturing. 2010-06-23 00:11:42 -07:00
Corbin Simpson
ee2c6d748d id, glhd: Fix malloc/calloc of struct.
( >&)
2010-06-22 23:40:11 -07:00
Corbin Simpson
a6cc914874 glhd: Add query protection.
Not quite copied from r300g. This is slightly more API-compliant.
2010-06-22 23:11:01 -07:00
Corbin Simpson
aa451d509d glhd: Grab framebuffer state checks from r300g. 2010-06-22 23:00:44 -07:00
Corbin Simpson
3f758d4ed4 glhd: Grab resource_copy_region from r300g. 2010-06-22 22:49:13 -07:00
Corbin Simpson
de7b181e99 glhd: Grab is_format_supported warning from r300g. 2010-06-22 22:49:13 -07:00
Corbin Simpson
7d551eb03d glhd: Add glhd_warn for unconditional stderr output.
Design decision. Bad API errors should never be silenced.

Of course, you can always not use galahad.
2010-06-22 22:49:13 -07:00
Corbin Simpson
75612aa199 id, glhd: Fix segfault with misreferenced pipe member.
And remove the offending member to keep that from happening again.
2010-06-22 22:49:13 -07:00
Corbin Simpson
40faedfe7b targets, radeong: Add Galahad.
Currently unconditional and causes segfaults.
2010-06-22 22:49:13 -07:00
Corbin Simpson
2560978588 configure: Add galahad to default build. 2010-06-22 22:49:13 -07:00
Corbin Simpson
d3ad6fa579 gallium/drivers: Create Galahad from identity.
Galahad is a sanity-checking layer meant to replace the crufty and
scattered sanity checks inside drivers with a robust, non-silenceable,
useful set of warnings and errors that can be used to keep misbehaving
state trackers from going unnoticed.
2010-06-22 22:49:13 -07:00
Brian Paul
61ec205816 mesa: fix attachment error checking for glGetFramebufferAttachmentParameteriv()
This is a follow-on to commit 80dfec3e53.

The valid attachments for glGetFramebufferAttachmentParameteriv() depends
on whether we're querying the default FBO or a user-created FBO.
2010-06-22 21:55:51 -06:00
Marek Olšák
a20fa67448 r300/compiler: allow 1024 instructions in r5xx vertex shaders 2010-06-23 03:58:46 +02:00
Marek Olšák
dd90c3040e r300/compiler: allow 32 temporaries in vertex shaders 2010-06-23 03:57:27 +02:00
Marek Olšák
2f6b4187eb r300/compiler: emulate loops in vertex shaders
It is not perfect, but it is the best we got.
2010-06-23 03:55:20 +02:00
Jakob Bornecrantz
23a915e2cf gallium: Drop sw drm winsys
Last user went away
2010-06-23 03:43:52 +02:00
Jakob Bornecrantz
41e0f6bc2f i965g: Move bootstrap code to targets 2010-06-23 03:43:48 +02:00
Jakob Bornecrantz
0106be903a i965g: Rename winsys file 2010-06-23 03:20:45 +02:00
Jakob Bornecrantz
2b15e37348 i965g: Moved pci_id to winsys struct 2010-06-23 03:20:45 +02:00
Jakob Bornecrantz
bd739e9576 target-helpers: Add inline helpers 2010-06-23 03:20:40 +02:00
Eric Anholt
53cdb7e51d ir_validate: New pass for checking our invariants. 2010-06-22 18:18:30 -07:00