On Tue, Sep 15, 2009 at 5:07 AM, Gabe Black wrote:
>
> That would work, except that you'd have to punch a readCR3 function
> through all the *context classes and CPU classes between the producer
> and consumer of that value. With templates, that all still happens, but
> it's anonymous and doesn't
Steve Reinhardt wrote:
> On Wed, Sep 9, 2009 at 10:47 AM, Gabriel Michael Black
> wrote:
>
>> As far as how often those functions are called, the read one will be called
>> fairly often for address translation, and potentially in the predecoder
>> depending on the ISA. The writing one is likely
On Wed, Sep 9, 2009 at 10:47 AM, Gabriel Michael Black
wrote:
> As far as how often those functions are called, the read one will be called
> fairly often for address translation, and potentially in the predecoder
> depending on the ISA. The writing one is likely called substantially less
> often.
I was actually leaning towards set/get to make it more distict from
the read/write for memory, but that way sounds fine too.
Gabe
Quoting nathan binkert :
>> That reminds me. Why do we have a convention of read/set? Why not
>> read/write or set/get? It seems a little asymmetric, but admittedly
> That reminds me. Why do we have a convention of read/set? Why not
> read/write or set/get? It seems a little asymmetric, but admittedly
> probably not important enough to change in any case.
I have no idea, but if you want to change it, I'd suggest read/write.
Maybe at some point write meant som
You guys have valid points, and I don't know for a fact that the
compiler isn't already giving us the same performance boost this
might. Back that summer when someone looked at increasing performace I
think they got somewhere by moving some common cases out of the switch
statement and into
I had similar thoughts... I think Gabe's idea could work, but I'm not
sold on the motivation. If it's just for performance, do we know for
sure that this is actually a performance bottleneck?
Also, I don't think we can get rid of the MiscReg space and the
indices, since they're needed to indicate
How often are these functions used? I'd have thought that they're not
so frequent and wouldn't warrant optimization. Also, couldn't they
just be inlined? Or is the variable obfuscated in such a way that the
compiler doesn't know what it is at compile time?
Nate
> Hello everybody. I was think
Hello everybody. I was thinking the other day that it might be a good
idea to templatize readMiscReg and setMiscReg. I don't have the idea
fleshed out all the way, but I thought it would be a good idea to send
an email to before I forgot about it.
When we access control registers, my impress