int main(void) { int i; unsigned char a; for (i = 0; i < 10; i++) { a = (IN+=1); /* scan port */ if (i < 5) { a = a & 0x0F; OUT = num_to_lcd(a); #ifdef PRINT_RESULTS printf("lcdnum: OUT = %d\n", OUT); #endif } } return 0; }
int main( void ) { #ifdef PROFILING /* Profiling variables. Remove for actual WCET analyses. */ int iters_i = 0, min_i = 100000, max_i = 0; #endif int i; unsigned char a; #ifdef PROFILING iters_i = 0; #endif _Pragma("loopbound min 10 max 10") for( i=0; i< 10; i++ ) { #ifdef PROFILING iters_i++; #endif a = IN; /* scan port */ if(i<5) { a = a &0x0F; OUT = num_to_lcd(a); #ifdef PRINT_RESULTS printf("lcdnum: OUT = %d\n", OUT); #endif } } #ifdef PROFILING if ( iters_i < min_i ) min_i = iters_i; if ( iters_i > max_i ) max_i = iters_i; #endif #ifdef PROFILING printf( "i-loop: [%d, %d]\n", min_i, max_i ); #endif return 0; }
int main(void) { int i; unsigned char a; /*volatile*/ int n; /* JG */ n = 10; for(i=0; i< n; i++) { /* a = IN; */ /* scan port */ /* We assume the input is symbolic */ klee_make_symbolic(&a, sizeof(unsigned char), "a"); if(i<5) { a = a &0x0F; OUT = num_to_lcd(a); } } return 0; }