This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] use __builtin_ctzl in ggc-page


Daniel Jacobowitz <drow@false.org> writes:

> On Fri, Jan 14, 2005 at 05:31:21PM -0800, Zack Weinberg wrote:
>> Steven Bosscher <stevenb@suse.de> writes:
>> 
>> > Hi,
>> >
>> > The page allocator looks for free objects by keeping bitmaps of
>> > taken slots in a bag.  We look for a 0 bit with a loop right now,
>> > but we could use a builtin instead, like Nathan did recently for
>> > the revamped bitmap.c.
>> >
>> > Bootstrapped on x86_64-suse-linux-gnu, OK?
>> 
>> This optimization is clearly desirable, but IIRC (it has been
>> discussed before) the preferred way to do it was by using ffs() [which
>> should be automatically optimized by recent GCC] and making sure that
>> function has a fallback in libiberty.
>
> We already use __builtin_clz explicitly in toplev.h, so I don't see any
> harm in doing it this way...

Ah, I had not realized that.  Original patch is OK in that case.  I'd
be curious to hear any performance measurements you might have, Steven.

zw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]