if (f1.host_and_dev_are_null)
{
rewrite_buffer(f1.buffer, 4, 0, 256, 1, 0, 224, 256)
}
if (!f1.host_and_dev_are_null)
{
assert((int64(256) <= int64(2147483647)), "Total allocation for buffer f1 exceeds 2^31 - 1")
assert(((int64(224) * int64(256)) <= int64(2147483647)), "Total allocation for buffer f1 exceeds 2^31 - 1")
assert(((int64(224) * int64(256)) <= int64(2147483647)), "Product of extents for buffer f1 exceeds 2^31 - 1")
produce f1
{
for (f1.s0.v1.v1, 0, 14)
{

let f1.s0.v1.v7.base = min((f1.s0.v1.v1 * 16), 208)

allocate f0[int32 * 511 * 31]
produce f0
{
parallel (f0.s0.v1, (f1.s0.v1.v7.base * 2), 31)
{
for (f0.s0.v0.v0.v0, 0, 64)
{

let f0.s0.s1.base = min((f0.s0.v0.v0.v0 * 8), 503)

f0[ramp((f0.s0.s1.base + ((f0.s0.v1 - (f1.s0.v1.v7.base * 2)) * 511)), 1, 4)] = ramp((f0.s0.s1.base + f0.s0.v1), 1, 4)
f0[ramp(((f0.s0.s1.base + ((f0.s0.v1 - (f1.s0.v1.v7.base * 2)) * 511)) + 4), 1, 4)] = ramp(((f0.s0.s1.base + f0.s0.v1) + 4), 1, 4)
}
}
}
for (f1.s0.v0.v0, 0, 8)
{

let f1.s0.v0.v6.base = min((f1.s0.v0.v0 * 32), 224)

for (f1.s0.v1.v7, 0, 16)
{
for (f1.s0.v0.v6, 0, 32)
{
f1[((f1.s0.v0.v6.base + f1.s0.v0.v6) + ((f1.s0.v1.v7.base + f1.s0.v1.v7) * 256))] = f0[(((f1.s0.v0.v6.base + f1.s0.v0.v6) * 2) + (f1.s0.v1.v7 * 1022))]
}
}
}
free f0
}
}
0
}