summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/radeonsi_shader.c
diff options
context:
space:
mode:
authorMichel Dänzer <[email protected]>2012-06-08 17:15:21 +0200
committerMichel Dänzer <[email protected]>2012-06-12 18:48:28 +0200
commit90c6eacdb4927e6395743d69e5efa0a3a0aec7cc (patch)
tree65df6e34ca093de38186a4c3941b00982ac22e47 /src/gallium/drivers/radeonsi/radeonsi_shader.c
parent4c418cf1a37f824676bcc0454fcc4cf6916e0fdd (diff)
radeonsi: Use linear instead of constant interpolation for now.
Constant interpolation still hangs the GPU for some reason.
Diffstat (limited to 'src/gallium/drivers/radeonsi/radeonsi_shader.c')
-rw-r--r--src/gallium/drivers/radeonsi/radeonsi_shader.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c
index 0a4f04bdb12..d0820b80302 100644
--- a/src/gallium/drivers/radeonsi/radeonsi_shader.c
+++ b/src/gallium/drivers/radeonsi/radeonsi_shader.c
@@ -250,8 +250,13 @@ static void declare_input_fs(
/* XXX: Handle all possible interpolation modes */
switch (decl->Interp.Interpolate) {
case TGSI_INTERPOLATE_COLOR:
+ /* XXX: Flat shading hangs the GPU */
if (si_shader_ctx->rctx->rasterizer->flatshade) {
+#if 0
intr_name = "llvm.SI.fs.interp.constant";
+#else
+ intr_name = "llvm.SI.fs.interp.linear.center";
+#endif
} else {
if (decl->Interp.Centroid)
intr_name = "llvm.SI.fs.interp.persp.centroid";
@@ -260,8 +265,11 @@ static void declare_input_fs(
}
break;
case TGSI_INTERPOLATE_CONSTANT:
+ /* XXX: Flat shading hangs the GPU */
+#if 0
intr_name = "llvm.SI.fs.interp.constant";
break;
+#endif
case TGSI_INTERPOLATE_LINEAR:
if (decl->Interp.Centroid)
intr_name = "llvm.SI.fs.interp.linear.centroid";