I've wrote some compute shader code as below.
#include <metal_stdlib>
using namespace metal;
kernel void main0()
{
thread float4x4 a; //OK
threadgroup float4 b; //OK
threadgroup float4x4 c; //Error
}
The last line, "threadgroup float4x4 c;" result in a compile error as below.
no matching constructor for initialization of 'threadgroup metal::float4x4' (aka 'threadgroup matrix<float, 4, 4>')
If I switch threadgroup to thread or float4x4 to float, no compile error will happen.
Is there any restriction in using "threadgroup floatNxM"?
Execution environment:
Mac mini (2018) OS 10.14.3
CPU : 3.2 GHz Intel Core i7
Xcode 10.1