wgpu/tests/out/quad.spvasm
Lachlan Sneff 4cbef59dd6
Add struct instantiation support to wgsl-in (#507)
* Add struct instantiation support to wgsl-in

* Readd type matching and move struct test

* rebase onto master and update tests

* Update tests to upstream

* Fix merge errors

* Rebase onto master

* [wgsl-in] delay composite type creation

* Use the new WGSL construction syntax in the tests

Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
2021-04-17 01:14:07 -04:00

105 lines
2.6 KiB
Plaintext

; SPIR-V
; Version: 1.0
; Generator: rspirv
; Bound: 58
OpCapability Shader
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %26 "main" %17 %20 %22 %24
OpEntryPoint Fragment %44 "main" %41 %43
OpExecutionMode %44 OriginUpperLeft
OpSource GLSL 450
OpName %3 "c_scale"
OpName %9 "VertexOutput"
OpMemberName %9 0 "uv"
OpMemberName %9 1 "position"
OpName %12 "u_texture"
OpName %14 "u_sampler"
OpName %17 "pos"
OpName %20 "uv"
OpName %22 "uv"
OpName %24 "position"
OpName %26 "main"
OpName %41 "uv"
OpName %44 "main"
OpMemberDecorate %9 0 Offset 0
OpMemberDecorate %9 1 Offset 16
OpDecorate %12 DescriptorSet 0
OpDecorate %12 Binding 0
OpDecorate %14 DescriptorSet 0
OpDecorate %14 Binding 1
OpDecorate %17 Location 0
OpDecorate %20 Location 1
OpDecorate %22 Location 0
OpDecorate %24 BuiltIn Position
OpDecorate %41 Location 0
OpDecorate %43 Location 0
%2 = OpTypeVoid
%4 = OpTypeFloat 32
%3 = OpConstant %4 1.2
%5 = OpConstant %4 0.0
%6 = OpConstant %4 1.0
%7 = OpTypeVector %4 2
%8 = OpTypeVector %4 4
%9 = OpTypeStruct %7 %8
%10 = OpTypeImage %4 2D 0 0 0 1 Unknown
%11 = OpTypeSampler
%13 = OpTypePointer UniformConstant %10
%12 = OpVariable %13 UniformConstant
%15 = OpTypePointer UniformConstant %11
%14 = OpVariable %15 UniformConstant
%18 = OpTypePointer Input %7
%17 = OpVariable %18 Input
%20 = OpVariable %18 Input
%23 = OpTypePointer Output %7
%22 = OpVariable %23 Output
%25 = OpTypePointer Output %8
%24 = OpVariable %25 Output
%27 = OpTypeFunction %2
%35 = OpTypePointer Output %4
%36 = OpTypeInt 32 1
%37 = OpConstant %36 1
%41 = OpVariable %18 Input
%43 = OpVariable %25 Output
%48 = OpTypeSampledImage %10
%52 = OpTypeBool
%26 = OpFunction %2 None %27
%16 = OpLabel
%19 = OpLoad %7 %17
%21 = OpLoad %7 %20
OpBranch %28
%28 = OpLabel
%29 = OpVectorTimesScalar %7 %19 %3
%30 = OpCompositeConstruct %8 %29 %5 %6
%31 = OpCompositeConstruct %9 %21 %30
%32 = OpCompositeExtract %7 %31 0
OpStore %22 %32
%33 = OpCompositeExtract %8 %31 1
OpStore %24 %33
%34 = OpAccessChain %35 %24 %37
%38 = OpLoad %4 %34
%39 = OpFNegate %4 %38
OpStore %34 %39
OpReturn
OpFunctionEnd
%44 = OpFunction %2 None %27
%40 = OpLabel
%42 = OpLoad %7 %41
%45 = OpLoad %10 %12
%46 = OpLoad %11 %14
OpBranch %47
%47 = OpLabel
%49 = OpSampledImage %48 %45 %46
%50 = OpImageSampleImplicitLod %8 %49 %42
%51 = OpCompositeExtract %4 %50 3
%53 = OpFOrdEqual %52 %51 %5
OpSelectionMerge %54 None
OpBranchConditional %53 %55 %54
%55 = OpLabel
OpKill
%54 = OpLabel
%56 = OpCompositeExtract %4 %50 3
%57 = OpVectorTimesScalar %8 %50 %56
OpStore %43 %57
OpReturn
OpFunctionEnd