use SSE3 hadd to get rid of shuffling