Commit graph

26679 commits

Author SHA1 Message Date
Nicolai Hähnle
ebbd65eb06 st/dri: Install ARB_vertex_array_object functions
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-03 11:45:19 +02:00
Brian Paul
be16acaafa mesa: optimized _mesa_meta_BlitFramebuffer() for src=texture case
If the src renderbuffer is actually a texture, we can directly use that
texture as the src and avoid a copy.
2009-10-02 14:00:02 -06:00
Eric Anholt
4182b58169 i965: Use a little stack space to avoid a malloc in wm_get_binding_table. 2009-10-02 11:42:19 -07:00
Eric Anholt
6d0fc3cfde mesa: Remove another unexplained Flush call, this time from BindFramebuffer.
Combined with the previous fix, it takes cairo-gl firefox-talos-gfx time
from 120 seconds to 90 seconds on my GM45.
2009-10-02 11:42:07 -07:00
Eric Anholt
f019577f0c Revert "Flush driver, not just tnl module."
This reverts commit df058298e1.  It didn't
explain why it was required, doesnt appear to be required, and is a
significant performance penalty for cairo-gl firefox.

Conflicts:

	src/mesa/main/fbobject.c
2009-10-02 11:41:29 -07:00
Eric Anholt
3d78a86cd7 intel: Remove an unexplained flush from intelClearWithBlit. 2009-10-02 11:38:36 -07:00
Alex Deucher
3f623cfffe r600: remove support for host-based ibs
no longer used now that the hw supports this natively.

Also, clean up some formatting.
2009-10-02 14:34:28 -04:00
Keith Whitwell
918199fb0f mesa/st: don't reuse vertex buffers for bitmap, clear quads
Currently using max_slots > 1 will cause synchronous rendering
if the driver flushes its command buffers between one bitmap and the
next.

Need to improve buffer_write to allow NO_WAIT (as well as no_flush)
updates to buffers where we know there is no conflict with previous
data.
2009-10-02 19:03:15 +01:00
Michel Dänzer
316b4ddcf7 st/xorg: Use PIPE_TRANSFER_MAP_DIRECTLY flag in EXA PrepareAccess hook.
Propagate NULL return value.

This also allows removing the DRM_MODE_FEATURE_DIRTYFB specific pixmap
management hacks.
2009-10-02 18:13:26 +02:00
Michel Dänzer
9db647bb7a gallium: Add PIPE_TRANSFER_MAP_DIRECTLY usage flag.
Asks the driver to map the texture storage directly or return NULL if that's
not possible.
2009-10-02 18:13:26 +02:00
Michel Dänzer
47e41b024e gallium: Preparations for adding more PIPE_TRANSFER_* usage flags.
Always test for PIPE_TRANSFER_READ/WRITE using the bit-wise and operator, and
add a pipe_transfer_buffer_flags() helper for getting the buffer usage flags
corresponding to them.
2009-10-02 18:13:26 +02:00
Brian Paul
7d4b348c67 intel: wrap _mesa_meta_GenerateMipmap()
Need to check if we'll take the software path so which requires mapping the
src texture image.

Fixes crash in piglit gen-compressed-teximage, bug 24219.  However, the
test still does not pass (it may never have).
2009-10-02 09:03:27 -06:00
Brian Paul
f1cab802b8 mesa: added _mesa_meta_check_generate_mipmap_fallback() 2009-10-02 09:03:27 -06:00
Younes Manton
f9f7646fe6 g3dvl: Formatting. 2009-10-01 22:57:39 -04:00
Younes Manton
577f12fbba g3dvl: Delete state_trackers/g3dvl, other unused files. 2009-10-01 22:57:39 -04:00
Younes Manton
fcb595c04f g3dvl: Copyright blocks. 2009-10-01 22:53:00 -04:00
Younes Manton
62db9b21da st/xvmc: Set default CSC matrix to BT.601, no ProcAmp, full range RGB. 2009-10-01 22:52:59 -04:00
Younes Manton
e00da1476f g3dvl: Color space conv interface & vl impl.
Interface is pipe_video_context::set_csc_matrix().

vl_csc.h defines some helpers to generate CSC matrices based on one of
the color standard and a user defined ProcAmp (brightness, contrast,
saturation, hue).
2009-10-01 22:52:59 -04:00
Eric Anholt
81aa5d717b i915: Add stub ARB_occlusion_query support under a driconf debug option.
This is useful for enabling our GLSL testcases using the 2.0 entrypoints
even though we don't have full GL 2.0.
2009-10-01 14:54:15 -07:00
Eric Anholt
862a2a55b3 i915: Add optional support for ARB_fragment_shader under a driconf option.
Other vendors have enabled ARB_fragment_shader as part of OpenGL 2.0
enablement even on hardware like the 915 with no dynamic branching or
dFdx/dFdy support.  But for now we'll leave it disabled because we don't
do any flattening of ifs or loops, which is rather restrictive.

