gm107/ir: fix DMUL opcode encoding

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0/ir: fix lowering of RSQ/RCP/SQRT/MOD to work with F64

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0/ir: no instruction can load a double immediate

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0/ir: handle zero and negative sqrt arguments

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0/ir: add support for new TGSI double opcodes

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0/ir: remove merge/split pairs to allow normal propagation to occur

Because the TGSI interface creates merges for each instruction source
and then splits them back out, there are a lot of unnecessary
merge/split pairs which do essentially nothing. The various modifier/etc
propagation doesn't know how to walk though those, so just remove them
when they're unnecessary.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
nvc0: enable double support

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
glsl: double support for uniform buffer objects

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
glsl: support double in 420pack vector constructor

Patch adds conversion support for when constructing a dvec from
items of a different type.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
glsl: set correct size for double array uniforms

+ fix initializer bug in double array uniforms

(merge these to Dave's 'glsl: add double support')

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>