| #include <metal_stdlib> |
| |
| using namespace metal; |
| void uses_a(thread int* const tint_symbol) { |
| *(tint_symbol) = as_type<int>((as_type<uint>(*(tint_symbol)) + as_type<uint>(1))); |
| } |
| |
| void uses_b(thread int* const tint_symbol_1) { |
| *(tint_symbol_1) = as_type<int>((as_type<uint>(*(tint_symbol_1)) * as_type<uint>(2))); |
| } |
| |
| void uses_a_and_b(thread int* const tint_symbol_2, thread int* const tint_symbol_3) { |
| *(tint_symbol_2) = *(tint_symbol_3); |
| } |
| |
| void no_uses() { |
| } |
| |
| void outer(thread int* const tint_symbol_4, thread int* const tint_symbol_5) { |
| *(tint_symbol_4) = 0; |
| uses_a(tint_symbol_4); |
| uses_a_and_b(tint_symbol_5, tint_symbol_4); |
| uses_b(tint_symbol_5); |
| no_uses(); |
| } |
| |
| kernel void main1() { |
| thread int tint_symbol_6 = 0; |
| tint_symbol_6 = 42; |
| uses_a(&(tint_symbol_6)); |
| return; |
| } |
| |
| kernel void main2() { |
| thread int tint_symbol_7 = 0; |
| tint_symbol_7 = 7; |
| uses_b(&(tint_symbol_7)); |
| return; |
| } |
| |
| kernel void main3() { |
| thread int tint_symbol_8 = 0; |
| thread int tint_symbol_9 = 0; |
| outer(&(tint_symbol_8), &(tint_symbol_9)); |
| no_uses(); |
| return; |
| } |
| |
| kernel void main4() { |
| no_uses(); |
| return; |
| } |
| |