Vulkan: Fixed TC shader and gl_PerVertex block interaction TransformSpirV() does not account for the fact that the tessellation control shader's output gl_PerVertex block is a named array. This results in the input and output blocks being sometimes flipped. Added code to track the IdRef of both input and output array gl_PerVertex blocks and swap them if necessary. Bug: angleproject:5557 Tests: KHR-GLES32.core.tessellation_shader.tessellation_control_to_tessellation_evaluation.data_pass_through Change-Id: Ie3823701b4eaa53daa8ca34faab657f54d8aee38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208513 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Brandon Schade <b.schade@samsung.com>