/* crosstest.py --test=simple_loop.c --driver=simple_loop_main.c \
   --prefix=Subzero_ --output=simple_loop */

#include <stdio.h>

int simple_loop(int *a, int n);
int Subzero_simple_loop(int *a, int n);

#ifdef X8664_STACK_HACK
int wrapped_main(int argc, char *argv[]) {
#else  // !defined(X8664_STACK_HACK)
int main(int argc, char *argv[]) {
#endif // X8664_STACK_HACK
  unsigned TotalTests = 0;
  unsigned Passes = 0;
  unsigned Failures = 0;
  int a[100];
  for (int i = 0; i < 100; ++i)
    a[i] = i * 2 - 100;
  for (int i = -2; i < 100; ++i) {
    ++TotalTests;
    int llc_result = simple_loop(a, i);
    int sz_result = Subzero_simple_loop(a, i);
    if (llc_result == sz_result) {
      ++Passes;
    } else {
      ++Failures;
      printf("Failure: i=%d, llc=%d, sz=%d\n", i, llc_result, sz_result);
    }
  }
  printf("TotalTests=%u Passes=%u Failures=%u\n", TotalTests, Passes, Failures);
  return Failures;
}
