Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-15 Thread Steve Reinhardt
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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-14 Thread Gabe Black
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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-11 Thread Steve Reinhardt
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.

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-11 Thread Gabriel Michael Black
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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-11 Thread 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 > 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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-09 Thread Gabriel Michael Black
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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-09 Thread Steve Reinhardt
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

Re: [m5-dev] templating readMiscReg and setMiscReg

2009-09-08 Thread nathan binkert
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

[m5-dev] templating readMiscReg and setMiscReg

2009-09-08 Thread Gabriel Michael Black
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