Brian Paul [Fri, 13 Oct 2006 17:45:08 +0000 (17:45 +0000)]
remove needless condition
Brian Paul [Fri, 13 Oct 2006 17:41:23 +0000 (17:41 +0000)]
Consolidate, move, fix code related to color index and stencil image transfer
operations (shift, offset, table lookup, etc).
Ian Romanick [Fri, 13 Oct 2006 17:34:01 +0000 (17:34 +0000)]
Fix dumb build errors.
I always build with -DGLX_USE_TLS, so I never hit these paths. glapi.h is
required in some places because _glapi_Dispatch is declared there, but
_glapi_tls_Dispatch is declared in glthread.h.
Brian Paul [Fri, 13 Oct 2006 16:34:25 +0000 (16:34 +0000)]
In _mesa_pack_rgba_span_float() we don't need to make a temporary copy of
incoming colors when applying pixel transfer ops. In all cases, the
caller either indicates there's no pixel transfer ops, or the incoming
colors are coming from temporary storage already and can be safely
modified.
Brian Paul [Fri, 13 Oct 2006 15:11:47 +0000 (15:11 +0000)]
s/GLuint/GLbitfield/
Brian Paul [Fri, 13 Oct 2006 15:10:55 +0000 (15:10 +0000)]
s/GL_FALSE/0x0/
Brian Paul [Fri, 13 Oct 2006 15:00:35 +0000 (15:00 +0000)]
removed obsolete _mesa_pack_rgba_span_chan()
Brian Paul [Fri, 13 Oct 2006 13:28:48 +0000 (13:28 +0000)]
include glapi.h to fix broken build
Keith Whitwell [Fri, 13 Oct 2006 11:21:55 +0000 (11:21 +0000)]
Upload of interleaved arrays currently assumes that position is the
first element in the interleaved group. Add a test to catch cases
where this isn't true and use per-array uploads instead. Fixes compiz
glitches on x64.
Keith Whitwell [Fri, 13 Oct 2006 11:20:25 +0000 (11:20 +0000)]
Make sure instructions are zero'd out before use.
Keith Whitwell [Fri, 13 Oct 2006 11:19:38 +0000 (11:19 +0000)]
Use unsigned long batchbuffer offset, fixes x64 warnings.
Keith Whitwell [Fri, 13 Oct 2006 11:17:37 +0000 (11:17 +0000)]
Fix printf warning.
Keith Whitwell [Fri, 13 Oct 2006 11:16:45 +0000 (11:16 +0000)]
Use unsigned long cast for checking pointer alignment, fixes x64 warnings.
Keith Whitwell [Fri, 13 Oct 2006 11:14:43 +0000 (11:14 +0000)]
Use mesa function to get opcode name rather than an internal table.
Michal Krol [Fri, 13 Oct 2006 08:44:32 +0000 (08:44 +0000)]
Indent and cosmetic changes.
Brian Paul [Fri, 13 Oct 2006 00:44:31 +0000 (00:44 +0000)]
Revamp color table code.
Always store all color tables as both float and ubyte.
Brian Paul [Thu, 12 Oct 2006 23:48:57 +0000 (23:48 +0000)]
adjust_colors() function replaces old _mesa_chan_to_float_span() function.
Brian Paul [Thu, 12 Oct 2006 23:47:51 +0000 (23:47 +0000)]
use _mesa_map_ci8_to_rgba8() instead of _mesa_map_ci8_to_rgba()
Brian Paul [Thu, 12 Oct 2006 23:47:19 +0000 (23:47 +0000)]
remove _mesa_chan_to_float_span(), rename _mesa_map_ci8_to_rgba()
Brian Paul [Thu, 12 Oct 2006 23:18:05 +0000 (23:18 +0000)]
_mesa_map_ci_to_rgba_chan() no longer used
Brian Paul [Thu, 12 Oct 2006 23:17:02 +0000 (23:17 +0000)]
Lots of changes to support runtime renderbuffer depths.
_swrast_read_rgba_span() now takes a datatype parameter.
New optimization for glReadPixels(format=GL_RGB).
New glCopyPixels optimization for the simple, common cases.
Brian Paul [Thu, 12 Oct 2006 23:14:19 +0000 (23:14 +0000)]
don't use temp storage in _mesa_convert_colors() when possible
Brian Paul [Thu, 12 Oct 2006 15:55:04 +0000 (15:55 +0000)]
remove some debug code invalidated by prev check-in
Ian Romanick [Wed, 11 Oct 2006 22:37:14 +0000 (22:37 +0000)]
Fix bug #4681.
glDeleteTextures and glDeleteTexturesEXT were erroneously listed as
aliases of each other. For anything /except/ GLX protocol they are
aliases. This set of changes allows functions that are functionally
identical but have different GLX protocol to be listed as aliases.
When building with GLX_INDIRECT_RENDERING set, different static
functions are used. These functions determine whether the current
context is direct rendering or not. If the context is direct
rendering, the aliased function (e.g., glDeleteTextures in the case of
glDeleteTexturesEXT) is called. If the context is not direct
rendering, the correct GLX protocol is sent.
For a deeper explanation of what is changed, please see:
http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions
Brian Paul [Wed, 11 Oct 2006 22:21:55 +0000 (22:21 +0000)]
use GLvoid * for _swrast_write_zoomed_rgb/rgba_span() functions
Brian Paul [Wed, 11 Oct 2006 22:07:01 +0000 (22:07 +0000)]
rewrite/simplify the fast_draw_pixels() function
Brian Paul [Wed, 11 Oct 2006 22:03:34 +0000 (22:03 +0000)]
use _mesa_convert_colors(), update some assertions
Brian Paul [Wed, 11 Oct 2006 22:02:36 +0000 (22:02 +0000)]
Added _mesa_convert_colors().
_mesa_clip_drawpixels() now handles Pixel.ZoomY==-1.
Brian Paul [Wed, 11 Oct 2006 20:14:08 +0000 (20:14 +0000)]
support for runtime renderbuffer depths
Brian Paul [Wed, 11 Oct 2006 17:45:06 +0000 (17:45 +0000)]
In xmesa_DrawPixels_8R8G8B() check if drawing into a window system buffer,
not a user-created FBO.
Brian Paul [Wed, 11 Oct 2006 16:34:23 +0000 (16:34 +0000)]
added shaderobjects_3dlabs.c
Brian Paul [Wed, 11 Oct 2006 16:26:09 +0000 (16:26 +0000)]
remove 3dlabs.c
Brian Paul [Wed, 11 Oct 2006 16:05:59 +0000 (16:05 +0000)]
sources for X.org xserver build
Brian Paul [Wed, 11 Oct 2006 15:52:00 +0000 (15:52 +0000)]
List of source (.c) files in each directory.
To be included by X.org Makefile.am files so that lists of files don't need
to be hardcoded and frequently updated there.
Brian Paul [Tue, 10 Oct 2006 22:45:50 +0000 (22:45 +0000)]
a step toward moving run-time vertex program state out of GLcontext
Brian Paul [Tue, 10 Oct 2006 21:44:55 +0000 (21:44 +0000)]
fixed NV_position_invariant
Brian Paul [Tue, 10 Oct 2006 21:43:31 +0000 (21:43 +0000)]
Move the fp_machine struct into s_nvfragmprog.c since (except for program
debug) it's only used there.
Brian Paul [Tue, 10 Oct 2006 21:25:27 +0000 (21:25 +0000)]
s/GLuint/GLbitfield/
Brian Paul [Tue, 10 Oct 2006 21:23:23 +0000 (21:23 +0000)]
If program is position invariant, set VERT_BIT_POS in InputsRead field.
Fixes broken "OPTION NV_position_invariant".
Keith Whitwell [Tue, 10 Oct 2006 08:58:43 +0000 (08:58 +0000)]
Use the mesa-provided texenv program rather than rolling our own.
Turn on texture crossbar support.
Ian Romanick [Mon, 9 Oct 2006 18:26:03 +0000 (18:26 +0000)]
Added dispatch.html.
This new file documents Mesa's implementation of GL function dispatch. It's
not quite complete, but I think there's enough there to make it useful.
Brian Paul [Mon, 9 Oct 2006 16:09:30 +0000 (16:09 +0000)]
return void instead of GLvoid for glClearDebugLogMESA(), glGetDebugLogMESA()
Ian Romanick [Mon, 9 Oct 2006 15:25:03 +0000 (15:25 +0000)]
Updates for XCB. Bug 8560.
Brian Paul [Mon, 9 Oct 2006 14:57:50 +0000 (14:57 +0000)]
added a SyncHandle() call, remove UnlockDisplay() call. (bug 8521)
Brian Paul [Mon, 9 Oct 2006 14:55:46 +0000 (14:55 +0000)]
Updates for XCB. Bug 8560.
Ian Romanick [Sat, 7 Oct 2006 02:52:18 +0000 (02:52 +0000)]
Major clean up of MakeContextCurrent
Rearrange most of the internals of MakeContextCurrent. Put all of the code to
bind the new context up front. If that is successful, unbind the old context.
This saves a lot of code and removes some locking crazyiness.
This patch has been tested for indirect rendering with glxinfo, glxgears,
manywin, and wincopy.
Roland Scheidegger [Sat, 7 Oct 2006 01:04:49 +0000 (01:04 +0000)]
do not import arrays for generic arb attribs if the array is not enabled (same as for generic attribs for nv vp is already done). Since the requested stride is 16, otherwise the code would end up doing lots of unnecessary import work (in doom3, trans_4_GLfloat_4f_raw caused by that was by far the single most time-consuming function in the r200 driver, not importing the disabled arrays caused the cpu time spent in the driver to drop from 45% to 30%, though real-world gain was pretty minimal as it's not really cpu bound here in the first place).
Brian Paul [Fri, 6 Oct 2006 03:52:01 +0000 (03:52 +0000)]
rewrite clear_rgba_buffer_with_masking()
Brian Paul [Fri, 6 Oct 2006 03:49:46 +0000 (03:49 +0000)]
deal with union/aliasing in convert_color_type()
Brian Paul [Fri, 6 Oct 2006 03:48:42 +0000 (03:48 +0000)]
rewrite of read_fast_rgba_pixels()
Keith Whitwell [Thu, 5 Oct 2006 19:16:46 +0000 (19:16 +0000)]
missing file
Keith Whitwell [Thu, 5 Oct 2006 11:35:57 +0000 (11:35 +0000)]
Accelerate glBitmap with a color expand blit. Nice speedup for demos
like 'fire' that display a help message or fps number this way.
Keith Whitwell [Thu, 5 Oct 2006 11:34:01 +0000 (11:34 +0000)]
Quieten debug message.
Keith Whitwell [Thu, 5 Oct 2006 11:28:45 +0000 (11:28 +0000)]
eliminate rhw divide under some circumstances
Keith Whitwell [Thu, 5 Oct 2006 11:27:13 +0000 (11:27 +0000)]
Quieten debug message.
Ian Romanick [Wed, 4 Oct 2006 22:33:54 +0000 (22:33 +0000)]
Changes to generated code caused by the previous commits.
Ian Romanick [Wed, 4 Oct 2006 21:59:51 +0000 (21:59 +0000)]
Fix the ordering of extensions.
Ian Romanick [Wed, 4 Oct 2006 21:55:55 +0000 (21:55 +0000)]
Keep indentation consistent with indent.
Remove code in the Python scripts that keeps the indentation of the
generated code consistent for all cases. Instead, pass the generated code
through the indent command. Unix tools for the win!
Ian Romanick [Wed, 4 Oct 2006 20:45:59 +0000 (20:45 +0000)]
Divide categories into four groups as they are processed from the XML. Add
an iterator to iterate over the categories in order, starting with "core"
versions, then ARB extensions, then numbered non-ARB extensions, and finally
unnumbered extensions.
Use the new iterator in a couple places to ensure that output that is
grouped by catgory is generated in a consistent order.
More changes to the scripts are coming. The generated files will be
committed one time after all the changes are in. Too bad we're not using
GIT, or this would be easy. :(
Ian Romanick [Wed, 4 Oct 2006 18:58:10 +0000 (18:58 +0000)]
Add utility method client_supported_for_indirect.
The new method client_supported_for_indirect is used to determine whether or
not the client-side library supports the function for indirect rendering.
The may or may not have associated protocol that needs to be generated
(e.g., glVertexPointer does not, but glVertex3fv does).
Brian Paul [Wed, 4 Oct 2006 16:22:24 +0000 (16:22 +0000)]
in MakeContextCurrent() use old display pointer for __glXSetupForCommand(), bug 8443
Brian Paul [Wed, 4 Oct 2006 15:22:11 +0000 (15:22 +0000)]
use _swrast_span_default_color() in the disabled code too
Brian Paul [Wed, 4 Oct 2006 15:21:23 +0000 (15:21 +0000)]
call _swrast_span_default_color() to simplify _swrast_Bitmap(), improved comments
Brian Paul [Wed, 4 Oct 2006 15:06:27 +0000 (15:06 +0000)]
minor formatting fix
Felix Kuehling [Mon, 2 Oct 2006 20:34:06 +0000 (20:34 +0000)]
Bugzilla 6242: [mach64] Use private DMA buffers (only)
https://bugs.freedesktop.org/show_bug.cgi?id=6242
Patch by George Sapountzis: https://bugs.freedesktop.org/attachment.cgi?id=6271
Update to new mach64 DRM 2.0.0 with private DMA buffers.
Handle EAGAIN in mach64FireBlitLocked: call drmCommandWrite up to
MACH64_TIMEOUT times when EAGAIN is returned.
Also handle EAGAIN in mach64FlushVerticesLocked.
Brian Paul [Mon, 2 Oct 2006 15:20:23 +0000 (15:20 +0000)]
return null if no context
Brian Paul [Sun, 1 Oct 2006 16:03:05 +0000 (16:03 +0000)]
New SWspan and SWspanarrays typedefs.
Michel Dänzer [Fri, 29 Sep 2006 10:22:54 +0000 (10:22 +0000)]
i915: Fix wait for scheduled swap on secondary display.
Brian Paul [Fri, 29 Sep 2006 02:15:23 +0000 (02:15 +0000)]
updated protos for blend funcs
Brian Paul [Fri, 29 Sep 2006 02:12:07 +0000 (02:12 +0000)]
more changes for runtime renderbuffer depths
Brian Paul [Fri, 29 Sep 2006 01:26:55 +0000 (01:26 +0000)]
include mipmap.h
Brian Paul [Fri, 29 Sep 2006 01:24:26 +0000 (01:24 +0000)]
Move mipmap generation functions, texture scaling functions into new
mipmap.c file.
Brian Paul [Fri, 29 Sep 2006 01:22:53 +0000 (01:22 +0000)]
updated info about name mangling
Michel Dänzer [Thu, 28 Sep 2006 14:10:47 +0000 (14:10 +0000)]
Synchronize drawable to the pipe where the bigger part can be visible.
This requires the DDX driver to set the corresponding fields in the SAREA,
so check its minor version.
Michel Dänzer [Thu, 28 Sep 2006 14:10:07 +0000 (14:10 +0000)]
Add new I830 SAREA fields.
Michel Dänzer [Thu, 28 Sep 2006 14:09:20 +0000 (14:09 +0000)]
Add helper function that returns the current vblank sequence of a drawable.
Michel Dänzer [Thu, 28 Sep 2006 14:08:38 +0000 (14:08 +0000)]
Add helper function to calculate the area of the intersection of two rectangles.
Michel Dänzer [Thu, 28 Sep 2006 14:07:56 +0000 (14:07 +0000)]
i915: Handle DRM_VBLANK_SECONDARY when scheduling buffer swaps.
Michel Dänzer [Thu, 28 Sep 2006 14:07:12 +0000 (14:07 +0000)]
i915: Attempt to schedule buffer swap on target vertical blank when possible.
This has some advantages over the traditional way of first waiting for the
target vertical blank and then emitting the buffer swap, e.g.
* glXSwapBuffers returns immediately, only the next time the driver needs the
hardware lock will it block until the target vertical blank. This should
allow applications that don't intermix rendering and other processing to
start processing for the next frame right away.
* It's less likely to produce tearing.
Michel Dänzer [Thu, 28 Sep 2006 14:04:19 +0000 (14:04 +0000)]
Add driGetVBlankInterval() helper function.
This can be used by drivers to determine the current swap interval of a
drawable.
Michel Dänzer [Thu, 28 Sep 2006 14:03:41 +0000 (14:03 +0000)]
driWaitForVBlank: Add support for secondary vertical blank.
Michel Dänzer [Thu, 28 Sep 2006 14:03:02 +0000 (14:03 +0000)]
Some restructuring of the driWaitForVBlank() code.
Also some minor fixes for detecting when the deadline is met or missed, in
particular wrt wraparounds of the sequence number.
Michel Dänzer [Thu, 28 Sep 2006 14:02:05 +0000 (14:02 +0000)]
Make driDrawableInitVBlank() initialize the sequence number.
This prevents the first wait for vertical blank from timing out when the X
server has been running for a long time.
Brian Paul [Wed, 27 Sep 2006 14:00:37 +0000 (14:00 +0000)]
remove obsolete comment
Jeremy Kolb [Tue, 26 Sep 2006 23:56:20 +0000 (23:56 +0000)]
Update to use the new XCB naming convention.
Jeremy Kolb [Tue, 26 Sep 2006 23:47:04 +0000 (23:47 +0000)]
Added function convertStringForXCB. Deals with the recent XCB naming convention switch.
Updated the generated code to use the new XCB naming scheme.
Jeremy Kolb [Tue, 26 Sep 2006 23:45:28 +0000 (23:45 +0000)]
Update linux-dr-xcb config file to use LIBDRM_CFLAGS
Jerome Glisse [Tue, 26 Sep 2006 17:35:41 +0000 (17:35 +0000)]
Remove r200 dependency
Remove r200 dependency from the code as r200 merged
driver never worked (right ?) and we want to clean
the code.
Jerome Glisse [Tue, 26 Sep 2006 17:28:40 +0000 (17:28 +0000)]
Remove r200 dependency.
Remove r200*.h files dependency.
Michal Krol [Tue, 26 Sep 2006 16:06:35 +0000 (16:06 +0000)]
Prepend #extension 'MESA_shader_debug: require' to each shader.
Michal Krol [Tue, 26 Sep 2006 16:01:11 +0000 (16:01 +0000)]
Add GLSL preprocessor.
Michal Krol [Tue, 26 Sep 2006 12:10:33 +0000 (12:10 +0000)]
Fix Windows newlines.
Michal Krol [Tue, 26 Sep 2006 11:43:30 +0000 (11:43 +0000)]
Add syntax files for expression and directive preprocessor.
Fix syntax errors in builtin library 1.2 sources.
All derivative files (*_gc.h and *_syn.h) are generated by Makefile.
Brian Paul [Mon, 25 Sep 2006 23:57:39 +0000 (23:57 +0000)]
Initial work for supporting different renderbuffer color depths at runtime.
Michel Dänzer [Mon, 25 Sep 2006 16:34:40 +0000 (16:34 +0000)]
Fix and re-enable swizzling paths for big endian platforms.
Keith Whitwell [Mon, 25 Sep 2006 09:14:26 +0000 (09:14 +0000)]
bring in active_sz mechanism from i965 driver. Fixes bug 8410
Keith Whitwell [Mon, 25 Sep 2006 09:12:25 +0000 (09:12 +0000)]
Fixup one place where attrsz was being used instead of active_sz
Brian Paul [Sun, 24 Sep 2006 19:59:30 +0000 (19:59 +0000)]
Change logicop, blend, masking functions to use the colors/indexes in the
sw_span object, rather than an explicit parameter.
Brian Paul [Sun, 24 Sep 2006 19:46:42 +0000 (19:46 +0000)]
Roll the multi_write_rgba_span() code into _swrast_write_rgba_span().
Brian Paul [Sun, 24 Sep 2006 16:34:56 +0000 (16:34 +0000)]
use span.array->rgba instead of local var in accum_return()