mesa.git
16 years agoFix up some confusion wrt winsys->buffer_create alignment / flags parameters.
Michel Dänzer [Mon, 10 Dec 2007 16:31:52 +0000 (17:31 +0100)]
Fix up some confusion wrt winsys->buffer_create alignment / flags parameters.

intel_winsys works again.

16 years agoLink fewer common objects into Gallium winsys layers.
Michel Dänzer [Mon, 10 Dec 2007 15:34:25 +0000 (16:34 +0100)]
Link fewer common objects into Gallium winsys layers.

These are useless or even harmful due to referencing symbols no longer
available in the Gallium build.

16 years agoCorrect user VBO size.
Ben Skeggs [Mon, 10 Dec 2007 10:07:53 +0000 (21:07 +1100)]
Correct user VBO size.

16 years agoRemove stray references to struct pipe_region.
Michel Dänzer [Mon, 10 Dec 2007 08:11:57 +0000 (09:11 +0100)]
Remove stray references to struct pipe_region.

16 years agouse quadColor local var
Brian [Mon, 10 Dec 2007 04:44:26 +0000 (21:44 -0700)]
use quadColor local var

16 years agoFix looping for multi-color buffer writing.
Brian [Mon, 10 Dec 2007 04:10:39 +0000 (21:10 -0700)]
Fix looping for multi-color buffer writing.

16 years agoadded null ptr check in draw_destroy() for rasterizer stage
Brian [Mon, 10 Dec 2007 03:45:20 +0000 (20:45 -0700)]
added null ptr check in draw_destroy() for rasterizer stage

16 years agoAdapt for winsys interface changes.
José Fonseca [Sun, 9 Dec 2007 18:26:26 +0000 (18:26 +0000)]
Adapt for winsys interface changes.

16 years agogallium: use SSE by default
José Fonseca [Wed, 5 Dec 2007 15:28:39 +0000 (15:28 +0000)]
gallium: use SSE by default

16 years agoAllow tgsi_dump print-out to stderr or a string buffer.
Michal [Wed, 28 Nov 2007 18:10:31 +0000 (18:10 +0000)]
Allow tgsi_dump print-out to stderr or a string buffer.
Handle source register complement modifier in exec and dump.

16 years agogallium: Remove buffer_unfence and buffer_finish.
José Fonseca [Sun, 25 Nov 2007 20:23:10 +0000 (20:23 +0000)]
gallium: Remove buffer_unfence and buffer_finish.

These interfaces have been deemed useless by Keith.

16 years agogallium: more trivial tests
Keith Whitwell [Sun, 25 Nov 2007 15:06:54 +0000 (15:06 +0000)]
gallium: more trivial tests

16 years agogallium: Reusable pipe buffer library.
José Fonseca [Fri, 23 Nov 2007 17:22:54 +0000 (17:22 +0000)]
gallium: Reusable pipe buffer library.

This is an optional library that winsys drivers can use to simplify memory
management, and help meet the winsys interface requirements.

16 years agogallium: fix ordering of arguments to pack_ui32_float4
Keith Whitwell [Fri, 23 Nov 2007 14:50:26 +0000 (14:50 +0000)]
gallium: fix ordering of arguments to pack_ui32_float4

16 years agogallium: remove unneeded depth buffer
Keith Whitwell [Fri, 23 Nov 2007 14:49:54 +0000 (14:49 +0000)]
gallium: remove unneeded depth buffer

16 years agogallium: initialized draw element buffer to NULL
Keith Whitwell [Fri, 23 Nov 2007 14:44:54 +0000 (14:44 +0000)]
gallium: initialized draw element buffer to NULL

16 years agogallium: add support for aliased 4ub format
Keith Whitwell [Fri, 23 Nov 2007 12:03:45 +0000 (12:03 +0000)]
gallium: add support for aliased 4ub format

16 years agogallium: support the full range of possible vertex types
Keith Whitwell [Fri, 23 Nov 2007 12:02:50 +0000 (12:02 +0000)]
gallium: support the full range of possible vertex types

16 years agogallium: add draw_stage::destroy().
Michal [Fri, 23 Nov 2007 11:30:51 +0000 (11:30 +0000)]
gallium: add draw_stage::destroy().

16 years agogallium: Comment on winsys's fence functions. Fix comment layout for doxygen.
José Fonseca [Fri, 23 Nov 2007 10:35:53 +0000 (10:35 +0000)]
gallium: Comment on winsys's fence functions. Fix comment layout for doxygen.

16 years agotemporary _mesa_printf symbol
keithw [Wed, 21 Nov 2007 17:12:39 +0000 (17:12 +0000)]
temporary _mesa_printf symbol

