intrinsics: textureDimensions for cubes return vec2
See: https://github.com/gpuweb/gpuweb/pull/1754 Fixed: tint:882 Change-Id: Ibb48722dbaf6a7b200158bb87bc71c282056ed5e Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55259 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: David Neto <dneto@google.com> Commit-Queue: Ben Clayton <bclayton@chromium.org>
This commit is contained in:
parent
663271dca4
commit
b96ed7bda4
|
@ -266,7 +266,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsCube,
|
ValidTextureOverload::kDimensionsCube,
|
||||||
"textureDimensions(t : texture_cube<f32>) -> vec3<i32>",
|
"textureDimensions(t : texture_cube<f32>) -> vec2<i32>",
|
||||||
TextureKind::kRegular,
|
TextureKind::kRegular,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCube,
|
ast::TextureDimension::kCube,
|
||||||
|
@ -277,7 +277,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsCubeLevel,
|
ValidTextureOverload::kDimensionsCubeLevel,
|
||||||
"textureDimensions(t : texture_cube<f32>,\n"
|
"textureDimensions(t : texture_cube<f32>,\n"
|
||||||
" level : i32) -> vec3<i32>",
|
" level : i32) -> vec2<i32>",
|
||||||
TextureKind::kRegular,
|
TextureKind::kRegular,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCube,
|
ast::TextureDimension::kCube,
|
||||||
|
@ -287,7 +287,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsCubeArray,
|
ValidTextureOverload::kDimensionsCubeArray,
|
||||||
"textureDimensions(t : texture_cube_array<f32>) -> vec3<i32>",
|
"textureDimensions(t : texture_cube_array<f32>) -> vec2<i32>",
|
||||||
TextureKind::kRegular,
|
TextureKind::kRegular,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCubeArray,
|
ast::TextureDimension::kCubeArray,
|
||||||
|
@ -298,7 +298,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsCubeArrayLevel,
|
ValidTextureOverload::kDimensionsCubeArrayLevel,
|
||||||
"textureDimensions(t : texture_cube_array<f32>,\n"
|
"textureDimensions(t : texture_cube_array<f32>,\n"
|
||||||
" level : i32) -> vec3<i32>",
|
" level : i32) -> vec2<i32>",
|
||||||
TextureKind::kRegular,
|
TextureKind::kRegular,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCubeArray,
|
ast::TextureDimension::kCubeArray,
|
||||||
|
@ -360,7 +360,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsDepthCube,
|
ValidTextureOverload::kDimensionsDepthCube,
|
||||||
"textureDimensions(t : texture_depth_cube) -> vec3<i32>",
|
"textureDimensions(t : texture_depth_cube) -> vec2<i32>",
|
||||||
TextureKind::kDepth,
|
TextureKind::kDepth,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCube,
|
ast::TextureDimension::kCube,
|
||||||
|
@ -371,7 +371,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsDepthCubeLevel,
|
ValidTextureOverload::kDimensionsDepthCubeLevel,
|
||||||
"textureDimensions(t : texture_depth_cube,\n"
|
"textureDimensions(t : texture_depth_cube,\n"
|
||||||
" level : i32) -> vec3<i32>",
|
" level : i32) -> vec2<i32>",
|
||||||
TextureKind::kDepth,
|
TextureKind::kDepth,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCube,
|
ast::TextureDimension::kCube,
|
||||||
|
@ -381,7 +381,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsDepthCubeArray,
|
ValidTextureOverload::kDimensionsDepthCubeArray,
|
||||||
"textureDimensions(t : texture_depth_cube_array) -> vec3<i32>",
|
"textureDimensions(t : texture_depth_cube_array) -> vec2<i32>",
|
||||||
TextureKind::kDepth,
|
TextureKind::kDepth,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCubeArray,
|
ast::TextureDimension::kCubeArray,
|
||||||
|
@ -392,7 +392,7 @@ std::vector<TextureOverloadCase> TextureOverloadCase::ValidCases() {
|
||||||
{
|
{
|
||||||
ValidTextureOverload::kDimensionsDepthCubeArrayLevel,
|
ValidTextureOverload::kDimensionsDepthCubeArrayLevel,
|
||||||
"textureDimensions(t : texture_depth_cube_array,\n"
|
"textureDimensions(t : texture_depth_cube_array,\n"
|
||||||
" level : i32) -> vec3<i32>",
|
" level : i32) -> vec2<i32>",
|
||||||
TextureKind::kDepth,
|
TextureKind::kDepth,
|
||||||
ast::SamplerKind::kSampler,
|
ast::SamplerKind::kSampler,
|
||||||
ast::TextureDimension::kCubeArray,
|
ast::TextureDimension::kCubeArray,
|
||||||
|
|
|
@ -4874,7 +4874,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[1],
|
/* open types */ &kOpenTypes[1],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[505],
|
/* parameters */ &kParameters[505],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -4886,7 +4886,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[1],
|
/* open types */ &kOpenTypes[1],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[467],
|
/* parameters */ &kParameters[467],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -4898,7 +4898,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[1],
|
/* open types */ &kOpenTypes[1],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[484],
|
/* parameters */ &kParameters[484],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -4910,7 +4910,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[1],
|
/* open types */ &kOpenTypes[1],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[471],
|
/* parameters */ &kParameters[471],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -4982,7 +4982,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[4],
|
/* open types */ &kOpenTypes[4],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[481],
|
/* parameters */ &kParameters[481],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -4994,7 +4994,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[4],
|
/* open types */ &kOpenTypes[4],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[473],
|
/* parameters */ &kParameters[473],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -5006,7 +5006,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[4],
|
/* open types */ &kOpenTypes[4],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[483],
|
/* parameters */ &kParameters[483],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -5018,7 +5018,7 @@ constexpr OverloadInfo kOverloads[] = {
|
||||||
/* open types */ &kOpenTypes[4],
|
/* open types */ &kOpenTypes[4],
|
||||||
/* open numbers */ &kOpenNumbers[7],
|
/* open numbers */ &kOpenNumbers[7],
|
||||||
/* parameters */ &kParameters[469],
|
/* parameters */ &kParameters[469],
|
||||||
/* return matcher indices */ &kMatcherIndices[138],
|
/* return matcher indices */ &kMatcherIndices[132],
|
||||||
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
/* supported_stages */ PipelineStageSet(PipelineStage::kVertex, PipelineStage::kFragment, PipelineStage::kCompute),
|
||||||
/* is_deprecated */ false,
|
/* is_deprecated */ false,
|
||||||
},
|
},
|
||||||
|
@ -8538,19 +8538,19 @@ constexpr IntrinsicInfo kIntrinsics[] = {
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_2d_array<T>, level: i32) -> vec2<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_2d_array<T>, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_3d<T>) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_3d<T>) -> vec3<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_3d<T>, level: i32) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_3d<T>, level: i32) -> vec3<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_cube<T>) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_cube<T>) -> vec2<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_cube<T>, level: i32) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_cube<T>, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>) -> vec2<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>, level: i32) -> vec3<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_cube_array<T>, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions<T : fiu32>(texture: texture_multisampled_2d<T>) -> vec2<i32> */
|
/* fn textureDimensions<T : fiu32>(texture: texture_multisampled_2d<T>) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_2d) -> vec2<i32> */
|
/* fn textureDimensions(texture: texture_depth_2d) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32> */
|
/* fn textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_2d_array) -> vec2<i32> */
|
/* fn textureDimensions(texture: texture_depth_2d_array) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32> */
|
/* fn textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_cube) -> vec3<i32> */
|
/* fn textureDimensions(texture: texture_depth_cube) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec3<i32> */
|
/* fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_cube_array) -> vec3<i32> */
|
/* fn textureDimensions(texture: texture_depth_cube_array) -> vec2<i32> */
|
||||||
/* fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec3<i32> */
|
/* fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32> */
|
||||||
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_1d<F, A>) -> i32 */
|
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_1d<F, A>) -> i32 */
|
||||||
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_2d<F, A>) -> vec2<i32> */
|
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_2d<F, A>) -> vec2<i32> */
|
||||||
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_2d_array<F, A>) -> vec2<i32> */
|
/* fn textureDimensions<F : texel_format, A : read_or_write>(texture: texture_storage_2d_array<F, A>) -> vec2<i32> */
|
||||||
|
|
|
@ -484,23 +484,23 @@ TEST_F(IntrinsicTableTest, OverloadOrderByNumberOfParameters) {
|
||||||
textureDimensions(texture: texture_2d<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_3d<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_3d<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube_array<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube, level: i32) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_1d<T>) -> i32 where: T is f32, i32 or u32
|
textureDimensions(texture: texture_1d<T>) -> i32 where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_3d<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_3d<T>) -> vec3<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube_array<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_multisampled_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_multisampled_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_depth_2d) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube_array) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube_array) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_storage_1d<F, A>) -> i32 where: A is read or write
|
textureDimensions(texture: texture_storage_1d<F, A>) -> i32 where: A is read or write
|
||||||
textureDimensions(texture: texture_storage_2d<F, A>) -> vec2<i32> where: A is read or write
|
textureDimensions(texture: texture_storage_2d<F, A>) -> vec2<i32> where: A is read or write
|
||||||
textureDimensions(texture: texture_storage_2d_array<F, A>) -> vec2<i32> where: A is read or write
|
textureDimensions(texture: texture_storage_2d_array<F, A>) -> vec2<i32> where: A is read or write
|
||||||
|
@ -523,21 +523,21 @@ TEST_F(IntrinsicTableTest, OverloadOrderByMatchingParameter) {
|
||||||
textureDimensions(texture: texture_2d<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_3d<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_3d<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube_array<T>, level: i32) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube_array<T>, level: i32) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube, level: i32) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_1d<T>) -> i32 where: T is f32, i32 or u32
|
textureDimensions(texture: texture_1d<T>) -> i32 where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_2d_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_2d_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_3d<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_3d<T>) -> vec3<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_cube_array<T>) -> vec3<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_cube_array<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_multisampled_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
textureDimensions(texture: texture_multisampled_2d<T>) -> vec2<i32> where: T is f32, i32 or u32
|
||||||
textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_depth_cube_array) -> vec3<i32>
|
textureDimensions(texture: texture_depth_cube_array) -> vec2<i32>
|
||||||
textureDimensions(texture: texture_storage_1d<F, A>) -> i32 where: A is read or write
|
textureDimensions(texture: texture_storage_1d<F, A>) -> i32 where: A is read or write
|
||||||
textureDimensions(texture: texture_storage_2d<F, A>) -> vec2<i32> where: A is read or write
|
textureDimensions(texture: texture_storage_2d<F, A>) -> vec2<i32> where: A is read or write
|
||||||
textureDimensions(texture: texture_storage_2d_array<F, A>) -> vec2<i32> where: A is read or write
|
textureDimensions(texture: texture_storage_2d_array<F, A>) -> vec2<i32> where: A is read or write
|
||||||
|
|
|
@ -394,19 +394,19 @@ fn textureDimensions<T: fiu32>(texture: texture_2d_array<T>) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_2d_array<T>, level: i32) -> vec2<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_2d_array<T>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_3d<T>) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_3d<T>) -> vec3<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_3d<T>, level: i32) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_3d<T>, level: i32) -> vec3<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_cube<T>) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_cube<T>) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_cube<T>, level: i32) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_cube<T>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_cube_array<T>) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_cube_array<T>) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_cube_array<T>, level: i32) -> vec3<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_cube_array<T>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions<T: fiu32>(texture: texture_multisampled_2d<T>) -> vec2<i32>
|
fn textureDimensions<T: fiu32>(texture: texture_multisampled_2d<T>) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_2d) -> vec2<i32>
|
fn textureDimensions(texture: texture_depth_2d) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32>
|
fn textureDimensions(texture: texture_depth_2d, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
fn textureDimensions(texture: texture_depth_2d_array) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
fn textureDimensions(texture: texture_depth_2d_array, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_cube) -> vec3<i32>
|
fn textureDimensions(texture: texture_depth_cube) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec3<i32>
|
fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_cube_array) -> vec3<i32>
|
fn textureDimensions(texture: texture_depth_cube_array) -> vec2<i32>
|
||||||
fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec3<i32>
|
fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_1d<F, A>) -> i32
|
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_1d<F, A>) -> i32
|
||||||
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_2d<F, A>) -> vec2<i32>
|
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_2d<F, A>) -> vec2<i32>
|
||||||
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_2d_array<F, A>) -> vec2<i32>
|
fn textureDimensions<F: texel_format, A: read_or_write>(texture: texture_storage_2d_array<F, A>) -> vec2<i32>
|
||||||
|
|
|
@ -1969,16 +1969,16 @@ TEST_P(ResolverIntrinsicTest_Texture, Call) {
|
||||||
EXPECT_TRUE(TypeOf(call)->Is<sem::I32>());
|
EXPECT_TRUE(TypeOf(call)->Is<sem::I32>());
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::k2d:
|
case ast::TextureDimension::k2d:
|
||||||
case ast::TextureDimension::k2dArray: {
|
case ast::TextureDimension::k2dArray:
|
||||||
|
case ast::TextureDimension::kCube:
|
||||||
|
case ast::TextureDimension::kCubeArray: {
|
||||||
auto* vec = As<sem::Vector>(TypeOf(call));
|
auto* vec = As<sem::Vector>(TypeOf(call));
|
||||||
ASSERT_NE(vec, nullptr);
|
ASSERT_NE(vec, nullptr);
|
||||||
EXPECT_EQ(vec->size(), 2u);
|
EXPECT_EQ(vec->size(), 2u);
|
||||||
EXPECT_TRUE(vec->type()->Is<sem::I32>());
|
EXPECT_TRUE(vec->type()->Is<sem::I32>());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ast::TextureDimension::k3d:
|
case ast::TextureDimension::k3d: {
|
||||||
case ast::TextureDimension::kCube:
|
|
||||||
case ast::TextureDimension::kCubeArray: {
|
|
||||||
auto* vec = As<sem::Vector>(TypeOf(call));
|
auto* vec = As<sem::Vector>(TypeOf(call));
|
||||||
ASSERT_NE(vec, nullptr);
|
ASSERT_NE(vec, nullptr);
|
||||||
EXPECT_EQ(vec->size(), 3u);
|
EXPECT_EQ(vec->size(), 3u);
|
||||||
|
|
|
@ -1415,16 +1415,11 @@ bool GeneratorImpl::EmitTextureCall(std::ostream& pre,
|
||||||
num_dimensions = 3;
|
num_dimensions = 3;
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::kCube:
|
case ast::TextureDimension::kCube:
|
||||||
// width == height == depth for cubes
|
|
||||||
// See https://github.com/gpuweb/gpuweb/issues/1345
|
|
||||||
num_dimensions = 2;
|
num_dimensions = 2;
|
||||||
swizzle = ".xyy"; // [width, height, height]
|
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::kCubeArray:
|
case ast::TextureDimension::kCubeArray:
|
||||||
// width == height == depth for cubes
|
|
||||||
// See https://github.com/gpuweb/gpuweb/issues/1345
|
|
||||||
num_dimensions = 3;
|
num_dimensions = 3;
|
||||||
swizzle = ".xyy"; // [width, height, height]
|
swizzle = ".xy";
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -89,7 +89,7 @@ ExpectedResult expected_texture_overload(
|
||||||
R"(int2 tint_tmp;
|
R"(int2 tint_tmp;
|
||||||
tint_symbol.GetDimensions(tint_tmp.x, tint_tmp.y);
|
tint_symbol.GetDimensions(tint_tmp.x, tint_tmp.y);
|
||||||
)",
|
)",
|
||||||
"tint_tmp.xyy",
|
"tint_tmp",
|
||||||
};
|
};
|
||||||
case ValidTextureOverload::kDimensionsCubeArray:
|
case ValidTextureOverload::kDimensionsCubeArray:
|
||||||
case ValidTextureOverload::kDimensionsDepthCubeArray:
|
case ValidTextureOverload::kDimensionsDepthCubeArray:
|
||||||
|
@ -97,7 +97,7 @@ ExpectedResult expected_texture_overload(
|
||||||
R"(int3 tint_tmp;
|
R"(int3 tint_tmp;
|
||||||
tint_symbol.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
tint_symbol.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
)",
|
)",
|
||||||
"tint_tmp.xyy",
|
"tint_tmp.xy",
|
||||||
};
|
};
|
||||||
case ValidTextureOverload::kDimensions2dLevel:
|
case ValidTextureOverload::kDimensions2dLevel:
|
||||||
case ValidTextureOverload::kDimensionsDepth2dLevel:
|
case ValidTextureOverload::kDimensionsDepth2dLevel:
|
||||||
|
@ -128,7 +128,7 @@ ExpectedResult expected_texture_overload(
|
||||||
R"(int3 tint_tmp;
|
R"(int3 tint_tmp;
|
||||||
tint_symbol.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
tint_symbol.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
)",
|
)",
|
||||||
"tint_tmp.xyy",
|
"tint_tmp.xy",
|
||||||
};
|
};
|
||||||
case ValidTextureOverload::kDimensionsCubeArrayLevel:
|
case ValidTextureOverload::kDimensionsCubeArrayLevel:
|
||||||
case ValidTextureOverload::kDimensionsDepthCubeArrayLevel:
|
case ValidTextureOverload::kDimensionsDepthCubeArrayLevel:
|
||||||
|
@ -136,7 +136,7 @@ ExpectedResult expected_texture_overload(
|
||||||
R"(int4 tint_tmp;
|
R"(int4 tint_tmp;
|
||||||
tint_symbol.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
tint_symbol.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
||||||
)",
|
)",
|
||||||
"tint_tmp.xyy",
|
"tint_tmp.xy",
|
||||||
};
|
};
|
||||||
case ValidTextureOverload::kNumLayers2dArray:
|
case ValidTextureOverload::kNumLayers2dArray:
|
||||||
case ValidTextureOverload::kNumLayersDepth2dArray:
|
case ValidTextureOverload::kNumLayersDepth2dArray:
|
||||||
|
|
|
@ -464,17 +464,13 @@ bool GeneratorImpl::EmitTextureCall(ast::CallExpression* expr,
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::k2d:
|
case ast::TextureDimension::k2d:
|
||||||
case ast::TextureDimension::k2dArray:
|
case ast::TextureDimension::k2dArray:
|
||||||
|
case ast::TextureDimension::kCube:
|
||||||
|
case ast::TextureDimension::kCubeArray:
|
||||||
dims = {"width", "height"};
|
dims = {"width", "height"};
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::k3d:
|
case ast::TextureDimension::k3d:
|
||||||
dims = {"width", "height", "depth"};
|
dims = {"width", "height", "depth"};
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::kCube:
|
|
||||||
case ast::TextureDimension::kCubeArray:
|
|
||||||
// width == height == depth for cubes
|
|
||||||
// See https://github.com/gpuweb/gpuweb/issues/1345
|
|
||||||
dims = {"width", "height", "height"};
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
auto get_dim = [&](const char* name) {
|
auto get_dim = [&](const char* name) {
|
||||||
|
|
|
@ -31,9 +31,13 @@ std::string expected_texture_overload(
|
||||||
return R"(int(texture.get_width()))";
|
return R"(int(texture.get_width()))";
|
||||||
case ValidTextureOverload::kDimensions2d:
|
case ValidTextureOverload::kDimensions2d:
|
||||||
case ValidTextureOverload::kDimensions2dArray:
|
case ValidTextureOverload::kDimensions2dArray:
|
||||||
|
case ValidTextureOverload::kDimensionsCube:
|
||||||
|
case ValidTextureOverload::kDimensionsCubeArray:
|
||||||
case ValidTextureOverload::kDimensionsMultisampled2d:
|
case ValidTextureOverload::kDimensionsMultisampled2d:
|
||||||
case ValidTextureOverload::kDimensionsDepth2d:
|
case ValidTextureOverload::kDimensionsDepth2d:
|
||||||
case ValidTextureOverload::kDimensionsDepth2dArray:
|
case ValidTextureOverload::kDimensionsDepth2dArray:
|
||||||
|
case ValidTextureOverload::kDimensionsDepthCube:
|
||||||
|
case ValidTextureOverload::kDimensionsDepthCubeArray:
|
||||||
case ValidTextureOverload::kDimensionsStorageRO2d:
|
case ValidTextureOverload::kDimensionsStorageRO2d:
|
||||||
case ValidTextureOverload::kDimensionsStorageRO2dArray:
|
case ValidTextureOverload::kDimensionsStorageRO2dArray:
|
||||||
case ValidTextureOverload::kDimensionsStorageWO2d:
|
case ValidTextureOverload::kDimensionsStorageWO2d:
|
||||||
|
@ -43,23 +47,17 @@ std::string expected_texture_overload(
|
||||||
case ValidTextureOverload::kDimensionsStorageRO3d:
|
case ValidTextureOverload::kDimensionsStorageRO3d:
|
||||||
case ValidTextureOverload::kDimensionsStorageWO3d:
|
case ValidTextureOverload::kDimensionsStorageWO3d:
|
||||||
return R"(int3(texture.get_width(), texture.get_height(), texture.get_depth()))";
|
return R"(int3(texture.get_width(), texture.get_height(), texture.get_depth()))";
|
||||||
case ValidTextureOverload::kDimensionsCube:
|
|
||||||
case ValidTextureOverload::kDimensionsCubeArray:
|
|
||||||
case ValidTextureOverload::kDimensionsDepthCube:
|
|
||||||
case ValidTextureOverload::kDimensionsDepthCubeArray:
|
|
||||||
return R"(int3(texture.get_width(), texture.get_height(), texture.get_height()))";
|
|
||||||
case ValidTextureOverload::kDimensions2dLevel:
|
case ValidTextureOverload::kDimensions2dLevel:
|
||||||
|
case ValidTextureOverload::kDimensionsCubeLevel:
|
||||||
|
case ValidTextureOverload::kDimensionsCubeArrayLevel:
|
||||||
case ValidTextureOverload::kDimensions2dArrayLevel:
|
case ValidTextureOverload::kDimensions2dArrayLevel:
|
||||||
case ValidTextureOverload::kDimensionsDepth2dLevel:
|
case ValidTextureOverload::kDimensionsDepth2dLevel:
|
||||||
case ValidTextureOverload::kDimensionsDepth2dArrayLevel:
|
case ValidTextureOverload::kDimensionsDepth2dArrayLevel:
|
||||||
|
case ValidTextureOverload::kDimensionsDepthCubeLevel:
|
||||||
|
case ValidTextureOverload::kDimensionsDepthCubeArrayLevel:
|
||||||
return R"(int2(texture.get_width(1), texture.get_height(1)))";
|
return R"(int2(texture.get_width(1), texture.get_height(1)))";
|
||||||
case ValidTextureOverload::kDimensions3dLevel:
|
case ValidTextureOverload::kDimensions3dLevel:
|
||||||
return R"(int3(texture.get_width(1), texture.get_height(1), texture.get_depth(1)))";
|
return R"(int3(texture.get_width(1), texture.get_height(1), texture.get_depth(1)))";
|
||||||
case ValidTextureOverload::kDimensionsCubeLevel:
|
|
||||||
case ValidTextureOverload::kDimensionsCubeArrayLevel:
|
|
||||||
case ValidTextureOverload::kDimensionsDepthCubeLevel:
|
|
||||||
case ValidTextureOverload::kDimensionsDepthCubeArrayLevel:
|
|
||||||
return R"(int3(texture.get_width(1), texture.get_height(1), texture.get_height(1)))";
|
|
||||||
case ValidTextureOverload::kNumLayers2dArray:
|
case ValidTextureOverload::kNumLayers2dArray:
|
||||||
case ValidTextureOverload::kNumLayersCubeArray:
|
case ValidTextureOverload::kNumLayersCubeArray:
|
||||||
case ValidTextureOverload::kNumLayersDepth2dArray:
|
case ValidTextureOverload::kNumLayersDepth2dArray:
|
||||||
|
|
|
@ -2662,19 +2662,13 @@ bool Builder::GenerateTextureIntrinsic(ast::CallExpression* call,
|
||||||
case ast::TextureDimension::k1d:
|
case ast::TextureDimension::k1d:
|
||||||
case ast::TextureDimension::k2d:
|
case ast::TextureDimension::k2d:
|
||||||
case ast::TextureDimension::k3d:
|
case ast::TextureDimension::k3d:
|
||||||
break; // No swizzle needed
|
|
||||||
case ast::TextureDimension::kCube:
|
case ast::TextureDimension::kCube:
|
||||||
swizzle = {0, 1, 1}; // Duplicate height for depth
|
break; // No swizzle needed
|
||||||
spirv_dims = 2; // [width, height]
|
case ast::TextureDimension::kCubeArray:
|
||||||
break;
|
|
||||||
case ast::TextureDimension::k2dArray:
|
case ast::TextureDimension::k2dArray:
|
||||||
swizzle = {0, 1}; // Strip array index
|
swizzle = {0, 1}; // Strip array index
|
||||||
spirv_dims = 3; // [width, height, array_count]
|
spirv_dims = 3; // [width, height, array_count]
|
||||||
break;
|
break;
|
||||||
case ast::TextureDimension::kCubeArray:
|
|
||||||
swizzle = {0, 1, 1}; // Strip array index, duplicate height for depth
|
|
||||||
spirv_dims = 3; // [width, height, array_count]
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!append_result_type_and_id_to_spirv_params_swizzled(spirv_dims,
|
if (!append_result_type_and_id_to_spirv_params_swizzled(spirv_dims,
|
||||||
|
|
|
@ -196,14 +196,12 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%12 = OpTypeVector %10 2
|
%12 = OpConstant %10 0
|
||||||
%14 = OpConstant %10 0
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%13 = OpLoad %3 %1
|
%11 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %12 %13 %14
|
%8 = OpImageQuerySizeLod %9 %11 %12
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -219,14 +217,12 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%12 = OpTypeVector %10 2
|
%12 = OpConstant %10 1
|
||||||
%14 = OpConstant %10 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%13 = OpLoad %3 %1
|
%11 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %12 %13 %14
|
%8 = OpImageQuerySizeLod %9 %11 %12
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -242,13 +238,14 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%13 = OpConstant %10 0
|
%12 = OpTypeVector %10 3
|
||||||
|
%14 = OpConstant %10 0
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%12 = OpLoad %3 %1
|
%13 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %9 %12 %13
|
%11 = OpImageQuerySizeLod %12 %13 %14
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
%8 = OpVectorShuffle %9 %11 %11 0 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability SampledCubeArray
|
OpCapability SampledCubeArray
|
||||||
|
@ -265,13 +262,14 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%13 = OpConstant %10 1
|
%12 = OpTypeVector %10 3
|
||||||
|
%14 = OpConstant %10 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%12 = OpLoad %3 %1
|
%13 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %9 %12 %13
|
%11 = OpImageQuerySizeLod %12 %13 %14
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
%8 = OpVectorShuffle %9 %11 %11 0 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability SampledCubeArray
|
OpCapability SampledCubeArray
|
||||||
|
@ -396,14 +394,12 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%12 = OpTypeVector %10 2
|
%12 = OpConstant %10 0
|
||||||
%14 = OpConstant %10 0
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%13 = OpLoad %3 %1
|
%11 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %12 %13 %14
|
%8 = OpImageQuerySizeLod %9 %11 %12
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -419,14 +415,12 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%12 = OpTypeVector %10 2
|
%12 = OpConstant %10 1
|
||||||
%14 = OpConstant %10 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%13 = OpLoad %3 %1
|
%11 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %12 %13 %14
|
%8 = OpImageQuerySizeLod %9 %11 %12
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -442,13 +436,14 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%13 = OpConstant %10 0
|
%12 = OpTypeVector %10 3
|
||||||
|
%14 = OpConstant %10 0
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%12 = OpLoad %3 %1
|
%13 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %9 %12 %13
|
%11 = OpImageQuerySizeLod %12 %13 %14
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
%8 = OpVectorShuffle %9 %11 %11 0 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability SampledCubeArray
|
OpCapability SampledCubeArray
|
||||||
|
@ -465,13 +460,14 @@ OpCapability ImageQuery
|
||||||
%6 = OpTypePointer UniformConstant %7
|
%6 = OpTypePointer UniformConstant %7
|
||||||
%5 = OpVariable %6 UniformConstant
|
%5 = OpVariable %6 UniformConstant
|
||||||
%10 = OpTypeInt 32 1
|
%10 = OpTypeInt 32 1
|
||||||
%9 = OpTypeVector %10 3
|
%9 = OpTypeVector %10 2
|
||||||
%13 = OpConstant %10 1
|
%12 = OpTypeVector %10 3
|
||||||
|
%14 = OpConstant %10 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
%12 = OpLoad %3 %1
|
%13 = OpLoad %3 %1
|
||||||
%11 = OpImageQuerySizeLod %9 %12 %13
|
%11 = OpImageQuerySizeLod %12 %13 %14
|
||||||
%8 = OpVectorShuffle %9 %11 %11 0 1 1
|
%8 = OpVectorShuffle %9 %11 %11 0 1
|
||||||
)",
|
)",
|
||||||
R"(
|
R"(
|
||||||
OpCapability SampledCubeArray
|
OpCapability SampledCubeArray
|
||||||
|
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<i32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<i32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<i32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<i32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_e22247() {
|
fn textureDimensions_221f22() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<int4> arg_0 : register(t0, space1);
|
TextureCubeArray<int4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_e22247() {
|
void textureDimensions_221f22() {
|
||||||
int4 tint_tmp;
|
int4 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_f70326(texturecube_array<int, access::sample> tint_symbol_2) {
|
void textureDimensions_221f22(texturecube_array<int, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_f70326(tint_symbol_3);
|
textureDimensions_221f22(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_f70326(tint_symbol_4);
|
textureDimensions_221f22(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_f70326(tint_symbol_5);
|
textureDimensions_221f22(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_91f42d "textureDimensions_91f42d"
|
OpName %textureDimensions_221f22 "textureDimensions_221f22"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,8 +30,8 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%uint = OpTypeInt 32 0
|
%int = OpTypeInt 32 1
|
||||||
%7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
|
%7 = OpTypeImage %int Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,19 +40,19 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%v2int = OpTypeVector %int 2
|
||||||
%v3int = OpTypeVector %int 3
|
%v3int = OpTypeVector %int 3
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_91f42d = OpFunction %void None %13
|
%textureDimensions_221f22 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%20 = OpImageQuerySizeLod %v3int %21 %int_1
|
%19 = OpImageQuerySizeLod %v3int %21 %int_1
|
||||||
%17 = OpVectorShuffle %v3int %20 %20 0 1 1
|
%17 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -65,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_91f42d
|
%33 = OpFunctionCall %void %textureDimensions_221f22
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_91f42d
|
%37 = OpFunctionCall %void %textureDimensions_221f22
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_91f42d
|
%40 = OpFunctionCall %void %textureDimensions_221f22
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<i32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<i32>;
|
||||||
|
|
||||||
fn textureDimensions_e22247() {
|
fn textureDimensions_221f22() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_e22247();
|
textureDimensions_221f22();
|
||||||
}
|
}
|
|
@ -1,80 +0,0 @@
|
||||||
; SPIR-V
|
|
||||||
; Version: 1.3
|
|
||||||
; Generator: Google Tint Compiler; 0
|
|
||||||
; Bound: 40
|
|
||||||
; Schema: 0
|
|
||||||
OpCapability Shader
|
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
|
||||||
OpMemoryModel Logical GLSL450
|
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
|
||||||
OpEntryPoint Fragment %fragment_main "fragment_main"
|
|
||||||
OpEntryPoint GLCompute %compute_main "compute_main"
|
|
||||||
OpExecutionMode %fragment_main OriginUpperLeft
|
|
||||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
|
||||||
OpName %arg_0 "arg_0"
|
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
|
||||||
OpName %textureDimensions_3e0403 "textureDimensions_3e0403"
|
|
||||||
OpName %res "res"
|
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
|
||||||
OpName %tint_symbol "tint_symbol"
|
|
||||||
OpName %vertex_main "vertex_main"
|
|
||||||
OpName %fragment_main "fragment_main"
|
|
||||||
OpName %compute_main "compute_main"
|
|
||||||
OpDecorate %tint_pointsize BuiltIn PointSize
|
|
||||||
OpDecorate %arg_0 DescriptorSet 1
|
|
||||||
OpDecorate %arg_0 Binding 0
|
|
||||||
OpDecorate %tint_symbol_1 BuiltIn Position
|
|
||||||
%float = OpTypeFloat 32
|
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
|
||||||
%4 = OpConstantNull %float
|
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
|
||||||
%7 = OpTypeImage %float Cube 0 1 0 1 Unknown
|
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
|
||||||
%v4float = OpTypeVector %float 4
|
|
||||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
||||||
%11 = OpConstantNull %v4float
|
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
|
||||||
%void = OpTypeVoid
|
|
||||||
%12 = OpTypeFunction %void
|
|
||||||
%int = OpTypeInt 32 1
|
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%int_0 = OpConstant %int 0
|
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
|
||||||
%24 = OpConstantNull %v3int
|
|
||||||
%25 = OpTypeFunction %void %v4float
|
|
||||||
%float_1 = OpConstant %float 1
|
|
||||||
%textureDimensions_3e0403 = OpFunction %void None %12
|
|
||||||
%15 = OpLabel
|
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
|
||||||
%20 = OpLoad %7 %arg_0
|
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_0
|
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %16
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%tint_symbol_2 = OpFunction %void None %25
|
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
|
||||||
%28 = OpLabel
|
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%vertex_main = OpFunction %void None %12
|
|
||||||
%30 = OpLabel
|
|
||||||
OpStore %tint_pointsize %float_1
|
|
||||||
%32 = OpFunctionCall %void %textureDimensions_3e0403
|
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %11
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%fragment_main = OpFunction %void None %12
|
|
||||||
%35 = OpLabel
|
|
||||||
%36 = OpFunctionCall %void %textureDimensions_3e0403
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%compute_main = OpFunction %void None %12
|
|
||||||
%38 = OpLabel
|
|
||||||
%39 = OpFunctionCall %void %textureDimensions_3e0403
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
|
@ -1,80 +0,0 @@
|
||||||
; SPIR-V
|
|
||||||
; Version: 1.3
|
|
||||||
; Generator: Google Tint Compiler; 0
|
|
||||||
; Bound: 40
|
|
||||||
; Schema: 0
|
|
||||||
OpCapability Shader
|
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
|
||||||
OpMemoryModel Logical GLSL450
|
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
|
||||||
OpEntryPoint Fragment %fragment_main "fragment_main"
|
|
||||||
OpEntryPoint GLCompute %compute_main "compute_main"
|
|
||||||
OpExecutionMode %fragment_main OriginUpperLeft
|
|
||||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
|
||||||
OpName %arg_0 "arg_0"
|
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
|
||||||
OpName %textureDimensions_3e626d "textureDimensions_3e626d"
|
|
||||||
OpName %res "res"
|
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
|
||||||
OpName %tint_symbol "tint_symbol"
|
|
||||||
OpName %vertex_main "vertex_main"
|
|
||||||
OpName %fragment_main "fragment_main"
|
|
||||||
OpName %compute_main "compute_main"
|
|
||||||
OpDecorate %tint_pointsize BuiltIn PointSize
|
|
||||||
OpDecorate %arg_0 DescriptorSet 1
|
|
||||||
OpDecorate %arg_0 Binding 0
|
|
||||||
OpDecorate %tint_symbol_1 BuiltIn Position
|
|
||||||
%float = OpTypeFloat 32
|
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
|
||||||
%4 = OpConstantNull %float
|
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
|
||||||
%7 = OpTypeImage %float Cube 1 1 0 1 Unknown
|
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
|
||||||
%v4float = OpTypeVector %float 4
|
|
||||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
||||||
%11 = OpConstantNull %v4float
|
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
|
||||||
%void = OpTypeVoid
|
|
||||||
%12 = OpTypeFunction %void
|
|
||||||
%int = OpTypeInt 32 1
|
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%int_1 = OpConstant %int 1
|
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
|
||||||
%24 = OpConstantNull %v3int
|
|
||||||
%25 = OpTypeFunction %void %v4float
|
|
||||||
%float_1 = OpConstant %float 1
|
|
||||||
%textureDimensions_3e626d = OpFunction %void None %12
|
|
||||||
%15 = OpLabel
|
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
|
||||||
%20 = OpLoad %7 %arg_0
|
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_1
|
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %16
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%tint_symbol_2 = OpFunction %void None %25
|
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
|
||||||
%28 = OpLabel
|
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%vertex_main = OpFunction %void None %12
|
|
||||||
%30 = OpLabel
|
|
||||||
OpStore %tint_pointsize %float_1
|
|
||||||
%32 = OpFunctionCall %void %textureDimensions_3e626d
|
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %11
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%fragment_main = OpFunction %void None %12
|
|
||||||
%35 = OpLabel
|
|
||||||
%36 = OpFunctionCall %void %textureDimensions_3e626d
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%compute_main = OpFunction %void None %12
|
|
||||||
%38 = OpLabel
|
|
||||||
%39 = OpFunctionCall %void %textureDimensions_3e626d
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<u32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<u32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<u32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<u32>) -> vec2<i32>
|
||||||
fn textureDimensions_183b3e() {
|
fn textureDimensions_4152a6() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<uint4> arg_0 : register(t0, space1);
|
TextureCubeArray<uint4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_183b3e() {
|
void textureDimensions_4152a6() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_183b3e(texturecube_array<uint, access::sample> tint_symbol_2) {
|
void textureDimensions_4152a6(texturecube_array<uint, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_183b3e(tint_symbol_3);
|
textureDimensions_4152a6(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_183b3e(tint_symbol_4);
|
textureDimensions_4152a6(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_183b3e(tint_symbol_5);
|
textureDimensions_4152a6(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 42
|
; Bound: 42
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_1ebd6a "textureDimensions_1ebd6a"
|
OpName %textureDimensions_4152a6 "textureDimensions_4152a6"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,7 +31,7 @@
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%uint = OpTypeInt 32 0
|
%uint = OpTypeInt 32 0
|
||||||
%7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
|
%7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,19 +41,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%26 = OpConstantNull %v3int
|
%26 = OpConstantNull %v2int
|
||||||
%27 = OpTypeFunction %void %v4float
|
%27 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_1ebd6a = OpFunction %void None %13
|
%textureDimensions_4152a6 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %26
|
%res = OpVariable %_ptr_Function_v2int Function %26
|
||||||
%22 = OpLoad %7 %arg_0
|
%22 = OpLoad %7 %arg_0
|
||||||
%20 = OpImageQuerySizeLod %v2int %22 %int_0
|
%20 = OpImageQuerySizeLod %v3int %22 %int_0
|
||||||
%17 = OpVectorShuffle %v3int %20 %20 0 1 1
|
%17 = OpVectorShuffle %v2int %20 %20 0 1
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -65,17 +66,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%32 = OpLabel
|
%32 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%34 = OpFunctionCall %void %textureDimensions_1ebd6a
|
%34 = OpFunctionCall %void %textureDimensions_4152a6
|
||||||
%35 = OpFunctionCall %void %tint_symbol_2 %12
|
%35 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%37 = OpLabel
|
%37 = OpLabel
|
||||||
%38 = OpFunctionCall %void %textureDimensions_1ebd6a
|
%38 = OpFunctionCall %void %textureDimensions_4152a6
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%40 = OpLabel
|
%40 = OpLabel
|
||||||
%41 = OpFunctionCall %void %textureDimensions_1ebd6a
|
%41 = OpFunctionCall %void %textureDimensions_4152a6
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<u32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<u32>;
|
||||||
|
|
||||||
fn textureDimensions_183b3e() {
|
fn textureDimensions_4152a6() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_183b3e();
|
textureDimensions_4152a6();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<f32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<f32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<f32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<f32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_eda4e3() {
|
fn textureDimensions_50a9ee() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<float4> arg_0 : register(t0, space1);
|
TextureCubeArray<float4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_eda4e3() {
|
void textureDimensions_50a9ee() {
|
||||||
int4 tint_tmp;
|
int4 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_3e0403(texturecube_array<float, access::sample> tint_symbol_2) {
|
void textureDimensions_50a9ee(texturecube_array<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_3e0403(tint_symbol_3);
|
textureDimensions_50a9ee(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_3e0403(tint_symbol_4);
|
textureDimensions_50a9ee(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_3e0403(tint_symbol_5);
|
textureDimensions_50a9ee(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 41
|
; Bound: 41
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_75be9d "textureDimensions_75be9d"
|
OpName %textureDimensions_50a9ee "textureDimensions_50a9ee"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%7 = OpTypeImage %float Cube 0 0 0 1 Unknown
|
%7 = OpTypeImage %float Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -39,19 +40,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%12 = OpTypeFunction %void
|
%12 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_75be9d = OpFunction %void None %12
|
%textureDimensions_50a9ee = OpFunction %void None %12
|
||||||
%15 = OpLabel
|
%15 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_1
|
%19 = OpImageQuerySizeLod %v3int %21 %int_1
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
%16 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %16
|
OpStore %res %16
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %12
|
%vertex_main = OpFunction %void None %12
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_75be9d
|
%33 = OpFunctionCall %void %textureDimensions_50a9ee
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %12
|
%fragment_main = OpFunction %void None %12
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_75be9d
|
%37 = OpFunctionCall %void %textureDimensions_50a9ee
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %12
|
%compute_main = OpFunction %void None %12
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_75be9d
|
%40 = OpFunctionCall %void %textureDimensions_50a9ee
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<f32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<f32>;
|
||||||
|
|
||||||
fn textureDimensions_eda4e3() {
|
fn textureDimensions_50a9ee() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_eda4e3();
|
textureDimensions_50a9ee();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_depth_cube;
|
[[group(1), binding(0)]] var arg_0: texture_depth_cube;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_depth_cube) -> vec3<i32>
|
// fn textureDimensions(texture: texture_depth_cube) -> vec2<i32>
|
||||||
fn textureDimensions_76e722() {
|
fn textureDimensions_57e28f() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube arg_0 : register(t0, space1);
|
TextureCube arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_76e722() {
|
void textureDimensions_57e28f() {
|
||||||
int2 tint_tmp;
|
int2 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_76e722(depthcube<float, access::sample> tint_symbol_2) {
|
void textureDimensions_57e28f(depthcube<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(depthcube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(depthcube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_76e722(tint_symbol_3);
|
textureDimensions_57e28f(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(depthcube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(depthcube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_76e722(tint_symbol_4);
|
textureDimensions_57e28f(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(depthcube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(depthcube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_76e722(tint_symbol_5);
|
textureDimensions_57e28f(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
; SPIR-V
|
||||||
|
; Version: 1.3
|
||||||
|
; Generator: Google Tint Compiler; 0
|
||||||
|
; Bound: 39
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Shader
|
||||||
|
OpCapability ImageQuery
|
||||||
|
OpMemoryModel Logical GLSL450
|
||||||
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
OpEntryPoint Fragment %fragment_main "fragment_main"
|
||||||
|
OpEntryPoint GLCompute %compute_main "compute_main"
|
||||||
|
OpExecutionMode %fragment_main OriginUpperLeft
|
||||||
|
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||||
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
|
OpName %arg_0 "arg_0"
|
||||||
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
|
OpName %textureDimensions_57e28f "textureDimensions_57e28f"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
OpName %vertex_main "vertex_main"
|
||||||
|
OpName %fragment_main "fragment_main"
|
||||||
|
OpName %compute_main "compute_main"
|
||||||
|
OpDecorate %tint_pointsize BuiltIn PointSize
|
||||||
|
OpDecorate %arg_0 DescriptorSet 1
|
||||||
|
OpDecorate %arg_0 Binding 0
|
||||||
|
OpDecorate %tint_symbol_1 BuiltIn Position
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
|
%4 = OpConstantNull %float
|
||||||
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
|
%7 = OpTypeImage %float Cube 1 0 0 1 Unknown
|
||||||
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
|
%v4float = OpTypeVector %float 4
|
||||||
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||||
|
%11 = OpConstantNull %v4float
|
||||||
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%12 = OpTypeFunction %void
|
||||||
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
|
%int_0 = OpConstant %int 0
|
||||||
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
|
%23 = OpConstantNull %v2int
|
||||||
|
%24 = OpTypeFunction %void %v4float
|
||||||
|
%float_1 = OpConstant %float 1
|
||||||
|
%textureDimensions_57e28f = OpFunction %void None %12
|
||||||
|
%15 = OpLabel
|
||||||
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
|
%19 = OpLoad %7 %arg_0
|
||||||
|
%16 = OpImageQuerySizeLod %v2int %19 %int_0
|
||||||
|
OpStore %res %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
|
%27 = OpLabel
|
||||||
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%vertex_main = OpFunction %void None %12
|
||||||
|
%29 = OpLabel
|
||||||
|
OpStore %tint_pointsize %float_1
|
||||||
|
%31 = OpFunctionCall %void %textureDimensions_57e28f
|
||||||
|
%32 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%fragment_main = OpFunction %void None %12
|
||||||
|
%34 = OpLabel
|
||||||
|
%35 = OpFunctionCall %void %textureDimensions_57e28f
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%compute_main = OpFunction %void None %12
|
||||||
|
%37 = OpLabel
|
||||||
|
%38 = OpFunctionCall %void %textureDimensions_57e28f
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_depth_cube;
|
[[group(1), binding(0)]] var arg_0 : texture_depth_cube;
|
||||||
|
|
||||||
fn textureDimensions_76e722() {
|
fn textureDimensions_57e28f() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_76e722();
|
textureDimensions_57e28f();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<i32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<i32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<i32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<i32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_7bb707() {
|
fn textureDimensions_686ef2() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<int4> arg_0 : register(t0, space1);
|
TextureCube<int4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_7bb707() {
|
void textureDimensions_686ef2() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_cccc17(texturecube<int, access::sample> tint_symbol_2) {
|
void textureDimensions_686ef2(texturecube<int, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_cccc17(tint_symbol_3);
|
textureDimensions_686ef2(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_cccc17(tint_symbol_4);
|
textureDimensions_686ef2(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_cccc17(tint_symbol_5);
|
textureDimensions_686ef2(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
; SPIR-V
|
; SPIR-V
|
||||||
; Version: 1.3
|
; Version: 1.3
|
||||||
; Generator: Google Tint Compiler; 0
|
; Generator: Google Tint Compiler; 0
|
||||||
; Bound: 41
|
; Bound: 39
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_7bb707 "textureDimensions_7bb707"
|
OpName %textureDimensions_686ef2 "textureDimensions_686ef2"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -39,42 +39,40 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%23 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%24 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_7bb707 = OpFunction %void None %13
|
%textureDimensions_686ef2 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
%21 = OpLoad %7 %arg_0
|
%19 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_1
|
%17 = OpImageQuerySizeLod %v2int %19 %int_1
|
||||||
%17 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%tint_symbol_2 = OpFunction %void None %26
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
%29 = OpLabel
|
%27 = OpLabel
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%31 = OpLabel
|
%29 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_7bb707
|
%31 = OpFunctionCall %void %textureDimensions_686ef2
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
%32 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%36 = OpLabel
|
%34 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_7bb707
|
%35 = OpFunctionCall %void %textureDimensions_686ef2
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%39 = OpLabel
|
%37 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_7bb707
|
%38 = OpFunctionCall %void %textureDimensions_686ef2
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<i32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<i32>;
|
||||||
|
|
||||||
fn textureDimensions_7bb707() {
|
fn textureDimensions_686ef2() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_7bb707();
|
textureDimensions_686ef2();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<u32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<u32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<u32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<u32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_5ec4e1() {
|
fn textureDimensions_88ad17() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<uint4> arg_0 : register(t0, space1);
|
TextureCube<uint4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_5ec4e1() {
|
void textureDimensions_88ad17() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_1ebd6a(texturecube<uint, access::sample> tint_symbol_2) {
|
void textureDimensions_88ad17(texturecube<uint, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_1ebd6a(tint_symbol_3);
|
textureDimensions_88ad17(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_1ebd6a(tint_symbol_4);
|
textureDimensions_88ad17(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_1ebd6a(tint_symbol_5);
|
textureDimensions_88ad17(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
; Bound: 40
|
; Bound: 40
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -15,7 +14,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_e22247 "textureDimensions_e22247"
|
OpName %textureDimensions_88ad17 "textureDimensions_88ad17"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,8 +29,8 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%int = OpTypeInt 32 1
|
%uint = OpTypeInt 32 0
|
||||||
%7 = OpTypeImage %int Cube 0 1 0 1 Unknown
|
%7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,18 +39,18 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%v3int = OpTypeVector %int 3
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%24 = OpConstantNull %v3int
|
%24 = OpConstantNull %v2int
|
||||||
%25 = OpTypeFunction %void %v4float
|
%25 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_e22247 = OpFunction %void None %13
|
%textureDimensions_88ad17 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
%res = OpVariable %_ptr_Function_v2int Function %24
|
||||||
%20 = OpLoad %7 %arg_0
|
%20 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_1
|
%17 = OpImageQuerySizeLod %v2int %20 %int_1
|
||||||
%17 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +63,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%30 = OpLabel
|
%30 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%32 = OpFunctionCall %void %textureDimensions_e22247
|
%32 = OpFunctionCall %void %textureDimensions_88ad17
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %12
|
%33 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%35 = OpLabel
|
%35 = OpLabel
|
||||||
%36 = OpFunctionCall %void %textureDimensions_e22247
|
%36 = OpFunctionCall %void %textureDimensions_88ad17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%38 = OpLabel
|
%38 = OpLabel
|
||||||
%39 = OpFunctionCall %void %textureDimensions_e22247
|
%39 = OpFunctionCall %void %textureDimensions_88ad17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<u32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<u32>;
|
||||||
|
|
||||||
fn textureDimensions_5ec4e1() {
|
fn textureDimensions_88ad17() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_5ec4e1();
|
textureDimensions_88ad17();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<f32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<f32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<f32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<f32>) -> vec2<i32>
|
||||||
fn textureDimensions_3e0403() {
|
fn textureDimensions_8f20bf() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<float4> arg_0 : register(t0, space1);
|
TextureCubeArray<float4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_3e0403() {
|
void textureDimensions_8f20bf() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_eda4e3(texturecube_array<float, access::sample> tint_symbol_2) {
|
void textureDimensions_8f20bf(texturecube_array<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_eda4e3(tint_symbol_3);
|
textureDimensions_8f20bf(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_eda4e3(tint_symbol_4);
|
textureDimensions_8f20bf(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_eda4e3(tint_symbol_5);
|
textureDimensions_8f20bf(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 41
|
; Bound: 41
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_f507c9 "textureDimensions_f507c9"
|
OpName %textureDimensions_8f20bf "textureDimensions_8f20bf"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%7 = OpTypeImage %float Cube 0 0 0 1 Unknown
|
%7 = OpTypeImage %float Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -39,19 +40,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%12 = OpTypeFunction %void
|
%12 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_f507c9 = OpFunction %void None %12
|
%textureDimensions_8f20bf = OpFunction %void None %12
|
||||||
%15 = OpLabel
|
%15 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_0
|
%19 = OpImageQuerySizeLod %v3int %21 %int_0
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
%16 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %16
|
OpStore %res %16
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %12
|
%vertex_main = OpFunction %void None %12
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_f507c9
|
%33 = OpFunctionCall %void %textureDimensions_8f20bf
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %12
|
%fragment_main = OpFunction %void None %12
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_f507c9
|
%37 = OpFunctionCall %void %textureDimensions_8f20bf
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %12
|
%compute_main = OpFunction %void None %12
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_f507c9
|
%40 = OpFunctionCall %void %textureDimensions_8f20bf
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<f32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<f32>;
|
||||||
|
|
||||||
fn textureDimensions_3e0403() {
|
fn textureDimensions_8f20bf() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_3e0403();
|
textureDimensions_8f20bf();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_depth_cube_array;
|
[[group(1), binding(0)]] var arg_0: texture_depth_cube_array;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_depth_cube_array) -> vec3<i32>
|
// fn textureDimensions(texture: texture_depth_cube_array) -> vec2<i32>
|
||||||
fn textureDimensions_bdf2ee() {
|
fn textureDimensions_90340b() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray arg_0 : register(t0, space1);
|
TextureCubeArray arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_bdf2ee() {
|
void textureDimensions_90340b() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_bdf2ee(depthcube_array<float, access::sample> tint_symbol_2) {
|
void textureDimensions_90340b(depthcube_array<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(depthcube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(depthcube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_bdf2ee(tint_symbol_3);
|
textureDimensions_90340b(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(depthcube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(depthcube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_bdf2ee(tint_symbol_4);
|
textureDimensions_90340b(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(depthcube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(depthcube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_bdf2ee(tint_symbol_5);
|
textureDimensions_90340b(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 41
|
; Bound: 41
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_76e722 "textureDimensions_76e722"
|
OpName %textureDimensions_90340b "textureDimensions_90340b"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%7 = OpTypeImage %float Cube 1 0 0 1 Unknown
|
%7 = OpTypeImage %float Cube 1 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -39,19 +40,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%12 = OpTypeFunction %void
|
%12 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_76e722 = OpFunction %void None %12
|
%textureDimensions_90340b = OpFunction %void None %12
|
||||||
%15 = OpLabel
|
%15 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_0
|
%19 = OpImageQuerySizeLod %v3int %21 %int_0
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
%16 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %16
|
OpStore %res %16
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %12
|
%vertex_main = OpFunction %void None %12
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_76e722
|
%33 = OpFunctionCall %void %textureDimensions_90340b
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %12
|
%fragment_main = OpFunction %void None %12
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_76e722
|
%37 = OpFunctionCall %void %textureDimensions_90340b
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %12
|
%compute_main = OpFunction %void None %12
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_76e722
|
%40 = OpFunctionCall %void %textureDimensions_90340b
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_depth_cube_array;
|
[[group(1), binding(0)]] var arg_0 : texture_depth_cube_array;
|
||||||
|
|
||||||
fn textureDimensions_bdf2ee() {
|
fn textureDimensions_90340b() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_bdf2ee();
|
textureDimensions_90340b();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_depth_cube;
|
[[group(1), binding(0)]] var arg_0: texture_depth_cube;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_depth_cube, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_a6ca1c() {
|
fn textureDimensions_9393b0() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube arg_0 : register(t0, space1);
|
TextureCube arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_a6ca1c() {
|
void textureDimensions_9393b0() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_a6ca1c(depthcube<float, access::sample> tint_symbol_2) {
|
void textureDimensions_9393b0(depthcube<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(depthcube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(depthcube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_a6ca1c(tint_symbol_3);
|
textureDimensions_9393b0(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(depthcube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(depthcube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_a6ca1c(tint_symbol_4);
|
textureDimensions_9393b0(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(depthcube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(depthcube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_a6ca1c(tint_symbol_5);
|
textureDimensions_9393b0(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
; SPIR-V
|
||||||
|
; Version: 1.3
|
||||||
|
; Generator: Google Tint Compiler; 0
|
||||||
|
; Bound: 39
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Shader
|
||||||
|
OpCapability ImageQuery
|
||||||
|
OpMemoryModel Logical GLSL450
|
||||||
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
OpEntryPoint Fragment %fragment_main "fragment_main"
|
||||||
|
OpEntryPoint GLCompute %compute_main "compute_main"
|
||||||
|
OpExecutionMode %fragment_main OriginUpperLeft
|
||||||
|
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||||
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
|
OpName %arg_0 "arg_0"
|
||||||
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
|
OpName %textureDimensions_9393b0 "textureDimensions_9393b0"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
OpName %vertex_main "vertex_main"
|
||||||
|
OpName %fragment_main "fragment_main"
|
||||||
|
OpName %compute_main "compute_main"
|
||||||
|
OpDecorate %tint_pointsize BuiltIn PointSize
|
||||||
|
OpDecorate %arg_0 DescriptorSet 1
|
||||||
|
OpDecorate %arg_0 Binding 0
|
||||||
|
OpDecorate %tint_symbol_1 BuiltIn Position
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
|
%4 = OpConstantNull %float
|
||||||
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
|
%7 = OpTypeImage %float Cube 1 0 0 1 Unknown
|
||||||
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
|
%v4float = OpTypeVector %float 4
|
||||||
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||||
|
%11 = OpConstantNull %v4float
|
||||||
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%12 = OpTypeFunction %void
|
||||||
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
|
%int_1 = OpConstant %int 1
|
||||||
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
|
%23 = OpConstantNull %v2int
|
||||||
|
%24 = OpTypeFunction %void %v4float
|
||||||
|
%float_1 = OpConstant %float 1
|
||||||
|
%textureDimensions_9393b0 = OpFunction %void None %12
|
||||||
|
%15 = OpLabel
|
||||||
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
|
%19 = OpLoad %7 %arg_0
|
||||||
|
%16 = OpImageQuerySizeLod %v2int %19 %int_1
|
||||||
|
OpStore %res %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
|
%27 = OpLabel
|
||||||
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%vertex_main = OpFunction %void None %12
|
||||||
|
%29 = OpLabel
|
||||||
|
OpStore %tint_pointsize %float_1
|
||||||
|
%31 = OpFunctionCall %void %textureDimensions_9393b0
|
||||||
|
%32 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%fragment_main = OpFunction %void None %12
|
||||||
|
%34 = OpLabel
|
||||||
|
%35 = OpFunctionCall %void %textureDimensions_9393b0
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%compute_main = OpFunction %void None %12
|
||||||
|
%37 = OpLabel
|
||||||
|
%38 = OpFunctionCall %void %textureDimensions_9393b0
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_depth_cube;
|
[[group(1), binding(0)]] var arg_0 : texture_depth_cube;
|
||||||
|
|
||||||
fn textureDimensions_a6ca1c() {
|
fn textureDimensions_9393b0() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_a6ca1c();
|
textureDimensions_9393b0();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<i32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<i32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<i32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<i32>) -> vec2<i32>
|
||||||
fn textureDimensions_cccc17() {
|
fn textureDimensions_962dcd() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<int4> arg_0 : register(t0, space1);
|
TextureCube<int4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_cccc17() {
|
void textureDimensions_962dcd() {
|
||||||
int2 tint_tmp;
|
int2 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_7bb707(texturecube<int, access::sample> tint_symbol_2) {
|
void textureDimensions_962dcd(texturecube<int, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_7bb707(tint_symbol_3);
|
textureDimensions_962dcd(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_7bb707(tint_symbol_4);
|
textureDimensions_962dcd(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_7bb707(tint_symbol_5);
|
textureDimensions_962dcd(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
; SPIR-V
|
; SPIR-V
|
||||||
; Version: 1.3
|
; Version: 1.3
|
||||||
; Generator: Google Tint Compiler; 0
|
; Generator: Google Tint Compiler; 0
|
||||||
; Bound: 41
|
; Bound: 39
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_cccc17 "textureDimensions_cccc17"
|
OpName %textureDimensions_962dcd "textureDimensions_962dcd"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -39,42 +39,40 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%23 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%24 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_cccc17 = OpFunction %void None %13
|
%textureDimensions_962dcd = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
%21 = OpLoad %7 %arg_0
|
%19 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_0
|
%17 = OpImageQuerySizeLod %v2int %19 %int_0
|
||||||
%17 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%tint_symbol_2 = OpFunction %void None %26
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
%29 = OpLabel
|
%27 = OpLabel
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%31 = OpLabel
|
%29 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_cccc17
|
%31 = OpFunctionCall %void %textureDimensions_962dcd
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
%32 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%36 = OpLabel
|
%34 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_cccc17
|
%35 = OpFunctionCall %void %textureDimensions_962dcd
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%39 = OpLabel
|
%37 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_cccc17
|
%38 = OpFunctionCall %void %textureDimensions_962dcd
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<i32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<i32>;
|
||||||
|
|
||||||
fn textureDimensions_cccc17() {
|
fn textureDimensions_962dcd() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_cccc17();
|
textureDimensions_962dcd();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_depth_cube_array;
|
[[group(1), binding(0)]] var arg_0: texture_depth_cube_array;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_depth_cube_array, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_3e626d() {
|
fn textureDimensions_a01845() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray arg_0 : register(t0, space1);
|
TextureCubeArray arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_3e626d() {
|
void textureDimensions_a01845() {
|
||||||
int4 tint_tmp;
|
int4 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_3e626d(depthcube_array<float, access::sample> tint_symbol_2) {
|
void textureDimensions_a01845(depthcube_array<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(depthcube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(depthcube_array<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_3e626d(tint_symbol_3);
|
textureDimensions_a01845(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(depthcube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(depthcube_array<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_3e626d(tint_symbol_4);
|
textureDimensions_a01845(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(depthcube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(depthcube_array<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_3e626d(tint_symbol_5);
|
textureDimensions_a01845(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 41
|
; Bound: 41
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_a6ca1c "textureDimensions_a6ca1c"
|
OpName %textureDimensions_a01845 "textureDimensions_a01845"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%7 = OpTypeImage %float Cube 1 0 0 1 Unknown
|
%7 = OpTypeImage %float Cube 1 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -39,19 +40,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%12 = OpTypeFunction %void
|
%12 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_a6ca1c = OpFunction %void None %12
|
%textureDimensions_a01845 = OpFunction %void None %12
|
||||||
%15 = OpLabel
|
%15 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v2int %21 %int_1
|
%19 = OpImageQuerySizeLod %v3int %21 %int_1
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
%16 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %16
|
OpStore %res %16
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %12
|
%vertex_main = OpFunction %void None %12
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_a6ca1c
|
%33 = OpFunctionCall %void %textureDimensions_a01845
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
%34 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %12
|
%fragment_main = OpFunction %void None %12
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_a6ca1c
|
%37 = OpFunctionCall %void %textureDimensions_a01845
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %12
|
%compute_main = OpFunction %void None %12
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_a6ca1c
|
%40 = OpFunctionCall %void %textureDimensions_a01845
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_depth_cube_array;
|
[[group(1), binding(0)]] var arg_0 : texture_depth_cube_array;
|
||||||
|
|
||||||
fn textureDimensions_3e626d() {
|
fn textureDimensions_a01845() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_3e626d();
|
textureDimensions_a01845();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<f32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<f32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<f32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<f32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_75be9d() {
|
fn textureDimensions_a9c9c1() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<float4> arg_0 : register(t0, space1);
|
TextureCube<float4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_75be9d() {
|
void textureDimensions_a9c9c1() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_f507c9(texturecube<float, access::sample> tint_symbol_2) {
|
void textureDimensions_a9c9c1(texturecube<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(), tint_symbol_2.get_height(), tint_symbol_2.get_height());
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_f507c9(tint_symbol_3);
|
textureDimensions_a9c9c1(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_f507c9(tint_symbol_4);
|
textureDimensions_a9c9c1(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_f507c9(tint_symbol_5);
|
textureDimensions_a9c9c1(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
; SPIR-V
|
||||||
|
; Version: 1.3
|
||||||
|
; Generator: Google Tint Compiler; 0
|
||||||
|
; Bound: 39
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Shader
|
||||||
|
OpCapability ImageQuery
|
||||||
|
OpMemoryModel Logical GLSL450
|
||||||
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
OpEntryPoint Fragment %fragment_main "fragment_main"
|
||||||
|
OpEntryPoint GLCompute %compute_main "compute_main"
|
||||||
|
OpExecutionMode %fragment_main OriginUpperLeft
|
||||||
|
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||||
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
|
OpName %arg_0 "arg_0"
|
||||||
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
|
OpName %textureDimensions_a9c9c1 "textureDimensions_a9c9c1"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
OpName %vertex_main "vertex_main"
|
||||||
|
OpName %fragment_main "fragment_main"
|
||||||
|
OpName %compute_main "compute_main"
|
||||||
|
OpDecorate %tint_pointsize BuiltIn PointSize
|
||||||
|
OpDecorate %arg_0 DescriptorSet 1
|
||||||
|
OpDecorate %arg_0 Binding 0
|
||||||
|
OpDecorate %tint_symbol_1 BuiltIn Position
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
|
%4 = OpConstantNull %float
|
||||||
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
|
%7 = OpTypeImage %float Cube 0 0 0 1 Unknown
|
||||||
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
|
%v4float = OpTypeVector %float 4
|
||||||
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||||
|
%11 = OpConstantNull %v4float
|
||||||
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%12 = OpTypeFunction %void
|
||||||
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
|
%int_1 = OpConstant %int 1
|
||||||
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
|
%23 = OpConstantNull %v2int
|
||||||
|
%24 = OpTypeFunction %void %v4float
|
||||||
|
%float_1 = OpConstant %float 1
|
||||||
|
%textureDimensions_a9c9c1 = OpFunction %void None %12
|
||||||
|
%15 = OpLabel
|
||||||
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
|
%19 = OpLoad %7 %arg_0
|
||||||
|
%16 = OpImageQuerySizeLod %v2int %19 %int_1
|
||||||
|
OpStore %res %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
|
%27 = OpLabel
|
||||||
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%vertex_main = OpFunction %void None %12
|
||||||
|
%29 = OpLabel
|
||||||
|
OpStore %tint_pointsize %float_1
|
||||||
|
%31 = OpFunctionCall %void %textureDimensions_a9c9c1
|
||||||
|
%32 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%fragment_main = OpFunction %void None %12
|
||||||
|
%34 = OpLabel
|
||||||
|
%35 = OpFunctionCall %void %textureDimensions_a9c9c1
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%compute_main = OpFunction %void None %12
|
||||||
|
%37 = OpLabel
|
||||||
|
%38 = OpFunctionCall %void %textureDimensions_a9c9c1
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<f32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<f32>;
|
||||||
|
|
||||||
fn textureDimensions_75be9d() {
|
fn textureDimensions_a9c9c1() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_75be9d();
|
textureDimensions_a9c9c1();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<u32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<u32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<u32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<u32>) -> vec2<i32>
|
||||||
fn textureDimensions_1ebd6a() {
|
fn textureDimensions_b3c954() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<uint4> arg_0 : register(t0, space1);
|
TextureCube<uint4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_1ebd6a() {
|
void textureDimensions_b3c954() {
|
||||||
int2 tint_tmp;
|
int2 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_5ec4e1(texturecube<uint, access::sample> tint_symbol_2) {
|
void textureDimensions_b3c954(texturecube<uint, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_5ec4e1(tint_symbol_3);
|
textureDimensions_b3c954(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_5ec4e1(tint_symbol_4);
|
textureDimensions_b3c954(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_5ec4e1(tint_symbol_5);
|
textureDimensions_b3c954(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
; Bound: 40
|
; Bound: 40
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -15,7 +14,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_f70326 "textureDimensions_f70326"
|
OpName %textureDimensions_b3c954 "textureDimensions_b3c954"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,8 +29,8 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%int = OpTypeInt 32 1
|
%uint = OpTypeInt 32 0
|
||||||
%7 = OpTypeImage %int Cube 0 1 0 1 Unknown
|
%7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,18 +39,18 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%v3int = OpTypeVector %int 3
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%24 = OpConstantNull %v3int
|
%24 = OpConstantNull %v2int
|
||||||
%25 = OpTypeFunction %void %v4float
|
%25 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_f70326 = OpFunction %void None %13
|
%textureDimensions_b3c954 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
%res = OpVariable %_ptr_Function_v2int Function %24
|
||||||
%20 = OpLoad %7 %arg_0
|
%20 = OpLoad %7 %arg_0
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_0
|
%17 = OpImageQuerySizeLod %v2int %20 %int_0
|
||||||
%17 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -64,17 +63,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%30 = OpLabel
|
%30 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%32 = OpFunctionCall %void %textureDimensions_f70326
|
%32 = OpFunctionCall %void %textureDimensions_b3c954
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %12
|
%33 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%35 = OpLabel
|
%35 = OpLabel
|
||||||
%36 = OpFunctionCall %void %textureDimensions_f70326
|
%36 = OpFunctionCall %void %textureDimensions_b3c954
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%38 = OpLabel
|
%38 = OpLabel
|
||||||
%39 = OpFunctionCall %void %textureDimensions_f70326
|
%39 = OpFunctionCall %void %textureDimensions_b3c954
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<u32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<u32>;
|
||||||
|
|
||||||
fn textureDimensions_1ebd6a() {
|
fn textureDimensions_b3c954() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_1ebd6a();
|
textureDimensions_b3c954();
|
||||||
}
|
}
|
|
@ -1,80 +0,0 @@
|
||||||
; SPIR-V
|
|
||||||
; Version: 1.3
|
|
||||||
; Generator: Google Tint Compiler; 0
|
|
||||||
; Bound: 40
|
|
||||||
; Schema: 0
|
|
||||||
OpCapability Shader
|
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
|
||||||
OpMemoryModel Logical GLSL450
|
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
|
||||||
OpEntryPoint Fragment %fragment_main "fragment_main"
|
|
||||||
OpEntryPoint GLCompute %compute_main "compute_main"
|
|
||||||
OpExecutionMode %fragment_main OriginUpperLeft
|
|
||||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
|
||||||
OpName %arg_0 "arg_0"
|
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
|
||||||
OpName %textureDimensions_bdf2ee "textureDimensions_bdf2ee"
|
|
||||||
OpName %res "res"
|
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
|
||||||
OpName %tint_symbol "tint_symbol"
|
|
||||||
OpName %vertex_main "vertex_main"
|
|
||||||
OpName %fragment_main "fragment_main"
|
|
||||||
OpName %compute_main "compute_main"
|
|
||||||
OpDecorate %tint_pointsize BuiltIn PointSize
|
|
||||||
OpDecorate %arg_0 DescriptorSet 1
|
|
||||||
OpDecorate %arg_0 Binding 0
|
|
||||||
OpDecorate %tint_symbol_1 BuiltIn Position
|
|
||||||
%float = OpTypeFloat 32
|
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
|
||||||
%4 = OpConstantNull %float
|
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
|
||||||
%7 = OpTypeImage %float Cube 1 1 0 1 Unknown
|
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
|
||||||
%v4float = OpTypeVector %float 4
|
|
||||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
||||||
%11 = OpConstantNull %v4float
|
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
|
||||||
%void = OpTypeVoid
|
|
||||||
%12 = OpTypeFunction %void
|
|
||||||
%int = OpTypeInt 32 1
|
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%int_0 = OpConstant %int 0
|
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
|
||||||
%24 = OpConstantNull %v3int
|
|
||||||
%25 = OpTypeFunction %void %v4float
|
|
||||||
%float_1 = OpConstant %float 1
|
|
||||||
%textureDimensions_bdf2ee = OpFunction %void None %12
|
|
||||||
%15 = OpLabel
|
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
|
||||||
%20 = OpLoad %7 %arg_0
|
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_0
|
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %16
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%tint_symbol_2 = OpFunction %void None %25
|
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
|
||||||
%28 = OpLabel
|
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%vertex_main = OpFunction %void None %12
|
|
||||||
%30 = OpLabel
|
|
||||||
OpStore %tint_pointsize %float_1
|
|
||||||
%32 = OpFunctionCall %void %textureDimensions_bdf2ee
|
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %11
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%fragment_main = OpFunction %void None %12
|
|
||||||
%35 = OpLabel
|
|
||||||
%36 = OpFunctionCall %void %textureDimensions_bdf2ee
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%compute_main = OpFunction %void None %12
|
|
||||||
%38 = OpLabel
|
|
||||||
%39 = OpFunctionCall %void %textureDimensions_bdf2ee
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube<f32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube<f32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube<f32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube<f32>) -> vec2<i32>
|
||||||
fn textureDimensions_f507c9() {
|
fn textureDimensions_d125bc() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCube<float4> arg_0 : register(t0, space1);
|
TextureCube<float4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_f507c9() {
|
void textureDimensions_d125bc() {
|
||||||
int2 tint_tmp;
|
int2 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_75be9d(texturecube<float, access::sample> tint_symbol_2) {
|
void textureDimensions_d125bc(texturecube<float, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube<float, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_75be9d(tint_symbol_3);
|
textureDimensions_d125bc(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube<float, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_75be9d(tint_symbol_4);
|
textureDimensions_d125bc(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube<float, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_75be9d(tint_symbol_5);
|
textureDimensions_d125bc(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
; SPIR-V
|
||||||
|
; Version: 1.3
|
||||||
|
; Generator: Google Tint Compiler; 0
|
||||||
|
; Bound: 39
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Shader
|
||||||
|
OpCapability ImageQuery
|
||||||
|
OpMemoryModel Logical GLSL450
|
||||||
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
OpEntryPoint Fragment %fragment_main "fragment_main"
|
||||||
|
OpEntryPoint GLCompute %compute_main "compute_main"
|
||||||
|
OpExecutionMode %fragment_main OriginUpperLeft
|
||||||
|
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||||
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
|
OpName %arg_0 "arg_0"
|
||||||
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
|
OpName %textureDimensions_d125bc "textureDimensions_d125bc"
|
||||||
|
OpName %res "res"
|
||||||
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
OpName %vertex_main "vertex_main"
|
||||||
|
OpName %fragment_main "fragment_main"
|
||||||
|
OpName %compute_main "compute_main"
|
||||||
|
OpDecorate %tint_pointsize BuiltIn PointSize
|
||||||
|
OpDecorate %arg_0 DescriptorSet 1
|
||||||
|
OpDecorate %arg_0 Binding 0
|
||||||
|
OpDecorate %tint_symbol_1 BuiltIn Position
|
||||||
|
%float = OpTypeFloat 32
|
||||||
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
|
%4 = OpConstantNull %float
|
||||||
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
|
%7 = OpTypeImage %float Cube 0 0 0 1 Unknown
|
||||||
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
|
%v4float = OpTypeVector %float 4
|
||||||
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||||
|
%11 = OpConstantNull %v4float
|
||||||
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
||||||
|
%void = OpTypeVoid
|
||||||
|
%12 = OpTypeFunction %void
|
||||||
|
%int = OpTypeInt 32 1
|
||||||
|
%v2int = OpTypeVector %int 2
|
||||||
|
%int_0 = OpConstant %int 0
|
||||||
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
|
%23 = OpConstantNull %v2int
|
||||||
|
%24 = OpTypeFunction %void %v4float
|
||||||
|
%float_1 = OpConstant %float 1
|
||||||
|
%textureDimensions_d125bc = OpFunction %void None %12
|
||||||
|
%15 = OpLabel
|
||||||
|
%res = OpVariable %_ptr_Function_v2int Function %23
|
||||||
|
%19 = OpLoad %7 %arg_0
|
||||||
|
%16 = OpImageQuerySizeLod %v2int %19 %int_0
|
||||||
|
OpStore %res %16
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%tint_symbol_2 = OpFunction %void None %24
|
||||||
|
%tint_symbol = OpFunctionParameter %v4float
|
||||||
|
%27 = OpLabel
|
||||||
|
OpStore %tint_symbol_1 %tint_symbol
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%vertex_main = OpFunction %void None %12
|
||||||
|
%29 = OpLabel
|
||||||
|
OpStore %tint_pointsize %float_1
|
||||||
|
%31 = OpFunctionCall %void %textureDimensions_d125bc
|
||||||
|
%32 = OpFunctionCall %void %tint_symbol_2 %11
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%fragment_main = OpFunction %void None %12
|
||||||
|
%34 = OpLabel
|
||||||
|
%35 = OpFunctionCall %void %textureDimensions_d125bc
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
||||||
|
%compute_main = OpFunction %void None %12
|
||||||
|
%37 = OpLabel
|
||||||
|
%38 = OpFunctionCall %void %textureDimensions_d125bc
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube<f32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube<f32>;
|
||||||
|
|
||||||
fn textureDimensions_f507c9() {
|
fn textureDimensions_d125bc() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_f507c9();
|
textureDimensions_d125bc();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<u32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<u32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<u32>, level: i32) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<u32>, level: i32) -> vec2<i32>
|
||||||
fn textureDimensions_91f42d() {
|
fn textureDimensions_d83c45() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0, 1);
|
var res: vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<uint4> arg_0 : register(t0, space1);
|
TextureCubeArray<uint4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_91f42d() {
|
void textureDimensions_d83c45() {
|
||||||
int4 tint_tmp;
|
int4 tint_tmp;
|
||||||
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
arg_0.GetDimensions(1, tint_tmp.x, tint_tmp.y, tint_tmp.z, tint_tmp.w);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_91f42d(texturecube_array<uint, access::sample> tint_symbol_2) {
|
void textureDimensions_d83c45(texturecube_array<uint, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<uint, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_91f42d(tint_symbol_3);
|
textureDimensions_d83c45(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<uint, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_91f42d(tint_symbol_4);
|
textureDimensions_d83c45(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<uint, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_91f42d(tint_symbol_5);
|
textureDimensions_d83c45(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
; Bound: 42
|
; Bound: 42
|
||||||
; Schema: 0
|
; Schema: 0
|
||||||
OpCapability Shader
|
OpCapability Shader
|
||||||
|
OpCapability SampledCubeArray
|
||||||
OpCapability ImageQuery
|
OpCapability ImageQuery
|
||||||
OpMemoryModel Logical GLSL450
|
OpMemoryModel Logical GLSL450
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_5ec4e1 "textureDimensions_5ec4e1"
|
OpName %textureDimensions_d83c45 "textureDimensions_d83c45"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,7 +31,7 @@
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%uint = OpTypeInt 32 0
|
%uint = OpTypeInt 32 0
|
||||||
%7 = OpTypeImage %uint Cube 0 0 0 1 Unknown
|
%7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,19 +41,19 @@
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%int = OpTypeInt 32 1
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%v2int = OpTypeVector %int 2
|
%v2int = OpTypeVector %int 2
|
||||||
|
%v3int = OpTypeVector %int 3
|
||||||
%int_1 = OpConstant %int 1
|
%int_1 = OpConstant %int 1
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%26 = OpConstantNull %v3int
|
%26 = OpConstantNull %v2int
|
||||||
%27 = OpTypeFunction %void %v4float
|
%27 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_5ec4e1 = OpFunction %void None %13
|
%textureDimensions_d83c45 = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %26
|
%res = OpVariable %_ptr_Function_v2int Function %26
|
||||||
%22 = OpLoad %7 %arg_0
|
%22 = OpLoad %7 %arg_0
|
||||||
%20 = OpImageQuerySizeLod %v2int %22 %int_1
|
%20 = OpImageQuerySizeLod %v3int %22 %int_1
|
||||||
%17 = OpVectorShuffle %v3int %20 %20 0 1 1
|
%17 = OpVectorShuffle %v2int %20 %20 0 1
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -65,17 +66,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%32 = OpLabel
|
%32 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%34 = OpFunctionCall %void %textureDimensions_5ec4e1
|
%34 = OpFunctionCall %void %textureDimensions_d83c45
|
||||||
%35 = OpFunctionCall %void %tint_symbol_2 %12
|
%35 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%37 = OpLabel
|
%37 = OpLabel
|
||||||
%38 = OpFunctionCall %void %textureDimensions_5ec4e1
|
%38 = OpFunctionCall %void %textureDimensions_d83c45
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%40 = OpLabel
|
%40 = OpLabel
|
||||||
%41 = OpFunctionCall %void %textureDimensions_5ec4e1
|
%41 = OpFunctionCall %void %textureDimensions_d83c45
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<u32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<u32>;
|
||||||
|
|
||||||
fn textureDimensions_91f42d() {
|
fn textureDimensions_d83c45() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0, 1);
|
var res : vec2<i32> = textureDimensions(arg_0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_91f42d();
|
textureDimensions_d83c45();
|
||||||
}
|
}
|
|
@ -24,23 +24,23 @@
|
||||||
|
|
||||||
[[group(1), binding(0)]] var arg_0: texture_cube_array<i32>;
|
[[group(1), binding(0)]] var arg_0: texture_cube_array<i32>;
|
||||||
|
|
||||||
// fn textureDimensions(texture: texture_cube_array<i32>) -> vec3<i32>
|
// fn textureDimensions(texture: texture_cube_array<i32>) -> vec2<i32>
|
||||||
fn textureDimensions_f70326() {
|
fn textureDimensions_e927be() {
|
||||||
var res: vec3<i32> = textureDimensions(arg_0);
|
var res: vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
}
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
TextureCubeArray<int4> arg_0 : register(t0, space1);
|
TextureCubeArray<int4> arg_0 : register(t0, space1);
|
||||||
|
|
||||||
void textureDimensions_f70326() {
|
void textureDimensions_e927be() {
|
||||||
int3 tint_tmp;
|
int3 tint_tmp;
|
||||||
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
arg_0.GetDimensions(tint_tmp.x, tint_tmp.y, tint_tmp.z);
|
||||||
int3 res = tint_tmp.xyy;
|
int2 res = tint_tmp.xy;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tint_symbol {
|
struct tint_symbol {
|
||||||
|
@ -11,18 +11,18 @@ struct tint_symbol {
|
||||||
};
|
};
|
||||||
|
|
||||||
tint_symbol vertex_main() {
|
tint_symbol vertex_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment_main() {
|
void fragment_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
[numthreads(1, 1, 1)]
|
[numthreads(1, 1, 1)]
|
||||||
void compute_main() {
|
void compute_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
|
@ -5,23 +5,23 @@ struct tint_symbol {
|
||||||
float4 value [[position]];
|
float4 value [[position]];
|
||||||
};
|
};
|
||||||
|
|
||||||
void textureDimensions_e22247(texturecube_array<int, access::sample> tint_symbol_2) {
|
void textureDimensions_e927be(texturecube_array<int, access::sample> tint_symbol_2) {
|
||||||
int3 res = int3(tint_symbol_2.get_width(1), tint_symbol_2.get_height(1), tint_symbol_2.get_height(1));
|
int2 res = int2(tint_symbol_2.get_width(), tint_symbol_2.get_height());
|
||||||
}
|
}
|
||||||
|
|
||||||
vertex tint_symbol vertex_main(texturecube_array<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
vertex tint_symbol vertex_main(texturecube_array<int, access::sample> tint_symbol_3 [[texture(0)]]) {
|
||||||
textureDimensions_e22247(tint_symbol_3);
|
textureDimensions_e927be(tint_symbol_3);
|
||||||
tint_symbol const tint_symbol_1 = {.value=float4()};
|
tint_symbol const tint_symbol_1 = {.value=float4()};
|
||||||
return tint_symbol_1;
|
return tint_symbol_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fragment void fragment_main(texturecube_array<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
fragment void fragment_main(texturecube_array<int, access::sample> tint_symbol_4 [[texture(0)]]) {
|
||||||
textureDimensions_e22247(tint_symbol_4);
|
textureDimensions_e927be(tint_symbol_4);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
kernel void compute_main(texturecube_array<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
kernel void compute_main(texturecube_array<int, access::sample> tint_symbol_5 [[texture(0)]]) {
|
||||||
textureDimensions_e22247(tint_symbol_5);
|
textureDimensions_e927be(tint_symbol_5);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
OpName %tint_pointsize "tint_pointsize"
|
||||||
OpName %arg_0 "arg_0"
|
OpName %arg_0 "arg_0"
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
OpName %tint_symbol_1 "tint_symbol_1"
|
||||||
OpName %textureDimensions_183b3e "textureDimensions_183b3e"
|
OpName %textureDimensions_e927be "textureDimensions_e927be"
|
||||||
OpName %res "res"
|
OpName %res "res"
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
OpName %tint_symbol_2 "tint_symbol_2"
|
||||||
OpName %tint_symbol "tint_symbol"
|
OpName %tint_symbol "tint_symbol"
|
||||||
|
@ -30,8 +30,8 @@
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
%_ptr_Output_float = OpTypePointer Output %float
|
||||||
%4 = OpConstantNull %float
|
%4 = OpConstantNull %float
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
||||||
%uint = OpTypeInt 32 0
|
%int = OpTypeInt 32 1
|
||||||
%7 = OpTypeImage %uint Cube 0 1 0 1 Unknown
|
%7 = OpTypeImage %int Cube 0 1 0 1 Unknown
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
||||||
%v4float = OpTypeVector %float 4
|
%v4float = OpTypeVector %float 4
|
||||||
|
@ -40,19 +40,19 @@
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %12
|
||||||
%void = OpTypeVoid
|
%void = OpTypeVoid
|
||||||
%13 = OpTypeFunction %void
|
%13 = OpTypeFunction %void
|
||||||
%int = OpTypeInt 32 1
|
%v2int = OpTypeVector %int 2
|
||||||
%v3int = OpTypeVector %int 3
|
%v3int = OpTypeVector %int 3
|
||||||
%int_0 = OpConstant %int 0
|
%int_0 = OpConstant %int 0
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
%_ptr_Function_v2int = OpTypePointer Function %v2int
|
||||||
%25 = OpConstantNull %v3int
|
%25 = OpConstantNull %v2int
|
||||||
%26 = OpTypeFunction %void %v4float
|
%26 = OpTypeFunction %void %v4float
|
||||||
%float_1 = OpConstant %float 1
|
%float_1 = OpConstant %float 1
|
||||||
%textureDimensions_183b3e = OpFunction %void None %13
|
%textureDimensions_e927be = OpFunction %void None %13
|
||||||
%16 = OpLabel
|
%16 = OpLabel
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %25
|
%res = OpVariable %_ptr_Function_v2int Function %25
|
||||||
%21 = OpLoad %7 %arg_0
|
%21 = OpLoad %7 %arg_0
|
||||||
%20 = OpImageQuerySizeLod %v3int %21 %int_0
|
%19 = OpImageQuerySizeLod %v3int %21 %int_0
|
||||||
%17 = OpVectorShuffle %v3int %20 %20 0 1 1
|
%17 = OpVectorShuffle %v2int %19 %19 0 1
|
||||||
OpStore %res %17
|
OpStore %res %17
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
|
@ -65,17 +65,17 @@
|
||||||
%vertex_main = OpFunction %void None %13
|
%vertex_main = OpFunction %void None %13
|
||||||
%31 = OpLabel
|
%31 = OpLabel
|
||||||
OpStore %tint_pointsize %float_1
|
OpStore %tint_pointsize %float_1
|
||||||
%33 = OpFunctionCall %void %textureDimensions_183b3e
|
%33 = OpFunctionCall %void %textureDimensions_e927be
|
||||||
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
%34 = OpFunctionCall %void %tint_symbol_2 %12
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%fragment_main = OpFunction %void None %13
|
%fragment_main = OpFunction %void None %13
|
||||||
%36 = OpLabel
|
%36 = OpLabel
|
||||||
%37 = OpFunctionCall %void %textureDimensions_183b3e
|
%37 = OpFunctionCall %void %textureDimensions_e927be
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
||||||
%compute_main = OpFunction %void None %13
|
%compute_main = OpFunction %void None %13
|
||||||
%39 = OpLabel
|
%39 = OpLabel
|
||||||
%40 = OpFunctionCall %void %textureDimensions_183b3e
|
%40 = OpFunctionCall %void %textureDimensions_e927be
|
||||||
OpReturn
|
OpReturn
|
||||||
OpFunctionEnd
|
OpFunctionEnd
|
|
@ -1,21 +1,21 @@
|
||||||
[[group(1), binding(0)]] var arg_0 : texture_cube_array<i32>;
|
[[group(1), binding(0)]] var arg_0 : texture_cube_array<i32>;
|
||||||
|
|
||||||
fn textureDimensions_f70326() {
|
fn textureDimensions_e927be() {
|
||||||
var res : vec3<i32> = textureDimensions(arg_0);
|
var res : vec2<i32> = textureDimensions(arg_0);
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(vertex)]]
|
[[stage(vertex)]]
|
||||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
return vec4<f32>();
|
return vec4<f32>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(fragment)]]
|
[[stage(fragment)]]
|
||||||
fn fragment_main() {
|
fn fragment_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[stage(compute)]]
|
[[stage(compute)]]
|
||||||
fn compute_main() {
|
fn compute_main() {
|
||||||
textureDimensions_f70326();
|
textureDimensions_e927be();
|
||||||
}
|
}
|
|
@ -1,80 +0,0 @@
|
||||||
; SPIR-V
|
|
||||||
; Version: 1.3
|
|
||||||
; Generator: Google Tint Compiler; 0
|
|
||||||
; Bound: 40
|
|
||||||
; Schema: 0
|
|
||||||
OpCapability Shader
|
|
||||||
OpCapability SampledCubeArray
|
|
||||||
OpCapability ImageQuery
|
|
||||||
OpMemoryModel Logical GLSL450
|
|
||||||
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
|
|
||||||
OpEntryPoint Fragment %fragment_main "fragment_main"
|
|
||||||
OpEntryPoint GLCompute %compute_main "compute_main"
|
|
||||||
OpExecutionMode %fragment_main OriginUpperLeft
|
|
||||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
|
||||||
OpName %tint_pointsize "tint_pointsize"
|
|
||||||
OpName %arg_0 "arg_0"
|
|
||||||
OpName %tint_symbol_1 "tint_symbol_1"
|
|
||||||
OpName %textureDimensions_eda4e3 "textureDimensions_eda4e3"
|
|
||||||
OpName %res "res"
|
|
||||||
OpName %tint_symbol_2 "tint_symbol_2"
|
|
||||||
OpName %tint_symbol "tint_symbol"
|
|
||||||
OpName %vertex_main "vertex_main"
|
|
||||||
OpName %fragment_main "fragment_main"
|
|
||||||
OpName %compute_main "compute_main"
|
|
||||||
OpDecorate %tint_pointsize BuiltIn PointSize
|
|
||||||
OpDecorate %arg_0 DescriptorSet 1
|
|
||||||
OpDecorate %arg_0 Binding 0
|
|
||||||
OpDecorate %tint_symbol_1 BuiltIn Position
|
|
||||||
%float = OpTypeFloat 32
|
|
||||||
%_ptr_Output_float = OpTypePointer Output %float
|
|
||||||
%4 = OpConstantNull %float
|
|
||||||
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
|
||||||
%7 = OpTypeImage %float Cube 0 1 0 1 Unknown
|
|
||||||
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
|
|
||||||
%arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
|
|
||||||
%v4float = OpTypeVector %float 4
|
|
||||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
||||||
%11 = OpConstantNull %v4float
|
|
||||||
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %11
|
|
||||||
%void = OpTypeVoid
|
|
||||||
%12 = OpTypeFunction %void
|
|
||||||
%int = OpTypeInt 32 1
|
|
||||||
%v3int = OpTypeVector %int 3
|
|
||||||
%int_1 = OpConstant %int 1
|
|
||||||
%_ptr_Function_v3int = OpTypePointer Function %v3int
|
|
||||||
%24 = OpConstantNull %v3int
|
|
||||||
%25 = OpTypeFunction %void %v4float
|
|
||||||
%float_1 = OpConstant %float 1
|
|
||||||
%textureDimensions_eda4e3 = OpFunction %void None %12
|
|
||||||
%15 = OpLabel
|
|
||||||
%res = OpVariable %_ptr_Function_v3int Function %24
|
|
||||||
%20 = OpLoad %7 %arg_0
|
|
||||||
%19 = OpImageQuerySizeLod %v3int %20 %int_1
|
|
||||||
%16 = OpVectorShuffle %v3int %19 %19 0 1 1
|
|
||||||
OpStore %res %16
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%tint_symbol_2 = OpFunction %void None %25
|
|
||||||
%tint_symbol = OpFunctionParameter %v4float
|
|
||||||
%28 = OpLabel
|
|
||||||
OpStore %tint_symbol_1 %tint_symbol
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%vertex_main = OpFunction %void None %12
|
|
||||||
%30 = OpLabel
|
|
||||||
OpStore %tint_pointsize %float_1
|
|
||||||
%32 = OpFunctionCall %void %textureDimensions_eda4e3
|
|
||||||
%33 = OpFunctionCall %void %tint_symbol_2 %11
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%fragment_main = OpFunction %void None %12
|
|
||||||
%35 = OpLabel
|
|
||||||
%36 = OpFunctionCall %void %textureDimensions_eda4e3
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
||||||
%compute_main = OpFunction %void None %12
|
|
||||||
%38 = OpLabel
|
|
||||||
%39 = OpFunctionCall %void %textureDimensions_eda4e3
|
|
||||||
OpReturn
|
|
||||||
OpFunctionEnd
|
|
Loading…
Reference in New Issue