// simple C program to demmonstate loop unriolling #include #define VEC_LEN 10 int main(void) { int i, n = VEC_LEN; int x[VEC_LEN]; // original loop for (i=0; i < n; i++) { x[i] = 2*i; } // unrolled loop for (i=0; i+1 < n; i+=2) { x[i] = 2*i; x[i+1] = 2*(i+1); } // print to see if unrolled loop gave expected result printf("expecting sequence 0, 2, ..., %d:\n\t", 2*(n-1)); for (i=0; i < n; i++) { printf(" %3d", x[i]); } printf("\n"); return 0; }