| SKIP: FAILED |
| |
| #include <metal_stdlib> |
| using namespace metal; |
| |
| threadgroup int a; |
| threadgroup float4 b; |
| threadgroup float2x2 c; |
| void foo() { |
| a = tint_div_i32(a, 2); |
| b = (b * float4x4(float4(0.0f), float4(0.0f), float4(0.0f), float4(0.0f))); |
| c = (c * 2.0f); |
| } |
| int tint_div_i32(int lhs, int rhs) { |
| return (lhs / select(rhs, 1, ((rhs == 0) | ((lhs == (-2147483647 - 1)) & (rhs == -1))))); |
| } |
| program_source:4:17: error: program scope variable must reside in constant address space |
| threadgroup int a; |
| ^ |
| program_source:5:20: error: program scope variable must reside in constant address space |
| threadgroup float4 b; |
| ^ |
| program_source:6:22: error: program scope variable must reside in constant address space |
| threadgroup float2x2 c; |
| ^ |
| |