diff options
author | Brian <brian.paul@tungstengraphics.com> | 2007-10-02 14:17:47 -0600 |
---|---|---|
committer | Brian <brian.paul@tungstengraphics.com> | 2007-10-02 14:17:47 -0600 |
commit | 6aab3e3d269b71e8306928088e3603daf082223f (patch) | |
tree | b4f52bdd2aaa74facd706fed0853cc9286b7a953 | |
parent | 4ad80ad5cfdb9bc23eee15938645a334d227cd72 (diff) |
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).
-rw-r--r-- | src/mesa/pipe/tgsi/exec/tgsi_exec.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mesa/pipe/tgsi/exec/tgsi_exec.c b/src/mesa/pipe/tgsi/exec/tgsi_exec.c index d757df48d8..e428b250f0 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 ); } |