16 years ago[pipe]: add Offset() util macro
keithw [Wed, 21 Nov 2007 11:04:20 +0000 (11:04 +0000)]
[pipe]: add Offset() util macro

16 years agoDocument return types.
José Fonseca [Tue, 20 Nov 2007 14:27:52 +0000 (14:27 +0000)]
Document return types.

16 years agoadd fence interfaces and buffer create flags to pipe_winsys
keithw [Mon, 19 Nov 2007 20:05:38 +0000 (20:05 +0000)]
add fence interfaces and buffer create flags to pipe_winsys

16 years agoTry to reduce the frequency of calls to pipe->get_tex_surface()
Brian [Sat, 8 Dec 2007 04:21:58 +0000 (21:21 -0700)]
Try to reduce the frequency of calls to pipe->get_tex_surface()

Save the surface info in the tile cache and re-use whenever possible.

16 years agoshorten loops over color bufs
Brian [Sat, 8 Dec 2007 03:58:01 +0000 (20:58 -0700)]
shorten loops over color bufs

16 years agocode re-org in softpipe_clear()
Brian [Sat, 8 Dec 2007 03:31:26 +0000 (20:31 -0700)]
code re-org in softpipe_clear()

16 years agoclean-ups
Brian [Sat, 8 Dec 2007 03:24:24 +0000 (20:24 -0700)]
clean-ups

16 years agoTile clearing optimizations.
Brian [Sat, 8 Dec 2007 03:13:10 +0000 (20:13 -0700)]
Tile clearing optimizations.

Clear using int values rather than floats when possible.  Better performance now.

16 years agoDisable, remove tnl module from the Gallium build since no longer used.
Brian [Sat, 8 Dec 2007 00:26:06 +0000 (17:26 -0700)]
Disable, remove tnl module from the Gallium build since no longer used.

16 years agoNew vbo_set_draw_func() to keep vbo context opaque to state tracker and tnl module.
Brian [Sat, 8 Dec 2007 00:24:42 +0000 (17:24 -0700)]
New vbo_set_draw_func() to keep vbo context opaque to state tracker and tnl module.

16 years agoDisable swrast, swrast_setup and driverfuncs in the build.
Brian [Sat, 8 Dec 2007 00:14:02 +0000 (17:14 -0700)]
Disable swrast, swrast_setup and driverfuncs in the build.

The gallium/state tracker no longer uses them and this speeds up the build a bit.

16 years agoMove _mesa_init_glsl_driver_functions() into shader_api.c
Brian [Sat, 8 Dec 2007 00:11:30 +0000 (17:11 -0700)]
Move _mesa_init_glsl_driver_functions() into shader_api.c

This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c

16 years agoDefine PIPE_FORMAT_ tokens as an enum set, rather than #defines.
Brian [Fri, 7 Dec 2007 23:46:30 +0000 (16:46 -0700)]
Define PIPE_FORMAT_ tokens as an enum set, rather than #defines.

This makes debugging a _lot_ easier.
In gdb, "print format" used to display 613570600, now you see PIPE_FORMAT_A8R8G8B8_UNORM.

16 years agoinclude tgsi_dump.h
Brian [Fri, 7 Dec 2007 23:22:39 +0000 (16:22 -0700)]
include tgsi_dump.h

16 years agoReplace "duplicate" formats
Brian [Fri, 7 Dec 2007 23:15:14 +0000 (16:15 -0700)]
Replace "duplicate" formats

16 years agoGet rid of "duplicate" formats.
Brian [Fri, 7 Dec 2007 23:01:31 +0000 (16:01 -0700)]
Get rid of "duplicate" formats.

For example, replace PIPE_FORMAT_U_A8_R8_G8_B8 with PIPE_FORMAT_A8R8G8B8_UNORM

16 years agoEnable the tile clear "optimization"
Brian [Fri, 7 Dec 2007 22:47:39 +0000 (15:47 -0700)]
Enable the tile clear "optimization"

Not really faster yet because we're using the float-valued put/get_tile()
functions so we're doing quite a bit of float/int conversion.  That can
be fixed though...

16 years agoMake sp_tile_cache_flush_clear() static.
Brian [Fri, 7 Dec 2007 22:46:10 +0000 (15:46 -0700)]
Make sp_tile_cache_flush_clear() static.

Also, misc clean-ups, comments.

16 years agoConvert the clearValue back to floats for sp_tile_cache_clear()
Brian [Fri, 7 Dec 2007 22:44:58 +0000 (15:44 -0700)]
Convert the clearValue back to floats for sp_tile_cache_clear()

