Compliance with c++11 and clang 3.8.1 (Debian 9.2).

This commit is contained in:
Jean-Paul Chaput 2017-12-02 14:25:03 +01:00
parent 51d5313801
commit 89dfc2179c
46 changed files with 851 additions and 900 deletions

View File

@ -147,7 +147,7 @@ namespace Anabatic {
AutoSegments_OnRoutingPad::Locator::Locator ( RoutingPad* rp, const AutoContactTerminal* contact ) AutoSegments_OnRoutingPad::Locator::Locator ( RoutingPad* rp, const AutoContactTerminal* contact )
: AutoSegmentHL() : AutoSegmentHL()
, _elements ({NULL,NULL,NULL,NULL}) , _elements ({{NULL,NULL,NULL,NULL}})
, _index (0) , _index (0)
{ {
if (rp) { if (rp) {

View File

@ -587,8 +587,6 @@ namespace Anabatic {
{ {
const GCell* current = this; const GCell* current = this;
if (not this) cerr << Error("*this* is NULL!") << endl;
while ( current ) { while ( current ) {
if (not current->isFlat() and current->getBoundingBox().contains(x,y)) break; if (not current->isFlat() and current->getBoundingBox().contains(x,y)) break;

View File

@ -2437,6 +2437,7 @@ namespace {
} }
#if THIS_IS_DISABLED
bool isVertical ( RoutingPad* rp ) bool isVertical ( RoutingPad* rp )
{ {
return ( (rp->getSourcePosition().getX() == rp->getTargetPosition().getX()) return ( (rp->getSourcePosition().getX() == rp->getTargetPosition().getX())
@ -2451,6 +2452,7 @@ namespace {
&& (rp->getSourcePosition().getX() != rp->getTargetPosition().getX()) && (rp->getSourcePosition().getX() != rp->getTargetPosition().getX())
); );
} }
#endif
RoutingPad* returnSW ( GCell* gcell, RoutingPad* rp1, RoutingPad* rp2 ) RoutingPad* returnSW ( GCell* gcell, RoutingPad* rp1, RoutingPad* rp2 )

View File

@ -8,7 +8,7 @@ namespace coloquinte{
namespace gp{ namespace gp{
namespace{ namespace{
index_t const null_ind = std::numeric_limits<index_t>::max(); //index_t const null_ind = std::numeric_limits<index_t>::max();
inline void opt_orient(netlist const & circuit, placement_t & pl, std::function<int_t (point<int_t>)> i_coor, std::function<bool & (point<bool> &)> b_coor,mask_t FLIPPABLE){ inline void opt_orient(netlist const & circuit, placement_t & pl, std::function<int_t (point<int_t>)> i_coor, std::function<bool & (point<bool> &)> b_coor,mask_t FLIPPABLE){
std::stack<index_t> opt_cells; std::stack<index_t> opt_cells;

View File

@ -350,7 +350,8 @@ void region_distribution::region::distribute_new_cells(region & region_a, region
b_capacity_limit=cells.size(); // Last cell (but first in the vector) that region_b can take entirely (or cells.size()) b_capacity_limit=cells.size(); // Last cell (but first in the vector) that region_b can take entirely (or cells.size())
capacity_t remaining_capacity_a = region_a.capacity_, remaining_capacity_b = region_b.capacity_; capacity_t remaining_capacity_a = region_a.capacity_, remaining_capacity_b = region_b.capacity_;
for(;preference_limit < cells.size() && cells[preference_limit].marginal_cost_ <= 0.0; ++preference_limit); for(;preference_limit < cells.size() && cells[preference_limit].marginal_cost_ <= 0.0; ++preference_limit)
;
{ // Block { // Block
capacity_t remaining_cap_a = region_a.capacity_; capacity_t remaining_cap_a = region_a.capacity_;

View File

@ -404,7 +404,7 @@ std::vector<std::pair<index_t, index_t> > get_MST_topology(std::vector<point<int
} }
if(pins.size() == 3){ if(pins.size() == 3){
auto D = [](point<int_t> a, point<int_t> b){ return (int_t)(std::abs((float)(a.x - b.x)) + std::abs((float)(a.y - b.y))); }; auto D = [](point<int_t> a, point<int_t> b){ return (int_t)(std::abs((float)(a.x - b.x)) + std::abs((float)(a.y - b.y))); };
auto dists = std::array<int_t, 3>({D(pins[1], pins[2]), D(pins[1], pins[2]), D(pins[0], pins[1])}); auto dists = std::array<int_t, 3>({{D(pins[1], pins[2]), D(pins[1], pins[2]), D(pins[0], pins[1])}});
index_t mx = std::max_element(dists.begin(), dists.end()) - dists.begin(); index_t mx = std::max_element(dists.begin(), dists.end()) - dists.begin();
for(index_t i=0; i<3; ++i){ for(index_t i=0; i<3; ++i){
if(i != mx) if(i != mx)

View File

@ -47,8 +47,8 @@ namespace {
using namespace std; using namespace std;
inline bool isAbcAutomaticName ( string name ) //inline bool isAbcAutomaticName ( string name )
{ return (name.substr(0,5) == "$abc$"); } //{ return (name.substr(0,5) == "$abc$"); }
// ------------------------------------------------------------------- // -------------------------------------------------------------------

View File

@ -47,6 +47,7 @@ using namespace std;
namespace { namespace {
#if THIS_IS_DISABLED
struct PinSort { struct PinSort {
bool operator()(const Pin* pin1, const Pin* pin2) const bool operator()(const Pin* pin1, const Pin* pin2) const
{ {
@ -253,6 +254,7 @@ void DumpInstances(ofstream &ccell, Cell* cell) {
end_for; end_for;
} }
} }
#endif
} }
@ -260,6 +262,7 @@ namespace CRL {
void bookshelfDriver( const string cellPath, Cell *cell, unsigned int &saveState) void bookshelfDriver( const string cellPath, Cell *cell, unsigned int &saveState)
{ {
#if THIS_IS_DISABLED
::std::ofstream auxFile ( cellPath.c_str() ); ::std::ofstream auxFile ( cellPath.c_str() );
// .aux file generation : // .aux file generation :
@ -270,25 +273,26 @@ void bookshelfDriver( const string cellPath, Cell *cell, unsigned int &saveStat
<< str_name << ".nets " << str_name << ".nets "
<< str_name << ".pl" << endl; << str_name << ".pl" << endl;
//DumpMasters ( ccell, cell ); DumpMasters ( ccell, cell );
//ccell << "UCLA nodes 1.0" << endl; ccell << "UCLA nodes 1.0" << endl;
//DumpDate(ccell); DumpDate(ccell);
//ccell << "," << scaleX << endl; ccell << "," << scaleX << endl;
//const Box& abutmentBox = cell->getAbutmentBox(); const Box& abutmentBox = cell->getAbutmentBox();
//ccell << "A " ccell << "A "
// << abutmentBox.getXMin() << abutmentBox.getXMin()
// << "," << abutmentBox.getYMin() << "," << abutmentBox.getYMin()
// << "," << abutmentBox.getXMax() << "," << abutmentBox.getXMax()
// << "," << abutmentBox.getYMax() << "," << abutmentBox.getYMax()
// << endl; << endl;
//DumpPins(ccell, cell); DumpPins(ccell, cell);
//DumpInstances(ccell, cell); DumpInstances(ccell, cell);
//DumpSegments(ccell, cell); DumpSegments(ccell, cell);
//DumpContacts(ccell, cell); DumpContacts(ccell, cell);
//ccell << "EOF" << endl; ccell << "EOF" << endl;
auxFile.close (); auxFile.close ();
#endif
} }
} }

View File

@ -766,10 +766,10 @@ namespace {
_framework = AllianceFramework::get (); _framework = AllianceFramework::get ();
unsigned int libraryFlags = 0; unsigned int libraryFlags = 0;
string libraryPath = "./" + file.substr ( 0, file.size()-4 ) + "lib"; string libraryPath = "./" + file.substr ( 0, file.size()-4 ) + "lib";
AllianceLibrary* library = _framework->createLibrary ( libraryPath, libraryFlags ); AllianceLibrary* library = _framework->createLibrary ( libraryPath, libraryFlags );
auto_ptr<LefParser> parser ( new LefParser(file,library) ); unique_ptr<LefParser> parser ( new LefParser(file,library) );
FILE* lefStream = fopen ( file.c_str(), "r" ); FILE* lefStream = fopen ( file.c_str(), "r" );
if ( lefStream == NULL ) if ( lefStream == NULL )
@ -1059,11 +1059,11 @@ namespace {
_framework = AllianceFramework::get (); _framework = AllianceFramework::get ();
unsigned int libraryFlags = 0; unsigned int libraryFlags = 0;
size_t islash = file.rfind ( '/' ); size_t islash = file.rfind ( '/' );
string designName = file.substr ( ((islash == string::npos) ? 0 : islash), file.size()-4 ); string designName = file.substr ( ((islash == string::npos) ? 0 : islash), file.size()-4 );
AllianceLibrary* library = _framework->getAllianceLibrary ( designName+"lib", libraryFlags ); AllianceLibrary* library = _framework->getAllianceLibrary ( designName+"lib", libraryFlags );
auto_ptr<DefParser> parser ( new DefParser(file,library) ); unique_ptr<DefParser> parser ( new DefParser(file,library) );
FILE* defStream = fopen ( file.c_str(), "r" ); FILE* defStream = fopen ( file.c_str(), "r" );
if ( defStream == NULL ) if ( defStream == NULL )

View File

@ -145,7 +145,7 @@ namespace CRL {
using std::string; using std::string;
using std::map; using std::map;
using std::auto_ptr; using std::unique_ptr;
using Hurricane::Library; using Hurricane::Library;
using Hurricane::Transformation; using Hurricane::Transformation;
using Hurricane::UpdateSession; using Hurricane::UpdateSession;
@ -157,7 +157,7 @@ namespace CRL {
UpdateSession::open (); UpdateSession::open ();
auto_ptr<Bookshelf::Circuit> circuit ( Bookshelf::Circuit::parse(benchmark) ); unique_ptr<Bookshelf::Circuit> circuit ( Bookshelf::Circuit::parse(benchmark) );
Cell* cell = af->createCell ( benchmark ); Cell* cell = af->createCell ( benchmark );

View File

@ -142,7 +142,7 @@ namespace CRL {
using std::string; using std::string;
using std::map; using std::map;
using std::auto_ptr; using std::unique_ptr;
using Hurricane::Library; using Hurricane::Library;
using Hurricane::Transformation; using Hurricane::Transformation;
using Hurricane::UpdateSession; using Hurricane::UpdateSession;
@ -156,10 +156,10 @@ namespace CRL {
UpdateSession::open (); UpdateSession::open ();
auto_ptr<Bookshelf::Circuit> circuit ( Bookshelf::Circuit::parse( benchmark unique_ptr<Bookshelf::Circuit> circuit ( Bookshelf::Circuit::parse( benchmark
, Bookshelf::Circuit::AllSlots , Bookshelf::Circuit::AllSlots
, Bookshelf::Parser::NoFlags , Bookshelf::Parser::NoFlags
) ); ) );
cmess1 << " o Converting <" << benchmark << "> from Bookshelf to Hurricane." << endl; cmess1 << " o Converting <" << benchmark << "> from Bookshelf to Hurricane." << endl;
Cell* cell = af->createCell( benchmark ); Cell* cell = af->createCell( benchmark );

View File

@ -51,20 +51,6 @@ namespace {
using namespace CRL; using namespace CRL;
string toLower ( const string& s )
{
string lowered;
for ( size_t i=0 ; i<s.size() ; ++i ) {
if ( (s[i] < 'A') or (s[i] > 'Z') )
lowered.push_back( s[i] );
else
lowered.push_back( s[i] + (int)'a'-(int)'A' );
}
return lowered;
}
string toDefName ( string name ) string toDefName ( string name )
{ {
if (name.empty()) return name; if (name.empty()) return name;
@ -718,7 +704,7 @@ namespace {
if ( defStream == NULL ) if ( defStream == NULL )
throw Error("DefDriver::drive(): Cannot open <%s>.",path.c_str()); throw Error("DefDriver::drive(): Cannot open <%s>.",path.c_str());
auto_ptr<DefDriver> driver ( new DefDriver(cell,designName,defStream,flags) ); unique_ptr<DefDriver> driver ( new DefDriver(cell,designName,defStream,flags) );
driver->write (); driver->write ();
} }
catch ( ... ) { catch ( ... ) {

View File

@ -555,10 +555,10 @@ namespace {
_framework = AllianceFramework::get (); _framework = AllianceFramework::get ();
size_t islash = file.rfind ( '/' ); size_t islash = file.rfind ( '/' );
string designName = file.substr ( ((islash == string::npos) ? 0 : islash), file.size()-4 ); string designName = file.substr ( ((islash == string::npos) ? 0 : islash), file.size()-4 );
AllianceLibrary* library = _framework->getAllianceLibrary ( (unsigned int)0 ); AllianceLibrary* library = _framework->getAllianceLibrary ( (unsigned int)0 );
auto_ptr<DefParser> parser ( new DefParser(file,library,flags) ); unique_ptr<DefParser> parser ( new DefParser(file,library,flags) );
FILE* defStream = fopen ( file.c_str(), "r" ); FILE* defStream = fopen ( file.c_str(), "r" );
if ( defStream == NULL ) if ( defStream == NULL )

View File

@ -50,20 +50,6 @@ namespace {
using namespace CRL; using namespace CRL;
string toLower ( const string& s )
{
string lowered;
for ( size_t i=0 ; i<s.size() ; ++i ) {
if ( (s[i] < 'A') or (s[i] > 'Z') )
lowered.push_back( s[i] );
else
lowered.push_back( s[i] + (int)'a'-(int)'A' );
}
return lowered;
}
#define CHECK_STATUS(status) if ((status) != 0) return checkStatus(status); #define CHECK_STATUS(status) if ((status) != 0) return checkStatus(status);
#define RETURN_CHECK_STATUS(status) return checkStatus(status); #define RETURN_CHECK_STATUS(status) return checkStatus(status);
@ -688,7 +674,7 @@ namespace {
if ( lefStream == NULL ) if ( lefStream == NULL )
throw Error("LefDriver::drive(): Cannot open <%s>.",path.c_str()); throw Error("LefDriver::drive(): Cannot open <%s>.",path.c_str());
auto_ptr<LefDriver> driver ( new LefDriver(cells,libraryName,flags,lefStream) ); unique_ptr<LefDriver> driver ( new LefDriver(cells,libraryName,flags,lefStream) );
driver->write (); driver->write ();
} }
catch ( ... ) { catch ( ... ) {

View File

@ -52,6 +52,7 @@ namespace {
using namespace CRL; using namespace CRL;
#if THIS_IS_DISABLED
void addSupplyNets ( Cell* cell ) void addSupplyNets ( Cell* cell )
{ {
Net* vss = Net::create( cell, "vss" ); Net* vss = Net::create( cell, "vss" );
@ -64,6 +65,7 @@ namespace {
vdd->setGlobal ( true ); vdd->setGlobal ( true );
vdd->setType ( Net::Type::POWER ); vdd->setType ( Net::Type::POWER );
} }
#endif
class LefParser { class LefParser {

View File

@ -1137,7 +1137,7 @@ namespace CRL {
oacAPIMinorRevNumber, oacAPIMinorRevNumber,
oacDataModelRevNumber); oacDataModelRevNumber);
auto_ptr<OADriver> oaDriver(OADriver::create(technoPath, designPath)); unique_ptr<OADriver> oaDriver(OADriver::create(technoPath, designPath));
oaTech* tech = NULL; oaTech* tech = NULL;
tech = oaDriver->getOATech(); tech = oaDriver->getOATech();

View File

@ -193,7 +193,7 @@ int main ( int argc, char *argv[] )
} }
if ( not textMode ) { if ( not textMode ) {
auto_ptr<QApplication> qa ( new HApplication(argc,argv) ); unique_ptr<QApplication> qa ( new HApplication(argc,argv) );
#if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \ #if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \
(QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \ (QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \
not defined (__APPLE__) and not defined (__CYGWIN__) not defined (__APPLE__) and not defined (__CYGWIN__)

View File

@ -59,17 +59,17 @@ namespace {
using coloquinte::float_t; using coloquinte::float_t;
using coloquinte::point; using coloquinte::point;
// Options for both placers // Options for both placers
unsigned const SteinerModel = 0x0001; unsigned const SteinerModel = 0x0001;
// Options for the global placer // Options for the global placer
unsigned const ForceUniformDensity = 0x0010; unsigned const ForceUniformDensity = 0x0010;
unsigned const UpdateLB = 0x0020; unsigned const UpdateLB = 0x0020;
unsigned const UpdateUB = 0x0040; unsigned const UpdateUB = 0x0040;
// Options for the detailed placer // Options for the detailed placer
unsigned const UpdateDetailed = 0x0100; unsigned const UpdateDetailed = 0x0100;
unsigned const NonConvexOpt = 0x0200; //unsigned const NonConvexOpt = 0x0200;
string extractInstanceName ( const RoutingPad* rp ) string extractInstanceName ( const RoutingPad* rp )
@ -89,6 +89,7 @@ namespace {
} }
#if THIS_IS_DISABLED
string extractPinName ( const RoutingPad* rp ) string extractPinName ( const RoutingPad* rp )
{ {
ostringstream name; ostringstream name;
@ -121,6 +122,7 @@ namespace {
return name.str(); return name.str();
} }
#endif
Point extractRpOffset ( const RoutingPad* rp ) Point extractRpOffset ( const RoutingPad* rp )

View File

@ -4946,7 +4946,6 @@ string Cell_SubCells::Locator::_getString() const
// ************************************************** // **************************************************
{ {
string s = "<" + _TName("Cell::SubCells::Locator"); string s = "<" + _TName("Cell::SubCells::Locator");
s += " " + _getString();
s += " " + getString(_instanceLocator); s += " " + getString(_instanceLocator);
s += ">"; s += ">";
return s; return s;

View File

@ -198,8 +198,6 @@ class HyperNet_LeafPlugOccurrences : public Collection<Occurrence> {
public: typedef Hurricane::Locator<Occurrence> Inherit; public: typedef Hurricane::Locator<Occurrence> Inherit;
private: bool _doExtraction;
private: bool _allowInterruption;
private: OccurrenceLocator _netOccurrenceLocator; private: OccurrenceLocator _netOccurrenceLocator;
private: Occurrence _plugOccurrence; private: Occurrence _plugOccurrence;

View File

@ -749,7 +749,8 @@ namespace Hurricane {
if (historyAction) { if (historyAction) {
list< shared_ptr<CellWidget::State> >::iterator istate = _cellHistory.begin(); list< shared_ptr<CellWidget::State> >::iterator istate = _cellHistory.begin();
size_t index = historyAction->data().toUInt(); size_t index = historyAction->data().toUInt();
for ( ; index>0 ; index--, ++istate ); for ( ; index>0 ; index--, ++istate )
;
emit stateChanged ( *istate ); emit stateChanged ( *istate );
} }
} }

View File

@ -39,7 +39,7 @@
namespace Hurricane { namespace Hurricane {
using std::auto_ptr; using std::unique_ptr;
void ExceptionWidget::run ( Error& e ) void ExceptionWidget::run ( Error& e )

View File

@ -24,29 +24,7 @@
#include <sstream> #include <sstream>
namespace {
using std::istringstream;
// void parseInt ( const char* s, int& value )
// { istringstream is ( s ); is >> value; }
// void parseFloat ( const char* s, float& value )
// { istringstream is ( s ); is >> value; }
void parseRgbColor ( const char* color, int& red, int& green, int& blue )
{
char colon1, colon2;
istringstream is ( color );
is >> red >> colon1 >> green >> colon2 >> blue;
}
} // Anonymous namespace.
namespace Hurricane { namespace Hurricane {
@ -55,6 +33,7 @@ namespace Hurricane {
using std::endl; using std::endl;
using std::hex; using std::hex;
using std::ostringstream; using std::ostringstream;
using std::istringstream;
using Isobar::ProxyProperty; using Isobar::ProxyProperty;
using Isobar::ProxyError; using Isobar::ProxyError;
using Isobar::ConstructorError; using Isobar::ConstructorError;
@ -77,6 +56,23 @@ extern "C" {
// +=================================================================+ // +=================================================================+
// static void parseInt ( const char* s, int& value )
// { istringstream is ( s ); is >> value; }
// static void parseFloat ( const char* s, float& value )
// { istringstream is ( s ); is >> value; }
static void parseRgbColor ( const char* color, int& red, int& green, int& blue )
{
char colon1, colon2;
istringstream is ( color );
is >> red >> colon1 >> green >> colon2 >> blue;
}
static PyObject* PyDisplayStyle_new ( PyTypeObject* type, PyObject* args, PyObject* kwds ) static PyObject* PyDisplayStyle_new ( PyTypeObject* type, PyObject* args, PyObject* kwds )
{ {
cdebug_log(20,0) << "PyDisplayStyle_new()" << endl; cdebug_log(20,0) << "PyDisplayStyle_new()" << endl;

View File

@ -21,30 +21,7 @@
#include <sstream> #include <sstream>
namespace {
using std::istringstream;
// void parseInt ( const char* s, int& value )
// { istringstream is ( s ); is >> value; }
// void parseFloat ( const char* s, float& value )
// { istringstream is ( s ); is >> value; }
void parseRgbColor ( const char* color, int& red, int& green, int& blue )
{
char colon1, colon2;
istringstream is ( color );
is >> red >> colon1 >> green >> colon2 >> blue;
}
} // Anonymous namespace.
namespace Hurricane { namespace Hurricane {
@ -53,6 +30,7 @@ namespace Hurricane {
using std::endl; using std::endl;
using std::hex; using std::hex;
using std::ostringstream; using std::ostringstream;
using std::istringstream;
using Isobar::ProxyProperty; using Isobar::ProxyProperty;
using Isobar::ProxyError; using Isobar::ProxyError;
using Isobar::ConstructorError; using Isobar::ConstructorError;
@ -75,6 +53,23 @@ extern "C" {
// +=================================================================+ // +=================================================================+
// static void parseInt ( const char* s, int& value )
// { istringstream is ( s ); is >> value; }
// static void parseFloat ( const char* s, float& value )
// { istringstream is ( s ); is >> value; }
static void parseRgbColor ( const char* color, int& red, int& green, int& blue )
{
char colon1, colon2;
istringstream is ( color );
is >> red >> colon1 >> green >> colon2 >> blue;
}
PyObject* PyDrawingGroup_find ( PyDrawingGroup* self, PyObject* args ) PyObject* PyDrawingGroup_find ( PyDrawingGroup* self, PyObject* args )
{ {
cdebug_log(20,0) << "PyDrawingGroup_find()" << endl; cdebug_log(20,0) << "PyDrawingGroup_find()" << endl;

View File

@ -106,7 +106,7 @@ namespace Katana {
void DataSymmetric::addSymmetrical ( AutoSegment* symmetrical ) void DataSymmetric::addSymmetrical ( AutoSegment* symmetrical )
{ {
if (_paireds.size() > _symIndex) _paireds[_symIndex++][1] = symmetrical; if (_paireds.size() > _symIndex) _paireds[_symIndex++][1] = symmetrical;
else _paireds.push_back( { NULL, symmetrical } ); else _paireds.push_back( {{ NULL, symmetrical }} );
} }

View File

@ -60,6 +60,7 @@ namespace {
using Katana::TrackSegment; using Katana::TrackSegment;
#if THIS_IS_DISABLED
void setSymmetricSelf ( Cell* cell, string name ) void setSymmetricSelf ( Cell* cell, string name )
{ {
Net* net = cell->getNet( name ); Net* net = cell->getNet( name );
@ -105,6 +106,7 @@ namespace {
slaveState ->setSymNet ( masterNet ); slaveState ->setSymNet ( masterNet );
masterState->setSymNet ( slaveNet ); masterState->setSymNet ( slaveNet );
} }
#endif
} // Anonymous namespace. } // Anonymous namespace.

View File

@ -195,6 +195,7 @@ namespace {
} }
#if THIS_IS_DISABLED
void moveUpCaged ( TrackElement* segment ) void moveUpCaged ( TrackElement* segment )
{ {
DebugSession::open( segment->getNet(), 150, 160 ); DebugSession::open( segment->getNet(), 150, 160 );
@ -219,6 +220,7 @@ namespace {
cdebug_tabw(159,-1); cdebug_tabw(159,-1);
DebugSession::close(); DebugSession::close();
} }
#endif
void protectCagedTerminals ( Track* track ) void protectCagedTerminals ( Track* track )

View File

@ -332,7 +332,7 @@ namespace Katana {
Record* Session::_getRecord () const Record* Session::_getRecord () const
{ {
Record* record = Session::_getRecord (); Record* record = Super::_getRecord ();
record->add( getSlot( "_sortEvents" , &_sortEvents ) ); record->add( getSlot( "_sortEvents" , &_sortEvents ) );
return record; return record;

View File

@ -87,7 +87,7 @@ namespace Katana {
inline DbU::Unit DataSymmetric::getSymAxis () const { return _state->getSymAxis(); } inline DbU::Unit DataSymmetric::getSymAxis () const { return _state->getSymAxis(); }
inline void DataSymmetric::setSymAxis ( DbU::Unit axis ) { _state->setSymAxis(axis); } inline void DataSymmetric::setSymAxis ( DbU::Unit axis ) { _state->setSymAxis(axis); }
inline Net* DataSymmetric::getSymNet () const { return _symNet; } inline Net* DataSymmetric::getSymNet () const { return _symNet; }
inline void DataSymmetric::addReference ( AutoSegment* segment ) { _paireds.push_back( {segment,NULL} ); } inline void DataSymmetric::addReference ( AutoSegment* segment ) { _paireds.push_back( {{segment,NULL}} ); }
inline void DataSymmetric::setValid ( bool state ) { _valid = state; } inline void DataSymmetric::setValid ( bool state ) { _valid = state; }
inline DbU::Unit DataSymmetric::getSymmetrical ( DbU::Unit pos ) const inline DbU::Unit DataSymmetric::getSymmetrical ( DbU::Unit pos ) const

View File

@ -38,6 +38,7 @@ namespace Katana {
using std::set; using std::set;
using std::vector; using std::vector;
using std::binary_function; using std::binary_function;
using std::labs;
using Hurricane::DbU; using Hurricane::DbU;
using Hurricane::Interval; using Hurricane::Interval;
using Hurricane::Net; using Hurricane::Net;
@ -218,7 +219,7 @@ namespace Katana {
//inline const vector<TrackElement*>& RoutingEvent::getPerpandiculars () const { return _perpandiculars; } //inline const vector<TrackElement*>& RoutingEvent::getPerpandiculars () const { return _perpandiculars; }
inline DbU::Unit RoutingEvent::getAxisHistory () const { return _axisHistory; } inline DbU::Unit RoutingEvent::getAxisHistory () const { return _axisHistory; }
inline DbU::Unit RoutingEvent::getAxisHint () const { return _axisHint; } inline DbU::Unit RoutingEvent::getAxisHint () const { return _axisHint; }
inline DbU::Unit RoutingEvent::getAxisWeight ( DbU::Unit axis ) const { return abs(axis - getAxisHint()); } inline DbU::Unit RoutingEvent::getAxisWeight ( DbU::Unit axis ) const { return labs(axis - getAxisHint()); }
inline const Interval& RoutingEvent::getConstraints () const { return _constraints; } inline const Interval& RoutingEvent::getConstraints () const { return _constraints; }
inline const Interval& RoutingEvent::getOptimal () const { return _optimal; } inline const Interval& RoutingEvent::getOptimal () const { return _optimal; }
inline const Interval& RoutingEvent::getPerpandicularFree () const { return _dataNegociate->getPerpandicularFree(); } inline const Interval& RoutingEvent::getPerpandicularFree () const { return _dataNegociate->getPerpandicularFree(); }

View File

@ -86,8 +86,8 @@ namespace Kite {
//cdebug_log(9000,0) << "Deter| DataNegociate::update() - " << _trackSegment << endl; //cdebug_log(9000,0) << "Deter| DataNegociate::update() - " << _trackSegment << endl;
cdebug_log(159,1) << "DataNegociate::update() - " << _trackSegment << endl; cdebug_log(159,1) << "DataNegociate::update() - " << _trackSegment << endl;
size_t reduceCandidates = 0; //size_t reduceCandidates = 0;
DbU::Unit pitch = _trackSegment->getPitch(); //DbU::Unit pitch = _trackSegment->getPitch();
vector<AutoSegment*> collapseds; vector<AutoSegment*> collapseds;
vector<AutoSegment*> perpandiculars; vector<AutoSegment*> perpandiculars;
map<DbU::Unit,int> attractorSpins; map<DbU::Unit,int> attractorSpins;

View File

@ -194,6 +194,7 @@ namespace {
} }
#if THIS_IS_DISABLED
void moveUpCaged ( TrackElement* segment ) void moveUpCaged ( TrackElement* segment )
{ {
DebugSession::open( segment->getNet(), 150, 160 ); DebugSession::open( segment->getNet(), 150, 160 );
@ -218,6 +219,7 @@ namespace {
cdebug_tabw(159,-1); cdebug_tabw(159,-1);
DebugSession::close(); DebugSession::close();
} }
#endif
void protectCagedTerminals ( Track* track ) void protectCagedTerminals ( Track* track )

View File

@ -346,7 +346,7 @@ namespace Kite {
Record* Session::_getRecord () const Record* Session::_getRecord () const
{ {
Record* record = Session::_getRecord (); Record* record = Super::_getRecord ();
record->add( getSlot( "_sortEvents" , &_sortEvents ) ); record->add( getSlot( "_sortEvents" , &_sortEvents ) );
return record; return record;

View File

@ -38,6 +38,7 @@ namespace Kite {
using std::set; using std::set;
using std::vector; using std::vector;
using std::binary_function; using std::binary_function;
using std::labs;
using Hurricane::DbU; using Hurricane::DbU;
using Hurricane::Interval; using Hurricane::Interval;
using Hurricane::Net; using Hurricane::Net;
@ -217,7 +218,7 @@ namespace Kite {
//inline const vector<TrackElement*>& RoutingEvent::getPerpandiculars () const { return _perpandiculars; } //inline const vector<TrackElement*>& RoutingEvent::getPerpandiculars () const { return _perpandiculars; }
inline DbU::Unit RoutingEvent::getAxisHistory () const { return _axisHistory; } inline DbU::Unit RoutingEvent::getAxisHistory () const { return _axisHistory; }
inline DbU::Unit RoutingEvent::getAxisHint () const { return _axisHint; } inline DbU::Unit RoutingEvent::getAxisHint () const { return _axisHint; }
inline long RoutingEvent::getAxisWeight ( DbU::Unit axis ) const { return abs(axis - getAxisHint()); } inline long RoutingEvent::getAxisWeight ( DbU::Unit axis ) const { return labs(axis - getAxisHint()); }
inline const Interval& RoutingEvent::getConstraints () const { return _constraints; } inline const Interval& RoutingEvent::getConstraints () const { return _constraints; }
inline const Interval& RoutingEvent::getOptimal () const { return _optimal; } inline const Interval& RoutingEvent::getOptimal () const { return _optimal; }
inline const Interval& RoutingEvent::getPerpandicularFree () const { return _dataNegociate->getPerpandicularFree(); } inline const Interval& RoutingEvent::getPerpandicularFree () const { return _dataNegociate->getPerpandicularFree(); }

View File

@ -58,6 +58,9 @@ namespace Kite {
class Session : public Katabatic::Session { class Session : public Katabatic::Session {
public:
typedef Katabatic::Session Super;
public: public:
static Session* open ( KiteEngine* ); static Session* open ( KiteEngine* );
static Session* get ( const char* message=NULL ); static Session* get ( const char* message=NULL );

View File

@ -1561,7 +1561,7 @@ void Graph::UpdateEstimateCongestion ( bool create )
if ( _vertexes_to_route.size() < 2 ) if ( _vertexes_to_route.size() < 2 )
return; return;
//cerr << "Running FLUTE for net : " << _working_net << endl; //cerr << "Running FLUTE for net : " << _working_net << endl;
auto_ptr<FTree> flutetree ( createFluteTree() ); unique_ptr<FTree> flutetree ( createFluteTree() );
//parcours des branches du FTree pour créer la congestion estimée //parcours des branches du FTree pour créer la congestion estimée
for ( int i = 0 ; i < 2*flutetree->deg-2 ; i++ ) { for ( int i = 0 ; i < 2*flutetree->deg-2 ; i++ ) {

View File

@ -1,19 +1,19 @@
/* A Bison parser, made by GNU Bison 2.7. */ /* A Bison parser, made by GNU Bison 3.0.4. */
/* Bison interface for Yacc-like parsers in C /* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or the Free Software Foundation, either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
@ -26,13 +26,13 @@
special exception, which will cause the skeleton and the resulting special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public Bison output files to be licensed under the GNU General Public
License without this special exception. License without this special exception.
This special exception was added by the Free Software Foundation in This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */ version 2.2 of Bison. */
#ifndef YY_DEFYY_DEF_TAB_HPP_INCLUDED #ifndef YY_DEFYY_DEF_TAB_HPP_INCLUDED
# define YY_DEFYY_DEF_TAB_HPP_INCLUDED # define YY_DEFYY_DEF_TAB_HPP_INCLUDED
/* Enabling traces. */ /* Debug traces. */
#ifndef YYDEBUG #ifndef YYDEBUG
# define YYDEBUG 0 # define YYDEBUG 0
#endif #endif
@ -40,298 +40,281 @@
extern int defyydebug; extern int defyydebug;
#endif #endif
/* Tokens. */ /* Token type. */
#ifndef YYTOKENTYPE #ifndef YYTOKENTYPE
# define YYTOKENTYPE # define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers enum yytokentype
know about them. */ {
enum yytokentype { QSTRING = 258,
QSTRING = 258, T_STRING = 259,
T_STRING = 259, SITE_PATTERN = 260,
SITE_PATTERN = 260, NUMBER = 261,
NUMBER = 261, K_HISTORY = 262,
K_HISTORY = 262, K_NAMESCASESENSITIVE = 263,
K_NAMESCASESENSITIVE = 263, K_DESIGN = 264,
K_DESIGN = 264, K_VIAS = 265,
K_VIAS = 265, K_TECH = 266,
K_TECH = 266, K_UNITS = 267,
K_UNITS = 267, K_ARRAY = 268,
K_ARRAY = 268, K_FLOORPLAN = 269,
K_FLOORPLAN = 269, K_SITE = 270,
K_SITE = 270, K_CANPLACE = 271,
K_CANPLACE = 271, K_CANNOTOCCUPY = 272,
K_CANNOTOCCUPY = 272, K_DIEAREA = 273,
K_DIEAREA = 273, K_PINS = 274,
K_PINS = 274, K_DEFAULTCAP = 275,
K_DEFAULTCAP = 275, K_MINPINS = 276,
K_MINPINS = 276, K_WIRECAP = 277,
K_WIRECAP = 277, K_TRACKS = 278,
K_TRACKS = 278, K_GCELLGRID = 279,
K_GCELLGRID = 279, K_DO = 280,
K_DO = 280, K_BY = 281,
K_BY = 281, K_STEP = 282,
K_STEP = 282, K_LAYER = 283,
K_LAYER = 283, K_ROW = 284,
K_ROW = 284, K_RECT = 285,
K_RECT = 285, K_COMPS = 286,
K_COMPS = 286, K_COMP_GEN = 287,
K_COMP_GEN = 287, K_SOURCE = 288,
K_SOURCE = 288, K_WEIGHT = 289,
K_WEIGHT = 289, K_EEQMASTER = 290,
K_EEQMASTER = 290, K_FIXED = 291,
K_FIXED = 291, K_COVER = 292,
K_COVER = 292, K_UNPLACED = 293,
K_UNPLACED = 293, K_PLACED = 294,
K_PLACED = 294, K_FOREIGN = 295,
K_FOREIGN = 295, K_REGION = 296,
K_REGION = 296, K_REGIONS = 297,
K_REGIONS = 297, K_NETS = 298,
K_NETS = 298, K_START_NET = 299,
K_START_NET = 299, K_MUSTJOIN = 300,
K_MUSTJOIN = 300, K_ORIGINAL = 301,
K_ORIGINAL = 301, K_USE = 302,
K_USE = 302, K_STYLE = 303,
K_STYLE = 303, K_PATTERN = 304,
K_PATTERN = 304, K_PATTERNNAME = 305,
K_PATTERNNAME = 305, K_ESTCAP = 306,
K_ESTCAP = 306, K_ROUTED = 307,
K_ROUTED = 307, K_NEW = 308,
K_NEW = 308, K_SNETS = 309,
K_SNETS = 309, K_SHAPE = 310,
K_SHAPE = 310, K_WIDTH = 311,
K_WIDTH = 311, K_VOLTAGE = 312,
K_VOLTAGE = 312, K_SPACING = 313,
K_SPACING = 313, K_NONDEFAULTRULE = 314,
K_NONDEFAULTRULE = 314, K_NONDEFAULTRULES = 315,
K_NONDEFAULTRULES = 315, K_N = 316,
K_N = 316, K_S = 317,
K_S = 317, K_E = 318,
K_E = 318, K_W = 319,
K_W = 319, K_FN = 320,
K_FN = 320, K_FE = 321,
K_FE = 321, K_FS = 322,
K_FS = 322, K_FW = 323,
K_FW = 323, K_GROUPS = 324,
K_GROUPS = 324, K_GROUP = 325,
K_GROUP = 325, K_SOFT = 326,
K_SOFT = 326, K_MAXX = 327,
K_MAXX = 327, K_MAXY = 328,
K_MAXY = 328, K_MAXHALFPERIMETER = 329,
K_MAXHALFPERIMETER = 329, K_CONSTRAINTS = 330,
K_CONSTRAINTS = 330, K_NET = 331,
K_NET = 331, K_PATH = 332,
K_PATH = 332, K_SUM = 333,
K_SUM = 333, K_DIFF = 334,
K_DIFF = 334, K_SCANCHAINS = 335,
K_SCANCHAINS = 335, K_START = 336,
K_START = 336, K_FLOATING = 337,
K_FLOATING = 337, K_ORDERED = 338,
K_ORDERED = 338, K_STOP = 339,
K_STOP = 339, K_IN = 340,
K_IN = 340, K_OUT = 341,
K_OUT = 341, K_RISEMIN = 342,
K_RISEMIN = 342, K_RISEMAX = 343,
K_RISEMAX = 343, K_FALLMIN = 344,
K_FALLMIN = 344, K_FALLMAX = 345,
K_FALLMAX = 345, K_WIREDLOGIC = 346,
K_WIREDLOGIC = 346, K_MAXDIST = 347,
K_MAXDIST = 347, K_ASSERTIONS = 348,
K_ASSERTIONS = 348, K_DISTANCE = 349,
K_DISTANCE = 349, K_MICRONS = 350,
K_MICRONS = 350, K_END = 351,
K_END = 351, K_IOTIMINGS = 352,
K_IOTIMINGS = 352, K_RISE = 353,
K_RISE = 353, K_FALL = 354,
K_FALL = 354, K_VARIABLE = 355,
K_VARIABLE = 355, K_SLEWRATE = 356,
K_SLEWRATE = 356, K_CAPACITANCE = 357,
K_CAPACITANCE = 357, K_DRIVECELL = 358,
K_DRIVECELL = 358, K_FROMPIN = 359,
K_FROMPIN = 359, K_TOPIN = 360,
K_TOPIN = 360, K_PARALLEL = 361,
K_PARALLEL = 361, K_TIMINGDISABLES = 362,
K_TIMINGDISABLES = 362, K_THRUPIN = 363,
K_THRUPIN = 363, K_MACRO = 364,
K_MACRO = 364, K_PARTITIONS = 365,
K_PARTITIONS = 365, K_TURNOFF = 366,
K_TURNOFF = 366, K_FROMCLOCKPIN = 367,
K_FROMCLOCKPIN = 367, K_FROMCOMPPIN = 368,
K_FROMCOMPPIN = 368, K_FROMIOPIN = 369,
K_FROMIOPIN = 369, K_TOCLOCKPIN = 370,
K_TOCLOCKPIN = 370, K_TOCOMPPIN = 371,
K_TOCOMPPIN = 371, K_TOIOPIN = 372,
K_TOIOPIN = 372, K_SETUPRISE = 373,
K_SETUPRISE = 373, K_SETUPFALL = 374,
K_SETUPFALL = 374, K_HOLDRISE = 375,
K_HOLDRISE = 375, K_HOLDFALL = 376,
K_HOLDFALL = 376, K_VPIN = 377,
K_VPIN = 377, K_SUBNET = 378,
K_SUBNET = 378, K_XTALK = 379,
K_XTALK = 379, K_PIN = 380,
K_PIN = 380, K_SYNTHESIZED = 381,
K_SYNTHESIZED = 381, K_DEFINE = 382,
K_DEFINE = 382, K_DEFINES = 383,
K_DEFINES = 383, K_DEFINEB = 384,
K_DEFINEB = 384, K_IF = 385,
K_IF = 385, K_THEN = 386,
K_THEN = 386, K_ELSE = 387,
K_ELSE = 387, K_FALSE = 388,
K_FALSE = 388, K_TRUE = 389,
K_TRUE = 389, K_EQ = 390,
K_EQ = 390, K_NE = 391,
K_NE = 391, K_LE = 392,
K_LE = 392, K_LT = 393,
K_LT = 393, K_GE = 394,
K_GE = 394, K_GT = 395,
K_GT = 395, K_OR = 396,
K_OR = 396, K_AND = 397,
K_AND = 397, K_NOT = 398,
K_NOT = 398, K_SPECIAL = 399,
K_SPECIAL = 399, K_DIRECTION = 400,
K_DIRECTION = 400, K_RANGE = 401,
K_RANGE = 401, K_FPC = 402,
K_FPC = 402, K_HORIZONTAL = 403,
K_HORIZONTAL = 403, K_VERTICAL = 404,
K_VERTICAL = 404, K_ALIGN = 405,
K_ALIGN = 405, K_MIN = 406,
K_MIN = 406, K_MAX = 407,
K_MAX = 407, K_EQUAL = 408,
K_EQUAL = 408, K_BOTTOMLEFT = 409,
K_BOTTOMLEFT = 409, K_TOPRIGHT = 410,
K_TOPRIGHT = 410, K_ROWS = 411,
K_ROWS = 411, K_TAPER = 412,
K_TAPER = 412, K_TAPERRULE = 413,
K_TAPERRULE = 413, K_VERSION = 414,
K_VERSION = 414, K_DIVIDERCHAR = 415,
K_DIVIDERCHAR = 415, K_BUSBITCHARS = 416,
K_BUSBITCHARS = 416, K_PROPERTYDEFINITIONS = 417,
K_PROPERTYDEFINITIONS = 417, K_STRING = 418,
K_STRING = 418, K_REAL = 419,
K_REAL = 419, K_INTEGER = 420,
K_INTEGER = 420, K_PROPERTY = 421,
K_PROPERTY = 421, K_BEGINEXT = 422,
K_BEGINEXT = 422, K_ENDEXT = 423,
K_ENDEXT = 423, K_NAMEMAPSTRING = 424,
K_NAMEMAPSTRING = 424, K_ON = 425,
K_ON = 425, K_OFF = 426,
K_OFF = 426, K_X = 427,
K_X = 427, K_Y = 428,
K_Y = 428, K_COMPONENT = 429,
K_COMPONENT = 429, K_MASK = 430,
K_MASK = 430, K_MASKSHIFT = 431,
K_MASKSHIFT = 431, K_COMPSMASKSHIFT = 432,
K_COMPSMASKSHIFT = 432, K_SAMEMASK = 433,
K_SAMEMASK = 433, K_PINPROPERTIES = 434,
K_PINPROPERTIES = 434, K_TEST = 435,
K_TEST = 435, K_COMMONSCANPINS = 436,
K_COMMONSCANPINS = 436, K_SNET = 437,
K_SNET = 437, K_COMPONENTPIN = 438,
K_COMPONENTPIN = 438, K_REENTRANTPATHS = 439,
K_REENTRANTPATHS = 439, K_SHIELD = 440,
K_SHIELD = 440, K_SHIELDNET = 441,
K_SHIELDNET = 441, K_NOSHIELD = 442,
K_NOSHIELD = 442, K_VIRTUAL = 443,
K_VIRTUAL = 443, K_ANTENNAPINPARTIALMETALAREA = 444,
K_ANTENNAPINPARTIALMETALAREA = 444, K_ANTENNAPINPARTIALMETALSIDEAREA = 445,
K_ANTENNAPINPARTIALMETALSIDEAREA = 445, K_ANTENNAPINGATEAREA = 446,
K_ANTENNAPINGATEAREA = 446, K_ANTENNAPINDIFFAREA = 447,
K_ANTENNAPINDIFFAREA = 447, K_ANTENNAPINMAXAREACAR = 448,
K_ANTENNAPINMAXAREACAR = 448, K_ANTENNAPINMAXSIDEAREACAR = 449,
K_ANTENNAPINMAXSIDEAREACAR = 449, K_ANTENNAPINPARTIALCUTAREA = 450,
K_ANTENNAPINPARTIALCUTAREA = 450, K_ANTENNAPINMAXCUTCAR = 451,
K_ANTENNAPINMAXCUTCAR = 451, K_SIGNAL = 452,
K_SIGNAL = 452, K_POWER = 453,
K_POWER = 453, K_GROUND = 454,
K_GROUND = 454, K_CLOCK = 455,
K_CLOCK = 455, K_TIEOFF = 456,
K_TIEOFF = 456, K_ANALOG = 457,
K_ANALOG = 457, K_SCAN = 458,
K_SCAN = 458, K_RESET = 459,
K_RESET = 459, K_RING = 460,
K_RING = 460, K_STRIPE = 461,
K_STRIPE = 461, K_FOLLOWPIN = 462,
K_FOLLOWPIN = 462, K_IOWIRE = 463,
K_IOWIRE = 463, K_COREWIRE = 464,
K_COREWIRE = 464, K_BLOCKWIRE = 465,
K_BLOCKWIRE = 465, K_FILLWIRE = 466,
K_FILLWIRE = 466, K_BLOCKAGEWIRE = 467,
K_BLOCKAGEWIRE = 467, K_PADRING = 468,
K_PADRING = 468, K_BLOCKRING = 469,
K_BLOCKRING = 469, K_BLOCKAGES = 470,
K_BLOCKAGES = 470, K_PLACEMENT = 471,
K_PLACEMENT = 471, K_SLOTS = 472,
K_SLOTS = 472, K_FILLS = 473,
K_FILLS = 473, K_PUSHDOWN = 474,
K_PUSHDOWN = 474, K_NETLIST = 475,
K_NETLIST = 475, K_DIST = 476,
K_DIST = 476, K_USER = 477,
K_USER = 477, K_TIMING = 478,
K_TIMING = 478, K_BALANCED = 479,
K_BALANCED = 479, K_STEINER = 480,
K_STEINER = 480, K_TRUNK = 481,
K_TRUNK = 481, K_FIXEDBUMP = 482,
K_FIXEDBUMP = 482, K_FENCE = 483,
K_FENCE = 483, K_FREQUENCY = 484,
K_FREQUENCY = 484, K_GUIDE = 485,
K_GUIDE = 485, K_MAXBITS = 486,
K_MAXBITS = 486, K_PARTITION = 487,
K_PARTITION = 487, K_TYPE = 488,
K_TYPE = 488, K_ANTENNAMODEL = 489,
K_ANTENNAMODEL = 489, K_DRCFILL = 490,
K_DRCFILL = 490, K_OXIDE1 = 491,
K_OXIDE1 = 491, K_OXIDE2 = 492,
K_OXIDE2 = 492, K_OXIDE3 = 493,
K_OXIDE3 = 493, K_OXIDE4 = 494,
K_OXIDE4 = 494, K_CUTSIZE = 495,
K_CUTSIZE = 495, K_CUTSPACING = 496,
K_CUTSPACING = 496, K_DESIGNRULEWIDTH = 497,
K_DESIGNRULEWIDTH = 497, K_DIAGWIDTH = 498,
K_DIAGWIDTH = 498, K_ENCLOSURE = 499,
K_ENCLOSURE = 499, K_HALO = 500,
K_HALO = 500, K_GROUNDSENSITIVITY = 501,
K_GROUNDSENSITIVITY = 501, K_HARDSPACING = 502,
K_HARDSPACING = 502, K_LAYERS = 503,
K_LAYERS = 503, K_MINCUTS = 504,
K_MINCUTS = 504, K_NETEXPR = 505,
K_NETEXPR = 505, K_OFFSET = 506,
K_OFFSET = 506, K_ORIGIN = 507,
K_ORIGIN = 507, K_ROWCOL = 508,
K_ROWCOL = 508, K_STYLES = 509,
K_STYLES = 509, K_POLYGON = 510,
K_POLYGON = 510, K_PORT = 511,
K_PORT = 511, K_SUPPLYSENSITIVITY = 512,
K_SUPPLYSENSITIVITY = 512, K_VIA = 513,
K_VIA = 513, K_VIARULE = 514,
K_VIARULE = 514, K_WIREEXT = 515,
K_WIREEXT = 515, K_EXCEPTPGNET = 516,
K_EXCEPTPGNET = 516, K_FILLWIREOPC = 517,
K_FILLWIREOPC = 517, K_OPC = 518,
K_OPC = 518, K_PARTIAL = 519,
K_PARTIAL = 519, K_ROUTEHALO = 520
K_ROUTEHALO = 520 };
};
#endif #endif
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
#endif
#ifdef YYPARSE_PARAM
#if defined __STDC__ || defined __cplusplus
int defyyparse (void *YYPARSE_PARAM);
#else
int defyyparse ();
#endif
#else /* ! YYPARSE_PARAM */
#if defined __STDC__ || defined __cplusplus
int defyyparse (defrData *defData); int defyyparse (defrData *defData);
#else
int defyyparse ();
#endif
#endif /* ! YYPARSE_PARAM */
#endif /* !YY_DEFYY_DEF_TAB_HPP_INCLUDED */ #endif /* !YY_DEFYY_DEF_TAB_HPP_INCLUDED */

View File

@ -1,19 +1,19 @@
/* A Bison parser, made by GNU Bison 2.7. */ /* A Bison parser, made by GNU Bison 3.0.4. */
/* Bison interface for Yacc-like parsers in C /* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or the Free Software Foundation, either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
@ -26,13 +26,13 @@
special exception, which will cause the skeleton and the resulting special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public Bison output files to be licensed under the GNU General Public
License without this special exception. License without this special exception.
This special exception was added by the Free Software Foundation in This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */ version 2.2 of Bison. */
#ifndef YY_LEFYY_LEF_TAB_HPP_INCLUDED #ifndef YY_LEFYY_LEF_TAB_HPP_INCLUDED
# define YY_LEFYY_LEF_TAB_HPP_INCLUDED # define YY_LEFYY_LEF_TAB_HPP_INCLUDED
/* Enabling traces. */ /* Debug traces. */
#ifndef YYDEBUG #ifndef YYDEBUG
# define YYDEBUG 0 # define YYDEBUG 0
#endif #endif
@ -40,475 +40,462 @@
extern int lefyydebug; extern int lefyydebug;
#endif #endif
/* Tokens. */ /* Token type. */
#ifndef YYTOKENTYPE #ifndef YYTOKENTYPE
# define YYTOKENTYPE # define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers enum yytokentype
know about them. */ {
enum yytokentype { K_HISTORY = 258,
K_HISTORY = 258, K_ABUT = 259,
K_ABUT = 259, K_ABUTMENT = 260,
K_ABUTMENT = 260, K_ACTIVE = 261,
K_ACTIVE = 261, K_ANALOG = 262,
K_ANALOG = 262, K_ARRAY = 263,
K_ARRAY = 263, K_AREA = 264,
K_AREA = 264, K_BLOCK = 265,
K_BLOCK = 265, K_BOTTOMLEFT = 266,
K_BOTTOMLEFT = 266, K_BOTTOMRIGHT = 267,
K_BOTTOMRIGHT = 267, K_BY = 268,
K_BY = 268, K_CAPACITANCE = 269,
K_CAPACITANCE = 269, K_CAPMULTIPLIER = 270,
K_CAPMULTIPLIER = 270, K_CLASS = 271,
K_CLASS = 271, K_CLOCK = 272,
K_CLOCK = 272, K_CLOCKTYPE = 273,
K_CLOCKTYPE = 273, K_COLUMNMAJOR = 274,
K_COLUMNMAJOR = 274, K_DESIGNRULEWIDTH = 275,
K_DESIGNRULEWIDTH = 275, K_INFLUENCE = 276,
K_INFLUENCE = 276, K_CORE = 277,
K_CORE = 277, K_CORNER = 278,
K_CORNER = 278, K_COVER = 279,
K_COVER = 279, K_CPERSQDIST = 280,
K_CPERSQDIST = 280, K_CURRENT = 281,
K_CURRENT = 281, K_CURRENTSOURCE = 282,
K_CURRENTSOURCE = 282, K_CUT = 283,
K_CUT = 283, K_DEFAULT = 284,
K_DEFAULT = 284, K_DATABASE = 285,
K_DATABASE = 285, K_DATA = 286,
K_DATA = 286, K_DIELECTRIC = 287,
K_DIELECTRIC = 287, K_DIRECTION = 288,
K_DIRECTION = 288, K_DO = 289,
K_DO = 289, K_EDGECAPACITANCE = 290,
K_EDGECAPACITANCE = 290, K_EEQ = 291,
K_EEQ = 291, K_END = 292,
K_END = 292, K_ENDCAP = 293,
K_ENDCAP = 293, K_FALL = 294,
K_FALL = 294, K_FALLCS = 295,
K_FALLCS = 295, K_FALLT0 = 296,
K_FALLT0 = 296, K_FALLSATT1 = 297,
K_FALLSATT1 = 297, K_FALLRS = 298,
K_FALLRS = 298, K_FALLSATCUR = 299,
K_FALLSATCUR = 299, K_FALLTHRESH = 300,
K_FALLTHRESH = 300, K_FEEDTHRU = 301,
K_FEEDTHRU = 301, K_FIXED = 302,
K_FIXED = 302, K_FOREIGN = 303,
K_FOREIGN = 303, K_FROMPIN = 304,
K_FROMPIN = 304, K_GENERATE = 305,
K_GENERATE = 305, K_GENERATOR = 306,
K_GENERATOR = 306, K_GROUND = 307,
K_GROUND = 307, K_HEIGHT = 308,
K_HEIGHT = 308, K_HORIZONTAL = 309,
K_HORIZONTAL = 309, K_INOUT = 310,
K_INOUT = 310, K_INPUT = 311,
K_INPUT = 311, K_INPUTNOISEMARGIN = 312,
K_INPUTNOISEMARGIN = 312, K_COMPONENTPIN = 313,
K_COMPONENTPIN = 313, K_INTRINSIC = 314,
K_INTRINSIC = 314, K_INVERT = 315,
K_INVERT = 315, K_IRDROP = 316,
K_IRDROP = 316, K_ITERATE = 317,
K_ITERATE = 317, K_IV_TABLES = 318,
K_IV_TABLES = 318, K_LAYER = 319,
K_LAYER = 319, K_LEAKAGE = 320,
K_LEAKAGE = 320, K_LEQ = 321,
K_LEQ = 321, K_LIBRARY = 322,
K_LIBRARY = 322, K_MACRO = 323,
K_MACRO = 323, K_MATCH = 324,
K_MATCH = 324, K_MAXDELAY = 325,
K_MAXDELAY = 325, K_MAXLOAD = 326,
K_MAXLOAD = 326, K_METALOVERHANG = 327,
K_METALOVERHANG = 327, K_MILLIAMPS = 328,
K_MILLIAMPS = 328, K_MILLIWATTS = 329,
K_MILLIWATTS = 329, K_MINFEATURE = 330,
K_MINFEATURE = 330, K_MUSTJOIN = 331,
K_MUSTJOIN = 331, K_NAMESCASESENSITIVE = 332,
K_NAMESCASESENSITIVE = 332, K_NANOSECONDS = 333,
K_NANOSECONDS = 333, K_NETS = 334,
K_NETS = 334, K_NEW = 335,
K_NEW = 335, K_NONDEFAULTRULE = 336,
K_NONDEFAULTRULE = 336, K_NONINVERT = 337,
K_NONINVERT = 337, K_NONUNATE = 338,
K_NONUNATE = 338, K_OBS = 339,
K_OBS = 339, K_OHMS = 340,
K_OHMS = 340, K_OFFSET = 341,
K_OFFSET = 341, K_ORIENTATION = 342,
K_ORIENTATION = 342, K_ORIGIN = 343,
K_ORIGIN = 343, K_OUTPUT = 344,
K_OUTPUT = 344, K_OUTPUTNOISEMARGIN = 345,
K_OUTPUTNOISEMARGIN = 345, K_OVERHANG = 346,
K_OVERHANG = 346, K_OVERLAP = 347,
K_OVERLAP = 347, K_OFF = 348,
K_OFF = 348, K_ON = 349,
K_ON = 349, K_OVERLAPS = 350,
K_OVERLAPS = 350, K_PAD = 351,
K_PAD = 351, K_PATH = 352,
K_PATH = 352, K_PATTERN = 353,
K_PATTERN = 353, K_PICOFARADS = 354,
K_PICOFARADS = 354, K_PIN = 355,
K_PIN = 355, K_PITCH = 356,
K_PITCH = 356, K_PLACED = 357,
K_PLACED = 357, K_POLYGON = 358,
K_POLYGON = 358, K_PORT = 359,
K_PORT = 359, K_POST = 360,
K_POST = 360, K_POWER = 361,
K_POWER = 361, K_PRE = 362,
K_PRE = 362, K_PULLDOWNRES = 363,
K_PULLDOWNRES = 363, K_RECT = 364,
K_RECT = 364, K_RESISTANCE = 365,
K_RESISTANCE = 365, K_RESISTIVE = 366,
K_RESISTIVE = 366, K_RING = 367,
K_RING = 367, K_RISE = 368,
K_RISE = 368, K_RISECS = 369,
K_RISECS = 369, K_RISERS = 370,
K_RISERS = 370, K_RISESATCUR = 371,
K_RISESATCUR = 371, K_RISETHRESH = 372,
K_RISETHRESH = 372, K_RISESATT1 = 373,
K_RISESATT1 = 373, K_RISET0 = 374,
K_RISET0 = 374, K_RISEVOLTAGETHRESHOLD = 375,
K_RISEVOLTAGETHRESHOLD = 375, K_FALLVOLTAGETHRESHOLD = 376,
K_FALLVOLTAGETHRESHOLD = 376, K_ROUTING = 377,
K_ROUTING = 377, K_ROWMAJOR = 378,
K_ROWMAJOR = 378, K_RPERSQ = 379,
K_RPERSQ = 379, K_SAMENET = 380,
K_SAMENET = 380, K_SCANUSE = 381,
K_SCANUSE = 381, K_SHAPE = 382,
K_SHAPE = 382, K_SHRINKAGE = 383,
K_SHRINKAGE = 383, K_SIGNAL = 384,
K_SIGNAL = 384, K_SITE = 385,
K_SITE = 385, K_SIZE = 386,
K_SIZE = 386, K_SOURCE = 387,
K_SOURCE = 387, K_SPACER = 388,
K_SPACER = 388, K_SPACING = 389,
K_SPACING = 389, K_SPECIALNETS = 390,
K_SPECIALNETS = 390, K_STACK = 391,
K_STACK = 391, K_START = 392,
K_START = 392, K_STEP = 393,
K_STEP = 393, K_STOP = 394,
K_STOP = 394, K_STRUCTURE = 395,
K_STRUCTURE = 395, K_SYMMETRY = 396,
K_SYMMETRY = 396, K_TABLE = 397,
K_TABLE = 397, K_THICKNESS = 398,
K_THICKNESS = 398, K_TIEHIGH = 399,
K_TIEHIGH = 399, K_TIELOW = 400,
K_TIELOW = 400, K_TIEOFFR = 401,
K_TIEOFFR = 401, K_TIME = 402,
K_TIME = 402, K_TIMING = 403,
K_TIMING = 403, K_TO = 404,
K_TO = 404, K_TOPIN = 405,
K_TOPIN = 405, K_TOPLEFT = 406,
K_TOPLEFT = 406, K_TOPRIGHT = 407,
K_TOPRIGHT = 407, K_TOPOFSTACKONLY = 408,
K_TOPOFSTACKONLY = 408, K_TRISTATE = 409,
K_TRISTATE = 409, K_TYPE = 410,
K_TYPE = 410, K_UNATENESS = 411,
K_UNATENESS = 411, K_UNITS = 412,
K_UNITS = 412, K_USE = 413,
K_USE = 413, K_VARIABLE = 414,
K_VARIABLE = 414, K_VERTICAL = 415,
K_VERTICAL = 415, K_VHI = 416,
K_VHI = 416, K_VIA = 417,
K_VIA = 417, K_VIARULE = 418,
K_VIARULE = 418, K_VLO = 419,
K_VLO = 419, K_VOLTAGE = 420,
K_VOLTAGE = 420, K_VOLTS = 421,
K_VOLTS = 421, K_WIDTH = 422,
K_WIDTH = 422, K_X = 423,
K_X = 423, K_Y = 424,
K_Y = 424, T_STRING = 425,
T_STRING = 425, QSTRING = 426,
QSTRING = 426, NUMBER = 427,
NUMBER = 427, K_N = 428,
K_N = 428, K_S = 429,
K_S = 429, K_E = 430,
K_E = 430, K_W = 431,
K_W = 431, K_FN = 432,
K_FN = 432, K_FS = 433,
K_FS = 433, K_FE = 434,
K_FE = 434, K_FW = 435,
K_FW = 435, K_R0 = 436,
K_R0 = 436, K_R90 = 437,
K_R90 = 437, K_R180 = 438,
K_R180 = 438, K_R270 = 439,
K_R270 = 439, K_MX = 440,
K_MX = 440, K_MY = 441,
K_MY = 441, K_MXR90 = 442,
K_MXR90 = 442, K_MYR90 = 443,
K_MYR90 = 443, K_USER = 444,
K_USER = 444, K_MASTERSLICE = 445,
K_MASTERSLICE = 445, K_ENDMACRO = 446,
K_ENDMACRO = 446, K_ENDMACROPIN = 447,
K_ENDMACROPIN = 447, K_ENDVIARULE = 448,
K_ENDVIARULE = 448, K_ENDVIA = 449,
K_ENDVIA = 449, K_ENDLAYER = 450,
K_ENDLAYER = 450, K_ENDSITE = 451,
K_ENDSITE = 451, K_CANPLACE = 452,
K_CANPLACE = 452, K_CANNOTOCCUPY = 453,
K_CANNOTOCCUPY = 453, K_TRACKS = 454,
K_TRACKS = 454, K_FLOORPLAN = 455,
K_FLOORPLAN = 455, K_GCELLGRID = 456,
K_GCELLGRID = 456, K_DEFAULTCAP = 457,
K_DEFAULTCAP = 457, K_MINPINS = 458,
K_MINPINS = 458, K_WIRECAP = 459,
K_WIRECAP = 459, K_STABLE = 460,
K_STABLE = 460, K_SETUP = 461,
K_SETUP = 461, K_HOLD = 462,
K_HOLD = 462, K_DEFINE = 463,
K_DEFINE = 463, K_DEFINES = 464,
K_DEFINES = 464, K_DEFINEB = 465,
K_DEFINEB = 465, K_IF = 466,
K_IF = 466, K_THEN = 467,
K_THEN = 467, K_ELSE = 468,
K_ELSE = 468, K_FALSE = 469,
K_FALSE = 469, K_TRUE = 470,
K_TRUE = 470, K_EQ = 471,
K_EQ = 471, K_NE = 472,
K_NE = 472, K_LE = 473,
K_LE = 473, K_LT = 474,
K_LT = 474, K_GE = 475,
K_GE = 475, K_GT = 476,
K_GT = 476, K_OR = 477,
K_OR = 477, K_AND = 478,
K_AND = 478, K_NOT = 479,
K_NOT = 479, K_DELAY = 480,
K_DELAY = 480, K_TABLEDIMENSION = 481,
K_TABLEDIMENSION = 481, K_TABLEAXIS = 482,
K_TABLEAXIS = 482, K_TABLEENTRIES = 483,
K_TABLEENTRIES = 483, K_TRANSITIONTIME = 484,
K_TRANSITIONTIME = 484, K_EXTENSION = 485,
K_EXTENSION = 485, K_PROPDEF = 486,
K_PROPDEF = 486, K_STRING = 487,
K_STRING = 487, K_INTEGER = 488,
K_INTEGER = 488, K_REAL = 489,
K_REAL = 489, K_RANGE = 490,
K_RANGE = 490, K_PROPERTY = 491,
K_PROPERTY = 491, K_VIRTUAL = 492,
K_VIRTUAL = 492, K_BUSBITCHARS = 493,
K_BUSBITCHARS = 493, K_VERSION = 494,
K_VERSION = 494, K_BEGINEXT = 495,
K_BEGINEXT = 495, K_ENDEXT = 496,
K_ENDEXT = 496, K_UNIVERSALNOISEMARGIN = 497,
K_UNIVERSALNOISEMARGIN = 497, K_EDGERATETHRESHOLD1 = 498,
K_EDGERATETHRESHOLD1 = 498, K_CORRECTIONTABLE = 499,
K_CORRECTIONTABLE = 499, K_EDGERATESCALEFACTOR = 500,
K_EDGERATESCALEFACTOR = 500, K_EDGERATETHRESHOLD2 = 501,
K_EDGERATETHRESHOLD2 = 501, K_VICTIMNOISE = 502,
K_VICTIMNOISE = 502, K_NOISETABLE = 503,
K_NOISETABLE = 503, K_EDGERATE = 504,
K_EDGERATE = 504, K_OUTPUTRESISTANCE = 505,
K_OUTPUTRESISTANCE = 505, K_VICTIMLENGTH = 506,
K_VICTIMLENGTH = 506, K_CORRECTIONFACTOR = 507,
K_CORRECTIONFACTOR = 507, K_OUTPUTPINANTENNASIZE = 508,
K_OUTPUTPINANTENNASIZE = 508, K_INPUTPINANTENNASIZE = 509,
K_INPUTPINANTENNASIZE = 509, K_INOUTPINANTENNASIZE = 510,
K_INOUTPINANTENNASIZE = 510, K_CURRENTDEN = 511,
K_CURRENTDEN = 511, K_PWL = 512,
K_PWL = 512, K_ANTENNALENGTHFACTOR = 513,
K_ANTENNALENGTHFACTOR = 513, K_TAPERRULE = 514,
K_TAPERRULE = 514, K_DIVIDERCHAR = 515,
K_DIVIDERCHAR = 515, K_ANTENNASIZE = 516,
K_ANTENNASIZE = 516, K_ANTENNAMETALLENGTH = 517,
K_ANTENNAMETALLENGTH = 517, K_ANTENNAMETALAREA = 518,
K_ANTENNAMETALAREA = 518, K_RISESLEWLIMIT = 519,
K_RISESLEWLIMIT = 519, K_FALLSLEWLIMIT = 520,
K_FALLSLEWLIMIT = 520, K_FUNCTION = 521,
K_FUNCTION = 521, K_BUFFER = 522,
K_BUFFER = 522, K_INVERTER = 523,
K_INVERTER = 523, K_NAMEMAPSTRING = 524,
K_NAMEMAPSTRING = 524, K_NOWIREEXTENSIONATPIN = 525,
K_NOWIREEXTENSIONATPIN = 525, K_WIREEXTENSION = 526,
K_WIREEXTENSION = 526, K_MESSAGE = 527,
K_MESSAGE = 527, K_CREATEFILE = 528,
K_CREATEFILE = 528, K_OPENFILE = 529,
K_OPENFILE = 529, K_CLOSEFILE = 530,
K_CLOSEFILE = 530, K_WARNING = 531,
K_WARNING = 531, K_ERROR = 532,
K_ERROR = 532, K_FATALERROR = 533,
K_FATALERROR = 533, K_RECOVERY = 534,
K_RECOVERY = 534, K_SKEW = 535,
K_SKEW = 535, K_ANYEDGE = 536,
K_ANYEDGE = 536, K_POSEDGE = 537,
K_POSEDGE = 537, K_NEGEDGE = 538,
K_NEGEDGE = 538, K_SDFCONDSTART = 539,
K_SDFCONDSTART = 539, K_SDFCONDEND = 540,
K_SDFCONDEND = 540, K_SDFCOND = 541,
K_SDFCOND = 541, K_MPWH = 542,
K_MPWH = 542, K_MPWL = 543,
K_MPWL = 543, K_PERIOD = 544,
K_PERIOD = 544, K_ACCURRENTDENSITY = 545,
K_ACCURRENTDENSITY = 545, K_DCCURRENTDENSITY = 546,
K_DCCURRENTDENSITY = 546, K_AVERAGE = 547,
K_AVERAGE = 547, K_PEAK = 548,
K_PEAK = 548, K_RMS = 549,
K_RMS = 549, K_FREQUENCY = 550,
K_FREQUENCY = 550, K_CUTAREA = 551,
K_CUTAREA = 551, K_MEGAHERTZ = 552,
K_MEGAHERTZ = 552, K_USELENGTHTHRESHOLD = 553,
K_USELENGTHTHRESHOLD = 553, K_LENGTHTHRESHOLD = 554,
K_LENGTHTHRESHOLD = 554, K_ANTENNAINPUTGATEAREA = 555,
K_ANTENNAINPUTGATEAREA = 555, K_ANTENNAINOUTDIFFAREA = 556,
K_ANTENNAINOUTDIFFAREA = 556, K_ANTENNAOUTPUTDIFFAREA = 557,
K_ANTENNAOUTPUTDIFFAREA = 557, K_ANTENNAAREARATIO = 558,
K_ANTENNAAREARATIO = 558, K_ANTENNADIFFAREARATIO = 559,
K_ANTENNADIFFAREARATIO = 559, K_ANTENNACUMAREARATIO = 560,
K_ANTENNACUMAREARATIO = 560, K_ANTENNACUMDIFFAREARATIO = 561,
K_ANTENNACUMDIFFAREARATIO = 561, K_ANTENNAAREAFACTOR = 562,
K_ANTENNAAREAFACTOR = 562, K_ANTENNASIDEAREARATIO = 563,
K_ANTENNASIDEAREARATIO = 563, K_ANTENNADIFFSIDEAREARATIO = 564,
K_ANTENNADIFFSIDEAREARATIO = 564, K_ANTENNACUMSIDEAREARATIO = 565,
K_ANTENNACUMSIDEAREARATIO = 565, K_ANTENNACUMDIFFSIDEAREARATIO = 566,
K_ANTENNACUMDIFFSIDEAREARATIO = 566, K_ANTENNASIDEAREAFACTOR = 567,
K_ANTENNASIDEAREAFACTOR = 567, K_DIFFUSEONLY = 568,
K_DIFFUSEONLY = 568, K_MANUFACTURINGGRID = 569,
K_MANUFACTURINGGRID = 569, K_FIXEDMASK = 570,
K_FIXEDMASK = 570, K_ANTENNACELL = 571,
K_ANTENNACELL = 571, K_CLEARANCEMEASURE = 572,
K_CLEARANCEMEASURE = 572, K_EUCLIDEAN = 573,
K_EUCLIDEAN = 573, K_MAXXY = 574,
K_MAXXY = 574, K_USEMINSPACING = 575,
K_USEMINSPACING = 575, K_ROWMINSPACING = 576,
K_ROWMINSPACING = 576, K_ROWABUTSPACING = 577,
K_ROWABUTSPACING = 577, K_FLIP = 578,
K_FLIP = 578, K_NONE = 579,
K_NONE = 579, K_ANTENNAPARTIALMETALAREA = 580,
K_ANTENNAPARTIALMETALAREA = 580, K_ANTENNAPARTIALMETALSIDEAREA = 581,
K_ANTENNAPARTIALMETALSIDEAREA = 581, K_ANTENNAGATEAREA = 582,
K_ANTENNAGATEAREA = 582, K_ANTENNADIFFAREA = 583,
K_ANTENNADIFFAREA = 583, K_ANTENNAMAXAREACAR = 584,
K_ANTENNAMAXAREACAR = 584, K_ANTENNAMAXSIDEAREACAR = 585,
K_ANTENNAMAXSIDEAREACAR = 585, K_ANTENNAPARTIALCUTAREA = 586,
K_ANTENNAPARTIALCUTAREA = 586, K_ANTENNAMAXCUTCAR = 587,
K_ANTENNAMAXCUTCAR = 587, K_SLOTWIREWIDTH = 588,
K_SLOTWIREWIDTH = 588, K_SLOTWIRELENGTH = 589,
K_SLOTWIRELENGTH = 589, K_SLOTWIDTH = 590,
K_SLOTWIDTH = 590, K_SLOTLENGTH = 591,
K_SLOTLENGTH = 591, K_MAXADJACENTSLOTSPACING = 592,
K_MAXADJACENTSLOTSPACING = 592, K_MAXCOAXIALSLOTSPACING = 593,
K_MAXCOAXIALSLOTSPACING = 593, K_MAXEDGESLOTSPACING = 594,
K_MAXEDGESLOTSPACING = 594, K_SPLITWIREWIDTH = 595,
K_SPLITWIREWIDTH = 595, K_MINIMUMDENSITY = 596,
K_MINIMUMDENSITY = 596, K_MAXIMUMDENSITY = 597,
K_MAXIMUMDENSITY = 597, K_DENSITYCHECKWINDOW = 598,
K_DENSITYCHECKWINDOW = 598, K_DENSITYCHECKSTEP = 599,
K_DENSITYCHECKSTEP = 599, K_FILLACTIVESPACING = 600,
K_FILLACTIVESPACING = 600, K_MINIMUMCUT = 601,
K_MINIMUMCUT = 601, K_ADJACENTCUTS = 602,
K_ADJACENTCUTS = 602, K_ANTENNAMODEL = 603,
K_ANTENNAMODEL = 603, K_BUMP = 604,
K_BUMP = 604, K_ENCLOSURE = 605,
K_ENCLOSURE = 605, K_FROMABOVE = 606,
K_FROMABOVE = 606, K_FROMBELOW = 607,
K_FROMBELOW = 607, K_IMPLANT = 608,
K_IMPLANT = 608, K_LENGTH = 609,
K_LENGTH = 609, K_MAXVIASTACK = 610,
K_MAXVIASTACK = 610, K_AREAIO = 611,
K_AREAIO = 611, K_BLACKBOX = 612,
K_BLACKBOX = 612, K_MAXWIDTH = 613,
K_MAXWIDTH = 613, K_MINENCLOSEDAREA = 614,
K_MINENCLOSEDAREA = 614, K_MINSTEP = 615,
K_MINSTEP = 615, K_ORIENT = 616,
K_ORIENT = 616, K_OXIDE1 = 617,
K_OXIDE1 = 617, K_OXIDE2 = 618,
K_OXIDE2 = 618, K_OXIDE3 = 619,
K_OXIDE3 = 619, K_OXIDE4 = 620,
K_OXIDE4 = 620, K_PARALLELRUNLENGTH = 621,
K_PARALLELRUNLENGTH = 621, K_MINWIDTH = 622,
K_MINWIDTH = 622, K_PROTRUSIONWIDTH = 623,
K_PROTRUSIONWIDTH = 623, K_SPACINGTABLE = 624,
K_SPACINGTABLE = 624, K_WITHIN = 625,
K_WITHIN = 625, K_ABOVE = 626,
K_ABOVE = 626, K_BELOW = 627,
K_BELOW = 627, K_CENTERTOCENTER = 628,
K_CENTERTOCENTER = 628, K_CUTSIZE = 629,
K_CUTSIZE = 629, K_CUTSPACING = 630,
K_CUTSPACING = 630, K_DENSITY = 631,
K_DENSITY = 631, K_DIAG45 = 632,
K_DIAG45 = 632, K_DIAG135 = 633,
K_DIAG135 = 633, K_MASK = 634,
K_MASK = 634, K_DIAGMINEDGELENGTH = 635,
K_DIAGMINEDGELENGTH = 635, K_DIAGSPACING = 636,
K_DIAGSPACING = 636, K_DIAGPITCH = 637,
K_DIAGPITCH = 637, K_DIAGWIDTH = 638,
K_DIAGWIDTH = 638, K_GENERATED = 639,
K_GENERATED = 639, K_GROUNDSENSITIVITY = 640,
K_GROUNDSENSITIVITY = 640, K_HARDSPACING = 641,
K_HARDSPACING = 641, K_INSIDECORNER = 642,
K_INSIDECORNER = 642, K_LAYERS = 643,
K_LAYERS = 643, K_LENGTHSUM = 644,
K_LENGTHSUM = 644, K_MICRONS = 645,
K_MICRONS = 645, K_MINCUTS = 646,
K_MINCUTS = 646, K_MINSIZE = 647,
K_MINSIZE = 647, K_NETEXPR = 648,
K_NETEXPR = 648, K_OUTSIDECORNER = 649,
K_OUTSIDECORNER = 649, K_PREFERENCLOSURE = 650,
K_PREFERENCLOSURE = 650, K_ROWCOL = 651,
K_ROWCOL = 651, K_ROWPATTERN = 652,
K_ROWPATTERN = 652, K_SOFT = 653,
K_SOFT = 653, K_SUPPLYSENSITIVITY = 654,
K_SUPPLYSENSITIVITY = 654, K_USEVIA = 655,
K_USEVIA = 655, K_USEVIARULE = 656,
K_USEVIARULE = 656, K_WELLTAP = 657,
K_WELLTAP = 657, K_ARRAYCUTS = 658,
K_ARRAYCUTS = 658, K_ARRAYSPACING = 659,
K_ARRAYSPACING = 659, K_ANTENNAAREADIFFREDUCEPWL = 660,
K_ANTENNAAREADIFFREDUCEPWL = 660, K_ANTENNAAREAMINUSDIFF = 661,
K_ANTENNAAREAMINUSDIFF = 661, K_ANTENNACUMROUTINGPLUSCUT = 662,
K_ANTENNACUMROUTINGPLUSCUT = 662, K_ANTENNAGATEPLUSDIFF = 663,
K_ANTENNAGATEPLUSDIFF = 663, K_ENDOFLINE = 664,
K_ENDOFLINE = 664, K_ENDOFNOTCHWIDTH = 665,
K_ENDOFNOTCHWIDTH = 665, K_EXCEPTEXTRACUT = 666,
K_EXCEPTEXTRACUT = 666, K_EXCEPTSAMEPGNET = 667,
K_EXCEPTSAMEPGNET = 667, K_EXCEPTPGNET = 668,
K_EXCEPTPGNET = 668, K_LONGARRAY = 669,
K_LONGARRAY = 669, K_MAXEDGES = 670,
K_MAXEDGES = 670, K_NOTCHLENGTH = 671,
K_NOTCHLENGTH = 671, K_NOTCHSPACING = 672,
K_NOTCHSPACING = 672, K_ORTHOGONAL = 673,
K_ORTHOGONAL = 673, K_PARALLELEDGE = 674,
K_PARALLELEDGE = 674, K_PARALLELOVERLAP = 675,
K_PARALLELOVERLAP = 675, K_PGONLY = 676,
K_PGONLY = 676, K_PRL = 677,
K_PRL = 677, K_TWOEDGES = 678,
K_TWOEDGES = 678, K_TWOWIDTHS = 679,
K_TWOWIDTHS = 679, IF = 680,
IF = 680, LNOT = 681,
LNOT = 681, UMINUS = 682
UMINUS = 682 };
};
#endif #endif
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
union YYSTYPE
{ {
/* Line 2058 of yacc.c */ #line 194 "/home/jpc/coriolis-2.x/src/coriolis/lefdef/src/lef/lef/lef.y" /* yacc.c:1909 */
#line 194 "/dsk/l1/jpc/coriolis-2.x/src/coriolis/lefdef/src/lef/lef/lef.y"
double dval ; double dval ;
int integer ; int integer ;
char * string ; char * string ;
LefDefParser::lefPOINT pt; LefDefParser::lefPOINT pt;
#line 489 "lef.tab.hpp" /* yacc.c:1909 */
};
/* Line 2058 of yacc.c */ typedef union YYSTYPE YYSTYPE;
#line 492 "lef.tab.hpp"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_DECLARED 1
#endif #endif
extern YYSTYPE lefyylval; extern YYSTYPE lefyylval;
#ifdef YYPARSE_PARAM
#if defined __STDC__ || defined __cplusplus
int lefyyparse (void *YYPARSE_PARAM);
#else
int lefyyparse ();
#endif
#else /* ! YYPARSE_PARAM */
#if defined __STDC__ || defined __cplusplus
int lefyyparse (void); int lefyyparse (void);
#else
int lefyyparse ();
#endif
#endif /* ! YYPARSE_PARAM */
#endif /* !YY_LEFYY_LEF_TAB_HPP_INCLUDED */ #endif /* !YY_LEFYY_LEF_TAB_HPP_INCLUDED */

View File

@ -473,7 +473,7 @@ GetToken(char **buffer, int *bufferSize)
// 7/23/2003 - pcr 606558 - do not allow \n in a string instead // 7/23/2003 - pcr 606558 - do not allow \n in a string instead
// of ; // of ;
if ((ch == '\n') ) { if (ch == '\n') {
print_nlines(++lefData->lef_nlines); print_nlines(++lefData->lef_nlines);
// 2/2/2007 - PCR 909714, allow string to go more than 1 line // 2/2/2007 - PCR 909714, allow string to go more than 1 line
// continue to parse // continue to parse

View File

@ -54,7 +54,7 @@
namespace Mauka { namespace Mauka {
using std::auto_ptr; using std::unique_ptr;
using Hurricane::ForEachIterator; using Hurricane::ForEachIterator;
using Hurricane::Warning; using Hurricane::Warning;
using Hurricane::Plug; using Hurricane::Plug;
@ -507,7 +507,7 @@ namespace {
bool TestMaukaConstruction(Cell* cell, GCell* gcell) bool TestMaukaConstruction(Cell* cell, GCell* gcell)
// ************************************************* // *************************************************
{ {
auto_ptr<Configuration> configuration ( new Configuration() ); unique_ptr<Configuration> configuration ( new Configuration() );
DbU::Unit pitch = configuration->getPitch(); DbU::Unit pitch = configuration->getPitch();
DbU::Unit sliceHeight = configuration->getSliceHeight(); DbU::Unit sliceHeight = configuration->getSliceHeight();

View File

@ -299,7 +299,7 @@ int main ( int argc, char *argv[] )
} }
if ( not textMode ) { if ( not textMode ) {
auto_ptr<QApplication> qa ( new HApplication(argc,argv) ); unique_ptr<QApplication> qa ( new HApplication(argc,argv) );
#if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \ #if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \
(QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \ (QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \
not defined (__APPLE__) and not defined (__CYGWIN__) not defined (__APPLE__) and not defined (__CYGWIN__)

View File

@ -136,7 +136,7 @@ namespace Unicorn {
bool SaveCellDialog::runDialog ( QWidget* parent, QString& name ) bool SaveCellDialog::runDialog ( QWidget* parent, QString& name )
{ {
auto_ptr<SaveCellDialog> dialog ( new SaveCellDialog(parent) ); unique_ptr<SaveCellDialog> dialog ( new SaveCellDialog(parent) );
dialog->setCellName ( name ); dialog->setCellName ( name );
bool dialogResult = (dialog->exec() == Accepted); bool dialogResult = (dialog->exec() == Accepted);

View File

@ -136,7 +136,7 @@ int main ( int argc, char* argv[] )
} }
if ( arguments.count("aux") ) { if ( arguments.count("aux") ) {
auto_ptr<Circuit> circuit ( Circuit::parse(arguments["aux"].as<string>()) ); unique_ptr<Circuit> circuit ( Circuit::parse(arguments["aux"].as<string>()) );
circuit->check (); circuit->check ();

View File

@ -52,7 +52,7 @@ int main ( int argc, char* argv[] )
} }
if ( arguments.count("aux") ) { if ( arguments.count("aux") ) {
auto_ptr<Circuit> circuit ( Circuit::parse(arguments["aux"].as<string>()) ); unique_ptr<Circuit> circuit ( Circuit::parse(arguments["aux"].as<string>()) );
circuit->check (); circuit->check ();

View File

@ -63,7 +63,7 @@ int main ( int argc, char* argv[] )
exit ( 0 ); exit ( 0 );
} }
auto_ptr<QApplication> qa ( new QApplication(argc,argv) ); unique_ptr<QApplication> qa ( new QApplication(argc,argv) );
#if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \ #if (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) and \
(QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \ (QT_VERSION < QT_VERSION_CHECK(5,0,0)) and \
not defined (__APPLE__) and not defined (__CYGWIN__) not defined (__APPLE__) and not defined (__CYGWIN__)

View File

@ -204,7 +204,7 @@ namespace Cfg {
inline void Parameter::registerCb ( void* tag, ParameterChangedCb_t cb ) inline void Parameter::registerCb ( void* tag, ParameterChangedCb_t cb )
{ {
_callbacks.push_back(make_pair(tag,cb)); cb(this); _callbacks.push_back(std::make_pair(tag,cb)); cb(this);
} }
inline void Parameter::unregisterCb ( void* tag ) inline void Parameter::unregisterCb ( void* tag )