From 6aab3e3d269b71e8306928088e3603daf082223f Mon Sep 17 00:00:00 2001 From: Brian Date: Tue, 2 Oct 2007 14:17:47 -0600 Subject: [PATCH] Added TGSI_FILE_OUTPUT case in fetch_src_file_channel(). GLSL output variables (such as vertex varyings) can be read (they're not write-only). --- src/mesa/pipe/tgsi/exec/tgsi_exec.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/mesa/pipe/tgsi/exec/tgsi_exec.c b/src/mesa/pipe/tgsi/exec/tgsi_exec.c index d757df48d8d..e428b250f00 100644 --- a/src/mesa/pipe/tgsi/exec/tgsi_exec.c +++ b/src/mesa/pipe/tgsi/exec/tgsi_exec.c @@ -855,6 +855,14 @@ fetch_src_file_channel( chan->u[3] = mach->Addrs[index->i[3]].xyzw[swizzle].u[3]; break; + case TGSI_FILE_OUTPUT: + /* vertex varying/output vars can be read too */ + chan->u[0] = mach->Outputs[index->i[0]].xyzw[swizzle].u[0]; + chan->u[1] = mach->Outputs[index->i[1]].xyzw[swizzle].u[1]; + chan->u[2] = mach->Outputs[index->i[2]].xyzw[swizzle].u[2]; + chan->u[3] = mach->Outputs[index->i[3]].xyzw[swizzle].u[3]; + break; + default: assert( 0 ); } -- 2.30.2