Add some header files to makefile.
Fix compile errors for vs5\precision with ES 100

hlsl_opcode_funcs did not build for ES 100 language due to implicit type
conversions as well as bitwise and operators.
Improved support for MOV with integer immediate.

If the dest of MOV is a min-precision integer and the src is an
immediate then the immediate will be treated as having an integer bit
encoding.
Work on getting default value of constants.

e.g. float constWithDefaultVal = 7;
Update shader reflection to retrieve the default value of constants.
Needs more work to support the full range of data types. GLSL constant
declarations not changed yet.
Free constant buffer reflection memory.

Also record the number of members within constant buffers.
Add tessellation test.

Input control point attribs other than position handled in
TranslateOperand.
Set number of vertices in output patch (layout(vertices=X) out) for hull
shaders.
ReadResources was called twice.
Moved reflection loading out of Decode() into new function
LoadShaderInfo().
Return reflection info to caller via GLSLShader struct.
Added some code (currently disabled) to use structs with real names for
constant buffers. This would improve the readability of the generated
shader and enable reflection via gl api (useful if the byte code file is
not present in shipping assets).
Basic tessellation test now works.

Tested on Intel HD 4000.
Use a cube instead of a quad in tessellation test.
A way to set partitioning/output_primitive info in eval shader.

dcl_tessellator_partitioning and dcl_tessellator_output_primitive appear
in hull shader for D3D,
but they appear on inputs inside domain shaders for GL.
Use HLSLCC_FLAGS to set the paritioning and primitive type. The correct
values to use
can be extracted from the hull shader reflection information.
Partial support for explicit input and output locations

i.e. layout(location = X) out/in.
Currently does not handle arrays correctly.
In/out layout locations were being applied to certain built-ins
Return 0 from HaveInOutLocationQualifier until the feature is ready.
Some work on specifying uniform locations and uniform block bindings.
Specify the location of sampler uniforms.
Respect global_consts_never_in_ubo flag for struct cbuffers.
 f
Uniform block sizes now match across shader types.

Unused members of constant buffers now appear in the GLSL shaders.
Prevents a uniform block having different sizes across stages (vertex,
pixel etc.).
Make $Global cbuffer per-stage even when using ubo.

Doing so allows shader mix-and-match behaviour (i.e. non effect/.fx
shaders where the global cbuffer might differ).
Remap from binding-point to cbuffer array.

In a shader with a single cbuffer and no $Global cbuffer, the cbuffer
can start at slot 1 rather than 0 (As if 0 was reserved for non-existent
$Global). Previously walked off the end of
psShaderInfo->psConstantBuffers inside GetConstantBufferFromBindingPoint
for tests\ps4\fxaa
Changed LambertLit test so it can use uniform buffer objects.
Support gather4_c, gather4_po and gather4_po_c.

Create shadow and non-shadow samplers if Z compare is performed on a
texture.