Mesa (master): radv: fix interp at sample code.

Dave Airlie airlied at kemper.freedesktop.org
Mon Apr 3 19:55:44 UTC 2017


Module: Mesa
Branch: master
Commit: 22b116171f88f2dcb1be2a5ea6cd64c0731670e9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=22b116171f88f2dcb1be2a5ea6cd64c0731670e9

Author: Dave Airlie <airlied at redhat.com>
Date:   Mon Apr  3 04:43:15 2017 +0100

radv: fix interp at sample code.

Interp at sample needs to use the center, since the sample
positions it retrieves are relative to the center.

This fixes a bunch of CTS tests with multisample_interpolation.

Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/amd/common/ac_nir_to_llvm.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index dfe2732f78..6fd2a0c4f6 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3556,12 +3556,10 @@ static LLVMValueRef visit_interp(struct nir_to_llvm_context *ctx,
 		location = INTERP_CENTROID;
 		break;
 	case nir_intrinsic_interp_var_at_sample:
-		location = INTERP_SAMPLE;
-		src0 = get_src(ctx, instr->src[0]);
-		break;
 	case nir_intrinsic_interp_var_at_offset:
 		location = INTERP_CENTER;
 		src0 = get_src(ctx, instr->src[0]);
+		break;
 	default:
 		break;
 	}




More information about the mesa-commit mailing list