Separate instruction and declaration arrays for each HS phase.
Merge branch 'master' into HullShader
Decode the declarations and instructions for all hull phases.

Seems to run off of the end of hull shaders at the moment.
Added hs5\basc_NoOptimisation{.o,.asm}

These are hs5\basic compiled with /Od (disable optimisations). This
shader includes the control point phase declaration missing when
optimisations are enabled.
Merge remote-tracking branch 'origin/master' into HullShader
Calculation to determine the last token was incorrect for hull shaders.

It was using the first token in the phase as the base instead of the
first token in the shader.
hs_decls declarations handled by TranslateToGLSL
.
Control point phase translation.

Control point phase declarations and instructions now handled in
TranslateToGLSL.
SV_OutputControlPointID now supported.
Fork and join phase translation. Place barriers between phases.
Support indexing into output tessellation factors using vForkInstanceID in fork phase.
.
Fix GLSL declarations forr hull shaders temps

Convert per-phase temp declarations to a single global temp declaration.
hs5\basic_change_pos now compiles to GLSL.
Changed a comment.
Added DecalTessellation11 hull shader
Support maxtessfactor/dcl_hs_max_tessfactor.

/

Don't need to do anything special with it. For GLSL the max value cannot
be specified, it is fixed to the value of gl_MaxTessGenLevel.
Tessellator partitioning and output primitive type can only be specified in evaluation shaders.
Support for fork phases which do not have multiple instances.

Do not create the instance for loop when
dcl_hs_fork_phase_instance_count is not present.
Support non-indexed tess factor outputs

Tessellation factor outputs can be non-indexed (from the HLSL bytecode
perspective). This change handles that case. Dcl_index_range is checked
to see if the index or non-indexed forms are needed.
Support hull shaders which have more than one fork phase.
Got rid of empty phase funcs which happened when a phase was not present in input shader.
Remove return statement from ends of fork phase.

This is needed otherwise the for-loop for instanced forks will only run
once.