Made tests build on SPARC
[akaros.git] / tests / manycore_test.c
1 #include <stdio.h>
2 #include <assert.h>
3 #include <hart.h>
4 #include <parlib.h>
5
6 hart_barrier_t b;
7
8 void do_work_son(int vcoreid)
9 {
10         int cpuid = sys_getcpuid();
11         int pid = sys_getpid();
12         printf("Hello! My Process ID: %d My VCoreID: %d My CPU: %d\n", pid, vcoreid, cpuid);
13         hart_barrier_wait(&b,vcoreid);
14 }
15
16 void hart_entry()
17 {
18         assert(hart_self() > 0);
19         do_work_son(hart_self());
20 }
21
22 int main(int argc, char** argv)
23 {
24         assert(hart_self() == 0);
25         hart_barrier_init(&b,hart_max_harts());
26         hart_request(hart_max_harts()-1);
27         do_work_son(0);
28         return 0;
29 }