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...
Brian [Fri, 7 Dec 2007 22:46:10 +0000 (15:46 -0700)]
Make sp_tile_cache_flush_clear() static.
Also, misc clean-ups, comments.
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...
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.
Brian [Fri, 7 Dec 2007 20:19:00 +0000 (13:19 -0700)]
don't dereference pt after realloc - fixes valgrind error
Brian [Fri, 7 Dec 2007 20:08:28 +0000 (13:08 -0700)]
add some whitespace
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.
Brian [Fri, 7 Dec 2007 17:18:34 +0000 (10:18 -0700)]
minor code movement
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().
Brian [Fri, 7 Dec 2007 15:24:56 +0000 (08:24 -0700)]
byteswapping fixes in choose_pixel_format()
Brian [Fri, 7 Dec 2007 15:24:33 +0000 (08:24 -0700)]
remove stray ;
Brian [Fri, 7 Dec 2007 14:58:31 +0000 (07:58 -0700)]
Remove obsolete xlib driver files
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.
Brian [Fri, 7 Dec 2007 14:53:21 +0000 (07:53 -0700)]
added ST_SURFACE_DEPTH
Brian [Fri, 7 Dec 2007 14:53:06 +0000 (07:53 -0700)]
move surface pitch calculation so it always gets updated
Brian [Fri, 7 Dec 2007 14:52:35 +0000 (07:52 -0700)]
fix void pointer arithmetic warnings
Brian [Fri, 7 Dec 2007 14:48:33 +0000 (07:48 -0700)]
silence void ptr arithmetic warning
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.
Michel Dänzer [Thu, 6 Dec 2007 10:30:34 +0000 (11:30 +0100)]
Remove remnants of 'intel' from active state tracker code.
Michel Dänzer [Thu, 6 Dec 2007 10:25:40 +0000 (11:25 +0100)]
st_mesa_format_to_pipe_format: Handle MESA_FORMAT_ARGB4444.
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.
Brian [Wed, 5 Dec 2007 21:57:19 +0000 (14:57 -0700)]
Add dependency checking for Cell driver sources.
Brian [Wed, 5 Dec 2007 21:54:29 +0000 (14:54 -0700)]
silence warning
Brian [Wed, 5 Dec 2007 21:54:19 +0000 (14:54 -0700)]
added PIPE_FORMAT_U_B8_G8_R8_A8 case in color_value()
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.
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.
Brian [Wed, 5 Dec 2007 21:48:09 +0000 (14:48 -0700)]
added tile funcs for B8G8R8A8 format
Brian [Wed, 5 Dec 2007 21:47:27 +0000 (14:47 -0700)]
added B8G8R8A8 format
Brian [Sun, 2 Dec 2007 22:34:27 +0000 (15:34 -0700)]
added -fPIC
Brian [Sun, 2 Dec 2007 22:34:14 +0000 (15:34 -0700)]
don't build libglw
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.
Brian [Sun, 2 Dec 2007 22:20:13 +0000 (15:20 -0700)]
glut doesn't need -lXt
José Fonseca [Sun, 2 Dec 2007 17:13:28 +0000 (17:13 +0000)]
Cover state tracker and winsys driver. Tweak parameters.
Michel Dänzer [Wed, 28 Nov 2007 18:04:54 +0000 (19:04 +0100)]
Move dimensions from struct pipe_region to struct pipe_surface.
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.
Michal Krol [Fri, 23 Nov 2007 13:48:12 +0000 (13:48 +0000)]
gallium: remove sp_headers.h references.
Michal Krol [Fri, 23 Nov 2007 13:28:16 +0000 (13:28 +0000)]
gallium: reorg tgsi directories.
Michal Krol [Fri, 23 Nov 2007 13:27:20 +0000 (13:27 +0000)]
gallium: back out winsys interface changes
José Fonseca [Tue, 20 Nov 2007 13:26:34 +0000 (13:26 +0000)]
Use the new vertex buffer draw stage.
José Fonseca [Tue, 20 Nov 2007 13:26:00 +0000 (13:26 +0000)]
New vertex buffer stage.
José Fonseca [Mon, 19 Nov 2007 19:22:30 +0000 (19:22 +0000)]
Fix build.
José Fonseca [Mon, 19 Nov 2007 22:01:32 +0000 (22:01 +0000)]
The right include was mtypes.h.
José Fonseca [Mon, 19 Nov 2007 17:23:55 +0000 (17:23 +0000)]
Fix build errors.
Michal [Sun, 18 Nov 2007 13:20:57 +0000 (13:20 +0000)]
Fix compatibility issues between gcc and msvc.
Michal [Sat, 17 Nov 2007 14:26:24 +0000 (14:26 +0000)]
Make it compile under Win32.
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.
Brian [Wed, 21 Nov 2007 23:03:16 +0000 (16:03 -0700)]
more simplification, clean-up in 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.
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.
Brian [Tue, 20 Nov 2007 15:36:06 +0000 (08:36 -0700)]
add PIPE_FORMAT_Z24_S8 support to softpipe patsh
Brian [Tue, 20 Nov 2007 15:30:10 +0000 (08:30 -0700)]
initial support for PIPE_FORMAT_Z24_S8
Brian [Tue, 20 Nov 2007 01:16:07 +0000 (18:16 -0700)]
optimize earlyz_quad(), add comments, remove unneeded #includes
Brian [Tue, 20 Nov 2007 01:15:21 +0000 (18:15 -0700)]
optimize linear_interpolation(), perspective_interpolation() functions
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.
José Fonseca [Sat, 17 Nov 2007 15:06:01 +0000 (15:06 +0000)]
Fix typo
José Fonseca [Fri, 16 Nov 2007 17:36:35 +0000 (17:36 +0000)]
Proper fence reference counting.
Brian [Sat, 17 Nov 2007 00:13:26 +0000 (17:13 -0700)]
more convenient debug code
Brian [Sat, 17 Nov 2007 00:13:01 +0000 (17:13 -0700)]
Reimplement glRasterPos using the private 'draw' module.
Brian [Sat, 17 Nov 2007 00:12:22 +0000 (17:12 -0700)]
adjustments so st_feedback_draw_vbo() can be used for glRasterPos
Brian [Fri, 16 Nov 2007 17:39:08 +0000 (10:39 -0700)]
note problem with fragment coord Y orientation
Brian [Fri, 16 Nov 2007 16:31:25 +0000 (09:31 -0700)]
added a clip-bypass flag to rasterizer state
José Fonseca [Thu, 15 Nov 2007 17:07:50 +0000 (17:07 +0000)]
Include fences in the i915simple winsys interface.
Brian [Fri, 9 Nov 2007 14:54:46 +0000 (07:54 -0700)]
comments, assertions
Brian [Fri, 9 Nov 2007 14:54:28 +0000 (07:54 -0700)]
minor simplifcation in vertex_fetch()
Alan Hourihane [Fri, 9 Nov 2007 09:21:40 +0000 (09:21 +0000)]
remove duplicate init func
Brian [Fri, 9 Nov 2007 00:07:12 +0000 (17:07 -0700)]
Reorganize user-space vertex fields in draw_context into 'user' group.
This sub-struct collects the incoming user-provided data/pointers in one place.
Ex: draw->mapped_vbuffer becomes draw->user.vbuffer, etc.
Brian [Thu, 8 Nov 2007 23:55:29 +0000 (16:55 -0700)]
remove unneeded #includes, added assertion in draw_compute_vertex_size()
Brian [Thu, 8 Nov 2007 23:37:25 +0000 (16:37 -0700)]
Remove unneeded header, draw_prim.h
Brian [Thu, 8 Nov 2007 23:36:00 +0000 (16:36 -0700)]
Fix minor logic error in get_queued_prim() which caused flushing when there was still room in the prim queue.
Brian [Thu, 8 Nov 2007 23:32:24 +0000 (16:32 -0700)]
new comments
Brian [Thu, 8 Nov 2007 23:26:55 +0000 (16:26 -0700)]
remove unneeded #includes
Brian [Thu, 8 Nov 2007 23:25:17 +0000 (16:25 -0700)]
comments, remove unneeded #includes
Brian [Thu, 8 Nov 2007 22:02:42 +0000 (15:02 -0700)]
For TGSI_TEXTURE_2D/RECT, need to provide 3 coords (STP) in case shadow compare mode is enabled.
Brian [Thu, 8 Nov 2007 22:01:13 +0000 (15:01 -0700)]
Implement shadow comparisons.
Brian [Thu, 8 Nov 2007 22:00:11 +0000 (15:00 -0700)]
use pipe_surface_reference() in sp_tile_cache_set_surface()
Brian [Thu, 8 Nov 2007 21:40:29 +0000 (14:40 -0700)]
simplify depth_value(), return proper value for Z16 format
Brian [Thu, 8 Nov 2007 20:17:43 +0000 (13:17 -0700)]
fix bad width/height code in softpipe_clear()
Brian [Thu, 8 Nov 2007 18:44:12 +0000 (11:44 -0700)]
Remove TGSI_OPCODE_TXP
Use TGSI_OPCODE_TEX with ExtDivide=TGSI_EXTSWIZZLE_W instead.
Brian [Thu, 8 Nov 2007 18:39:42 +0000 (11:39 -0700)]
check for divide by W flag when translating TGSI_OPCODE_TEX (fixes projected textures)
Brian [Thu, 8 Nov 2007 18:38:50 +0000 (11:38 -0700)]
new init_renderbuffer_bits() helper
Brian [Thu, 8 Nov 2007 17:10:35 +0000 (10:10 -0700)]
tweak anisotropic filtering code
Brian [Thu, 8 Nov 2007 17:08:24 +0000 (10:08 -0700)]
enable PIPE_CAP_TEXTURE_SHADOW_MAP (but not quite working yet)
Brian [Thu, 8 Nov 2007 17:07:57 +0000 (10:07 -0700)]
remove translate_compare_func(), use i915_translate_compare_func()
Brian [Thu, 8 Nov 2007 16:33:33 +0000 (09:33 -0700)]
move EXT_shadow_funcs assignment
Brian [Thu, 8 Nov 2007 16:33:13 +0000 (09:33 -0700)]
set sampler state for shadow test
Brian [Thu, 8 Nov 2007 16:31:57 +0000 (09:31 -0700)]
Replace gl_stencil_func_to_sp() and gl_depth_func_to_sp() with st_compare_func_to_pipe()
Brian [Thu, 8 Nov 2007 16:16:14 +0000 (09:16 -0700)]
Fix some issues hit when rendering to a depth-only renderbuffer (shadowtex).
Added 16bpp case to translate_depth_format().
Added framebuffer_size() to determine framebuffer size.
Brian [Thu, 8 Nov 2007 16:14:43 +0000 (09:14 -0700)]
in check_end_texture_render(), test for presence of a renderbuffer and texobj
Brian [Thu, 8 Nov 2007 15:52:36 +0000 (08:52 -0700)]
remove unneeded #include
Brian [Thu, 8 Nov 2007 15:22:42 +0000 (08:22 -0700)]
Added pipe->get_paramf() to query float limits.
So far max point size, line width, texture anistopy and lod bias.
Brian [Thu, 8 Nov 2007 14:58:53 +0000 (07:58 -0700)]
check for fence==NULL in intel_batchbuffer_finish(), fixes glxinfo crash on exit
Michel Dänzer [Thu, 8 Nov 2007 12:10:18 +0000 (13:10 +0100)]
Rename struct field 'private' to 'priv'.
This broke the LLVM build because 'private' is a C++ keyword.
Brian [Thu, 8 Nov 2007 00:29:14 +0000 (17:29 -0700)]
fix warning
Brian [Thu, 8 Nov 2007 00:17:32 +0000 (17:17 -0700)]
update flush/fence comments for i915_flush()
Brian [Thu, 8 Nov 2007 00:16:47 +0000 (17:16 -0700)]
Remove winsys->wait_idle(), subsumed by pipe->flush().
Connect intel_i915_batch_finish() into i915_winsys, just like intel_i915_batch_flush().
Call i915_winsys->batch_finish() in response to pipe->flush(PIPE_FLUSH_WAIT).
Now all the batchbuffer/fence code is in one place and a little cleaner.
Brian [Wed, 7 Nov 2007 23:59:37 +0000 (16:59 -0700)]
New PIPE_FLUSH_WAIT flag for pipe->flush().
The state tracker doesn't have to directly call winsys->wait_idle() anymore.
glFlush and glFinish both go through pipe->flush() now.
Brian [Wed, 7 Nov 2007 23:07:17 +0000 (16:07 -0700)]
Remove context dependencies in winsys layer.
The winsys object is now per-screen and shared by multiple contexts.
The regionPool is now part of the i915 winsys layer.
The winsys wait_idle() and flush_frontbuffer() funcs will get more attention...
Brian [Wed, 7 Nov 2007 22:57:19 +0000 (15:57 -0700)]
enable GL_ARB/NV_point_sprite together
Brian [Wed, 7 Nov 2007 22:22:31 +0000 (15:22 -0700)]
cosmetic fix to driFenceFinish() call
Brian [Wed, 7 Nov 2007 22:22:07 +0000 (15:22 -0700)]
replace magic number 3 with DRM_FENCE_TYPE_EXE | DRM_I915_FENCE_TYPE_RW in driFenceFinish() call