diff --git a/Mesa.changes b/Mesa.changes index a9c0c5e..d67144f 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,53 @@ +------------------------------------------------------------------- +Wed May 31 07:42:39 UTC 2017 - sndirsch@suse.com + +- u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch + * Fix loading of a 3x16 vector as a single 48-bit load on + big-endian systems (PPC64, S390). [fdo#100613] + +------------------------------------------------------------------- +Thu May 25 07:48:22 UTC 2017 - mimi.vx@gmail.com + +- update to 17.1.1 +- dropped patch: + fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch + * fdo#100854 - YUV to RGB Color Space Conversion result is not precise + * fdo#100925 - [HSW/BSW/BDW/SKL] Google Earth is not resolving + all the details in the map correctly + * radeonsi: add new vega10 pci ids + * gbm/dri: Fix sign-extension in modifier query + * radeon: automake: remove unneeded elf Cflags/Libs + * egl: add g_egldispatchstubs.h to the release tarball + * renderonly: Initialize fields of struct winsys_handle + * vc4: Don't allocate new BOs to avoid synchronization when they're shared + * anv: fix possible stack corruption + * anv: don't leak DRM devices + * glxglvnddispatch: Add missing dispatch for GetDriverConfig + * nvc0/ir: SHLADD's middle source must be an immediate + * nir/lower_tex: Fix minor error in YUV color conversion matrix + * amd/addrlib: import Raven support + * radeonsi/gfx9: add support for Raven + * anv/formats: Update the three-channel BC1 mappings + * 965/formats: Update the three-channel DXT1 mapping + * radeonsi: mark fast-cleared textures as compressed when dirtying + * radeonsi: fix primitive ID in fragment shader when using tessellation + * radeonsi: fix gl_PrimitiveID in tessellation with instanced draws on SI + * radeonsi: fix gl_PrimitiveIDIn in geometry shader when using tessellation + * intel/isl/gen7: Use stencil vertical alignment of 8 instead of 4 + * mesa/st: fix yuv EGLImage's + * virgl: fix virgl_bo_transfer_{put, get} box struct cop + * 965/vec4/gs: restore the uniform values which was overwritten by failed + vec4_gs_visitor execution + * i965/vec4: fix swizzle and writemask when loading an uniform with constant offset + * i965/vec4: load dvec3/4 uniforms first in the push constant buffer + * gallivm: Make sure module has the correct data layout when pass manager runs + +------------------------------------------------------------------- +Sun May 21 21:07:48 UTC 2017 - sndirsch@suse.com + +- specfile: libglvnd0 -> libglvnd; missed the package name + change in libglvnd package (boo#1038619, comment#5) + ------------------------------------------------------------------- Thu May 11 09:10:25 UTC 2017 - sndirsch@suse.com diff --git a/Mesa.spec b/Mesa.spec index 9a06850..fb7b60d 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -22,7 +22,7 @@ %endif %define glamor 1 %define _name_archive mesa -%define _version 17.1.0 +%define _version 17.1.1 %define with_opencl 0 %define with_vulkan 0 %ifarch %ix86 x86_64 %arm aarch64 ppc ppc64 ppc64le s390x @@ -54,7 +54,7 @@ %endif Name: Mesa -Version: 17.1.0 +Version: 17.1.1 Release: 0 Summary: System for rendering interactive 3-D graphics License: MIT @@ -84,8 +84,8 @@ Patch21: n_Define-GLAPIVAR-separate-from-GLAPI.patch # currently needed for libglvnd support Patch31: archlinux_0001-Fix-linkage-against-shared-glapi.patch Patch32: archlinux_glvnd-fix-gl-dot-pc.patch -Patch35: fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch Patch40: u_gallivm-correct-channel-shift-logic-on-big-endian.patch +Patch41: u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch BuildRequires: autoconf >= 2.60 BuildRequires: automake @@ -170,7 +170,7 @@ BuildRequires: llvm-clang-devel %if 0%{?libglvnd} Requires: Mesa-libEGL1 = %{version} Requires: Mesa-libGL1 = %{version} -Requires: libglvnd0 >= 0.1.0 +Requires: libglvnd >= 0.1.0 %endif %description @@ -230,7 +230,7 @@ just Mesa or The Mesa 3-D graphics library. Summary: Free implementation of the EGL API Group: System/Libraries %if 0%{?libglvnd} -Requires: libglvnd0 >= 0.1.0 +Requires: libglvnd >= 0.1.0 %endif %description -n Mesa-libEGL1 @@ -268,7 +268,7 @@ Summary: The GL/GLX runtime of the Mesa 3D graphics library Group: System/Libraries Requires: Mesa = %{version} %if 0%{?libglvnd} -Requires: libglvnd0 >= 0.1.0 +Requires: libglvnd >= 0.1.0 %endif %description -n Mesa-libGL1 @@ -301,7 +301,7 @@ programs with Mesa. Summary: Free implementation of the OpenGL|ES 1.x Common Profile API Group: System/Libraries %if 0%{?libglvnd} -Requires: libglvnd0 >= 0.1.0 +Requires: libglvnd >= 0.1.0 %endif %description -n Mesa-libGLESv1_CM1 @@ -336,7 +336,7 @@ using the OpenGL|ES 1.x APIs. Summary: Free implementation of the OpenGL|ES 2.x API Group: System/Libraries %if 0%{?libglvnd} -Requires: libglvnd0 >= 0.1.0 +Requires: libglvnd >= 0.1.0 %endif %description -n Mesa-libGLESv2-2 @@ -654,12 +654,12 @@ rm -rf docs/README.{VMS,WIN32,OS2} %if 0%{?libglvnd} %patch31 -p1 %patch32 -p1 -%patch35 -p1 %endif %patch40 -p1 +%patch41 -p1 -# Remove requires to libglvnd0/libglvnd-devel from baselibs.conf when +# Remove requires to libglvnd/libglvnd-devel from baselibs.conf when # disabling libglvnd build; ugly ... %if 0%{?libglvnd} == 0 grep -v libglvnd $RPM_SOURCE_DIR/baselibs.conf > $RPM_SOURCE_DIR/temp && \ diff --git a/fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch b/fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch deleted file mode 100644 index 98f6c82..0000000 --- a/fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch +++ /dev/null @@ -1,88 +0,0 @@ -From efa4f2ebc1e788c3f1cfcf3842058cf838171653 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Mon, 20 Mar 2017 08:41:26 +0100 -Subject: [PATCH] glxglvnddispatch: Add missing dispatch for GetDriverConfig - -Together with some fixes to xdriinfo this fixes xdriinfo not working -with glvnd. - -Since apps (xdriinfo) expect GetDriverConfig to work without going to -need through the dance to setup a glxcontext (which is a reasonable -expectation IMHO), the dispatch for this ends up significantly different -then any other dispatch function. - -This patch gets the job done, but I'm not really happy with how this -patch turned out, suggestions for a better fix are welcome. - -Cc: Kyle Brenneman -Signed-off-by: Hans de Goede ---- - src/glx/g_glxglvnddispatchfuncs.c | 18 ++++++++++++++++++ - src/glx/g_glxglvnddispatchindices.h | 1 + - 2 files changed, 19 insertions(+) - -diff --git a/src/glx/g_glxglvnddispatchfuncs.c b/src/glx/g_glxglvnddispatchfuncs.c -index b5e3398..040cdf8 100644 ---- a/src/glx/g_glxglvnddispatchfuncs.c -+++ b/src/glx/g_glxglvnddispatchfuncs.c -@@ -4,6 +4,7 @@ - */ - #include - -+#include "glxclient.h" - #include "glxglvnd.h" - #include "glxglvnddispatchfuncs.h" - #include "g_glxglvnddispatchindices.h" -@@ -50,6 +51,7 @@ const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = { - __ATTRIB(GetCurrentDisplayEXT), - // glXGetCurrentDrawable implemented by libglvnd - // glXGetCurrentReadDrawable implemented by libglvnd -+ __ATTRIB(GetDriverConfig), - // glXGetFBConfigAttrib implemented by libglvnd - __ATTRIB(GetFBConfigAttribSGIX), - __ATTRIB(GetFBConfigFromVisualSGIX), -@@ -334,6 +336,21 @@ static Display *dispatch_GetCurrentDisplayEXT(void) - - - -+static const char *dispatch_GetDriverConfig(const char *driverName) -+{ -+ /* -+ * The options are constant for a given driverName, so we do not need -+ * a context (and apps expect to be able to call this without one). -+ */ -+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL) -+ return glXGetDriverConfig(driverName); -+#else -+ return NULL; -+#endif -+} -+ -+ -+ - static int dispatch_GetFBConfigAttribSGIX(Display *dpy, GLXFBConfigSGIX config, - int attribute, int *value_return) - { -@@ -939,6 +956,7 @@ const void * const __glXDispatchFunctions[DI_LAST_INDEX + 1] = { - __ATTRIB(DestroyGLXPbufferSGIX), - __ATTRIB(GetContextIDEXT), - __ATTRIB(GetCurrentDisplayEXT), -+ __ATTRIB(GetDriverConfig), - __ATTRIB(GetFBConfigAttribSGIX), - __ATTRIB(GetFBConfigFromVisualSGIX), - __ATTRIB(GetMscRateOML), -diff --git a/src/glx/g_glxglvnddispatchindices.h b/src/glx/g_glxglvnddispatchindices.h -index 05a2c8c..3ba50a7 100644 ---- a/src/glx/g_glxglvnddispatchindices.h -+++ b/src/glx/g_glxglvnddispatchindices.h -@@ -39,6 +39,7 @@ typedef enum __GLXdispatchIndex { - DI_GetCurrentDisplayEXT, - // GetCurrentDrawable implemented by libglvnd - // GetCurrentReadDrawable implemented by libglvnd -+ DI_GetDriverConfig, - // GetFBConfigAttrib implemented by libglvnd - DI_GetFBConfigAttribSGIX, - DI_GetFBConfigFromVisualSGIX, --- -2.9.3 - diff --git a/mesa-17.1.0.tar.xz b/mesa-17.1.0.tar.xz deleted file mode 100644 index fe424b4..0000000 --- a/mesa-17.1.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cf234a6ed4764673886b6661553b54675776ef0898f774716173cec890ac3b17 -size 9849580 diff --git a/mesa-17.1.0.tar.xz.sig b/mesa-17.1.0.tar.xz.sig deleted file mode 100644 index d29fa9c..0000000 Binary files a/mesa-17.1.0.tar.xz.sig and /dev/null differ diff --git a/mesa-17.1.1.tar.xz b/mesa-17.1.1.tar.xz new file mode 100644 index 0000000..cc4c503 --- /dev/null +++ b/mesa-17.1.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed503f94c0c1630a162a3e276f4ee12a86764cee4cb92338ea2dea99a04e7ef +size 9854480 diff --git a/mesa-17.1.1.tar.xz.sig b/mesa-17.1.1.tar.xz.sig new file mode 100644 index 0000000..3844714 Binary files /dev/null and b/mesa-17.1.1.tar.xz.sig differ diff --git a/u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch b/u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch new file mode 100644 index 0000000..f744e00 --- /dev/null +++ b/u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch @@ -0,0 +1,49 @@ +From 3f993cdf6db5cf344179fcb4fbf899f6ef9a6b2b Mon Sep 17 00:00:00 2001 +From: Ben Crocker +Date: Tue, 30 May 2017 12:34:23 -0400 +Subject: [PATCH] llvmpipe: lp_build_gather_elem_vec BE fix for 3x16 load + +Fix loading of a 3x16 vector as a single 48-bit load +on big-endian systems (PPC64, S390). + +Signed-off-by: Ben Crocker +--- + src/gallium/auxiliary/gallivm/lp_bld_gather.c | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_gather.c b/src/gallium/auxiliary/gallivm/lp_bld_gather.c +index ccd0376..8e56e42 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_gather.c ++++ b/src/gallium/auxiliary/gallivm/lp_bld_gather.c +@@ -234,13 +234,26 @@ lp_build_gather_elem_vec(struct gallivm_state *gallivm, + */ + res = LLVMBuildZExt(gallivm->builder, res, dst_elem_type, ""); + +- if (vector_justify) { + #ifdef PIPE_ARCH_BIG_ENDIAN ++ if (vector_justify) { + res = LLVMBuildShl(gallivm->builder, res, + LLVMConstInt(dst_elem_type, + dst_type.width - src_width, 0), ""); +-#endif + } ++ if (src_width == 48) { ++ LLVMValueRef shuffles[4] = { ++ lp_build_const_int32(gallivm, 2), ++ lp_build_const_int32(gallivm, 1), ++ lp_build_const_int32(gallivm, 0), ++ lp_build_const_int32(gallivm, 3), ++ }; ++ struct lp_type type16 = {FALSE, FALSE, TRUE, FALSE, 16, 4}; ++ res = LLVMBuildBitCast(gallivm->builder, res, ++ lp_build_vec_type(gallivm, type16), ""); ++ res = LLVMBuildShuffleVector(gallivm->builder, res, res, LLVMConstVector(shuffles, 4), ""); ++ res = LLVMBuildBitCast(gallivm->builder, res, dst_elem_type, ""); ++ } ++#endif + } + } + return res; +-- +2.7.4 +