2. SE/FS convergence. I generally hesitate to push people to incorporate orthogonal code cleanup into unrelated changes, but this seems like a really great opportunity to push toward unifying the two TranslatingPort classes. At the very least I think it would be good to rename both SETranslatingPort and FSTranslatingPort to just TranslatingPort, with the one you get depending on your compilation mode. Then in other parts of the code you wouldn't really have a distinction... for example, see my comment on that snippet in remote_gdb.cc. Also renaming the SE-mode getMemProxy() to getVirtProxy() to be parallel with FS mode would help. Since you're renaming things anyway it seems like we should do it right. Of course this needs to be coordinated with what Gabe is doing; how are you dealing with the VirtualPort/TranslatingPort issue, Gabe?

With FULL_SYSTEM, we were choosing to include or exclude things but generally not to choose between two implementations of the same thing. With the ISAs things are significantly different. In my merged repository, I have both translating ports and virtual ports at the same time, although only one or the other will get used. If we're going to go so far as to actually combine the two types of ports that would be great, but we shouldn't use the preprocessor and FULL_SYSTEM to decide which implementation to use since that gets ugly when the preprocessor can't be used any more.

That being said, We should consider the names SE and FS semideprecated. They're still pretty descriptive and are seen around the simulator, but I don't want to use them in any formal way like in the names of classes. It would make sense to use the original names and change the implementation.

Gabe
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to