Commit graph

35682 commits

Author SHA1 Message Date
Kristian Høgsberg
22266c391f glx: Remove support for MESA_swap_frame_usage
The extension never worked, the implementation returns GLX_BAD_CONTEXT
when enabling the frame tracking.
2010-07-19 22:45:50 -04:00
Kristian Høgsberg
70887d5172 glx: Move __driScreen into the dri screen privates 2010-07-19 22:45:50 -04:00
Kristian Høgsberg
089fc37c6f glx: Move DRI1 specific extensions and code to DRI1 screen private 2010-07-19 22:45:50 -04:00
Kristian Høgsberg
9e546ecfd4 glx: Move DRI2 extensions to DRI2 screen private 2010-07-19 22:45:50 -04:00
Kristian Høgsberg
cb2a66fd0c glx: Drop support for GLX_MESA_allocate_memory
Only r200 implemented it.
2010-07-19 22:45:50 -04:00
Kristian Høgsberg
f972115d33 glx: Add screen privates for dri drivers and moved some fields there
GLXscreenConfigs is badly named and a dumping ground for a lot of stuff.
This patch creates private screen structs for the dri drivers and moves
some of their fields over there.
2010-07-19 22:45:50 -04:00
Kristian Høgsberg
a296d96de4 glx: Rename various DRI structs away from obnoxious __GLXfooRec convention
Enough is enough.
2010-07-19 22:45:50 -04:00
Kristian Høgsberg
308e13ecd1 glx: Factor out common code from dri2WaitGL() and dri2WaitX() 2010-07-19 22:45:50 -04:00
Kristian Høgsberg
b006d465ea glx: Dont use dri2WaitX() to update fake front
This saves a superfluous flush and a create/destryo region.
2010-07-19 22:45:50 -04:00
Eric Anholt
f9d11b8cee i965: Mostly fix glsl-max-varyings.
There was confusion on both the size of message we can send, and on
what the URB destination offset means.

The remaining problems appear to be due to spilling of regs in the
fragment shader being broken.
2010-07-19 19:29:48 -07:00
Eric Anholt
e179fa9a0a i965: Clean up message register setup in emit_vertex_write(). 2010-07-19 19:29:03 -07:00
Eric Anholt
09788ce10e i965: Reduce repeated calculation of the attribute-offset-in-VUE.
This cleans up some chipset dependency sprinkled around, and fixes a
potential overflow of the attribute offset array for many vertex
results.
2010-07-19 19:29:03 -07:00
Eric Anholt
e29cff6273 i965: Clarify the nr_regs calculation in brw_clip.c 2010-07-19 19:29:03 -07:00
Eric Anholt
bdcaaed6ff i965: Don't set up VUE space for the disabled user clip distances on gen6. 2010-07-19 19:29:03 -07:00
Brian Paul
37692e5dc9 draw: fix incorrect instancing divisor in LLVM code 2010-07-19 18:29:12 -06:00
Brian Paul
374c74f4c4 mesa: remove restart.c from build 2010-07-19 15:29:03 -06:00
Marek Olšák
3b189d888a r300g: fix possible crash in destroy_context
The problem is destroy_context is almost NEVER called.
The only test for destroy_context I know is compiz.

Reported by Vinson Lee.

FDO bug #29150.
2010-07-19 21:12:52 +02:00
Marek Olšák
fd03dd203f util: remove the dummy field in mempool
It should allocate less memory now.
2010-07-19 21:05:47 +02:00
Vinson Lee
95ca22001a scons: Fix Mac OS X SCons build on 32-bit CPUs.
The Mac OS X SCons build failed on 32-bit CPUs starting with commit
2f6d47a7c8 during linking of graw-null.
The build succeeds though on a 64-bit CPU. See FDO bug 29117.

This was the compiler error.
scons: building associated VariantDir targets: build/darwin-x86-debug
  Linking build/darwin-x86-debug/gallium/targets/graw-null/libgraw.dylib ...
Undefined symbols:
  "_lp_swizzled_cbuf", referenced from:
      _lp_swizzled_cbuf$non_lazy_ptr in libllvmpipe.a(lp_rast.os)
      _lp_swizzled_cbuf$non_lazy_ptr in libllvmpipe.a(lp_rast_tri.os)
     (maybe you meant: _lp_swizzled_cbuf$non_lazy_ptr)
  "_lp_dummy_tile", referenced from:
      _lp_dummy_tile$non_lazy_ptr in libllvmpipe.a(lp_rast.os)
      _lp_dummy_tile$non_lazy_ptr in libllvmpipe.a(lp_rast_tri.os)
      _lp_dummy_tile$non_lazy_ptr in libllvmpipe.a(lp_setup.os)
     (maybe you meant: _lp_dummy_tile$non_lazy_ptr)

