|  |  | 
Full precision log2(x).
| log dst, src | 
|---|
where
| Vertex shader versions | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw | 
|---|---|---|---|---|---|---|
| log | x | x | x | x | x | x | 
The following code fragment shows the operations performed.
float v = abs(src);
if (v != 0)
{
    dest.x = dest.y = dest.z = dest.w = 
        (float)(log(v)/log(2));  
}
else
{
    dest.x = dest.y = dest.z = dest.w = -FLT_MAX;
}
    This instruction accepts a scalar source whose sign bit is ignored. The result is replicated to all four channels.
This instruction provides 21 bits of precision.