https://bugs.freedesktop.org/show_bug.cgi?id=42435
--- Comment #14 from Claudio Freire klaussfreire@gmail.com 2012-02-25 14:26:24 PST --- I experience a similar situation with Ironlake and Mesa 8.0.1, only with far more complex shaders.
Apparently, in these shaders, all varyings get bogus data on the fragment shader.
The only workaround I can find is passing that data through the built-in varying in gl_TexCoord, although that's quite suboptimal for other drivers so I would prefer not to.