@@ -733,12 +733,10 @@ static inline t_pl_loc find_nearest_compatible_loc(const t_flat_pl_loc& src_flat
733
733
// floorplanning constraints and compatibility for all
734
734
// members of the macro. This prevents some macros being
735
735
// placed where they obviously cannot be implemented.
736
- // Note: The check_all_legality flag is poorly named. false means
737
- // that it WILL check all legality...
738
736
t_pl_loc new_loc = t_pl_loc (grid_loc.x , grid_loc.y , new_sub_tile, grid_loc.layer_num );
739
737
bool site_legal_for_macro = macro_can_be_placed (pl_macro,
740
738
new_loc,
741
- false /* check_all_legality*/ ,
739
+ true /* check_all_legality*/ ,
742
740
blk_loc_registry);
743
741
if (site_legal_for_macro) {
744
742
// Update the best solition.
@@ -1200,9 +1198,10 @@ bool try_place_macro(const t_pl_macro& pl_macro,
1200
1198
return macro_placed;
1201
1199
}
1202
1200
1203
- bool mac_can_be_placed = macro_can_be_placed (pl_macro, head_pos, /* check_all_legality=*/ false , blk_loc_registry);
1201
+ // called from initial placement
1202
+ bool macro_can_be_placed = macro_can_be_placed (pl_macro, head_pos, /* check_all_legality=*/ true , blk_loc_registry);
1204
1203
1205
- if (mac_can_be_placed ) {
1204
+ if (macro_can_be_placed ) {
1206
1205
// Place down the macro
1207
1206
macro_placed = true ;
1208
1207
VTR_LOGV_DEBUG (f_placer_debug, " \t\t\t\t Macro is placed at the given location\n " );
0 commit comments