sign_extend() did NOT expect all upper bits cleared but clear it