               OpCapability Shader
          %1 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %frag "frag" %vi %color
               OpEntryPoint Vertex %vert "vert" %a %vo
	       OpExecutionMode %frag OriginUpperLeft
               OpSource ESSL 310
               OpName %frag "frag"
               OpName %vert "vert"
               OpName %vo "v"
               OpName %a "a"
               OpName %color "color"
               OpName %vi "v"
               OpDecorate %vi Location 0
               OpDecorate %color Location 0
               OpDecorate %a Location 0
               OpDecorate %vo Location 0
	       OpDecorate %color RelaxedPrecision
	       OpDecorate %vi RelaxedPrecision
               OpDecorate %14 RelaxedPrecision
               OpDecorate %17 RelaxedPrecision

      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
       %void = OpTypeVoid
          %3 = OpTypeFunction %void

%_ptr_Output_float = OpTypePointer Output %float
         %vo = OpVariable %_ptr_Output_float Output
%_ptr_Input_float = OpTypePointer Input %float
          %a = OpVariable %_ptr_Input_float Input
         %vi = OpVariable %_ptr_Input_float Input
%_ptr_Output_v4float = OpTypePointer Output %v4float
      %color = OpVariable %_ptr_Output_v4float Output

       %frag = OpFunction %void None %3
          %7 = OpLabel
         %14 = OpLoad %float %vi
	 %17 = OpCompositeConstruct %v4float %14 %14 %14 %14
               OpStore %color %17
               OpReturn
               OpFunctionEnd

       %vert = OpFunction %void None %3
          %8 = OpLabel
         %13 = OpLoad %float %a
               OpStore %vo %13
               OpReturn
               OpFunctionEnd
