// Copyright 2011 The Code Cavern

void bda_mod_1_1(bda_ptr rem,bda_srcptr xp,bda_len xn,bda_srcptr db)// in each round we hack off a word from the body , ie k=1
{bda_digit h,l,sh,sl;
 bda_len j;
 
ASSERT(xn>=3);
ASSERT_BDA(xp,xn);
ASSERT_DIGIT(db[0]);ASSERT_DIGIT(db[1]);

h=xp[xn-1];l=xp[xn-2];
for(j=xn-3;j>=0;j--)
   {bda_digit_mul(sh,sl,l,db[0]);
    bda_2digit_add(sh,sl,sh,sl,0,xp[j]);
    bda_digit_mul(h,l,h,db[1]);
    bda_2digit_add(h,l,h,l,sh,sl);}
bda_digit_mul(sh,sl,h,db[0]);
bda_2digit_add(sh,sl,sh,sl,0,l);
//ASSERT(sh<d);
rem[0]=sl;rem[1]=sh;
return;}
