This source file includes following definitions.
- main
#include <stdio.h>
#include "Halide.h"
using namespace Halide;
int main(int argc, char **argv) {
Func f, g, h, k;
Var x;
f(x) = x;
f.compute_root();
g(x) = f(x);
g.compute_root();
h(x) = undef<int>();
h(x) += g(x);
h.compute_root();
k(x) = h(x);
k.compute_root();
k.bound(x, 0, 16);
Buffer<int> result = k.realize(16);
for (int i = 0; i < result.width(); i++) {
if (result(i) != 2 * i) {
printf("Error! Allocation did not get reused at %d (%d != %d)\n", i, result(i), 2 * i);
return -1;
}
}
printf("Success!\n");
return 0;
}