From eaeda34bef711cc566f51dee092a19a3c4ac1a16 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Wed, 1 Aug 2012 16:23:05 +0100 Subject: sna: Fix computation of st values for SIMD8 dispatch Fixes regression with enabling 8-pixels. Reported-by: Mehran Kholdi Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53044 Signed-off-by: Chris Wilson --- src/sna/brw/brw_wm.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) (limited to 'src/sna/brw') diff --git a/src/sna/brw/brw_wm.c b/src/sna/brw/brw_wm.c index bd4003dd..f54e55ef 100644 --- a/src/sna/brw/brw_wm.c +++ b/src/sna/brw/brw_wm.c @@ -42,12 +42,11 @@ static void brw_wm_affine_st(struct brw_compile *p, int dw, if (dw == 16) { brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); uv = p->gen >= 60 ? 6 : 3; - uv += 2*channel; } else { brw_set_compression_control(p, BRW_COMPRESSION_NONE); uv = p->gen >= 60 ? 4 : 3; - uv += channel; } + uv += 2*channel; msg++; if (p->gen >= 60) { @@ -462,9 +461,6 @@ brw_wm_kernel__affine_mask(struct brw_compile *p, int dispatch) { int src, mask; - if (dispatch == 8) - return false; /* XXX sampler alpha retuns all 0 */ - if (p->gen < 60) brw_wm_xy(p, dispatch); @@ -495,9 +491,6 @@ brw_wm_kernel__affine_mask_sa(struct brw_compile *p, int dispatch) { int src, mask; - if (dispatch == 8) - return false; /* XXX sampler alpha retuns all 0 */ - if (p->gen < 60) brw_wm_xy(p, dispatch); @@ -518,12 +511,11 @@ static void brw_wm_projective_st(struct brw_compile *p, int dw, if (dw == 16) { brw_set_compression_control(p, BRW_COMPRESSION_COMPRESSED); uv = p->gen >= 60 ? 6 : 3; - uv += 2*channel; } else { brw_set_compression_control(p, BRW_COMPRESSION_NONE); uv = p->gen >= 60 ? 4 : 3; - uv += channel; } + uv += 2*channel; msg++; if (p->gen >= 60) { @@ -614,9 +606,6 @@ brw_wm_kernel__projective_mask(struct brw_compile *p, int dispatch) { int src, mask; - if (dispatch == 8) - return false; /* XXX sampler alpha retuns all 0 */ - if (p->gen < 60) brw_wm_xy(p, dispatch); @@ -647,9 +636,6 @@ brw_wm_kernel__projective_mask_sa(struct brw_compile *p, int dispatch) { int src, mask; - if (dispatch == 8) - return false; /* XXX sampler alpha retuns all 0 */ - if (p->gen < 60) brw_wm_xy(p, dispatch); -- cgit v1.2.3