changes.
[IRC.git] / Robust / src / Runtime / multicorehelper.h
1 #ifndef MULTICORE_HELPER_H
2 #define MULTICORE_HELPER_H
3
4 #ifdef GC_1
5 // NUMCORES4GC = 1
6 static int gc_core2block[2] = {0,1};
7
8 static int gc_block2core[2] = { 0,  0};
9 #elif defined GC_56
10 // NUMCORES4GC = 56
11 static int gc_core2block[112] = {
12   0,111,  15, 96,  16,95,  31,80,  32,79,  47,64,  48,63,
13   1,110,  14, 97,  17,94,  30,81,  33,78,  46,65,  49,62,
14   2,109,  13, 98,  18,93,  29,82,  34,77,  45,66,  50,61,
15   3,108,  12, 99,  19,92,  28,83,  35,76,  44,67,  51,60,
16   4,107,  11,100,  20,91,  27,84,  36,75,  43,68,  52,59,
17   5,106,  10,101,  21,90,  26,85,  37,74,  42,69,  53,58,
18   6,105,   9,102,  22,89,  25,86,  38,73,  41,70,  54,57,
19   7,104,   8,103,  23,88,  24,87,  39,72,  40,71,  55,56
20 };
21
22 static int gc_block2core[112] = {
23   0,  7, 14, 21, 28, 35, 42, 49, 50, 43, 36, 29, 22, 15,  8,  1,
24   2,  9, 16, 23, 30, 37, 44, 51, 52, 45, 38, 31, 24, 17, 10,  3,
25   4, 11, 18, 25, 32, 39, 46, 53, 54, 47, 40, 33, 26, 19, 12,  5,
26   6, 13, 20, 27, 34, 41, 48, 55, 55, 48, 41, 34, 27, 20, 13,  6,
27   5, 12, 19, 26, 33, 40, 47, 54, 53, 46, 39, 32, 25, 18, 11,  4,
28   3, 10, 17, 24, 31, 38, 45, 52, 51, 44, 37, 30, 23, 16,  9,  2,
29   1,  8, 15, 22, 29, 36, 43, 50, 49, 42, 35, 28, 21, 14,  7,  0
30 };
31 #elif defined GC_62
32 // NUMCORES4GC = 62
33 static int gc_core2block[124] = {
34   0,123,  15,108,  16,107,  31,92,  32,91,  47,76,
35   1,122,  14,109,  17,106,  30,93,  33,90,  46,77,  48,75,  61,62,
36   2,121,  13,110,  18,105,  29,94,  34,89,  45,78,  49,74,  60,63,
37   3,120,  12,111,  19,104,  28,95,  35,88,  44,79,  50,73,  59,64,
38   4,119,  11,112,  20,103,  27,96,  36,87,  43,80,  51,72,  58,65,
39   5,118,  10,113,  21,102,  26,97,  37,86,  42,81,  52,71,  57,66,
40   6,117,   9,114,  22,101,  25,98,  38,85,  41,82,  53,70,  56,67,
41   7,116,   8,115,  23,100,  24,99,  39,84,  40,83,  54,69,  55,68
42 };
43
44 static int gc_block2core[124] = {
45   0,  6, 14, 22, 30, 38, 46, 54, 55, 47, 39, 31, 23, 15,  7,  1,
46   2,  8, 16, 24, 32, 40, 48, 56, 57, 49, 41, 33, 25, 17,  9,  3,
47   4, 10, 18, 26, 34, 42, 50, 58, 59, 51, 43, 35, 27, 19, 11,  5,
48   12, 20, 28, 36, 44, 52, 60, 61, 53, 45, 37, 29, 21, 13,
49   13, 21, 29, 37, 45, 53, 61, 60, 52, 44, 36, 28, 20, 12,
50   5, 11, 19, 27, 35, 43, 51, 59, 58, 50, 42, 34, 26, 18, 10,  4,
51   3,  9, 17, 25, 33, 41, 49, 57, 56, 48, 40, 32, 24, 16,  8,  2,
52   1,  7, 15, 23, 31, 39, 47, 55, 54, 46, 38, 30, 22, 14,  6,  0
53 };
54 #endif
55
56 #endif // MULTICORE_HELPER_H