shader: re-interpret GRID_SIZE, BLOCK_ID, and THREAD_ID as float in MOV to TEMP
These values are unsigned, but the temporaries are always assumed to be in float representation, and the temps values will be re-interpreted as integers when needed. Hence above values must not be value-converted to float but the bit-representation must be maintained when they are stored in a temp register.
Thanks @lepton for tracking this down.
Fixes #105 (closed)