* All Tools:

- New: Added FreeBSD/Ubuntu patches from Otacilio De Araujo
       (<otaciliodearaujo@gmail.com>).

  * ./katabatic:
    - New: Makes use of cbug to display the (scary) debug messages.
This commit is contained in:
Jean-Paul Chaput 2012-12-03 08:28:43 +00:00
parent 2012f14acf
commit 6a7e664087
8 changed files with 47 additions and 101 deletions

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2009, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./AutoContact.cpp" | // | C++ Module : "./AutoContact.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include <cstdlib> #include <cstdlib>
@ -1364,7 +1356,7 @@ namespace {
Box constraint = _contact->getConstraintBox()/*.inflate(DbU::lambda(0.5))*/; Box constraint = _contact->getConstraintBox()/*.inflate(DbU::lambda(0.5))*/;
if ( !constraint.contains(center) ) if ( !constraint.contains(center) )
cerr << Bug("%s [%s %s] outside constraint %s." cbug << Bug("%s [%s %s] outside constraint %s."
,getString(_contact).c_str() ,getString(_contact).c_str()
,DbU::getValueString(center.getX()).c_str() ,DbU::getValueString(center.getX()).c_str()
,DbU::getValueString(center.getY()).c_str() ,DbU::getValueString(center.getY()).c_str()

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2010, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./AutoHorizontal.cpp" | // | C++ Module : "./AutoHorizontal.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include <algorithm> #include <algorithm>

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2010, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./AutoSegment.cpp" | // | C++ Module : "./AutoSegment.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include "hurricane/Warning.h" #include "hurricane/Warning.h"

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2010, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./GCell.cpp" | // | C++ Module : "./GCell.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include <cmath> #include <cmath>
@ -1010,17 +1002,17 @@ namespace Katabatic {
if ( not Session::getDemoMode() and Session::getWarnGCellOverload() ) { if ( not Session::getDemoMode() and Session::getWarnGCellOverload() ) {
for ( size_t i=0 ; i<_depth ; i++ ) { for ( size_t i=0 ; i<_depth ; i++ ) {
if ( _densities[i] > 1.0 ) { if ( _densities[i] > 1.0 ) {
cerr << Warning("%s @%dx%d overloaded in %s (M2:%.2f M3:%.2f M4:%.2f M5:%.2f)" cinfo << Warning("%s @%dx%d overloaded in %s (M2:%.2f M3:%.2f M4:%.2f M5:%.2f)"
,_getString().c_str() ,_getString().c_str()
,getColumn() ,getColumn()
,getRow() ,getRow()
,getString(Session::getRoutingGauge()->getRoutingLayer(i)->getName()).c_str() ,getString(Session::getRoutingGauge()->getRoutingLayer(i)->getName()).c_str()
,_densities[1] // M2 ,_densities[1] // M2
,_densities[2] // M3 ,_densities[2] // M3
//,_blockages[2] // M4 //,_blockages[2] // M4
,_densities[3] // M5 ,_densities[3] // M5
,_densities[4] // M6 ,_densities[4] // M6
) )
<< endl; << endl;
} }
} }
@ -1063,12 +1055,12 @@ namespace Katabatic {
if ( rpNets.size() < Session::getSaturateRp() ) return; if ( rpNets.size() < Session::getSaturateRp() ) return;
cerr << Warning("%s has %zd terminals (h:%zd, v:%zd)" cinfo << Warning("%s has %zd terminals (h:%zd, v:%zd)"
,getString(this).c_str() ,getString(this).c_str()
,rps.size() ,rps.size()
,_hsegments.size() ,_hsegments.size()
,_vsegments.size() ,_vsegments.size()
) << endl; ) << endl;
AutoSegment* segment; AutoSegment* segment;
while ( (_densities[1] > 0.5) and stepDesaturate(1,globalNets,segment,true) ) { while ( (_densities[1] > 0.5) and stepDesaturate(1,globalNets,segment,true) ) {
@ -1354,7 +1346,7 @@ namespace Katabatic {
if ( (edgeUpSaturation > threshold) or (edgeRightSaturation > threshold) ) { if ( (edgeUpSaturation > threshold) or (edgeRightSaturation > threshold) ) {
overload = true; overload = true;
cerr << Warning("In %s, (over %.2f) ", _getString().c_str(), threshold); cinfo << Warning("In %s, (over %.2f) ", _getString().c_str(), threshold);
ostringstream message; ostringstream message;
message << setprecision(3); message << setprecision(3);
@ -1367,7 +1359,7 @@ namespace Katabatic {
<< " " << edgeRightSaturation; << " " << edgeRightSaturation;
} }
cerr << message.str() << "." << endl; cinfo << message.str() << "." << endl;
} }
return overload; return overload;
@ -1382,8 +1374,8 @@ namespace Katabatic {
void GCell::translate ( const DbU::Unit&, const DbU::Unit& ) void GCell::translate ( const DbU::Unit&, const DbU::Unit& )
{ {
cerr << Warning("Calling GCell::translate() on %s is likely a bug." cinfo << Warning("Calling GCell::translate() on %s is likely a bug."
,_getString().c_str()) << endl; ,_getString().c_str()) << endl;
} }
@ -1490,7 +1482,7 @@ namespace Katabatic {
DyKeyQueue::~DyKeyQueue () DyKeyQueue::~DyKeyQueue ()
{ {
if ( not _requests.empty() ) { if ( not _requests.empty() ) {
cerr << Warning("~DyKeyQueue(): Still contains %d requests (and %d elements)." cbug << Warning("~DyKeyQueue(): Still contains %d requests (and %d elements)."
,_requests.size(),_map.size()) << endl; ,_requests.size(),_map.size()) << endl;
} }
} }

View File

@ -64,7 +64,7 @@ namespace Katabatic {
void GCellGrid::_postCreate () void GCellGrid::_postCreate ()
{ {
KnikEngine::KnikEngine* knik; KnikEngine* knik;
knik = KnikEngine::get ( getCell() ); knik = KnikEngine::get ( getCell() );
if ( !knik ) if ( !knik )
throw Error ( missingKnikEngine, "GCellGrid::_postCreate()", getString(getCell()).c_str() ); throw Error ( missingKnikEngine, "GCellGrid::_postCreate()", getString(getCell()).c_str() );

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2010, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./KatabaticEngine.cpp" | // | C++ Module : "./KatabaticEngine.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include <iostream> #include <iostream>

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2011, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
//
// ===================================================================
//
// $Id$
// //
// +-----------------------------------------------------------------+ // +-----------------------------------------------------------------+
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,9 +12,6 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./LoadGrByNet.cpp" | // | C++ Module : "./LoadGrByNet.cpp" |
// | *************************************************************** |
// | U p d a t e s |
// | |
// +-----------------------------------------------------------------+ // +-----------------------------------------------------------------+
@ -1904,6 +1896,7 @@ namespace {
switch ( padInstance->getTransformation().getOrientation() ) { switch ( padInstance->getTransformation().getOrientation() ) {
case Transformation::Orientation::ID: // North side. case Transformation::Orientation::ID: // North side.
case Transformation::Orientation::YR: // Right side. case Transformation::Orientation::YR: // Right side.
case Transformation::Orientation::R3: // Right side (alterate).
topRightPad = true; topRightPad = true;
break; break;
case Transformation::Orientation::MY: // South side. case Transformation::Orientation::MY: // South side.
@ -2245,8 +2238,9 @@ namespace {
AutoContact* subContact; AutoContact* subContact;
if ( leftRP == rightRP ) { if ( leftRP == rightRP ) {
_GCell_rp_AutoContacts ( _gcell, leftRP, _southWestContact, _northEastContact, (_south == NULL) && (_north == NULL) ); _southWestContact = _GCell_rp_Access ( _gcell, leftRP, (_south == NULL) && (_north == NULL), false );
//_northEastContact = _southWestContact; _northEastContact = _southWestContact;
//_GCell_rp_AutoContacts ( _gcell, leftRP, _southWestContact, _northEastContact, (_south == NULL) && (_north == NULL) );
} else { } else {
ltrace(99) << "Using separate global contacts" << endl; ltrace(99) << "Using separate global contacts" << endl;
_GCell_rp_AutoContacts ( _gcell, leftRP , _southWestContact, subContact, (_south == NULL) ); _GCell_rp_AutoContacts ( _gcell, leftRP , _southWestContact, subContact, (_south == NULL) );

View File

@ -2,14 +2,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2008, All Rights Reserved // Copyright (c) UPMC/LIP6 2008-2012, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | K a t a b a t i c - Routing Toolbox | // | K a t a b a t i c - Routing Toolbox |
// | | // | |
@ -17,10 +12,7 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./NetOptimals.cpp" | // | C++ Module : "./NetOptimals.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include <cstdlib> #include <cstdlib>