wgpu/naga/tests/out/msl/constructors.msl
Samson 105cb9db31
[naga wgsl-in] Proper singular generic in vec and matrix (#6189)
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-09-02 14:04:51 +02:00

45 lines
1.5 KiB
Plaintext

// language: metal1.0
#include <metal_stdlib>
#include <simd/simd.h>
using metal::uint;
struct Foo {
metal::float4 a;
int b;
};
struct type_6 {
metal::float2x2 inner[1];
};
struct type_10 {
Foo inner[3];
};
struct type_11 {
int inner[4];
};
constant metal::float3 const2_ = metal::float3(0.0, 1.0, 2.0);
constant metal::float2x2 const3_ = metal::float2x2(metal::float2(0.0, 1.0), metal::float2(2.0, 3.0));
constant type_6 const4_ = type_6 {metal::float2x2(metal::float2(0.0, 1.0), metal::float2(2.0, 3.0))};
constant bool cz0_ = bool {};
constant int cz1_ = int {};
constant uint cz2_ = uint {};
constant float cz3_ = float {};
constant metal::uint2 cz4_ = metal::uint2 {};
constant metal::float2x2 cz5_ = metal::float2x2 {};
constant type_10 cz6_ = type_10 {};
constant Foo cz7_ = Foo {};
constant type_11 cp3_ = type_11 {0, 1, 2, 3};
kernel void main_(
) {
Foo foo = {};
foo = Foo {metal::float4(1.0), 1};
metal::float2x2 m0_ = metal::float2x2(metal::float2(1.0, 0.0), metal::float2(0.0, 1.0));
metal::float4x4 m1_ = metal::float4x4(metal::float4(1.0, 0.0, 0.0, 0.0), metal::float4(0.0, 1.0, 0.0, 0.0), metal::float4(0.0, 0.0, 1.0, 0.0), metal::float4(0.0, 0.0, 0.0, 1.0));
metal::uint2 cit0_ = metal::uint2(0u);
metal::float2x2 cit1_ = metal::float2x2(metal::float2(0.0), metal::float2(0.0));
type_11 cit2_ = type_11 {0, 1, 2, 3};
metal::uint2 ic4_ = metal::uint2(0u, 0u);
metal::float2x3 ic5_ = metal::float2x3(metal::float3(0.0, 0.0, 0.0), metal::float3(0.0, 0.0, 0.0));
}