Brian Paul [Tue, 3 Aug 2010 20:12:47 +0000 (14:12 -0600)]
draw: add assertion, rearrange debug code
Marek Olšák [Sat, 31 Jul 2010 00:19:27 +0000 (02:19 +0200)]
st/dri: fix crash when dri2_drawable_get_buffers fails
It's easily reproducible with Compiz with its Resize window mode
set to Normal (which is usually not the default mode).
https://bugs.freedesktop.org/show_bug.cgi?id=28658
https://bugs.freedesktop.org/show_bug.cgi?id=29303
This is actually a workaround to prevent Compiz crashes.
Instead, a completely white titlebar might show up during resizing
transparent windows (a rare case).
The underlying cause should be fixed by someone who has more knowledge
about the code. (dri2_drawable_get_buffers should not return NULL)
Acked-By: Jakob Bornecrantz <jakob@vmware.com>
Marek Olšák [Sat, 31 Jul 2010 18:12:21 +0000 (20:12 +0200)]
mesa: increase the relative address offset limit to 4096 in ARB_vp/fp
Even though the spec says that the limits should be -64/+63, proprietary
drivers support much larger relative offsets and some applications do
depend on this non-standard behavior.
Also program_parse.tab.c has been regenerated.
This fixes the parser error:
ARB_vp: error: relative address offset too large
See also: https://bugs.freedesktop.org/show_bug.cgi?id=28628
4096 * sizeof(vec4) is the maximum size of the constant buffer on NV50.
It is not supposed to be a definite hardware limit, it is for the parser
not to get in the way and let the underlying driver decide whether it can
run the shader or not.
Jerome Glisse [Tue, 3 Aug 2010 21:45:51 +0000 (17:45 -0400)]
r600g: add polygon offset support
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Jerome Glisse [Tue, 3 Aug 2010 21:02:48 +0000 (17:02 -0400)]
r600g: flush and resubmit if we reach limit
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Jerome Glisse [Tue, 3 Aug 2010 20:15:17 +0000 (16:15 -0400)]
r600g: fix color target mask
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Zack Rusin [Tue, 3 Aug 2010 20:02:09 +0000 (16:02 -0400)]
gallium/draw: forgot about PIPE_PRIM_LINE_STRIP_ADJACENCY
Zack Rusin [Tue, 3 Aug 2010 19:56:17 +0000 (15:56 -0400)]
gallium/util: add extra primitives to the trimmer
Jerome Glisse [Tue, 3 Aug 2010 19:49:21 +0000 (15:49 -0400)]
r600g: fix stencil
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Jerome Glisse [Tue, 3 Aug 2010 18:14:58 +0000 (14:14 -0400)]
r600g: fix LIT + fix multiple constant one ALU + fix ALU block splitting
Make sure LIT fills all slot for instruction (can't do W instruction
without having the Z slot filled with at least a NOP).
ALU instruction can't access more than 4 constant, move constant to
temporary reg if we reach the limit.
Fix ALU block splitting, only split ALU after ALU with last instruction
bit sets.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Marek Olšák [Tue, 3 Aug 2010 12:15:24 +0000 (14:15 +0200)]
r300g: handle polygon offset correctly
https://bugs.freedesktop.org/show_bug.cgi?id=29372
Vinson Lee [Tue, 3 Aug 2010 08:20:13 +0000 (01:20 -0700)]
st/mesa: Add forward declarations in st_atom_constbuf.h.
Vinson Lee [Tue, 3 Aug 2010 08:14:37 +0000 (01:14 -0700)]
st/mesa: Include glheader.h in st_atom.h.
Include glheader.h for GLenum symbol.
Vinson Lee [Tue, 3 Aug 2010 07:51:51 +0000 (00:51 -0700)]
mesa: Clean up header file inclusion in m_xform.h.
Include compiler.h for CONST symbol.
Remove config.h as m_xform.h uses no additional symbols from config.h.
Vinson Lee [Tue, 3 Aug 2010 07:41:19 +0000 (00:41 -0700)]
mesa: Reduce header file inclusion in m_translate.h.
m_translate.h does not use any additional symbols added by config.h.
Vinson Lee [Tue, 3 Aug 2010 07:33:04 +0000 (00:33 -0700)]
mesa: Include missing header in m_matrix.h.
Vinson Lee [Tue, 3 Aug 2010 07:19:26 +0000 (00:19 -0700)]
mesa: Reduce header file inclusion in texgen.h.
texgen.h doesn't use any symbols additionally added by mtypes.h.
Vinson Lee [Tue, 3 Aug 2010 07:04:14 +0000 (00:04 -0700)]
mesa: Reduce header file inclusion in texcompress_fxt1.h.
texcompress_fxt1.h doesn't use any additional symbols added by mtypes.h.
Vinson Lee [Tue, 3 Aug 2010 06:53:23 +0000 (23:53 -0700)]
mesa: Reduce header file inclusion in syncobj.h.
syncobj.h doesn't use any additional symbols that is added by context.h.
Jerome Glisse [Mon, 2 Aug 2010 21:41:52 +0000 (17:41 -0400)]
r600g: split alu block to conform to limit + RCP opcode
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Jerome Glisse [Mon, 2 Aug 2010 18:21:33 +0000 (14:21 -0400)]
r600g: add autogenerated reg definition + debug print cleanup
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Mario Kleiner [Mon, 2 Aug 2010 02:17:03 +0000 (04:17 +0200)]
radeon: Add DRI2 flush extension support, so we synchronize properly.
When a DRI2 swap buffer is pending we need to make sure we
have the flush extension so radeon doesn't resume rendering to
or reading from the not yet blitted front buffer.
This fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=28341
https://bugs.freedesktop.org/show_bug.cgi?id=28410
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
Jerome Glisse [Mon, 2 Aug 2010 17:28:15 +0000 (13:28 -0400)]
Revert "radeon: Add DRI2 flush extension to so we synchronize properly."
This reverts commit
8446f257b3e3ca4a3eb2c79bc357e46343e04e87.
Marek Olšák [Mon, 2 Aug 2010 15:14:07 +0000 (17:14 +0200)]
r300g: fix hardlock when using more than one stuffed sprite coords
If texture coordinates come from the vertex shader, there are always
4 components in the rasterizer input packet, but if the coordinates
are stuffed (like for point sprites), there are only 2 or 3 components
(based on GB_ENABLE) and if we rasterize more, it locks up.
Mario Kleiner [Sun, 25 Jul 2010 14:29:24 +0000 (16:29 +0200)]
radeon: Add DRI2 flush extension to so we synchronize properly.
When DRI2 swap buffer is pending (copy buffer not pageflipping)
we need to make sure we have the flush extension so radeon doesn't
resume rendering on the not yet blitted front buffer.
Modified version of Jerome's patch to add flush extension
in the correct place.
This prepares a possible fix for:
https://bugs.freedesktop.org/show_bug.cgi?id=28341
https://bugs.freedesktop.org/show_bug.cgi?id=28410
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
Kristian Høgsberg [Mon, 2 Aug 2010 13:47:44 +0000 (09:47 -0400)]
glx: Drop _Xglobal_lock while we create and initialize glx display
Andre Maasikas [Mon, 2 Aug 2010 12:11:22 +0000 (15:11 +0300)]
r600: fix sin,cos functions on r600
r600 doesnt need the same normalization as r700 - instead it requires
range to be truncated to -pi..pi
I left the range trunc also effective on r700 althouch according the docs
it has sufficent range (-512*PI, +512*PI). The instructions seem
to be used not too often to cause perf loss because of this
Based on patches and testing by Conn Clark and Alain Perrot
Michal Krol [Fri, 30 Jul 2010 14:59:05 +0000 (16:59 +0200)]
util: Fix unpacking of R8G8Bx_SNORM format.
Apparently, we must always use integers to perform calculations,
otherwise the results won't match D3D's CxV8U8 definition.
Dave Airlie [Mon, 2 Aug 2010 04:48:59 +0000 (14:48 +1000)]
r600g: add stencil op/func translation
Dave Airlie [Mon, 2 Aug 2010 04:46:17 +0000 (14:46 +1000)]
r600g: initial alpha test state
Dave Airlie [Mon, 2 Aug 2010 04:42:29 +0000 (14:42 +1000)]
r600g: add initial blend state.
migrates cb_cntl to be regenerated
Dave Airlie [Mon, 2 Aug 2010 04:53:31 +0000 (14:53 +1000)]
r600g: set correct tex coord type for rect textures.
Dave Airlie [Mon, 2 Aug 2010 04:31:49 +0000 (14:31 +1000)]
r600g: make r600_db_format static.
this isn't used anywhere else yet.
Dave Airlie [Sun, 1 Aug 2010 22:57:14 +0000 (08:57 +1000)]
draw: fix warning in sse code.
Not sure if this will actually fix the issue, but it fixes the warning.
Marek Olšák [Sun, 1 Aug 2010 14:42:53 +0000 (16:42 +0200)]
r300g: fix microtiling on RS6xx
Getting tiling right has always been tricky.
There are so many subtle details...
Vinson Lee [Sun, 1 Aug 2010 06:04:41 +0000 (23:04 -0700)]
mesa: Remove inclusion of compiler.h from mtypes.h.
mtypes.h does not use any symbols from compiler.h.
Also add the required headers for files that depended on symbols from
compiler.h but were indirectly including compiler.h through mtypes.h.
Vinson Lee [Sun, 1 Aug 2010 03:53:42 +0000 (20:53 -0700)]
mesa: Remove unnecessary header from mm.h.
Vinson Lee [Sun, 1 Aug 2010 03:51:13 +0000 (20:51 -0700)]
mesa: Add headers containing sybmols used by mm.c.
Vinson Lee [Sun, 1 Aug 2010 02:23:14 +0000 (19:23 -0700)]
r600g: Remove unnecessary header.
Vinson Lee [Sat, 31 Jul 2010 23:28:13 +0000 (16:28 -0700)]
mesa: Reduce header file inclusion in get.h.
get.h only needs the GL headers.
Vinson Lee [Sat, 31 Jul 2010 23:15:08 +0000 (16:15 -0700)]
mesa: Include missing headers in vtxfmt.h.
Include compiler.h for INLINE symbol.
Include mtypes.h for GLcontext symbol.
Vinson Lee [Sat, 31 Jul 2010 23:13:05 +0000 (16:13 -0700)]
mesa: Include missing header in shared.h.
Include mtypes.h for GLcontext symbol.
Vinson Lee [Sat, 31 Jul 2010 23:10:14 +0000 (16:10 -0700)]
mesa: Include missing header in restart.h.
Vinson Lee [Sat, 31 Jul 2010 22:45:40 +0000 (15:45 -0700)]
mesa: Include missing headers in renderbuffer.h.
Vinson Lee [Sat, 31 Jul 2010 22:39:35 +0000 (15:39 -0700)]
mesa: Include missing header in remap.h.
Include compiler.h for INLINE symbol.
Vinson Lee [Sat, 31 Jul 2010 21:56:53 +0000 (14:56 -0700)]
r600g: Remove unnecessary header.
Vinson Lee [Sat, 31 Jul 2010 21:37:32 +0000 (14:37 -0700)]
mesa: Remove unnecessary headers.
Vinson Lee [Sat, 31 Jul 2010 20:35:17 +0000 (13:35 -0700)]
swrast: Remove unnecessary headers.
Vinson Lee [Sat, 31 Jul 2010 20:28:32 +0000 (13:28 -0700)]
egl: Fix '_eglAddAtExitCall' implicit declaration warning.
Chia-I Wu [Fri, 30 Jul 2010 16:00:49 +0000 (00:00 +0800)]
egl: Add checks for EGL_MESA_screen_surface.
This allows Mesa EGL to be compiled with eglext.h that does not define
EGL_MESA_screen_surface.
Vinson Lee [Sat, 31 Jul 2010 07:55:13 +0000 (00:55 -0700)]
tnl: Remove unnecessary headers.
Vinson Lee [Sat, 31 Jul 2010 07:41:43 +0000 (00:41 -0700)]
st/dri: Remove unnecessary headers.
Vinson Lee [Sat, 31 Jul 2010 06:32:32 +0000 (23:32 -0700)]
mesa: Include missing header in pixelstore.h.
Include mtypes.h for GLcontext symbol.
Vinson Lee [Sat, 31 Jul 2010 06:30:38 +0000 (23:30 -0700)]
mesa: Include missing headers in nvprogram.h.
Jerome Glisse [Fri, 30 Jul 2010 17:58:46 +0000 (13:58 -0400)]
r600g: add KIL opcode support
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
George Sapountzis [Sun, 18 Jul 2010 15:23:36 +0000 (18:23 +0300)]
st/dri: move backend hooks to appropriate object
George Sapountzis [Tue, 25 May 2010 22:08:15 +0000 (01:08 +0300)]
st/dri: drop dri1_helper
George Sapountzis [Thu, 8 Apr 2010 15:58:35 +0000 (18:58 +0300)]
st/dri: mv driDriverAPI to backends
Brian Paul [Fri, 30 Jul 2010 20:27:03 +0000 (14:27 -0600)]
st/mesa: better handling of indirect addressing of temp/const register files
With gl_program::IndirectRegisterFiles we can distinguish between indirect
addressing of constants vs. temporaries. In the case of temporaries,
declare all temps up front sequentially.
Fixes fd.o bug 29305.
Brian Paul [Fri, 30 Jul 2010 20:24:23 +0000 (14:24 -0600)]
mesa: added gl_program::IndirectRegisterFiles field
Now drivers, etc. can know which register files are accessed with
indirect addressing. Before we just checked gl_program::NumAddressRegs
but didn't know if that was the constant buffer, temp regs, or what.
The only user of this new field so far will be the gallium state tracker.
Vinson Lee [Fri, 30 Jul 2010 20:11:14 +0000 (13:11 -0700)]
llvmpipe: Silence unused value warning.
Vinson Lee [Fri, 30 Jul 2010 20:00:13 +0000 (13:00 -0700)]
mesa: Add missing header to multisample.h.
Include mtypes.h for GLcontext symbol.
Zack Rusin [Fri, 30 Jul 2010 19:42:06 +0000 (15:42 -0400)]
draw: actually a noop, rather than not implemented
we just have nothing to do in it right now
Vinson Lee [Fri, 30 Jul 2010 19:32:47 +0000 (12:32 -0700)]
mesa: Remove unnecessary header from colormac.h.
Brian Paul [Fri, 30 Jul 2010 19:28:42 +0000 (13:28 -0600)]
tgsi: remove incorrect assertion
Vinson Lee [Fri, 30 Jul 2010 19:13:17 +0000 (12:13 -0700)]
mesa: Remove unnecessary headers.
Vinson Lee [Fri, 30 Jul 2010 18:48:48 +0000 (11:48 -0700)]
llvmpipe: Fix implicit declaration of lp_func_delete_body warnings.
Chia-I Wu [Fri, 30 Jul 2010 15:44:16 +0000 (23:44 +0800)]
util: Fix the range of util_draw_elements_instanced.
Keep min_index and max_index at their defaults (0 and ~0).
Zack Rusin [Tue, 27 Jul 2010 16:26:54 +0000 (12:26 -0400)]
llvmpipe: delete function bodies after generating machine code
Jerome Glisse [Fri, 30 Jul 2010 15:10:24 +0000 (11:10 -0400)]
r600g: fix typo in tex instruction + shader semantic id fix
It seems we never get semantic id from TGSI so fallback
to use output number as id.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Li Peng [Fri, 30 Jul 2010 04:26:15 +0000 (12:26 +0800)]
configure: fix wrong variable name GLESv1_LIB_DEPS
GLESv1_CM_LIB_DEPS is defined in "configs/autoconf.in",
but configure.ac uses GLESv1_LIB_DEPS.
Signed-off-by: Li Peng <peng.li@linux.intel.com>
Keith Whitwell [Fri, 30 Jul 2010 09:47:20 +0000 (10:47 +0100)]
util: more helpers for old draw code
Vinson Lee [Fri, 30 Jul 2010 07:41:08 +0000 (00:41 -0700)]
mesa: Include macros.h in files that use symbols from macros.h.
Don't rely on inclusion of other files that already include macros.h.
Vinson Lee [Fri, 30 Jul 2010 07:18:09 +0000 (00:18 -0700)]
mesa: Include macros.h in attrib.c for COPY_4FV symbol.
Vinson Lee [Fri, 30 Jul 2010 07:06:40 +0000 (00:06 -0700)]
intel: Add missing header to intel_context.c.
Fixes "implicit declaration of function
_mesa_get_incomplete_framebuffer" warning.
Vinson Lee [Fri, 30 Jul 2010 07:00:22 +0000 (00:00 -0700)]
mesa: Reduce clip.h header file inclusion.
Vinson Lee [Fri, 30 Jul 2010 06:53:13 +0000 (23:53 -0700)]
mesa: Add missing header to framebuffer.h.
Include mtypes.h for GLvisual and GLcontext symbols.
Vinson Lee [Fri, 30 Jul 2010 06:50:32 +0000 (23:50 -0700)]
mesa: Add missing header to fboject.h.
Add mtypes.h for GLcontext symbol.
Vinson Lee [Fri, 30 Jul 2010 06:41:46 +0000 (23:41 -0700)]
mesa: Add missing header to texgetimage.h.
Vinson Lee [Fri, 30 Jul 2010 06:38:17 +0000 (23:38 -0700)]
mesa: Add missing header to texrender.h.
Add mtypes.h for GLcontext symbol.
Vinson Lee [Fri, 30 Jul 2010 06:04:50 +0000 (23:04 -0700)]
mesa: Add missing header and forward declarations to uniforms.h.
Vinson Lee [Fri, 30 Jul 2010 05:57:54 +0000 (22:57 -0700)]
mesa: Add missing headers to viewport.h.
Vinson Lee [Fri, 30 Jul 2010 05:43:09 +0000 (22:43 -0700)]
mesa: Add missing header to depthstencil.h.
Add mtypes.h for GLcontext symbol.
Vinson Lee [Fri, 30 Jul 2010 05:41:03 +0000 (22:41 -0700)]
mesa: Add missing headers to debug.h.
Vinson Lee [Fri, 30 Jul 2010 02:10:14 +0000 (19:10 -0700)]
intel: Add missing header.
Add context.h for NEED_SECONDARY_COLOR symbol.
Vinson Lee [Fri, 30 Jul 2010 02:04:43 +0000 (19:04 -0700)]
dri: Add missing header to dri_metaops.c.
Add context.h for FLUSH_VERTICES symbol.
Vinson Lee [Fri, 30 Jul 2010 01:15:41 +0000 (18:15 -0700)]
mesa: Reduce clear.h header file inclusion.
Vinson Lee [Fri, 30 Jul 2010 01:03:20 +0000 (18:03 -0700)]
mesa: Reduce bufferobj.h header file inclusion.
Directly include mtypes.h instead of including context.h to include
mtypes.h.
Vinson Lee [Fri, 30 Jul 2010 00:14:32 +0000 (17:14 -0700)]
mesa: Remove unnecessary headers.
Brian Paul [Thu, 29 Jul 2010 23:49:49 +0000 (17:49 -0600)]
llvmpipe: fix on-debug build breakage
Brian Paul [Thu, 29 Jul 2010 23:31:17 +0000 (17:31 -0600)]
llvmpipe: added some jit debug code
If we crash in the jitted function we can examine jit_line and
jit_state in gdb to learn more about the shader.
Brian Paul [Thu, 29 Jul 2010 23:24:20 +0000 (17:24 -0600)]
draw: do bounds checking of array elements (debug only)
Make sure that all the element indexes actually lie inside the vertex
buffer.
Also, rename pipe_run() to pipe_run_elts() to be more specific.
And assert/check the vertex count for the non-indexed case.
Brian Paul [Thu, 29 Jul 2010 20:09:08 +0000 (14:09 -0600)]
draw: assorted clean-ups in clipper code
Brian Paul [Thu, 29 Jul 2010 19:49:21 +0000 (13:49 -0600)]
gallium: implement bounds checking for constant buffers
Plumb the constant buffer sizes down into the tgsi interpreter where
we can do bounds checking. Optional debug code warns upon out-of-bounds
reading. Plus add a few other assertions in the TGSI interpreter.
Brian Paul [Thu, 29 Jul 2010 19:44:44 +0000 (13:44 -0600)]
draw: add vertex buffer offset in draw_print_arrays()
Brian Paul [Thu, 29 Jul 2010 19:26:42 +0000 (13:26 -0600)]
llvmpipe: silence warnings in lp_test_sincos.c
Jerome Glisse [Thu, 29 Jul 2010 18:51:06 +0000 (14:51 -0400)]
r600g: mipmap early support + EX2/ABS instruction + culling
Add mipmap support (demos/src/redbook/mipmap is working)
Add EX2/ABS shader instruction support.
Add face culling support.
Misc fixes.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Kristian Høgsberg [Thu, 29 Jul 2010 22:48:51 +0000 (18:48 -0400)]
glx: Fix copy/paste bug in glXWaitX and glXWaitGL
https://bugs.freedesktop.org/show_bug.cgi?id=29304
Kristian Høgsberg [Thu, 29 Jul 2010 22:44:26 +0000 (18:44 -0400)]
glx: Compare old ctx against dummyCtx, not NULL
https://bugs.freedesktop.org/show_bug.cgi?id=29302
Kristian Høgsberg [Thu, 29 Jul 2010 20:01:39 +0000 (16:01 -0400)]
glx: Fix linked list deletion in __glXCloseDisplay()
I hate single linked lists.