mesa.git
15 years agomesa: refine the error checking vbo_exec_DrawRangeElements()
Brian Paul [Mon, 21 Sep 2009 20:23:07 +0000 (14:23 -0600)]
mesa: refine the error checking vbo_exec_DrawRangeElements()

If the 'end' index is out of bounds issue a warning as before.  But instead
of just no-op'ing the draw call, examine the actual array indices to see
if they're OK.  If the max array index is out of bounds, issue another
warning and no-op the draw call.  Otherwise, draw normally.  This is a
debug build-only feature since it could impact performance.

This "fixes" the missing torus in the OGL Distilled / Picking demo.

15 years agomesa: make max_buffer_index() a non-static function
Brian Paul [Mon, 21 Sep 2009 20:07:35 +0000 (14:07 -0600)]
mesa: make max_buffer_index() a non-static function

15 years agoradeon: update buffer map/unmap code for changes introduced in 92033a9516942d7272ce4b...
Maciej Cencora [Sun, 20 Sep 2009 11:54:59 +0000 (13:54 +0200)]
radeon: update buffer map/unmap code for changes introduced in 92033a9516942d7272ce4bf36ecd422009bbaf60 and 822c7964819ca1fcc270880d4ca8b3de8a4276d0

15 years agomesa: add some debug info to teximage.c
Maciej Cencora [Sat, 19 Sep 2009 16:47:36 +0000 (18:47 +0200)]
mesa: add some debug info to teximage.c

15 years agor300: fix a typo
Maciej Cencora [Sat, 19 Sep 2009 16:46:51 +0000 (18:46 +0200)]
r300: fix a typo

15 years agor300: Zero-initialize register for NV_vertex_program
Nicolai Hähnle [Mon, 21 Sep 2009 10:50:33 +0000 (12:50 +0200)]
r300: Zero-initialize register for NV_vertex_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Fix handling of NV_vertex_program parameters
Nicolai Hähnle [Wed, 9 Sep 2009 17:56:57 +0000 (19:56 +0200)]
r300: Fix handling of NV_vertex_program parameters