The patch adds -fno-common to all Mac OS X builds to work around this issue.
2010-07-19 11:31:44 -07:00
Brian Paul
369e9272de util: add dummy field to empty structure types
Empty structure types aren't allowed with MSVC.
I haven't tested this change.  Hope I haven't broken it...
2010-07-19 10:50:11 -06:00
Marek Olšák
d1671ceb71 r300g: fix typo 2010-07-19 17:33:40 +02:00
Marek Olšák
7b31b235d0 r300g: use memory pools for buffer_create and get_transfer
The improvement in Tremulous: 68.9 fps -> 71.1 fps.
2010-07-19 17:12:11 +02:00
Marek Olšák
ad44b775e3 util: add a memory pool for equally sized memory allocations
malloc/free are in O(1).
2010-07-19 17:12:11 +02:00
Marek Olšák
4fd39a8d69 st/mesa: fix FRAMEBUFFER_UNSUPPORTED with the D24S8 format
Fixes FDO bug #29116.

NOTE: this is a candidate for the 7.8 branch
2010-07-19 17:11:23 +02:00
Kristian Høgsberg
3750ebd540 glx: Fix drawable lookup in DRI2 event handler
DRI2 events are sent to the X drawable ID used to create the DRI2 drawable,
not the GLX drawable ID.  So when an event comes in, we need to look up
the __GLXDRIdrawable by its X drawable ID, which needs a new hash table.
2010-07-19 09:37:38 -04:00
Dave Airlie
4eaf591d15 r300g: u_upload optimisation
fix vb/ib uploads
2010-07-18 18:11:29 +02:00
Sven Arvidsson
14e362c79a gallium/st/dri2: add dri2 vblank query extension support
from bugzilla:
https://bugs.freedesktop.org/show_bug.cgi?id=28771

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-07-18 19:18:49 +10:00
Vinson Lee
f3a2f458a3 llvmpipe: Remove dead initialization. 2010-07-18 01:14:36 -07:00
Marek Olšák
70b27be923 r300g: final fix for r3xx constant buffer emission 2010-07-17 17:18:59 +02:00
Marek Olšák
f7d6cab6cd r300g: fix typo in r3xx constant buffer emission
Ooops.
2010-07-17 14:40:41 +02:00
Marek Olšák
f92d1a54e9 r300g: fix constant buffer emission on r3xx
FDO bug #29128.
2010-07-17 13:37:14 +02:00
Vinson Lee
184abe8e26 llvmpipe: Remove unused variable in lp_test_sincos. 2010-07-17 00:35:10 -07:00
Vinson Lee
e02edab1a1 nv50: s/__func__/__FUNCTION__/ 2010-07-16 18:41:32 -07:00
Vinson Lee
b5fcab976f nouveau: s/__func__/__FUNCTION__/ 2010-07-16 18:14:11 -07:00
Vinson Lee
37648b86b1 nouveau: s/snprintf/util_snprintf/ 2010-07-16 18:03:03 -07:00
Vinson Lee
68744f9325 r300g: Remove unnecessary header. 2010-07-16 17:55:57 -07:00
Vinson Lee
e02c1e215e nouveau: s/inline/INLINE/ 2010-07-16 17:49:18 -07:00
José Fonseca
65ba566ff1 glut: Remove duplicate symbol definition. 2010-07-16 21:48:36 +01:00
José Fonseca
6f81b78cb4 scons: Make PIPE_ALIGN_VAR() of static/global vars work on MinGW.
Workaround http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216
2010-07-16 21:27:14 +01:00
Vinson Lee
5cf0789f91 scons: Fix Cygwin build.
The Cygwin SCons build needed several file names to be fully qualified.
2010-07-16 12:34:22 -07:00
Marek Olšák
5862b6ed61 r300g: inline winsys_buffer_destroy 2010-07-16 21:13:21 +02:00
Marek Olšák
3eb5577783 r300g: do not make copies of constant buffers, emit them directly 2010-07-16 21:13:21 +02:00
Brian Paul
80e07c4190 draw: updated debug/dump code 2010-07-16 11:10:25 -06:00
Brian Paul
959a458ea0 draw: added array element debug / bounds checking code (disabled) 2010-07-16 11:09:32 -06:00
Keith Whitwell
2f6d47a7c8 llvmpipe: use single swizzled tile
Use a single swizzled tile per colorbuf (and per thread) to avoid
accumulating large amounts of cached swizzled data.

Now that the SSE3 code has been merged to master, the performance delta
of this change is minimal, the main benefit is reduced memory usage
due to no longer keeping swizzled copies of render targets.

It's clear from the performance of the in-place version of this code
that there is still quite a bit of time being spent swizzling &
unswizzling, but it's not clear exactly how to reduce that.
2010-07-16 17:24:21 +01:00
José Fonseca
b7fff13d58 llvmpipe: Describe _mm_shuffle_epi8() with gcc extended inline assembly when -mssse3 is not supported/enabled. 2010-07-16 17:24:21 +01:00
José Fonseca
0a36a064a1 llvmpipe: Only use -mssse3 on gcc 4.3+ 2010-07-16 17:24:21 +01:00
Zack Rusin
fab4ac9e94 draw/llvm: adjust the instance id at run time
fixes instancing in draw llvm
2010-07-16 12:19:26 -04:00
Zack Rusin
b77f5024ca draw: use the instance id when fetching vertex data 2010-07-16 11:58:20 -04:00
Brian Paul
41bcd8cb1e mesa: return retval in _mesa_RenderObjectUnpurgeable()
Found by Vinson with static analysis.

NOTE: This is a candidate for the 7.8 branch.
2010-07-16 07:37:30 -06:00