It works on ATI and it seems to work on NVIDIA 7174 drivers (using either the
ARB or GLSL backends).
It also works on the latest NVIDIA drivers using GLSL.
If we generate the same ARB code than on ATI (using CMP instead of COND, 2D
textures instead of RECT), it still doesn't work on NVIDIA with the given drivers.
It does work on ARB when we remove the amount of dead code that gets eliminated
by commenting out the hasDecl() line. The extra code that stays there doesn't
affect anything except that it may change the register allocation.
This is starting to smell like a driver bug... |