wgpu/naga/tests/out/spv/fragment-output.spvasm
2023-10-25 14:25:04 -04:00

172 lines
4.7 KiB
Plaintext

; SPIR-V
; Version: 1.1
; Generator: rspirv
; Bound: 109
OpCapability Shader
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %30 "main_vec4vec3" %18 %20 %22 %24 %26 %28
OpEntryPoint Fragment %82 "main_vec2scalar" %70 %72 %74 %76 %78 %80
OpExecutionMode %30 OriginUpperLeft
OpExecutionMode %82 OriginUpperLeft
OpMemberDecorate %12 0 Offset 0
OpMemberDecorate %12 1 Offset 16
OpMemberDecorate %12 2 Offset 32
OpMemberDecorate %12 3 Offset 48
OpMemberDecorate %12 4 Offset 64
OpMemberDecorate %12 5 Offset 80
OpMemberDecorate %16 0 Offset 0
OpMemberDecorate %16 1 Offset 8
OpMemberDecorate %16 2 Offset 16
OpMemberDecorate %16 3 Offset 24
OpMemberDecorate %16 4 Offset 28
OpMemberDecorate %16 5 Offset 32
OpDecorate %18 Location 0
OpDecorate %20 Location 1
OpDecorate %22 Location 2
OpDecorate %24 Location 3
OpDecorate %26 Location 4
OpDecorate %28 Location 5
OpDecorate %70 Location 0
OpDecorate %72 Location 1
OpDecorate %74 Location 2
OpDecorate %76 Location 3
OpDecorate %78 Location 4
OpDecorate %80 Location 5
%2 = OpTypeVoid
%4 = OpTypeFloat 32
%3 = OpTypeVector %4 4
%6 = OpTypeInt 32 1
%5 = OpTypeVector %6 4
%8 = OpTypeInt 32 0
%7 = OpTypeVector %8 4
%9 = OpTypeVector %4 3
%10 = OpTypeVector %6 3
%11 = OpTypeVector %8 3
%12 = OpTypeStruct %3 %5 %7 %9 %10 %11
%13 = OpTypeVector %4 2
%14 = OpTypeVector %6 2
%15 = OpTypeVector %8 2
%16 = OpTypeStruct %13 %14 %15 %4 %6 %8
%19 = OpTypePointer Output %3
%18 = OpVariable %19 Output
%21 = OpTypePointer Output %5
%20 = OpVariable %21 Output
%23 = OpTypePointer Output %7
%22 = OpVariable %23 Output
%25 = OpTypePointer Output %9
%24 = OpVariable %25 Output
%27 = OpTypePointer Output %10
%26 = OpVariable %27 Output
%29 = OpTypePointer Output %11
%28 = OpVariable %29 Output
%31 = OpTypeFunction %2
%32 = OpConstant %4 0.0
%33 = OpConstantComposite %3 %32 %32 %32 %32
%34 = OpConstant %6 0
%35 = OpConstantComposite %5 %34 %34 %34 %34
%36 = OpConstant %8 0
%37 = OpConstantComposite %7 %36 %36 %36 %36
%38 = OpConstantComposite %9 %32 %32 %32
%39 = OpConstantComposite %10 %34 %34 %34
%40 = OpConstantComposite %11 %36 %36 %36
%42 = OpTypePointer Function %12
%43 = OpConstantNull %12
%45 = OpTypePointer Function %3
%47 = OpTypePointer Function %5
%48 = OpConstant %8 1
%50 = OpTypePointer Function %7
%51 = OpConstant %8 2
%53 = OpTypePointer Function %9
%54 = OpConstant %8 3
%56 = OpTypePointer Function %10
%57 = OpConstant %8 4
%59 = OpTypePointer Function %11
%60 = OpConstant %8 5
%71 = OpTypePointer Output %13
%70 = OpVariable %71 Output
%73 = OpTypePointer Output %14
%72 = OpVariable %73 Output
%75 = OpTypePointer Output %15
%74 = OpVariable %75 Output
%77 = OpTypePointer Output %4
%76 = OpVariable %77 Output
%79 = OpTypePointer Output %6
%78 = OpVariable %79 Output
%81 = OpTypePointer Output %8
%80 = OpVariable %81 Output
%83 = OpConstantComposite %13 %32 %32
%84 = OpConstantComposite %14 %34 %34
%85 = OpConstantComposite %15 %36 %36
%87 = OpTypePointer Function %16
%88 = OpConstantNull %16
%90 = OpTypePointer Function %13
%92 = OpTypePointer Function %14
%94 = OpTypePointer Function %15
%96 = OpTypePointer Function %4
%98 = OpTypePointer Function %6
%100 = OpTypePointer Function %8
%30 = OpFunction %2 None %31
%17 = OpLabel
%41 = OpVariable %42 Function %43
OpBranch %44
%44 = OpLabel
%46 = OpAccessChain %45 %41 %36
OpStore %46 %33
%49 = OpAccessChain %47 %41 %48
OpStore %49 %35
%52 = OpAccessChain %50 %41 %51
OpStore %52 %37
%55 = OpAccessChain %53 %41 %54
OpStore %55 %38
%58 = OpAccessChain %56 %41 %57
OpStore %58 %39
%61 = OpAccessChain %59 %41 %60
OpStore %61 %40
%62 = OpLoad %12 %41
%63 = OpCompositeExtract %3 %62 0
OpStore %18 %63
%64 = OpCompositeExtract %5 %62 1
OpStore %20 %64
%65 = OpCompositeExtract %7 %62 2
OpStore %22 %65
%66 = OpCompositeExtract %9 %62 3
OpStore %24 %66
%67 = OpCompositeExtract %10 %62 4
OpStore %26 %67
%68 = OpCompositeExtract %11 %62 5
OpStore %28 %68
OpReturn
OpFunctionEnd
%82 = OpFunction %2 None %31
%69 = OpLabel
%86 = OpVariable %87 Function %88
OpBranch %89
%89 = OpLabel
%91 = OpAccessChain %90 %86 %36
OpStore %91 %83
%93 = OpAccessChain %92 %86 %48
OpStore %93 %84
%95 = OpAccessChain %94 %86 %51
OpStore %95 %85
%97 = OpAccessChain %96 %86 %54
OpStore %97 %32
%99 = OpAccessChain %98 %86 %57
OpStore %99 %34
%101 = OpAccessChain %100 %86 %60
OpStore %101 %36
%102 = OpLoad %16 %86
%103 = OpCompositeExtract %13 %102 0
OpStore %70 %103
%104 = OpCompositeExtract %14 %102 1
OpStore %72 %104
%105 = OpCompositeExtract %15 %102 2
OpStore %74 %105
%106 = OpCompositeExtract %4 %102 3
OpStore %76 %106
%107 = OpCompositeExtract %6 %102 4
OpStore %78 %107
%108 = OpCompositeExtract %8 %102 5
OpStore %80 %108
OpReturn
OpFunctionEnd