Commit graph

11470 commits

Author SHA1 Message Date
Dan Nicholson
013dbcd611 Add -fno-strict-aliasing workaround for Linux GCC targets
Most Linux distros work around aliasing problems in Mesa by compiling
with the GCC option -fno-strict-aliasing. Two examples:

  https://bugs.freedesktop.org/show_bug.cgi?id=6046
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=394311

This makes -fno-strict-aliasing the default with a comment that
developers should consider commenting it out. There is a already a note
about these bugs in docs/helpwanted.html.
2007-10-31 09:47:39 -07:00
Brian
2bdd467dfd GLSL support in i965 driver 2007-10-31 09:57:47 -06:00
Brian
7f80dc1ebe updated list 2007-10-31 09:57:47 -06:00
Brian
5cb203433a check for count==0 in _mesa_validate_DrawArrays() 2007-10-31 09:57:47 -06:00
Michel Dänzer
d2f19a554a Fix some build warnings, mostly with XCB. 2007-10-30 17:58:50 +01:00
Brian
a7f64635a6 Alias glStencilOpSeparateATI with glStencilOpSeparate. 2007-10-30 10:24:34 -06:00
Brian
8b8a970593 test glStencilFuncSeparateATI() 2007-10-30 10:23:58 -06:00
Brian
f70ca96ba9 Finish up ATI_separate_stencil
Add entrypoints to glapi XML file and regenerate files.
Implement glStencilOpSeparateATI().
Consolidate some code in stencil.c
2007-10-30 09:13:58 -06:00
Roland Scheidegger
4c53635aab add missing _mesa_StencilFuncSeparateATI function 2007-10-30 14:09:17 +01:00
Michel Dänzer
3177b4e2cf More vblank cleanups.
* Fix crash at context creation in most drivers supporting vblank.
* Don't pass vblank sequence or flags to functions that get passed the drawable
  private already.
* Attempt to initialize vblank related drawable private fields just once
  per drawable. May need more work in some drivers.
2007-10-30 13:16:50 +01:00
Eric Anholt
dc1264970e [i915] Include header to pick up intel_ttm_bo_create_from_handle() proto. 2007-10-29 13:24:29 -07:00
Eric Anholt
b0edb9c38a Merge branch 'origin' 2007-10-29 13:24:27 -07:00
Jesse Barnes
ad8ee7db3b Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2007-10-29 12:06:36 -07:00
Jesse Barnes
38fdb47d26 Refactor and fix core vblank support
Consolidate support for synchronizing to and retrieving vblank counters.  Also
fix the core vblank code to return monotonic MSC counters, which are required
by some GLX extensions.  Adding support for multiple pipes to a low level
driver is fairly easy, the Intel 965 driver provides simple example code (see
intel_buffers.c:intelWindowMoved()).

The new code bumps the media stream counter extension version to 2 and adds a
new getDrawableMSC callback.  This callback takes a drawablePrivate pointer,
which is used to calculate the MSC value seen by clients based on the actual
vblank counter(s) returned from the kernel.  The new drawable private fields
are as follows:
  - vblSeq - used for tracking vblank counts for buffer swapping
  - vblFlags - flags (e.g. current pipe), updated by low level driver
  - msc_base - MSC counter from the last time the current pipe changed
  - vblank_base - kernel DRM vblank counter from the last time the pipe changed

Using the above variables, the core vblank code (in vblank.c) can calculate a
monotonic MSC value.  The low level DRI drivers are responsible for updating
the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags)
along with msc_base and vblank_base whenever the pipe associated with a given
drawable changes (again, see intelWindowMoved for an example of this).

Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to
driDrawableGetMSC32 and add code for pipe switching as outlined above to fully
support the new scheme.
2007-10-29 12:06:00 -07:00
Dan Nicholson
06ca14543e Build xdemos programs by default on linux-dri
Since libglut is no longer hardcoded, we can build the xdemos programs
so long as a GLX enabled libGL and libGLU have been built.
2007-10-29 11:43:20 -07:00
Chris Rankin
1421bffb18 Remember to call XSync() before resetting X error handler. 2007-10-29 14:37:32 -04:00
Dan Nicholson
3b9e28d507 linux-dri-xcb: Fix undefined refs when linking with libGL
GL_LIB_DEPS was missing -lXdamage and -lXfixes, which was causing
linker errors when trying to build the programs.
2007-10-29 11:17:04 -07:00
Brian
40133487db disable ctx->Driver.NewProgram() call in _mesa_new_program()
This was causing infinite recursive calls w/ software drivers.
All vertex/fragment shaders should be allocated by calling
ctx->Driver.NewProgram(), not by calling _mesa_new_program().
2007-10-29 10:01:15 -06:00
Dan Nicholson
162914675a update APP_LIB_DEPS for static library configs (patch 3/3) 2007-10-29 09:05:13 -06:00
Dan Nicholson
9ef1d9f03a simplify APP_LIB_DEPS (patch 2/3) 2007-10-29 09:04:30 -06:00
Dan Nicholson
c05aa5ec4c specify app lib dependencies in Makefiles (patch 1/3) 2007-10-29 09:03:01 -06:00
Alan Hourihane
b59dbd822f Only set R_MODE with NV_point_sprite 2007-10-28 20:07:37 +00:00
Dan Nicholson
9514209593 configs: Fix linux-static to link correctly
The linux-static target was missing necessary libraries and hardcoding
their location to /usr/X11R6/lib. This makes it comparable to the x86
and x86-64 static targets.
2007-10-26 15:46:37 -07:00
Zou Nan hai
6ef27b88e6 Merge branch '965-glsl'
Conflicts:

	src/mesa/drivers/dri/i965/brw_sf.h
	src/mesa/drivers/dri/i965/intel_context.c