It might be nice if sp->clear() took the color/value as floats...

16 years agoSome tile cache improvements, clean-ups.
Brian [Fri, 7 Dec 2007 22:32:13 +0000 (15:32 -0700)]
Some tile cache improvements, clean-ups.

Code for optimized clears (per-tile flag indicating clear status) in place
but not enabled yet.

16 years agodon't dereference pt after realloc - fixes valgrind error
Brian [Fri, 7 Dec 2007 20:19:00 +0000 (13:19 -0700)]
don't dereference pt after realloc - fixes valgrind error

16 years agoadd some whitespace
Brian [Fri, 7 Dec 2007 20:08:28 +0000 (13:08 -0700)]
add some whitespace

16 years agoMove struct softpipe_texture definition into sp_texture.h
Brian [Fri, 7 Dec 2007 17:21:56 +0000 (10:21 -0700)]
Move struct softpipe_texture definition into sp_texture.h

Also, added softpipe_texture() cast wrapper.

16 years agominor code movement
Brian [Fri, 7 Dec 2007 17:18:34 +0000 (10:18 -0700)]
minor code movement

16 years agoAdd PIPE_FORMAT_U_B8_G8_R8_A8 in default_rgba_format().
Brian [Fri, 7 Dec 2007 15:28:59 +0000 (08:28 -0700)]
Add PIPE_FORMAT_U_B8_G8_R8_A8 in default_rgba_format().

Also, rewrite/simplify default_rgba_format() and default_depth_format().

16 years agobyteswapping fixes in choose_pixel_format()
Brian [Fri, 7 Dec 2007 15:24:56 +0000 (08:24 -0700)]
byteswapping fixes in choose_pixel_format()

16 years agoremove stray ;
Brian [Fri, 7 Dec 2007 15:24:33 +0000 (08:24 -0700)]
remove stray ;

16 years agoRemove obsolete xlib driver files
Brian [Fri, 7 Dec 2007 14:58:31 +0000 (07:58 -0700)]
Remove obsolete xlib driver files

16 years agoOverhaul the Xlib winsys layer.
Brian [Fri, 7 Dec 2007 14:57:54 +0000 (07:57 -0700)]
Overhaul the Xlib winsys layer.

Front/back color buffers are now allocated with ordinary malloc() via the
winsys buffer functions.
To display surfaces in SwapBuffers() or flush_frontbuffer() we create an
XImage that wraps the surface, then use XPutImage to copy to the window.
Shared memory transport disabled for now.

16 years agoadded ST_SURFACE_DEPTH
Brian [Fri, 7 Dec 2007 14:53:21 +0000 (07:53 -0700)]
added ST_SURFACE_DEPTH

16 years agomove surface pitch calculation so it always gets updated
Brian [Fri, 7 Dec 2007 14:53:06 +0000 (07:53 -0700)]
move surface pitch calculation so it always gets updated

16 years agofix void pointer arithmetic warnings
Brian [Fri, 7 Dec 2007 14:52:35 +0000 (07:52 -0700)]
fix void pointer arithmetic warnings

16 years agosilence void ptr arithmetic warning
Brian [Fri, 7 Dec 2007 14:48:33 +0000 (07:48 -0700)]
silence void ptr arithmetic warning

16 years agoEliminate struct pipe_region.
Michel Dänzer [Fri, 7 Dec 2007 11:30:35 +0000 (12:30 +0100)]
Eliminate struct pipe_region.

Directly use struct pipe_buffer_handle for storage and struct pipe_surface for
(un)mapping.

16 years agoRemove remnants of 'intel' from active state tracker code.
Michel Dänzer [Thu, 6 Dec 2007 10:30:34 +0000 (11:30 +0100)]
Remove remnants of 'intel' from active state tracker code.

16 years agost_mesa_format_to_pipe_format: Handle MESA_FORMAT_ARGB4444.
Michel Dänzer [Thu, 6 Dec 2007 10:25:40 +0000 (11:25 +0100)]
st_mesa_format_to_pipe_format: Handle MESA_FORMAT_ARGB4444.

16 years agoHide texture layout details from the state tracker.
Michel Dänzer [Fri, 30 Nov 2007 19:48:03 +0000 (20:48 +0100)]
Hide texture layout details from the state tracker.

pipe->get_tex_surface() has to be used for access to texture image data.

16 years agoAdd dependency checking for Cell driver sources.
Brian [Wed, 5 Dec 2007 21:57:19 +0000 (14:57 -0700)]
Add dependency checking for Cell driver sources.

