| adjList | MacroLegalizer | private |
| BRAMCell2Column | MacroLegalizer | private |
| BRAMColumn2PUs | MacroLegalizer | private |
| BRAMColumn2Sites | MacroLegalizer | private |
| BRAMColumnNum | MacroLegalizer | private |
| BRAMColumnUntilization | MacroLegalizer | private |
| BRAMColumnXs | MacroLegalizer | private |
| BRAMPUs | MacroLegalizer | private |
| BRAMRowNum | MacroLegalizer | private |
| candidateFactor | MacroLegalizer | private |
| CARRYCell2Column | MacroLegalizer | private |
| CARRYColumn2PUs | MacroLegalizer | private |
| CARRYColumn2Sites | MacroLegalizer | private |
| CARRYColumnNum | MacroLegalizer | private |
| CARRYColumnUntilization | MacroLegalizer | private |
| CARRYColumnXs | MacroLegalizer | private |
| CARRYPUs | MacroLegalizer | private |
| CARRYRowNum | MacroLegalizer | private |
| cellLevelMatching | MacroLegalizer | private |
| cellLoc | MacroLegalizer | private |
| clockRegionAware | MacroLegalizer | private |
| clockRegionCasLegalization | MacroLegalizer | private |
| clockRegionHeightOfDSE_BRAM | MacroLegalizer | private |
| compatiblePlacementTable | MacroLegalizer | private |
| createBipartiteGraph() | MacroLegalizer | private |
| deviceInfo | MacroLegalizer | private |
| displacementThreshold | MacroLegalizer | private |
| DPForMinHPWL(int colNum, std::vector< std::vector< DeviceInfo::DeviceSite * >> &Column2Sites, std::vector< std::deque< PlacementInfo::PlacementUnit * >> &Column2PUs) | MacroLegalizer | private |
| DSPCell2Column | MacroLegalizer | private |
| DSPColumn2PUs | MacroLegalizer | private |
| DSPColumn2Sites | MacroLegalizer | private |
| DSPColumnNum | MacroLegalizer | private |
| DSPColumnUntilization | MacroLegalizer | private |
| DSPColumnXs | MacroLegalizer | private |
| DSPPUs | MacroLegalizer | private |
| DSPRowNum | MacroLegalizer | private |
| DumpMacroLegalizationCnt | MacroLegalizer | private |
| dumpMatching(bool fixedColumn=false, bool enforce=false) | MacroLegalizer | |
| enableBRAMLegalization | MacroLegalizer | private |
| enableCARRYLegalization | MacroLegalizer | private |
| enableDSPLegalization | MacroLegalizer | private |
| finalAverageDisplacement | MacroLegalizer | private |
| finalLegalizeBasedOnDP() | MacroLegalizer | private |
| findCorrespondingColumn(float curX, std::vector< float > &Xs) | MacroLegalizer | private |
| findIdMaxWithRecurence(int minId, int maxId, std::vector< int > &ids) | MacroLegalizer | private |
| findMacroCell2SitesInDistance(bool checkClockRegion) | MacroLegalizer | inlineprivate |
| findMacroType2AvailableSites() | MacroLegalizer | private |
| findPossibleLegalLocation(bool fixedColumn=false) | MacroLegalizer | private |
| fixedColumnAverageDisplacement | MacroLegalizer | private |
| fixedColumnLegalize(bool directLegalization) | MacroLegalizer | private |
| getAverageDisplacementOfExactLegalization() | MacroLegalizer | inline |
| getAverageDisplacementOfRoughLegalization() | MacroLegalizer | inline |
| getDisplacement(PlacementInfo::Location ¯oLoc, DeviceInfo::DeviceSite *curSite) | MacroLegalizer | inlineprivate |
| getDisplacement(PlacementInfo::PlacementUnit *curPU, DeviceInfo::DeviceSite *curSite) | MacroLegalizer | inlineprivate |
| getHPWLChange(DesignInfo::DesignCell *curCell, DeviceInfo::DeviceSite *curSite) | MacroLegalizer | inlineprivate |
| getHPWLChange(PlacementInfo::PlacementUnit *tmpPU, DeviceInfo::DeviceSite *curSite) | MacroLegalizer | inlineprivate |
| getHPWLChange(PlacementInfo::PlacementUnit *tmpPU, float PUX, float PUY) | MacroLegalizer | inlineprivate |
| getMacrosToLegalize() | MacroLegalizer | private |
| getMarcroCellNum(PlacementInfo::PlacementUnit *tmpMacroUnit) | MacroLegalizer | private |
| hasNoTarget() | MacroLegalizer | inline |
| initialDisplacementThreshold | MacroLegalizer | private |
| initialMacrosToLegalize | MacroLegalizer | private |
| initialMaxNumCandidate | MacroLegalizer | private |
| JSONCfg | MacroLegalizer | private |
| legalize(bool exactLegalization=false, bool directLegalization=false, bool _timingDrivenLegalize=false) | MacroLegalizer | |
| legalizerName | MacroLegalizer | private |
| macro2Sites | MacroLegalizer | private |
| macro2SitesInDisplacementThreshold | MacroLegalizer | private |
| macroCanBeFitIn(int colId, std::vector< std::vector< DeviceInfo::DeviceSite * >> &Column2Sites, std::deque< PlacementInfo::PlacementUnit * > Column2PUs) | MacroLegalizer | private |
| macroCellsToLegalize | MacroLegalizer | private |
| MacroLegalizer(std::string legalizerName, PlacementInfo *placementInfo, DeviceInfo *deviceInfo, std::vector< DesignInfo::DesignCellType > ¯oTypesToLegalize, std::map< std::string, std::string > &JSONCfg) | MacroLegalizer | |
| macroType2Sites | MacroLegalizer | private |
| macroTypesToLegalize | MacroLegalizer | private |
| macroUnitsToLegalizeSet | MacroLegalizer | private |
| mapMacrosToColumns(bool directLegalization) | MacroLegalizer | private |
| matchedMacroCells | MacroLegalizer | private |
| matchedSites | MacroLegalizer | private |
| maxNumCandidate | MacroLegalizer | private |
| minCostBipartiteMatcher | MacroLegalizer | private |
| nJobs | MacroLegalizer | private |
| noTarget | MacroLegalizer | private |
| placementInfo | MacroLegalizer | private |
| PU2Columns | MacroLegalizer | private |
| PU2LegalSites | MacroLegalizer | private |
| PU2SiteX | MacroLegalizer | private |
| PU2X | MacroLegalizer | private |
| PU2Y | MacroLegalizer | private |
| PULevelMatching | MacroLegalizer | private |
| quick_sort_locX(std::vector< PlacementInfo::PlacementUnit * > &PUs, int p, int q) | MacroLegalizer | inlineprivate |
| quick_sort_WLChange(DesignInfo::DesignCell *curCell, std::vector< DeviceInfo::DeviceSite * > &sites, int p, int q, PlacementInfo::Location ¯oLoc) | MacroLegalizer | inlineprivate |
| RandomPivotPartition(DesignInfo::DesignCell *curCell, std::vector< DeviceInfo::DeviceSite * > &sites, int low, int high, PlacementInfo::Location ¯oLoc) | MacroLegalizer | inlineprivate |
| RandomPivotPartition(std::vector< PlacementInfo::PlacementUnit * > &PUs, int low, int high) | MacroLegalizer | inlineprivate |
| resetMacroCell2SitesInDistance() | MacroLegalizer | inlineprivate |
| resetSettings() | MacroLegalizer | inlineprivate |
| resetSitesMapped() | MacroLegalizer | |
| resolveOverflowColumns() | MacroLegalizer | private |
| rightSiteIds | MacroLegalizer | private |
| roughAverageDisplacement | MacroLegalizer | private |
| roughlyLegalize() | MacroLegalizer | private |
| setClockRegionAware(bool _clockRegionAware) | MacroLegalizer | inline |
| setClockRegionCasLegalization(bool _clockRegionCasLegalization) | MacroLegalizer | inline |
| setIntitialParameters(float displacementThr, int candidateNum, int _candidateFactor=-1) | MacroLegalizer | inline |
| setSitesMapped() | MacroLegalizer | private |
| siteList | MacroLegalizer | private |
| sortPartition(DesignInfo::DesignCell *curCell, std::vector< DeviceInfo::DeviceSite * > &sites, int low, int high, PlacementInfo::Location ¯oLoc) | MacroLegalizer | inlineprivate |
| sortPartition(std::vector< PlacementInfo::PlacementUnit * > &PUs, int low, int high) | MacroLegalizer | inlineprivate |
| sortPUsByPU2Y(std::deque< PlacementInfo::PlacementUnit * > &PUs) | MacroLegalizer | private |
| sortSitesBySiteY(std::vector< DeviceInfo::DeviceSite * > &sites) | MacroLegalizer | private |
| spreadMacros(int columnNum, std::vector< int > &columnUntilization, std::vector< std::vector< DeviceInfo::DeviceSite * >> &column2Sites, std::vector< std::deque< PlacementInfo::PlacementUnit * >> &column2PUs, std::map< DesignInfo::DesignCell *, int > &cell2Column, float globalBudgeRatio=1) | MacroLegalizer | private |
| swapPU(PlacementInfo::PlacementUnit **A, PlacementInfo::PlacementUnit **B) | MacroLegalizer | inlineprivate |
| swapPUs(PlacementInfo::PlacementUnit **PUA, PlacementInfo::PlacementUnit **PUB) | MacroLegalizer | inlineprivate |
| swapSitePtr(DeviceInfo::DeviceSite **siteA, DeviceInfo::DeviceSite **siteB) | MacroLegalizer | inlineprivate |
| timingDrivenLegalize | MacroLegalizer | private |
| updateMatchingAndUnmatchedMacroCells() | MacroLegalizer | private |
| updatePUMatchingLocation(bool isRoughLegalization=true, bool updateDisplacement=true) | MacroLegalizer | private |
| verbose | MacroLegalizer | private |
| y2xRatio | MacroLegalizer | private |
| ~MacroLegalizer() | MacroLegalizer | inline |