SPIRV-Cross/reference/shaders-msl-no-opt/comp/trivial-select-matrix.spv14.comp
2021-10-13 16:08:29 +02:00

21 lines
517 B
Plaintext

#include <metal_stdlib>
#include <simd/simd.h>
using namespace metal;
struct A
{
float3x3 a;
float b;
};
constant uint3 gl_WorkGroupSize [[maybe_unused]] = uint3(1u);
kernel void main0(device A& _14 [[buffer(0)]])
{
bool c = _14.b < 1.0;
_14.a = c ? float3x3(float3(1.0), float3(1.0), float3(1.0)) : float3x3(float3(0.0), float3(0.0), float3(0.0));
_14.a = c ? float3x3(float3(1.0, 0.0, 0.0), float3(0.0, 1.0, 0.0), float3(0.0, 0.0, 1.0)) : float3x3(float3(0.0), float3(0.0), float3(0.0));
}