OpenASIP  2.0
MachineConnectivityCheck.hh
Go to the documentation of this file.
1 /*
2  Copyright (c) 2002-2009 Tampere University.
3 
4  This file is part of TTA-Based Codesign Environment (TCE).
5 
6  Permission is hereby granted, free of charge, to any person obtaining a
7  copy of this software and associated documentation files (the "Software"),
8  to deal in the Software without restriction, including without limitation
9  the rights to use, copy, modify, merge, publish, distribute, sublicense,
10  and/or sell copies of the Software, and to permit persons to whom the
11  Software is furnished to do so, subject to the following conditions:
12 
13  The above copyright notice and this permission notice shall be included in
14  all copies or substantial portions of the Software.
15 
16  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19  THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  DEALINGS IN THE SOFTWARE.
23  */
24 /**
25  * @file MachineConnectivityCheck.hh
26  *
27  * Declaration of MachineConnectivityCheck class.
28  *
29  * @author Pekka Jääskeläinen 2007 (pjaaskel-no.spam-cs.tut.fi)
30  * @note rating: red
31  */
32 
33 #ifndef TTA_MACHINE_CONNECTIVITY_CHECK_HH
34 #define TTA_MACHINE_CONNECTIVITY_CHECK_HH
35 
36 #include <set>
37 #include <map>
38 #include <vector>
39 
40 #include "MachineCheck.hh"
41 #include "ProgramAnnotation.hh"
42 #include "MachinePart.hh"
43 
44 class TCEString;
45 class MoveNode;
46 class Operation;
47 
48 namespace TTAMachine {
49  class Port;
50  class Bus;
51  class RegisterFile;
52  class BaseRegisterFile;
53  class Unit;
54  class FunctionUnit;
55  class Guard;
56  class HWOperation;
57 }
58 
59 namespace TTAProgram {
60  class TerminalImmediate;
61  class Move;
62 }
63 
64 /**
65  * Base class for machine interconnection connectivity checks.
66  *
67  * Provides helper functions that are useful for many derived checks.
68  */
70 public:
71  typedef std::set<const TTAMachine::Port*,
73  typedef std::set<TTAMachine::Bus*,
75  typedef std::set<const TTAMachine::FunctionUnit*,
77 
78  virtual bool check(const TTAMachine::Machine& mach,
79  MachineCheckResults& results) const;
80 
81  static bool isConnected(
82  const TTAMachine::Port& sourcePort,
83  const TTAMachine::Port& destinationPort,
84  const TTAMachine::Guard* guard = NULL);
85 
86  static bool isConnected(
87  const TTAMachine::BaseRegisterFile& sourceRF,
88  const TTAMachine::Port& destPort);
89 
90  static bool isConnected(
91  const TTAMachine::BaseRegisterFile& sourceRF,
92  const TTAMachine::BaseRegisterFile& destRF,
93  const TTAMachine::Guard* guard = NULL);
94 
95  static bool isConnectedWithBothGuards(
96  const TTAMachine::BaseRegisterFile& sourceRF,
97  const TTAMachine::BaseRegisterFile& destRF,
98  std::pair<const TTAMachine::RegisterFile*,int> guardReg);
99 
100  static bool isConnected(
101  const TTAMachine::Port& sourcePort,
102  const TTAMachine::RegisterFile& destRF);
103 
104  static bool isConnected(
105  const TTAMachine::BaseRegisterFile& sourceRF,
106  const TTAMachine::FunctionUnit& destFU);
107 
108  static bool isConnected(
109  PortSet sourcePorts,
110  PortSet destinationPorts,
111  const TTAMachine::Guard* guard = NULL);
112 
113  static bool isConnected(
114  const std::set<TTAMachine::Port*> ports,
115  const TTAMachine::Bus& bus
116  );
117 
118  static bool isConnected(
119  const TTAMachine::Bus& bus,
120  const TTAMachine::Port& port);
121 
122  static bool isConnected(
123  const TTAMachine::Port& port,
124  const TTAMachine::Bus& bus);
125 
126  static bool canWriteAllImmediates(TTAMachine::Port& destPort);
127 
128  static bool canTransportImmediate(
129  const TTAProgram::TerminalImmediate& immediate,
130  const TTAMachine::BaseRegisterFile& destRF,
131  const TTAMachine::Guard* guard = NULL);
132 
133  static bool canTransportImmediate(
134  const TTAProgram::TerminalImmediate& immediate,
135  const TTAMachine::Port& destinationPort,
136  const TTAMachine::Guard* guard = NULL);
137 
138  static bool canTransportImmediate(
139  const TTAProgram::TerminalImmediate& immediate,
140  PortSet destinationPorts,
141  const TTAMachine::Guard* guard = NULL);
142 
143  static bool canTransportImmediate(
144  const TTAProgram::TerminalImmediate& immediate,
145  const TTAMachine::Bus& bus);
146 
147  static bool canTransportMove(
148  const MoveNode& moveNode,
150  bool ignoreGuard = false);
151 
152  static bool canBypass(
153  const MoveNode& src,
154  const MoveNode& user,
155  const TTAMachine::Machine& targetMachine);
156 
157  static bool rfConnected(
158  const TTAMachine::RegisterFile& rf);
159 
160  static bool fromRfConnected(
161  const TTAMachine::BaseRegisterFile& brf);
162 
163  static bool toRfConnected(
164  const TTAMachine::RegisterFile& brf);
165 
166  static std::set<const TTAMachine::Bus*> connectedSourceBuses(
167  const TTAMachine::Port& port);
168 
169  static std::set<const TTAMachine::Bus*> connectedDestinationBuses(
170  const TTAMachine::Port& port);
171 
172  static void appendConnectedSourceBuses(
173  const TTAMachine::Port& port, std::set<const TTAMachine::Bus*>& buses);
174 
176  const TTAMachine::Port& port, std::set<const TTAMachine::Bus*>& buses);
177 
178  static void appendConnectedSourceBuses(
179  const TTAMachine::Unit& unit, std::set<const TTAMachine::Bus*>& buses);
180 
182  const TTAMachine::Unit& unit, std::set<const TTAMachine::Bus*>& buses);
183 
184  static std::set<const TTAMachine::RegisterFile*,
187 
188  static int requiredImmediateWidth(
189  bool signExtension,
190  const TTAProgram::TerminalImmediate& source,
191  const TTAMachine::Machine& mach);
192 
193  static bool busConnectedToPort(
194  const TTAMachine::Bus& bus, const TTAMachine::Port& port);
195 
196  static bool busConnectedToRF(
197  const TTAMachine::Bus& bus, const TTAMachine::Unit& destRF);
198 
199  static bool busConnectedToFU(
200  const TTAMachine::Bus& bus, const TTAMachine::FunctionUnit& fu,
201  const TCEString& opName, int opIndex);
202 
203  static bool busConnectedToAnyFU(
204  const TTAMachine::Bus& bus, const MoveNode& moveNode);
205 
206  static bool busConnectedToDestination(
207  const TTAMachine::Bus& bus, const MoveNode& moveNode);
208 
209  static int totalConnectionCount(const TTAMachine::Machine& mach);
210 
212  const TTAMachine::Machine& mach, const MoveNode& node);
213 
215  const TTAMachine::Machine& mach, const MoveNode& node);
216 
218  const MoveNode& src,
219  PortSet& ports,
220  bool ignoreGuard = false);
221 
222  static bool canAnyPortWriteToDestination(
223  PortSet& ports,
224  const MoveNode& dest);
225 
226  static PortSet findWritePorts(const TTAMachine::Unit& rf);
227  static PortSet findReadPorts(const TTAMachine::Unit& rf);
228 
229  static BusSet findRoutes(
230  TTAMachine::Port& port1,
231  TTAMachine::Port& port2);
232 
233  static bool canBypassOpToDst(
234  const TTAMachine::Machine& mach,
235  const TCEString& opName,
236  int outIndex,
237  const MoveNode& mn);
238 
239  static FUSet copyOpFUs(
240  const TTAMachine::Machine& mach,
241  const MoveNode& mn);
242 
243  static bool hasConditionalMoves(
244  const TTAMachine::Machine& mach,
245  const std::set<int>& rfWidths);
246 
248  virtual ~MachineConnectivityCheck();
249 
250  static void addAnnotatedFUs(
251  std::set<TCEString>& candidateFUs,
252  const TTAProgram::Move& m,
254 
256  const TTAMachine::RegisterFile& rf);
257 
258  static bool isEquallyConnected(
259  const TTAMachine::BaseRegisterFile& RF1,
260  const TTAMachine::BaseRegisterFile& RF2);
261 
262  static std::pair<bool,bool> hasBothGuards(
263  const TTAMachine::Bus* bus,
264  std::pair<const TTAMachine::RegisterFile*,int> guardReg);
265 
266  static std::set<const TTAMachine::RegisterFile*>
269 
270  static int maxLIMMCount(const TTAMachine::Machine& targetMachine);
271  static int maxSIMMCount(const TTAMachine::Machine& targetMachine);
272 
273  static bool
275  const TTAMachine::Port& port, std::set<int> widths);
276 
277  static std::pair<int, int>
278  shortImmBits(std::set<const TTAMachine::Bus*>& buses);
279 
280  static std::pair<int, int>
282 
283  static bool
285  const TTAMachine::Machine& mach);
286 
287  static std::pair<int, int>
288  immBits(const TTAMachine::Machine& mach);
289 
290  static void
291  shortImmBits(
292  std::set<const TTAMachine::Bus*>& buses,
293  std::pair<int, int>&);
294 
295 static int operandWidth(const TTAMachine::HWOperation& hwop, int index);
296 
297 static bool raConnected(const TTAMachine::Machine& machine);
298 
299 protected:
300  MachineConnectivityCheck(const std::string& shortDesc_);
301 private:
302  typedef std::pair<const TTAMachine::Port*,const TTAMachine::Port*>
304 
305  typedef std::pair<const TTAMachine::BaseRegisterFile*,
307 
308  typedef std::pair<const TTAMachine::BaseRegisterFile*,
310 
311  typedef std::pair<const TTAMachine::Port*,
313 
314  typedef std::map<PortPortPair,bool> PortPortBoolMap;
315  typedef std::map<RfRfPair,bool> RfRfBoolMap;
316  typedef std::map<RfPortPair,bool> RfPortBoolMap;
317  typedef std::map<PortRfPair,bool> PortRfBoolMap;
318 
323 };
324 
325 #endif
TTAMachine::Guard
Definition: Guard.hh:55
MachineConnectivityCheck::PortPortBoolMap
std::map< PortPortPair, bool > PortPortBoolMap
Definition: MachineConnectivityCheck.hh:314
MachineConnectivityCheck::findPossibleDestinationPorts
static PortSet findPossibleDestinationPorts(const TTAMachine::Machine &mach, const MoveNode &node)
Definition: MachineConnectivityCheck.cc:1474
TTAProgram
Definition: Estimator.hh:65
MachineConnectivityCheck::busConnectedToPort
static bool busConnectedToPort(const TTAMachine::Bus &bus, const TTAMachine::Port &port)
Definition: MachineConnectivityCheck.cc:1290
MachineConnectivityCheck::requiredImmediateWidth
static int requiredImmediateWidth(bool signExtension, const TTAProgram::TerminalImmediate &source, const TTAMachine::Machine &mach)
Definition: MachineConnectivityCheck.cc:1247
MachineConnectivityCheck::busConnectedToDestination
static bool busConnectedToDestination(const TTAMachine::Bus &bus, const MoveNode &moveNode)
Definition: MachineConnectivityCheck.cc:1433
MachineConnectivityCheck
Definition: MachineConnectivityCheck.hh:69
MachineConnectivityCheck::PortPortPair
std::pair< const TTAMachine::Port *, const TTAMachine::Port * > PortPortPair
Definition: MachineConnectivityCheck.hh:303
MachineConnectivityCheck::findPossibleSourcePorts
static PortSet findPossibleSourcePorts(const TTAMachine::Machine &mach, const MoveNode &node)
Definition: MachineConnectivityCheck.cc:1673
MachineConnectivityCheck::appendConnectedSourceBuses
static void appendConnectedSourceBuses(const TTAMachine::Port &port, std::set< const TTAMachine::Bus * > &buses)
Definition: MachineConnectivityCheck.cc:799
MachineConnectivityCheck::isConnectedToDifferentlyConnectedRFs
static bool isConnectedToDifferentlyConnectedRFs(const TTAMachine::RegisterFile &rf)
Definition: MachineConnectivityCheck.cc:875
machine
TTAMachine::Machine * machine
the architecture definition of the estimated processor
Definition: EstimatorCmdLineUI.cc:59
MachineConnectivityCheck::isConnectedWithBothGuards
static bool isConnectedWithBothGuards(const TTAMachine::BaseRegisterFile &sourceRF, const TTAMachine::BaseRegisterFile &destRF, std::pair< const TTAMachine::RegisterFile *, int > guardReg)
Definition: MachineConnectivityCheck.cc:1946
TTAMachine::HWOperation
Definition: HWOperation.hh:52
MachineConnectivityCheck::RfRfBoolMap
std::map< RfRfPair, bool > RfRfBoolMap
Definition: MachineConnectivityCheck.hh:315
MachineConnectivityCheck::canTransportImmediate
static bool canTransportImmediate(const TTAProgram::TerminalImmediate &immediate, const TTAMachine::BaseRegisterFile &destRF, const TTAMachine::Guard *guard=NULL)
Definition: MachineConnectivityCheck.cc:181
TTAMachine::Bus
Definition: Bus.hh:53
MachineConnectivityCheck::RfPortPair
std::pair< const TTAMachine::BaseRegisterFile *, const TTAMachine::Port * > RfPortPair
Definition: MachineConnectivityCheck.hh:309
MoveNode
Definition: MoveNode.hh:65
MachineConnectivityCheck::rfConnected
static bool rfConnected(const TTAMachine::RegisterFile &rf)
Definition: MachineConnectivityCheck.cc:587
MachineConnectivityCheck::canTransportMove
static bool canTransportMove(const MoveNode &moveNode, const TTAMachine::Machine &machine, bool ignoreGuard=false)
Definition: MachineConnectivityCheck.cc:1843
MachineConnectivityCheck::isEquallyConnected
static bool isEquallyConnected(const TTAMachine::BaseRegisterFile &RF1, const TTAMachine::BaseRegisterFile &RF2)
Definition: MachineConnectivityCheck.cc:447
MachineConnectivityCheck::hasConditionalMoves
static bool hasConditionalMoves(const TTAMachine::Machine &mach, const std::set< int > &rfWidths)
Definition: MachineConnectivityCheck.cc:1876
MachinePart.hh
MachineConnectivityCheck::findWritePorts
static PortSet findWritePorts(const TTAMachine::Unit &rf)
Definition: MachineConnectivityCheck.cc:1589
TTAProgram::ProgramAnnotation::Id
Id
the ID in TPEF is 24 bits, here enum
Definition: ProgramAnnotation.hh:52
MachineConnectivityCheck::canBypass
static bool canBypass(const MoveNode &src, const MoveNode &user, const TTAMachine::Machine &targetMachine)
Definition: MachineConnectivityCheck.cc:1789
TTAMachine::FunctionUnit
Definition: FunctionUnit.hh:55
MachineConnectivityCheck::needRegCopiesDueReadPortConflicts
static std::set< const TTAMachine::RegisterFile * > needRegCopiesDueReadPortConflicts(const TTAMachine::Machine &machine)
Definition: MachineConnectivityCheck.cc:904
MachineConnectivityCheck::RfRfPair
std::pair< const TTAMachine::BaseRegisterFile *, const TTAMachine::BaseRegisterFile * > RfRfPair
Definition: MachineConnectivityCheck.hh:306
MachineConnectivityCheck::hasBothGuards
static std::pair< bool, bool > hasBothGuards(const TTAMachine::Bus *bus, std::pair< const TTAMachine::RegisterFile *, int > guardReg)
Definition: MachineConnectivityCheck.cc:1983
MachineConnectivityCheck::busConnectedToAnyFU
static bool busConnectedToAnyFU(const TTAMachine::Bus &bus, const MoveNode &moveNode)
Definition: MachineConnectivityCheck.cc:1341
MachineConnectivityCheck::MachineConnectivityCheck
MachineConnectivityCheck()
Definition: MachineConnectivityCheck.cc:67
MachineConnectivityCheck::connectedDestinationBuses
static std::set< const TTAMachine::Bus * > connectedDestinationBuses(const TTAMachine::Port &port)
Definition: MachineConnectivityCheck.cc:784
MachineConnectivityCheck::addAnnotatedFUs
static void addAnnotatedFUs(std::set< TCEString > &candidateFUs, const TTAProgram::Move &m, TTAProgram::ProgramAnnotation::Id id)
Definition: MachineConnectivityCheck.cc:1856
TTAMachine::BaseRegisterFile
Definition: BaseRegisterFile.hh:48
MachineConnectivityCheck::rfRfCache_
static RfRfBoolMap rfRfCache_
Definition: MachineConnectivityCheck.hh:320
MachineConnectivityCheck::check
virtual bool check(const TTAMachine::Machine &mach, MachineCheckResults &results) const
Definition: MachineConnectivityCheck.cc:115
TTAMachine::Unit
Definition: Unit.hh:51
MachineConnectivityCheck::totalConnectionCount
static int totalConnectionCount(const TTAMachine::Machine &mach)
Definition: MachineConnectivityCheck.cc:1461
MachineConnectivityCheck::fromRfConnected
static bool fromRfConnected(const TTAMachine::BaseRegisterFile &brf)
Definition: MachineConnectivityCheck.cc:502
MachineConnectivityCheck::FUSet
std::set< const TTAMachine::FunctionUnit *, const TTAMachine::MachinePart::Comparator > FUSet
Definition: MachineConnectivityCheck.hh:76
MachineConnectivityCheck::PortRfPair
std::pair< const TTAMachine::Port *, const TTAMachine::BaseRegisterFile * > PortRfPair
Definition: MachineConnectivityCheck.hh:312
TTAMachine::Port
Definition: Port.hh:54
MachineCheck::shortDesc_
const std::string & shortDesc_
Short description of the check.
Definition: MachineCheck.hh:69
MachineConnectivityCheck::isConnected
static bool isConnected(const TTAMachine::Port &sourcePort, const TTAMachine::Port &destinationPort, const TTAMachine::Guard *guard=NULL)
Definition: MachineConnectivityCheck.cc:128
MachineConnectivityCheck::canSourceWriteToAnyDestinationPort
static int canSourceWriteToAnyDestinationPort(const MoveNode &src, PortSet &ports, bool ignoreGuard=false)
Definition: MachineConnectivityCheck.cc:1754
MachineConnectivityCheck::PortRfBoolMap
std::map< PortRfPair, bool > PortRfBoolMap
Definition: MachineConnectivityCheck.hh:317
MachineConnectivityCheck::maxSIMMCount
static int maxSIMMCount(const TTAMachine::Machine &targetMachine)
Definition: MachineConnectivityCheck.cc:2019
MachineCheck.hh
MachineConnectivityCheck::portPortCache_
static PortPortBoolMap portPortCache_
Definition: MachineConnectivityCheck.hh:319
MachineConnectivityCheck::immBits
static std::pair< int, int > immBits(const TTAMachine::RegisterFile &rf)
Definition: MachineConnectivityCheck.cc:620
MachineConnectivityCheck::raConnected
static bool raConnected(const TTAMachine::Machine &machine)
Definition: MachineConnectivityCheck.cc:966
MachineConnectivityCheck::findReadPorts
static PortSet findReadPorts(const TTAMachine::Unit &rf)
Definition: MachineConnectivityCheck.cc:1601
MachineConnectivityCheck::busConnectedToRF
static bool busConnectedToRF(const TTAMachine::Bus &bus, const TTAMachine::Unit &destRF)
Definition: MachineConnectivityCheck.cc:1306
MachineCheckResults
Definition: MachineCheckResults.hh:46
TTAProgram::Move
Definition: Move.hh:55
MachineConnectivityCheck::portRfCache_
static PortRfBoolMap portRfCache_
Definition: MachineConnectivityCheck.hh:322
MachineConnectivityCheck::isPortApplicableToWidths
static bool isPortApplicableToWidths(const TTAMachine::Port &port, std::set< int > widths)
Definition: MachineConnectivityCheck.cc:463
MachineConnectivityCheck::appendConnectedDestinationBuses
static void appendConnectedDestinationBuses(const TTAMachine::Port &port, std::set< const TTAMachine::Bus * > &buses)
Definition: MachineConnectivityCheck.cc:818
MachineConnectivityCheck::canWriteAllImmediates
static bool canWriteAllImmediates(TTAMachine::Port &destPort)
Definition: MachineConnectivityCheck.cc:1191
Operation
Definition: Operation.hh:59
MachineConnectivityCheck::tempRegisterFiles
static std::set< const TTAMachine::RegisterFile *, TTAMachine::MachinePart::Comparator > tempRegisterFiles(const TTAMachine::Machine &machine)
Definition: MachineConnectivityCheck.cc:1038
MachineConnectivityCheck::canBypassOpToDst
static bool canBypassOpToDst(const TTAMachine::Machine &mach, const TCEString &opName, int outIndex, const MoveNode &mn)
Definition: MachineConnectivityCheck.cc:2075
TTAProgram::TerminalImmediate
Definition: TerminalImmediate.hh:44
MachineConnectivityCheck::toRfConnected
static bool toRfConnected(const TTAMachine::RegisterFile &brf)
Definition: MachineConnectivityCheck.cc:674
MachineConnectivityCheck::shortImmBits
static std::pair< int, int > shortImmBits(std::set< const TTAMachine::Bus * > &buses)
TCEString
Definition: TCEString.hh:53
MachineConnectivityCheck::RfPortBoolMap
std::map< RfPortPair, bool > RfPortBoolMap
Definition: MachineConnectivityCheck.hh:316
MachineConnectivityCheck::findRoutes
static BusSet findRoutes(TTAMachine::Port &port1, TTAMachine::Port &port2)
Definition: MachineConnectivityCheck.cc:1658
MachineConnectivityCheck::connectedSourceBuses
static std::set< const TTAMachine::Bus * > connectedSourceBuses(const TTAMachine::Port &port)
Definition: MachineConnectivityCheck.cc:769
MachineCheck
Definition: MachineCheck.hh:50
MachineConnectivityCheck::rfPortCache_
static RfPortBoolMap rfPortCache_
Definition: MachineConnectivityCheck.hh:321
MachineConnectivityCheck::~MachineConnectivityCheck
virtual ~MachineConnectivityCheck()
Definition: MachineConnectivityCheck.cc:74
TTAMachine::RegisterFile
Definition: RegisterFile.hh:47
MachineConnectivityCheck::canAnyPortWriteToDestination
static bool canAnyPortWriteToDestination(PortSet &ports, const MoveNode &dest)
Definition: MachineConnectivityCheck.cc:1830
TTAMachine
Definition: Assembler.hh:48
TTAMachine::MachinePart::Comparator
Definition: MachinePart.hh:59
MachineConnectivityCheck::copyOpFUs
static FUSet copyOpFUs(const TTAMachine::Machine &mach, const MoveNode &mn)
Definition: MachineConnectivityCheck.cc:2040
ProgramAnnotation.hh
MachineConnectivityCheck::busConnectedToFU
static bool busConnectedToFU(const TTAMachine::Bus &bus, const TTAMachine::FunctionUnit &fu, const TCEString &opName, int opIndex)
Definition: MachineConnectivityCheck.cc:1319
MachineConnectivityCheck::needsRegisterCopiesDueImmediateOperands
static bool needsRegisterCopiesDueImmediateOperands(const TTAMachine::Machine &mach)
Definition: MachineConnectivityCheck.cc:947
MachineConnectivityCheck::operandWidth
static int operandWidth(const TTAMachine::HWOperation &hwop, int index)
Definition: MachineConnectivityCheck.cc:890
MachineConnectivityCheck::BusSet
std::set< TTAMachine::Bus *, const TTAMachine::MachinePart::Comparator > BusSet
Definition: MachineConnectivityCheck.hh:74
MachineConnectivityCheck::PortSet
std::set< const TTAMachine::Port *, const TTAMachine::MachinePart::Comparator > PortSet
Definition: MachineConnectivityCheck.hh:72
TTAMachine::Machine
Definition: Machine.hh:73
MachineConnectivityCheck::maxLIMMCount
static int maxLIMMCount(const TTAMachine::Machine &targetMachine)
Definition: MachineConnectivityCheck.cc:2009