diff options
63 files changed, 420 insertions, 454 deletions
diff --git a/all_pairs/source/adpcm_dec/adpcm_dec.c b/all_pairs/source/adpcm_dec/adpcm_dec.c index 368e98d..0627c9c 100644 --- a/all_pairs/source/adpcm_dec/adpcm_dec.c +++ b/all_pairs/source/adpcm_dec/adpcm_dec.c | |||
@@ -708,12 +708,10 @@ void _Pragma( "entrypoint" ) adpcm_dec_main( void ) | |||
708 | int main(int argc, char **argv) | 708 | int main(int argc, char **argv) |
709 | { | 709 | { |
710 | SET_UP | 710 | SET_UP |
711 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 711 | for_each_job { |
712 | START_LOOP | 712 | adpcm_dec_init(); |
713 | adpcm_dec_init(); | 713 | adpcm_dec_main(); |
714 | adpcm_dec_main(); | 714 | } |
715 | STOP_LOOP | 715 | WRITE_TO_FILE |
716 | } | ||
717 | WRITE_TO_FILE | ||
718 | return ( adpcm_dec_return() ); | 716 | return ( adpcm_dec_return() ); |
719 | } | 717 | } |
diff --git a/all_pairs/source/adpcm_enc/adpcm_enc.c b/all_pairs/source/adpcm_enc/adpcm_enc.c index 777aaf5..118382f 100644 --- a/all_pairs/source/adpcm_enc/adpcm_enc.c +++ b/all_pairs/source/adpcm_enc/adpcm_enc.c | |||
@@ -746,13 +746,11 @@ void _Pragma( "entrypoint" ) adpcm_enc_main(void) | |||
746 | 746 | ||
747 | int main(int argc, char **argv) | 747 | int main(int argc, char **argv) |
748 | { | 748 | { |
749 | SET_UP | 749 | SET_UP |
750 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 750 | for_each_job { |
751 | START_LOOP | 751 | adpcm_enc_init(); |
752 | adpcm_enc_init(); | 752 | adpcm_enc_main(); |
753 | adpcm_enc_main(); | 753 | } |
754 | STOP_LOOP | 754 | WRITE_TO_FILE |
755 | } | ||
756 | WRITE_TO_FILE | ||
757 | return adpcm_enc_return(); | 755 | return adpcm_enc_return(); |
758 | } | 756 | } |
diff --git a/all_pairs/source/ammunition/ammunition.c b/all_pairs/source/ammunition/ammunition.c index 052520e..4ae488b 100644 --- a/all_pairs/source/ammunition/ammunition.c +++ b/all_pairs/source/ammunition/ammunition.c | |||
@@ -1173,13 +1173,11 @@ void _Pragma( "entrypoint" ) ammunition_main( void ) | |||
1173 | 1173 | ||
1174 | int main( int argc, char **argv ) | 1174 | int main( int argc, char **argv ) |
1175 | { | 1175 | { |
1176 | SET_UP | 1176 | SET_UP |
1177 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1177 | for_each_job { |
1178 | START_LOOP | 1178 | ammunition_init(); |
1179 | ammunition_init(); | 1179 | ammunition_main(); |
1180 | ammunition_main(); | 1180 | } |
1181 | STOP_LOOP | 1181 | WRITE_TO_FILE |
1182 | } | ||
1183 | WRITE_TO_FILE | ||
1184 | return ( ammunition_return() ); | 1182 | return ( ammunition_return() ); |
1185 | } | 1183 | } |
diff --git a/all_pairs/source/anagram/anagram.c b/all_pairs/source/anagram/anagram.c index 5c1f29a..fc8b6a8 100644 --- a/all_pairs/source/anagram/anagram.c +++ b/all_pairs/source/anagram/anagram.c | |||
@@ -337,6 +337,8 @@ void anagram_ReadDict( void ) | |||
337 | 337 | ||
338 | void anagram_init( void ) | 338 | void anagram_init( void ) |
339 | { | 339 | { |
340 | // Reset heap | ||
341 | anagram_free_all(); | ||
340 | anagram_ReadDict(); | 342 | anagram_ReadDict(); |
341 | } | 343 | } |
342 | 344 | ||
@@ -656,15 +658,11 @@ void _Pragma( "entrypoint" ) anagram_main( void ) | |||
656 | 658 | ||
657 | int main(int argc, char **argv) | 659 | int main(int argc, char **argv) |
658 | { | 660 | { |
659 | SET_UP | 661 | SET_UP |
660 | //int jobsComplete; | 662 | for_each_job { |
661 | //int maxJobs=100; | 663 | anagram_init(); |
662 | //for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 664 | anagram_main(); |
663 | START_LOOP | 665 | } |
664 | anagram_init(); | 666 | WRITE_TO_FILE |
665 | anagram_main(); | ||
666 | STOP_LOOP | ||
667 | //} | ||
668 | WRITE_TO_FILE | ||
669 | return anagram_return(); | 667 | return anagram_return(); |
670 | } | 668 | } |
diff --git a/all_pairs/source/anagram/anagram_stdlib.c b/all_pairs/source/anagram/anagram_stdlib.c index 994350b..c766a5e 100644 --- a/all_pairs/source/anagram/anagram_stdlib.c +++ b/all_pairs/source/anagram/anagram_stdlib.c | |||
@@ -142,6 +142,11 @@ void *anagram_malloc( unsigned int numberOfBytes ) | |||
142 | return currentPos; | 142 | return currentPos; |
143 | } | 143 | } |
144 | 144 | ||
145 | void anagram_free_all( void ) | ||
146 | { | ||
147 | anagram_freeHeapPos = 0; | ||
148 | } | ||
149 | |||
145 | void anagram_bzero( char *p, unsigned long len ) | 150 | void anagram_bzero( char *p, unsigned long len ) |
146 | { | 151 | { |
147 | unsigned long i; | 152 | unsigned long i; |
diff --git a/all_pairs/source/anagram/anagram_stdlib.h b/all_pairs/source/anagram/anagram_stdlib.h index 0e745d5..536fcc3 100644 --- a/all_pairs/source/anagram/anagram_stdlib.h +++ b/all_pairs/source/anagram/anagram_stdlib.h | |||
@@ -24,6 +24,8 @@ | |||
24 | 24 | ||
25 | void *anagram_malloc( unsigned int numberOfBytes ); | 25 | void *anagram_malloc( unsigned int numberOfBytes ); |
26 | 26 | ||
27 | void anagram_free_all( void ); | ||
28 | |||
27 | void anagram_qsort( void *va, unsigned long n, unsigned long es ); | 29 | void anagram_qsort( void *va, unsigned long n, unsigned long es ); |
28 | 30 | ||
29 | #endif | 31 | #endif |
diff --git a/all_pairs/source/audiobeam/audiobeam.c b/all_pairs/source/audiobeam/audiobeam.c index 50ebfff..5f23daf 100644 --- a/all_pairs/source/audiobeam/audiobeam.c +++ b/all_pairs/source/audiobeam/audiobeam.c | |||
@@ -104,6 +104,8 @@ void audiobeam_init() | |||
104 | unsigned int i; | 104 | unsigned int i; |
105 | unsigned char *p; | 105 | unsigned char *p; |
106 | volatile char bitmask = 0; | 106 | volatile char bitmask = 0; |
107 | // Reset heap | ||
108 | audiobeam_free_all(); | ||
107 | 109 | ||
108 | /* | 110 | /* |
109 | Apply volatile XOR-bitmask to entire input array. | 111 | Apply volatile XOR-bitmask to entire input array. |
@@ -577,17 +579,13 @@ void _Pragma( "entrypoint" ) audiobeam_main( void ) | |||
577 | 579 | ||
578 | 580 | ||
579 | int main( int argc, char **argv ) | 581 | int main( int argc, char **argv ) |
580 | { | 582 | { |
581 | //SET_UP | 583 | SET_UP |
582 | int jobsComplete; | 584 | for_each_job { |
583 | int maxJobs=100; | 585 | audiobeam_init(); |
584 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 586 | audiobeam_main(); |
585 | // START_LOOP | 587 | } |
586 | audiobeam_init(); | 588 | WRITE_TO_FILE |
587 | audiobeam_main(); | ||
588 | // STOP_LOOP | ||
589 | } | ||
590 | //WRITE_TO_FILE | ||
591 | 589 | ||
592 | return ( audiobeam_return() ); | 590 | return ( audiobeam_return() ); |
593 | } | 591 | } |
diff --git a/all_pairs/source/audiobeam/audiobeamlibmalloc.c b/all_pairs/source/audiobeam/audiobeamlibmalloc.c index 50c3073..a81b634 100644 --- a/all_pairs/source/audiobeam/audiobeamlibmalloc.c +++ b/all_pairs/source/audiobeam/audiobeamlibmalloc.c | |||
@@ -11,4 +11,9 @@ void *audiobeam_malloc( unsigned int numberOfBytes ) | |||
11 | /* Get a 4-byte address for alignment purposes */ | 11 | /* Get a 4-byte address for alignment purposes */ |
12 | audiobeam_freeHeapPos += ( ( numberOfBytes + 4 ) & ( unsigned int )0xfffffffc ); | 12 | audiobeam_freeHeapPos += ( ( numberOfBytes + 4 ) & ( unsigned int )0xfffffffc ); |
13 | return currentPos; | 13 | return currentPos; |
14 | } \ No newline at end of file | 14 | } |
15 | |||
16 | void audiobeam_free_all( void ) | ||
17 | { | ||
18 | audiobeam_freeHeapPos = 0; | ||
19 | } | ||
diff --git a/all_pairs/source/audiobeam/audiobeamlibmalloc.h b/all_pairs/source/audiobeam/audiobeamlibmalloc.h index eccbdb9..354bf0e 100644 --- a/all_pairs/source/audiobeam/audiobeamlibmalloc.h +++ b/all_pairs/source/audiobeam/audiobeamlibmalloc.h | |||
@@ -24,4 +24,6 @@ | |||
24 | 24 | ||
25 | void *audiobeam_malloc( unsigned int numberOfBytes ); | 25 | void *audiobeam_malloc( unsigned int numberOfBytes ); |
26 | 26 | ||
27 | void audiobeam_free_all( void ); | ||
28 | |||
27 | #endif | 29 | #endif |
diff --git a/all_pairs/source/cjpeg_transupp/cjpeg_transupp.c b/all_pairs/source/cjpeg_transupp/cjpeg_transupp.c index 5ec7e5e..112fba1 100644 --- a/all_pairs/source/cjpeg_transupp/cjpeg_transupp.c +++ b/all_pairs/source/cjpeg_transupp/cjpeg_transupp.c | |||
@@ -706,13 +706,11 @@ void _Pragma ( "entrypoint" ) cjpeg_transupp_main( void ) | |||
706 | 706 | ||
707 | int main(int argc, char **argv) | 707 | int main(int argc, char **argv) |
708 | { | 708 | { |
709 | SET_UP | 709 | SET_UP |
710 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 710 | for_each_job { |
711 | START_LOOP | 711 | cjpeg_transupp_init(); |
712 | cjpeg_transupp_init(); | 712 | cjpeg_transupp_main(); |
713 | cjpeg_transupp_main(); | 713 | } |
714 | STOP_LOOP | 714 | WRITE_TO_FILE |
715 | } | ||
716 | WRITE_TO_FILE | ||
717 | return ( cjpeg_transupp_return() - 660 != 0 ); | 715 | return ( cjpeg_transupp_return() - 660 != 0 ); |
718 | } | 716 | } |
diff --git a/all_pairs/source/cjpeg_wrbmp/cjpeg_wrbmp.c b/all_pairs/source/cjpeg_wrbmp/cjpeg_wrbmp.c index 3c8d7ec..a7aa477 100644 --- a/all_pairs/source/cjpeg_wrbmp/cjpeg_wrbmp.c +++ b/all_pairs/source/cjpeg_wrbmp/cjpeg_wrbmp.c | |||
@@ -210,15 +210,13 @@ int cjpeg_wrbmp_return() | |||
210 | 210 | ||
211 | int main(int argc, char **argv) | 211 | int main(int argc, char **argv) |
212 | { | 212 | { |
213 | SET_UP | 213 | SET_UP |
214 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 214 | for_each_job { |
215 | START_LOOP | 215 | cjpeg_wrbmp_init(); |
216 | cjpeg_wrbmp_init(); | 216 | cjpeg_wrbmp_main(); |
217 | cjpeg_wrbmp_main(); | 217 | } |
218 | STOP_LOOP | 218 | WRITE_TO_FILE |
219 | } | 219 | return ( cjpeg_wrbmp_return() ); |
220 | WRITE_TO_FILE | ||
221 | return ( cjpeg_wrbmp_return() ); | ||
222 | } | 220 | } |
223 | 221 | ||
224 | #endif /* BMP_SUPPORTED */ | 222 | #endif /* BMP_SUPPORTED */ |
diff --git a/all_pairs/source/dijkstra/dijkstra.c b/all_pairs/source/dijkstra/dijkstra.c index 333fd43..6602918 100644 --- a/all_pairs/source/dijkstra/dijkstra.c +++ b/all_pairs/source/dijkstra/dijkstra.c | |||
@@ -192,13 +192,11 @@ void _Pragma( "entrypoint" ) dijkstra_main( void ) | |||
192 | 192 | ||
193 | int main(int argc, char** argv ) | 193 | int main(int argc, char** argv ) |
194 | { | 194 | { |
195 | SET_UP | 195 | SET_UP |
196 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 196 | for_each_job { |
197 | START_LOOP | 197 | dijkstra_init(); |
198 | dijkstra_init(); | 198 | dijkstra_main(); |
199 | dijkstra_main(); | 199 | } |
200 | STOP_LOOP | 200 | WRITE_TO_FILE |
201 | } | ||
202 | WRITE_TO_FILE | ||
203 | return ( dijkstra_return() ); | 201 | return ( dijkstra_return() ); |
204 | } | 202 | } |
diff --git a/all_pairs/source/epic/epic.c b/all_pairs/source/epic/epic.c index a1e344c..e31e54e 100644 --- a/all_pairs/source/epic/epic.c +++ b/all_pairs/source/epic/epic.c | |||
@@ -598,7 +598,7 @@ void epic_main( void ); | |||
598 | Declaration of global variables | 598 | Declaration of global variables |
599 | */ | 599 | */ |
600 | 600 | ||
601 | float epic_filtertemp[FILTER_SIZE]; | 601 | float epic_filtertemp[FILTER_SIZE*2]; // *2 to work around memory corruption issue |
602 | float epic_hi_imagetemp[X_SIZE * Y_SIZE / 2]; | 602 | float epic_hi_imagetemp[X_SIZE * Y_SIZE / 2]; |
603 | float epic_lo_imagetemp[X_SIZE * Y_SIZE / 2]; | 603 | float epic_lo_imagetemp[X_SIZE * Y_SIZE / 2]; |
604 | 604 | ||
@@ -1129,13 +1129,16 @@ int epic_return(){ | |||
1129 | 1129 | ||
1130 | int main( int argc, char **argv ) | 1130 | int main( int argc, char **argv ) |
1131 | { | 1131 | { |
1132 | SET_UP | 1132 | int exit_code = -1; |
1133 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1133 | SET_UP |
1134 | START_LOOP | 1134 | for_each_job { |
1135 | epic_init(); | 1135 | epic_init(); |
1136 | epic_main(); | 1136 | epic_main(); |
1137 | STOP_LOOP | 1137 | // This checks the checksum is as expected. |
1138 | } | 1138 | // This is `&` as only the first job will match |
1139 | WRITE_TO_FILE | 1139 | // (image state persists between jobs). |
1140 | return epic_return(); | 1140 | exit_code &= epic_return(); |
1141 | } | ||
1142 | WRITE_TO_FILE | ||
1143 | return exit_code; | ||
1141 | } | 1144 | } |
diff --git a/all_pairs/source/fmref/fmref.c b/all_pairs/source/fmref/fmref.c index e4c9aaa..b086f5a 100644 --- a/all_pairs/source/fmref/fmref.c +++ b/all_pairs/source/fmref/fmref.c | |||
@@ -77,14 +77,12 @@ int fmref_return(void) | |||
77 | 77 | ||
78 | int main(int argc, char **argv){ | 78 | int main(int argc, char **argv){ |
79 | 79 | ||
80 | SET_UP | 80 | SET_UP |
81 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 81 | for_each_job { |
82 | START_LOOP | 82 | fmref_init(); |
83 | fmref_init(); | 83 | fmref_main(); |
84 | fmref_main(); | 84 | } |
85 | STOP_LOOP | 85 | WRITE_TO_FILE |
86 | } | ||
87 | WRITE_TO_FILE | ||
88 | return fmref_return(); | 86 | return fmref_return(); |
89 | } | 87 | } |
90 | 88 | ||
diff --git a/all_pairs/source/g723_enc/g723_enc.c b/all_pairs/source/g723_enc/g723_enc.c index 209e3ce..bf2df51 100644 --- a/all_pairs/source/g723_enc/g723_enc.c +++ b/all_pairs/source/g723_enc/g723_enc.c | |||
@@ -172,6 +172,9 @@ short g723_enc_fitab[16] = {0, 0, 0, 0x200, 0x200, 0x200, 0x600, 0xE00, | |||
172 | 0xE00, 0x600, 0x200, 0x200, 0x200, 0, 0, 0 | 172 | 0xE00, 0x600, 0x200, 0x200, 0x200, 0, 0, 0 |
173 | }; | 173 | }; |
174 | 174 | ||
175 | static unsigned int g723_enc_out_buffer = 0; | ||
176 | static int g723_enc_out_bits = 0; | ||
177 | static int g723_enc_i = 0; | ||
175 | 178 | ||
176 | /* | 179 | /* |
177 | Declaration of macros | 180 | Declaration of macros |
@@ -753,24 +756,21 @@ g723_enc_pack_output( | |||
753 | unsigned char code, | 756 | unsigned char code, |
754 | int bits ) | 757 | int bits ) |
755 | { | 758 | { |
756 | static unsigned int out_buffer = 0; | ||
757 | static int out_bits = 0; | ||
758 | unsigned char out_byte; | 759 | unsigned char out_byte; |
759 | static int i = 0; | 760 | |
760 | 761 | g723_enc_out_buffer |= ( code << g723_enc_out_bits ); | |
761 | out_buffer |= ( code << out_bits ); | 762 | g723_enc_out_bits += bits; |
762 | out_bits += bits; | 763 | if ( g723_enc_out_bits >= 8 ) { |
763 | if ( out_bits >= 8 ) { | 764 | out_byte = g723_enc_out_buffer & 0xff; |
764 | out_byte = out_buffer & 0xff; | 765 | g723_enc_out_bits -= 8; |
765 | out_bits -= 8; | 766 | g723_enc_out_buffer >>= 8; |
766 | out_buffer >>= 8; | ||
767 | //fwrite(&out_byte, sizeof (char), 1, fp_out); | 767 | //fwrite(&out_byte, sizeof (char), 1, fp_out); |
768 | //fwrite(&out_byte, 1, 1, fp_out); | 768 | //fwrite(&out_byte, 1, 1, fp_out); |
769 | g723_enc_OUTPUT[i] = out_byte; | 769 | g723_enc_OUTPUT[g723_enc_i] = out_byte; |
770 | i = i + 1; | 770 | g723_enc_i = g723_enc_i + 1; |
771 | } | 771 | } |
772 | 772 | ||
773 | return ( out_bits > 0 ); | 773 | return ( g723_enc_out_bits > 0 ); |
774 | } | 774 | } |
775 | 775 | ||
776 | /* | 776 | /* |
@@ -815,6 +815,9 @@ void g723_enc_init() | |||
815 | { | 815 | { |
816 | int i; | 816 | int i; |
817 | volatile int x = 0; | 817 | volatile int x = 0; |
818 | g723_enc_out_buffer = 0; | ||
819 | g723_enc_out_bits = 0; | ||
820 | g723_enc_i = 0; | ||
818 | g723_enc_init_state( &g723_enc_state ); | 821 | g723_enc_init_state( &g723_enc_state ); |
819 | 822 | ||
820 | _Pragma( "loopbound min 256 max 256" ) | 823 | _Pragma( "loopbound min 256 max 256" ) |
@@ -872,16 +875,12 @@ void _Pragma( "entrypoint" ) g723_enc_main() | |||
872 | 875 | ||
873 | int main( int argc, char **argv ) | 876 | int main( int argc, char **argv ) |
874 | { | 877 | { |
875 | //SET_UP | 878 | SET_UP |
876 | int jobsComplete; | 879 | for_each_job { |
877 | int maxJobs=9; | 880 | g723_enc_init(); |
878 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 881 | g723_enc_main(); |
879 | // START_LOOP | 882 | } |
880 | g723_enc_init(); | 883 | WRITE_TO_FILE |
881 | g723_enc_main(); | ||
882 | // STOP_LOOP | ||
883 | } | ||
884 | //WRITE_TO_FILE | ||
885 | return ( g723_enc_return() ); | 884 | return ( g723_enc_return() ); |
886 | } | 885 | } |
887 | 886 | ||
diff --git a/all_pairs/source/gsm_dec/gsm_dec.c b/all_pairs/source/gsm_dec/gsm_dec.c index ba9a9e9..abde144 100644 --- a/all_pairs/source/gsm_dec/gsm_dec.c +++ b/all_pairs/source/gsm_dec/gsm_dec.c | |||
@@ -752,13 +752,11 @@ void _Pragma( "entrypoint" ) gsm_dec_main( void ) | |||
752 | 752 | ||
753 | int main( int argc, char **argv) | 753 | int main( int argc, char **argv) |
754 | { | 754 | { |
755 | SET_UP | 755 | SET_UP |
756 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 756 | for_each_job { |
757 | START_LOOP | 757 | gsm_dec_init(); |
758 | gsm_dec_init(); | 758 | gsm_dec_main(); |
759 | gsm_dec_main(); | 759 | } |
760 | STOP_LOOP | 760 | WRITE_TO_FILE |
761 | } | ||
762 | WRITE_TO_FILE | ||
763 | return ( gsm_dec_return() ); | 761 | return ( gsm_dec_return() ); |
764 | } | 762 | } |
diff --git a/all_pairs/source/gsm_enc/gsm_enc.c b/all_pairs/source/gsm_enc/gsm_enc.c index e8154bb..75e2e7f 100644 --- a/all_pairs/source/gsm_enc/gsm_enc.c +++ b/all_pairs/source/gsm_enc/gsm_enc.c | |||
@@ -2060,13 +2060,11 @@ void gsm_enc_main( void ) | |||
2060 | 2060 | ||
2061 | int main( int argc, char** argv ) | 2061 | int main( int argc, char** argv ) |
2062 | { | 2062 | { |
2063 | SET_UP | 2063 | SET_UP |
2064 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 2064 | for_each_job { |
2065 | START_LOOP | 2065 | gsm_enc_init(); |
2066 | gsm_enc_init(); | 2066 | gsm_enc_main(); |
2067 | gsm_enc_main(); | 2067 | } |
2068 | STOP_LOOP | 2068 | WRITE_TO_FILE |
2069 | } | ||
2070 | WRITE_TO_FILE | ||
2071 | return ( gsm_enc_return() ); | 2069 | return ( gsm_enc_return() ); |
2072 | } | 2070 | } |
diff --git a/all_pairs/source/h264_dec/h264_dec.c b/all_pairs/source/h264_dec/h264_dec.c index e74bec9..1abd883 100644 --- a/all_pairs/source/h264_dec/h264_dec.c +++ b/all_pairs/source/h264_dec/h264_dec.c | |||
@@ -597,14 +597,12 @@ void _Pragma( "entrypoint" ) h264_dec_main( void ) | |||
597 | 597 | ||
598 | int main( int argc, char** argv ) | 598 | int main( int argc, char** argv ) |
599 | { | 599 | { |
600 | SET_UP | 600 | SET_UP |
601 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 601 | for_each_job { |
602 | START_LOOP | 602 | h264_dec_init(); |
603 | h264_dec_init(); | 603 | h264_dec_main(); |
604 | h264_dec_main(); | 604 | } |
605 | STOP_LOOP | 605 | WRITE_TO_FILE |
606 | } | ||
607 | WRITE_TO_FILE | ||
608 | 606 | ||
609 | return ( h264_dec_return() ); | 607 | return ( h264_dec_return() ); |
610 | } | 608 | } |
diff --git a/all_pairs/source/huff_dec/huff_dec.c b/all_pairs/source/huff_dec/huff_dec.c index 58b40d3..8ebf2f7 100644 --- a/all_pairs/source/huff_dec/huff_dec.c +++ b/all_pairs/source/huff_dec/huff_dec.c | |||
@@ -144,6 +144,8 @@ void huff_dec_init( void ) | |||
144 | { | 144 | { |
145 | huff_dec_input_pos = 0; | 145 | huff_dec_input_pos = 0; |
146 | huff_dec_output_pos = 0; | 146 | huff_dec_output_pos = 0; |
147 | huff_dec_byte_nb_to_read = 0; | ||
148 | huff_dec_val_to_read = 0; | ||
147 | } | 149 | } |
148 | 150 | ||
149 | 151 | ||
@@ -379,15 +381,11 @@ void _Pragma( "entrypoint" ) huff_dec_main( void ) | |||
379 | 381 | ||
380 | int main( int argc, char **argv ) | 382 | int main( int argc, char **argv ) |
381 | { | 383 | { |
382 | //SET_UP | 384 | SET_UP |
383 | int jobsComplete; | 385 | for_each_job { |
384 | int maxJobs=5; | 386 | huff_dec_init(); |
385 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 387 | huff_dec_main(); |
386 | // START_LOOP | 388 | } |
387 | huff_dec_init(); | 389 | WRITE_TO_FILE |
388 | huff_dec_main(); | ||
389 | // STOP_LOOP | ||
390 | } | ||
391 | //WRITE_TO_FILE | ||
392 | return ( huff_dec_return() ); | 390 | return ( huff_dec_return() ); |
393 | } | 391 | } |
diff --git a/all_pairs/source/huff_enc/huff_enc.c b/all_pairs/source/huff_enc/huff_enc.c index 0d74916..f2db552 100644 --- a/all_pairs/source/huff_enc/huff_enc.c +++ b/all_pairs/source/huff_enc/huff_enc.c | |||
@@ -577,13 +577,11 @@ void _Pragma( "entrypoint" ) huff_enc_main() | |||
577 | 577 | ||
578 | int main( int argc, char **argv ) | 578 | int main( int argc, char **argv ) |
579 | { | 579 | { |
580 | SET_UP | 580 | SET_UP |
581 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 581 | for_each_job { |
582 | START_LOOP | 582 | huff_enc_init(); |
583 | huff_enc_init(); | 583 | huff_enc_main(); |
584 | huff_enc_main(); | 584 | } |
585 | STOP_LOOP | 585 | WRITE_TO_FILE |
586 | } | ||
587 | WRITE_TO_FILE | ||
588 | return ( huff_enc_return() ); | 586 | return ( huff_enc_return() ); |
589 | } | 587 | } |
diff --git a/all_pairs/source/mpeg2/mpeg2.c b/all_pairs/source/mpeg2/mpeg2.c index 0567225..cceeb30 100644 --- a/all_pairs/source/mpeg2/mpeg2.c +++ b/all_pairs/source/mpeg2/mpeg2.c | |||
@@ -13205,14 +13205,12 @@ void _Pragma ( "entrypoint" ) mpeg2_main( void ) | |||
13205 | 13205 | ||
13206 | int main( int argc, char **argv ) | 13206 | int main( int argc, char **argv ) |
13207 | { | 13207 | { |
13208 | SET_UP | 13208 | SET_UP |
13209 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 13209 | for_each_job { |
13210 | START_LOOP | 13210 | mpeg2_init(); |
13211 | mpeg2_init(); | 13211 | mpeg2_main(); |
13212 | mpeg2_main(); | 13212 | } |
13213 | STOP_LOOP | 13213 | WRITE_TO_FILE |
13214 | } | ||
13215 | WRITE_TO_FILE | ||
13216 | 13214 | ||
13217 | return( mpeg2_return() - (-116) != 0 ); | 13215 | return( mpeg2_return() - (-116) != 0 ); |
13218 | } | 13216 | } |
diff --git a/all_pairs/source/ndes/ndes.c b/all_pairs/source/ndes/ndes.c index f169c62..5d00d94 100644 --- a/all_pairs/source/ndes/ndes.c +++ b/all_pairs/source/ndes/ndes.c | |||
@@ -365,14 +365,12 @@ void _Pragma( "entrypoint" ) ndes_main() | |||
365 | 365 | ||
366 | int main( int argc, char **argv ) | 366 | int main( int argc, char **argv ) |
367 | { | 367 | { |
368 | SET_UP | 368 | SET_UP |
369 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 369 | for_each_job { |
370 | START_LOOP | 370 | ndes_init(); |
371 | ndes_init(); | 371 | ndes_main(); |
372 | ndes_main(); | 372 | } |
373 | STOP_LOOP | 373 | WRITE_TO_FILE |
374 | } | ||
375 | WRITE_TO_FILE | ||
376 | 374 | ||
377 | return ( ndes_return() ); | 375 | return ( ndes_return() ); |
378 | } | 376 | } |
diff --git a/all_pairs/source/petrinet/petrinet.c b/all_pairs/source/petrinet/petrinet.c index 6ef3392..a54a999 100644 --- a/all_pairs/source/petrinet/petrinet.c +++ b/all_pairs/source/petrinet/petrinet.c | |||
@@ -976,14 +976,10 @@ int petrinet_return( void ) | |||
976 | int main( int argc, char **argv ) | 976 | int main( int argc, char **argv ) |
977 | { | 977 | { |
978 | SET_UP | 978 | SET_UP |
979 | 979 | for_each_job { | |
980 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 980 | petrinet_main(); |
981 | 981 | } | |
982 | START_LOOP | 982 | WRITE_TO_FILE |
983 | petrinet_main(); | ||
984 | STOP_LOOP | ||
985 | } | ||
986 | WRITE_TO_FILE | ||
987 | 983 | ||
988 | return ( petrinet_return() ); | 984 | return ( petrinet_return() ); |
989 | } | 985 | } |
diff --git a/all_pairs/source/rijndael_dec/rijndael_dec.c b/all_pairs/source/rijndael_dec/rijndael_dec.c index 61db767..c8f606b 100644 --- a/all_pairs/source/rijndael_dec/rijndael_dec.c +++ b/all_pairs/source/rijndael_dec/rijndael_dec.c | |||
@@ -182,14 +182,12 @@ void _Pragma( "entrypoint" ) rijndael_dec_main( void ) | |||
182 | 182 | ||
183 | int main(int argc, char** argv) | 183 | int main(int argc, char** argv) |
184 | { | 184 | { |
185 | SET_UP | 185 | SET_UP |
186 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 186 | for_each_job { |
187 | START_LOOP | 187 | rijndael_dec_init(); |
188 | rijndael_dec_init(); | 188 | rijndael_dec_main(); |
189 | rijndael_dec_main(); | 189 | } |
190 | STOP_LOOP | 190 | WRITE_TO_FILE |
191 | } | ||
192 | WRITE_TO_FILE | ||
193 | return ( rijndael_dec_return() ); | 191 | return ( rijndael_dec_return() ); |
194 | } | 192 | } |
195 | 193 | ||
diff --git a/all_pairs/source/rijndael_enc/rijndael_enc.c b/all_pairs/source/rijndael_enc/rijndael_enc.c index 6c85eee..f0582c9 100644 --- a/all_pairs/source/rijndael_enc/rijndael_enc.c +++ b/all_pairs/source/rijndael_enc/rijndael_enc.c | |||
@@ -68,6 +68,7 @@ void rijndael_enc_init( void ) | |||
68 | rijndael_enc_fin.data = rijndael_enc_data; | 68 | rijndael_enc_fin.data = rijndael_enc_data; |
69 | rijndael_enc_fin.size = 31369; | 69 | rijndael_enc_fin.size = 31369; |
70 | rijndael_enc_fin.cur_pos = 0; | 70 | rijndael_enc_fin.cur_pos = 0; |
71 | rijndael_enc_checksum = 0; | ||
71 | 72 | ||
72 | unsigned i; | 73 | unsigned i; |
73 | volatile int x = 0; | 74 | volatile int x = 0; |
@@ -225,14 +226,17 @@ void _Pragma( "entrypoint" ) rijndael_enc_main( void ) | |||
225 | 226 | ||
226 | int main( int argc, char** argv ) | 227 | int main( int argc, char** argv ) |
227 | { | 228 | { |
228 | SET_UP | 229 | int exit_code = -1; |
229 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 230 | SET_UP |
230 | START_LOOP | 231 | for_each_job { |
231 | rijndael_enc_init(); | 232 | rijndael_enc_init(); |
232 | rijndael_enc_main(); | 233 | rijndael_enc_main(); |
233 | STOP_LOOP | 234 | // This checks the checksum is as expected. |
234 | } | 235 | // This is `&` as only the first job will match |
235 | WRITE_TO_FILE | 236 | // (PRNG state persists between jobs). |
236 | return ( rijndael_enc_return() ); | 237 | exit_code &= rijndael_enc_return(); |
238 | } | ||
239 | WRITE_TO_FILE | ||
240 | return ( exit_code ); | ||
237 | } | 241 | } |
238 | 242 | ||
diff --git a/all_pairs/source/statemate/statemate.c b/all_pairs/source/statemate/statemate.c index 888d0fa..8239ed6 100644 --- a/all_pairs/source/statemate/statemate.c +++ b/all_pairs/source/statemate/statemate.c | |||
@@ -1273,14 +1273,12 @@ void _Pragma ( "entrypoint" ) statemate_main( void ) | |||
1273 | 1273 | ||
1274 | int main ( int argc, char **argv ) | 1274 | int main ( int argc, char **argv ) |
1275 | { | 1275 | { |
1276 | SET_UP | 1276 | SET_UP |
1277 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1277 | for_each_job { |
1278 | START_LOOP | 1278 | statemate_init(); |
1279 | statemate_init(); | 1279 | statemate_main(); |
1280 | statemate_main(); | 1280 | } |
1281 | STOP_LOOP | 1281 | WRITE_TO_FILE |
1282 | } | ||
1283 | WRITE_TO_FILE | ||
1284 | 1282 | ||
1285 | return statemate_return(); | 1283 | return statemate_return(); |
1286 | } | 1284 | } |
diff --git a/all_pairs/source/susan/susan.c b/all_pairs/source/susan/susan.c index dc27fb1..14a2f28 100644 --- a/all_pairs/source/susan/susan.c +++ b/all_pairs/source/susan/susan.c | |||
@@ -2001,14 +2001,12 @@ int susan_return( void ) | |||
2001 | 2001 | ||
2002 | int main( int argc, char **argv ) | 2002 | int main( int argc, char **argv ) |
2003 | { | 2003 | { |
2004 | SET_UP | 2004 | SET_UP |
2005 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 2005 | for_each_job { |
2006 | START_LOOP | 2006 | susan_init(); |
2007 | susan_init(); | 2007 | susan_main(); |
2008 | susan_main(); | 2008 | } |
2009 | STOP_LOOP | 2009 | WRITE_TO_FILE |
2010 | } | ||
2011 | WRITE_TO_FILE | ||
2012 | 2010 | ||
2013 | return susan_return(); | 2011 | return susan_return(); |
2014 | } | 2012 | } |
diff --git a/baseline/source/adpcm_dec/adpcm_dec.c b/baseline/source/adpcm_dec/adpcm_dec.c index 368e98d..0627c9c 100644 --- a/baseline/source/adpcm_dec/adpcm_dec.c +++ b/baseline/source/adpcm_dec/adpcm_dec.c | |||
@@ -708,12 +708,10 @@ void _Pragma( "entrypoint" ) adpcm_dec_main( void ) | |||
708 | int main(int argc, char **argv) | 708 | int main(int argc, char **argv) |
709 | { | 709 | { |
710 | SET_UP | 710 | SET_UP |
711 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 711 | for_each_job { |
712 | START_LOOP | 712 | adpcm_dec_init(); |
713 | adpcm_dec_init(); | 713 | adpcm_dec_main(); |
714 | adpcm_dec_main(); | 714 | } |
715 | STOP_LOOP | 715 | WRITE_TO_FILE |
716 | } | ||
717 | WRITE_TO_FILE | ||
718 | return ( adpcm_dec_return() ); | 716 | return ( adpcm_dec_return() ); |
719 | } | 717 | } |
diff --git a/baseline/source/adpcm_enc/adpcm_enc.c b/baseline/source/adpcm_enc/adpcm_enc.c index 777aaf5..118382f 100644 --- a/baseline/source/adpcm_enc/adpcm_enc.c +++ b/baseline/source/adpcm_enc/adpcm_enc.c | |||
@@ -746,13 +746,11 @@ void _Pragma( "entrypoint" ) adpcm_enc_main(void) | |||
746 | 746 | ||
747 | int main(int argc, char **argv) | 747 | int main(int argc, char **argv) |
748 | { | 748 | { |
749 | SET_UP | 749 | SET_UP |
750 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 750 | for_each_job { |
751 | START_LOOP | 751 | adpcm_enc_init(); |
752 | adpcm_enc_init(); | 752 | adpcm_enc_main(); |
753 | adpcm_enc_main(); | 753 | } |
754 | STOP_LOOP | 754 | WRITE_TO_FILE |
755 | } | ||
756 | WRITE_TO_FILE | ||
757 | return adpcm_enc_return(); | 755 | return adpcm_enc_return(); |
758 | } | 756 | } |
diff --git a/baseline/source/ammunition/ammunition.c b/baseline/source/ammunition/ammunition.c index 052520e..4ae488b 100644 --- a/baseline/source/ammunition/ammunition.c +++ b/baseline/source/ammunition/ammunition.c | |||
@@ -1173,13 +1173,11 @@ void _Pragma( "entrypoint" ) ammunition_main( void ) | |||
1173 | 1173 | ||
1174 | int main( int argc, char **argv ) | 1174 | int main( int argc, char **argv ) |
1175 | { | 1175 | { |
1176 | SET_UP | 1176 | SET_UP |
1177 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1177 | for_each_job { |
1178 | START_LOOP | 1178 | ammunition_init(); |
1179 | ammunition_init(); | 1179 | ammunition_main(); |
1180 | ammunition_main(); | 1180 | } |
1181 | STOP_LOOP | 1181 | WRITE_TO_FILE |
1182 | } | ||
1183 | WRITE_TO_FILE | ||
1184 | return ( ammunition_return() ); | 1182 | return ( ammunition_return() ); |
1185 | } | 1183 | } |
diff --git a/baseline/source/anagram/anagram.c b/baseline/source/anagram/anagram.c index 5c1f29a..fc8b6a8 100644 --- a/baseline/source/anagram/anagram.c +++ b/baseline/source/anagram/anagram.c | |||
@@ -337,6 +337,8 @@ void anagram_ReadDict( void ) | |||
337 | 337 | ||
338 | void anagram_init( void ) | 338 | void anagram_init( void ) |
339 | { | 339 | { |
340 | // Reset heap | ||
341 | anagram_free_all(); | ||
340 | anagram_ReadDict(); | 342 | anagram_ReadDict(); |
341 | } | 343 | } |
342 | 344 | ||
@@ -656,15 +658,11 @@ void _Pragma( "entrypoint" ) anagram_main( void ) | |||
656 | 658 | ||
657 | int main(int argc, char **argv) | 659 | int main(int argc, char **argv) |
658 | { | 660 | { |
659 | SET_UP | 661 | SET_UP |
660 | //int jobsComplete; | 662 | for_each_job { |
661 | //int maxJobs=100; | 663 | anagram_init(); |
662 | //for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 664 | anagram_main(); |
663 | START_LOOP | 665 | } |
664 | anagram_init(); | 666 | WRITE_TO_FILE |
665 | anagram_main(); | ||
666 | STOP_LOOP | ||
667 | //} | ||
668 | WRITE_TO_FILE | ||
669 | return anagram_return(); | 667 | return anagram_return(); |
670 | } | 668 | } |
diff --git a/baseline/source/anagram/anagram_stdlib.c b/baseline/source/anagram/anagram_stdlib.c index 994350b..c766a5e 100644 --- a/baseline/source/anagram/anagram_stdlib.c +++ b/baseline/source/anagram/anagram_stdlib.c | |||
@@ -142,6 +142,11 @@ void *anagram_malloc( unsigned int numberOfBytes ) | |||
142 | return currentPos; | 142 | return currentPos; |
143 | } | 143 | } |
144 | 144 | ||
145 | void anagram_free_all( void ) | ||
146 | { | ||
147 | anagram_freeHeapPos = 0; | ||
148 | } | ||
149 | |||
145 | void anagram_bzero( char *p, unsigned long len ) | 150 | void anagram_bzero( char *p, unsigned long len ) |
146 | { | 151 | { |
147 | unsigned long i; | 152 | unsigned long i; |
diff --git a/baseline/source/anagram/anagram_stdlib.h b/baseline/source/anagram/anagram_stdlib.h index 0e745d5..536fcc3 100644 --- a/baseline/source/anagram/anagram_stdlib.h +++ b/baseline/source/anagram/anagram_stdlib.h | |||
@@ -24,6 +24,8 @@ | |||
24 | 24 | ||
25 | void *anagram_malloc( unsigned int numberOfBytes ); | 25 | void *anagram_malloc( unsigned int numberOfBytes ); |
26 | 26 | ||
27 | void anagram_free_all( void ); | ||
28 | |||
27 | void anagram_qsort( void *va, unsigned long n, unsigned long es ); | 29 | void anagram_qsort( void *va, unsigned long n, unsigned long es ); |
28 | 30 | ||
29 | #endif | 31 | #endif |
diff --git a/baseline/source/audiobeam/audiobeam.c b/baseline/source/audiobeam/audiobeam.c index 50ebfff..5f23daf 100644 --- a/baseline/source/audiobeam/audiobeam.c +++ b/baseline/source/audiobeam/audiobeam.c | |||
@@ -104,6 +104,8 @@ void audiobeam_init() | |||
104 | unsigned int i; | 104 | unsigned int i; |
105 | unsigned char *p; | 105 | unsigned char *p; |
106 | volatile char bitmask = 0; | 106 | volatile char bitmask = 0; |
107 | // Reset heap | ||
108 | audiobeam_free_all(); | ||
107 | 109 | ||
108 | /* | 110 | /* |
109 | Apply volatile XOR-bitmask to entire input array. | 111 | Apply volatile XOR-bitmask to entire input array. |
@@ -577,17 +579,13 @@ void _Pragma( "entrypoint" ) audiobeam_main( void ) | |||
577 | 579 | ||
578 | 580 | ||
579 | int main( int argc, char **argv ) | 581 | int main( int argc, char **argv ) |
580 | { | 582 | { |
581 | //SET_UP | 583 | SET_UP |
582 | int jobsComplete; | 584 | for_each_job { |
583 | int maxJobs=100; | 585 | audiobeam_init(); |
584 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 586 | audiobeam_main(); |
585 | // START_LOOP | 587 | } |
586 | audiobeam_init(); | 588 | WRITE_TO_FILE |
587 | audiobeam_main(); | ||
588 | // STOP_LOOP | ||
589 | } | ||
590 | //WRITE_TO_FILE | ||
591 | 589 | ||
592 | return ( audiobeam_return() ); | 590 | return ( audiobeam_return() ); |
593 | } | 591 | } |
diff --git a/baseline/source/audiobeam/audiobeamlibmalloc.c b/baseline/source/audiobeam/audiobeamlibmalloc.c index 50c3073..a81b634 100644 --- a/baseline/source/audiobeam/audiobeamlibmalloc.c +++ b/baseline/source/audiobeam/audiobeamlibmalloc.c | |||
@@ -11,4 +11,9 @@ void *audiobeam_malloc( unsigned int numberOfBytes ) | |||
11 | /* Get a 4-byte address for alignment purposes */ | 11 | /* Get a 4-byte address for alignment purposes */ |
12 | audiobeam_freeHeapPos += ( ( numberOfBytes + 4 ) & ( unsigned int )0xfffffffc ); | 12 | audiobeam_freeHeapPos += ( ( numberOfBytes + 4 ) & ( unsigned int )0xfffffffc ); |
13 | return currentPos; | 13 | return currentPos; |
14 | } \ No newline at end of file | 14 | } |
15 | |||
16 | void audiobeam_free_all( void ) | ||
17 | { | ||
18 | audiobeam_freeHeapPos = 0; | ||
19 | } | ||
diff --git a/baseline/source/audiobeam/audiobeamlibmalloc.h b/baseline/source/audiobeam/audiobeamlibmalloc.h index eccbdb9..354bf0e 100644 --- a/baseline/source/audiobeam/audiobeamlibmalloc.h +++ b/baseline/source/audiobeam/audiobeamlibmalloc.h | |||
@@ -24,4 +24,6 @@ | |||
24 | 24 | ||
25 | void *audiobeam_malloc( unsigned int numberOfBytes ); | 25 | void *audiobeam_malloc( unsigned int numberOfBytes ); |
26 | 26 | ||
27 | void audiobeam_free_all( void ); | ||
28 | |||
27 | #endif | 29 | #endif |
diff --git a/baseline/source/cjpeg_transupp/cjpeg_transupp.c b/baseline/source/cjpeg_transupp/cjpeg_transupp.c index 5ec7e5e..112fba1 100644 --- a/baseline/source/cjpeg_transupp/cjpeg_transupp.c +++ b/baseline/source/cjpeg_transupp/cjpeg_transupp.c | |||
@@ -706,13 +706,11 @@ void _Pragma ( "entrypoint" ) cjpeg_transupp_main( void ) | |||
706 | 706 | ||
707 | int main(int argc, char **argv) | 707 | int main(int argc, char **argv) |
708 | { | 708 | { |
709 | SET_UP | 709 | SET_UP |
710 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 710 | for_each_job { |
711 | START_LOOP | 711 | cjpeg_transupp_init(); |
712 | cjpeg_transupp_init(); | 712 | cjpeg_transupp_main(); |
713 | cjpeg_transupp_main(); | 713 | } |
714 | STOP_LOOP | 714 | WRITE_TO_FILE |
715 | } | ||
716 | WRITE_TO_FILE | ||
717 | return ( cjpeg_transupp_return() - 660 != 0 ); | 715 | return ( cjpeg_transupp_return() - 660 != 0 ); |
718 | } | 716 | } |
diff --git a/baseline/source/cjpeg_wrbmp/cjpeg_wrbmp.c b/baseline/source/cjpeg_wrbmp/cjpeg_wrbmp.c index 3c8d7ec..a7aa477 100644 --- a/baseline/source/cjpeg_wrbmp/cjpeg_wrbmp.c +++ b/baseline/source/cjpeg_wrbmp/cjpeg_wrbmp.c | |||
@@ -210,15 +210,13 @@ int cjpeg_wrbmp_return() | |||
210 | 210 | ||
211 | int main(int argc, char **argv) | 211 | int main(int argc, char **argv) |
212 | { | 212 | { |
213 | SET_UP | 213 | SET_UP |
214 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 214 | for_each_job { |
215 | START_LOOP | 215 | cjpeg_wrbmp_init(); |
216 | cjpeg_wrbmp_init(); | 216 | cjpeg_wrbmp_main(); |
217 | cjpeg_wrbmp_main(); | 217 | } |
218 | STOP_LOOP | 218 | WRITE_TO_FILE |
219 | } | 219 | return ( cjpeg_wrbmp_return() ); |
220 | WRITE_TO_FILE | ||
221 | return ( cjpeg_wrbmp_return() ); | ||
222 | } | 220 | } |
223 | 221 | ||
224 | #endif /* BMP_SUPPORTED */ | 222 | #endif /* BMP_SUPPORTED */ |
diff --git a/baseline/source/dijkstra/dijkstra.c b/baseline/source/dijkstra/dijkstra.c index 333fd43..6602918 100644 --- a/baseline/source/dijkstra/dijkstra.c +++ b/baseline/source/dijkstra/dijkstra.c | |||
@@ -192,13 +192,11 @@ void _Pragma( "entrypoint" ) dijkstra_main( void ) | |||
192 | 192 | ||
193 | int main(int argc, char** argv ) | 193 | int main(int argc, char** argv ) |
194 | { | 194 | { |
195 | SET_UP | 195 | SET_UP |
196 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 196 | for_each_job { |
197 | START_LOOP | 197 | dijkstra_init(); |
198 | dijkstra_init(); | 198 | dijkstra_main(); |
199 | dijkstra_main(); | 199 | } |
200 | STOP_LOOP | 200 | WRITE_TO_FILE |
201 | } | ||
202 | WRITE_TO_FILE | ||
203 | return ( dijkstra_return() ); | 201 | return ( dijkstra_return() ); |
204 | } | 202 | } |
diff --git a/baseline/source/epic/epic.c b/baseline/source/epic/epic.c index a1e344c..e31e54e 100644 --- a/baseline/source/epic/epic.c +++ b/baseline/source/epic/epic.c | |||
@@ -598,7 +598,7 @@ void epic_main( void ); | |||
598 | Declaration of global variables | 598 | Declaration of global variables |
599 | */ | 599 | */ |
600 | 600 | ||
601 | float epic_filtertemp[FILTER_SIZE]; | 601 | float epic_filtertemp[FILTER_SIZE*2]; // *2 to work around memory corruption issue |
602 | float epic_hi_imagetemp[X_SIZE * Y_SIZE / 2]; | 602 | float epic_hi_imagetemp[X_SIZE * Y_SIZE / 2]; |
603 | float epic_lo_imagetemp[X_SIZE * Y_SIZE / 2]; | 603 | float epic_lo_imagetemp[X_SIZE * Y_SIZE / 2]; |
604 | 604 | ||
@@ -1129,13 +1129,16 @@ int epic_return(){ | |||
1129 | 1129 | ||
1130 | int main( int argc, char **argv ) | 1130 | int main( int argc, char **argv ) |
1131 | { | 1131 | { |
1132 | SET_UP | 1132 | int exit_code = -1; |
1133 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1133 | SET_UP |
1134 | START_LOOP | 1134 | for_each_job { |
1135 | epic_init(); | 1135 | epic_init(); |
1136 | epic_main(); | 1136 | epic_main(); |
1137 | STOP_LOOP | 1137 | // This checks the checksum is as expected. |
1138 | } | 1138 | // This is `&` as only the first job will match |
1139 | WRITE_TO_FILE | 1139 | // (image state persists between jobs). |
1140 | return epic_return(); | 1140 | exit_code &= epic_return(); |
1141 | } | ||
1142 | WRITE_TO_FILE | ||
1143 | return exit_code; | ||
1141 | } | 1144 | } |
diff --git a/baseline/source/fmref/fmref.c b/baseline/source/fmref/fmref.c index e4c9aaa..b086f5a 100644 --- a/baseline/source/fmref/fmref.c +++ b/baseline/source/fmref/fmref.c | |||
@@ -77,14 +77,12 @@ int fmref_return(void) | |||
77 | 77 | ||
78 | int main(int argc, char **argv){ | 78 | int main(int argc, char **argv){ |
79 | 79 | ||
80 | SET_UP | 80 | SET_UP |
81 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 81 | for_each_job { |
82 | START_LOOP | 82 | fmref_init(); |
83 | fmref_init(); | 83 | fmref_main(); |
84 | fmref_main(); | 84 | } |
85 | STOP_LOOP | 85 | WRITE_TO_FILE |
86 | } | ||
87 | WRITE_TO_FILE | ||
88 | return fmref_return(); | 86 | return fmref_return(); |
89 | } | 87 | } |
90 | 88 | ||
diff --git a/baseline/source/g723_enc/g723_enc.c b/baseline/source/g723_enc/g723_enc.c index 209e3ce..bf2df51 100644 --- a/baseline/source/g723_enc/g723_enc.c +++ b/baseline/source/g723_enc/g723_enc.c | |||
@@ -172,6 +172,9 @@ short g723_enc_fitab[16] = {0, 0, 0, 0x200, 0x200, 0x200, 0x600, 0xE00, | |||
172 | 0xE00, 0x600, 0x200, 0x200, 0x200, 0, 0, 0 | 172 | 0xE00, 0x600, 0x200, 0x200, 0x200, 0, 0, 0 |
173 | }; | 173 | }; |
174 | 174 | ||
175 | static unsigned int g723_enc_out_buffer = 0; | ||
176 | static int g723_enc_out_bits = 0; | ||
177 | static int g723_enc_i = 0; | ||
175 | 178 | ||
176 | /* | 179 | /* |
177 | Declaration of macros | 180 | Declaration of macros |
@@ -753,24 +756,21 @@ g723_enc_pack_output( | |||
753 | unsigned char code, | 756 | unsigned char code, |
754 | int bits ) | 757 | int bits ) |
755 | { | 758 | { |
756 | static unsigned int out_buffer = 0; | ||
757 | static int out_bits = 0; | ||
758 | unsigned char out_byte; | 759 | unsigned char out_byte; |
759 | static int i = 0; | 760 | |
760 | 761 | g723_enc_out_buffer |= ( code << g723_enc_out_bits ); | |
761 | out_buffer |= ( code << out_bits ); | 762 | g723_enc_out_bits += bits; |
762 | out_bits += bits; | 763 | if ( g723_enc_out_bits >= 8 ) { |
763 | if ( out_bits >= 8 ) { | 764 | out_byte = g723_enc_out_buffer & 0xff; |
764 | out_byte = out_buffer & 0xff; | 765 | g723_enc_out_bits -= 8; |
765 | out_bits -= 8; | 766 | g723_enc_out_buffer >>= 8; |
766 | out_buffer >>= 8; | ||
767 | //fwrite(&out_byte, sizeof (char), 1, fp_out); | 767 | //fwrite(&out_byte, sizeof (char), 1, fp_out); |
768 | //fwrite(&out_byte, 1, 1, fp_out); | 768 | //fwrite(&out_byte, 1, 1, fp_out); |
769 | g723_enc_OUTPUT[i] = out_byte; | 769 | g723_enc_OUTPUT[g723_enc_i] = out_byte; |
770 | i = i + 1; | 770 | g723_enc_i = g723_enc_i + 1; |
771 | } | 771 | } |
772 | 772 | ||
773 | return ( out_bits > 0 ); | 773 | return ( g723_enc_out_bits > 0 ); |
774 | } | 774 | } |
775 | 775 | ||
776 | /* | 776 | /* |
@@ -815,6 +815,9 @@ void g723_enc_init() | |||
815 | { | 815 | { |
816 | int i; | 816 | int i; |
817 | volatile int x = 0; | 817 | volatile int x = 0; |
818 | g723_enc_out_buffer = 0; | ||
819 | g723_enc_out_bits = 0; | ||
820 | g723_enc_i = 0; | ||
818 | g723_enc_init_state( &g723_enc_state ); | 821 | g723_enc_init_state( &g723_enc_state ); |
819 | 822 | ||
820 | _Pragma( "loopbound min 256 max 256" ) | 823 | _Pragma( "loopbound min 256 max 256" ) |
@@ -872,16 +875,12 @@ void _Pragma( "entrypoint" ) g723_enc_main() | |||
872 | 875 | ||
873 | int main( int argc, char **argv ) | 876 | int main( int argc, char **argv ) |
874 | { | 877 | { |
875 | //SET_UP | 878 | SET_UP |
876 | int jobsComplete; | 879 | for_each_job { |
877 | int maxJobs=9; | 880 | g723_enc_init(); |
878 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 881 | g723_enc_main(); |
879 | // START_LOOP | 882 | } |
880 | g723_enc_init(); | 883 | WRITE_TO_FILE |
881 | g723_enc_main(); | ||
882 | // STOP_LOOP | ||
883 | } | ||
884 | //WRITE_TO_FILE | ||
885 | return ( g723_enc_return() ); | 884 | return ( g723_enc_return() ); |
886 | } | 885 | } |
887 | 886 | ||
diff --git a/baseline/source/gsm_dec/gsm_dec.c b/baseline/source/gsm_dec/gsm_dec.c index ba9a9e9..abde144 100644 --- a/baseline/source/gsm_dec/gsm_dec.c +++ b/baseline/source/gsm_dec/gsm_dec.c | |||
@@ -752,13 +752,11 @@ void _Pragma( "entrypoint" ) gsm_dec_main( void ) | |||
752 | 752 | ||
753 | int main( int argc, char **argv) | 753 | int main( int argc, char **argv) |
754 | { | 754 | { |
755 | SET_UP | 755 | SET_UP |
756 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 756 | for_each_job { |
757 | START_LOOP | 757 | gsm_dec_init(); |
758 | gsm_dec_init(); | 758 | gsm_dec_main(); |
759 | gsm_dec_main(); | 759 | } |
760 | STOP_LOOP | 760 | WRITE_TO_FILE |
761 | } | ||
762 | WRITE_TO_FILE | ||
763 | return ( gsm_dec_return() ); | 761 | return ( gsm_dec_return() ); |
764 | } | 762 | } |
diff --git a/baseline/source/gsm_enc/gsm_enc.c b/baseline/source/gsm_enc/gsm_enc.c index e8154bb..75e2e7f 100644 --- a/baseline/source/gsm_enc/gsm_enc.c +++ b/baseline/source/gsm_enc/gsm_enc.c | |||
@@ -2060,13 +2060,11 @@ void gsm_enc_main( void ) | |||
2060 | 2060 | ||
2061 | int main( int argc, char** argv ) | 2061 | int main( int argc, char** argv ) |
2062 | { | 2062 | { |
2063 | SET_UP | 2063 | SET_UP |
2064 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 2064 | for_each_job { |
2065 | START_LOOP | 2065 | gsm_enc_init(); |
2066 | gsm_enc_init(); | 2066 | gsm_enc_main(); |
2067 | gsm_enc_main(); | 2067 | } |
2068 | STOP_LOOP | 2068 | WRITE_TO_FILE |
2069 | } | ||
2070 | WRITE_TO_FILE | ||
2071 | return ( gsm_enc_return() ); | 2069 | return ( gsm_enc_return() ); |
2072 | } | 2070 | } |
diff --git a/baseline/source/h264_dec/h264_dec.c b/baseline/source/h264_dec/h264_dec.c index e74bec9..1abd883 100644 --- a/baseline/source/h264_dec/h264_dec.c +++ b/baseline/source/h264_dec/h264_dec.c | |||
@@ -597,14 +597,12 @@ void _Pragma( "entrypoint" ) h264_dec_main( void ) | |||
597 | 597 | ||
598 | int main( int argc, char** argv ) | 598 | int main( int argc, char** argv ) |
599 | { | 599 | { |
600 | SET_UP | 600 | SET_UP |
601 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 601 | for_each_job { |
602 | START_LOOP | 602 | h264_dec_init(); |
603 | h264_dec_init(); | 603 | h264_dec_main(); |
604 | h264_dec_main(); | 604 | } |
605 | STOP_LOOP | 605 | WRITE_TO_FILE |
606 | } | ||
607 | WRITE_TO_FILE | ||
608 | 606 | ||
609 | return ( h264_dec_return() ); | 607 | return ( h264_dec_return() ); |
610 | } | 608 | } |
diff --git a/baseline/source/huff_dec/huff_dec.c b/baseline/source/huff_dec/huff_dec.c index 58b40d3..8ebf2f7 100644 --- a/baseline/source/huff_dec/huff_dec.c +++ b/baseline/source/huff_dec/huff_dec.c | |||
@@ -144,6 +144,8 @@ void huff_dec_init( void ) | |||
144 | { | 144 | { |
145 | huff_dec_input_pos = 0; | 145 | huff_dec_input_pos = 0; |
146 | huff_dec_output_pos = 0; | 146 | huff_dec_output_pos = 0; |
147 | huff_dec_byte_nb_to_read = 0; | ||
148 | huff_dec_val_to_read = 0; | ||
147 | } | 149 | } |
148 | 150 | ||
149 | 151 | ||
@@ -379,15 +381,11 @@ void _Pragma( "entrypoint" ) huff_dec_main( void ) | |||
379 | 381 | ||
380 | int main( int argc, char **argv ) | 382 | int main( int argc, char **argv ) |
381 | { | 383 | { |
382 | //SET_UP | 384 | SET_UP |
383 | int jobsComplete; | 385 | for_each_job { |
384 | int maxJobs=5; | 386 | huff_dec_init(); |
385 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 387 | huff_dec_main(); |
386 | // START_LOOP | 388 | } |
387 | huff_dec_init(); | 389 | WRITE_TO_FILE |
388 | huff_dec_main(); | ||
389 | // STOP_LOOP | ||
390 | } | ||
391 | //WRITE_TO_FILE | ||
392 | return ( huff_dec_return() ); | 390 | return ( huff_dec_return() ); |
393 | } | 391 | } |
diff --git a/baseline/source/huff_enc/huff_enc.c b/baseline/source/huff_enc/huff_enc.c index 0d74916..f2db552 100644 --- a/baseline/source/huff_enc/huff_enc.c +++ b/baseline/source/huff_enc/huff_enc.c | |||
@@ -577,13 +577,11 @@ void _Pragma( "entrypoint" ) huff_enc_main() | |||
577 | 577 | ||
578 | int main( int argc, char **argv ) | 578 | int main( int argc, char **argv ) |
579 | { | 579 | { |
580 | SET_UP | 580 | SET_UP |
581 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 581 | for_each_job { |
582 | START_LOOP | 582 | huff_enc_init(); |
583 | huff_enc_init(); | 583 | huff_enc_main(); |
584 | huff_enc_main(); | 584 | } |
585 | STOP_LOOP | 585 | WRITE_TO_FILE |
586 | } | ||
587 | WRITE_TO_FILE | ||
588 | return ( huff_enc_return() ); | 586 | return ( huff_enc_return() ); |
589 | } | 587 | } |
diff --git a/baseline/source/mpeg2/mpeg2.c b/baseline/source/mpeg2/mpeg2.c index 0567225..cceeb30 100644 --- a/baseline/source/mpeg2/mpeg2.c +++ b/baseline/source/mpeg2/mpeg2.c | |||
@@ -13205,14 +13205,12 @@ void _Pragma ( "entrypoint" ) mpeg2_main( void ) | |||
13205 | 13205 | ||
13206 | int main( int argc, char **argv ) | 13206 | int main( int argc, char **argv ) |
13207 | { | 13207 | { |
13208 | SET_UP | 13208 | SET_UP |
13209 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 13209 | for_each_job { |
13210 | START_LOOP | 13210 | mpeg2_init(); |
13211 | mpeg2_init(); | 13211 | mpeg2_main(); |
13212 | mpeg2_main(); | 13212 | } |
13213 | STOP_LOOP | 13213 | WRITE_TO_FILE |
13214 | } | ||
13215 | WRITE_TO_FILE | ||
13216 | 13214 | ||
13217 | return( mpeg2_return() - (-116) != 0 ); | 13215 | return( mpeg2_return() - (-116) != 0 ); |
13218 | } | 13216 | } |
diff --git a/baseline/source/ndes/ndes.c b/baseline/source/ndes/ndes.c index f169c62..5d00d94 100644 --- a/baseline/source/ndes/ndes.c +++ b/baseline/source/ndes/ndes.c | |||
@@ -365,14 +365,12 @@ void _Pragma( "entrypoint" ) ndes_main() | |||
365 | 365 | ||
366 | int main( int argc, char **argv ) | 366 | int main( int argc, char **argv ) |
367 | { | 367 | { |
368 | SET_UP | 368 | SET_UP |
369 | for(jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 369 | for_each_job { |
370 | START_LOOP | 370 | ndes_init(); |
371 | ndes_init(); | 371 | ndes_main(); |
372 | ndes_main(); | 372 | } |
373 | STOP_LOOP | 373 | WRITE_TO_FILE |
374 | } | ||
375 | WRITE_TO_FILE | ||
376 | 374 | ||
377 | return ( ndes_return() ); | 375 | return ( ndes_return() ); |
378 | } | 376 | } |
diff --git a/baseline/source/petrinet/petrinet.c b/baseline/source/petrinet/petrinet.c index 6ef3392..a54a999 100644 --- a/baseline/source/petrinet/petrinet.c +++ b/baseline/source/petrinet/petrinet.c | |||
@@ -976,14 +976,10 @@ int petrinet_return( void ) | |||
976 | int main( int argc, char **argv ) | 976 | int main( int argc, char **argv ) |
977 | { | 977 | { |
978 | SET_UP | 978 | SET_UP |
979 | 979 | for_each_job { | |
980 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 980 | petrinet_main(); |
981 | 981 | } | |
982 | START_LOOP | 982 | WRITE_TO_FILE |
983 | petrinet_main(); | ||
984 | STOP_LOOP | ||
985 | } | ||
986 | WRITE_TO_FILE | ||
987 | 983 | ||
988 | return ( petrinet_return() ); | 984 | return ( petrinet_return() ); |
989 | } | 985 | } |
diff --git a/baseline/source/rijndael_dec/rijndael_dec.c b/baseline/source/rijndael_dec/rijndael_dec.c index 61db767..c8f606b 100644 --- a/baseline/source/rijndael_dec/rijndael_dec.c +++ b/baseline/source/rijndael_dec/rijndael_dec.c | |||
@@ -182,14 +182,12 @@ void _Pragma( "entrypoint" ) rijndael_dec_main( void ) | |||
182 | 182 | ||
183 | int main(int argc, char** argv) | 183 | int main(int argc, char** argv) |
184 | { | 184 | { |
185 | SET_UP | 185 | SET_UP |
186 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 186 | for_each_job { |
187 | START_LOOP | 187 | rijndael_dec_init(); |
188 | rijndael_dec_init(); | 188 | rijndael_dec_main(); |
189 | rijndael_dec_main(); | 189 | } |
190 | STOP_LOOP | 190 | WRITE_TO_FILE |
191 | } | ||
192 | WRITE_TO_FILE | ||
193 | return ( rijndael_dec_return() ); | 191 | return ( rijndael_dec_return() ); |
194 | } | 192 | } |
195 | 193 | ||
diff --git a/baseline/source/rijndael_enc/rijndael_enc.c b/baseline/source/rijndael_enc/rijndael_enc.c index 6c85eee..f0582c9 100644 --- a/baseline/source/rijndael_enc/rijndael_enc.c +++ b/baseline/source/rijndael_enc/rijndael_enc.c | |||
@@ -68,6 +68,7 @@ void rijndael_enc_init( void ) | |||
68 | rijndael_enc_fin.data = rijndael_enc_data; | 68 | rijndael_enc_fin.data = rijndael_enc_data; |
69 | rijndael_enc_fin.size = 31369; | 69 | rijndael_enc_fin.size = 31369; |
70 | rijndael_enc_fin.cur_pos = 0; | 70 | rijndael_enc_fin.cur_pos = 0; |
71 | rijndael_enc_checksum = 0; | ||
71 | 72 | ||
72 | unsigned i; | 73 | unsigned i; |
73 | volatile int x = 0; | 74 | volatile int x = 0; |
@@ -225,14 +226,17 @@ void _Pragma( "entrypoint" ) rijndael_enc_main( void ) | |||
225 | 226 | ||
226 | int main( int argc, char** argv ) | 227 | int main( int argc, char** argv ) |
227 | { | 228 | { |
228 | SET_UP | 229 | int exit_code = -1; |
229 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 230 | SET_UP |
230 | START_LOOP | 231 | for_each_job { |
231 | rijndael_enc_init(); | 232 | rijndael_enc_init(); |
232 | rijndael_enc_main(); | 233 | rijndael_enc_main(); |
233 | STOP_LOOP | 234 | // This checks the checksum is as expected. |
234 | } | 235 | // This is `&` as only the first job will match |
235 | WRITE_TO_FILE | 236 | // (PRNG state persists between jobs). |
236 | return ( rijndael_enc_return() ); | 237 | exit_code &= rijndael_enc_return(); |
238 | } | ||
239 | WRITE_TO_FILE | ||
240 | return ( exit_code ); | ||
237 | } | 241 | } |
238 | 242 | ||
diff --git a/baseline/source/statemate/statemate.c b/baseline/source/statemate/statemate.c index 888d0fa..8239ed6 100644 --- a/baseline/source/statemate/statemate.c +++ b/baseline/source/statemate/statemate.c | |||
@@ -1273,14 +1273,12 @@ void _Pragma ( "entrypoint" ) statemate_main( void ) | |||
1273 | 1273 | ||
1274 | int main ( int argc, char **argv ) | 1274 | int main ( int argc, char **argv ) |
1275 | { | 1275 | { |
1276 | SET_UP | 1276 | SET_UP |
1277 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 1277 | for_each_job { |
1278 | START_LOOP | 1278 | statemate_init(); |
1279 | statemate_init(); | 1279 | statemate_main(); |
1280 | statemate_main(); | 1280 | } |
1281 | STOP_LOOP | 1281 | WRITE_TO_FILE |
1282 | } | ||
1283 | WRITE_TO_FILE | ||
1284 | 1282 | ||
1285 | return statemate_return(); | 1283 | return statemate_return(); |
1286 | } | 1284 | } |
diff --git a/baseline/source/susan/susan.c b/baseline/source/susan/susan.c index dc27fb1..14a2f28 100644 --- a/baseline/source/susan/susan.c +++ b/baseline/source/susan/susan.c | |||
@@ -2001,14 +2001,12 @@ int susan_return( void ) | |||
2001 | 2001 | ||
2002 | int main( int argc, char **argv ) | 2002 | int main( int argc, char **argv ) |
2003 | { | 2003 | { |
2004 | SET_UP | 2004 | SET_UP |
2005 | for (jobsComplete=0; jobsComplete<maxJobs; jobsComplete++){ | 2005 | for_each_job { |
2006 | START_LOOP | 2006 | susan_init(); |
2007 | susan_init(); | 2007 | susan_main(); |
2008 | susan_main(); | 2008 | } |
2009 | STOP_LOOP | 2009 | WRITE_TO_FILE |
2010 | } | ||
2011 | WRITE_TO_FILE | ||
2012 | 2010 | ||
2013 | return susan_return(); | 2011 | return susan_return(); |
2014 | } | 2012 | } |
diff --git a/dis/Field/field.c b/dis/Field/field.c index 900d47b..d028ee7 100644 --- a/dis/Field/field.c +++ b/dis/Field/field.c | |||
@@ -137,17 +137,17 @@ int main(int argc, char **argv) { | |||
137 | } | 137 | } |
138 | endTime = time(NULL); | 138 | endTime = time(NULL); |
139 | 139 | ||
140 | volatile int sumAll = 0; | 140 | volatile int _stop_optimizer = 0; |
141 | for (l = 0; l < n; l++) { | 141 | for (l = 0; l < n; l++) { |
142 | unsigned int ll; | 142 | unsigned int ll; |
143 | // fprintf(stdout, "%d subfields for token %d \n", token[l].subfields, l); | 143 | //fprintf(stdout, "%d subfields for token %d \n", token[l].subfields, l); |
144 | sumAll += token[l].subfields + l; | 144 | _stop_optimizer += token[l].subfields + l; |
145 | for (ll = 0; ll < token[l].subfields; ll++) { | 145 | for (ll = 0; ll < token[l].subfields; ll++) { |
146 | sumAll += ll + token[l].stat[ll].count + token[l].stat[ll].min + | 146 | _stop_optimizer += ll + token[l].stat[ll].count + token[l].stat[ll].min + |
147 | token[l].stat[ll].sum; | 147 | token[l].stat[ll].sum; |
148 | /*fprintf(stdout, "subfields %d:\tcount = %d\tmin= %x\tsum= %x\n", | 148 | //fprintf(stdout, "subfields %d:\tcount = %d\tmin= %x\tsum= %x\n", |
149 | ll, token[l].stat[ll].count, | 149 | // ll, token[l].stat[ll].count, |
150 | token[l].stat[ll].min, token[l].stat[ll].sum);*/ | 150 | // token[l].stat[ll].min, token[l].stat[ll].sum);*/ |
151 | } | 151 | } |
152 | } | 152 | } |
153 | fprintf(stderr, "time for field stressmark = %f seconds.\n", | 153 | fprintf(stderr, "time for field stressmark = %f seconds.\n", |
diff --git a/dis/Matrix/ver2/matrix.c b/dis/Matrix/ver2/matrix.c index 5162579..9d9ac7e 100755 --- a/dis/Matrix/ver2/matrix.c +++ b/dis/Matrix/ver2/matrix.c | |||
@@ -551,8 +551,10 @@ int main(int argc, char **argv) { | |||
551 | sum += sum + *(vectorX + k); | 551 | sum += sum + *(vectorX + k); |
552 | } | 552 | } |
553 | 553 | ||
554 | fprintf(stdout, "sum = %f, actualError = %e, actualIteration = %d\n", sum, | 554 | //fprintf(stdout, "sum = %f, actualError = %e, actualIteration = %d\n", sum, |
555 | actualError, actualIteration); | 555 | // actualError, actualIteration); |
556 | volatile double _stop_optimizer = sum + actualError + actualIteration; | ||
557 | |||
556 | fprintf(stderr, "time for matrix stressmark = %f seconds.\n", | 558 | fprintf(stderr, "time for matrix stressmark = %f seconds.\n", |
557 | difftime(endTime, beginTime)); | 559 | difftime(endTime, beginTime)); |
558 | 560 | ||
diff --git a/dis/Neighborhood/neighborhood.c b/dis/Neighborhood/neighborhood.c index 2d401d3..ea1c658 100644 --- a/dis/Neighborhood/neighborhood.c +++ b/dis/Neighborhood/neighborhood.c | |||
@@ -74,23 +74,30 @@ int main(int argc, char **argv) { | |||
74 | endTime = time(NULL); | 74 | endTime = time(NULL); |
75 | WRITE_TO_FILE | 75 | WRITE_TO_FILE |
76 | 76 | ||
77 | // printf(" end time is %d\n", endTime); | 77 | volatile double _stop_optimizer = values.distShort.deg0.entropy |
78 | + values.distShort.deg0.energy + values.distShort.deg45.entropy | ||
79 | + values.distShort.deg45.energy + values.distShort.deg90.entropy | ||
80 | + values.distShort.deg90.energy + values.distShort.deg135.entropy | ||
81 | + values.distShort.deg135.energy + values.distLong.deg0.entropy | ||
82 | + values.distLong.deg0.energy + values.distShort.deg45.entropy | ||
83 | + values.distLong.deg45.energy + values.distLong.deg90.entropy | ||
84 | + values.distLong.deg90.energy + values.distLong.deg135.entropy | ||
85 | + values.distLong.deg135.energy; | ||
86 | //fprintf(stdout, "%9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e", | ||
87 | // values.distShort.deg0.entropy, values.distShort.deg0.energy, | ||
88 | // values.distShort.deg45.entropy, values.distShort.deg45.energy, | ||
89 | // values.distShort.deg90.entropy, values.distShort.deg90.energy, | ||
90 | // values.distShort.deg135.entropy, values.distShort.deg135.energy); | ||
78 | 91 | ||
79 | fprintf(stdout, "%9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e", | 92 | //fprintf(stdout, "%9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e", |
80 | values.distShort.deg0.entropy, values.distShort.deg0.energy, | 93 | // values.distLong.deg0.entropy, values.distLong.deg0.energy, |
81 | values.distShort.deg45.entropy, values.distShort.deg45.energy, | 94 | // values.distShort.deg45.entropy, values.distLong.deg45.energy, |
82 | values.distShort.deg90.entropy, values.distShort.deg90.energy, | 95 | // values.distLong.deg90.entropy, values.distLong.deg90.energy, |
83 | values.distShort.deg135.entropy, values.distShort.deg135.energy); | 96 | // values.distLong.deg135.entropy, values.distLong.deg135.energy); |
84 | |||
85 | fprintf(stdout, "%9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e %9.4e", | ||
86 | values.distLong.deg0.entropy, values.distLong.deg0.energy, | ||
87 | values.distShort.deg45.entropy, values.distLong.deg45.energy, | ||
88 | values.distLong.deg90.entropy, values.distLong.deg90.energy, | ||
89 | values.distLong.deg135.entropy, values.distLong.deg135.energy); | ||
90 | 97 | ||
91 | fprintf(stderr, "time for neghborhood stressmark = %f seconds.\n", | 98 | fprintf(stderr, "time for neghborhood stressmark = %f seconds.\n", |
92 | difftime(endTime, beginTime)); | 99 | difftime(endTime, beginTime)); |
93 | 100 | ||
94 | free((Pixel *)image); | 101 | free((Pixel *)image); |
95 | return (SUCCESS); | 102 | return (0); |
96 | } | 103 | } |
diff --git a/dis/Pointer/pointer.c b/dis/Pointer/pointer.c index d97f276..0325c64 100644 --- a/dis/Pointer/pointer.c +++ b/dis/Pointer/pointer.c | |||
@@ -146,10 +146,11 @@ int main(int argc, char **argv) { | |||
146 | 146 | ||
147 | endTime = time(NULL); | 147 | endTime = time(NULL); |
148 | 148 | ||
149 | volatile int _stop_optimizer = thread[l].hops + l; | 149 | volatile int _stop_optimizer = 0; |
150 | /*for (l=0; l<n; l++){ | 150 | for (l=0; l<n; l++){ |
151 | fprintf(stdout, "%lu hops on thread %d\n", thread[l].hops, l); | 151 | _stop_optimizer += thread[l].hops + l; |
152 | }*/ | 152 | // fprintf(stdout, "%lu hops on thread %d\n", thread[l].hops, l); |
153 | } | ||
153 | 154 | ||
154 | fprintf(stderr, "time for pointer stressmark = %f seconds.\n", | 155 | fprintf(stderr, "time for pointer stressmark = %f seconds.\n", |
155 | difftime(endTime, startTime)); | 156 | difftime(endTime, startTime)); |
diff --git a/dis/Transitive/transitive.c b/dis/Transitive/transitive.c index 9337aad..0679f7e 100644 --- a/dis/Transitive/transitive.c +++ b/dis/Transitive/transitive.c | |||
@@ -47,7 +47,6 @@ int main(int argc, char **argv) { | |||
47 | 47 | ||
48 | time_t startTime, stopTime; | 48 | time_t startTime, stopTime; |
49 | unsigned int sum; | 49 | unsigned int sum; |
50 | volatile int realRes = 0; | ||
51 | 50 | ||
52 | assert(fscanf(stdin, "%d %d %d", &n, &m, &seed) == 3); | 51 | assert(fscanf(stdin, "%d %d %d", &n, &m, &seed) == 3); |
53 | 52 | ||
@@ -100,14 +99,15 @@ int main(int argc, char **argv) { | |||
100 | 99 | ||
101 | stopTime = time(NULL); | 100 | stopTime = time(NULL); |
102 | 101 | ||
102 | volatile int _stop_optimizer = 0; | ||
103 | for (j = 0; j < n; j++) { | 103 | for (j = 0; j < n; j++) { |
104 | sum = 0; | 104 | sum = 0; |
105 | for (i = 0; i < n; i++) { | 105 | for (i = 0; i < n; i++) { |
106 | if (*(din + j * n + i) != NO_PATH) | 106 | if (*(din + j * n + i) != NO_PATH) |
107 | sum += *(din + j * n + i); | 107 | sum += *(din + j * n + i); |
108 | } | 108 | } |
109 | realRes += sum; | 109 | _stop_optimizer += sum; |
110 | // fprintf(stdout, "%u ", sum); | 110 | //fprintf(stdout, "%u ", sum); |
111 | } | 111 | } |
112 | for (i = 0; i < n; i++) { | 112 | for (i = 0; i < n; i++) { |
113 | sum = 0; | 113 | sum = 0; |
@@ -115,8 +115,8 @@ int main(int argc, char **argv) { | |||
115 | if (*(din + j * n + i) != NO_PATH) | 115 | if (*(din + j * n + i) != NO_PATH) |
116 | sum += *(din + j * n + i); | 116 | sum += *(din + j * n + i); |
117 | } | 117 | } |
118 | realRes += sum; | 118 | _stop_optimizer += sum; |
119 | // fprintf(stdout, "%u ", sum); | 119 | //fprintf(stdout, "%u ", sum); |
120 | } | 120 | } |
121 | fprintf(stderr, "time for transitive stressmark = %f seconds.\n", | 121 | fprintf(stderr, "time for transitive stressmark = %f seconds.\n", |
122 | difftime(stopTime, startTime)); | 122 | difftime(stopTime, startTime)); |
diff --git a/dis/Update/update.c b/dis/Update/update.c index b7bf2b5..a41f3e1 100644 --- a/dis/Update/update.c +++ b/dis/Update/update.c | |||
@@ -134,10 +134,10 @@ int main(int argc, char **argv) { | |||
134 | endTime = time(NULL); | 134 | endTime = time(NULL); |
135 | 135 | ||
136 | volatile int _stop_optimizer = hops; | 136 | volatile int _stop_optimizer = hops; |
137 | // fprintf(stdout, "%u hops\n", hops); | 137 | //fprintf(stdout, "%u hops\n", hops); |
138 | fprintf(stderr, "time for update stressmark = %f seconds.\n", | 138 | fprintf(stderr, "time for update stressmark = %f seconds.\n", |
139 | difftime(endTime, startTime)); | 139 | difftime(endTime, startTime)); |
140 | free(field); | 140 | free(field); |
141 | WRITE_TO_FILE | 141 | WRITE_TO_FILE |
142 | return (1); | 142 | return (0); |
143 | } | 143 | } |
@@ -1,5 +1,5 @@ | |||
1 | /** | 1 | /** |
2 | * Copyright 2019 Sims Hill Osborne and Joshua Bakita | 2 | * Copyright 2019 Sims Hill Osborne and 2020 Joshua Bakita |
3 | * | 3 | * |
4 | * This header provides facilities by which to separably run and time TACLeBench | 4 | * This header provides facilities by which to separably run and time TACLeBench |
5 | * To use this for paired task timing, define PAIRED (pass CFLAGS=-DPAIRED to make) | 5 | * To use this for paired task timing, define PAIRED (pass CFLAGS=-DPAIRED to make) |
diff --git a/dis/run_all_dis.sh b/run_all_dis.sh index 5a6b6e1..5a6b6e1 100755 --- a/dis/run_all_dis.sh +++ b/run_all_dis.sh | |||
diff --git a/baseline/run_baseline.sh b/run_bench.sh index c5b67b6..c5b67b6 100755 --- a/baseline/run_baseline.sh +++ b/run_bench.sh | |||