Subject: Re: major revision of kernel 'evcnt' interfaces.
To: Anders Magnusson <ragge@ludd.luth.se>
From: Lennart Augustsson <lennart@augustsson.net>
List: tech-kern
Date: 06/04/2000 01:10:34
Anders Magnusson wrote:

> > On Sat, Jun 03, 2000 at 11:48:07PM +0200, Anders Magnusson wrote:
> >
> >  > >      struct evcnt {
> >  > >              u_int64_t       ev_count;      /* how many have occurred */
> >  >              /|\
> >  >               |
> >  >
> >  > This may be sub-optimal on many architectures. On vax, for example, it
> >  > generates a bunch of extra insn's. If this is incremented often it
> >  > would be not-so-good.
> >
> > Sounds like it's time to add a new pattern to vax.md!!  :-)
> >
> Eh, new pattern? There are no 64-bit add/sub insn's on vax.
> (but there are move, shift and other...)

It's been a few years since I did any Vax assembly programming, but
surely it will only take one extra instruction?  An add followed by an add with carry.

    incl counter
    adwc $0, counter+4

--

        -- Lennart