- update to 22.2.0
* AMD RDNA3 Prep, Intel Arc Graphics, Many Vulkan Improvements; more details on Phoronix: https://www.phoronix.com/news/Mesa-22.2-Released - supersedes llvm15.patch OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=1137
This commit is contained in:
parent
c53cdf13bb
commit
cecf3c8c3f
@ -1,3 +1,12 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 21 14:20:04 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
|
||||||
|
|
||||||
|
- update to 22.2.0
|
||||||
|
* AMD RDNA3 Prep, Intel Arc Graphics, Many Vulkan Improvements;
|
||||||
|
more details on Phoronix:
|
||||||
|
https://www.phoronix.com/news/Mesa-22.2-Released
|
||||||
|
- supersedes llvm15.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Sep 14 13:45:41 UTC 2022 - Andreas Schwab <schwab@suse.de>
|
Wed Sep 14 13:45:41 UTC 2022 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
%define glamor 1
|
%define glamor 1
|
||||||
%define _name_archive mesa
|
%define _name_archive mesa
|
||||||
%define _version 22.1.7
|
%define _version 22.2.0
|
||||||
%define with_opencl 0
|
%define with_opencl 0
|
||||||
%define with_vulkan 0
|
%define with_vulkan 0
|
||||||
%define with_llvm 0
|
%define with_llvm 0
|
||||||
@ -106,7 +106,7 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: Mesa%{psuffix}
|
Name: Mesa%{psuffix}
|
||||||
Version: 22.1.7
|
Version: 22.2.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: System for rendering 3-D graphics
|
Summary: System for rendering 3-D graphics
|
||||||
License: MIT
|
License: MIT
|
||||||
@ -129,7 +129,6 @@ Patch200: u_fix-build-on-ppc64le.patch
|
|||||||
Patch300: n_buildfix-21.3.0.patch
|
Patch300: n_buildfix-21.3.0.patch
|
||||||
Patch400: n_no-sse2-on-ix86-except-for-intel-drivers.patch
|
Patch400: n_no-sse2-on-ix86-except-for-intel-drivers.patch
|
||||||
Patch500: n_stop-iris-flicker.patch
|
Patch500: n_stop-iris-flicker.patch
|
||||||
Patch1500: llvm15.patch
|
|
||||||
%ifarch %{ix86} x86_64
|
%ifarch %{ix86} x86_64
|
||||||
BuildRequires: DirectX-Headers
|
BuildRequires: DirectX-Headers
|
||||||
%endif
|
%endif
|
||||||
@ -753,7 +752,6 @@ rm -rf docs/README.{VMS,WIN32,OS2}
|
|||||||
%patch400 -p1
|
%patch400 -p1
|
||||||
%endif
|
%endif
|
||||||
%patch500 -p1
|
%patch500 -p1
|
||||||
%patch1500 -p1
|
|
||||||
|
|
||||||
# Remove requires to vulkan libs from baselibs.conf on platforms
|
# Remove requires to vulkan libs from baselibs.conf on platforms
|
||||||
# where vulkan build is disabled; ugly ...
|
# where vulkan build is disabled; ugly ...
|
||||||
|
374
llvm15.patch
374
llvm15.patch
@ -1,374 +0,0 @@
|
|||||||
Index: mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld.h
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/auxiliary/gallivm/lp_bld.h
|
|
||||||
+++ mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld.h
|
|
||||||
@@ -81,10 +81,17 @@
|
|
||||||
#define LLVMInsertBasicBlock ILLEGAL_LLVM_FUNCTION
|
|
||||||
#define LLVMCreateBuilder ILLEGAL_LLVM_FUNCTION
|
|
||||||
|
|
||||||
-#if LLVM_VERSION_MAJOR >= 8
|
|
||||||
+#if LLVM_VERSION_MAJOR >= 15
|
|
||||||
+#define GALLIVM_HAVE_CORO 0
|
|
||||||
+#define GALLIVM_USE_NEW_PASS 1
|
|
||||||
+#elif LLVM_VERSION_MAJOR >= 8
|
|
||||||
#define GALLIVM_HAVE_CORO 1
|
|
||||||
+#define GALLIVM_USE_NEW_PASS 0
|
|
||||||
#else
|
|
||||||
#define GALLIVM_HAVE_CORO 0
|
|
||||||
+#define GALLIVM_USE_NEW_PASS 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#define GALLIVM_COROUTINES (GALLIVM_HAVE_CORO || GALLIVM_USE_NEW_PASS)
|
|
||||||
+
|
|
||||||
#endif /* LP_BLD_H */
|
|
||||||
Index: mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_arit.c
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/auxiliary/gallivm/lp_bld_arit.c
|
|
||||||
+++ mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_arit.c
|
|
||||||
@@ -391,16 +391,10 @@ lp_build_comp(struct lp_build_context *b
|
|
||||||
return LLVMBuildNot(builder, a, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
- if(LLVMIsConstant(a))
|
|
||||||
- if (type.floating)
|
|
||||||
- return LLVMConstFSub(bld->one, a);
|
|
||||||
- else
|
|
||||||
- return LLVMConstSub(bld->one, a);
|
|
||||||
+ if (type.floating)
|
|
||||||
+ return LLVMBuildFSub(builder, bld->one, a, "");
|
|
||||||
else
|
|
||||||
- if (type.floating)
|
|
||||||
- return LLVMBuildFSub(builder, bld->one, a, "");
|
|
||||||
- else
|
|
||||||
- return LLVMBuildSub(builder, bld->one, a, "");
|
|
||||||
+ return LLVMBuildSub(builder, bld->one, a, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -479,16 +473,10 @@ lp_build_add(struct lp_build_context *bl
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- if(LLVMIsConstant(a) && LLVMIsConstant(b))
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMConstFAdd(a, b);
|
|
||||||
- else
|
|
||||||
- res = LLVMConstAdd(a, b);
|
|
||||||
+ if (type.floating)
|
|
||||||
+ res = LLVMBuildFAdd(builder, a, b, "");
|
|
||||||
else
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMBuildFAdd(builder, a, b, "");
|
|
||||||
- else
|
|
||||||
- res = LLVMBuildAdd(builder, a, b, "");
|
|
||||||
+ res = LLVMBuildAdd(builder, a, b, "");
|
|
||||||
|
|
||||||
/* clamp to ceiling of 1.0 */
|
|
||||||
if(bld->type.norm && (bld->type.floating || bld->type.fixed))
|
|
||||||
@@ -815,16 +803,10 @@ lp_build_sub(struct lp_build_context *bl
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- if(LLVMIsConstant(a) && LLVMIsConstant(b))
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMConstFSub(a, b);
|
|
||||||
- else
|
|
||||||
- res = LLVMConstSub(a, b);
|
|
||||||
+ if (type.floating)
|
|
||||||
+ res = LLVMBuildFSub(builder, a, b, "");
|
|
||||||
else
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMBuildFSub(builder, a, b, "");
|
|
||||||
- else
|
|
||||||
- res = LLVMBuildSub(builder, a, b, "");
|
|
||||||
+ res = LLVMBuildSub(builder, a, b, "");
|
|
||||||
|
|
||||||
if(bld->type.norm && (bld->type.floating || bld->type.fixed))
|
|
||||||
res = lp_build_max_simple(bld, res, bld->zero, GALLIVM_NAN_RETURN_OTHER_SECOND_NONNAN);
|
|
||||||
@@ -980,29 +962,15 @@ lp_build_mul(struct lp_build_context *bl
|
|
||||||
else
|
|
||||||
shift = NULL;
|
|
||||||
|
|
||||||
- if(LLVMIsConstant(a) && LLVMIsConstant(b)) {
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMConstFMul(a, b);
|
|
||||||
- else
|
|
||||||
- res = LLVMConstMul(a, b);
|
|
||||||
- if(shift) {
|
|
||||||
- if(type.sign)
|
|
||||||
- res = LLVMConstAShr(res, shift);
|
|
||||||
- else
|
|
||||||
- res = LLVMConstLShr(res, shift);
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- else {
|
|
||||||
- if (type.floating)
|
|
||||||
- res = LLVMBuildFMul(builder, a, b, "");
|
|
||||||
+ if (type.floating)
|
|
||||||
+ res = LLVMBuildFMul(builder, a, b, "");
|
|
||||||
+ else
|
|
||||||
+ res = LLVMBuildMul(builder, a, b, "");
|
|
||||||
+ if(shift) {
|
|
||||||
+ if(type.sign)
|
|
||||||
+ res = LLVMBuildAShr(builder, res, shift, "");
|
|
||||||
else
|
|
||||||
- res = LLVMBuildMul(builder, a, b, "");
|
|
||||||
- if(shift) {
|
|
||||||
- if(type.sign)
|
|
||||||
- res = LLVMBuildAShr(builder, res, shift, "");
|
|
||||||
- else
|
|
||||||
- res = LLVMBuildLShr(builder, res, shift, "");
|
|
||||||
- }
|
|
||||||
+ res = LLVMBuildLShr(builder, res, shift, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
return res;
|
|
||||||
@@ -1288,15 +1256,6 @@ lp_build_div(struct lp_build_context *bl
|
|
||||||
if(a == bld->undef || b == bld->undef)
|
|
||||||
return bld->undef;
|
|
||||||
|
|
||||||
- if(LLVMIsConstant(a) && LLVMIsConstant(b)) {
|
|
||||||
- if (type.floating)
|
|
||||||
- return LLVMConstFDiv(a, b);
|
|
||||||
- else if (type.sign)
|
|
||||||
- return LLVMConstSDiv(a, b);
|
|
||||||
- else
|
|
||||||
- return LLVMConstUDiv(a, b);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
/* fast rcp is disabled (just uses div), so makes no sense to try that */
|
|
||||||
if(FALSE &&
|
|
||||||
((util_get_cpu_caps()->has_sse && type.width == 32 && type.length == 4) ||
|
|
||||||
@@ -2646,7 +2605,7 @@ lp_build_rcp(struct lp_build_context *bl
|
|
||||||
assert(type.floating);
|
|
||||||
|
|
||||||
if(LLVMIsConstant(a))
|
|
||||||
- return LLVMConstFDiv(bld->one, a);
|
|
||||||
+ return LLVMBuildFDiv(builder, bld->one, a, "");
|
|
||||||
|
|
||||||
/*
|
|
||||||
* We don't use RCPPS because:
|
|
||||||
Index: mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
||||||
+++ mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
||||||
@@ -45,7 +45,9 @@
|
|
||||||
#include <llvm-c/Transforms/Utils.h>
|
|
||||||
#endif
|
|
||||||
#include <llvm-c/BitWriter.h>
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 1
|
|
||||||
+#include <llvm-c/Transforms/PassBuilder.h>
|
|
||||||
+#elif GALLIVM_HAVE_CORO == 1
|
|
||||||
#if LLVM_VERSION_MAJOR <= 8 && (defined(PIPE_ARCH_AARCH64) || defined (PIPE_ARCH_ARM) || defined(PIPE_ARCH_S390) || defined(PIPE_ARCH_MIPS64))
|
|
||||||
#include <llvm-c/Transforms/IPO.h>
|
|
||||||
#endif
|
|
||||||
@@ -110,6 +112,7 @@ enum LLVM_CodeGenOpt_Level {
|
|
||||||
static boolean
|
|
||||||
create_pass_manager(struct gallivm_state *gallivm)
|
|
||||||
{
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 0
|
|
||||||
assert(!gallivm->passmgr);
|
|
||||||
assert(gallivm->target);
|
|
||||||
|
|
||||||
@@ -117,7 +120,7 @@ create_pass_manager(struct gallivm_state
|
|
||||||
if (!gallivm->passmgr)
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
gallivm->cgpassmgr = LLVMCreatePassManager();
|
|
||||||
#endif
|
|
||||||
/*
|
|
||||||
@@ -134,7 +137,7 @@ create_pass_manager(struct gallivm_state
|
|
||||||
free(td_str);
|
|
||||||
}
|
|
||||||
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
#if LLVM_VERSION_MAJOR <= 8 && (defined(PIPE_ARCH_AARCH64) || defined (PIPE_ARCH_ARM) || defined(PIPE_ARCH_S390) || defined(PIPE_ARCH_MIPS64))
|
|
||||||
LLVMAddArgumentPromotionPass(gallivm->cgpassmgr);
|
|
||||||
LLVMAddFunctionAttrsPass(gallivm->cgpassmgr);
|
|
||||||
@@ -181,14 +184,13 @@ create_pass_manager(struct gallivm_state
|
|
||||||
*/
|
|
||||||
LLVMAddPromoteMemoryToRegisterPass(gallivm->passmgr);
|
|
||||||
}
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
LLVMAddCoroCleanupPass(gallivm->passmgr);
|
|
||||||
#endif
|
|
||||||
-
|
|
||||||
+#endif
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
-
|
|
||||||
/**
|
|
||||||
* Free gallivm object's LLVM allocations, but not any generated code
|
|
||||||
* nor the gallivm object itself.
|
|
||||||
@@ -196,15 +198,17 @@ create_pass_manager(struct gallivm_state
|
|
||||||
void
|
|
||||||
gallivm_free_ir(struct gallivm_state *gallivm)
|
|
||||||
{
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 0
|
|
||||||
if (gallivm->passmgr) {
|
|
||||||
LLVMDisposePassManager(gallivm->passmgr);
|
|
||||||
}
|
|
||||||
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
if (gallivm->cgpassmgr) {
|
|
||||||
LLVMDisposePassManager(gallivm->cgpassmgr);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (gallivm->engine) {
|
|
||||||
/* This will already destroy any associated module */
|
|
||||||
@@ -232,8 +236,12 @@ gallivm_free_ir(struct gallivm_state *ga
|
|
||||||
gallivm->target = NULL;
|
|
||||||
gallivm->module = NULL;
|
|
||||||
gallivm->module_name = NULL;
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 0
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
gallivm->cgpassmgr = NULL;
|
|
||||||
+#endif
|
|
||||||
gallivm->passmgr = NULL;
|
|
||||||
+#endif
|
|
||||||
gallivm->context = NULL;
|
|
||||||
gallivm->builder = NULL;
|
|
||||||
gallivm->cache = NULL;
|
|
||||||
@@ -571,7 +579,6 @@ gallivm_verify_function(struct gallivm_s
|
|
||||||
void
|
|
||||||
gallivm_compile_module(struct gallivm_state *gallivm)
|
|
||||||
{
|
|
||||||
- LLVMValueRef func;
|
|
||||||
int64_t time_begin = 0;
|
|
||||||
|
|
||||||
assert(!gallivm->compiled);
|
|
||||||
@@ -581,6 +588,13 @@ gallivm_compile_module(struct gallivm_st
|
|
||||||
gallivm->builder = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ LLVMSetDataLayout(gallivm->module, "");
|
|
||||||
+ assert(!gallivm->engine);
|
|
||||||
+ if (!init_gallivm_engine(gallivm)) {
|
|
||||||
+ assert(0);
|
|
||||||
+ }
|
|
||||||
+ assert(gallivm->engine);
|
|
||||||
+
|
|
||||||
if (gallivm->cache && gallivm->cache->data_size) {
|
|
||||||
goto skip_cached;
|
|
||||||
}
|
|
||||||
@@ -604,11 +618,33 @@ gallivm_compile_module(struct gallivm_st
|
|
||||||
if (gallivm_debug & GALLIVM_DEBUG_PERF)
|
|
||||||
time_begin = os_time_get();
|
|
||||||
|
|
||||||
-#if GALLIVM_HAVE_CORO
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 1
|
|
||||||
+ char passes[1024];
|
|
||||||
+ passes[0] = 0;
|
|
||||||
+
|
|
||||||
+ /*
|
|
||||||
+ * there should be some way to combine these two pass runs but I'm not seeing it,
|
|
||||||
+ * at the time of writing.
|
|
||||||
+ */
|
|
||||||
+ strcpy(passes, "default<O0>");
|
|
||||||
+
|
|
||||||
+ LLVMPassBuilderOptionsRef opts = LLVMCreatePassBuilderOptions();
|
|
||||||
+ LLVMRunPasses(gallivm->module, passes, LLVMGetExecutionEngineTargetMachine(gallivm->engine), opts);
|
|
||||||
+
|
|
||||||
+ if (!(gallivm_perf & GALLIVM_PERF_NO_OPT))
|
|
||||||
+ strcpy(passes, "sroa,early-cse,simplifycfg,reassociate,mem2reg,constprop,instcombine,");
|
|
||||||
+ else
|
|
||||||
+ strcpy(passes, "mem2reg");
|
|
||||||
+
|
|
||||||
+ LLVMRunPasses(gallivm->module, passes, LLVMGetExecutionEngineTargetMachine(gallivm->engine), opts);
|
|
||||||
+ LLVMDisposePassBuilderOptions(opts);
|
|
||||||
+#else
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
LLVMRunPassManager(gallivm->cgpassmgr, gallivm->module);
|
|
||||||
#endif
|
|
||||||
/* Run optimization passes */
|
|
||||||
LLVMInitializeFunctionPassManager(gallivm->passmgr);
|
|
||||||
+ LLVMValueRef func;
|
|
||||||
func = LLVMGetFirstFunction(gallivm->module);
|
|
||||||
while (func) {
|
|
||||||
if (0) {
|
|
||||||
@@ -626,7 +662,7 @@ gallivm_compile_module(struct gallivm_st
|
|
||||||
func = LLVMGetNextFunction(func);
|
|
||||||
}
|
|
||||||
LLVMFinalizeFunctionPassManager(gallivm->passmgr);
|
|
||||||
-
|
|
||||||
+#endif
|
|
||||||
if (gallivm_debug & GALLIVM_DEBUG_PERF) {
|
|
||||||
int64_t time_end = os_time_get();
|
|
||||||
int time_msec = (int)((time_end - time_begin) / 1000);
|
|
||||||
@@ -653,12 +689,6 @@ gallivm_compile_module(struct gallivm_st
|
|
||||||
* lp_build_create_jit_compiler_for_module()
|
|
||||||
*/
|
|
||||||
skip_cached:
|
|
||||||
- LLVMSetDataLayout(gallivm->module, "");
|
|
||||||
- assert(!gallivm->engine);
|
|
||||||
- if (!init_gallivm_engine(gallivm)) {
|
|
||||||
- assert(0);
|
|
||||||
- }
|
|
||||||
- assert(gallivm->engine);
|
|
||||||
|
|
||||||
++gallivm->compiled;
|
|
||||||
|
|
||||||
Index: mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_init.h
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/auxiliary/gallivm/lp_bld_init.h
|
|
||||||
+++ mesa-22.1.7/src/gallium/auxiliary/gallivm/lp_bld_init.h
|
|
||||||
@@ -46,8 +46,12 @@ struct gallivm_state
|
|
||||||
LLVMModuleRef module;
|
|
||||||
LLVMExecutionEngineRef engine;
|
|
||||||
LLVMTargetDataRef target;
|
|
||||||
+#if GALLIVM_USE_NEW_PASS == 0
|
|
||||||
LLVMPassManagerRef passmgr;
|
|
||||||
+#if GALLIVM_HAVE_CORO == 1
|
|
||||||
LLVMPassManagerRef cgpassmgr;
|
|
||||||
+#endif
|
|
||||||
+#endif
|
|
||||||
LLVMContextRef context;
|
|
||||||
LLVMBuilderRef builder;
|
|
||||||
LLVMMCJITMemoryManagerRef memorymgr;
|
|
||||||
Index: mesa-22.1.7/src/gallium/drivers/llvmpipe/lp_screen.c
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/drivers/llvmpipe/lp_screen.c
|
|
||||||
+++ mesa-22.1.7/src/gallium/drivers/llvmpipe/lp_screen.c
|
|
||||||
@@ -215,7 +215,7 @@ llvmpipe_get_param(struct pipe_screen *s
|
|
||||||
return lscreen->use_tgsi ? 330 : 450;
|
|
||||||
}
|
|
||||||
case PIPE_CAP_COMPUTE:
|
|
||||||
- return GALLIVM_HAVE_CORO;
|
|
||||||
+ return GALLIVM_COROUTINES;
|
|
||||||
case PIPE_CAP_USER_VERTEX_BUFFERS:
|
|
||||||
return 1;
|
|
||||||
case PIPE_CAP_TGSI_TEXCOORD:
|
|
||||||
@@ -394,7 +394,7 @@ llvmpipe_get_shader_param(struct pipe_sc
|
|
||||||
case PIPE_SHADER_TESS_CTRL:
|
|
||||||
case PIPE_SHADER_TESS_EVAL:
|
|
||||||
/* Tessellation shader needs llvm coroutines support */
|
|
||||||
- if (!GALLIVM_HAVE_CORO || lscreen->use_tgsi)
|
|
||||||
+ if (!GALLIVM_COROUTINES || lscreen->use_tgsi)
|
|
||||||
return 0;
|
|
||||||
FALLTHROUGH;
|
|
||||||
case PIPE_SHADER_VERTEX:
|
|
||||||
Index: mesa-22.1.7/src/gallium/frontends/clover/llvm/compat.hpp
|
|
||||||
===================================================================
|
|
||||||
--- mesa-22.1.7.orig/src/gallium/frontends/clover/llvm/compat.hpp
|
|
||||||
+++ mesa-22.1.7/src/gallium/frontends/clover/llvm/compat.hpp
|
|
||||||
@@ -102,7 +102,11 @@ namespace clover {
|
|
||||||
clang::InputKind ik, const ::llvm::Triple& triple,
|
|
||||||
clang::LangStandard::Kind d)
|
|
||||||
{
|
|
||||||
+#if LLVM_VERSION_MAJOR >= 15
|
|
||||||
+ c->getLangOpts().setLangDefaults(c->getLangOpts(), ik.getLanguage(), triple,
|
|
||||||
+#else
|
|
||||||
c->getInvocation().setLangDefaults(c->getLangOpts(), ik, triple,
|
|
||||||
+#endif
|
|
||||||
#if LLVM_VERSION_MAJOR >= 12
|
|
||||||
c->getPreprocessorOpts().Includes,
|
|
||||||
#else
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:da838eb2cf11d0e08d0e9944f6bd4d96987fdc59ea2856f8c70a31a82b355d89
|
|
||||||
size 16109944
|
|
Binary file not shown.
3
mesa-22.2.0.tar.xz
Normal file
3
mesa-22.2.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b1f9c8fd08f2cae3adf83355bef4d2398e8025f44947332880f2d0066bdafa8c
|
||||||
|
size 16298808
|
BIN
mesa-22.2.0.tar.xz.sig
Normal file
BIN
mesa-22.2.0.tar.xz.sig
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user