diff --git a/radeonsi-llvm-version-hack.patch b/radeonsi-llvm-version-hack.patch index 6d12480..e82a1c8 100644 --- a/radeonsi-llvm-version-hack.patch +++ b/radeonsi-llvm-version-hack.patch @@ -1,99 +1,12 @@ -diff -up mesa-20140305/src/gallium/drivers/radeonsi/si_descriptors.c.radeonsi mesa-20140305/src/gallium/drivers/radeonsi/si_descriptors.c ---- mesa-20140305/src/gallium/drivers/radeonsi/si_descriptors.c.radeonsi 2014-03-18 04:37:30.009681609 +0000 -+++ mesa-20140305/src/gallium/drivers/radeonsi/si_descriptors.c 2014-03-18 04:37:36.751681788 +0000 -@@ -151,7 +151,7 @@ static void si_update_descriptors(struct - 7 + /* copy */ - (4 + desc->element_dw_size) * util_bitcount(desc->dirty_mask) + /* update */ - 4; /* pointer update */ --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - if (desc->shader_userdata_reg >= R_00B130_SPI_SHADER_USER_DATA_VS_0 && - desc->shader_userdata_reg < R_00B230_SPI_SHADER_USER_DATA_GS_0) - desc->atom.num_dw += 4; /* second pointer update */ -@@ -176,7 +176,7 @@ static void si_emit_shader_pointer(struc - radeon_emit(cs, va); - radeon_emit(cs, va >> 32); +diff -uNr mesa-20140521.orig/configure.ac mesa-20140521/configure.ac +--- mesa-20140521.orig/configure.ac 2014-05-21 20:11:53.662619590 +0400 ++++ mesa-20140521/configure.ac 2014-05-21 20:14:19.361398680 +0400 +@@ -1642,7 +1642,7 @@ + LLVM_COMPONENTS="${LLVM_COMPONENTS} option" + fi + fi +- DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT -DLLVM_VERSION_PATCH=$LLVM_VERSION_PATCH" ++ DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT -DLLVM_VERSION_PATCH=1" + MESA_LLVM=1 --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - if (desc->shader_userdata_reg >= R_00B130_SPI_SHADER_USER_DATA_VS_0 && - desc->shader_userdata_reg < R_00B230_SPI_SHADER_USER_DATA_GS_0) { - radeon_emit(cs, PKT3(PKT3_SET_SH_REG, 2, 0)); -diff -up mesa-20140305/src/gallium/drivers/radeonsi/si_pipe.c.radeonsi mesa-20140305/src/gallium/drivers/radeonsi/si_pipe.c ---- mesa-20140305/src/gallium/drivers/radeonsi/si_pipe.c.radeonsi 2014-03-05 06:59:46.000000000 +0000 -+++ mesa-20140305/src/gallium/drivers/radeonsi/si_pipe.c 2014-03-18 04:37:10.090681081 +0000 -@@ -269,7 +269,7 @@ static int si_get_param(struct pipe_scre - return 256; - - case PIPE_CAP_GLSL_FEATURE_LEVEL: -- return HAVE_LLVM >= 0x0305 ? 330 : 140; -+ return HAVE_LLVM >= 0x0304 ? 330 : 140; - - case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT: - return 1; -@@ -313,7 +313,7 @@ static int si_get_param(struct pipe_scre - case PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS: - return 16384; - case PIPE_CAP_MAX_COMBINED_SAMPLERS: -- return HAVE_LLVM >= 0x0305 ? 48 : 32; -+ return HAVE_LLVM >= 0x0304 ? 48 : 32; - - /* Render targets. */ - case PIPE_CAP_MAX_RENDER_TARGETS: -@@ -346,7 +346,7 @@ static int si_get_shader_param(struct pi - case PIPE_SHADER_VERTEX: - break; - case PIPE_SHADER_GEOMETRY: --#if HAVE_LLVM < 0x0305 -+#if HAVE_LLVM < 0x0304 - return 0; - #endif - break; -diff -up mesa-20140305/src/gallium/drivers/radeonsi/si_state.c.radeonsi mesa-20140305/src/gallium/drivers/radeonsi/si_state.c ---- mesa-20140305/src/gallium/drivers/radeonsi/si_state.c.radeonsi 2014-03-05 06:59:46.000000000 +0000 -+++ mesa-20140305/src/gallium/drivers/radeonsi/si_state.c 2014-03-18 04:37:10.092681081 +0000 -@@ -2307,7 +2307,7 @@ static void *si_create_fs_state(struct p - return si_create_shader_state(ctx, state, PIPE_SHADER_FRAGMENT); - } - --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - - static void *si_create_gs_state(struct pipe_context *ctx, - const struct pipe_shader_state *state) -@@ -2337,7 +2337,7 @@ static void si_bind_vs_shader(struct pip - sctx->vs_shader = sel; - } - --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - - static void si_bind_gs_shader(struct pipe_context *ctx, void *state) - { -@@ -2396,7 +2396,7 @@ static void si_delete_vs_shader(struct p - si_delete_shader_selector(ctx, sel); - } - --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - - static void si_delete_gs_shader(struct pipe_context *ctx, void *state) - { -@@ -2890,7 +2890,7 @@ static void si_bind_vs_sampler_states(st - si_set_sampler_states(sctx, pm4, count, states, - &sctx->samplers[PIPE_SHADER_VERTEX], - R_00B130_SPI_SHADER_USER_DATA_VS_0); --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - si_set_sampler_states(sctx, pm4, count, states, - &sctx->samplers[PIPE_SHADER_VERTEX], - R_00B330_SPI_SHADER_USER_DATA_ES_0); -@@ -3166,7 +3166,7 @@ void si_init_state_functions(struct si_c - sctx->b.b.bind_fs_state = si_bind_ps_shader; - sctx->b.b.delete_vs_state = si_delete_vs_shader; - sctx->b.b.delete_fs_state = si_delete_ps_shader; --#if HAVE_LLVM >= 0x0305 -+#if HAVE_LLVM >= 0x0304 - sctx->b.b.create_gs_state = si_create_gs_state; - sctx->b.b.bind_gs_state = si_bind_gs_shader; - sctx->b.b.delete_gs_state = si_delete_gs_shader; + dnl Check for Clang internal headers