The handling is a bit inefficient, unfortunately, but I don't want to make
any intrusive changes for Mesa 7.6.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Michel Dänzer [Mon, 21 Sep 2009 08:39:20 +0000 (10:39 +0200)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agointel: Fix crash in intel_flush().
Michel Dänzer [Mon, 21 Sep 2009 08:08:11 +0000 (10:08 +0200)]
intel: Fix crash in intel_flush().

Since commit 2921a2555d0a76fa649b23c31e3264bbc78b2ff5 ('intel: Deassociated
drawables from private context struct in intelUnbindContext'),
intel->driDrawable may be NULL in intel_flush().

15 years agoradeon: Fix legacy bo not to reuse dma buffers before refcount is 1.
Pauli Nieminen [Sun, 20 Sep 2009 19:24:35 +0000 (22:24 +0300)]
radeon: Fix legacy bo not to reuse dma buffers before refcount is 1.

This should help detecting possible memory leaks with dma buffers and prevent
possible visual corruption if data would be overwriten too early.

15 years agor300/compiler: Fix trig instructions in R300 fp
Nicolai Hähnle [Sun, 20 Sep 2009 18:40:03 +0000 (20:40 +0200)]
r300/compiler: Fix trig instructions in R300 fp

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agoradeon: Fix typo in variable name.
Pauli Nieminen [Sun, 20 Sep 2009 18:08:42 +0000 (21:08 +0300)]
radeon: Fix typo in variable name.

15 years agoradeon: Improve WARN_ONCE macro to appear as single statement.
Pauli Nieminen [Sun, 20 Sep 2009 17:07:35 +0000 (20:07 +0300)]
radeon: Improve WARN_ONCE macro to appear as single statement.

Do-while makes macro safe to be used with if and for constructions.

Also remove __LINE__ macro from variable name because scope is local to macro anyway.

15 years agoradeon: Fix "verts" debugging enable
Nicolai Hähnle [Sun, 20 Sep 2009 16:45:32 +0000 (18:45 +0200)]
radeon: Fix "verts" debugging enable

Copy'n'paste apparently prevented the RADEON_VERTS flag from being enabled.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Nicolai Hähnle [Sun, 20 Sep 2009 14:59:03 +0000 (16:59 +0200)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agomesa/st: Create front renderbuffer on the fly when supplied with a surface
Nicolai Hähnle [Sat, 12 Sep 2009 14:49:31 +0000 (16:49 +0200)]
mesa/st: Create front renderbuffer on the fly when supplied with a surface

Normally, the mesa/st would create a fake front buffer out of a
client-allocated surface.

In the DRI setting, however, st/dri provides a front buffer surface which is
created and maintained by the X server. Prefer to use this surface instead,
so that front buffer rendering and reading works correctly.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agomesa/st: Initialize format bits of framebuffer renderbuffers
Nicolai Hähnle [Sat, 12 Sep 2009 10:13:35 +0000 (12:13 +0200)]
mesa/st: Initialize format bits of framebuffer renderbuffers

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agodocs: Document new features in radeon/r200/r300 drivers
Nicolai Hähnle [Sun, 20 Sep 2009 14:46:58 +0000 (16:46 +0200)]
docs: Document new features in radeon/r200/r300 drivers

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Fix R300 fragment program regression introduced by 0723cd1...
Nicolai Hähnle [Sun, 20 Sep 2009 14:33:59 +0000 (16:33 +0200)]
r300/compiler: Fix R300 fragment program regression introduced by 0723cd1...

We obviously need to move the code addr register backwards because their may
be overlap.

This bug affected in particular the Compiz water plugin.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years ago[i965] add a missing header file
Zou Nan hai [Fri, 18 Sep 2009 08:04:41 +0000 (16:04 +0800)]
[i965] add a missing header file

15 years ago [i965] use intel_batchbuffer_flush to flush the clear
Zou Nan hai [Fri, 18 Sep 2009 05:29:28 +0000 (13:29 +0800)]
 [i965] use intel_batchbuffer_flush to flush the clear

15 years agomesa: fix clip plane, fog issues
Brian Paul [Thu, 17 Sep 2009 03:21:42 +0000 (21:21 -0600)]
mesa: fix clip plane, fog issues

15 years agoglx: Use initstate_r / random_r instead of corrupting global random number state
Ian Romanick [Wed, 16 Sep 2009 23:43:50 +0000 (16:43 -0700)]
glx: Use initstate_r / random_r instead of corrupting global random number state

Previously srandom and random were used.  This cause the global random
number generator state to be modified.  This caused problems for
applications that called srandom before calling into GLX.  By using
local state the global state is left unmodified.

This should fix bug #23774.

15 years agost/mesa: fix some incorrect branching/clean-up code in TexImage functions
Brian Paul [Wed, 16 Sep 2009 19:07:12 +0000 (13:07 -0600)]
st/mesa: fix some incorrect branching/clean-up code in TexImage functions

We need to be sure to call the _mesa_unmap_teximage_pbo() function if we
called _mesa_validate_pbo_teximage().

15 years agost/mesa: fix texture memory allocation bug
Brian Paul [Wed, 16 Sep 2009 18:57:26 +0000 (12:57 -0600)]
st/mesa: fix texture memory allocation bug

The following example caused an incorrect GL_OUT_OF_MEMORY error to be
raised in glTexSubImage2D:

   glTexImage2D(level=0, width=32, height=32, pixels=NULL);
   glTexImage2D(level=0, width=64, height=64, pixels=NULL);
   glTexSubImage2D(level=0, pixels!=NULL);

The second glTexImage2D() call needs to cause the first image to be
deallocated then reallocated at the new size.  This was not happening
because we were testing for pixels==NULL too early.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Wed, 16 Sep 2009 14:57:19 +0000 (07:57 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

Conflicts:
src/mesa/main/dlist.c

15 years agointel: Deassociated drawables from private context struct in intelUnbindContext
Ian Romanick [Wed, 16 Sep 2009 14:39:58 +0000 (07:39 -0700)]
intel: Deassociated drawables from private context struct in intelUnbindContext

The generic DRI infrastructure makes sure that __DRIcontextRec::driDrawablePriv
and __DRIcontextRec::driReadablePriv are set to NULL after unbinding a
context.  However, the intel_context structure keeps cached copies of
these pointers.  If these cached pointers are not NULLed and the
drawable is actually destroyed after unbinding the context (typically
by way of glXDestroyWindow), freed memory will be dereferenced in
intelDestroyContext.

This should fix bug #23418.

15 years agoi965: do a flush in clear, fix openarena render issue,
Zou Nan hai [Wed, 16 Sep 2009 05:25:46 +0000 (13:25 +0800)]
i965: do a flush in clear, fix openarena render issue,
      fd.o bug# 23857

15 years agodocs: glUniform functions are now compiled into display lists
Brian Paul [Tue, 15 Sep 2009 21:12:29 +0000 (15:12 -0600)]
docs: glUniform functions are now compiled into display lists

15 years agomesa: compile glUniformMatrix() functions into display lists
Brian Paul [Tue, 15 Sep 2009 21:10:29 +0000 (15:10 -0600)]
mesa: compile glUniformMatrix() functions into display lists

I believe this is the last of the shader-related functions that needed
display list treatment.

15 years agomesa: implement more glUniform display list functions
Brian Paul [Tue, 15 Sep 2009 20:56:55 +0000 (14:56 -0600)]
mesa: implement more glUniform display list functions

15 years agodocs: document glUseProgram display list fix
Brian Paul [Tue, 15 Sep 2009 20:38:52 +0000 (14:38 -0600)]
docs: document glUseProgram display list fix

15 years agomesa: compile glUniform4f() into display lists
Brian Paul [Tue, 15 Sep 2009 20:31:10 +0000 (14:31 -0600)]
mesa: compile glUniform4f() into display lists

Note: there are more glUniform functions to compile...

15 years agomesa: compile glUseProgram/glUseProgramObjectARB into display lists
Brian Paul [Tue, 15 Sep 2009 20:25:44 +0000 (14:25 -0600)]
mesa: compile glUseProgram/glUseProgramObjectARB into display lists

Fixes bug 23746

15 years agoMerge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Tue, 15 Sep 2009 20:13:35 +0000 (13:13 -0700)]
Merge commit 'origin/mesa_7_5_branch' into mesa_7_6_branch

15 years agoGLX: Complain when buggy applications call GLX 1.3 functions.
Ian Romanick [Tue, 15 Sep 2009 20:12:22 +0000 (13:12 -0700)]
GLX: Complain when buggy applications call GLX 1.3 functions.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Tue, 15 Sep 2009 15:45:18 +0000 (09:45 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agogl: restore some PFNGL typedefs
Brian Paul [Tue, 15 Sep 2009 15:36:31 +0000 (09:36 -0600)]
gl: restore some PFNGL typedefs

Commit d33c315d9e32584dea12cea683795b498a9f5eca removed a few too many
typedefs.  We need the typedefs in glext.h which are protected by #ifdef
GL_VERSION_1_2 but we can exclude the ones protected by
GL_VERSION_1_2_DEPRECATED.

15 years agoprogs/vp: print program and error info when program does not compile
Brian Paul [Mon, 14 Sep 2009 23:48:17 +0000 (17:48 -0600)]
progs/vp: print program and error info when program does not compile

15 years agoglsl: added some link debug code (disabled)
Brian Paul [Mon, 14 Sep 2009 23:32:03 +0000 (17:32 -0600)]
glsl: added some link debug code (disabled)

15 years agodocs: document linker/preprocessor bug fix
Brian Paul [Mon, 14 Sep 2009 23:27:47 +0000 (17:27 -0600)]
docs: document linker/preprocessor bug fix

15 years agoglsl: remove extra #version directives from concatenated shader sources
Brian Paul [Mon, 14 Sep 2009 23:24:25 +0000 (17:24 -0600)]
glsl: remove extra #version directives from concatenated shader sources

When we concatenate shaders to do our form of poor-man linking, if there's
multiple #version directives, preprocessing fails.  This change disables
the extra #version directives by changing the first two chars to //.

This should help with some Wine issues such as bug 23946.

15 years agogallium: Add Mac OS to pipe/p_thread.h.
Vinson Lee [Mon, 14 Sep 2009 17:50:48 +0000 (11:50 -0600)]
gallium: Add Mac OS to pipe/p_thread.h.

Mac OS also has POSIX threads.

15 years agoconfigure: fix comment
Thierry Vignaud [Mon, 14 Sep 2009 17:48:51 +0000 (11:48 -0600)]
configure: fix comment

15 years agoUse CFLAGS as HOST_CFLAGS by default
Dan Nicholson [Sat, 12 Sep 2009 16:27:01 +0000 (09:27 -0700)]
Use CFLAGS as HOST_CFLAGS by default

Unless we're cross compiling, the HOST_CFLAGS should be the same as the
normal CFLAGS. This allows the x86 and x86_64 asm to be built correctly
with a native compiler using -m32/-m64.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agodocs: mention the new Gallium llvmpipe driver
Brian Paul [Fri, 11 Sep 2009 19:43:51 +0000 (13:43 -0600)]
docs: mention the new Gallium llvmpipe driver

15 years agollvmpipe: asst fixes for 'make linux-llvmpipe'
Brian Paul [Fri, 11 Sep 2009 19:39:14 +0000 (13:39 -0600)]
llvmpipe: asst fixes for 'make linux-llvmpipe'

15 years agomesa: raise GL_INVALID_ENUM not GL_INVALID_VALUE for glTexParamter errors
Vinson Lee [Fri, 11 Sep 2009 14:04:37 +0000 (08:04 -0600)]
mesa: raise GL_INVALID_ENUM not GL_INVALID_VALUE for glTexParamter errors

Signed-off-by: Brian Paul <brianp@vmware.com>
15 years agoradeon: Remove structure allocation from iterator variable.
Pauli Nieminen [Thu, 10 Sep 2009 22:28:34 +0000 (01:28 +0300)]
radeon: Remove structure allocation from iterator variable.

dma_bo varaible is only used for iterating so allocating memory for it only
causes memory leaks.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Thu, 10 Sep 2009 21:40:26 +0000 (15:40 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

15 years agointel: disable intel_stencil_drawpixels() for now
Brian Paul [Thu, 10 Sep 2009 21:34:34 +0000 (15:34 -0600)]
intel: disable intel_stencil_drawpixels() for now

It doesn't work reliably even when all the prerequisite checks are made.

15 years agodocs: document Gallium glDrawPixels(GL_STENCIL_INDEX) fix
Brian Paul [Thu, 10 Sep 2009 20:15:07 +0000 (14:15 -0600)]
docs: document Gallium glDrawPixels(GL_STENCIL_INDEX) fix

15 years agosoftpipe: minor indentation fix
Brian Paul [Thu, 10 Sep 2009 20:14:18 +0000 (14:14 -0600)]
softpipe: minor indentation fix

15 years agosoftpipe: set dirty_render_cache in softpipe_clear()
Brian Paul [Thu, 10 Sep 2009 20:11:36 +0000 (14:11 -0600)]
softpipe: set dirty_render_cache in softpipe_clear()

This fixes a bug seen when doing a glDrawPixels(GL_STENCIL_INDEX) right
after a glClear().  The check-for-flush test was failing because we
didn't set the dirty_render_cache flag in softpipe_clear().  So we saw
stale data when we mapped the stencil buffer.

15 years agodocs: initial 7.5.2 release notes page
Brian Paul [Thu, 10 Sep 2009 18:50:08 +0000 (12:50 -0600)]
docs: initial 7.5.2 release notes page

15 years agoFix merge fail
Ian Romanick [Thu, 10 Sep 2009 18:44:53 +0000 (11:44 -0700)]
Fix merge fail

One of the conflicst from this merge was missed:

commit 0c309bb494b6ee1c403442d1207743f749f95b6e
Merge: c6c44bf d27d659
Author: Brian Paul <brianp@vmware.com>
Date:   Wed Sep 9 08:33:39 2009 -0600

15 years agotgsi: use new tgsi_call_record to handle execution mask stacks
Brian Paul [Thu, 10 Sep 2009 18:44:28 +0000 (12:44 -0600)]
tgsi: use new tgsi_call_record to handle execution mask stacks

This fixes some issues when "return"ing from nested loops/conditionals.

15 years agomesa: need to set all stencil bits to 0 before setting the 1 bits
Brian Paul [Thu, 10 Sep 2009 16:17:07 +0000 (10:17 -0600)]
mesa: need to set all stencil bits to 0 before setting the 1 bits

Plus, check for pixel transfer stencil index/offset.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Ian Romanick [Thu, 10 Sep 2009 18:24:56 +0000 (11:24 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

Conflicts:
src/mesa/drivers/dri/intel/intel_context.c

15 years agoi965: Fix relocation delta for WM surfaces.
Eric Anholt [Wed, 9 Sep 2009 19:35:30 +0000 (12:35 -0700)]
i965: Fix relocation delta for WM surfaces.

This was a regression in 0f328c90dbc893e15005f2ab441d309c1c176245.

Bug #23688
Bug #23254
(cherry picked from commit 5604b27b9326ac542069a49ed9650c4b0d3e939a)

15 years agointel: add B43 chipset support
Zhenyu Wang [Mon, 7 Sep 2009 08:18:57 +0000 (16:18 +0800)]
intel: add B43 chipset support

Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Hopefully this will be one of the last cherry-picks.

(cherry picked from commit ca246dd186f9590f6d67038832faceb522138c20)

15 years agomesa: in texenvprogram code, only do saturation when really needed.
Brian Paul [Thu, 10 Sep 2009 14:41:12 +0000 (08:41 -0600)]
mesa: in texenvprogram code, only do saturation when really needed.

For some env modes (like modulate or replace) we don't have to clamp
because we know the results will be in [0,1].

15 years agogallium: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.
Vinson Lee [Thu, 10 Sep 2009 14:39:26 +0000 (08:39 -0600)]
gallium: Add PIPE_OS_APPLE back to auxiliary/util/u_time.h.

Fixes typo from commit c6c44bf48124dd5b4661014a8d58482c5a54557f.

15 years agoradeon: Change debugging code to use macros instead of inline functions.
Pauli Nieminen [Thu, 10 Sep 2009 13:41:59 +0000 (16:41 +0300)]
radeon: Change debugging code to use macros instead of inline functions.

Variadic functions can't be inlined which makes debugging to have quite large
function overead. Only aleternative method is to use variadic macros which are
inlined so compiler can optimize debugging to minimize overhead.

15 years agomesa: include new u_format.csv file in tarballs
Brian Paul [Wed, 9 Sep 2009 18:01:28 +0000 (12:01 -0600)]
mesa: include new u_format.csv file in tarballs

15 years agoradeon: Add more verbose error message for failed command buffer.
Pauli Nieminen [Wed, 9 Sep 2009 15:31:52 +0000 (18:31 +0300)]
radeon: Add more verbose error message for failed command buffer.

15 years agoMerge branch 'mesa_7_5_branch' into mesa_7_6_branch
Brian Paul [Wed, 9 Sep 2009 14:33:39 +0000 (08:33 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch

Conflicts:

Makefile
configs/default
progs/glsl/Makefile
src/gallium/auxiliary/util/u_simple_shaders.c
src/gallium/state_trackers/glx/xlib/xm_api.c
src/mesa/drivers/dri/i965/brw_draw_upload.c
src/mesa/drivers/dri/i965/brw_vs_emit.c
src/mesa/drivers/dri/intel/intel_context.h
src/mesa/drivers/dri/intel/intel_pixel.c
src/mesa/drivers/dri/intel/intel_pixel_read.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h

15 years agogallium: Added HaikuOS platform
aljen [Sat, 5 Sep 2009 21:06:53 +0000 (23:06 +0200)]
gallium: Added HaikuOS platform

15 years agomesa: disable GL_LUMINANCE case in _mesa_meta_draw_pixels()
Brian Paul [Wed, 9 Sep 2009 14:23:11 +0000 (08:23 -0600)]
mesa: disable GL_LUMINANCE case in _mesa_meta_draw_pixels()

Works around a bug found on i965.  See bug 23670.

15 years agoscons: Set default_dri to no for Mac OS.
Vinson Lee [Wed, 9 Sep 2009 14:21:05 +0000 (08:21 -0600)]
scons: Set default_dri to no for Mac OS.

Mac OS does not have libdrm.

15 years agomesa: bump version to 7.5.2
Brian Paul [Tue, 8 Sep 2009 20:45:24 +0000 (14:45 -0600)]
mesa: bump version to 7.5.2

I'm not 100% sure there'll be a 7.5.2 release, but just in case.

15 years agoi965: fix incorrect test for vertex position attribute
Brian Paul [Tue, 8 Sep 2009 18:21:42 +0000 (12:21 -0600)]
i965: fix incorrect test for vertex position attribute

15 years agoegl: also use X types for building on Apple/MacOS X
Brian Paul [Tue, 8 Sep 2009 15:20:39 +0000 (09:20 -0600)]
egl: also use X types for building on Apple/MacOS X

See bug 20413.

15 years agoprog/glsl: fix Makefile for samplers_array.
Peter Hutterer [Mon, 7 Sep 2009 00:49:31 +0000 (10:49 +1000)]
prog/glsl: fix Makefile for samplers_array.

The rule added in 488b3c4d1bc3d830477180759a42dbaf8f5801b0 does not use the
right INCDIR, breaking the build when GL isn't installed in the default include
paths.

7.5 branch only fix, already fixed in master by rewriting the Makefile
(ceb9459ed5e63207defa5d715958c2757933272f)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
15 years agoi965: Fix warnings in intel_pixel_read.c.
Eric Anholt [Mon, 22 Jun 2009 15:52:52 +0000 (08:52 -0700)]
i965: Fix warnings in intel_pixel_read.c.
(cherry picked from commit c80ce5ac90b1e0ac7a72cd41c314aa2000bfecf5)

15 years agointel: Also get the DRI2 front buffer when doing front buffer reading.
Eric Anholt [Sat, 20 Jun 2009 05:12:52 +0000 (22:12 -0700)]
intel: Also get the DRI2 front buffer when doing front buffer reading.
(cherry picked from commit df70d3049a396af3601d2a1747770635a74120bb)

15 years agointel: Update Mesa state before span setup in glReadPixels.
Eric Anholt [Sat, 20 Jun 2009 05:03:37 +0000 (22:03 -0700)]
intel: Update Mesa state before span setup in glReadPixels.

We could have mapped the wrong set of draw buffers.  Noticed while looking
into a DRI2 glean ReadPixels issue.
(cherry picked from commit afc981ee46791838f3cb83e11eb33938aa3efc83)

15 years agointel: Move intel_pixel_read.c to shared for use with i965.
Eric Anholt [Sat, 20 Jun 2009 04:43:22 +0000 (21:43 -0700)]
intel: Move intel_pixel_read.c to shared for use with i965.
(cherry picked from commit dcfe0d66bfff9a55741aee298b7ffb051a48f0d3)

15 years agoi965: Add missing state dependency of sf_unit on _NEW_BUFFERS.
Eric Anholt [Thu, 16 Jul 2009 22:57:22 +0000 (15:57 -0700)]
i965: Add missing state dependency of sf_unit on _NEW_BUFFERS.
(cherry picked from commit 99174e7630676307f618c252755a20ba61ad9158)

15 years agointel: Align cubemap texture height to its padding requirements.
Eric Anholt [Wed, 19 Aug 2009 01:48:54 +0000 (18:48 -0700)]
intel: Align cubemap texture height to its padding requirements.
(cherry picked from commit a70e1315846cd5e8d6f2b622821ff8262fe7179d)
(cherry picked from commit 29e51c3872531366570d032147abad50f8a3c1af)

15 years agointel: Align untiled region height to 2 according to 965 docs.
Eric Anholt [Sat, 8 Aug 2009 01:09:31 +0000 (18:09 -0700)]
intel: Align untiled region height to 2 according to 965 docs.

This may or may not be required pre-965, but it doesn't seem unlikely, and
I'd rather be safe.
(cherry picked from commit b053474378633249be0e9f24010650ffb816229a)

15 years agoi965: Fix source depth reg setting for FSes reading and writing to depth.
Eric Anholt [Thu, 6 Aug 2009 03:12:15 +0000 (20:12 -0700)]
i965: Fix source depth reg setting for FSes reading and writing to depth.

For some IZ setups, we'd forget to account for the source depth register
being present, so we'd both read the wrong reg, and write output depth to
the wrong reg.

Bug #22603.
(cherry picked from commit f44916414ecd2b888c8a680d56b7467ccdff6886)

15 years agoi965: Respect CondSwizzle in OPCODE_IF.
Eric Anholt [Wed, 5 Aug 2009 01:02:31 +0000 (18:02 -0700)]
i965: Respect CondSwizzle in OPCODE_IF.

Fixes piglit glsl-vs-if-bool and progs/glsl/twoside, and will likely be
useful for the looping code.

Bug #18992
(cherry picked from commit 78c022acd0b37bf8b32f04313d76255255e769c1)
(cherry picked from commit 63d7a2f53fb38e170f4e55f2b599e918edf2c512)

15 years agoi965: asst clean-ups, etc in brw_vs_emit()
Brian Paul [Thu, 18 Jun 2009 15:23:58 +0000 (09:23 -0600)]
i965: asst clean-ups, etc in brw_vs_emit()
(cherry picked from commit fd7d764514c540987549c3ea88a2d669b0f0ea58)

15 years agoi965: Emit conditional code updates as required for GLSL VS if statements.
Eric Anholt [Tue, 4 Aug 2009 21:13:27 +0000 (14:13 -0700)]
i965: Emit conditional code updates as required for GLSL VS if statements.

Previously, we'd be branching based on whatever condition code happened to be
laying around.
(cherry picked from commit 7007f8b352763af89805f287153cb7972bff0523)

15 years agoi965: Spell "conditional" correctly.
Eric Anholt [Tue, 4 Aug 2009 20:42:30 +0000 (13:42 -0700)]
i965: Spell "conditional" correctly.

15 years agoi965: Fix RECT shadow sampling by not losing the other texcoords.
Eric Anholt [Tue, 4 Aug 2009 19:39:22 +0000 (12:39 -0700)]
i965: Fix RECT shadow sampling by not losing the other texcoords.

Bug #20821
(cherry picked from commit 191e028de20b2f954621b652aa77b06d0e93652a)

15 years agoi965: Assert that the offset in the VBO is below the VBO size.
Eric Anholt [Tue, 4 Aug 2009 00:55:14 +0000 (17:55 -0700)]
i965: Assert that the offset in the VBO is below the VBO size.

This avoids sending a bad buffer address to the GPU due to programmer error,
and is permitted by the ARB_vbo spec.  Note that we still have the opportunity
to dereference past the end of the GPU, because we aren't clipping to a
correct _MaxElement, but that appears to be harder than it should be.  This
gets us the 90% solution.

Bug #19911.
(cherry picked from commit d7430d942f6c7950a92367aeb13b80cf76ccad78)

15 years agoi965: Even if no VS inputs are set, still load some amount of URB as required.
Eric Anholt [Tue, 4 Aug 2009 00:12:43 +0000 (17:12 -0700)]
i965: Even if no VS inputs are set, still load some amount of URB as required.

See comment on Vertex URB Entry Read Length for VS_STATE.

This, combined with the previous three commits, fixes #22945.
(cherry picked from commit e340d4f9866db4bae391288e83a630a310b0dd2b)

15 years agoi965: Make sure the VS URB size is big enough to fit a VF VUE.
Eric Anholt [Mon, 3 Aug 2009 22:24:02 +0000 (15:24 -0700)]
i965: Make sure the VS URB size is big enough to fit a VF VUE.

This fix is just from code and docs inspection, but it may fix hangs on
some applications.

(cherry picked from commit e93848e595176ae0bad3bfe64e0ca63fd089bb72)

15 years agoi965: Don't emit bad packets when no VBs are referenced.
Eric Anholt [Thu, 30 Jul 2009 20:40:29 +0000 (13:40 -0700)]
i965: Don't emit bad packets when no VBs are referenced.

It appears that sometimes Mesa (and I suppose a VS could as well) emits
a program which references no vertex data, and thus we end up with
nr_enabled == 0 even though some VBs are enabled.  We'd end up emitting
VB/VE packet headers of 0xffffffff in that case, leading to GPU hangs.

Bug #22945 (wine with an uncompiled VS)
(cherry picked from commit d1fbfd0f962347e4153db3852292d44de5aea863)

15 years agoi965: Calculate enabled[] and nr_enabled once and re-use the values.
Eric Anholt [Mon, 3 Aug 2009 21:46:18 +0000 (14:46 -0700)]
i965: Calculate enabled[] and nr_enabled once and re-use the values.

The code duplication bothered me.
(cherry picked from commit 9b9cb30d128fc5f1ba77287696ecd508e640efde)

15 years agoi965: Set the max index buffer address correctly according to the docs.
Eric Anholt [Wed, 24 Jun 2009 02:30:25 +0000 (19:30 -0700)]
i965: Set the max index buffer address correctly according to the docs.

It's the last addressable byte, not the byte after the end of the buffer.
(cherry picked from commit b72dea5441e8e9226dabf1826fa3bc129c7bc281)

15 years agoi965: rename var: s/tmp/vs_inputs/
Brian Paul [Fri, 15 May 2009 15:14:24 +0000 (09:14 -0600)]
i965: rename var: s/tmp/vs_inputs/
(cherry picked from commit 840c09fc71542fdfc71edd2a2802925d467567bb)

15 years agoscons: Used wrong exception class.
José Fonseca [Fri, 4 Sep 2009 18:38:35 +0000 (19:38 +0100)]
scons: Used wrong exception class.

15 years agoscons: Don't use scons internal functions.
José Fonseca [Fri, 4 Sep 2009 18:33:41 +0000 (19:33 +0100)]
scons: Don't use scons internal functions.

15 years agor600: fix Elts handling
Alex Deucher [Fri, 4 Sep 2009 18:03:51 +0000 (14:03 -0400)]
r600: fix Elts handling

Patch from taiu on IRC.  fixes bug 23585

15 years agoARB prog: replace 'unsigned' with 'gl_state_index'
Brian Paul [Fri, 4 Sep 2009 15:15:35 +0000 (09:15 -0600)]
ARB prog: replace 'unsigned' with 'gl_state_index'

Fixes compilation warnings with MSVC.

15 years agoARB prog: rename POINT, SIZE to POINT_TOK, SIZE_TOK
Brian Paul [Fri, 4 Sep 2009 15:06:40 +0000 (09:06 -0600)]
ARB prog: rename POINT, SIZE to POINT_TOK, SIZE_TOK

Fixes symbol collisions with typedefs in Microsoft headers.
Perhaps we should prefix/suffix all the lexer tokens to avoid this.

15 years agogallium/xlib: minor clean-ups
Brian Paul [Thu, 3 Sep 2009 23:16:19 +0000 (17:16 -0600)]
gallium/xlib: minor clean-ups