@@ -176,31 +176,29 @@ GreedyClusterer::do_clustering(ClusterLegalizer& cluster_legalizer,
176
176
// Try to grow a cluster from the seed molecule without doing intra-lb
177
177
// route for each molecule (i.e. just use faster but not fully
178
178
// conservative legality checks).
179
- LegalizationClusterId new_cluster_id = try_grow_cluster (
180
- seed_mol_id,
181
- candidate_selector,
182
- ClusterLegalizationStrategy::SKIP_INTRA_LB_ROUTE,
183
- cluster_legalizer,
184
- prepacker,
185
- balance_block_type_utilization,
186
- attraction_groups,
187
- num_used_type_instances,
188
- mutable_device_ctx);
179
+ LegalizationClusterId new_cluster_id = try_grow_cluster (seed_mol_id,
180
+ candidate_selector,
181
+ ClusterLegalizationStrategy::SKIP_INTRA_LB_ROUTE,
182
+ cluster_legalizer,
183
+ prepacker,
184
+ balance_block_type_utilization,
185
+ attraction_groups,
186
+ num_used_type_instances,
187
+ mutable_device_ctx);
189
188
190
189
if (!new_cluster_id.is_valid ()) {
191
190
// If the previous strategy failed, try to grow the cluster again,
192
191
// but this time perform full legalization for each molecule added
193
192
// to the cluster.
194
- new_cluster_id = try_grow_cluster (
195
- seed_mol_id,
196
- candidate_selector,
197
- ClusterLegalizationStrategy::FULL,
198
- cluster_legalizer,
199
- prepacker,
200
- balance_block_type_utilization,
201
- attraction_groups,
202
- num_used_type_instances,
203
- mutable_device_ctx);
193
+ new_cluster_id = try_grow_cluster (seed_mol_id,
194
+ candidate_selector,
195
+ ClusterLegalizationStrategy::FULL,
196
+ cluster_legalizer,
197
+ prepacker,
198
+ balance_block_type_utilization,
199
+ attraction_groups,
200
+ num_used_type_instances,
201
+ mutable_device_ctx);
204
202
}
205
203
206
204
// Ensure that the seed was packed successfully.
@@ -233,16 +231,15 @@ GreedyClusterer::do_clustering(ClusterLegalizer& cluster_legalizer,
233
231
return num_used_type_instances;
234
232
}
235
233
236
- LegalizationClusterId GreedyClusterer::try_grow_cluster (
237
- PackMoleculeId seed_mol_id,
238
- GreedyCandidateSelector& candidate_selector,
239
- ClusterLegalizationStrategy strategy,
240
- ClusterLegalizer& cluster_legalizer,
241
- const Prepacker& prepacker,
242
- bool balance_block_type_utilization,
243
- AttractionInfo& attraction_groups,
244
- std::map<t_logical_block_type_ptr, size_t >& num_used_type_instances,
245
- DeviceContext& mutable_device_ctx) {
234
+ LegalizationClusterId GreedyClusterer::try_grow_cluster (PackMoleculeId seed_mol_id,
235
+ GreedyCandidateSelector& candidate_selector,
236
+ ClusterLegalizationStrategy strategy,
237
+ ClusterLegalizer& cluster_legalizer,
238
+ const Prepacker& prepacker,
239
+ bool balance_block_type_utilization,
240
+ AttractionInfo& attraction_groups,
241
+ std::map<t_logical_block_type_ptr, size_t >& num_used_type_instances,
242
+ DeviceContext& mutable_device_ctx) {
246
243
247
244
// Check to ensure that this molecule is unclustered.
248
245
VTR_ASSERT (!cluster_legalizer.is_mol_clustered (seed_mol_id));
0 commit comments