diff options
| author | venkataram-nv <vedavamadath@nvidia.com> | 2024-07-01 15:00:50 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-01 15:00:50 -0700 |
| commit | 6262569c6305468afac8067112b61cc42780464c (patch) | |
| tree | 4754ba263844411a0079ff6d80b230dc3759510e | |
| parent | 6e550430cf24a6324ce22f821181f2cab904d543 (diff) | |
Supply SPIRV capability for textureQueryLod (#4522)
| -rw-r--r-- | source/slang/glsl.meta.slang | 2 | ||||
| -rw-r--r-- | tests/spirv/texture-query-lod.slang | 14 |
2 files changed, 16 insertions, 0 deletions
diff --git a/source/slang/glsl.meta.slang b/source/slang/glsl.meta.slang index cf314fcdc..ae6fbd67c 100644 --- a/source/slang/glsl.meta.slang +++ b/source/slang/glsl.meta.slang @@ -1890,6 +1890,7 @@ public vec2 textureQueryLod(__TextureImpl< __intrinsic_asm "textureQueryLod"; case spirv: return spirv_asm { + OpCapability ImageQuery; result:$$float2 = OpImageQueryLod $sampler $p }; default: @@ -1922,6 +1923,7 @@ public vec2 textureQueryLod(__TextureImpl< __intrinsic_asm "textureQueryLod"; case spirv: return spirv_asm { + OpCapability ImageQuery; result:$$float2 = OpImageQueryLod $sampler $p }; default: diff --git a/tests/spirv/texture-query-lod.slang b/tests/spirv/texture-query-lod.slang new file mode 100644 index 000000000..ad2597466 --- /dev/null +++ b/tests/spirv/texture-query-lod.slang @@ -0,0 +1,14 @@ +//TEST:SIMPLE(filecheck=CHK): -target spirv -entry main -stage fragment +//TEST:SIMPLE(filecheck=CHK): -target spirv-asm -entry main -stage fragment + +#version 450 core + +layout (location = 0) in highp vec2 uv; +layout (location = 0) out mediump vec4 fragment; +layout (set = 0, binding = 0) uniform highp isampler2D sampler; + +void main() +{ + // CHK: OpCapability ImageQuery + fragment = vec4(textureQueryLod(sampler, uv), 0.0, 1.0); +} |
