Makefile | 2 configs/autoconf.in | 2 configs/darwin | 7 configs/default | 4 configs/linux-osmesa | 6 configs/linux-osmesa16 | 2 configs/linux-osmesa32 | 2 configure.ac | 26 docs/devinfo.html | 9 docs/lists.html | 9 docs/news.html | 8 docs/relnotes-7.8.2.html | 108 include/GL/glext.h | 3806 +- include/GL/glxext.h | 4 progs/demos/rain.cxx | 2 progs/egl/Makefile | 8 progs/osdemos/Makefile | 2 progs/osdemos/ostest1.c | 6 progs/xdemos/Makefile | 4 src/egl/drivers/dri2/egl_dri2.c | 4 src/egl/drivers/glx/Makefile | 4 src/egl/main/Makefile | 2 src/gallium/auxiliary/draw/draw_context.c | 65 src/gallium/auxiliary/draw/draw_context.h | 5 src/gallium/auxiliary/draw/draw_pipe_aaline.c | 49 src/gallium/auxiliary/draw/draw_pipe_aapoint.c | 39 src/gallium/auxiliary/draw/draw_pipe_wide_line.c | 34 src/gallium/auxiliary/draw/draw_pipe_wide_point.c | 20 src/gallium/auxiliary/draw/draw_private.h | 15 src/gallium/auxiliary/draw/draw_vs_ppc.c | 2 src/gallium/auxiliary/indices/.gitignore | 2 src/gallium/auxiliary/indices/u_indices_gen.c | 5129 --- src/gallium/auxiliary/indices/u_unfilled_gen.c | 992 src/gallium/auxiliary/rtasm/rtasm_x86sse.c | 2 src/gallium/drivers/cell/ppu/cell_context.c | 2 src/gallium/drivers/cell/ppu/cell_fence.c | 1 src/gallium/drivers/cell/ppu/cell_pipe_state.c | 2 src/gallium/drivers/i915/i915_context.c | 2 src/gallium/drivers/i915/i915_state.c | 3 src/gallium/drivers/llvmpipe/lp_context.c | 2 src/gallium/drivers/llvmpipe/lp_state_rasterizer.c | 14 src/gallium/drivers/nv30/nv30_context.c | 2 src/gallium/drivers/nv40/nv40_context.c | 2 src/gallium/drivers/nv40/nv40_state_emit.c | 2 src/gallium/drivers/nv50/nv50_context.c | 2 src/gallium/drivers/r300/r300_context.c | 2 src/gallium/drivers/r300/r300_state.c | 2 src/gallium/drivers/softpipe/sp_context.c | 2 src/gallium/drivers/softpipe/sp_state_rasterizer.c | 2 src/gallium/drivers/svga/svga_pipe_rasterizer.c | 3 src/gallium/drivers/svga/svga_swtnl_draw.c | 2 src/gallium/drivers/svga/svga_swtnl_state.c | 3 src/gallium/state_trackers/egl/Makefile | 1 src/gallium/state_trackers/glx/xlib/Makefile | 3 src/gallium/winsys/xlib/Makefile | 3 src/glx/Makefile | 2 src/glx/XF86dri.c | 2 src/glx/apple/.gitignore | 4 src/glx/apple/GL_aliases | 10 src/glx/apple/GL_extensions | 106 src/glx/apple/GL_noop | 15 src/glx/apple/GL_promoted | 4 src/glx/apple/Makefile | 129 src/glx/apple/OVERALL_DESIGN | 18 src/glx/apple/README_UPDATING | 8 src/glx/apple/RELEASE_NOTES | 71 src/glx/apple/TODO | 26 src/glx/apple/apple_cgl.c | 128 src/glx/apple/apple_cgl.h | 86 src/glx/apple/apple_exports.list | 623 src/glx/apple/apple_glx.c | 214 src/glx/apple/apple_glx.h | 49 src/glx/apple/apple_glx_context.c | 616 src/glx/apple/apple_glx_context.h | 93 src/glx/apple/apple_glx_drawable.c | 542 src/glx/apple/apple_glx_drawable.h | 227 src/glx/apple/apple_glx_pbuffer.c | 348 src/glx/apple/apple_glx_pixmap.c | 230 src/glx/apple/apple_glx_surface.c | 224 src/glx/apple/apple_visual.c | 153 src/glx/apple/apple_visual.h | 41 src/glx/apple/apple_xgl_api_additional.c | 37 src/glx/apple/apple_xgl_api_read.c | 133 src/glx/apple/apple_xgl_api_stereo.c | 128 src/glx/apple/apple_xgl_api_viewport.c | 46 src/glx/apple/appledri.c | 452 src/glx/apple/appledri.h | 124 src/glx/apple/appledristr.h | 266 src/glx/apple/gen_api_header.tcl | 86 src/glx/apple/gen_api_library.tcl | 212 src/glx/apple/gen_code.tcl | 50 src/glx/apple/gen_defs.tcl | 67 src/glx/apple/gen_exports.tcl | 132 src/glx/apple/gen_funcs.tcl | 735 src/glx/apple/gen_types.tcl | 32 src/glx/apple/glx_empty.c | 375 src/glx/apple/glx_error.c | 65 src/glx/apple/glx_error.h | 33 src/glx/apple/glxreply.c | 134 src/glx/apple/specs/enum.spec | 7522 +++++ src/glx/apple/specs/enumext.spec | 6542 ++++ src/glx/apple/specs/gl.spec |28563 +++++++++++++++++++++ src/glx/apple/specs/gl.tm | 322 src/glx/apple/specs/glx.spec | 602 src/glx/apple/specs/glxenum.spec | 420 src/glx/apple/specs/glxenumext.spec | 515 src/glx/apple/specs/glxext.spec | 1330 src/glx/apple/specs/update.sh | 4 src/glx/clientattrib.c | 2 src/glx/dri2_glx.c | 18 src/glx/dri_common.c | 2 src/glx/dri_glx.c | 2 src/glx/drisw_glx.c | 2 src/glx/glcontextmodes.c | 4 src/glx/glx_pbuffer.c | 202 src/glx/glxclient.h | 20 src/glx/glxcmds.c | 216 src/glx/glxcurrent.c | 69 src/glx/glxext.c | 94 src/glx/glxextensions.c | 38 src/glx/indirect.c | 30 src/glx/indirect_size.c | 2 src/glx/singlepix.c | 2 src/mesa/drivers/common/meta.c | 36 src/mesa/drivers/dri/common/xmlconfig.c | 2 src/mesa/drivers/dri/i915/i915_tex_layout.c | 2 src/mesa/drivers/dri/i915/i915_texstate.c | 4 src/mesa/drivers/dri/i915/i915_vtbl.c | 4 src/mesa/drivers/dri/i965/brw_clip.c | 6 src/mesa/drivers/dri/i965/brw_clip_state.c | 4 src/mesa/drivers/dri/i965/brw_clip_tri.c | 22 src/mesa/drivers/dri/i965/brw_clip_util.c | 4 src/mesa/drivers/dri/i965/brw_context.c | 4 src/mesa/drivers/dri/i965/brw_defines.h | 10 src/mesa/drivers/dri/i965/brw_draw_upload.c | 6 src/mesa/drivers/dri/i965/brw_eu_emit.c | 154 src/mesa/drivers/dri/i965/brw_gs.c | 2 src/mesa/drivers/dri/i965/brw_gs_state.c | 2 src/mesa/drivers/dri/i965/brw_misc_state.c | 8 src/mesa/drivers/dri/i965/brw_program.c | 34 src/mesa/drivers/dri/i965/brw_sf_emit.c | 4 src/mesa/drivers/dri/i965/brw_sf_state.c | 19 src/mesa/drivers/dri/i965/brw_structs.h | 18 src/mesa/drivers/dri/i965/brw_tex_layout.c | 84 src/mesa/drivers/dri/i965/brw_urb.c | 2 src/mesa/drivers/dri/i965/brw_vs_emit.c | 8 src/mesa/drivers/dri/i965/brw_vs_state.c | 6 src/mesa/drivers/dri/i965/brw_wm.h | 2 src/mesa/drivers/dri/i965/brw_wm_emit.c | 18 src/mesa/drivers/dri/i965/brw_wm_glsl.c | 2 src/mesa/drivers/dri/i965/brw_wm_state.c | 4 src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 2 src/mesa/drivers/dri/intel/intel_chipset.h | 4 src/mesa/drivers/dri/intel/intel_context.c | 30 src/mesa/drivers/dri/intel/intel_context.h | 2 src/mesa/drivers/dri/intel/intel_fbo.c | 13 src/mesa/drivers/dri/intel/intel_fbo.h | 3 src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 7 src/mesa/drivers/dri/intel/intel_pixel_draw.c | 2 src/mesa/drivers/dri/intel/intel_tex_format.c | 14 src/mesa/drivers/dri/intel/intel_tex_layout.c | 8 src/mesa/drivers/dri/intel/intel_tex_layout.h | 2 src/mesa/drivers/dri/r300/r300_state.c | 15 src/mesa/drivers/dri/r600/r700_state.c | 5 src/mesa/drivers/dri/radeon/radeon_cs_legacy.c | 2 src/mesa/drivers/dri/radeon/radeon_mipmap_tree.c | 8 src/mesa/drivers/dri/radeon/radeon_screen.c | 2 src/mesa/drivers/osmesa/Makefile | 6 src/mesa/drivers/osmesa/osmesa.c | 37 src/mesa/glapi/glapi_nop.c | 20 src/mesa/main/fbobject.c | 6 src/mesa/main/imports.c | 3 src/mesa/main/imports.h | 6 src/mesa/main/texfetch_tmp.h | 16 src/mesa/main/version.h | 4 src/mesa/shader/shader_api.c | 79 src/mesa/shader/slang/slang_codegen.c | 3 src/mesa/shader/slang/slang_compile_variable.h | 2 src/mesa/shader/slang/slang_link.c | 5 src/mesa/state_tracker/st_atom_scissor.c | 13 src/mesa/state_tracker/st_cb_texture.c | 5 src/mesa/state_tracker/st_context.c | 2 src/mesa/state_tracker/st_draw_feedback.c | 2 src/mesa/state_tracker/st_extensions.c | 91 src/mesa/state_tracker/st_format.c | 4 src/mesa/state_tracker/st_gen_mipmap.c | 4 src/mesa/state_tracker/st_mesa_to_tgsi.c | 2 187 files changed, 56681 insertions(+), 8256 deletions(-)
New commits: commit 078d04ed81a92f7aa219ce0aeb4bd1cd62653562 Author: Brian Paul <[email protected]> Date: Mon Jun 21 16:21:19 2010 -0600 docs: remove redundant changes section diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index 4d7758d..1393b2e 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -142,7 +142,5 @@ a471807b65e49c325808ba4551be93ed MesaGLUT-7.8.2.tar.bz2 </ul> -<h2>Changes</h2> -<p>None.</p> </body> </html> commit a2782af384806dff794e1fa87288477ad4e22146 Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:39:34 2010 -0700 docs: Add 7.8.2 release MD5 sums diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index 651e68e..4d7758d 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -26,7 +26,15 @@ for DRI hardware acceleration. <h2>MD5 checksums</h2> <pre> -tbd +c89b63d253605ed40e8ac370d25a833c MesaLib-7.8.2.tar.gz +6be2d343a0089bfd395ce02aaf8adb57 MesaLib-7.8.2.tar.bz2 +a04ad3b06ac5ff3969a003fa7bbf7d5b MesaLib-7.8.2.zip +7c213f92efeb471f0331670d5079d4c0 MesaDemos-7.8.2.tar.gz +757d9e2e06f48b1a52848be9b0307ced MesaDemos-7.8.2.tar.bz2 +8d0e5cfe68b8ebf90265d350ae2c48b1 MesaDemos-7.8.2.zip +b74482e3f44f35ed395c4aada4fd8240 MesaGLUT-7.8.2.tar.gz +a471807b65e49c325808ba4551be93ed MesaGLUT-7.8.2.tar.bz2 +9f190268c42be582ef66e47365ee61e3 MesaGLUT-7.8.2.zip </pre> commit b12692404cb2ccdc311dda4cf2f6dd592de84cce Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:30:14 2010 -0700 docs: added news item for 7.8.2 release diff --git a/docs/news.html b/docs/news.html index b7731cd..92e2a18 100644 --- a/docs/news.html +++ b/docs/news.html @@ -11,6 +11,14 @@ <H1>News</H1> +<h2>June 16, 2010</h2> + +<p> +<a href="relnotes-7.8.2.html">Mesa 7.8.2</a> is released. This is a bug-fix +release collecting fixes since the 7.8.1 release. +</p> + + <h2>April 5, 2010</h2> <p> commit 43becf60f836d18f292527650ce10337f7ece1a6 Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:29:46 2010 -0700 mesa: set version string to 7.8.2 diff --git a/Makefile b/Makefile index c81a2ec..84d0038 100644 --- a/Makefile +++ b/Makefile @@ -180,7 +180,7 @@ ultrix-gcc: # Rules for making release tarballs -VERSION=7.8.1 +VERSION=7.8.2 DIRECTORY = Mesa-$(VERSION) LIB_NAME = MesaLib-$(VERSION) DEMO_NAME = MesaDemos-$(VERSION) diff --git a/configs/default b/configs/default index fbd795f..f12bec8 100644 --- a/configs/default +++ b/configs/default @@ -10,7 +10,7 @@ CONFIG_NAME = default # Version info MESA_MAJOR=7 MESA_MINOR=8 -MESA_TINY=1 +MESA_TINY=2 MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY) # external projects. This should be useless now that we use libdrm. diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h index cd760be..9955be2 100644 --- a/src/mesa/main/version.h +++ b/src/mesa/main/version.h @@ -34,8 +34,8 @@ /* Mesa version */ #define MESA_MAJOR 7 #define MESA_MINOR 8 -#define MESA_PATCH 1 -#define MESA_VERSION_STRING "7.8.1" +#define MESA_PATCH 2 +#define MESA_VERSION_STRING "7.8.2" /* To make version comparison easy */ #define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) commit c19bc5de961fe5e1f8a17131bcfae3dbcccaca29 Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:28:08 2010 -0700 docs: Update mailing lines from sf.net to freedesktop.org diff --git a/docs/devinfo.html b/docs/devinfo.html index 102aec9..2d1c125 100644 --- a/docs/devinfo.html +++ b/docs/devinfo.html @@ -208,10 +208,11 @@ sftp USERNAME,[email protected] <p> Make an announcement on the mailing lists: -<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>d</em><em>e</em><em>v</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em>, -<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>u</em><em>s</em><em>e</em><em>r</em><em>s</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em> + +<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>d</em><em>e</em><em>v</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em>, +<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>u</em><em>s</em><em>e</em><em>r</em><em>s</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em> and -<em>m</em><em>e</em><em>s</em><em>a</em><em>3</em><em>d</em><em>-</em><em>a</em><em>n</em><em>n</em><em>o</em><em>u</em><em>n</em><em>c</em><em>e</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>s</em><em>f</em><em>.</em><em>n</em><em>e</em><em>t</em> +<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>a</em><em>n</em><em>n</em><em>o</em><em>u</em><em>n</em><em>c</em><em>e</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em> </p> commit 41e371e351cc4c77b2b20a545af2dfa2dab253d7 Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:24:46 2010 -0700 docs: download.html does not need to be updated for each release diff --git a/docs/devinfo.html b/docs/devinfo.html index df0e726..102aec9 100644 --- a/docs/devinfo.html +++ b/docs/devinfo.html @@ -145,7 +145,7 @@ Make sure the values in src/mesa/main/version.h are correct. </p> <p> -Update the docs/news.html file and docs/download.html files. +Update docs/news.html. </p> <p> commit 7b86b24808b511b8587986e9b84d16931047ca74 Author: Ian Romanick <[email protected]> Date: Wed Jun 16 14:16:39 2010 -0700 docs: Many updates to 7.8.2 release notes diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index 6b465a5..651e68e 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -46,10 +46,91 @@ tbd <li>Fixed Gallium Cell driver to buildable, runable state <li>Fixed bad error checking for glFramebufferRenderbuffer(attachment=GL_DEPTH_STENCIL_ATTACHMENT). <li>Fixed incorrect Z coordinate handling in "meta" glDraw/CopyPixels. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=23670">Bug + #23670</a>.</li> + <li>Assorted i965 driver fixes. + Including but not limited to: + <ul> + <li>Fix scissoring when width or height is + 0. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=27643">Bug + #27643</a>. + <li>Fix bit allocation for number of color regions for + ARB_draw_buffers.</li> + <li>Set the correct provoking vertex for clipped first-mode + trifans. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=24470">Bug + #24470</a>.</li> + <li>Use <code>R16G16B16A16_FLOAT</code> for 3-component half-float.</li> + <li>Fix assertion for surface tile offset usage on Ironlake.</li> + <li>Fix cube map layouts on Ironlake.</li> + <li>When an RB gets a new region, clear the old from the state + cache. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=24119">Bug + #24119</a>.</li> + <li>Reject shaders with uninlined function calls instead of hanging.</li> + </ul> +</li> + +<li>Assorted i915 driver fixes. Including but not limited to: + <ul> + <li>Fixed texture LOD clamping in i915 driver. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=24846">Bug + #24846</a>.</li> + <li>Fix off-by-one for drawing rectangle. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=27408">Bug + #27408</a>.</li> + </ul> +</li> + +<li>Fixed hangs in etracer on 830 and 845 + chipsets. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=26557">Bug + #26557</a>.</li> +<li>Fixed tiling of small textures on all Intel drivers.</li> +<li>Fixed crash in Savage driver when using <code>_mesa_CopyTexImage2D</code>. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=27652">Bug + #27652</a>.</li> + +<li>Assorted GLX fixes. Including but not limited to: + <ul> + <li>Fixed <code>__glXInitializeVisualConfigFromTags</code>'s handling of + unrecognized fbconfig tags.</li> + <li>Fixed regression with <code>GLX_USE_GL</code>. + <li>Fixed config chooser logic for 'mask' matching.</li> + <li>Report swap events correctly in direct rendered case (DRI2)</li> + <li>Fixed build with dri2proto which doesn't define + <code>X_DRI2SwapInterval</code>.</li> + <li>Get <code>GLX_SCREEN</code> first in <code>__glXQueryContextInfo</code>. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=14245">Bug + #14245</a>.</li> + </ul> +</li> + +<li>Assorted GLSL fixes. Including but not limited to: + <ul> + <li>Change variable declared assertion into conditional in GLSL + compiler. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=27921">Bug + #27921</a>.</li> + <li>Fix instruction indexing + bugs. <a href="https://bugs.freedesktop.org/show_bug.cgi?id=27566">Bug + #27566</a>.</li> + <li>Updated uniform location / offset encoding to be more like + other implementations.</li> + <li>Don't overwrite a driver's shader infolog with generic failure + message.</li> + </ul> +</li> + <li>Fixed OSMesa build for 16 and 32-bit color channel depth. -<li>Fixed hangs in etracer on 830 and 845 chipsets. <li>Fixed OSMesa build with hidden symbol visibility. libOSMesa no longer links to libGL. + <a href="https://bugs.freedesktop.org/show_bug.cgi?id=28305">Bug + #28305</a>. +<li>Fixed handling of multiple render targets in fixed-function + texture envrionmnent programs.</li> +<li>Fixed conversion errors in <code>signed_rgba8888[rev]</code> texel + fetch.</li> +<li>Don't set srcLevel on <code>GL_TEXTURE_RECTANGLE_ARB</code> targets.</li> +<li>Various build fixes for OpenBSD.</li> +<li>Various build fixes for OS X.</li> +<li>Various build fixes for GCC 3.3.</li> </ul> commit 6e0c3a1ba0c034c3dd1f30855755cdef3c2268e1 Author: Dan Nicholson <[email protected]> Date: Wed Jun 16 12:12:22 2010 -0700 docs: Note OSMesa build fix diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index 5b6c79b..6b465a5 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -49,6 +49,7 @@ tbd <li>Assorted i965 driver fixes. <li>Fixed OSMesa build for 16 and 32-bit color channel depth. <li>Fixed hangs in etracer on 830 and 845 chipsets. +<li>Fixed OSMesa build with hidden symbol visibility. libOSMesa no longer links to libGL. </ul> commit 843a02eb9b18285695ab47083a685373fcc057e6 Author: Dan Nicholson <[email protected]> Date: Wed Jun 16 09:23:17 2010 -0700 osmesa: always build standalone for internal symbols When building OSMesa and xlib GL, the resulting OSMesa would be linked against libGL instead of the internal mesa libraries. However, when building with -fvisibility=hidden, some of the internal functions used in OSMesa could not be resolved through libGL. Instead, always build OSMesa standalone without linking against libGL. This has the advantage that OSMesa is always built the same way, but it means that disk space is wasted when libGL is installed since both libraries will contain the internal objects. Signed-off-by: Dan Nicholson <[email protected]> Tested-by: Tom Fogal <[email protected]> (cherry picked from commit cbf30fce322506bd43692617de9d201533f41532) diff --git a/configure.ac b/configure.ac index 4e43683..e711634 100644 --- a/configure.ac +++ b/configure.ac @@ -865,7 +865,7 @@ else fi AC_ARG_ENABLE([gl-osmesa], [AS_HELP_STRING([--enable-gl-osmesa], - [enable OSMesa on libGL @<:@default=enabled for xlib driver@:>@])], + [enable OSMesa with libGL @<:@default=enabled for xlib driver@:>@])], [gl_osmesa="$enableval"], [gl_osmesa="$default_gl_osmesa"]) if test "x$gl_osmesa" = xyes; then @@ -900,8 +900,8 @@ x16|x32) esac AC_SUBST([OSMESA_LIB]) -case "$mesa_driver" in -osmesa) +case "$DRIVER_DIRS" in +*osmesa*) # only link libraries with osmesa if shared if test "$enable_static" = no; then OSMESA_LIB_DEPS="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" @@ -911,19 +911,7 @@ osmesa) OSMESA_MESA_DEPS="" OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" ;; -*) - # Link OSMesa to libGL otherwise - OSMESA_LIB_DEPS="" - # only link libraries with osmesa if shared - if test "$enable_static" = no; then - OSMESA_MESA_DEPS='-l$(GL_LIB)' - else - OSMESA_MESA_DEPS="" - fi - OSMESA_PC_REQ="gl" - ;; esac -OSMESA_PC_LIB_PRIV="$OSMESA_PC_LIB_PRIV" AC_SUBST([OSMESA_LIB_DEPS]) AC_SUBST([OSMESA_MESA_DEPS]) AC_SUBST([OSMESA_PC_REQ]) diff --git a/src/mesa/drivers/osmesa/Makefile b/src/mesa/drivers/osmesa/Makefile index 9010bbd..951702e 100644 --- a/src/mesa/drivers/osmesa/Makefile +++ b/src/mesa/drivers/osmesa/Makefile @@ -19,17 +19,11 @@ INCLUDE_DIRS = \ -I$(TOP)/src/mesa \ -I$(TOP)/src/mesa/main -# Standalone osmesa needs to be linked with core Mesa APIs -ifeq ($(DRIVER_DIRS), osmesa) CORE_MESA = \ $(TOP)/src/mesa/libmesa.a \ $(TOP)/src/mesa/libglapi.a \ $(TOP)/src/glsl/cl/libglslcl.a \ $(TOP)/src/glsl/pp/libglslpp.a -else -CORE_MESA = -endif - .c.o: $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@ commit 8825d5ca54139ccf7c1095a4d3c3e28cf1387529 Author: Eric Anholt <[email protected]> Date: Tue Jun 15 15:54:31 2010 -0700 docs: Update to note 830/845 hang fix. diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index 77f0c6d..5b6c79b 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -48,6 +48,7 @@ tbd <li>Fixed incorrect Z coordinate handling in "meta" glDraw/CopyPixels. <li>Assorted i965 driver fixes. <li>Fixed OSMesa build for 16 and 32-bit color channel depth. +<li>Fixed hangs in etracer on 830 and 845 chipsets. </ul> commit 226e612631260db22de274d46cdff034bfdd8ca4 Author: Eric Anholt <[email protected]> Date: Fri Jun 4 13:27:05 2010 -0700 i915: Clamp minimum lod to maximum texture level too. Otherwise, we'd run into minlod > maxlod, and the sampler would give us the undefined we asked for. Bug #24846. Fixes OGLC texlod.c. (cherry picked from commit b80a728f8a86cbd1efce9611d822ab73b5baeab9) diff --git a/src/mesa/drivers/dri/i915/i915_texstate.c b/src/mesa/drivers/dri/i915/i915_texstate.c index a1ab8f8..815074c 100644 --- a/src/mesa/drivers/dri/i915/i915_texstate.c +++ b/src/mesa/drivers/dri/i915/i915_texstate.c @@ -281,6 +281,7 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) GLenum ws = tObj->WrapS; GLenum wt = tObj->WrapT; GLenum wr = tObj->WrapR; + float minlod; /* We program 1D textures as 2D textures, so the 2D texcoord could * result in sampling border values if we don't set the T wrap to @@ -321,8 +322,9 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3) (translate_wrap_mode(wt) << SS3_TCY_ADDR_MODE_SHIFT) | (translate_wrap_mode(wr) << SS3_TCZ_ADDR_MODE_SHIFT)); + minlod = MIN2(tObj->MinLod, tObj->_MaxLevel - tObj->BaseLevel); state[I915_TEXREG_SS3] |= (unit << SS3_TEXTUREMAP_INDEX_SHIFT); - state[I915_TEXREG_SS3] |= (U_FIXED(CLAMP(tObj->MinLod, 0.0, 11.0), 4) << + state[I915_TEXREG_SS3] |= (U_FIXED(CLAMP(minlod, 0.0, 11.0), 4) << SS3_MIN_LOD_SHIFT); } commit 3e9f4d19f6173bd5a752c6ecdc9cee20fb43cbfc Author: Eric Anholt <[email protected]> Date: Sun May 23 13:35:50 2010 -0700 i965: Fix bit allocation for number of color regions for ARB_draw_buffers. If you used all 4 color targets we currently support, we would see 0 and end up just writing the first output. Give enough bits that we can do the maximum of 16. Fixes piglit fbo-drawbuffers-maxtargets. (cherry picked from commit 08b42bc97d77ff1ea7eefe4ec57997b80fb9b458) diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h index 47b764d..ddd1f90 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.h +++ b/src/mesa/drivers/dri/i965/brw_wm.h @@ -67,7 +67,7 @@ struct brw_wm_prog_key { GLuint flat_shade:1; GLuint linear_color:1; /**< linear interpolation vs perspective interp */ GLuint runtime_check_aads_emit:1; - GLuint nr_color_regions:2; + GLuint nr_color_regions:5; GLbitfield proj_attrib_mask; /**< one bit per fragment program attribute */ GLuint shadowtex_mask:16; commit 37a8fa74c3dcb23ff61663e806d1a540e8ab52f1 Author: Eric Anholt <[email protected]> Date: Fri May 14 15:34:35 2010 -0700 i965: Set the correct provoking vertex for clipped first-mode trifans. Bug #24470: glean clipFlat test. (cherry picked from commit 4e84dc8729cac4c78e521436ae091638a490da76) diff --git a/src/mesa/drivers/dri/i965/brw_clip_tri.c b/src/mesa/drivers/dri/i965/brw_clip_tri.c index b27fe65..916a99e 100644 --- a/src/mesa/drivers/dri/i965/brw_clip_tri.c +++ b/src/mesa/drivers/dri/i965/brw_clip_tri.c @@ -177,7 +177,7 @@ void brw_clip_tri_init_vertices( struct brw_clip_compile *c ) void brw_clip_tri_flat_shade( struct brw_clip_compile *c ) { struct brw_compile *p = &c->func; - struct brw_instruction *is_poly; + struct brw_instruction *is_poly, *is_trifan; struct brw_reg tmp0 = c->reg.loopcount; /* handy temporary */ brw_AND(p, tmp0, get_element_ud(c->reg.R0, 2), brw_imm_ud(PRIM_MASK)); @@ -195,8 +195,22 @@ void brw_clip_tri_flat_shade( struct brw_clip_compile *c ) is_poly = brw_ELSE(p, is_poly); { if (c->key.pv_first) { - brw_clip_copy_colors(c, 1, 0); - brw_clip_copy_colors(c, 2, 0); + brw_CMP(p, + vec1(brw_null_reg()), + BRW_CONDITIONAL_EQ, + tmp0, + brw_imm_ud(_3DPRIM_TRIFAN)); + is_trifan = brw_IF(p, BRW_EXECUTE_1); + { + brw_clip_copy_colors(c, 0, 1); + brw_clip_copy_colors(c, 2, 1); + } + is_trifan = brw_ELSE(p, is_trifan); + { + brw_clip_copy_colors(c, 1, 0); + brw_clip_copy_colors(c, 2, 0); + } + brw_ENDIF(p, is_trifan); } else { brw_clip_copy_colors(c, 0, 2); commit eb99b667377b1be0fb70bd5604e4a976b9b4441f Author: Eric Anholt <[email protected]> Date: Thu May 13 22:10:39 2010 -0700 i965: Use R16G16B16A16_FLOAT for 3-component half-float. The RGBX version isn't supported as a vertex input type, but since we force the last channel's value anyway, this should be fine. The only potential risk I see is in the limiter on VBO reads past the end of the buffer forcing the whole vertex to 0 when the A channel lands past the end. Fixes piglit draw-vertices-half-float. (cherry picked from commit f5bd48cf673456ffea730f28c9b95c6883399162) diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c b/src/mesa/drivers/dri/i965/brw_draw_upload.c index 8247faa..9cbff24 100644 --- a/src/mesa/drivers/dri/i965/brw_draw_upload.c +++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c @@ -59,7 +59,7 @@ static GLuint half_float_types[5] = { 0, BRW_SURFACEFORMAT_R16_FLOAT, BRW_SURFACEFORMAT_R16G16_FLOAT, - 0, /* can't seem to render this one */ + BRW_SURFACEFORMAT_R16G16B16A16_FLOAT, BRW_SURFACEFORMAT_R16G16B16A16_FLOAT }; commit fc0b912f1e06a606ce704f94c8113e8719617c43 Author: Eric Anholt <[email protected]> Date: Fri Jun 4 13:40:48 2010 -0700 i915: Don't use XRGB8888 on 830 and 845. The support for XRGB8888 appeared in the 855 and 865, and this format is reserved on 830/845. This should fix a regression from b4a6169412819cc3a027c6a118f0537911145a30 that caused hangs in etracer on 845s. Bug #26557. (cherry picked from commit f0ff214bee64a705d3ef6610e9dc25bc1a46a460) diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index 66bee9e..52e127f 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -610,6 +610,7 @@ intelInitContext(struct intel_context *intel, intel->driContext = driContextPriv; intel->driFd = sPriv->fd; + intel->has_xrgb_textures = GL_TRUE; if (IS_GEN6(intel->intelScreen->deviceID)) { intel->gen = 6; intel->needs_ff_sync = GL_TRUE; @@ -631,6 +632,10 @@ intelInitContext(struct intel_context *intel, } } else { intel->gen = 2; + if (intel->intelScreen->deviceID == PCI_CHIP_I830_M || + intel->intelScreen->deviceID == PCI_CHIP_845_G) { + intel->has_xrgb_textures = GL_FALSE; + } } driParseConfigFiles(&intel->optionCache, &intelScreen->optionCache, diff --git a/src/mesa/drivers/dri/intel/intel_context.h b/src/mesa/drivers/dri/intel/intel_context.h index 1a24bf6..0684fee 100644 --- a/src/mesa/drivers/dri/intel/intel_context.h +++ b/src/mesa/drivers/dri/intel/intel_context.h @@ -145,6 +145,7 @@ struct intel_context GLboolean is_g4x; GLboolean is_945; GLboolean has_luminance_srgb; + GLboolean has_xrgb_textures; int urb_size; diff --git a/src/mesa/drivers/dri/intel/intel_tex_format.c b/src/mesa/drivers/dri/intel/intel_tex_format.c index 7be5231..c23424d 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_format.c +++ b/src/mesa/drivers/dri/intel/intel_tex_format.c @@ -49,7 +49,14 @@ intelChooseTextureFormat(GLcontext * ctx, GLint internalFormat, if (format == GL_RGB && type == GL_UNSIGNED_SHORT_5_6_5) { return MESA_FORMAT_RGB565; } - return do32bpt ? MESA_FORMAT_XRGB8888 : MESA_FORMAT_RGB565; + if (do32bpt) { + if (intel->has_xrgb_textures) + return MESA_FORMAT_XRGB8888; + else + return MESA_FORMAT_ARGB8888; + } else { + return MESA_FORMAT_RGB565; + } case GL_RGBA8: case GL_RGB10_A2: @@ -68,7 +75,10 @@ intelChooseTextureFormat(GLcontext * ctx, GLint internalFormat, case GL_RGB10: case GL_RGB12: case GL_RGB16: - return MESA_FORMAT_XRGB8888; + if (intel->has_xrgb_textures) + return MESA_FORMAT_XRGB8888; + else + return MESA_FORMAT_ARGB8888; case GL_RGB5: case GL_RGB4: commit a48edfad8ab95c331d768ba30a16ea51faec05da Author: Chris Wilson <[email protected]> Date: Sat Jun 5 09:33:58 2010 +0100 i915: Fix off-by-one for drawing rectangle. The drawing rectangle is given in *inclusive* pixel values, so the range is only [0,2047]. Hence when rendering to a 2048 wide target, such as an extended desktop, we would issue an illegal instruction zeroing the draw area. Fixes: Bug 27408: Primary and Secondary display blanks in extended desktop mode with Compiz enabled https://bugs.freedesktop.org/show_bug.cgi?id=27408 Signed-off-by: Chris Wilson <[email protected]> (cherry picked from commit add3260157368458501709d08a3f913ed448234f) Reviewed-by: Eric Anholt <[email protected]> diff --git a/src/mesa/drivers/dri/i915/i915_vtbl.c b/src/mesa/drivers/dri/i915/i915_vtbl.c index 0a93e64..b7e38bd 100644 --- a/src/mesa/drivers/dri/i915/i915_vtbl.c +++ b/src/mesa/drivers/dri/i915/i915_vtbl.c @@ -627,8 +627,8 @@ i915_set_draw_region(struct intel_context *intel, state->Buffer[I915_DESTREG_DRAWRECT2] = 0; state->Buffer[I915_DESTREG_DRAWRECT3] = (draw_y << 16) | draw_x; state->Buffer[I915_DESTREG_DRAWRECT4] = - ((ctx->DrawBuffer->Width + draw_x) & 0xffff) | - ((ctx->DrawBuffer->Height + draw_y) << 16); + ((ctx->DrawBuffer->Width + draw_x - 1) & 0xffff) | + ((ctx->DrawBuffer->Height + draw_y - 1) << 16); state->Buffer[I915_DESTREG_DRAWRECT5] = (draw_y << 16) | draw_x; I915_STATECHANGE(i915, I915_UPLOAD_BUFFERS); commit 1f756d916a48393ce4ff7c284193e48a510c175b Author: Brian Paul <[email protected]> Date: Tue Jun 8 08:45:08 2010 -0600 docs: added a few more bug fixes to the 7.8.2 relnotes file diff --git a/docs/relnotes-7.8.2.html b/docs/relnotes-7.8.2.html index e1b0f2d..77f0c6d 100644 --- a/docs/relnotes-7.8.2.html +++ b/docs/relnotes-7.8.2.html @@ -44,6 +44,10 @@ tbd <ul> <li>Fixed Gallium glDrawPixels(GL_DEPTH_COMPONENT). <li>Fixed Gallium Cell driver to buildable, runable state +<li>Fixed bad error checking for glFramebufferRenderbuffer(attachment=GL_DEPTH_STENCIL_ATTACHMENT). +<li>Fixed incorrect Z coordinate handling in "meta" glDraw/CopyPixels. +<li>Assorted i965 driver fixes. +<li>Fixed OSMesa build for 16 and 32-bit color channel depth. </ul> commit 7dbfc2565e23fec69aa8082997fef48464429cef Author: Brian Paul <[email protected]> Date: Tue Jun 8 08:43:37 2010 -0600 glsl: change uniform location/offset encoding This lets Mesa work like other OpenGL implementations with regard to indexing uniform arrays. See comments for details. This is a combination of commits 5d0e136eff54a34258b5adaeda4cb267831e8234 and 1bbf803e3bc8eeabcc2c24b89bc30a30b2445c59 from master which didn't apply cleanly with git cherry-pick. diff --git a/src/mesa/shader/shader_api.c b/src/mesa/shader/shader_api.c index 940fe2d..5e87bb4 100644 --- a/src/mesa/shader/shader_api.c +++ b/src/mesa/shader/shader_api.c @@ -1260,6 +1260,54 @@ lookup_uniform_parameter(GLcontext *ctx, GLuint program, GLint location, /** + * GLGL uniform arrays and structs require special handling. + * + * The GL_ARB_shader_objects spec says that if you use + * glGetUniformLocation to get the location of an array, you CANNOT + * access other elements of the array by adding an offset to the + * returned location. For example, you must call + * glGetUniformLocation("foo[16]") if you want to set the 16th element + * of the array with glUniform(). + * + * HOWEVER, some other OpenGL drivers allow accessing array elements + * by adding an offset to the returned array location. And some apps + * seem to depend on that behaviour. + * + * Mesa's gl_uniform_list doesn't directly support this since each + * entry in the list describes one uniform variable, not one uniform + * element. We could insert dummy entries in the list for each array + * element after [0] but that causes complications elsewhere. + * + * We solve this problem by encoding two values in the location that's + * returned by glGetUniformLocation(): + * a) index into gl_uniform_list::Uniforms[] for the uniform + * b) an array/field offset (0 for simple types) + * + * These two values are encoded in the high and low halves of a GLint. + * By putting the uniform number in the high part and the offset in the + * low part, we can support the unofficial ability to index into arrays + * by adding offsets to the location value. + */ +static void +merge_location_offset(GLint *location, GLint offset) +{ + *location = (*location << 16) | offset; +} + + +/** + * Seperate the uniform location and parameter offset. See above. + */ +static void +split_location_offset(GLint *location, GLint *offset) +{ + *offset = *location & 0xffff; + *location = *location >> 16; +} + + + +/** * Called via ctx->Driver.GetUniformfv(). */ static void @@ -1268,6 +1316,9 @@ _mesa_get_uniformfv(GLcontext *ctx, GLuint program, GLint location, { struct gl_program *prog; GLint paramPos; + GLint offset; + + split_location_offset(&location, &offset); lookup_uniform_parameter(ctx, program, location, &prog, ¶mPos); @@ -1298,7 +1349,10 @@ _mesa_get_uniformiv(GLcontext *ctx, GLuint program, GLint location, { struct gl_program *prog; GLint paramPos; + GLint offset; + split_location_offset(&location, &offset); + lookup_uniform_parameter(ctx, program, location, &prog, ¶mPos); if (prog) { @@ -1319,31 +1373,6 @@ _mesa_get_uniformiv(GLcontext *ctx, GLuint program, GLint location, /** - * The value returned by GetUniformLocation actually encodes two things: - * 1. the index into the prog->Uniforms[] array for the uniform - * 2. an offset in the prog->ParameterValues[] array for specifying array - * elements or structure fields. - * This function merges those two values. - */ -static void -merge_location_offset(GLint *location, GLint offset) -{ - *location = *location | (offset << 16); -} - - -/** - * Seperate the uniform location and parameter offset. See above. - */ -static void -split_location_offset(GLint *location, GLint *offset) -{ - *offset = (*location >> 16); - *location = *location & 0xffff; -} - - -/** * Called via ctx->Driver.GetUniformLocation(). * * The return value will encode two values, the uniform location and an commit d2f2d0a1b7b1ec83678ece17f5534c594f5b2ea3 Author: Brian Paul <[email protected]> Date: Wed Jun 2 16:01:15 2010 -0600 glx: fix regression with GLX_USE_GL update for fbconfig_style_tags -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

