could it be easier if you did hadd %sw?