From: Brian Paul Date: Fri, 22 Jan 2010 23:09:03 +0000 (-0700) Subject: Merge branch 'mesa_7_7_branch' X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7b5ad23c7f7f9016f725cb1caa3cf8971aeedbc8;p=mesa.git Merge branch 'mesa_7_7_branch' Conflicts: src/mesa/shader/prog_execute.c --- 7b5ad23c7f7f9016f725cb1caa3cf8971aeedbc8 diff --cc src/mesa/shader/prog_execute.c index 7ea792f6193,fb29768935f..c212790dcd9 --- a/src/mesa/shader/prog_execute.c +++ b/src/mesa/shader/prog_execute.c @@@ -1667,13 -1655,11 +1689,11 @@@ _mesa_execute_program(GLcontext * ctx break; case OPCODE_UP2H: /* unpack two 16-bit floats */ { - GLfloat a[4], result[4]; - fi_type fi; - GLhalfNV hx, hy; - fetch_vector1(&inst->SrcReg[0], machine, a); - fi.f = a[0]; - hx = fi.i & 0xffff; - hy = fi.i >> 16; + const GLuint raw = fetch_vector1ui(&inst->SrcReg[0], machine); + GLfloat result[4]; - GLhalfNV hx, hy; ++ GLushort hx, hy; + hx = raw & 0xffff; + hy = raw >> 16; result[0] = result[2] = _mesa_half_to_float(hx); result[1] = result[3] = _mesa_half_to_float(hy); store_vector4(inst, machine, result);