This what I have thought of. Currently, doTransition() function takes in the cache state of the address that is being supplied. This function further calls setState() function, one of functions that repeatedly calls isTagPresent(). Instead, if we pass the cache state and the cache Entry reference to doTransition(), then we will not have to call all the isTagPresent().

The problem with this is that before the caches looked up, there is a structure called TBE which is being looked up. What does TBE stands for? We can pass references to a TBE entry and a cache entry. If the TBE entry has a valid state, then it is used. Else the state of the cache entry is looked and used if valid.

Nilay

On Tue, 30 Nov 2010, Nilay Vaish wrote:

Is it possible to have variables local to a function in .sm files. I am thinking of storing getCacheEntry()'s return value in a local variable.

Nilay

On Mon, 29 Nov 2010, Beckmann, Brad wrote:

Hi Nilay,

I don't think we want to replace the implicit Address parameter inside the state machines with the CacheEntry parameter, but we might want to supplement the state machine functions to include both. I don't think we can replace the Address parameter because certain transitions within a state machine don't operate on a CacheEntry, but they do operate on an Address. However, as we discussed last week, we might be able to pass the CacheEntry into the trigger function along with the Address, which is then implicitly included in all actions. The key in my mind is that we want to maintain the current programming invariant that SLICC does not expose pointers, but underneath the generated code needs to manage that sometimes the CacheEntry pointer may equal NULL. In particular, I would like to minimize any added complexity we put on the setState function. I think we can make this work, but we need to think through the details, including how replacements are handled.

I have a few other things I need to take care of first, but I may be able to look into the details of how to make this work by the end of the week.

Brad

_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to