vkd3d-shader/d3dbc: Don't write inconsequential MOVs.
CASTS from floats to integers are implemented as mere MOVs. These often, but not always, end up moving the value from one register to the same register.
1/2 avoids writing the MOV instructions if they have no effect.
2/2 is an unrelated but tiny memory fix.