Brian Paul [Fri, 14 Aug 2009 16:41:03 +0000 (10:41 -0600)]
mesa: minor error string changes
Keith Whitwell [Fri, 14 Aug 2009 16:56:33 +0000 (17:56 +0100)]
st/xlib: reduce the proliferation of GLX context types
Now there is just a single, struct __GLXcontextRec, which is the
GLXContext typedef has already been defined as a pointer to. I
believe this is the intended usage, that GLX implementations should
define that struct as they require.
Merge the two previous structs into one and get rid of the
no-longer-necessary type casts and sub-classing.
Keith Whitwell [Fri, 14 Aug 2009 12:41:57 +0000 (13:41 +0100)]
st/dri: remove unused dummyContext value
Christoph Bumiller [Fri, 14 Aug 2009 16:23:55 +0000 (18:23 +0200)]
nv50: fix mipmap offsets and tiling
The hardware expects a texture's tile mode to change with
the mipmap level.
Also, only multiply by block size once to obtain size.
Christoph Bumiller [Fri, 14 Aug 2009 16:16:46 +0000 (18:16 +0200)]
nv50: make sure we don't re-emit outdated scissor state
Since we don't turn off scissors, we need to update the
stateobj when the framebuffer size changes.
Christoph Bumiller [Fri, 14 Aug 2009 16:06:24 +0000 (18:06 +0200)]
nv50: make use of the y-origin switch
Now that we know how to make the hardware have y-coordinate origin
top, we can get rid of all the inversion introduced earlier.
Brian Paul [Fri, 14 Aug 2009 15:00:15 +0000 (09:00 -0600)]
docs: document new --with-max-width/height config options
Tom Fogal [Fri, 14 Aug 2009 01:51:57 +0000 (19:51 -0600)]
Add a FAQ about internal buffer sizes.
Tom Fogal [Fri, 14 Aug 2009 01:40:30 +0000 (19:40 -0600)]
Add configure options for MAX_WIDTH/HEIGHT.
This adds two --with configure options for setting defines for
MAX_WIDTH and MAX_HEIGHT. It's conceivably just as easy to define
these in CFLAGS manually, but this way users don't need to know
about internal Mesa details.
Patch updated by BrianP to set DEFINES, not CFLAGS.
Tom Fogal [Fri, 14 Aug 2009 01:23:54 +0000 (19:23 -0600)]
Allow external settings of MAX_WIDTH/HEIGHT.
Conditionalize MAX_WIDTH / MAX_HEIGHT defines so that users can
set them via CFLAGS.
Tobias Doerffel [Fri, 14 Aug 2009 14:50:43 +0000 (08:50 -0600)]
intel: in intel_context struct use typedef for sarea struct
Using drm_i915_sarea_t instead of struct drm_i915_sarea seems to be
a common standard now, therefore fix it also in intel_context
structure. Additionally this silences a compiler warning:
intel_swapbuffers.c: In function `intelFixupVblank':
intel_swapbuffers.c:48: warning: initialization from incompatible pointer type
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
Thierry Vignaud [Fri, 14 Aug 2009 14:16:35 +0000 (08:16 -0600)]
mesa: make sure r300/compiler/ sources are included in tarball
Chia-I Wu [Fri, 14 Aug 2009 05:33:48 +0000 (13:33 +0800)]
st/vega: Add more symbols defined by mesa/st.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Christoph Bumiller [Fri, 14 Aug 2009 13:26:58 +0000 (15:26 +0200)]
nv50: fix typo in REALLOC's 2nd argument in ctor_immd
Alex Deucher [Fri, 14 Aug 2009 05:33:45 +0000 (01:33 -0400)]
r600: emit SURFACE_BASE_UPDATE on depth base updates on rv6xx
Dave Airlie [Fri, 14 Aug 2009 00:03:51 +0000 (10:03 +1000)]
glsl: re-write Makefile after I called it bad.
Brian Paul [Thu, 13 Aug 2009 22:03:01 +0000 (16:03 -0600)]
progs/glsl: added multitex.shtest config file
Brian Paul [Thu, 13 Aug 2009 22:02:24 +0000 (16:02 -0600)]
progs/glsl: set generic vertex attribute values
Brian Paul [Thu, 13 Aug 2009 21:53:49 +0000 (15:53 -0600)]
progs/glsl: add type field to shtest config files
Plus, texture loading.
Brian Paul [Thu, 13 Aug 2009 21:06:28 +0000 (15:06 -0600)]
mesa: added *.shtest files to demo tarball
Dave Airlie [Thu, 13 Aug 2009 22:35:49 +0000 (08:35 +1000)]
glsl/tests: skinning.o
worst Makefile ever. not sure what is going on here, hopefully
this fixes tinderbox
Alex Deucher [Thu, 13 Aug 2009 21:55:42 +0000 (17:55 -0400)]
r600: move non-surface related cb state to general state
Alex Deucher [Thu, 13 Aug 2009 21:29:24 +0000 (17:29 -0400)]
r600: move non-surface related depth state to general state
RALOVICH, Kristóf [Wed, 12 Aug 2009 10:41:22 +0000 (12:41 +0200)]
glx: indent -br -i3 -npcs --no-tabs
Some manual intervention applied since XEXT_* and other macro magic
fooled indent. Auto generated files were also skipped.
Brian Paul [Thu, 13 Aug 2009 18:53:20 +0000 (12:53 -0600)]
progs/util: ignore pre-defined uniforms in SetUniformValues()
Brian Paul [Thu, 13 Aug 2009 18:52:13 +0000 (12:52 -0600)]
progs/glsl: new shtest program, a simple shader test harness app
This commit includes some sample config files (*.shtest)
Brian Paul [Thu, 13 Aug 2009 18:43:09 +0000 (12:43 -0600)]
glsl: fix incorrect attribute size
Brian Paul [Thu, 13 Aug 2009 18:42:52 +0000 (12:42 -0600)]
tnl: if NAN_CHECK is enabled, also assert that pos.x != 0
Brian Paul [Thu, 13 Aug 2009 16:29:15 +0000 (10:29 -0600)]
mesa: s/assert/ASSERT/ in _mesa_reference_texobj()
We want the no-op ASSERT for non-debug builds.
Brian Paul [Thu, 13 Aug 2009 16:18:50 +0000 (10:18 -0600)]
mesa: rework error check in glGetTexLevelParameter(), remove tex_image_dimensions()
Brian Paul [Thu, 13 Aug 2009 16:16:59 +0000 (10:16 -0600)]
mesa: if maxLevels==0, target is invalid
Brian Paul [Thu, 13 Aug 2009 16:14:13 +0000 (10:14 -0600)]
mesa: add extension checks in _mesa_max_texture_levels()
Brian Paul [Thu, 13 Aug 2009 16:01:38 +0000 (10:01 -0600)]
mesa: minor clean-ups in bumpmap functions
Brian Paul [Thu, 13 Aug 2009 15:55:34 +0000 (09:55 -0600)]
mesa: use _mesa_get_current_tex_unit() in more places
Brian Paul [Thu, 13 Aug 2009 15:46:42 +0000 (09:46 -0600)]
mesa: refactor: move _mesa_is_color/depth/stencil_format() helpers to image.c
Brian Paul [Thu, 13 Aug 2009 15:38:39 +0000 (09:38 -0600)]
mesa: move _mesa_Get[Compressed]TexImage() to texgetimage.c
All the glGetTexImage code is in one file now.
Brian Paul [Tue, 11 Aug 2009 21:46:46 +0000 (15:46 -0600)]
mesa: short-circuit no-change in _mesa_DepthRange()
Michel Dänzer [Thu, 13 Aug 2009 18:24:09 +0000 (20:24 +0200)]
st/dri: Add support for GLX_EXT_texture_from_pixmap with direct rendering.
Michel Dänzer [Thu, 13 Aug 2009 16:46:53 +0000 (18:46 +0200)]
gallium/drm: Handle circular dependencies in the auxiliary libraries with make.
Michel Dänzer [Thu, 13 Aug 2009 16:46:53 +0000 (18:46 +0200)]
st/xorg: Fix DRI2 CopyRegion hook.
Use GC CopyArea op for proper translation and clipping, and throttle full
buffer swaps / frontbuffer flushes.
Keith Whitwell [Thu, 13 Aug 2009 16:22:16 +0000 (17:22 +0100)]
tgsi: add simple facility for releasing and reusing temporaries
Keith Whitwell [Thu, 13 Aug 2009 16:20:04 +0000 (17:20 +0100)]
tgsi: rename ureg src/dest converters
Also fix a typo in ureg_src().
José Fonseca [Thu, 13 Aug 2009 15:33:50 +0000 (16:33 +0100)]
draw: Remove unused variable.
José Fonseca [Thu, 13 Aug 2009 15:32:51 +0000 (16:32 +0100)]
scons: Handle Circular dependencies in the libraries.
Keith Whitwell [Thu, 13 Aug 2009 14:57:23 +0000 (15:57 +0100)]
Merge branch 'mesa_7_5_branch'
Keith Whitwell [Thu, 13 Aug 2009 14:54:10 +0000 (15:54 +0100)]
draw: cope with more primitives in draw_pipeline_run
This previously was used only for decomposed (POINT/LINE/TRI) primitives,
but for some time a full range of primitives could end up in here.
Fixes trivial/lineloop-clip on softpipe, among others.
(cherry picked from commit
87cd8a3b8a2407b30916be418ff2f95dfea5d2ad)
Keith Whitwell [Thu, 13 Aug 2009 13:28:01 +0000 (14:28 +0100)]
tgsi: turn off debugging
Keith Whitwell [Thu, 13 Aug 2009 13:27:42 +0000 (14:27 +0100)]
tgsi: use REALLOC for growing token pool
Keith Whitwell [Thu, 13 Aug 2009 13:26:50 +0000 (14:26 +0100)]
util: silence warnings for third REALLOC argument
Our fallback realloc path requires an old_size argument, but the posix
varient doesn't need this. Add some code to avoid gcc unused variable
warnings for this extra argument.
Keith Whitwell [Thu, 13 Aug 2009 12:42:42 +0000 (13:42 +0100)]
util: remove unneeded includes
Keith Whitwell [Thu, 13 Aug 2009 11:46:32 +0000 (12:46 +0100)]
util: convert u_simple_shaders to use tgsi_ureg
Much nicer now.
Keith Whitwell [Thu, 13 Aug 2009 11:38:58 +0000 (12:38 +0100)]
tgsi: add tgsi_ureg, a simplified tgsi shader builder
This is modelled on the nice & easy-to-use facilities we had
for building shaders in mesa, eg. in texenvprogram.c and friends.
Key points include pass-by-value register structs that can be manipulated
in a functional style, eg:
negate(swizzle(reg, X,X,X,X))
and per-opcode instruction functions, eg:
emit_MOV( p, writemask(dst, 0x1), negate(src));
and similar.
Additionally, the interface allows mixed emit of instructions and decls,
which are sorted out internally to obey TGSI ordering.
Immediates may be emitted at any time and are scanned against existing
immediates to try and reduce redundancy.
Not all TGSI functionality is accessible through this interface, but
most or all of what mesa uses should be.
Xiang, Haihao [Thu, 13 Aug 2009 10:42:52 +0000 (18:42 +0800)]
i965: fix cube map on IGDNG
Brian Paul [Thu, 13 Aug 2009 02:37:34 +0000 (20:37 -0600)]
glsl: remove duplicate frag input entry
Brian Paul [Thu, 13 Aug 2009 02:32:41 +0000 (20:32 -0600)]
Merge branch 'new-frag-attribs'
This branch introduces new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment
program inputs for GLSL gl_FrontFacing and gl_PointCoord. Before, these
attributes were packed with the FOG attribute. That made things
complicated elsewhere.
Brian Paul [Wed, 12 Aug 2009 23:25:49 +0000 (17:25 -0600)]
progs/glsl: change uniform_info::type field to use GLSL vector types
Brian Paul [Wed, 12 Aug 2009 22:17:18 +0000 (16:17 -0600)]
demos: call SetUniformValues()
Brian Paul [Wed, 12 Aug 2009 21:43:50 +0000 (15:43 -0600)]
mesa: const qualifiers
Brian Paul [Wed, 12 Aug 2009 21:42:51 +0000 (15:42 -0600)]
vbo: use _mesa_is_bufferobj()
Brian Paul [Wed, 12 Aug 2009 19:53:56 +0000 (13:53 -0600)]
demos: rename InitUniforms() to SetUniformValues()
And call new PrintUniforms() in demos.
Brian Paul [Wed, 12 Aug 2009 19:50:26 +0000 (13:50 -0600)]
progs/util: added more shader utility functions
Brian Paul [Wed, 12 Aug 2009 19:46:16 +0000 (13:46 -0600)]
mesa: use _mesa_is_bufferobj()
Brian Paul [Wed, 12 Aug 2009 19:46:03 +0000 (13:46 -0600)]
mesa: use _mesa_is_bufferobj()
Brian Paul [Wed, 12 Aug 2009 19:44:43 +0000 (13:44 -0600)]
mesa: new _mesa_is_bufferobj() function
Tests if the given buffer object is a user-created, non-default buffer object.
Use this instead of testing bufferobj->Name != 0.
Eric Anholt [Wed, 12 Aug 2009 20:49:06 +0000 (13:49 -0700)]
i965: Make the cube mapping RCP use a writemask.
Fixes cube mapping since the scalar changes.
Eric Anholt [Wed, 12 Aug 2009 20:17:15 +0000 (13:17 -0700)]
i965: Allocate destination registers for GLSL TEX instructions contiguously.
This matches brw_wm_pass*.c behavior, and fixes the norsetto shadow demo.
Bug #19489
Eric Anholt [Wed, 12 Aug 2009 20:00:23 +0000 (13:00 -0700)]
i965: drop dead scalar handling in GLSL.
Eric Anholt [Wed, 12 Aug 2009 19:54:43 +0000 (12:54 -0700)]
i965: Correct brw_wm_nr_args for WM_DELTAXY and WM_PIXELXY.
Eric Anholt [Wed, 12 Aug 2009 01:13:57 +0000 (18:13 -0700)]
i965: Drop GLSL ABS code, which is translated away in brw_wm_fp.
Eric Anholt [Tue, 11 Aug 2009 23:40:20 +0000 (16:40 -0700)]
i965: Drop code for emitting OPCODE_SUB, since brw_wm_fp.c makes it an ADD.
Eric Anholt [Tue, 11 Aug 2009 23:02:54 +0000 (16:02 -0700)]
i965: Store the dispatch width in the WM compile struct.
I'll be using this in merging brw_wm_emit.c and brw_wm_glsl.c
Eric Anholt [Wed, 12 Aug 2009 19:26:19 +0000 (12:26 -0700)]
i965: Handle scalar result swizzling in shared GLSL/non-GLSL code.
This is preparation for merging of brw_wm_glsl.c and
brw_wm_emit.c, and glsl.c doesn't swizzle channel results around.
Eric Anholt [Wed, 12 Aug 2009 18:36:07 +0000 (11:36 -0700)]
i965: Flag ARL-using programs as requiring brw_wm_glsl.c
This doesn't fix the glean testcase, but I guess it provides hope.
Eric Anholt [Wed, 12 Aug 2009 18:33:11 +0000 (11:33 -0700)]
i965: Remove some unused WM opcode args.
Eric Anholt [Tue, 11 Aug 2009 21:48:03 +0000 (14:48 -0700)]
i965: Avoid re-uploading the index buffer when we don't need to.
No performance difference proven at 95% confidence with my GLSL demo (n=10).
Alex Deucher [Wed, 12 Aug 2009 19:38:45 +0000 (15:38 -0400)]
r600: fix warning
Alex Deucher [Wed, 12 Aug 2009 19:34:24 +0000 (15:34 -0400)]
r600: state cleanups
Alex Deucher [Wed, 12 Aug 2009 18:49:07 +0000 (14:49 -0400)]
r600: clean up Create/DestroyContext
Pauli Nieminen [Tue, 4 Aug 2009 11:42:20 +0000 (14:42 +0300)]
r200: Prevent TexGenMatrix from leaking when destroying r200 context.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
Brian Paul [Wed, 12 Aug 2009 19:16:41 +0000 (13:16 -0600)]
vbo: fix incorrect pointer
Brian Paul [Wed, 12 Aug 2009 18:31:57 +0000 (12:31 -0600)]
glsl: add gl_Vertex, gl_Normal, etc to list of active attributes
If a vertex shader uses gl_Vertex, gl_Normal, etc, we need to include them
when the user queries the list of active attributes. Before this we were
just including the user-defined attributes.
Brian Paul [Wed, 12 Aug 2009 18:27:35 +0000 (12:27 -0600)]
glsl: move predefined shader input/output info/code to slang_builtin.c
This is a more logical place for this code.
Also add some functions for querying vertex shader input names, types, etc.
Eric Anholt [Tue, 11 Aug 2009 19:31:01 +0000 (12:31 -0700)]
vbo: Avoid extra validation of DrawElements.
This saves mapping the index buffer to get a bounds on the indices that
drivers just drop on the floor in the VBO case (cache win), saves a bonus
walk of the indices in the CheckArrayBounds case, and other miscellaneous
validation. On intel it's a particularly a large win (50-100% in my app)
because even though we let the indices stay in both CPU and GPU caches, we
still end up waiting for the GPU to be done with the buffer before reading
from it.
Drivers that want the min/max_index fields must now check index_bounds_valid
and use vbo_get_minmax_index before using them.
Eric Anholt [Wed, 12 Aug 2009 18:12:46 +0000 (11:12 -0700)]
radeon: Minor warnings cleanup.
Eric Anholt [Tue, 11 Aug 2009 19:59:09 +0000 (12:59 -0700)]
i965: Use _MaxElement instead of index-calculated min/max for VBO bounds.
Pauli Nieminen [Thu, 30 Jul 2009 17:17:29 +0000 (20:17 +0300)]
radeon: Add protection against recursive DRM locking.
Reference counting protects DRM lock call from recursive locking that would
cause hang. Code also adds optional debugging output for recursive call that
is compiled only if NDEBUG is not defined.
This code is not 100% thread safe because mesa doesn't include increment and
test atomic operation. There is built-in gcc functions but they are only
available from gcc 4.2.
Michel Dänzer [Wed, 12 Aug 2009 17:11:11 +0000 (19:11 +0200)]
st/xorg: Acquire/drop DRM master in order to work with multiple servers.
Brian Paul [Wed, 12 Aug 2009 16:30:40 +0000 (10:30 -0600)]
gallium/glx/xlib: main/ prefix on Mesa includes, remove -I$(TOP)/src/mesa/main/
Brian Paul [Wed, 12 Aug 2009 16:24:44 +0000 (10:24 -0600)]
gallium/glx/xlib: updated comments
Brian Paul [Wed, 12 Aug 2009 16:22:23 +0000 (10:22 -0600)]
gallium/glx/xlib: delete fakeglx.h
Brian Paul [Wed, 12 Aug 2009 16:22:13 +0000 (10:22 -0600)]
gallium/glx/xlib: rename fakeglx.c to glx_api.c
Brian Paul [Wed, 12 Aug 2009 16:20:53 +0000 (10:20 -0600)]
gallium/glx/xlib: delete glxapi.h
Brian Paul [Wed, 12 Aug 2009 16:19:59 +0000 (10:19 -0600)]
gallium/glx/xlib: rename fakeglx_fonts.c to glx_usefont.c
Brian Paul [Wed, 12 Aug 2009 15:57:18 +0000 (09:57 -0600)]
gallium/glx/xlib: rename glxapi.c to glx_getproc.c
Brian Paul [Wed, 12 Aug 2009 15:56:45 +0000 (09:56 -0600)]
gallium/glx/xlib: don't include fakeglx.h
Brian Paul [Wed, 12 Aug 2009 15:51:56 +0000 (09:51 -0600)]
gallium/glx/xlib: overhaul and simplification of the Gallium Xlib-based GLX
The old GLX dispatch table stuff isn't needed (same story for the Mesa/Xlib
driver). The intention of that code was being able to switch on the fly
between the real GLX library and the fake/Xlib-based emulation. That hasn't
been used in a long time.
Next up: some file renaming.
Cooper Yuan [Wed, 12 Aug 2009 09:39:18 +0000 (17:39 +0800)]
r600: A shader is bound that exports Z as a float into Red channel
Chia-I Wu [Mon, 10 Aug 2009 08:45:12 +0000 (16:45 +0800)]
egl: Use _eglAddAtExitCall to free thread infos and displays.
Thread infos and displays are usually not freed by applications. This
commit add atexit calls to free them.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 09:35:20 +0000 (17:35 +0800)]
egl: Add _eglAddAtExitCall.
Add a convenient wrapper to register atexit calls. Add mutex to
_eglGlobal along the way.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 08:37:28 +0000 (16:37 +0800)]
egl: Make _eglGlobal initialize statically.
Now that display and surface hash tables are moved out, _eglGlobal can
be initialized statically.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>