39 lines
1.4 KiB
Plaintext
39 lines
1.4 KiB
Plaintext
|
module.dialect = spv.Module(version: 1.0, spv.Capability.{Shader, Sampled1D}, spv.MemoryModel.GLSL450)
|
|||
|
|
|||
|
module.debug_info = spv.Module.DebugInfo(generator: spv.Tool(id: 0, version: 28))
|
|||
|
|
|||
|
type T0 = spv.OpTypeImage(SampledType: f32, spv.Dim.2D, Depth: 0, Arrayed: 0, MS: 0, Sampled: 1, spv.ImageFormat.Unknown)
|
|||
|
|
|||
|
#[spv.Decoration.Location(Location: 0)]
|
|||
|
global_var GV0(spv.StorageClass.Output): f32×4
|
|||
|
|
|||
|
#[spv.Decoration.Binding(BindingPoint: 1)]
|
|||
|
#[spv.Decoration.DescriptorSet(DescriptorSet: 0)]
|
|||
|
global_var GV1(spv.StorageClass.UniformConstant): T0
|
|||
|
|
|||
|
#[spv.Decoration.Binding(BindingPoint: 1)]
|
|||
|
#[spv.Decoration.DescriptorSet(DescriptorSet: 1)]
|
|||
|
global_var GV2(spv.StorageClass.UniformConstant): spv.OpTypeSampler
|
|||
|
|
|||
|
global_var GV3(spv.StorageClass.Private, init: f32×4(0.0, 0.0, 0.0, 0.0)): f32×4
|
|||
|
|
|||
|
func F0() {
|
|||
|
v0 = spv.OpLoad(Pointer: &GV1): T0
|
|||
|
v1 = spv.OpLoad(Pointer: &GV2): spv.OpTypeSampler
|
|||
|
v2 = spv.OpSampledImage(Image: v0, Sampler: v1): spv.OpTypeSampledImage(ImageType: T0)
|
|||
|
v3 = spv.OpImageSampleImplicitLod(SampledImage: v2, Coordinate: f32×2(0.0, 0.0)): f32×4
|
|||
|
spv.OpStore(Pointer: &GV3, Object: v3)
|
|||
|
}
|
|||
|
|
|||
|
#[spv.ExecutionMode.OriginUpperLeft]
|
|||
|
func F1() {
|
|||
|
_ = spv.OpLoad(Pointer: &GV1): T0
|
|||
|
_ = spv.OpLoad(Pointer: &GV2): spv.OpTypeSampler
|
|||
|
call F0()
|
|||
|
v0 = spv.OpLoad(Pointer: &GV3): f32×4
|
|||
|
spv.OpStore(Pointer: &GV0, Object: v0)
|
|||
|
}
|
|||
|
|
|||
|
export {
|
|||
|
spv.OpEntryPoint(spv.ExecutionModel.Fragment, Name: "main"): F1,
|
|||
|
}
|