16 years agosilence warning
Brian [Wed, 5 Dec 2007 21:54:29 +0000 (14:54 -0700)]
silence warning

16 years agoadded PIPE_FORMAT_U_B8_G8_R8_A8 case in color_value()
Brian [Wed, 5 Dec 2007 21:54:19 +0000 (14:54 -0700)]
added PIPE_FORMAT_U_B8_G8_R8_A8 case in color_value()

16 years agoFix endianness bug in _mesa_texstore_argb8888()
Brian [Wed, 5 Dec 2007 21:53:19 +0000 (14:53 -0700)]
Fix endianness bug in _mesa_texstore_argb8888()

On big-endian, storing in _mesa_texformat_argb8888 format produced wrong results.
Also, clean-up nearby code to match.

16 years agoadded B8G8R8A8 support and improved pixel format selection when doing remote display...
Brian [Wed, 5 Dec 2007 21:51:08 +0000 (14:51 -0700)]
added B8G8R8A8 support and improved pixel format selection when doing remote display to X server of different endianness.

16 years agoadded tile funcs for B8G8R8A8 format
Brian [Wed, 5 Dec 2007 21:48:09 +0000 (14:48 -0700)]
added tile funcs for B8G8R8A8 format

16 years agoadded B8G8R8A8 format
Brian [Wed, 5 Dec 2007 21:47:27 +0000 (14:47 -0700)]
added B8G8R8A8 format

16 years agoadded -fPIC
Brian [Sun, 2 Dec 2007 22:34:27 +0000 (15:34 -0700)]
added -fPIC

16 years agodon't build libglw
Brian [Sun, 2 Dec 2007 22:34:14 +0000 (15:34 -0700)]
don't build libglw

16 years agoInitial Cell driver infrastructure.
Brian [Sun, 2 Dec 2007 22:23:51 +0000 (15:23 -0700)]
Initial Cell driver infrastructure.

No real code yet.  Just stand-ins and make/build infrastructure.

16 years agoglut doesn't need -lXt
Brian [Sun, 2 Dec 2007 22:20:13 +0000 (15:20 -0700)]
glut doesn't need -lXt

16 years agoCover state tracker and winsys driver. Tweak parameters.
José Fonseca [Sun, 2 Dec 2007 17:13:28 +0000 (17:13 +0000)]
Cover state tracker and winsys driver. Tweak parameters.

17 years agoMove dimensions from struct pipe_region to struct pipe_surface.
Michel Dänzer [Wed, 28 Nov 2007 18:04:54 +0000 (19:04 +0100)]
Move dimensions from struct pipe_region to struct pipe_surface.

17 years agoCleanup PIPE_FORMAT names.
Michal Krol [Sat, 24 Nov 2007 16:02:31 +0000 (16:02 +0000)]
Cleanup PIPE_FORMAT names.
Add a function that builds a display name of a given format token.

17 years agogallium: remove sp_headers.h references.
Michal Krol [Fri, 23 Nov 2007 13:48:12 +0000 (13:48 +0000)]
gallium: remove sp_headers.h references.

17 years agogallium: reorg tgsi directories.
Michal Krol [Fri, 23 Nov 2007 13:28:16 +0000 (13:28 +0000)]
gallium: reorg tgsi directories.

17 years agogallium: back out winsys interface changes
Michal Krol [Fri, 23 Nov 2007 13:27:20 +0000 (13:27 +0000)]
gallium: back out winsys interface changes

17 years agoUse the new vertex buffer draw stage.
José Fonseca [Tue, 20 Nov 2007 13:26:34 +0000 (13:26 +0000)]
Use the new vertex buffer draw stage.

17 years agoNew vertex buffer stage.
José Fonseca [Tue, 20 Nov 2007 13:26:00 +0000 (13:26 +0000)]
New vertex buffer stage.

17 years agoFix build.
José Fonseca [Mon, 19 Nov 2007 19:22:30 +0000 (19:22 +0000)]
Fix build.

17 years agoThe right include was mtypes.h.
José Fonseca [Mon, 19 Nov 2007 22:01:32 +0000 (22:01 +0000)]
The right include was mtypes.h.

17 years agoFix build errors.
José Fonseca [Mon, 19 Nov 2007 17:23:55 +0000 (17:23 +0000)]
Fix build errors.

17 years agoFix compatibility issues between gcc and msvc.
Michal [Sun, 18 Nov 2007 13:20:57 +0000 (13:20 +0000)]
Fix compatibility issues between gcc and msvc.

17 years agoMake it compile under Win32.
Michal [Sat, 17 Nov 2007 14:26:24 +0000 (14:26 +0000)]
Make it compile under Win32.

