From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20756 invoked by alias); 8 Nov 2004 19:10:56 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 20727 invoked from network); 8 Nov 2004 19:10:52 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org with SMTP; 8 Nov 2004 19:10:52 -0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.11/8.12.11) with ESMTP id iA8JAjVP030228; Mon, 8 Nov 2004 14:10:45 -0500 Received: from potter.sfbay.redhat.com (potter.sfbay.redhat.com [172.16.27.15]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id iA8JAir20164; Mon, 8 Nov 2004 14:10:44 -0500 Received: from frothingslosh.sfbay.redhat.com (frothingslosh.sfbay.redhat.com [172.16.24.27]) by potter.sfbay.redhat.com (8.12.8/8.12.8) with ESMTP id iA8JAeKs014979; Mon, 8 Nov 2004 14:10:42 -0500 Received: from frothingslosh.sfbay.redhat.com (localhost.localdomain [127.0.0.1]) by frothingslosh.sfbay.redhat.com (8.12.10/8.12.10) with ESMTP id iA8JAd4s003441; Mon, 8 Nov 2004 11:10:39 -0800 Received: (from rth@localhost) by frothingslosh.sfbay.redhat.com (8.12.10/8.12.10/Submit) id iA8JAd4w003439; Mon, 8 Nov 2004 11:10:39 -0800 X-Authentication-Warning: frothingslosh.sfbay.redhat.com: rth set sender to rth@redhat.com using -f Date: Mon, 08 Nov 2004 19:20:00 -0000 From: Richard Henderson To: Zdenek Dvorak Cc: gcc-patches@gcc.gnu.org Subject: Re: [patch] Speed up ivopts Message-ID: <20041108191039.GF3278@redhat.com> Mail-Followup-To: Richard Henderson , Zdenek Dvorak , gcc-patches@gcc.gnu.org References: <20041106205353.GA5351@atrey.karlin.mff.cuni.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20041106205353.GA5351@atrey.karlin.mff.cuni.cz> User-Agent: Mutt/1.4.1i X-SW-Source: 2004-11/txt/msg00628.txt.bz2 On Sat, Nov 06, 2004 at 09:53:53PM +0100, Zdenek Dvorak wrote: > ! static const unsigned nzb_tab[] = This is not ok. At minimum you can put this out of line. But as for how to use __builtin_ctz, see the use of __builtin_clz in toplev.h. > + /* Advance to the next nonzero bit in the intersection of > + complemented bitmaps. We will have already advanced past the just > + iterated bit. */ > + > + static inline bool > + bmp_iter_and_compl (bitmap_iterator *bi, unsigned *bit_no) > + { > + if (bi->bits) > + { > + bmp_iter_advance (bi, bit_no); > + return true; > + } > + return bmp_iter_and_compl_1 (bi, bit_no); With the bits-in-word part factored out and inlined, does it make sense to move bmp_iter_and_compl_1 (etc) out of line? The actual iv parts look ok. r~