From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52341) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ycbpk-0003LK-F6 for qemu-devel@nongnu.org; Mon, 30 Mar 2015 11:42:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ycbpg-000767-Fq for qemu-devel@nongnu.org; Mon, 30 Mar 2015 11:42:36 -0400 Received: from mail-qg0-x231.google.com ([2607:f8b0:400d:c04::231]:34556) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ycbpg-000761-BZ for qemu-devel@nongnu.org; Mon, 30 Mar 2015 11:42:32 -0400 Received: by qgep97 with SMTP id p97so192005269qge.1 for ; Mon, 30 Mar 2015 08:42:32 -0700 (PDT) Sender: Richard Henderson Message-ID: <55196EE4.6010502@twiddle.net> Date: Mon, 30 Mar 2015 08:42:28 -0700 From: Richard Henderson MIME-Version: 1.0 References: <1426593410-21405-1-git-send-email-stefanha@redhat.com> <1426593410-21405-4-git-send-email-stefanha@redhat.com> In-Reply-To: <1426593410-21405-4-git-send-email-stefanha@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 3/7] Convert ffs() != 0 callers to ctz32() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi , qemu-devel@nongnu.org Cc: Peter Maydell , Markus Armbruster On 03/17/2015 04:56 AM, Stefan Hajnoczi wrote: > @@ -1989,8 +1989,7 @@ static void omap_mpuio_write(void *opaque, hwaddr addr, > case 0x04: /* OUTPUT_REG */ > diff = (s->outputs ^ value) & ~s->dir; > s->outputs = value; > - while ((ln = ffs(diff))) { > - ln --; > + while ((ln = ctz32(diff)) != 32) { > if (s->handler[ln]) > qemu_set_irq(s->handler[ln], (value >> ln) & 1); > diff &= ~(1 << ln); Surely while (diff != 0) { ln = ctz32(diff); ... } would be a better conversion. r~