diff options
author | Brian Paul <brianp@vmware.com> | 2009-01-06 17:24:23 -0700 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2009-01-06 17:24:23 -0700 |
commit | 1fa978c8911d00e7cac0a114110e98ebdbe4d57d (patch) | |
tree | 64ed642fe02792f27e43eaaf09b0138f9a048a82 /src/mesa/swrast/s_masking.c | |
parent | 338ae34d227fce8b6f358ca90d383d0cfb87c868 (diff) |
glsl: implement loop unrolling for simple 'for' loops
Loops such as this will be unrolled:
for (i = 0; i < 4; ++i) {
body;
}
where 'body' isn't too large.
This also helps to fix the issue reported in bug #19190. The problem there
is indexing vector types with a variable index. For example:
vec4 v;
v[2] = 1.0; // equivalent to v.z = 1.0
v[i] = 2.0; // variable index into vector!!
Since the for-i loop can be unrolled, we can avoid the problems associated
with variable indexing into a vector (at least in this case).
Diffstat (limited to 'src/mesa/swrast/s_masking.c')
0 files changed, 0 insertions, 0 deletions