When i try and run this code (this is a simplified version of the code but it generates the error) I get a
COMP_ERROR: Dynamic Compiler Internal Error. It occurs on the _if(v1[2]at least if I comment out this test and just do the calculation i don't get the error). What am I doing
that it doesn't like ?
void Fnc1a(f32 & result, dense v1,dense v2,dense A1, dense A2) {
u64 p = 1;
usize entry;
position(entry);
i32 offset = entry; // Need this due to casting problems . . .
i32 n,m,i;
_for (n=0, n<21, n++) {
/* Below calculates the initial skip ahead before we skip ahead in individual threads for parallelism*/
m = (i32) (offset%8 - 1);
_if (m>=0) {
_for (i=0, i<3, i++) {
v1[i] = (A1[i+3*0+9*m+63*n])%m1;
v2[i] = (A2[i+3*0+9*m+63*n])%m2;
} _end_for;
} _end_if;
offset = offset/8;
} _end_for;
_if(v1[2] p += m1;
} _end_if;
result = norm * (f32)p;
}
void Fnc1aCall(dense & Result,dense v1,dense v2, dense A1, dense A2) {
arbb::map(Fnc1a)(Result, v1, v2, A1, A2);
}
the m1, m2 and norm are just #define(d) like below
#define m1 4294967087
--
jason



