XOR[0...x] = (x&1^(x&2)>>1)+x*(~x&1)
Of course, you don't have to do this with xor, you can do it with just addition (mod wordmax) and the well known identity attributed to gauss will support you.