17 years agoRemove fences from the i915simple winsys interface.
José Fonseca [Thu, 22 Nov 2007 10:56:09 +0000 (10:56 +0000)]
Remove fences from the i915simple winsys interface.

Fences will be part of the pipe winsys interface, so remove this to avoid
merge conflicts later on.

This reverts commit ca7f68a7cf25a51f382bba8c42d8c6ab7db57b5d.
This reverts commit dec60d33b2570cf2bdce72a00a1539ee93133f91.
This reverts commit 90dd0cb822f2fe14258c786e5c37da69472b7d17.

17 years agomore simplification, clean-up in draw_set_vertex_info()
Brian [Wed, 21 Nov 2007 23:03:16 +0000 (16:03 -0700)]
more simplification, clean-up in draw_set_vertex_info()

17 years agoReplace draw_set_vertex_attributes() with simpler draw_set_vertex_info().
Brian [Wed, 21 Nov 2007 23:00:57 +0000 (16:00 -0700)]
Replace draw_set_vertex_attributes() with simpler draw_set_vertex_info().

Just pass in the vertex_info object and make a copy of it.

17 years agoSimplify draw module's vertex_info.
Brian [Wed, 21 Nov 2007 22:40:20 +0000 (15:40 -0700)]
Simplify draw module's vertex_info.

No longer store the vertex header and clip pos info in the draw module's
vertex_info.  The vertex_info just describes the data[] elements.
This simplifies the code in several places.

17 years agoadd PIPE_FORMAT_Z24_S8 support to softpipe patsh
Brian [Tue, 20 Nov 2007 15:36:06 +0000 (08:36 -0700)]
add PIPE_FORMAT_Z24_S8 support to softpipe patsh

17 years agoinitial support for PIPE_FORMAT_Z24_S8
Brian [Tue, 20 Nov 2007 15:30:10 +0000 (08:30 -0700)]
initial support for PIPE_FORMAT_Z24_S8

17 years agooptimize earlyz_quad(), add comments, remove unneeded #includes
Brian [Tue, 20 Nov 2007 01:16:07 +0000 (18:16 -0700)]
optimize earlyz_quad(), add comments, remove unneeded #includes

17 years agooptimize linear_interpolation(), perspective_interpolation() functions
Brian [Tue, 20 Nov 2007 01:15:21 +0000 (18:15 -0700)]
optimize linear_interpolation(), perspective_interpolation() functions

17 years agoImplement early depth test.
Michal Krol [Sun, 18 Nov 2007 18:20:20 +0000 (18:20 +0000)]
Implement early depth test.

Early depth test is enabled when depth test is enabled and
alpha test is disabled and fragment shader does not write
depth.
The early-z is implemented by moving the depth test stage
just before the fragment shader stage and prepending it
with an earlyz stage, introduced with this commit.
The earlyz stage prepares the quad->outputs.depth for
the following depth test stage by interpolating Z position,
just as the fragment shader would do.

17 years agoFix typo
José Fonseca [Sat, 17 Nov 2007 15:06:01 +0000 (15:06 +0000)]
Fix typo

17 years agoProper fence reference counting.
José Fonseca [Fri, 16 Nov 2007 17:36:35 +0000 (17:36 +0000)]
Proper fence reference counting.

17 years agomore convenient debug code
Brian [Sat, 17 Nov 2007 00:13:26 +0000 (17:13 -0700)]
more convenient debug code

17 years agoReimplement glRasterPos using the private 'draw' module.
Brian [Sat, 17 Nov 2007 00:13:01 +0000 (17:13 -0700)]
Reimplement glRasterPos using the private 'draw' module.

17 years agoadjustments so st_feedback_draw_vbo() can be used for glRasterPos
Brian [Sat, 17 Nov 2007 00:12:22 +0000 (17:12 -0700)]
adjustments so st_feedback_draw_vbo() can be used for glRasterPos

17 years agonote problem with fragment coord Y orientation
Brian [Fri, 16 Nov 2007 17:39:08 +0000 (10:39 -0700)]
note problem with fragment coord Y orientation

17 years agoadded a clip-bypass flag to rasterizer state
Brian [Fri, 16 Nov 2007 16:31:25 +0000 (09:31 -0700)]
added a clip-bypass flag to rasterizer state

17 years agoInclude fences in the i915simple winsys interface.
José Fonseca [Thu, 15 Nov 2007 17:07:50 +0000 (17:07 +0000)]
Include fences in the i915simple winsys interface.

17 years agocomments, assertions
Brian [Fri, 9 Nov 2007 14:54:46 +0000 (07:54 -0700)]
comments, assertions