This support is not complete, and may be unstable depending on your shaders.
It passes 10/15 of the piglit glsl tests, but hangs on glean glsl1.
2009-10-01 14:52:44 -07:00
Eric Anholt
67f4d626d3 i915: Add support or fallbacks for GLSL fragment shader opcodes. 2009-10-01 14:31:04 -07:00
Eric Anholt
f9f31b2574 i915: Add support for varying inputs. 2009-10-01 14:31:04 -07:00
Eric Anholt
7d4b7460b0 i915: Enable ARB_vertex_shader for both i915 and i830.
Since the TNL is all done in software anyway, it should be the same to
the user who's probably using ARB_vertex_program otherwise, but gives them
a nicer programming environment.
2009-10-01 14:31:03 -07:00
Eric Anholt
96a3c69d48 i915: Increase maximum program size to the hardware limits.
This fixes potential heap trashing if the program of choice exceeds limits,
and fixes the native instructions limit being lower than what can be
used by valid programs.
2009-10-01 14:31:03 -07:00
Eric Anholt
61b512c47c i915: Update and translate the fragment program along with state updates.
Previously, we were doing it in the midst of the pipeline run, which gave
an opportunity to enable/disable fallbacks, which is certainly the wrong
time to be doing so.  This manifested itself in a NULL dereference for PutRow
after transitioning out of a fallback during a run_pipeline in glean glsl1.
2009-10-01 14:31:03 -07:00
Eric Anholt
d6fbf87575 Revert "i915: don't validate PS program when falling back to software"
This reverts commit e7044d552c.  It
prevented the driver from ever recovering from a software fallback due
to a program error.  The original bug it claimed to fix doesn't appear to
exist post-revert.
2009-10-01 14:31:03 -07:00
Eric Anholt
4ff816751f i915: Bail when the fragment program has too many total instructions.
Previously, we'd go trashing the heap.
2009-10-01 14:31:03 -07:00
Eric Anholt
994d1db079 i915: Let i915_program_error take a format string, and don't use _mesa_problem.
It's misleading to report things like the program having too many native
instructions as a Mesa implementation error, when the program may just be
too big for the hardware.
2009-10-01 14:31:03 -07:00
Brian Paul
5d2413fca4 Merge branch 'mesa_7_6_branch' 2009-10-01 13:35:42 -06:00
Vinson Lee
18883cdf23 mesa: Return -FLT_MAX instead of 0 for LG2(0).
lim x->0 log(x) = -inf so -FLT_MAX is a better approximation than 0
for LG2(0).
2009-10-01 13:33:20 -06:00
Brian Paul
15c57648cd objviewer: remove disabled code 2009-10-01 13:14:50 -06:00
Brian Paul
9745e26adb objviewer: mouse/keyboard info in README file 2009-10-01 13:14:50 -06:00
Brian Paul
d622c4ddba docs: added objviewer to release notes 2009-10-01 13:14:50 -06:00
Brian Paul
24f31ab861 mesa: add objviewer to PROGRAM_DIRS 2009-10-01 13:14:50 -06:00
Brian Paul
0b1de63ad8 mesa: add progs/objviewer to tarball list 2009-10-01 13:14:50 -06:00
Brian Paul
8d93a4c639 objview: clean up drawing VBO code 2009-10-01 13:14:50 -06:00
Brian Paul
c7c62521fb objview: set skybox texture filter 2009-10-01 13:14:50 -06:00
Brian Paul
336994e54c objview: check GL version/extension 2009-10-01 13:14:49 -06:00
Brian Paul
ca1bda552d progs/objviewer: Wavefront .obj file loader/viewer demo
Adapted from code written by Nate Robins.  See README.txt.
2009-10-01 13:14:48 -06:00
Michel Dänzer
e32a341be6 st/xorg: Check that ms->api->destroy is not NULL before calling it.
Fixes potential crash on X server shutdown.
2009-10-01 16:45:11 +02:00
Robert Noland
0b466c8705 util: Enable sockets on BSD
I think this should be safe for all of the BSDs.

Signed-off-by: Robert Noland <rnoland@2hip.net>
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-10-01 08:42:48 -06:00
Robert Noland
908ecb3faa util: define PIPE_OS_FREEBSD to correct u_cpu_detect on FreeBSD.
Since the various BSDs use some different features here,
define PIPE_OS_OPENBSD and PIPE_OS_NETBSD as well

Signed-off-by: Robert Noland <rnoland@2hip.net>
2009-10-01 08:40:30 -06:00
Brian Paul
f8d8f45278 mesa: better debug message 2009-10-01 08:38:38 -06:00
Keith Whitwell
4456006ba6 gallium: remove depth.occlusion_count flag
This was redundant as drivers can just keep track of whether they are
inside a begin/end query pair.  We want to add more query types later
and also support nested queries, none of which map well onto a flag like
this.  No driver appeared to be using the flag.
2009-10-01 14:34:23 +01:00
Cooper Yuan
ae2daacbac st/mesa: fix non-mipmap lastLevel calculation.
reviewed by Brian Paul.
2009-10-01 17:54:27 +08:00
Brian Paul
521e4b9b7e glx: fix glXQueryContext(GLX_RENDER_TYPE)
The renderType parameter to CreateContext() was never used.  Also, it
was often passed as zero.  Now when it's zero we check if the context
is RGBA or CI mode and set it accordingly.

Fixes bug 24211.
2009-09-30 15:15:10 -06:00
Eric Anholt
49fbdd18ed i965: Fix massive memory allocation for streaming texture usage.
Once we've freed a miptree, we won't see any more state cache requests
that would hit the things that pointed at it until we've let the miptree
get released back into the BO cache to be reused.  By leaving those
surface state and binding table pointers that pointed at it around, we
would end up with up to (500 * texture size) in memory uselessly consumed
by the state cache.

Bug #20057
Bug #23530
2009-09-30 11:27:27 -07:00
Michel Dänzer
81a62edc08 st/xorg: Fix debug option function call typo. 2009-09-30 18:01:46 +02:00
Chia-I Wu
cef97267d6 mesa/main: New feature FEATURE_beginend.
This feature corresponds to the Begin/End paradigm.  Disabling this
feature also eliminates the use of GLvertexformat completely.
2009-09-30 08:31:56 -06:00
Chia-I Wu
a73ba2d31b mesa/main: Make FEATURE_dlist follow feature conventions.
As shown in mfeatures.h, this allows users of dlist.h to work without
knowing if the feature is available.
2009-09-30 08:31:56 -06:00