hazelchaz: (gif)
2013-12-20 05:52 pm

Mystery function

Who knows what this does?

int mysteryfunction(int a, int b)
{
    int newa, newb;

    while (b != 0) {
        newa = a ^ b; /* xor */
        newb = (a & b) << 1; /* and, shift left */
        a=newa; b=newb;
    }
    return a;
}