Accepting request 500026 from X11:XOrg
- 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] - 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 - specfile: libglvnd0 -> libglvnd; missed the package name change in libglvnd package (boo#1038619, comment#5) OBS-URL: https://build.opensuse.org/request/show/500026 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/Mesa?expand=0&rev=291
This commit is contained in:
50
Mesa.changes
50
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
|
||||
|
||||
|
20
Mesa.spec
20
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 && \
|
||||
|
@@ -1,88 +0,0 @@
|
||||
From efa4f2ebc1e788c3f1cfcf3842058cf838171653 Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
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 <kbrenneman@nvidia.com>
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
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 <stdlib.h>
|
||||
|
||||
+#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
|
||||
|
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cf234a6ed4764673886b6661553b54675776ef0898f774716173cec890ac3b17
|
||||
size 9849580
|
Binary file not shown.
3
mesa-17.1.1.tar.xz
Normal file
3
mesa-17.1.1.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:aed503f94c0c1630a162a3e276f4ee12a86764cee4cb92338ea2dea99a04e7ef
|
||||
size 9854480
|
BIN
mesa-17.1.1.tar.xz.sig
Normal file
BIN
mesa-17.1.1.tar.xz.sig
Normal file
Binary file not shown.
49
u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch
Normal file
49
u_llvmpipe-lp_build_gather_elem_vec-BE-fix-for-3x16-lo.patch
Normal file
@@ -0,0 +1,49 @@
|
||||
From 3f993cdf6db5cf344179fcb4fbf899f6ef9a6b2b Mon Sep 17 00:00:00 2001
|
||||
From: Ben Crocker <bcrocker@redhat.com>
|
||||
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 <bcrocker@redhat.com>
|
||||
---
|
||||
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
|
||||
|
Reference in New Issue
Block a user