sim: unify memory & ethernet port binding mechanisms.
Review Request #1922 - Created June 13, 2013 and updated
| Information | |
|---|---|
| Steve Reinhardt | |
| gem5 | |
| default | |
| Reviewers | |
| Default | |
Changeset 9757:071a2d97327a --------------------------- sim: unify memory & ethernet port binding mechanisms. Get rid of the ugly special-casing and dynamic casting going on in connectPorts(), and make the port binding mechanism more extensible. This is done by moving the port lookup methods to SimObject and creating a common base Port class from which both the old Port (now MemPort) and EtherInt (which perhaps should be renamed EtherPort) derive.
Posted (June 13, 2013, 1:33 a.m.)
You want to remove some ugly code in a portion that is only really done once for most systems, and the "price" is a more complex object structure for the ports. My gut feeling is that these different ports have little in common. For example, their actual interfaces are very different. I also think this patch makes the port/interface separation much more difficult.
Review request changed
Updated (June 13, 2013, 4:04 a.m.)
Change Summary:
Update include guard on sim/port.hh (old value was left over from a prior naming scheme I abandoned).
Description: |
|
|||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Diff: |
Revision 2 (+287 -102) |
