RWByteAddressBuffer v : register(u0); | |
static uint i = 0u; | |
int idx1() { | |
i = (i + 1u); | |
return int(1); | |
} | |
int idx2() { | |
i = (i + 2u); | |
return int(1); | |
} | |
int idx3() { | |
i = (i + 3u); | |
return int(1); | |
} | |
void foo() { | |
float a[4] = (float[4])0; | |
{ | |
int v_1 = idx1(); | |
a[v_1] = (a[v_1] * 2.0f); | |
while(true) { | |
int v_2 = idx2(); | |
if ((a[v_2] < 10.0f)) { | |
} else { | |
break; | |
} | |
{ | |
int v_3 = idx3(); | |
a[v_3] = (a[v_3] + 1.0f); | |
} | |
continue; | |
} | |
} | |
} | |
[numthreads(1, 1, 1)] | |
void unused_entry_point() { | |
} | |