Makefile.am | 2 bin/.cherry-ignore | 6 configure.ac | 19 debian/changelog | 22 debian/patches/0001-nv50-fix-3D-render-target-setup.patch | 56 - debian/patches/0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch | 56 - debian/patches/0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch | 139 --- debian/patches/0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch | 407 ---------- debian/patches/02_use-ieee-fp-on-s390-and-m68k.patch | 21 debian/patches/10-hurd-configure-tweaks.diff | 14 debian/patches/100_no_abi_tag.patch | 44 - debian/patches/117-static-gallium.patch | 17 debian/patches/119-libllvmradeon-link.patch | 9 debian/patches/14-fix-osmesa-build.diff | 10 debian/patches/15-fix-oot-build.diff | 13 debian/patches/16-avoid-symbols-from-static-llvm.diff | 90 -- debian/patches/series | 13 debian/patches/vbo-fix-crash.diff | 29 debian/rules | 5 docs/relnotes-9.1.1.html | 3 docs/relnotes-9.1.2.html | 235 +++++ include/c99_compat.h | 147 +++ src/egl/main/eglcompiler.h | 44 - src/gallium/auxiliary/Makefile.am | 7 src/gallium/auxiliary/gallivm/lp_bld_tgsi.h | 1 src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 20 src/gallium/auxiliary/tgsi/tgsi_text.c | 2 src/gallium/drivers/Makefile.am | 1 src/gallium/drivers/llvmpipe/lp_scene.c | 22 src/gallium/drivers/llvmpipe/lp_scene.h | 10 src/gallium/drivers/nv50/nv50_blit.h | 40 src/gallium/drivers/nv50/nv50_state_validate.c | 12 src/gallium/drivers/nv50/nv50_surface.c | 77 + src/gallium/drivers/nvc0/nvc0_3d.xml.h | 2 src/gallium/drivers/nvc0/nvc0_surface.c | 123 ++- src/gallium/drivers/r300/compiler/radeon_optimize.c | 4 src/gallium/drivers/r600/r600_pipe.c | 2 src/gallium/drivers/r600/r600_query.c | 5 src/gallium/drivers/radeon/Makefile.am | 4 src/gallium/drivers/radeonsi/si_state_draw.c | 5 src/gallium/drivers/rbug/Makefile.am | 1 src/gallium/drivers/svga/Makefile.am | 2 src/gallium/drivers/trace/Makefile.am | 3 src/gallium/include/pipe/p_compiler.h | 74 - src/gallium/state_trackers/egl/Makefile.am | 2 src/gallium/state_trackers/xa/Makefile.am | 4 src/gallium/winsys/svga/drm/Makefile.am | 2 src/glsl/glsl_types.cpp | 2 src/glsl/ir_validate.cpp | 6 src/glsl/linker.cpp | 2 src/glx/Makefile.am | 1 src/mapi/glapi/gen/gl_x86-64_asm.py | 13 src/mapi/glapi/gen/gl_x86_asm.py | 13 src/mapi/mapi/entry_x86-64_tls.h | 13 src/mapi/mapi/entry_x86_tls.h | 13 src/mapi/mapi/u_compiler.h | 26 src/mesa/drivers/dri/i965/brw_clear.c | 6 src/mesa/drivers/dri/i965/brw_defines.h | 39 src/mesa/drivers/dri/i965/brw_eu_emit.c | 15 src/mesa/drivers/dri/i965/brw_fs.cpp | 26 src/mesa/drivers/dri/i965/brw_fs_live_variables.cpp | 54 - src/mesa/drivers/dri/i965/brw_state.h | 2 src/mesa/drivers/dri/i965/brw_vs.c | 8 src/mesa/drivers/dri/i965/brw_vs_surface_state.c | 5 src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 8 src/mesa/drivers/dri/i965/gen6_cc.c | 2 src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 40 src/mesa/drivers/dri/intel/intel_screen.c | 2 src/mesa/drivers/dri/nouveau/nv10_context.c | 2 src/mesa/drivers/osmesa/Makefile.am | 1 src/mesa/main/compiler.h | 59 - src/mesa/main/fbobject.c | 4 src/mesa/main/get.c | 12 src/mesa/main/get_hash_params.py | 2 src/mesa/main/mtypes.h | 1 src/mesa/main/samplerobj.c | 12 src/mesa/main/samplerobj.h | 2 src/mesa/main/tests/hash_table/Makefile.am | 1 src/mesa/main/texgetimage.c | 1 src/mesa/main/teximage.c | 23 src/mesa/main/texparam.c | 12 src/mesa/main/texstorage.c | 1 src/mesa/main/version.h | 4 src/mesa/vbo/vbo_save_draw.c | 2 84 files changed, 951 insertions(+), 1310 deletions(-)
New commits: commit 2bfae0f16f06aa812e0fabf12cde50cbdb3caf15 Author: Robert Hooker <[email protected]> Date: Wed May 1 16:56:13 2013 -0400 debian/changelog: Mark as UNRELEASED, whoops diff --git a/debian/changelog b/debian/changelog index 2d234d3..2c839cd 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (9.1.2-0ubuntu1) saucy; urgency=low +mesa (9.1.2-0ubuntu1) UNRELEASED; urgency=low * New upstream bug-fix release. * Drop upstream patches: commit 8190e3a6530c3c34ba00055e5b51f3db16221821 Author: Robert Hooker <[email protected]> Date: Wed May 1 16:55:06 2013 -0400 debian/patches/117-static-gallium.patch: Refresh diff --git a/debian/changelog b/debian/changelog index 344c837..2d234d3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,6 +9,8 @@ mesa (9.1.2-0ubuntu1) saucy; urgency=low - 100_no_abi_tag.patch - 119-libllvmradeon-link.patch - vbo-fix-crash.diff + * debian/patches/117-static-gallium.patch: Refresh for minor change + in 9.1.2 -- Robert Hooker <[email protected]> Wed, 01 May 2013 16:40:16 -0400 diff --git a/debian/patches/117-static-gallium.patch b/debian/patches/117-static-gallium.patch index ab72546..939cb73 100644 --- a/debian/patches/117-static-gallium.patch +++ b/debian/patches/117-static-gallium.patch @@ -1,6 +1,8 @@ +diff --git a/configure.ac b/configure.ac +index b9fcb0b..be89843 100644 --- a/configure.ac +++ b/configure.ac -@@ -733,6 +733,19 @@ +@@ -747,6 +747,19 @@ if test "x$enable_shared_glapi" = xyes; then fi AM_CONDITIONAL(HAVE_SHARED_GLAPI, test "x$enable_shared_glapi" = xyes) @@ -20,9 +22,11 @@ dnl dnl Driver specific build directories dnl +diff --git a/src/gallium/auxiliary/Makefile.am b/src/gallium/auxiliary/Makefile.am +index f14279b..3cdec83 100644 --- a/src/gallium/auxiliary/Makefile.am +++ b/src/gallium/auxiliary/Makefile.am -@@ -3,13 +3,19 @@ +@@ -3,14 +3,19 @@ AUTOMAKE_OPTIONS = subdir-objects include Makefile.sources include $(top_srcdir)/src/gallium/Automake.inc @@ -30,12 +34,13 @@ - AM_CFLAGS = \ -I$(top_srcdir)/src/gallium/auxiliary/util \ -- $(GALLIUM_CFLAGS) $(VISIBILITY_CFLAGS) +- $(GALLIUM_CFLAGS) \ +- $(VISIBILITY_CFLAGS) + $(GALLIUM_CFLAGS) -+ -+AM_CXXFLAGS = -AM_CXXFLAGS = $(VISIBILITY_CXXFLAGS) ++AM_CXXFLAGS = ++ +if HAVE_SHARED_GALLIUM +lib_LTLIBRARIES = libgallium.la +else @@ -46,7 +51,7 @@ libgallium_la_SOURCES = \ $(C_SOURCES) \ -@@ -28,6 +34,8 @@ +@@ -29,6 +34,8 @@ if LLVM_NEEDS_FNORTTI AM_CXXFLAGS += -fno-rtti commit b6fef34a7d2af42f299d03de1d86c202c7c478c7 Author: Robert Hooker <[email protected]> Date: Wed May 1 16:49:31 2013 -0400 debian/patches: Drop upstreamed patches diff --git a/debian/changelog b/debian/changelog index 9eb2fb8..344c837 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,14 @@ mesa (9.1.2-0ubuntu1) saucy; urgency=low * New upstream bug-fix release. + * Drop upstream patches: + - 0001-nv50-fix-3D-render-target-setup.patch + - 0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch + - 0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch + - 0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch + - 100_no_abi_tag.patch + - 119-libllvmradeon-link.patch + - vbo-fix-crash.diff -- Robert Hooker <[email protected]> Wed, 01 May 2013 16:40:16 -0400 diff --git a/debian/patches/0001-nv50-fix-3D-render-target-setup.patch b/debian/patches/0001-nv50-fix-3D-render-target-setup.patch deleted file mode 100644 index a02be67..0000000 --- a/debian/patches/0001-nv50-fix-3D-render-target-setup.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 7410ba12657fa3652d05c99d44eda68231b9c100 Mon Sep 17 00:00:00 2001 -From: Christoph Bumiller <[email protected]> -Date: Mon, 25 Mar 2013 19:41:18 +0100 -Subject: [PATCH 1/4] nv50: fix 3D render target setup - ---- - src/gallium/drivers/nv50/nv50_state_validate.c | 12 ++++++++++-- - 1 file changed, 10 insertions(+), 2 deletions(-) - -diff --git a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c -index a95e96d..f5e7b36 100644 ---- a/src/gallium/drivers/nv50/nv50_state_validate.c -+++ b/src/gallium/drivers/nv50/nv50_state_validate.c -@@ -9,6 +9,7 @@ nv50_validate_fb(struct nv50_context *nv50) - struct pipe_framebuffer_state *fb = &nv50->framebuffer; - unsigned i; - unsigned ms_mode = NV50_3D_MULTISAMPLE_MODE_MS1; -+ uint32_t array_size = 0xffff, array_mode = 0; - - nouveau_bufctx_reset(nv50->bufctx_3d, NV50_BIND_FB); - -@@ -23,6 +24,13 @@ nv50_validate_fb(struct nv50_context *nv50) - struct nv50_surface *sf = nv50_surface(fb->cbufs[i]); - struct nouveau_bo *bo = mt->base.bo; - -+ array_size = MIN2(array_size, sf->depth); -+ if (mt->layout_3d) -+ array_mode = NV50_3D_RT_ARRAY_MODE_MODE_3D; /* 1 << 16 */ -+ -+ /* can't mix 3D with ARRAY or have RTs of different depth/array_size */ -+ assert(mt->layout_3d || !array_mode || array_size == 1); -+ - BEGIN_NV04(push, NV50_3D(RT_ADDRESS_HIGH(i)), 5); - PUSH_DATAh(push, bo->offset + sf->offset); - PUSH_DATA (push, bo->offset + sf->offset); -@@ -34,7 +42,7 @@ nv50_validate_fb(struct nv50_context *nv50) - PUSH_DATA (push, sf->width); - PUSH_DATA (push, sf->height); - BEGIN_NV04(push, NV50_3D(RT_ARRAY_MODE), 1); -- PUSH_DATA (push, sf->depth); -+ PUSH_DATA (push, array_mode | array_size); - } else { - PUSH_DATA (push, 0); - PUSH_DATA (push, 0); -@@ -63,7 +71,7 @@ nv50_validate_fb(struct nv50_context *nv50) - struct nv50_miptree *mt = nv50_miptree(fb->zsbuf->texture); - struct nv50_surface *sf = nv50_surface(fb->zsbuf); - struct nouveau_bo *bo = mt->base.bo; -- int unk = mt->base.base.target == PIPE_TEXTURE_2D; -+ int unk = mt->base.base.target == PIPE_TEXTURE_3D || sf->depth == 1; - - BEGIN_NV04(push, NV50_3D(ZETA_ADDRESS_HIGH), 5); - PUSH_DATAh(push, bo->offset + sf->offset); --- -1.8.2 - diff --git a/debian/patches/0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch b/debian/patches/0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch deleted file mode 100644 index 3b04386..0000000 --- a/debian/patches/0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 5ba62ee2011b44e8a40bab6435a8edaf03cda612 Mon Sep 17 00:00:00 2001 -From: Christoph Bumiller <[email protected]> -Date: Sun, 31 Mar 2013 22:10:02 +0200 -Subject: [PATCH 2/4] nv50,nvc0: disable DEPTH_RANGE_NEAR/FAR clipping during - blit - -We send position.z == 0, DEPTH_RANGE may be some arbitrary range -not including 0 (for exmaple in piglit's hiz tests). ---- - src/gallium/drivers/nv50/nv50_surface.c | 2 ++ - src/gallium/drivers/nvc0/nvc0_3d.xml.h | 2 +- - src/gallium/drivers/nvc0/nvc0_surface.c | 2 ++ - 3 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/gallium/drivers/nv50/nv50_surface.c b/src/gallium/drivers/nv50/nv50_surface.c -index 7a0470c..b1b5cb3 100644 ---- a/src/gallium/drivers/nv50/nv50_surface.c -+++ b/src/gallium/drivers/nv50/nv50_surface.c -@@ -977,6 +977,8 @@ nv50_blit_3d(struct nv50_context *nv50, const struct pipe_blit_info *info) - - BEGIN_NV04(push, NV50_3D(VIEWPORT_TRANSFORM_EN), 1); - PUSH_DATA (push, 0); -+ BEGIN_NV04(push, NV50_3D(VIEW_VOLUME_CLIP_CTRL), 1); -+ PUSH_DATA (push, 0x1); - - /* Draw a large triangle in screen coordinates covering the whole - * render target, with scissors defining the destination region. -diff --git a/src/gallium/drivers/nvc0/nvc0_3d.xml.h b/src/gallium/drivers/nvc0/nvc0_3d.xml.h -index 1cf1f96..bd3de58 100644 ---- a/src/gallium/drivers/nvc0/nvc0_3d.xml.h -+++ b/src/gallium/drivers/nvc0/nvc0_3d.xml.h -@@ -1041,7 +1041,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - #define NVC0_3D_VIEWPORT_TRANSFORM_EN 0x0000192c - - #define NVC0_3D_VIEW_VOLUME_CLIP_CTRL 0x0000193c --#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK0 0x00000001 -+#define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_RANGE_0_1 0x00000001 - #define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1__MASK 0x00000006 - #define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1__SHIFT 1 - #define NVC0_3D_VIEW_VOLUME_CLIP_CTRL_UNK1_UNK0 0x00000000 -diff --git a/src/gallium/drivers/nvc0/nvc0_surface.c b/src/gallium/drivers/nvc0/nvc0_surface.c -index 281d740..94ac241 100644 ---- a/src/gallium/drivers/nvc0/nvc0_surface.c -+++ b/src/gallium/drivers/nvc0/nvc0_surface.c -@@ -859,6 +859,8 @@ nvc0_blit_3d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - z += 0.5f * dz; - - IMMED_NVC0(push, NVC0_3D(VIEWPORT_TRANSFORM_EN), 0); -+ IMMED_NVC0(push, NVC0_3D(VIEW_VOLUME_CLIP_CTRL), 0x2 | -+ NVC0_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_RANGE_0_1); - BEGIN_NVC0(push, NVC0_3D(VIEWPORT_HORIZ(0)), 2); - PUSH_DATA (push, nvc0->framebuffer.width << 16); - PUSH_DATA (push, nvc0->framebuffer.height << 16); --- -1.8.2 - diff --git a/debian/patches/0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch b/debian/patches/0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch deleted file mode 100644 index fcf2118..0000000 --- a/debian/patches/0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch +++ /dev/null @@ -1,139 +0,0 @@ -From ac4be462795590019c262161f6147f6108e796ff Mon Sep 17 00:00:00 2001 -From: Christoph Bumiller <[email protected]> -Date: Fri, 22 Mar 2013 13:49:40 +0100 -Subject: [PATCH 3/4] nv50,nvc0: fix 3d blits, restore viewport after blit - -Conflicts: - src/gallium/drivers/nvc0/nvc0_surface.c ---- - src/gallium/drivers/nv50/nv50_surface.c | 8 +++++-- - src/gallium/drivers/nvc0/nvc0_surface.c | 42 ++++++++++++++++++++------------- - 2 files changed, 32 insertions(+), 18 deletions(-) - -diff --git a/src/gallium/drivers/nv50/nv50_surface.c b/src/gallium/drivers/nv50/nv50_surface.c -index b1b5cb3..16f77cd 100644 ---- a/src/gallium/drivers/nv50/nv50_surface.c -+++ b/src/gallium/drivers/nv50/nv50_surface.c -@@ -936,7 +936,7 @@ nv50_blit_3d(struct nv50_context *nv50, const struct pipe_blit_info *info) - nv50_blit_select_fp(blit, info); - nv50_blitctx_pre_blit(blit); - -- nv50_blit_set_dst(blit, dst, info->dst.level, 0, info->dst.format); -+ nv50_blit_set_dst(blit, dst, info->dst.level, -1, info->dst.format); - nv50_blit_set_src(blit, src, info->src.level, -1, info->src.format, - blit->filter); - -@@ -1226,10 +1226,14 @@ nv50_blit(struct pipe_context *pipe, const struct pipe_blit_info *info) - debug_printf("blit: cannot filter array or cube textures in z direction"); - } - -- if (!eng3d && info->dst.format != info->src.format) -+ if (!eng3d && info->dst.format != info->src.format) { - if (!nv50_2d_format_faithful(info->dst.format) || - !nv50_2d_format_faithful(info->src.format)) - eng3d = TRUE; -+ if (info->dst.format == PIPE_FORMAT_R8_UNORM || -+ info->dst.format == PIPE_FORMAT_R16_UNORM) -+ eng3d = TRUE; -+ } - - if (info->src.resource->nr_samples == 8 && - info->dst.resource->nr_samples <= 1) -diff --git a/src/gallium/drivers/nvc0/nvc0_surface.c b/src/gallium/drivers/nvc0/nvc0_surface.c -index 94ac241..80f6f6f 100644 ---- a/src/gallium/drivers/nvc0/nvc0_surface.c -+++ b/src/gallium/drivers/nvc0/nvc0_surface.c -@@ -490,19 +490,19 @@ nvc0_blitter_make_vp(struct nvc0_blitter *blit) - { - static const uint32_t code_nvc0[] = - { -- 0xfff01c66, 0x06000080, /* vfetch b128 { $r0 $r1 $r2 $r3 } a[0x80] */ -- 0xfff11c26, 0x06000090, /* vfetch b96 { $r4 $r5 $r6 } a[0x90]*/ -- 0x03f01c66, 0x0a7e0070, /* export b128 o[0x70] { $r0 $r1 $r2 $r3 } */ -- 0x13f01c26, 0x0a7e0080, /* export b96 o[0x80] { $r4 $r5 $r6 } */ -+ 0xfff11c26, 0x06000080, /* vfetch b64 $r4:$r5 a[0x80] */ -+ 0xfff01c46, 0x06000090, /* vfetch b96 $r0:$r1:$r2 a[0x90] */ -+ 0x13f01c26, 0x0a7e0070, /* export b64 o[0x70] $r4:$r5 */ -+ 0x03f01c46, 0x0a7e0080, /* export b96 o[0x80] $r0:$r1:$r2 */ - 0x00001de7, 0x80000000, /* exit */ - }; - static const uint32_t code_nve4[] = - { - 0x00000007, 0x20000000, /* sched */ -- 0xfff01c66, 0x06000080, /* vfetch b128 { $r0 $r1 $r2 $r3 } a[0x80] */ -- 0xfff11c46, 0x06000090, /* vfetch b96 { $r4 $r5 $r6 } a[0x90]*/ -- 0x03f01c66, 0x0a7e0070, /* export b128 o[0x70] { $r0 $r1 $r2 $r3 } */ -- 0x13f01c46, 0x0a7e0080, /* export b96 o[0x80] { $r4 $r5 $r6 } */ -+ 0xfff11c26, 0x06000080, /* vfetch b64 $r4:$r5 a[0x80] */ -+ 0xfff01c46, 0x06000090, /* vfetch b96 $r0:$r1:$r2 a[0x90] */ -+ 0x13f01c26, 0x0a7e0070, /* export b64 o[0x70] $r4:$r5 */ -+ 0x03f01c46, 0x0a7e0080, /* export b96 o[0x80] $r0:$r1:$r2 */ - 0x00001de7, 0x80000000, /* exit */ - }; - -@@ -515,13 +515,13 @@ nvc0_blitter_make_vp(struct nvc0_blitter *blit) - blit->vp.code = (uint32_t *)code_nvc0; /* const_cast */ - blit->vp.code_size = sizeof(code_nvc0); - } -- blit->vp.max_gpr = 7; -+ blit->vp.max_gpr = 6; - blit->vp.vp.edgeflag = PIPE_MAX_ATTRIBS; - - blit->vp.hdr[0] = 0x00020461; /* vertprog magic */ - blit->vp.hdr[4] = 0x000ff000; /* no outputs read */ -- blit->vp.hdr[6] = 0x0000003f; /* a[0x80], a[0x90] */ -- blit->vp.hdr[13] = 0x0003f000; /* o[0x70], o[0x80] */ -+ blit->vp.hdr[6] = 0x00000073; /* a[0x80].xy, a[0x90].xyz */ -+ blit->vp.hdr[13] = 0x00073000; /* o[0x70].xy, o[0x80].xyz */ - } - - static void -@@ -820,7 +820,7 @@ nvc0_blit_3d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - nvc0_blit_select_fp(blit, info); - nvc0_blitctx_pre_blit(blit); - -- nvc0_blit_set_dst(blit, dst, info->dst.level, 0, info->dst.format); -+ nvc0_blit_set_dst(blit, dst, info->dst.level, -1, info->dst.format); - nvc0_blit_set_src(blit, src, info->src.level, -1, info->src.format, - blit->filter); - -@@ -927,11 +927,14 @@ nvc0_blit_3d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - if (info->dst.box.z + info->dst.box.depth - 1) - IMMED_NVC0(push, NVC0_3D(LAYER), 0); - -- /* re-enable normally constant state */ -+ nvc0_blitctx_post_blit(blit); - -- IMMED_NVC0(push, NVC0_3D(VIEWPORT_TRANSFORM_EN), 1); -+ /* restore viewport */ - -- nvc0_blitctx_post_blit(blit); -+ BEGIN_NVC0(push, NVC0_3D(VIEWPORT_HORIZ(0)), 2); -+ PUSH_DATA (push, nvc0->framebuffer.width << 16); -+ PUSH_DATA (push, nvc0->framebuffer.height << 16); -+ IMMED_NVC0(push, NVC0_3D(VIEWPORT_TRANSFORM_EN), 1); - } - - static void -@@ -1108,10 +1111,17 @@ nvc0_blit(struct pipe_context *pipe, const struct pipe_blit_info *info) - debug_printf("blit: cannot filter array or cube textures in z direction"); - } - -- if (!eng3d && info->dst.format != info->src.format) -+ if (!eng3d && info->dst.format != info->src.format) { - if (!nvc0_2d_format_faithful(info->dst.format) || - !nvc0_2d_format_faithful(info->src.format)) - eng3d = TRUE; -+ /* For some retarded reason, if dst is R8/16_UNORM, the 2d engine doesn't -+ * like to do any format conversion (DATA_ERROR 0x34 on trigger). -+ */ -+ if (info->dst.format == PIPE_FORMAT_R8_UNORM || -+ info->dst.format == PIPE_FORMAT_R16_UNORM) -+ eng3d = TRUE; -+ } - - if (info->src.resource->nr_samples == 8 && - info->dst.resource->nr_samples <= 1) --- -1.8.2 - diff --git a/debian/patches/0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch b/debian/patches/0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch deleted file mode 100644 index 09e3ce9..0000000 --- a/debian/patches/0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch +++ /dev/null @@ -1,407 +0,0 @@ -From 923bb2d8edbcda9f4a293a0efd04d533382978e0 Mon Sep 17 00:00:00 2001 -From: Christoph Bumiller <[email protected]> -Date: Sat, 30 Mar 2013 21:28:30 +0100 -Subject: [PATCH 4/4] nvc0: fix for 2d engine R source formats writing RRR1 and - not R001 - ---- - src/gallium/drivers/nv50/nv50_blit.h | 40 +++++++++++++++ - src/gallium/drivers/nv50/nv50_surface.c | 71 +++++++++++++++++--------- - src/gallium/drivers/nvc0/nvc0_surface.c | 89 ++++++++++++++++++++++----------- - 3 files changed, 148 insertions(+), 52 deletions(-) - -diff --git a/src/gallium/drivers/nv50/nv50_blit.h b/src/gallium/drivers/nv50/nv50_blit.h -index d409f21..bdd6a63 100644 ---- a/src/gallium/drivers/nv50/nv50_blit.h -+++ b/src/gallium/drivers/nv50/nv50_blit.h -@@ -180,4 +180,44 @@ nv50_blit_eng2d_get_mask(const struct pipe_blit_info *info) - return mask; - } - -+#if NOUVEAU_DRIVER == 0xc0 -+# define nv50_format_table nvc0_format_table -+#endif -+ -+/* return TRUE for formats that can be converted among each other by NVC0_2D */ -+static INLINE boolean -+nv50_2d_dst_format_faithful(enum pipe_format format) -+{ -+ const uint64_t mask = -+ NV50_ENG2D_SUPPORTED_FORMATS & -+ ~NV50_ENG2D_NOCONVERT_FORMATS; -+ uint8_t id = nv50_format_table[format].rt; -+ return (id >= 0xc0) && (mask & (1ULL << (id - 0xc0))); -+} -+static INLINE boolean -+nv50_2d_src_format_faithful(enum pipe_format format) -+{ -+ const uint64_t mask = -+ NV50_ENG2D_SUPPORTED_FORMATS & -+ ~(NV50_ENG2D_LUMINANCE_FORMATS | NV50_ENG2D_INTENSITY_FORMATS); -+ uint8_t id = nv50_format_table[format].rt; -+ return (id >= 0xc0) && (mask & (1ULL << (id - 0xc0))); -+} -+ -+static INLINE boolean -+nv50_2d_format_supported(enum pipe_format format) -+{ -+ uint8_t id = nv50_format_table[format].rt; -+ return (id >= 0xc0) && -+ (NV50_ENG2D_SUPPORTED_FORMATS & (1ULL << (id - 0xc0))); -+} -+ -+static INLINE boolean -+nv50_2d_dst_format_ops_supported(enum pipe_format format) -+{ -+ uint8_t id = nv50_format_table[format].rt; -+ return (id >= 0xc0) && -+ (NV50_ENG2D_OPERATION_FORMATS & (1ULL << (id - 0xc0))); -+} -+ - #endif /* __NV50_BLIT_H__ */ -diff --git a/src/gallium/drivers/nv50/nv50_surface.c b/src/gallium/drivers/nv50/nv50_surface.c -index 16f77cd..3a780f6 100644 ---- a/src/gallium/drivers/nv50/nv50_surface.c -+++ b/src/gallium/drivers/nv50/nv50_surface.c -@@ -35,25 +35,22 @@ - - #include "nv50_context.h" - #include "nv50_resource.h" --#include "nv50_blit.h" - - #include "nv50_defs.xml.h" - #include "nv50_texture.xml.h" - -+/* these are used in nv50_blit.h */ - #define NV50_ENG2D_SUPPORTED_FORMATS 0xff0843e080608409ULL -+#define NV50_ENG2D_NOCONVERT_FORMATS 0x0008402000000000ULL -+#define NV50_ENG2D_LUMINANCE_FORMATS 0x0008402000000000ULL -+#define NV50_ENG2D_INTENSITY_FORMATS 0x0000000000000000ULL -+#define NV50_ENG2D_OPERATION_FORMATS 0x060001c000608000ULL - --/* return TRUE for formats that can be converted among each other by NV50_2D */ --static INLINE boolean --nv50_2d_format_faithful(enum pipe_format format) --{ -- uint8_t id = nv50_format_table[format].rt; -- -- return (id >= 0xc0) && -- (NV50_ENG2D_SUPPORTED_FORMATS & (1ULL << (id - 0xc0))); --} -+#define NOUVEAU_DRIVER 0x50 -+#include "nv50_blit.h" - - static INLINE uint8_t --nv50_2d_format(enum pipe_format format) -+nv50_2d_format(enum pipe_format format, boolean dst, boolean dst_src_equal) - { - uint8_t id = nv50_format_table[format].rt; - -@@ -62,6 +59,7 @@ nv50_2d_format(enum pipe_format format) - */ - if ((id >= 0xc0) && (NV50_ENG2D_SUPPORTED_FORMATS & (1ULL << (id - 0xc0)))) - return id; -+ assert(dst_src_equal); - - switch (util_format_get_blocksize(format)) { - case 1: -@@ -78,7 +76,7 @@ nv50_2d_format(enum pipe_format format) - static int - nv50_2d_texture_set(struct nouveau_pushbuf *push, int dst, - struct nv50_miptree *mt, unsigned level, unsigned layer, -- enum pipe_format pformat) -+ enum pipe_format pformat, boolean dst_src_pformat_equal) - { - struct nouveau_bo *bo = mt->base.bo; - uint32_t width, height, depth; -@@ -86,7 +84,7 @@ nv50_2d_texture_set(struct nouveau_pushbuf *push, int dst, - uint32_t mthd = dst ? NV50_2D_DST_FORMAT : NV50_2D_SRC_FORMAT; - uint32_t offset = mt->level[level].offset; - -- format = nv50_2d_format(pformat); -+ format = nv50_2d_format(pformat, dst, dst_src_pformat_equal); - if (!format) { - NOUVEAU_ERR("invalid/unsupported surface format: %s\n", - util_format_name(pformat)); -@@ -155,15 +153,16 @@ nv50_2d_texture_do_copy(struct nouveau_pushbuf *push, - const enum pipe_format dfmt = dst->base.base.format; - const enum pipe_format sfmt = src->base.base.format; - int ret; -+ boolean eqfmt = dfmt == sfmt; - - if (!PUSH_SPACE(push, 2 * 16 + 32)) - return PIPE_ERROR; - -- ret = nv50_2d_texture_set(push, 1, dst, dst_level, dz, dfmt); -+ ret = nv50_2d_texture_set(push, 1, dst, dst_level, dz, dfmt, eqfmt); - if (ret) - return ret; - -- ret = nv50_2d_texture_set(push, 0, src, src_level, sz, sfmt); -+ ret = nv50_2d_texture_set(push, 0, src, src_level, sz, sfmt, eqfmt); - if (ret) - return ret; - -@@ -243,8 +242,8 @@ nv50_resource_copy_region(struct pipe_context *pipe, - } - - assert((src->format == dst->format) || -- (nv50_2d_format_faithful(src->format) && -- nv50_2d_format_faithful(dst->format))); -+ (nv50_2d_src_format_faithful(src->format) && -+ nv50_2d_dst_format_faithful(dst->format))); - - BCTX_REFN(nv50->bufctx, 2D, nv04_resource(src), RD); - BCTX_REFN(nv50->bufctx, 2D, nv04_resource(dst), WR); -@@ -1061,7 +1060,8 @@ nv50_blit_eng2d(struct nv50_context *nv50, const struct pipe_blit_info *info) - int64_t du_dx, dv_dy; - int i; - uint32_t mode; -- const uint32_t mask = nv50_blit_eng2d_get_mask(info); -+ uint32_t mask = nv50_blit_eng2d_get_mask(info); -+ boolean b; - - mode = nv50_blit_get_filter(info) ? - NV50_2D_BLIT_CONTROL_FILTER_BILINEAR : -@@ -1072,8 +1072,9 @@ nv50_blit_eng2d(struct nv50_context *nv50, const struct pipe_blit_info *info) - du_dx = ((int64_t)info->src.box.width << 32) / info->dst.box.width; - dv_dy = ((int64_t)info->src.box.height << 32) / info->dst.box.height; - -- nv50_2d_texture_set(push, 1, dst, info->dst.level, dz, info->dst.format); -- nv50_2d_texture_set(push, 0, src, info->src.level, sz, info->src.format); -+ b = info->dst.format == info->src.format; -+ nv50_2d_texture_set(push, 1, dst, info->dst.level, dz, info->dst.format, b); -+ nv50_2d_texture_set(push, 0, src, info->src.level, sz, info->src.format, b); - - if (info->scissor_enable) { - BEGIN_NV04(push, NV50_2D(CLIP_X), 5); -@@ -1096,6 +1097,17 @@ nv50_blit_eng2d(struct nv50_context *nv50, const struct pipe_blit_info *info) - PUSH_DATA (push, 0xffffffff); - BEGIN_NV04(push, NV50_2D(OPERATION), 1); - PUSH_DATA (push, NV50_2D_OPERATION_ROP); -+ } else -+ if (info->src.format != info->dst.format) { -+ if (info->src.format == PIPE_FORMAT_R8_UNORM || -+ info->src.format == PIPE_FORMAT_R16_UNORM || -+ info->src.format == PIPE_FORMAT_R16_FLOAT || -+ info->src.format == PIPE_FORMAT_R32_FLOAT) { -+ mask = 0xffff0000; /* also makes condition for OPERATION reset true */ -+ BEGIN_NV04(push, NV50_2D(BETA4), 2); -+ PUSH_DATA (push, mask); -+ PUSH_DATA (push, NV50_2D_OPERATION_SRCCOPY_PREMULT); -+ } - } - - if (src->ms_x > dst->ms_x || src->ms_y > dst->ms_y) { -@@ -1227,11 +1239,22 @@ nv50_blit(struct pipe_context *pipe, const struct pipe_blit_info *info) - } - - if (!eng3d && info->dst.format != info->src.format) { -- if (!nv50_2d_format_faithful(info->dst.format) || -- !nv50_2d_format_faithful(info->src.format)) -+ if (!nv50_2d_dst_format_faithful(info->dst.format) || -+ !nv50_2d_src_format_faithful(info->src.format)) { - eng3d = TRUE; -- if (info->dst.format == PIPE_FORMAT_R8_UNORM || -- info->dst.format == PIPE_FORMAT_R16_UNORM) -+ } else -+ if (!nv50_2d_src_format_faithful(info->src.format)) { -+ if (!util_format_is_luminance(info->src.format)) { -+ if (util_format_is_intensity(info->src.format)) -+ eng3d = TRUE; -+ else -+ if (!nv50_2d_dst_format_ops_supported(info->dst.format)) -+ eng3d = TRUE; -+ else -+ eng3d = !nv50_2d_format_supported(info->src.format); -+ } -+ } else -+ if (util_format_is_luminance_alpha(info->src.format)) - eng3d = TRUE; - } - -diff --git a/src/gallium/drivers/nvc0/nvc0_surface.c b/src/gallium/drivers/nvc0/nvc0_surface.c -index 80f6f6f..66154a4 100644 ---- a/src/gallium/drivers/nvc0/nvc0_surface.c -+++ b/src/gallium/drivers/nvc0/nvc0_surface.c -@@ -36,29 +36,32 @@ - - #include "nv50/nv50_defs.xml.h" - #include "nv50/nv50_texture.xml.h" --#include "nv50/nv50_blit.h" - --#define NVC0_ENG2D_SUPPORTED_FORMATS 0xff9ccfe1cce3ccc9ULL -+/* these are used in nv50_blit.h */ -+#define NV50_ENG2D_SUPPORTED_FORMATS 0xff9ccfe1cce3ccc9ULL -+#define NV50_ENG2D_NOCONVERT_FORMATS 0x009cc02000000000ULL -+#define NV50_ENG2D_LUMINANCE_FORMATS 0x001cc02000000000ULL -+#define NV50_ENG2D_INTENSITY_FORMATS 0x0080000000000000ULL -+#define NV50_ENG2D_OPERATION_FORMATS 0x060001c000638000ULL - --/* return TRUE for formats that can be converted among each other by NVC0_2D */ --static INLINE boolean --nvc0_2d_format_faithful(enum pipe_format format) --{ -- uint8_t id = nvc0_format_table[format].rt; -- -- return (id >= 0xc0) && (NVC0_ENG2D_SUPPORTED_FORMATS & (1ULL << (id - 0xc0))); --} -+#define NOUVEAU_DRIVER 0xc0 -+#include "nv50/nv50_blit.h" - - static INLINE uint8_t --nvc0_2d_format(enum pipe_format format) -+nvc0_2d_format(enum pipe_format format, boolean dst, boolean dst_src_equal) - { - uint8_t id = nvc0_format_table[format].rt; - -+ /* A8_UNORM is treated as I8_UNORM as far as the 2D engine is concerned. */ -+ if (!dst && unlikely(format == PIPE_FORMAT_I8_UNORM) && !dst_src_equal) -+ return NV50_SURFACE_FORMAT_A8_UNORM; -+ - /* Hardware values for color formats range from 0xc0 to 0xff, - * but the 2D engine doesn't support all of them. - */ -- if (nvc0_2d_format_faithful(format)) -+ if (nv50_2d_format_supported(format)) - return id; -+ assert(dst_src_equal); - - switch (util_format_get_blocksize(format)) { - case 1: -@@ -72,6 +75,7 @@ nvc0_2d_format(enum pipe_format format) - case 16: - return NV50_SURFACE_FORMAT_RGBA32_FLOAT; - default: -+ assert(0); - return 0; - } - } -@@ -79,7 +83,7 @@ nvc0_2d_format(enum pipe_format format) - static int - nvc0_2d_texture_set(struct nouveau_pushbuf *push, boolean dst, - struct nv50_miptree *mt, unsigned level, unsigned layer, -- enum pipe_format pformat) -+ enum pipe_format pformat, boolean dst_src_pformat_equal) - { - struct nouveau_bo *bo = mt->base.bo; - uint32_t width, height, depth; -@@ -87,7 +91,7 @@ nvc0_2d_texture_set(struct nouveau_pushbuf *push, boolean dst, - uint32_t mthd = dst ? NVC0_2D_DST_FORMAT : NVC0_2D_SRC_FORMAT; - uint32_t offset = mt->level[level].offset; - -- format = nvc0_2d_format(pformat); -+ format = nvc0_2d_format(pformat, dst, dst_src_pformat_equal); - if (!format) { - NOUVEAU_ERR("invalid/unsupported surface format: %s\n", - util_format_name(pformat)); -@@ -157,15 +161,16 @@ nvc0_2d_texture_do_copy(struct nouveau_pushbuf *push, - const enum pipe_format dfmt = dst->base.base.format; - const enum pipe_format sfmt = src->base.base.format; - int ret; -+ boolean eqfmt = dfmt == sfmt; - - if (!PUSH_SPACE(push, 2 * 16 + 32)) - return PIPE_ERROR; - -- ret = nvc0_2d_texture_set(push, TRUE, dst, dst_level, dz, dfmt); -+ ret = nvc0_2d_texture_set(push, TRUE, dst, dst_level, dz, dfmt, eqfmt); - if (ret) - return ret; - -- ret = nvc0_2d_texture_set(push, FALSE, src, src_level, sz, sfmt); -+ ret = nvc0_2d_texture_set(push, FALSE, src, src_level, sz, sfmt, eqfmt); - if (ret) - return ret; - -@@ -243,8 +248,8 @@ nvc0_resource_copy_region(struct pipe_context *pipe, - return; - } - -- assert(nvc0_2d_format_faithful(src->format)); -- assert(nvc0_2d_format_faithful(dst->format)); -+ assert(nv50_2d_dst_format_faithful(dst->format)); -+ assert(nv50_2d_src_format_faithful(src->format)); - - BCTX_REFN(nvc0->bufctx, 2D, nv04_resource(src), RD); - BCTX_REFN(nvc0->bufctx, 2D, nv04_resource(dst), WR); -@@ -953,7 +958,8 @@ nvc0_blit_eng2d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - int64_t du_dx, dv_dy; - int i; - uint32_t mode; -- const uint32_t mask = nv50_blit_eng2d_get_mask(info); -+ uint32_t mask = nv50_blit_eng2d_get_mask(info); -+ boolean b; - - mode = nv50_blit_get_filter(info) ? - NVC0_2D_BLIT_CONTROL_FILTER_BILINEAR : -@@ -964,8 +970,9 @@ nvc0_blit_eng2d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - du_dx = ((int64_t)info->src.box.width << 32) / info->dst.box.width; - dv_dy = ((int64_t)info->src.box.height << 32) / info->dst.box.height; - -- nvc0_2d_texture_set(push, 1, dst, info->dst.level, dz, info->dst.format); -- nvc0_2d_texture_set(push, 0, src, info->src.level, sz, info->src.format); -+ b = info->dst.format == info->src.format; -+ nvc0_2d_texture_set(push, 1, dst, info->dst.level, dz, info->dst.format, b); -+ nvc0_2d_texture_set(push, 0, src, info->src.level, sz, info->src.format, b); - - if (info->scissor_enable) { - BEGIN_NVC0(push, NVC0_2D(CLIP_X), 5); -@@ -986,6 +993,25 @@ nvc0_blit_eng2d(struct nvc0_context *nvc0, const struct pipe_blit_info *info) - PUSH_DATA (push, 0xffffffff); - PUSH_DATA (push, 0xffffffff); - IMMED_NVC0(push, NVC0_2D(OPERATION), NVC0_2D_OPERATION_ROP); -+ } else -+ if (info->src.format != info->dst.format) { -+ if (info->src.format == PIPE_FORMAT_R8_UNORM || -+ info->src.format == PIPE_FORMAT_R8_SNORM || -+ info->src.format == PIPE_FORMAT_R16_UNORM || -+ info->src.format == PIPE_FORMAT_R16_SNORM || -+ info->src.format == PIPE_FORMAT_R16_FLOAT || -+ info->src.format == PIPE_FORMAT_R32_FLOAT) { -+ mask = 0xffff0000; /* also makes condition for OPERATION reset true */ -+ BEGIN_NVC0(push, NVC0_2D(BETA4), 2); -+ PUSH_DATA (push, mask); -+ PUSH_DATA (push, NVC0_2D_OPERATION_SRCCOPY_PREMULT); -+ } else -+ if (info->src.format == PIPE_FORMAT_A8_UNORM) { -+ mask = 0xff000000; -+ BEGIN_NVC0(push, NVC0_2D(BETA4), 2); -+ PUSH_DATA (push, mask); -+ PUSH_DATA (push, NVC0_2D_OPERATION_SRCCOPY_PREMULT); -+ } - } - - if (src->ms_x > dst->ms_x || src->ms_y > dst->ms_y) { -@@ -1112,14 +1138,21 @@ nvc0_blit(struct pipe_context *pipe, const struct pipe_blit_info *info) - } - - if (!eng3d && info->dst.format != info->src.format) { -- if (!nvc0_2d_format_faithful(info->dst.format) || -- !nvc0_2d_format_faithful(info->src.format)) -+ if (!nv50_2d_dst_format_faithful(info->dst.format)) { - eng3d = TRUE; -- /* For some retarded reason, if dst is R8/16_UNORM, the 2d engine doesn't -- * like to do any format conversion (DATA_ERROR 0x34 on trigger). -- */ -- if (info->dst.format == PIPE_FORMAT_R8_UNORM || -- info->dst.format == PIPE_FORMAT_R16_UNORM) -+ } else -+ if (!nv50_2d_src_format_faithful(info->src.format)) { -+ if (!util_format_is_luminance(info->src.format)) { -+ if (util_format_is_intensity(info->src.format)) -+ eng3d = info->src.format != PIPE_FORMAT_I8_UNORM; -+ else -+ if (!nv50_2d_dst_format_ops_supported(info->dst.format)) -+ eng3d = TRUE; -+ else -+ eng3d = !nv50_2d_format_supported(info->src.format); -+ } -+ } else -+ if (util_format_is_luminance_alpha(info->src.format)) - eng3d = TRUE; - } - --- -1.8.2 - diff --git a/debian/patches/100_no_abi_tag.patch b/debian/patches/100_no_abi_tag.patch deleted file mode 100644 index 80f1d32..0000000 --- a/debian/patches/100_no_abi_tag.patch +++ /dev/null @@ -1,44 +0,0 @@ ---- a/src/mapi/glapi/gen/gl_x86-64_asm.py -+++ b/src/mapi/glapi/gen/gl_x86-64_asm.py -@@ -181,19 +181,6 @@ class PrintGenericStubs(gl_XML.gl_print_ - - def printRealFooter(self): - print '' -- print '#if defined(GLX_USE_TLS) && defined(__linux__)' -- print ' .section ".note.ABI-tag", "a"' -- print ' .p2align 2' -- print ' .long 1f - 0f /* name length */' -- print ' .long 3f - 2f /* data length */' -- print ' .long 1 /* note length */' -- print '0: .asciz "GNU" /* vendor name */' -- print '1: .p2align 2' -- print '2: .long 0 /* note data: the ABI tag */' -- print ' .long 2,4,20 /* Minimum kernel version w/TLS */' -- print '3: .p2align 2 /* pad out section */' -- print '#endif /* GLX_USE_TLS */' -- print '' - print '#if defined (__ELF__) && defined (__linux__)' - print ' .section .note.GNU-stack,"",%progbits' - print '#endif' ---- a/src/mapi/glapi/gen/gl_x86_asm.py -+++ b/src/mapi/glapi/gen/gl_x86_asm.py -@@ -189,19 +189,6 @@ class PrintGenericStubs(gl_XML.gl_print_ - print '\t\tALIGNTEXT16' - print 'GLNAME(gl_dispatch_functions_end):' - print '' -- print '#if defined(GLX_USE_TLS) && defined(__linux__)' -- print ' .section ".note.ABI-tag", "a"' -- print ' .p2align 2' -- print ' .long 1f - 0f /* name length */' -- print ' .long 3f - 2f /* data length */' -- print ' .long 1 /* note length */' -- print '0: .asciz "GNU" /* vendor name */' -- print '1: .p2align 2' -- print '2: .long 0 /* note data: the ABI tag */' -- print ' .long 2,4,20 /* Minimum kernel version w/TLS */' -- print '3: .p2align 2 /* pad out section */' -- print '#endif /* GLX_USE_TLS */' -- print '' - print '#if defined (__ELF__) && defined (__linux__)' - print ' .section .note.GNU-stack,"",%progbits' - print '#endif' diff --git a/debian/patches/119-libllvmradeon-link.patch b/debian/patches/119-libllvmradeon-link.patch deleted file mode 100644 index ee47f8a..0000000 --- a/debian/patches/119-libllvmradeon-link.patch +++ /dev/null @@ -1,9 +0,0 @@ ---- a/src/gallium/drivers/radeon/Makefile.am -+++ b/src/gallium/drivers/radeon/Makefile.am -@@ -26,5 +26,6 @@ - $(C_FILES) - - libllvmradeon@VERSION@_la_LIBADD = \ -+ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ - $(CLOCK_LIB) \ - $(LLVM_LIBS) diff --git a/debian/patches/series b/debian/patches/series index c03f810..b96e848 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -5,17 +5,9 @@ #11-hurd-ftbfs-again.diff # Ubuntu patches. -100_no_abi_tag.patch 101_ubuntu_hidden_glname.patch 117-static-gallium.patch 118-dricore-gallium.patch -119-libllvmradeon-link.patch 120-hide-x86sse.patch -0001-nv50-fix-3D-render-target-setup.patch -0002-nv50-nvc0-disable-DEPTH_RANGE_NEAR-FAR-clipping-duri.patch -0003-nv50-nvc0-fix-3d-blits-restore-viewport-after-blit.patch -0004-nvc0-fix-for-2d-engine-R-source-formats-writing-RRR1.patch - -vbo-fix-crash.diff revert-a64c1eb9b110.diff diff --git a/debian/patches/vbo-fix-crash.diff b/debian/patches/vbo-fix-crash.diff deleted file mode 100644 index 03b52b2..0000000 --- a/debian/patches/vbo-fix-crash.diff +++ /dev/null @@ -1,29 +0,0 @@ -commit e6616948b74531eae3137585b3ae35a1fc0f8174 -Author: Brian Paul <[email protected]> -Date: Wed Mar 6 12:08:17 2013 -0700 - - vbo: fix crash found with shared display lists - - This fixes a crash when a display list is created in one context - but executed from a second one. The vbo_save_context::vertex_store - memeber will be NULL if we never created a display list with the - context. Just check for that before dereferencing the pointer. - - Fixes http://bugzilla.redhat.com/show_bug.cgi?id=918661 - - Note: This is a candidate for the stable branches. - (cherry picked from commit c2665aacdd14beec9580246736c602e3ff04d7ae) - -diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c -index efb386e..f5b5c41 100644 ---- a/src/mesa/vbo/vbo_save_draw.c -+++ b/src/mesa/vbo/vbo_save_draw.c -@@ -253,7 +253,7 @@ vbo_save_playback_vertex_list(struct gl_context *ctx, void *data) - struct vbo_save_context *save = &vbo_context(ctx)->save; - GLboolean remap_vertex_store = GL_FALSE; -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

