From: Chris Forbes Date: Tue, 23 Apr 2013 18:44:02 +0000 (+1200) Subject: i965: report correct sample positions X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=447bf1fb524f1f451baa67ea172caa2ed51369c7;p=mesa.git i965: report correct sample positions From low to high bits, the sample positions are packed y0,x0,y1,x1... Fixes arb_texture_multisample-sample-position piglit. Signed-off-by: Chris Forbes Reviewed-by: Paul Berry --- diff --git a/src/mesa/drivers/dri/i965/gen6_multisample_state.c b/src/mesa/drivers/dri/i965/gen6_multisample_state.c index 35071e846be..534abc212b6 100644 --- a/src/mesa/drivers/dri/i965/gen6_multisample_state.c +++ b/src/mesa/drivers/dri/i965/gen6_multisample_state.c @@ -83,14 +83,14 @@ gen6_get_sample_position(struct gl_context *ctx, break; case 4: { uint8_t val = (uint8_t)(sample_positions_4x[0] >> (8*index)); - result[0] = (val & 0xf) / 16.0f; - result[1] = ((val >> 4) & 0xf) / 16.0f; + result[0] = ((val >> 4) & 0xf) / 16.0f; + result[1] = (val & 0xf) / 16.0f; break; } case 8: { uint8_t val = (uint8_t)(sample_positions_8x[index>>2] >> (8*(index & 3))); - result[0] = (val & 0xf) / 16.0f; - result[1] = ((val >> 4) & 0xf) / 16.0f; + result[0] = ((val >> 4) & 0xf) / 16.0f; + result[1] = (val & 0xf) / 16.0f; break; } default: