ode/src/fastdot.c
changeset 0 2f259fa3e83a
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     1 /* generated code, do not edit. */
       
     2 
       
     3 #include <ode/matrix.h>
       
     4 
       
     5 
       
     6 EXPORT_C dReal dDot (const dReal *a, const dReal *b, int n)
       
     7 {  
       
     8   dReal p0,q0,m0,p1,q1,m1,sum;
       
     9   sum = 0;
       
    10   n -= 2;
       
    11   while (n >= 0) {
       
    12     p0 = a[0]; q0 = b[0];
       
    13     m0 = dMUL(p0,q0);
       
    14     p1 = a[1]; q1 = b[1];
       
    15     m1 = dMUL(p1,q1);
       
    16     sum += m0;
       
    17     sum += m1;
       
    18     a += 2;
       
    19     b += 2;
       
    20     n -= 2;
       
    21   }
       
    22   n += 2;
       
    23   while (n > 0) {
       
    24     sum += dMUL((*a),(*b));
       
    25     a++;
       
    26     b++;
       
    27     n--;
       
    28   }
       
    29   return sum;
       
    30 }