ARB_precision_hint on FX with 6x.xx drivers

Hi all. My question concerns the behavior of ARB_precision_hint_fastest within fragment programs on NVIDIA’s FX series of cards when using the 6x.xx drivers.

On an FX 5600, when I use ARB_precision_hint_fastest in my fragment program with driver version 61.77, this line seems to have no effect:

// Get normal in the range [-1,1]
MAD, normal, 2.0, -1.0;

This instruction does work, however, under the following driver/hardware combos:

  1. 6800 Ultra with 61.77 drivers and either precision hint (nicest or fastest).
  2. 5600 Ultra with precision hint nicest and 61.77 drivers OR any precision hint and 56.72 drivers.

Is there some issue with this line of code? If not, what exactly is the precision hint doing now on FX cards that it wasn’t doing before? I’d like to be able to use the faster precision hint if possible as this calculation does not need full 32 bit precision.


Can you post the full shader and possibly a repro app? At first glance, this sounds like a driver issue.