Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Nov 2012 14:07:28 -0700
From:      Warner Losh <imp@bsdimp.com>
To:        Alan Cox <alc@rice.edu>
Cc:        "Jayachandran C." <jchandra@freebsd.org>, mips@freebsd.org
Subject:   Re: ZERO_REGION_SIZE
Message-ID:  <DF2CB7FC-C1ED-4F4C-A39A-60B5E7FC566D@bsdimp.com>
In-Reply-To: <50A54CCD.8070409@rice.edu>
References:  <50A53391.4080909@rice.edu> <CAJ-Vmon-v3K7012ti_L6ao3wQHfQ99Jau1kJ%2BGhumbPjAuSDww@mail.gmail.com> <50A54CCD.8070409@rice.edu>

next in thread | previous in thread | raw e-mail | index | archive | help

On Nov 15, 2012, at 1:13 PM, Alan Cox wrote:
> P.S. I would encourage someone with hardware to look into implementing =
a
> non-iterative ffs*() using (d)clz.  The MIPS pmap would benefit from
> this.  Basically, most pmap_enter() calls are doing an ffs*().

ffs finds the first bit set. clz counts the number of leading zeros and =
thus finds the last bit set.  Would a non-iterative fls* be helpful?

Warner




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DF2CB7FC-C1ED-4F4C-A39A-60B5E7FC566D>