2007-10-26 15:39:50 +08:00
Brian
ff042bfdee use grep -q 2007-10-25 14:47:14 -06:00
Dan Nicholson
8578534f48 Ignore new programs 2007-10-25 11:34:16 -07:00
Brian
6dcf65ff0d simplify/fix the ASM_FLAGS tests (bug 12931) 2007-10-25 11:10:10 -06:00
Alex Neundorf
cae5b7f1e3 added catamount-osmesa-pgi config 2007-10-24 16:31:22 -06:00
Brian
26479fa3b3 don't build x86, x86-64 dirs if not needed 2007-10-24 16:24:06 -06:00
Brian
55d4f32fc2 fix assorted bugs, works now 2007-10-24 13:55:22 -06:00
Brian
5e9272c748 add to git 2007-10-24 12:43:02 -06:00
Brian
e48f0b09ab Implement gl_PointCoord attribute for GLSL fragment shaders.
Contains the normalized fragment position within a point sprite.
2007-10-24 11:37:05 -06:00
Brian
c9d495c6f0 properly init dst reg's CondMask/Swizzle fields 2007-10-23 10:55:24 -06:00
Brian
2a8e9bb00f bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many instructions 2007-10-23 10:24:53 -06:00
Brian
e90dd4bf8f add directfb glut sources to tarball 2007-10-23 08:22:21 -06:00
Brian
2667e5642f don't apply ColorMask to main gc 2007-10-22 17:50:59 -06:00
Kristian Høgsberg
a074857cdc glxinfo: Try creating a GLX context using an fbconfig if no visuals are available. 2007-10-18 15:19:38 -04:00
Michel Dänzer
950fff0f9a i915: Add some sanity checks to blit command debugging code. 2007-10-18 18:30:15 +02:00
Ian Romanick
a663e846b6 Framework for supporting z24_s8 and z32 depth textures on r300. 2007-10-17 16:25:39 -07:00
Ian Romanick
42a4386a4c Initial support for ARB_depth_texture
Currently only GL_DEPTH_COMPONENT16 are supported.  I don't know what the
hardware bits are to select the other formats, but it shouldn't be too hard
to figure out.
2007-10-17 16:25:39 -07:00
Ian Romanick
b961eccc92 Support cards that have ARB_fp but not ARB_shadow. 2007-10-17 16:25:39 -07:00
Ian Romanick
374158b044 mga: Enable (trivial) support for GL_APPLE_vertex_array_object, bump DRIVER_DATE 2007-10-17 16:25:39 -07:00
Ian Romanick
366b2c6902 mga: Enable (trivial) support for GL_EXT_gpu_program_parameters. 2007-10-17 16:25:38 -07:00
Kristian Høgsberg
aad5c0fdc7 pbutil: Do not require GLX_SGIX_pbuffer for fbconfig only-functions. 2007-10-17 17:04:59 -04:00
Brian
ad053d90f0 Replace repeat_remainder() with a simpler macro that just casts args to unsigned. 2007-10-17 14:30:44 -06:00
Kristian Høgsberg
6c753ad51d Pull workaround for unset GLX_DRAWABLE_TYPE back in.
The old version just set GLX_DRAWABLE_TYPE to GLX_WINDOW_BIT for
configs received through glXGetVisualConfigs and to
GLX_WINDOW_BIT | GLX_PIXMAP_BIT for configs received as FBConfigs.
The X server needs to send this info, but keep the workaround for now.

Fixes #12835.
2007-10-17 15:06:11 -04:00
Kristian Høgsberg
a5b4bb393f glxinfo: Also print number of fbconfigs. 2007-10-17 15:06:11 -04:00
Michel Dänzer
86b81ef5aa Don't call the driver clear hook when the effective scissor rectangle is empty. 2007-10-17 18:37:19 +02:00
Michel Dänzer
b453112133 i915: Don't emit 'empty' blit rectangles.
The hardware seems to interpret them differently and produce unexpected
results...
2007-10-17 18:37:12 +02:00
Kristian Høgsberg
87966baa8d Fixup a couple of thinkos in glxinfo changes. 2007-10-17 10:15:10 -04:00