VERSION | 2 bin/.cherry-ignore | 14 configure.ac | 151 ------ debian/changelog | 20 debian/libegl1-mesa.symbols | 1 debian/patches/egl-platform-mir.patch | 73 +-- docs/relnotes/10.5.0.html | 5 docs/relnotes/10.5.1.html | 217 +++++++++ docs/relnotes/10.5.2.html | 129 +++++ include/c11/threads_posix.h | 7 m4/ax_check_python_mako_module.m4 | 6 src/Makefile.am | 5 src/egl/drivers/dri2/Makefile.am | 2 src/egl/drivers/dri2/platform_drm.c | 16 src/egl/main/eglarray.h | 4 src/egl/main/eglconfig.c | 2 src/egl/main/eglconfig.h | 14 src/egl/main/eglcontext.h | 4 src/egl/main/eglcurrent.c | 2 src/egl/main/eglcurrent.h | 8 src/egl/main/egldisplay.h | 10 src/egl/main/egldriver.h | 6 src/egl/main/eglimage.h | 4 src/egl/main/egllog.h | 6 src/egl/main/eglscreen.h | 4 src/egl/main/eglsurface.h | 6 src/egl/main/eglsync.h | 2 src/gallium/auxiliary/indices/u_indices_gen.py | 8 src/gallium/auxiliary/os/os_mman.h | 4 src/gallium/drivers/freedreno/a2xx/a2xx.xml.h | 4 src/gallium/drivers/freedreno/a2xx/ir-a2xx.c | 3 src/gallium/drivers/freedreno/a3xx/a3xx.xml.h | 24 - src/gallium/drivers/freedreno/a3xx/fd3_program.c | 5 src/gallium/drivers/freedreno/a4xx/a4xx.xml.h | 38 + src/gallium/drivers/freedreno/a4xx/fd4_draw.c | 5 src/gallium/drivers/freedreno/a4xx/fd4_emit.c | 13 src/gallium/drivers/freedreno/a4xx/fd4_emit.h | 1 src/gallium/drivers/freedreno/a4xx/fd4_gmem.c | 9 src/gallium/drivers/freedreno/a4xx/fd4_program.c | 42 - src/gallium/drivers/freedreno/a4xx/fd4_texture.c | 10 src/gallium/drivers/freedreno/adreno_common.xml.h | 4 src/gallium/drivers/freedreno/adreno_pm4.xml.h | 4 src/gallium/drivers/freedreno/freedreno_resource.c | 11 src/gallium/drivers/freedreno/freedreno_state.c | 4 src/gallium/drivers/freedreno/ir3/disasm-a3xx.c | 157 +++--- src/gallium/drivers/freedreno/ir3/instr-a3xx.h | 41 - src/gallium/drivers/freedreno/ir3/ir3.c | 64 +- src/gallium/drivers/freedreno/ir3/ir3.h | 11 src/gallium/drivers/freedreno/ir3/ir3_compiler.c | 113 ++++- src/gallium/drivers/freedreno/ir3/ir3_depth.c | 2 src/gallium/drivers/freedreno/ir3/ir3_group.c | 71 +-- src/gallium/drivers/freedreno/ir3/ir3_legalize.c | 40 + src/gallium/drivers/freedreno/ir3/ir3_shader.c | 1 src/gallium/drivers/freedreno/ir3/ir3_shader.h | 4 src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c | 11 src/gallium/drivers/r300/r300_blit.c | 9 src/gallium/drivers/r300/r300_fs.c | 18 src/gallium/drivers/r300/r300_texture.c | 36 - src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c | 2 src/gallium/drivers/radeonsi/si_shader.c | 2 src/gallium/state_trackers/clover/core/kernel.hpp | 2 src/gallium/state_trackers/egl/Makefile.sources | 1 src/gallium/state_trackers/egl/SConscript | 3 src/gallium/state_trackers/egl/x11/dri2.c | 1 src/glsl/ast_to_hir.cpp | 6 src/glsl/linker.cpp | 15 src/glsl/lower_const_arrays_to_uniforms.cpp | 4 src/glsl/opt_algebraic.cpp | 15 src/glx/glxext.c | 9 src/loader/loader.c | 2 src/mapi/Makefile.am | 2 src/mapi/stub.c | 2 src/mesa/drivers/common/meta_tex_subimage.c | 110 ++-- src/mesa/drivers/dri/i915/intel_fbo.c | 3 src/mesa/drivers/dri/i965/brw_fs.cpp | 79 ++- src/mesa/drivers/dri/i965/brw_fs.h | 5 src/mesa/drivers/dri/i965/brw_fs_cmod_propagation.cpp | 4 src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 2 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 51 -- src/mesa/drivers/dri/i965/brw_gs.c | 8 src/mesa/drivers/dri/i965/brw_shader.cpp | 1 src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp | 2 src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 5 src/mesa/drivers/dri/i965/brw_vs.c | 10 src/mesa/drivers/dri/i965/intel_fbo.c | 52 ++ src/mesa/drivers/dri/i965/intel_pixel_read.c | 3 src/mesa/drivers/dri/i965/intel_tex_image.c | 3 src/mesa/drivers/dri/i965/intel_tex_subimage.c | 3 src/mesa/drivers/dri/i965/intel_tiled_memcpy.c | 124 +++-- src/mesa/drivers/dri/i965/intel_tiled_memcpy.h | 15 src/mesa/drivers/dri/i965/test_fs_cmod_propagation.cpp | 34 + src/mesa/main/pack.c | 11 src/mesa/main/readpix.c | 1 src/mesa/main/shaderapi.c | 2 src/mesa/main/teximage.c | 145 +++++- src/util/Makefile.am | 7 src/util/Makefile.sources | 4 src/util/SConscript | 5 src/util/mesa-sha1.c | 316 -------------- src/util/mesa-sha1.h | 53 -- 100 files changed, 1470 insertions(+), 1141 deletions(-)
New commits: commit 94af2af7efbdbb450ddf30b7ee57fa2cb1f483f8 Author: Timo Aaltonen <tjaal...@debian.org> Date: Mon Mar 30 15:09:10 2015 +0300 release to vivid Mir patch refreshed diff --git a/debian/changelog b/debian/changelog index 55f9950..7546a2e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +mesa (10.5.2-0ubuntu1) vivid; urgency=medium + + * Merge from unreleased experimental git + - new upstream bugfix release + * egl-platform-mir.patch: Refreshed. + + -- Timo Aaltonen <tjaal...@debian.org> Mon, 30 Mar 2015 15:07:30 +0300 + mesa (10.5.2-1) UNRELEASED; urgency=medium [ Maarten Lankhorst ] @@ -9,13 +17,6 @@ mesa (10.5.2-1) UNRELEASED; urgency=medium -- Maarten Lankhorst <maarten.lankho...@ubuntu.com> Mon, 16 Feb 2015 09:35:43 +0100 -mesa (10.5.1-1ubuntu1) UNRELEASED; urgency=medium - - * Merge from unreleased experimental git - - new upstream bugfix release - - -- Timo Aaltonen <tjaal...@debian.org> Fri, 20 Mar 2015 15:21:48 +0200 - mesa (10.5.0-0ubuntu1) vivid; urgency=medium * Merge with unreleased debian-experimental. diff --git a/debian/patches/egl-platform-mir.patch b/debian/patches/egl-platform-mir.patch index 53cbb03..9b91700 100644 --- a/debian/patches/egl-platform-mir.patch +++ b/debian/patches/egl-platform-mir.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -1755,7 +1755,9 @@ +@@ -1636,7 +1636,9 @@ for plat in $egl_platforms; do android|fbdev|gdi|null) ;; @@ -11,7 +11,7 @@ *) AC_MSG_ERROR([EGL platform '$plat' does not exist]) ;; -@@ -1784,6 +1786,7 @@ +@@ -1665,6 +1667,7 @@ AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep -q 'drm') AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep -q 'fbdev') AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep -q 'null') @@ -21,7 +21,7 @@ --- a/include/EGL/eglplatform.h +++ b/include/EGL/eglplatform.h -@@ -104,6 +104,13 @@ +@@ -104,6 +104,13 @@ typedef struct ANativeWindow *EGL typedef struct egl_native_pixmap_t *EGLNativePixmapType; typedef void *EGLNativeDisplayType; @@ -37,7 +37,7 @@ #if defined(MESA_EGL_NO_X11_HEADERS) --- a/include/GL/internal/dri_interface.h +++ b/include/GL/internal/dri_interface.h -@@ -833,10 +833,12 @@ +@@ -833,10 +833,12 @@ struct __DRIbufferRec { unsigned int pitch; unsigned int cpp; unsigned int flags; @@ -53,19 +53,20 @@ --- a/src/egl/drivers/dri2/Makefile.am +++ b/src/egl/drivers/dri2/Makefile.am -@@ -64,3 +64,9 @@ - libegl_dri2_la_SOURCES += platform_drm.c +@@ -65,4 +65,10 @@ libegl_dri2_la_SOURCES += platform_drm.c AM_CFLAGS += -DHAVE_DRM_PLATFORM endif -+ + +if HAVE_EGL_PLATFORM_MIR +libegl_dri2_la_SOURCES += platform_mir.c +AM_CFLAGS += -DHAVE_MIR_PLATFORM +AM_CFLAGS += $(MIR_CFLAGS) +endif ++ + EXTRA_DIST = SConscript --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c -@@ -651,6 +651,12 @@ +@@ -651,6 +651,12 @@ dri2_initialize(_EGLDriver *drv, _EGLDis return EGL_TRUE; return dri2_initialize_wayland(drv, disp); #endif @@ -78,7 +79,7 @@ #ifdef HAVE_ANDROID_PLATFORM case _EGL_PLATFORM_ANDROID: if (disp->Options.TestOnly) -@@ -699,6 +705,13 @@ dri2_terminate(_EGLDriver *drv, _EGLDisp +@@ -700,6 +706,13 @@ dri2_terminate(_EGLDriver *drv, _EGLDisp } break; #endif @@ -92,7 +93,7 @@ #ifdef HAVE_WAYLAND_PLATFORM case _EGL_PLATFORM_WAYLAND: wl_drm_destroy(dri2_dpy->wl_drm); -@@ -715,7 +728,8 @@ dri2_terminate(_EGLDriver *drv, _EGLDisp +@@ -716,7 +729,8 @@ dri2_terminate(_EGLDriver *drv, _EGLDisp * the ones from the gbm device. As such the gbm itself is responsible * for the cleanup. */ @@ -115,7 +116,7 @@ #include "eglconfig.h" #include "eglcontext.h" #include "egldisplay.h" -@@ -197,6 +202,10 @@ +@@ -197,6 +201,10 @@ struct dri2_egl_display int formats; uint32_t capabilities; #endif @@ -126,7 +127,7 @@ }; struct dri2_egl_context -@@ -243,16 +252,21 @@ +@@ -243,16 +251,21 @@ struct dri2_egl_surface struct gbm_dri_surface *gbm_surf; #endif @@ -150,7 +151,7 @@ int locked; int age; } color_buffers[4], *back, *current; -@@ -265,6 +279,10 @@ +@@ -265,6 +278,10 @@ struct dri2_egl_surface /* EGL-owned buffers */ __DRIbuffer *local_buffers[__DRI_BUFFER_COUNT]; #endif @@ -161,7 +162,7 @@ }; -@@ -335,4 +353,7 @@ +@@ -335,4 +352,7 @@ dri2_initialize_android(_EGLDriver *drv, void dri2_flush_drawable_for_swapbuffers(_EGLDisplay *disp, _EGLSurface *draw); @@ -793,7 +794,7 @@ +} --- a/src/egl/main/Makefile.am +++ b/src/egl/main/Makefile.am -@@ -72,6 +72,11 @@ +@@ -72,6 +72,11 @@ if HAVE_EGL_PLATFORM_NULL AM_CFLAGS += -DHAVE_NULL_PLATFORM endif @@ -819,7 +820,7 @@ /** * Map --with-egl-platforms names to platform types. -@@ -76,7 +79,8 @@ +@@ -76,7 +79,8 @@ static const struct { { _EGL_PLATFORM_FBDEV, "fbdev" }, { _EGL_PLATFORM_NULL, "null" }, { _EGL_PLATFORM_ANDROID, "android" }, @@ -829,7 +830,7 @@ }; -@@ -136,6 +140,47 @@ +@@ -136,6 +140,47 @@ _eglPointerIsDereferencable(void *p) #endif } @@ -877,7 +878,7 @@ /** * Try detecting native platform with the help of native display characteristcs. -@@ -156,6 +201,11 @@ +@@ -156,6 +201,11 @@ _eglNativePlatformDetectNativeDisplay(vo return _EGL_PLATFORM_FBDEV; #endif @@ -889,7 +890,7 @@ if (_eglPointerIsDereferencable(nativeDisplay)) { void *first_pointer = *(void **) nativeDisplay; -@@ -194,7 +244,7 @@ +@@ -194,7 +244,7 @@ _eglNativePlatformDetectNativeDisplay(vo _EGLPlatformType _eglGetNativePlatform(void *nativeDisplay) { @@ -900,7 +901,7 @@ if (native_platform == _EGL_INVALID_PLATFORM) { --- a/src/egl/main/egldisplay.h +++ b/src/egl/main/egldisplay.h -@@ -47,6 +47,7 @@ +@@ -47,6 +47,7 @@ enum _egl_platform_type { _EGL_PLATFORM_NULL, _EGL_PLATFORM_ANDROID, _EGL_PLATFORM_HAIKU, @@ -910,7 +911,7 @@ _EGL_INVALID_PLATFORM = -1 --- a/src/egl/main/egldriver.c +++ b/src/egl/main/egldriver.c -@@ -60,7 +60,7 @@ +@@ -60,7 +60,7 @@ typedef struct _egl_module { char *Path; _EGLMain_t BuiltIn; void *Handle; @@ -919,7 +920,7 @@ } _EGLModule; static _EGLMutex _eglModuleMutex = _EGL_MUTEX_INITIALIZER; -@@ -137,7 +137,6 @@ +@@ -137,7 +137,6 @@ library_suffix(void) #endif @@ -927,7 +928,7 @@ /** * Open the named driver and find its bootstrap function: _eglMain(). */ -@@ -150,8 +149,12 @@ +@@ -150,8 +149,12 @@ _eglOpenLibrary(const char *driverPath, assert(driverPath); @@ -942,7 +943,7 @@ #if defined(_EGL_OS_WINDOWS) /* XXX untested */ -@@ -197,13 +200,13 @@ +@@ -197,13 +200,13 @@ _eglOpenLibrary(const char *driverPath, * Load a module and create the driver object. */ static EGLBoolean @@ -959,7 +960,7 @@ return EGL_TRUE; if (mod->BuiltIn) { -@@ -229,7 +232,7 @@ +@@ -229,7 +232,7 @@ _eglLoadModule(_EGLModule *mod) } mod->Handle = (void *) lib; @@ -968,7 +969,7 @@ return EGL_TRUE; } -@@ -243,8 +246,10 @@ +@@ -243,8 +246,10 @@ _eglUnloadModule(_EGLModule *mod) { #if defined(_EGL_OS_UNIX) /* destroy the driver */ @@ -981,7 +982,7 @@ /* * XXX At this point (atexit), the module might be the last reference to -@@ -258,7 +263,9 @@ +@@ -258,7 +263,9 @@ _eglUnloadModule(_EGLModule *mod) /* XXX Windows unloads DLLs before atexit */ #endif @@ -992,7 +993,7 @@ mod->Handle = NULL; } -@@ -588,17 +595,17 @@ +@@ -588,17 +595,17 @@ _eglMatchAndInitialize(_EGLDisplay *dpy) while (i < _eglModules->Size) { _EGLModule *mod = (_EGLModule *) _eglModules->Elements[i]; @@ -1014,7 +1015,7 @@ i++; } } -@@ -650,7 +657,6 @@ +@@ -650,7 +657,6 @@ __eglMustCastToProperFunctionPointerType _eglGetDriverProc(const char *procname) { EGLint i; @@ -1022,7 +1023,7 @@ if (!_eglModules) { /* load the driver for the default display */ -@@ -662,15 +668,18 @@ +@@ -662,15 +668,18 @@ _eglGetDriverProc(const char *procname) for (i = 0; i < _eglModules->Size; i++) { _EGLModule *mod = (_EGLModule *) _eglModules->Elements[i]; @@ -1049,7 +1050,7 @@ --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c -@@ -506,12 +506,20 @@ +@@ -506,12 +506,20 @@ dri2_allocate_textures(struct dri_contex templ.height0 = dri_drawable->h; templ.format = format; templ.bind = bind; @@ -1076,7 +1077,7 @@ &templ, &whandle); --- a/src/gbm/backends/dri/gbm_dri.c +++ b/src/gbm/backends/dri/gbm_dri.c -@@ -202,7 +202,7 @@ +@@ -202,7 +202,7 @@ static const __DRIimageLookupExtension i }; static const __DRIdri2LoaderExtension dri2_loader_extension = { @@ -1085,7 +1086,7 @@ .getBuffers = dri_get_buffers, .flushFrontBuffer = dri_flush_front_buffer, -@@ -528,9 +528,11 @@ +@@ -528,9 +528,11 @@ gbm_dri_is_format_supported(struct gbm_d switch (format) { case GBM_BO_FORMAT_XRGB8888: case GBM_FORMAT_XRGB8888: @@ -1097,7 +1098,7 @@ if (usage & GBM_BO_USE_SCANOUT) return 0; break; -@@ -612,6 +614,9 @@ +@@ -612,6 +614,9 @@ gbm_dri_to_gbm_format(uint32_t dri_forma case __DRI_IMAGE_FORMAT_ABGR8888: ret = GBM_FORMAT_ABGR8888; break; @@ -1107,7 +1108,7 @@ default: ret = 0; break; -@@ -620,6 +625,41 @@ +@@ -620,6 +625,41 @@ gbm_dri_to_gbm_format(uint32_t dri_forma return ret; } @@ -1149,7 +1150,7 @@ static struct gbm_bo * gbm_dri_bo_import(struct gbm_device *gbm, uint32_t type, void *buffer, uint32_t usage) -@@ -828,31 +868,7 @@ +@@ -828,31 +868,7 @@ gbm_dri_bo_create(struct gbm_device *gbm bo->base.base.height = height; bo->base.base.format = format; commit 999a1860ec85fcf87086e280afea276e07c00c1c Author: Timo Aaltonen <tjaal...@debian.org> Date: Mon Mar 30 15:06:24 2015 +0300 bump the version diff --git a/debian/changelog b/debian/changelog index 3e6446b..612434a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (10.5.1-1) UNRELEASED; urgency=medium +mesa (10.5.2-1) UNRELEASED; urgency=medium [ Maarten Lankhorst ] * New upstream release. commit 442f8d3170f0fea424e8ddec92f53e60bc6a6865 Author: Timo Aaltonen <tjaal...@debian.org> Date: Mon Mar 30 10:37:22 2015 +0300 update the changelog diff --git a/debian/changelog b/debian/changelog index 8110f1b..b9293af 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +mesa (10.5.1-1ubuntu1) UNRELEASED; urgency=medium + + * Merge from unreleased experimental git + - new upstream bugfix release + + -- Timo Aaltonen <tjaal...@debian.org> Fri, 20 Mar 2015 15:21:48 +0200 + mesa (10.5.1-1) UNRELEASED; urgency=medium [ Maarten Lankhorst ] commit 5e59f895c468c1ac497ad925b8bddd7f227c89a2 Author: Emil Velikov <emil.l.veli...@gmail.com> Date: Sat Mar 28 18:42:51 2015 +0000 Add release notes for the 10.5.2 release Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> diff --git a/docs/relnotes/10.5.2.html b/docs/relnotes/10.5.2.html new file mode 100644 index 0000000..b094b98 --- /dev/null +++ b/docs/relnotes/10.5.2.html @@ -0,0 +1,129 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html lang="en"> +<head> + <meta http-equiv="content-type" content="text/html; charset=utf-8"> + <title>Mesa Release Notes</title> + <link rel="stylesheet" type="text/css" href="../mesa.css"> +</head> +<body> + +<div class="header"> + <h1>The Mesa 3D Graphics Library</h1> +</div> + +<iframe src="../contents.html"></iframe> +<div class="content"> + +<h1>Mesa 10.5.2 Release Notes / March 28, 2015</h1> + +<p> +Mesa 10.5.2 is a bug fix release which fixes bugs found since the 10.5.1 release. +</p> +<p> +Mesa 10.5.2 implements the OpenGL 3.3 API, but the version reported by +glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / +glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 3.3. OpenGL +3.3 is <strong>only</strong> available if requested at context creation +because compatibility contexts are not supported. +</p> + + +<h2>SHA256 checksums</h2> +<pre> +TBD +</pre> + + +<h2>New features</h2> +<p>None</p> + +<h2>Bug fixes</h2> + +<p>This list is likely incomplete.</p> + +<ul> + +<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=88534">Bug 88534</a> - include/c11/threads_posix.h PTHREAD_MUTEX_RECURSIVE_NP not defined</li> + +<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=89328">Bug 89328</a> - python required to build Mesa release tarballs</li> + +<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=89530">Bug 89530</a> - FTBFS in loader: missing fstat</li> + +<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=89590">Bug 89590</a> - Crash in glLinkProgram with shaders with multiple constant arrays</li> + +<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=89680">Bug 89680</a> - Hard link exist in Mesa 10.5.1 sources</li> + +</ul> + + +<h2>Changes</h2> + +<p>Anuj Phogat (1):</p> +<ul> + <li>glsl: Generate link error for non-matching gl_FragCoord redeclarations</li> +</ul> + +<p>Emil Velikov (7):</p> +<ul> + <li>docs: Add sha256 sums for the 10.5.1 release</li> + <li>automake: add missing egl files to the tarball</li> + <li>st/egl: don't ship the dri2.c link at the tarball</li> + <li>loader: include <sys/stat.h> for non-sysfs builds</li> + <li>auxiliary/os: fix the android build - s/drm_munmap/os_munmap/</li> + <li>cherry-ignore: add commit non applicable for 10.5</li> + <li>Update version to 10.5.2</li> +</ul> + +<p>Felix Janda (1):</p> +<ul> + <li>c11/threads: Use PTHREAD_MUTEX_RECURSIVE by default</li> +</ul> + +<p>Francisco Jerez (1):</p> +<ul> + <li>i965: Set nr_params to the number of uniform components in the VS/GS path.</li> +</ul> + +<p>Ilia Mirkin (2):</p> +<ul> + <li>freedreno/a3xx: use the same layer size for all slices</li> + <li>freedreno: fix slice pitch calculations</li> +</ul> + +<p>Marek Olšák (1):</p> +<ul> + <li>radeonsi: increase coords array size for radeon_llvm_emit_prepare_cube_coords</li> +</ul> + +<p>Mario Kleiner (2):</p> +<ul> + <li>glx: Handle out-of-sequence swap completion events correctly. (v2)</li> + <li>mapi: Make private copies of name strings provided by client.</li> +</ul> + +<p>Rob Clark (1):</p> +<ul> + <li>freedreno: update generated headers</li> +</ul> + +<p>Samuel Iglesias Gonsalvez (2):</p> +<ul> + <li>glsl: optimize (0 cmp x + y) into (-x cmp y).</li> + <li>configure: Introduce new output variable to ax_check_python_mako_module.m4</li> +</ul> + +<p>Tapani Pälli (1):</p> +<ul> + <li>glsl: fix names in lower_constant_arrays_to_uniforms</li> +</ul> + +<p>Tom Stellard (1):</p> +<ul> + <li>clover: Return 0 as storage size for local kernel args that are not set v2</li> +</ul> + + +</div> +</body> +</html> commit ebbfa79755b09701db9381171d22cab48e947bfa Author: Emil Velikov <emil.l.veli...@gmail.com> Date: Sat Mar 28 18:36:03 2015 +0000 Update version to 10.5.2 Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> diff --git a/VERSION b/VERSION index 4a6e70e..a39233b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -10.5.1 +10.5.2 commit fda3bc1e039c8a97a2f204ca5746a02045719259 Author: Emil Velikov <emil.l.veli...@gmail.com> Date: Sat Mar 28 18:33:46 2015 +0000 cherry-ignore: add commit non applicable for 10.5 Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> diff --git a/bin/.cherry-ignore b/bin/.cherry-ignore index 58c07fb..ec06241 100644 --- a/bin/.cherry-ignore +++ b/bin/.cherry-ignore @@ -21,3 +21,6 @@ d22391cb165af4ed2f9a9e5d6233072a432cc969 fe5fddd7e2df74233a2a02ae021418485f39d11c # xmlpool: make sure we ship options.h 8d8ca64c28170ec7e9ffa01638bcf8fd30a96088 + +# The optimisations mentioned are not available in 10.5 +627c68308683abbd6e563a09af6013a33938a790 i965/fs: in MAD optimizations, switch last argument to be immediate commit e98909b0567b8a83a6a953cfa4ee4e7beef436b9 Author: Samuel Iglesias Gonsalvez <sigles...@igalia.com> Date: Mon Mar 2 10:49:31 2015 +0100 configure: Introduce new output variable to ax_check_python_mako_module.m4 This output variables gives more flexibility for future changes in autoconf to detect if it is needed to auto-generate files and check for the auto-generation dependencies. It is still returning error when Python is not installed. Signed-off-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com> Reviewed-by: Kai Wasserbäch <k...@dev.carbon-project.org> (cherry picked from commit ced9425327be6cb557a4a1217a1dac29b18d1a09) Squashed with commit configure.ac: move AC_MSG_RESULT reporting back into the m4 macro The one who does AC_MSG_CHECKING should provide the AC_MSG_RESULT. Fixes: ced9425327b (configure: Introduce new output variable to ax_check_python_mako_module.m4" Cc: "10.5" <mesa-sta...@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89328 Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> Reviewed-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com> (cherry picked from commit 248eb54eb6117cc5a863ba2deaa14c3bee0b5d41) diff --git a/configure.ac b/configure.ac index f596a9d..20e6d62 100644 --- a/configure.ac +++ b/configure.ac @@ -78,6 +78,7 @@ XCBDRI2_REQUIRED=1.8 XCBGLX_REQUIRED=1.8.1 XSHMFENCE_REQUIRED=1.1 XVMC_REQUIRED=1.0.6 +PYTHON_MAKO_REQUIRED=0.3.4 dnl Check for progs AC_PROG_CPP @@ -113,7 +114,10 @@ if test "x$INDENT" != "xcat"; then fi fi -AX_CHECK_PYTHON_MAKO_MODULE(0.3.4) +AX_CHECK_PYTHON_MAKO_MODULE($PYTHON_MAKO_REQUIRED) +if test -n "$PYTHON2" -a "x$acv_mako_found" != "xyes"; then + AC_MSG_ERROR([Python mako module v$PYTHON_MAKO_REQUIRED or higher not found]) +fi AC_PROG_INSTALL diff --git a/m4/ax_check_python_mako_module.m4 b/m4/ax_check_python_mako_module.m4 index 2fc029b..7d9bb51 100644 --- a/m4/ax_check_python_mako_module.m4 +++ b/m4/ax_check_python_mako_module.m4 @@ -54,8 +54,10 @@ else: " | $PYTHON2 - if test $? -ne 0 ; then - AC_MSG_ERROR(mako $1 or later is required.) + AC_MSG_RESULT(no) + AC_SUBST(acv_mako_found, 'no') else - AC_MSG_RESULT(yes) + AC_MSG_RESULT(yes) + AC_SUBST(acv_mako_found, 'yes') fi ]) commit d83d2ea9a6562314388c0a1941137001960b6453 Author: Anuj Phogat <anuj.pho...@gmail.com> Date: Thu Mar 5 11:07:52 2015 -0800 glsl: Generate link error for non-matching gl_FragCoord redeclarations in different fragment shaders. This also applies to a case when gl_FragCoord is redeclared with no layout qualifiers in one fragment shader and not declared but used in other fragment shader. Signed-off-by: Anuj Phogat <anuj.pho...@gmail.com> Khronos Bug#12957 Cc: "10.5" <mesa-sta...@lists.freedesktop.org> Reviewed-by: Chris Forbes <chr...@ijw.co.nz> (cherry picked from commit d8208312a3a200b4e6d71ce533d835b2d705234a) diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 3f5eac1..01526de 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -1364,24 +1364,13 @@ link_fs_input_layout_qualifiers(struct gl_shader_program *prog, * "If gl_FragCoord is redeclared in any fragment shader in a program, * it must be redeclared in all the fragment shaders in that program * that have a static use gl_FragCoord." - * - * Exclude the case when one of the 'linked_shader' or 'shader' redeclares - * gl_FragCoord with no layout qualifiers but the other one doesn't - * redeclare it. If we strictly follow GLSL 1.50 spec's language, it - * should be a link error. But, generating link error for this case will - * be a wrong behaviour which spec didn't intend to do and it could also - * break some applications. */ if ((linked_shader->redeclares_gl_fragcoord && !shader->redeclares_gl_fragcoord - && shader->uses_gl_fragcoord - && (linked_shader->origin_upper_left - || linked_shader->pixel_center_integer)) + && shader->uses_gl_fragcoord) || (shader->redeclares_gl_fragcoord && !linked_shader->redeclares_gl_fragcoord - && linked_shader->uses_gl_fragcoord - && (shader->origin_upper_left - || shader->pixel_center_integer))) { + && linked_shader->uses_gl_fragcoord)) { linker_error(prog, "fragment shader defined with conflicting " "layout qualifiers for gl_FragCoord\n"); } commit d6413ed98fe07479d16cd2033d5379e06e5ce6d7 Author: Mario Kleiner <mario.kleiner...@gmail.com> Date: Thu Mar 12 23:34:12 2015 +0100 mapi: Make private copies of name strings provided by client. glXGetProcAddress("glFoo") ends up in stub_add_dynamic() to create dynamic stubs for dynamic functions. stub_add_dynamic() doesn't store the caller provided name string "Foo" in a mesa private copy, but just stores a pointer to the "glFoo" string passed to glXGetProcAddress - a pointer into arbitrary memory outside mesa's control. If the caller passes some dynamically allocated/changing memory buffer to glXGetProcAddress(), or the caller gets unmapped from memory, e.g., some dynamically loaded application plugin which uses OpenGL, this ends badly - with a dangling pointer. strdup() the name string provided by the client to avoid this problem. Cc: "10.3 10.4 10.5" <mesa-sta...@lists.freedesktop.org> Signed-off-by: Mario Kleiner <mario.kleiner...@gmail.com> Reviewed-by: Brian Paul <bri...@vmware.com> (cherry picked from commit 1110113a7f0b6f9b21dd26dee8e95a021041c71c) diff --git a/src/mapi/stub.c b/src/mapi/stub.c index dfadbe1..45ccc6a 100644 --- a/src/mapi/stub.c +++ b/src/mapi/stub.c @@ -110,7 +110,7 @@ stub_add_dynamic(const char *name) if (!stub->addr) return NULL; - stub->name = (const void *) name; + stub->name = (const void *) strdup(name); /* to be fixed later */ stub->slot = -1; commit 3147f0bd25c45c9bd2a2b1fec622eb1821e11df8 Author: Tom Stellard <thomas.stell...@amd.com> Date: Fri Mar 20 22:19:43 2015 +0000 clover: Return 0 as storage size for local kernel args that are not set v2 The storage size for local kernel args can be queried before the arguments are set by using the CL_KERNEL_LOCAL_MEM_SIZE param of clGetKernelWorkGroupInfo(). The spec says that if local kernel arguments have not been specified, then we should assume their size is 0. v2: - Implement using c++11 member initialization. Reviewed-by: Jan Vesely <jan.ves...@rutgers.edu> Reviewed-by: Francisco Jerez <curroje...@riseup.net> Cc: 10.5 10.4 <mesa-sta...@lists.freedesktop.org> (cherry picked from commit dfb1ae9d914b7723ef50fdd2efe811feebc045ad) diff --git a/src/gallium/state_trackers/clover/core/kernel.hpp b/src/gallium/state_trackers/clover/core/kernel.hpp index bf5998d..d6432a4 100644 --- a/src/gallium/state_trackers/clover/core/kernel.hpp +++ b/src/gallium/state_trackers/clover/core/kernel.hpp @@ -175,7 +175,7 @@ namespace clover { virtual void unbind(exec_context &ctx); private: - size_t _storage; + size_t _storage = 0; }; class constant_argument : public argument { commit c2760f0a1603b12b64237252d12b611b1d7883f3 Author: Tapani Pälli <tapani.pa...@intel.com> Date: Mon Mar 23 09:12:35 2015 +0200 glsl: fix names in lower_constant_arrays_to_uniforms Patch changes lowering pass to use unique name for each uniform so that arrays from different stages cannot end up having same name. v2: instead of global counter, use pointer to achieve unique name (Kenneth Graunke) Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89590 Reviewed-by: Chris Forbes <chr...@ijw.co.nz> Cc: 10.5 10.4 <mesa-sta...@lists.freedesktop.org> (cherry picked from commit 3cf99701ba6c9e56c9126fdbb74107a31ffcbcfb) diff --git a/src/glsl/lower_const_arrays_to_uniforms.cpp b/src/glsl/lower_const_arrays_to_uniforms.cpp index 2243f47..44967dc 100644 --- a/src/glsl/lower_const_arrays_to_uniforms.cpp +++ b/src/glsl/lower_const_arrays_to_uniforms.cpp @@ -49,7 +49,6 @@ public: { instructions = insts; progress = false; - index = 0; } bool run() @@ -63,7 +62,6 @@ public: private: exec_list *instructions; bool progress; - unsigned index; }; void @@ -82,7 +80,7 @@ lower_const_array_visitor::handle_rvalue(ir_rvalue **rvalue) void *mem_ctx = ralloc_parent(con); - char *uniform_name = ralloc_asprintf(mem_ctx, "constarray__%d", index++); + char *uniform_name = ralloc_asprintf(mem_ctx, "constarray__%p", dra); ir_variable *uni = new(mem_ctx) ir_variable(con->type, uniform_name, ir_var_uniform); commit 859b4afc973a27f4aeb6ee68d5a019d9210c0ac9 Author: Francisco Jerez <curroje...@riseup.net> Date: Thu Jan 22 17:08:23 2015 +0200 i965: Set nr_params to the number of uniform components in the VS/GS path. Both do_vs_prog and do_gs_prog initialize brw_stage_prog_data::nr_params to the number of uniform *vectors* required by the shader rather than the number of uniform components, contradicting the comment. This is inconsistent with what the state upload code and scalar path expect but it happens to work until Gen8 because vec4_visitor interprets it as a number of vectors on construction and later on overwrites its original value with the number of uniform components referenced by the shader. Also there's no need to add the number of samplers, they're not actually passed in as uniforms. Fixes a memory corruption issue on BDW with SIMD8 VS. Cc: "10.5" <mesa-sta...@lists.freedesktop.org> Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> (cherry picked from commit fd149628e142af769c1c0ec037bc297d8a3e871f) [Emil Velikov: s/DIV_ROUND_UP/CEILING/] Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c index d96a21e..aad9b0c 100644 --- a/src/mesa/drivers/dri/i965/brw_gs.c +++ b/src/mesa/drivers/dri/i965/brw_gs.c @@ -69,11 +69,7 @@ do_gs_prog(struct brw_context *brw, rzalloc_array(NULL, const gl_constant_value *, param_count); c.prog_data.base.base.pull_param = rzalloc_array(NULL, const gl_constant_value *, param_count); - /* Setting nr_params here NOT to the size of the param and pull_param - * arrays, but to the number of uniform components vec4_visitor - * needs. vec4_visitor::setup_uniforms() will set it back to a proper value. - */ - c.prog_data.base.base.nr_params = ALIGN(param_count, 4) / 4 + gs->num_samplers; + c.prog_data.base.base.nr_params = param_count; if (brw->gen >= 7) { if (gp->program.OutputType == GL_POINTS) { diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp index 3912a49..1add0bd 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp @@ -3628,7 +3628,8 @@ vec4_visitor::vec4_visitor(struct brw_context *brw, */ this->uniform_array_size = 1; if (prog_data) { - this->uniform_array_size = MAX2(stage_prog_data->nr_params, 1); + this->uniform_array_size = + MAX2(CEILING(stage_prog_data->nr_params, 4), 1); } this->uniform_size = rzalloc_array(mem_ctx, int, this->uniform_array_size); diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c index 2d56b74..f360d4e 100644 --- a/src/mesa/drivers/dri/i965/brw_vs.c +++ b/src/mesa/drivers/dri/i965/brw_vs.c @@ -241,15 +241,7 @@ do_vs_prog(struct brw_context *brw, rzalloc_array(NULL, const gl_constant_value *, param_count); stage_prog_data->pull_param = rzalloc_array(NULL, const gl_constant_value *, param_count); - - /* Setting nr_params here NOT to the size of the param and pull_param - * arrays, but to the number of uniform components vec4_visitor - * needs. vec4_visitor::setup_uniforms() will set it back to a proper value. - */ - stage_prog_data->nr_params = ALIGN(param_count, 4) / 4; - if (vs) { - stage_prog_data->nr_params += vs->num_samplers; - } + stage_prog_data->nr_params = param_count; -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/e1ymn3g-0006ph...@moszumanska.debian.org