Add OpImageSampeProj* unit tests to end-to-end list
Fixed: tint:1143 Change-Id: Ib812b9c1c55e48ee78280c32b465afca1b707b82 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/65040 Auto-Submit: David Neto <dneto@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
parent
40ef4a8269
commit
e6f5730aef
|
@ -934,11 +934,6 @@ TEST_P(SpvParserHandleTest_RegisterHandleUsage_SampledImage, Variable) {
|
|||
// So don't emit them as part of a "passing" corpus.
|
||||
p->DeliberatelyInvalidSpirv();
|
||||
}
|
||||
if (inst.find("Proj") != std::string::npos) {
|
||||
// WGSL does not support Projection variants of image sampling.
|
||||
// So don't emit them as part of a "passing" corpus.
|
||||
p->DeliberatelyInvalidSpirv();
|
||||
}
|
||||
if (inst.find("ImageQueryLod") != std::string::npos) {
|
||||
// WGSL does not support querying image level of detail.
|
||||
// So don't emit them as part of a "passing" corpus.
|
||||
|
@ -996,11 +991,6 @@ TEST_P(SpvParserHandleTest_RegisterHandleUsage_SampledImage, FunctionParam) {
|
|||
// So don't emit them as part of a "passing" corpus.
|
||||
p->DeliberatelyInvalidSpirv();
|
||||
}
|
||||
if (inst.find("Proj") != std::string::npos) {
|
||||
// WGSL does not support Projection variants of image sampling.
|
||||
// So don't emit them as part of a "passing" corpus.
|
||||
p->DeliberatelyInvalidSpirv();
|
||||
}
|
||||
if (inst.find("ImageQueryLod") != std::string::npos) {
|
||||
// WGSL does not support querying image level of detail.
|
||||
// So don't emit them as part of a "passing" corpus.
|
||||
|
|
|
@ -0,0 +1,112 @@
|
|||
; Test: ImageSampleProjDrefExplicitLod_CheckForLod0_SpvParserHandleTest_ImageCoordsTest_MakeCoordinateOperandsForImageAccess_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 1001
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %100 "main"
|
||||
OpExecutionMode %100 OriginUpperLeft
|
||||
OpName %float_var "float_var"
|
||||
OpName %ptr_float "ptr_float"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%17 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%43 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%50 = OpConstantNull %v2float
|
||||
%51 = OpConstantNull %v3float
|
||||
%52 = OpConstantNull %v4float
|
||||
%53 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%54 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%55 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%56 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%57 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%58 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%59 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%60 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%61 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%62 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%64 = OpTypeSampler
|
||||
%_ptr_UniformConstant_64 = OpTypePointer UniformConstant %64
|
||||
%66 = OpTypeImage %float 2D 1 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_66 = OpTypePointer UniformConstant %66
|
||||
%68 = OpTypeSampledImage %66
|
||||
%ptr_float = OpTypePointer Function %float
|
||||
%10 = OpVariable %_ptr_UniformConstant_64 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_66 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_64 UniformConstant
|
||||
%100 = OpFunction %void None %17
|
||||
%69 = OpLabel
|
||||
%float_var = OpVariable %ptr_float Function
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %53
|
||||
%vi123 = OpCopyObject %v3int %54
|
||||
%vi1234 = OpCopyObject %v4int %55
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %56
|
||||
%vu123 = OpCopyObject %v3uint %57
|
||||
%vu1234 = OpCopyObject %v4uint %58
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %59
|
||||
%vf123 = OpCopyObject %v3float %61
|
||||
%vf1234 = OpCopyObject %v4float %62
|
||||
%70 = OpLoad %64 %10
|
||||
%71 = OpLoad %66 %20
|
||||
%72 = OpSampledImage %68 %71 %70
|
||||
%73 = OpImageSampleProjDrefExplicitLod %float %72 %vf1234 %float_0_200000003 Lod %float_0
|
||||
%1000 = OpCopyObject %uint %uint_0
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,112 @@
|
|||
; Test: ImageSampleProjDrefExplicitLod_CheckForLod0_SpvParserHandleTest_ImageCoordsTest_MakeCoordinateOperandsForImageAccess_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 1001
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %100 "main"
|
||||
OpExecutionMode %100 OriginUpperLeft
|
||||
OpName %float_var "float_var"
|
||||
OpName %ptr_float "ptr_float"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%17 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%43 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%50 = OpConstantNull %v2float
|
||||
%51 = OpConstantNull %v3float
|
||||
%52 = OpConstantNull %v4float
|
||||
%53 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%54 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%55 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%56 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%57 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%58 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%59 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%60 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%61 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%62 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%64 = OpTypeSampler
|
||||
%_ptr_UniformConstant_64 = OpTypePointer UniformConstant %64
|
||||
%66 = OpTypeImage %float 2D 1 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_66 = OpTypePointer UniformConstant %66
|
||||
%68 = OpTypeSampledImage %66
|
||||
%ptr_float = OpTypePointer Function %float
|
||||
%10 = OpVariable %_ptr_UniformConstant_64 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_66 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_64 UniformConstant
|
||||
%100 = OpFunction %void None %17
|
||||
%69 = OpLabel
|
||||
%float_var = OpVariable %ptr_float Function
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %53
|
||||
%vi123 = OpCopyObject %v3int %54
|
||||
%vi1234 = OpCopyObject %v4int %55
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %56
|
||||
%vu123 = OpCopyObject %v3uint %57
|
||||
%vu1234 = OpCopyObject %v4uint %58
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %59
|
||||
%vf123 = OpCopyObject %v3float %61
|
||||
%vf1234 = OpCopyObject %v4float %62
|
||||
%70 = OpLoad %64 %10
|
||||
%71 = OpLoad %66 %20
|
||||
%72 = OpSampledImage %68 %71 %70
|
||||
%73 = OpImageSampleProjDrefExplicitLod %float %72 %vf1234 %float_0_200000003 Lod %float_0
|
||||
%1000 = OpCopyObject %uint %uint_0
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjDrefImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 1 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjDrefImplicitLod %float %78 %coords123 %f1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjDrefImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 1 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjDrefImplicitLod %float %78 %coords123 %f1 ConstOffset %offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjExplicitLod %v4float %78 %coords123 Grad %vf12 %vf21
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjExplicitLod_Grad_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjExplicitLod %v4float %78 %coords123 Grad|ConstOffset %vf12 %vf21 %offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjExplicitLod_Lod_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjExplicitLod %v4float %78 %coords123 Lod %f1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjExplicitLod_Lod_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjExplicitLod %v4float %78 %coords123 Lod|ConstOffset %f1 %offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_Bias_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123 Bias %float_7
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_Bias_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123 Bias|ConstOffset %float_7 %offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_Bias_SpvParserHandleTest_SampledImageAccessTest_Variable_2.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123 Bias|ConstOffset %float_7 %u_offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_DepthTexture_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 1 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_0.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 1D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords12
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_1.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_2.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 3D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords1234
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
; Test: ImageSampleProjImplicitLod_SpvParserHandleTest_SampledImageAccessTest_Variable_3.spvasm
|
||||
; SPIR-V
|
||||
; Version: 1.0
|
||||
; Generator: Khronos SPIR-V Tools Assembler; 0
|
||||
; Bound: 80
|
||||
; Schema: 0
|
||||
OpCapability Shader
|
||||
OpCapability Sampled1D
|
||||
OpCapability Image1D
|
||||
OpCapability StorageImageExtendedFormats
|
||||
OpCapability ImageQuery
|
||||
OpMemoryModel Logical Simple
|
||||
OpEntryPoint Fragment %1 "main"
|
||||
OpExecutionMode %1 OriginUpperLeft
|
||||
OpName %f1 "f1"
|
||||
OpName %vf12 "vf12"
|
||||
OpName %vf21 "vf21"
|
||||
OpName %vf123 "vf123"
|
||||
OpName %vf1234 "vf1234"
|
||||
OpName %u1 "u1"
|
||||
OpName %vu12 "vu12"
|
||||
OpName %vu123 "vu123"
|
||||
OpName %vu1234 "vu1234"
|
||||
OpName %i1 "i1"
|
||||
OpName %vi12 "vi12"
|
||||
OpName %vi123 "vi123"
|
||||
OpName %vi1234 "vi1234"
|
||||
OpName %coords1 "coords1"
|
||||
OpName %coords12 "coords12"
|
||||
OpName %coords123 "coords123"
|
||||
OpName %coords1234 "coords1234"
|
||||
OpName %offsets2d "offsets2d"
|
||||
OpName %u_offsets2d "u_offsets2d"
|
||||
OpDecorate %10 DescriptorSet 0
|
||||
OpDecorate %10 Binding 0
|
||||
OpDecorate %20 DescriptorSet 2
|
||||
OpDecorate %20 Binding 1
|
||||
OpDecorate %30 DescriptorSet 0
|
||||
OpDecorate %30 Binding 1
|
||||
%void = OpTypeVoid
|
||||
%24 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%uint = OpTypeInt 32 0
|
||||
%int = OpTypeInt 32 1
|
||||
%int_0 = OpConstant %int 0
|
||||
%int_1 = OpConstant %int 1
|
||||
%int_2 = OpConstant %int 2
|
||||
%int_3 = OpConstant %int 3
|
||||
%int_4 = OpConstant %int 4
|
||||
%uint_0 = OpConstant %uint 0
|
||||
%uint_1 = OpConstant %uint 1
|
||||
%uint_2 = OpConstant %uint 2
|
||||
%uint_3 = OpConstant %uint 3
|
||||
%uint_4 = OpConstant %uint 4
|
||||
%uint_100 = OpConstant %uint 100
|
||||
%v2int = OpTypeVector %int 2
|
||||
%v3int = OpTypeVector %int 3
|
||||
%v4int = OpTypeVector %int 4
|
||||
%v2uint = OpTypeVector %uint 2
|
||||
%v3uint = OpTypeVector %uint 3
|
||||
%v4uint = OpTypeVector %uint 4
|
||||
%v2float = OpTypeVector %float 2
|
||||
%v3float = OpTypeVector %float 3
|
||||
%v4float = OpTypeVector %float 4
|
||||
%49 = OpConstantNull %float
|
||||
%float_0 = OpConstant %float 0
|
||||
%float_1 = OpConstant %float 1
|
||||
%float_2 = OpConstant %float 2
|
||||
%float_3 = OpConstant %float 3
|
||||
%float_4 = OpConstant %float 4
|
||||
%float_7 = OpConstant %float 7
|
||||
%56 = OpConstantNull %v2float
|
||||
%57 = OpConstantNull %v3float
|
||||
%58 = OpConstantNull %v4float
|
||||
%59 = OpConstantComposite %v2int %int_1 %int_2
|
||||
%60 = OpConstantComposite %v3int %int_1 %int_2 %int_3
|
||||
%61 = OpConstantComposite %v4int %int_1 %int_2 %int_3 %int_4
|
||||
%62 = OpConstantComposite %v2uint %uint_1 %uint_2
|
||||
%63 = OpConstantComposite %v3uint %uint_1 %uint_2 %uint_3
|
||||
%64 = OpConstantComposite %v4uint %uint_1 %uint_2 %uint_3 %uint_4
|
||||
%65 = OpConstantComposite %v2float %float_1 %float_2
|
||||
%66 = OpConstantComposite %v2float %float_2 %float_1
|
||||
%67 = OpConstantComposite %v3float %float_1 %float_2 %float_3
|
||||
%68 = OpConstantComposite %v4float %float_1 %float_2 %float_3 %float_4
|
||||
%float_0_200000003 = OpConstant %float 0.200000003
|
||||
%70 = OpTypeSampler
|
||||
%_ptr_UniformConstant_70 = OpTypePointer UniformConstant %70
|
||||
%72 = OpTypeImage %float 2D 0 0 0 1 Unknown
|
||||
%_ptr_UniformConstant_72 = OpTypePointer UniformConstant %72
|
||||
%74 = OpTypeSampledImage %72
|
||||
%10 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%20 = OpVariable %_ptr_UniformConstant_72 UniformConstant
|
||||
%30 = OpVariable %_ptr_UniformConstant_70 UniformConstant
|
||||
%offsets2d = OpConstantComposite %v2int %int_3 %int_4
|
||||
%u_offsets2d = OpConstantComposite %v2uint %uint_3 %uint_4
|
||||
%1 = OpFunction %void None %24
|
||||
%75 = OpLabel
|
||||
%f1 = OpCopyObject %float %float_1
|
||||
%vf12 = OpCopyObject %v2float %65
|
||||
%vf21 = OpCopyObject %v2float %66
|
||||
%vf123 = OpCopyObject %v3float %67
|
||||
%vf1234 = OpCopyObject %v4float %68
|
||||
%i1 = OpCopyObject %int %int_1
|
||||
%vi12 = OpCopyObject %v2int %59
|
||||
%vi123 = OpCopyObject %v3int %60
|
||||
%vi1234 = OpCopyObject %v4int %61
|
||||
%u1 = OpCopyObject %uint %uint_1
|
||||
%vu12 = OpCopyObject %v2uint %62
|
||||
%vu123 = OpCopyObject %v3uint %63
|
||||
%vu1234 = OpCopyObject %v4uint %64
|
||||
%coords1 = OpCopyObject %float %float_1
|
||||
%coords12 = OpCopyObject %v2float %vf12
|
||||
%coords123 = OpCopyObject %v3float %vf123
|
||||
%coords1234 = OpCopyObject %v4float %vf1234
|
||||
%76 = OpLoad %70 %10
|
||||
%77 = OpLoad %72 %20
|
||||
%78 = OpSampledImage %74 %77 %76
|
||||
%79 = OpImageSampleProjImplicitLod %v4float %78 %coords123 ConstOffset %offsets2d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
Loading…
Reference in New Issue