Fix precision tracking for built-in function return values

Previously, the type of the return value of all function calls was set to
the type of the return value in the function signature. This did not
carry precision information.

This patch changes this so that the return value precision is set
correctly for built-in functions. For single-argument math functions, it
mostly depends on that addUnaryMath sets the type of the return value to
be the same as the type of the operand. The type is replaced but the
precision information from the operand type is retained when needed. For
multi-argument math functions, precision is determined based on all the
nodes in the aggregate after the type has been set. For texture
functions, the precision is set according the sampler type as per ESSL
1.0 spec. For textureSize, the precision is always highp as per ESSL 3.0
spec.

BUG=angle:787

Change-Id: I48448e3ffe38656b91177dee9b60dd07a03cd095
Reviewed-on: https://chromium-review.googlesource.com/224951
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Only use the Windows 8.1 SDK for WinRT configurations.

BUG=angle:772
BUG=395405

Change-Id: If26a0ec34e6bfd0e22d20803a0bb3ac2000a8e34
Reviewed-on: https://chromium-review.googlesource.com/225531
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Fix build failure on WinRT due to missing Sleep definition.

Change-Id: I9032484dde6e690fcd175d6d76192724e5bc0357
Reviewed-on: https://chromium-review.googlesource.com/225893
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Fixed D3DDisassemble function dynamic GetProcAddress failure on WinRT

Change-Id: I32a345803c9183e0b9b77d529027711f8c8e1ad8
Reviewed-on: https://chromium-review.googlesource.com/225847
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>