a81e7e2e71
Adjusted default caps in skslc to be consistent with runtime behavior, and added optional settings mode to enable the feature. Tests for both scenarios. (The error test crashed prior to the fix). Bug: oss-fuzz:38726 Change-Id: I5270d4837ac982085d7baf5abd4b361f7bfb8562 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449062 Reviewed-by: John Stiles <johnstiles@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
58 lines
1.7 KiB
JavaScript
58 lines
1.7 KiB
JavaScript
OpCapability Shader
|
|
%1 = OpExtInstImport "GLSL.std.450"
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint Fragment %main "main" %sk_FragColor %sk_Clockwise
|
|
OpExecutionMode %main OriginUpperLeft
|
|
OpName %sk_FragColor "sk_FragColor"
|
|
OpName %sk_Clockwise "sk_Clockwise"
|
|
OpName %main "main"
|
|
OpName %x "x"
|
|
OpName %y "y"
|
|
OpName %z "z"
|
|
OpDecorate %sk_FragColor RelaxedPrecision
|
|
OpDecorate %sk_FragColor Location 0
|
|
OpDecorate %sk_FragColor Index 0
|
|
OpDecorate %sk_Clockwise BuiltIn FrontFacing
|
|
OpDecorate %21 RelaxedPrecision
|
|
OpDecorate %23 RelaxedPrecision
|
|
OpDecorate %25 RelaxedPrecision
|
|
OpDecorate %26 RelaxedPrecision
|
|
OpDecorate %28 RelaxedPrecision
|
|
OpDecorate %29 RelaxedPrecision
|
|
%float = OpTypeFloat 32
|
|
%v4float = OpTypeVector %float 4
|
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
%sk_FragColor = OpVariable %_ptr_Output_v4float Output
|
|
%bool = OpTypeBool
|
|
%_ptr_Input_bool = OpTypePointer Input %bool
|
|
%sk_Clockwise = OpVariable %_ptr_Input_bool Input
|
|
%void = OpTypeVoid
|
|
%11 = OpTypeFunction %void
|
|
%int = OpTypeInt 32 1
|
|
%_ptr_Function_int = OpTypePointer Function %int
|
|
%int_0 = OpConstant %int 0
|
|
%int_1 = OpConstant %int 1
|
|
%v3float = OpTypeVector %float 3
|
|
%main = OpFunction %void None %11
|
|
%12 = OpLabel
|
|
%x = OpVariable %_ptr_Function_int Function
|
|
%y = OpVariable %_ptr_Function_int Function
|
|
%z = OpVariable %_ptr_Function_int Function
|
|
OpStore %x %int_0
|
|
OpStore %y %int_0
|
|
OpStore %z %int_0
|
|
OpStore %x %int_1
|
|
OpStore %z %int_1
|
|
%20 = OpLoad %int %x
|
|
%21 = OpConvertSToF %float %20
|
|
%22 = OpLoad %int %y
|
|
%23 = OpConvertSToF %float %22
|
|
%24 = OpLoad %int %z
|
|
%25 = OpConvertSToF %float %24
|
|
%26 = OpCompositeConstruct %v3float %21 %23 %25
|
|
%28 = OpLoad %v4float %sk_FragColor
|
|
%29 = OpVectorShuffle %v4float %28 %26 4 5 6 3
|
|
OpStore %sk_FragColor %29
|
|
OpReturn
|
|
OpFunctionEnd
|