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]: Updated new sparse bitmap patch


"Daniel Berlin" <dberlin@dberlin.org> wrote on 26/03/2007 18:14:16:

> On 3/26/07, Olga Golovanevsky <OLGA@il.ibm.com> wrote:
> >
> > I am thinking to use ebitmap for struct-reorg implementation.
> >
> > In struct-reorg, sbitmaps are used for structure fields.
> > Thus they are usually small, and can fit in one or two
EBITMAP_ELT_TYPEs.
> > Would it be still more efficiently to use ebitmap instead of sbitmap?
> Probably.
> Do you do a lot of inserts to the middle of the bitmap that would
> cause it to have to move the rest of the array around?

There are bitmaps with inserts to the middle, but they are
of about two words size. For such bitmaps the actions sequence is:

allocate -> set some bits once -> test all bits number of times.

The setting is not to sequential bits, while the testing is sequential.
For them the cached word will be used.

However there is also bitmap of n_basic_blocks_for_function (f) size.
It's used for visited by an algorithm basic blocks. Its bits are
set/reset in unpredictable from bitmap's point of view manner,
so the array can be moved around.

> > My guess that it will be because of cached element.
> Yes.
>
> >
> > Olga


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