Packet: Unify the use of PortID in packet and port
authorAndreas Hansson <andreas.hansson@arm.com>
Wed, 30 May 2012 09:29:42 +0000 (05:29 -0400)
committerAndreas Hansson <andreas.hansson@arm.com>
Wed, 30 May 2012 09:29:42 +0000 (05:29 -0400)
commitcad802761a876c6dcd00d58e09c8984886c987f6
treefcb327a8923631de61133c6ad14aeaffcc44761c
parent6a54f7fc5ff1c33bc9f222014dc08c33248b0299
Packet: Unify the use of PortID in packet and port

This patch removes the Packet::NodeID typedef and unifies it with the
Port::PortId. The src and dest fields in the packet are used to hold a
port id (e.g. in the bus), and thus the two should actually be the
same.

The typedef PortID is now global (in base/types.hh) and aligned with
the ThreadID in terms of capitalisation and naming of the
InvalidPortID constant.

Before this patch, two flags were used for valid destination and
source, rather than relying on a named value (InvalidPortID), and
this is now redundant, as the src and dest field themselves are
sufficient to tell whether the current value is a valid port
identifier or not. Consequently, the VALID_SRC and VALID_DST are
removed.

As part of the cleaning up, a number of int parameters and local
variables are updated to use PortID.

Note that Ruby still has its own NodeID typedef. Furthermore, the
MemObject getMaster/SlavePort still has an int idx parameter with a
default value of -1 which should eventually change to PortID idx =
InvalidPortID.
src/base/types.hh
src/cpu/testers/directedtest/RubyDirectedTester.hh
src/cpu/testers/rubytest/RubyTester.hh
src/mem/bridge.hh
src/mem/bus.cc
src/mem/bus.hh
src/mem/cache/cache_impl.hh
src/mem/packet.hh
src/mem/port.cc
src/mem/port.hh