source: tests/concurrency/cofor.cfa @ 50be8af

Last change on this file since 50be8af was 1ed5e9e, checked in by caparsons <caparson@…>, 8 months ago

Added cfa equivalent of cofor/cobegin/coend

  • Property mode set to 100644
File size: 553 bytes
Line 
1#include <cofor.hfa>
2
3long total = 0;
4void inner_loop( long i ) { __atomic_fetch_add( &total, i, __ATOMIC_SEQ_CST ); }
5void add_num( void * arg ) { __atomic_fetch_add( &total, (long)arg, __ATOMIC_SEQ_CST ); }
6
7int main() {
8    printf("start\n");
9    processor p[4];
10    cofor( 0, 10, inner_loop );
11    parallel_stmt_t stmts[5] = { add_num, add_num, add_num, add_num, add_num };
12    void * nums[5] = { (void *)11, (void *)12, (void *)13, (void *)14, (void *)15 };
13    parallel( stmts, nums, 5 );
14    printf("total: %ld\n", total);
15    printf("done\n");
16}
Note: See TracBrowser for help on using the repository browser.