44 #line 45 "XdlParser.cpp"
47 # if defined YYENABLE_NLS && YYENABLE_NLS
50 # define YY_(msgid) dgettext ("bison-runtime", msgid)
54 # define YY_(msgid) msgid
59 #define YYUSE(e) ((void) (e))
63 for (bool yydebugcond_ = yydebug_; yydebugcond_; yydebugcond_ = false) \
69 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
73 *yycdebug_ << Title << ' '; \
74 yy_symbol_print_ ((Type), (Value), (Location)); \
75 *yycdebug_ << std::endl; \
79 # define YY_REDUCE_PRINT(Rule) \
82 yy_reduce_print_ (Rule); \
85 # define YY_STACK_PRINT() \
93 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
94 # define YY_REDUCE_PRINT(Rule)
95 # define YY_STACK_PRINT()
99 #define YYACCEPT goto yyacceptlab
100 #define YYABORT goto yyabortlab
101 #define YYERROR goto yyerrorlab
118 char const *yyp = yystr;
125 goto do_not_strip_quotes;
129 goto do_not_strip_quotes;
138 do_not_strip_quotes: ;
149 yycdebug_ (&std::cerr),
164 XdlParser::yy_symbol_value_print_ (
int yytype,
165 const semantic_type* yyvaluep,
const location_type* yylocationp)
178 XdlParser::yy_symbol_print_ (
int yytype,
179 const semantic_type* yyvaluep,
const location_type* yylocationp)
183 << *yylocationp <<
": ";
184 yy_symbol_value_print_ (yytype, yyvaluep, yylocationp);
255 int yyerrstatus_ = 0;
271 YYCDEBUG <<
"Starting parse" << std::endl;
275 #line 93 "/Volumes/project/dev/torc/trunk/src/torc/physical/xdl/parser.yy"
281 #line 282 "XdlParser.cpp"
295 YYCDEBUG <<
"Entering state " << yystate << std::endl;
310 yychar =
yylex (&yylval, &yylloc);
317 yychar = yytoken =
yyeof_;
318 YYCDEBUG <<
"Now at end of input." << std::endl;
397 #line 177 "parser.yy"
406 #line 192 "parser.yy"
411 #line 201 "parser.yy"
416 #line 202 "parser.yy"
418 if(
true) std::clog <<
"INFO: design \"" <<
xdl.
mDesignName <<
"\" "
435 #line 220 "parser.yy"
443 #line 232 "parser.yy"
453 #line 240 "parser.yy"
458 #line 243 "parser.yy"
463 #line 246 "parser.yy"
468 #line 251 "parser.yy"
473 #line 284 "parser.yy"
478 #line 285 "parser.yy"
483 #line 286 "parser.yy"
488 #line 287 "parser.yy"
507 #line 305 "parser.yy"
509 if(
false) std::clog <<
"INFO: endmodule" << std::endl;
515 const string& name = p->getName();
516 const string& instance = p->getInstance();
517 const string& pin = p->getPin();
527 if(instanceIterator == end) {
528 std::stringstream ss;
530 <<
"\" for port \"" <<
xdl.
mPortName <<
"\" in module \""
535 if(
false) std::clog <<
"INFO: port \"" << name <<
"\" "
536 << instance <<
"." << pin << std::endl;
538 *instanceIterator, pin);
551 #line 351 "parser.yy"
556 #line 352 "parser.yy"
561 #line 353 "parser.yy"
566 #line 353 "parser.yy"
574 #line 367 "parser.yy"
579 #line 368 "parser.yy"
584 #line 369 "parser.yy"
589 #line 372 "parser.yy"
608 #line 390 "parser.yy"
616 #line 394 "parser.yy"
625 #line 402 "parser.yy"
630 #line 403 "parser.yy"
635 #line 404 "parser.yy"
640 #line 415 "parser.yy"
645 #line 416 "parser.yy"
651 #line 418 "parser.yy"
658 if(moduleIterator == end) {
659 std::stringstream ss;
669 #line 432 "parser.yy"
677 if(instanceIterator == end) {
678 std::stringstream ss;
694 #line 470 "parser.yy"
699 #line 471 "parser.yy"
704 #line 472 "parser.yy"
713 #line 476 "parser.yy"
720 if(
false) std::clog <<
"INFO: net " <<
xdl.
mNetName << std::endl;
725 #line 487 "parser.yy"
730 #line 488 "parser.yy"
735 #line 489 "parser.yy"
740 #line 513 "parser.yy"
749 if(instanceIterator == end) {
750 std::stringstream ss;
759 = Factory::newInstancePinPtr(instancePtr,
xdl.
mPinName);
775 #line 547 "parser.yy"
780 #line 548 "parser.yy"
785 #line 554 "parser.yy"
790 #line 555 "parser.yy"
795 #line 557 "parser.yy"
800 #line 562 "parser.yy"
805 #line 564 "parser.yy"
810 #line 566 "parser.yy"
815 #line 568 "parser.yy"
820 #line 572 "parser.yy"
825 xdl.
bind(pip, XdlImporter::ePipTypeRegular);
830 #line 578 "parser.yy"
835 #line 579 "parser.yy"
840 #line 580 "parser.yy"
845 #line 581 "parser.yy"
850 #line 582 "parser.yy"
855 #line 583 "parser.yy"
863 = circuitPtr->instancesEnd();
865 if(instanceIterator == end) {
866 PipVector::const_iterator pipIter = --(
xdl.
mNetPtr->pipsEnd());
867 std::stringstream ss;
868 ss <<
"Error: unknown routhethrough instance \""
883 xdl.
bind(pip, XdlImporter::ePipTypeRoutethrough);
888 #line 622 "parser.yy"
893 #line 631 "parser.yy"
906 #line 643 "parser.yy"
911 #line 647 "parser.yy"
916 #line 648 "parser.yy"
921 #line 652 "parser.yy"
926 #line 653 "parser.yy"
931 #line 659 "parser.yy"
940 #line 941 "XdlParser.cpp"
955 if (0 <= yystate && yystate <=
yylast_
956 &&
yycheck_[yystate] == yystate_stack_[0])
973 yyerror_range[0] = yylloc;
974 if (yyerrstatus_ == 3)
987 yydestruct_ (
"Error: discarding", yytoken, &yylval, &yylloc);
1013 yystate = yystate_stack_[0];
1037 if (yystate_stack_.height () == 1)
1045 yystate = yystate_stack_[0];
1052 yyerror_range[1] = yylloc;
1078 yydestruct_ (
"Cleanup: discarding lookahead", yytoken, &yylval, &yylloc);
1083 while (yystate_stack_.height () != 1)
1107 int yyxbegin = yyn < 0 ? -yyn : 0;
1110 int yychecklim =
yylast_ - yyn + 1;
1113 for (
int x = yyxbegin; x < yyxend; ++x)
1125 res =
"syntax error, unexpected ";
1130 for (
int x = yyxbegin; x < yyxend; ++x)
1133 res += (!count++) ?
", expecting " :
" or ";
1140 res =
YY_(
"syntax error");
1151 26, -81, 12, -81, -81, -9, -81, 28, 11, 9,
1152 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81,
1153 -81, -17, 13, 14, -81, 10, 5, -9, -9, -9,
1154 39, -81, -81, -81, -81, -81, 17, -81, 13, -81,
1155 -81, -81, -81, -9, -9, -81, -81, -81, -81, -81,
1156 33, 19, -81, -9, -9, -7, 20, -81, -81, -81,
1157 -81, -81, -81, -81, -81, 21, -81, -9, 18, 17,
1158 22, -81, -81, -81, 24, 3, -81, -9, -16, -81,
1159 37, 8, 25, 1, -81, -81, -81, -81, 27, 40,
1160 -81, -81, -81, 0, 30, -81, -81, 43, -81, -81,
1161 31, 32, -9, -13, -81, 34, 41, 8, -81, 35,
1162 -81, -81, -81, -81, -81, 47, -81, 29, -81, -81,
1163 -81, 38, -81, -9, 33, 49, -81, 42, -81, 52,
1164 -81, -81, -81, 53, -81, -81, -9, 23, -81, -81,
1165 -81, -81, -81, -81, 54, 44, -9, -81, 55, -81,
1166 -81, -9, -81, 57, -81, 23, 59, -81
1175 0, 11, 0, 2, 4, 0, 1, 0, 0, 0,
1176 13, 9, 28, 37, 54, 5, 6, 23, 7, 8,
1177 100, 0, 17, 20, 14, 0, 0, 0, 0, 0,
1178 0, 101, 99, 19, 16, 21, 87, 18, 0, 10,
1179 29, 38, 55, 0, 0, 24, 22, 25, 26, 27,
1180 0, 0, 15, 0, 0, 58, 0, 33, 89, 88,
1181 12, 30, 39, 59, 60, 0, 32, 0, 0, 87,
1182 0, 56, 34, 91, 0, 0, 61, 0, 0, 31,
1183 0, 43, 46, 0, 35, 94, 90, 92, 0, 0,
1184 44, 45, 41, 0, 0, 71, 72, 0, 57, 62,
1185 68, 64, 0, 80, 69, 0, 95, 43, 50, 48,
1186 47, 40, 73, 67, 63, 0, 81, 80, 66, 36,
1187 96, 0, 42, 0, 0, 0, 70, 0, 65, 97,
1188 51, 49, 74, 0, 98, 93, 0, 0, 82, 52,
1189 76, 77, 78, 79, 0, 0, 0, 75, 0, 53,
1190 83, 0, 84, 0, 85, 0, 0, 86
1197 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81,
1198 -81, -81, -81, 48, -81, -81, -81, -81, -81, -81,
1199 -81, -81, -81, -81, -81, -81, -81, 58, -81, -81,
1200 -81, -81, -22, -81, -81, -81, -81, -81, 60, -81,
1201 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81,
1202 -81, -68, -28, -81, -81, -81, -81, -81, 36, -80,
1203 -81, -81, -81, -81, -81, -81, -27, -81
1210 -1, 2, 3, 7, 15, 26, 4, 5, 9, 23,
1211 24, 25, 38, 34, 36, 16, 30, 45, 17, 27,
1212 53, 69, 46, 47, 67, 77, 105, 18, 28, 54,
1213 70, 82, 92, 94, 109, 123, 136, 146, 19, 29,
1214 55, 76, 65, 83, 99, 100, 101, 102, 103, 125,
1215 137, 144, 118, 127, 145, 151, 153, 155, 51, 59,
1216 68, 78, 87, 88, 121, 135, 10, 21
1226 40, 41, 42, 104, 31, 108, 85, 116, 63, 64,
1227 58, 58, 6, 110, 80, 81, 56, 57, 95, 96,
1228 97, 90, 91, 32, 86, 117, 61, 62, -3, 11,
1229 1, 8, 20, 12, 22, 37, 13, 14, 98, 33,
1230 72, 35, 39, 58, 131, 43, 44, 13, 14, 116,
1231 84, 140, 141, 142, 143, 50, 60, 66, 73, 71,
1232 75, 79, 89, 93, 120, 107, 106, 111, 112, 113,
1233 114, 119, 126, 124, 132, 115, 134, 129, 138, 147,
1234 150, 133, 154, 148, 157, 122, 52, 156, 48, 128,
1235 49, 0, 0, 0, 0, 0, 130, 0, 0, 0,
1236 0, 0, 0, 0, 0, 74, 0, 0, 0, 139,
1237 0, 0, 0, 0, 0, 0, 0, 0, 0, 149,
1245 27, 28, 29, 83, 21, 5, 22, 20, 15, 16,
1246 10, 10, 0, 93, 11, 12, 43, 44, 17, 18,
1247 19, 13, 14, 40, 40, 38, 53, 54, 0, 1,
1248 4, 40, 21, 5, 25, 25, 8, 9, 37, 26,
1249 67, 27, 37, 10, 124, 6, 7, 8, 9, 20,
1250 77, 28, 29, 30, 31, 38, 37, 37, 40, 38,
1251 38, 37, 25, 38, 23, 25, 39, 37, 25, 38,
1252 38, 37, 25, 38, 25, 102, 24, 39, 25, 25,
1253 25, 39, 25, 39, 25, 107, 38, 155, 30, 117,
1254 30, -1, -1, -1, -1, -1, 123, -1, -1, -1,
1255 -1, -1, -1, -1, -1, 69, -1, -1, -1, 136,
1256 -1, -1, -1, -1, -1, -1, -1, -1, -1, 146,
1265 0, 4, 42, 43, 47, 48, 0, 44, 40, 49,
1266 107, 1, 5, 8, 9, 45, 56, 59, 68, 79,
1267 21, 108, 25, 50, 51, 52, 46, 60, 69, 80,
1268 57, 21, 40, 26, 54, 27, 55, 25, 53, 37,
1269 107, 107, 107, 6, 7, 58, 63, 64, 68, 79,
1270 38, 99, 54, 61, 70, 81, 107, 107, 10, 100,
1271 37, 107, 107, 15, 16, 83, 37, 65, 101, 62,
1272 71, 38, 107, 40, 99, 38, 82, 66, 102, 37,
1273 11, 12, 72, 84, 107, 22, 40, 103, 104, 25,
1274 13, 14, 73, 38, 74, 17, 18, 19, 37, 85,
1275 86, 87, 88, 89, 100, 67, 39, 25, 5, 75,
1276 100, 37, 25, 38, 38, 107, 20, 38, 93, 37,
1277 23, 105, 73, 76, 38, 90, 25, 94, 93, 39,
1278 107, 100, 25, 39, 24, 106, 77, 91, 25, 107,
1279 28, 29, 30, 31, 92, 95, 78, 25, 39, 107,
1280 25, 96, 107, 97, 25, 98, 92, 25
1286 const unsigned short int
1287 XdlParser::yytoken_number_[] =
1289 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
1290 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1291 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1292 285, 286, 287, 288, 289, 290, 291, 59, 44, 58,
1301 0, 41, 42, 43, 44, 44, 45, 45, 45, 46,
1302 45, 48, 47, 49, 50, 50, 51, 52, 53, 54,
1303 55, 55, 56, 57, 57, 58, 58, 58, 60, 61,
1304 62, 59, 63, 65, 66, 67, 64, 69, 70, 71,
1305 68, 72, 72, 73, 73, 73, 74, 74, 74, 74,
1306 76, 77, 78, 75, 80, 81, 82, 79, 83, 83,
1307 83, 84, 84, 85, 85, 85, 85, 85, 85, 86,
1308 87, 88, 88, 90, 91, 89, 92, 92, 92, 92,
1309 93, 94, 95, 96, 97, 98, 93, 99, 99, 101,
1310 100, 102, 102, 103, 104, 105, 105, 106, 106, 107,
1318 0, 2, 1, 2, 0, 2, 1, 1, 1, 0,
1319 3, 0, 7, 1, 1, 3, 2, 1, 1, 1,
1320 0, 1, 3, 0, 2, 1, 1, 1, 0, 0,
1321 0, 8, 3, 0, 0, 0, 8, 0, 0, 0,
1322 10, 2, 4, 0, 1, 1, 0, 2, 2, 4,
1323 0, 0, 0, 7, 0, 0, 0, 9, 0, 1,
1324 1, 0, 2, 2, 1, 3, 2, 2, 1, 1,
1325 3, 1, 1, 0, 0, 7, 1, 1, 1, 1,
1326 0, 0, 0, 0, 0, 0, 14, 0, 2, 0,
1327 5, 0, 2, 5, 1, 0, 1, 0, 1, 3,
1331 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1337 "\"end of file\"",
"error",
"$undefined",
"\"end of line\"",
"DESIGN",
1338 "MODULE",
"ENDMODULE",
"PORT",
"INST",
"NET",
"CFG",
"PLACED",
1339 "UNPLACED",
"BONDED",
"UNBONDED",
"POWER",
"GROUND",
"INPIN",
"OUTPIN",
1340 "PIP",
"ROUTETHROUGH",
"STRING",
"CFGSETTING",
"CFGNAME",
"CFGVALUE",
1341 "IDENTIFIER",
"SPEEDGRADE",
"XDLVERSION",
"BIDIRUNBUF",
"BIDIRUNIBUF",
1342 "BIDIRBIBUF",
"UNIDIRBUF",
"WORD",
"CHAR",
"QUOTE",
"OBRACE",
"EBRACE",
1343 "';'",
"','",
"':'",
"'\"'",
"$accept",
"start",
"design",
"statements",
1344 "statement",
"@1",
"design_statement",
"@2",
"design_name",
1345 "device_info",
"part",
"device",
"package",
"speed",
"version",
1346 "module_block",
"module_elements",
"module_element",
"module_statement",
1347 "@3",
"@4",
"@5",
"endmodule_statement",
"port_statement",
"@6",
"@7",
1348 "@8",
"instance_statement",
"@9",
"@10",
"@11",
"instance_placement",
1349 "instance_bonding",
"reference_and_config",
"module_reference",
"@12",
1350 "@13",
"@14",
"net_statement",
"@15",
"@16",
"@17",
"net_power",
1351 "net_pins_or_pips_or_cfg",
"net_pin_or_pip_or_cfg",
"net_cfg",
"net_pin",
1352 "net_pin_direction",
"net_pip",
"@18",
"@19",
"net_pip_direction",
1353 "routethrough",
"@20",
"@21",
"@22",
"@23",
"@24",
"optional_config",
1354 "config",
"@25",
"config_tuples",
"config_tuple",
"config_setting",
1355 "config_name",
"config_value",
"double_quoted_string",
"string", 0
1361 const XdlParser::rhs_number_type
1362 XdlParser::yyrhs_[] =
1364 42, 0, -1, 43, -1, 47, 44, -1, -1, 44,
1365 45, -1, 56, -1, 68, -1, 79, -1, -1, 1,
1366 46, 37, -1, -1, 4, 48, 49, 50, 55, 99,
1367 37, -1, 107, -1, 51, -1, 52, 53, 54, -1,
1368 25, 54, -1, 25, -1, 25, -1, 26, -1, -1,
1369 27, -1, 59, 57, 63, -1, -1, 57, 58, -1,
1370 64, -1, 68, -1, 79, -1, -1, -1, -1, 5,
1371 60, 107, 61, 107, 62, 99, 37, -1, 6, 107,
1372 37, -1, -1, -1, -1, 7, 107, 65, 107, 66,
1373 107, 67, 37, -1, -1, -1, -1, 8, 69, 107,
1374 70, 107, 71, 38, 72, 74, 37, -1, 12, 73,
1375 -1, 11, 25, 25, 73, -1, -1, 13, -1, 14,
1376 -1, -1, 38, 100, -1, 38, 75, -1, 38, 75,
1377 38, 100, -1, -1, -1, -1, 5, 76, 107, 77,
1378 107, 78, 107, -1, -1, -1, -1, 9, 80, 107,
1379 81, 83, 38, 82, 84, 37, -1, -1, 15, -1,
1380 16, -1, -1, 84, 85, -1, 87, 38, -1, 87,
1381 -1, 89, 38, 93, -1, 89, 93, -1, 86, 38,
1382 -1, 86, -1, 100, -1, 88, 107, 25, -1, 17,
1383 -1, 18, -1, -1, -1, 19, 25, 90, 25, 91,
1384 92, 25, -1, 28, -1, 29, -1, 30, -1, 31,
1385 -1, -1, -1, -1, -1, -1, -1, 20, 94, 39,
1386 25, 95, 39, 25, 96, 107, 97, 25, 98, 92,
1387 25, -1, -1, 38, 100, -1, -1, 10, 101, 40,
1388 102, 40, -1, -1, 102, 103, -1, 104, 39, 105,
1389 39, 106, -1, 22, -1, -1, 23, -1, -1, 24,
1390 -1, 40, 108, 40, -1, 21, -1, 108, 21, -1
1395 const unsigned short int
1396 XdlParser::yyprhs_[] =
1398 0, 0, 3, 5, 8, 9, 12, 14, 16, 18,
1399 19, 23, 24, 32, 34, 36, 40, 43, 45, 47,
1400 49, 50, 52, 56, 57, 60, 62, 64, 66, 67,
1401 68, 69, 78, 82, 83, 84, 85, 94, 95, 96,
1402 97, 108, 111, 116, 117, 119, 121, 122, 125, 128,
1403 133, 134, 135, 136, 144, 145, 146, 147, 157, 158,
1404 160, 162, 163, 166, 169, 171, 175, 178, 181, 183,
1405 185, 189, 191, 193, 194, 195, 203, 205, 207, 209,
1406 211, 212, 213, 214, 215, 216, 217, 232, 233, 236,
1407 237, 243, 244, 247, 253, 255, 256, 258, 259, 261,
1412 const unsigned short int
1413 XdlParser::yyrline_[] =
1415 0, 171, 171, 177, 184, 185, 189, 190, 191, 192,
1416 192, 201, 201, 220, 227, 228, 232, 240, 243, 246,
1417 249, 251, 269, 272, 274, 278, 279, 280, 284, 285,
1418 286, 284, 305, 351, 352, 353, 350, 367, 368, 369,
1419 367, 390, 394, 402, 403, 404, 407, 409, 410, 411,
1420 415, 416, 418, 415, 470, 471, 472, 470, 487, 488,
1421 489, 492, 494, 498, 499, 500, 501, 502, 503, 507,
1422 513, 547, 548, 554, 555, 554, 561, 563, 565, 567,
1423 572, 578, 579, 580, 581, 582, 578, 616, 618, 622,
1424 622, 625, 627, 631, 643, 647, 648, 652, 653, 659,
1430 XdlParser::yystack_print_ ()
1441 XdlParser::yy_reduce_print_ (
int yyrule)
1443 unsigned int yylno = yyrline_[yyrule];
1444 int yynrhs =
yyr2_[yyrule];
1446 *
yycdebug_ <<
"Reducing stack by rule " << yyrule - 1
1447 <<
" (line " << yylno <<
"), ";
1449 for (
int yyi = 0; yyi < yynrhs; yyi++)
1451 yyrhs_[yyprhs_[yyrule] + yyi],
1465 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1466 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1467 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1468 2, 2, 2, 2, 40, 2, 2, 2, 2, 2,
1469 2, 2, 2, 2, 38, 2, 2, 2, 2, 2,
1470 2, 2, 2, 2, 2, 2, 2, 2, 39, 37,
1471 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1472 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1473 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1474 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1475 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1476 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1477 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1478 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1479 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1480 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1481 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1482 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1483 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1484 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1485 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1486 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1487 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1488 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1489 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1490 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
1491 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
1492 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1493 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1497 return translate_table[t];
1516 #line 676 "parser.yy"
std::string last_string
Last double-quoted string that we saw.
torc::physical::ENetType mNetType
Current net type.
void failure(void)
Signals a parsing failure by deasserting the success flag.
static const signed char yypact_ninf_
string mDesignPackage
Package specified for the design.
static const int yyfinal_
static const signed char yypact_[]
For a state, the index in yytable_ of its portion.
int debug_level_type
Type for debugging levels.
void clearConfig(void)
Clears the configuration map.
void setConfig(const string &inSetting, const Config &inConfig)
Sets the configuration for the given setting.
#define YY_REDUCE_PRINT(Rule)
SiteName mInstanceSite
Current instance site name.
string mReferenceModule
Name of the referenced module.
InstanceSharedPtr mReferenceInstancePtr
Shared pointer to the referenced instance.
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
static const unsigned char yystos_[]
For a state, its accessing symbol.
Encapsulation of a device designator and its constituent elements.
string mDesignXdlVersion
XDL version read in by the design.
boost::uint32_t mInstanceCount
Number of instances read for the design.
ModuleSharedPtr mReferenceModulePtr
Shared pointer to the referenced module.
void yydestruct_(const char *yymsg, int yytype, semantic_type *yyvaluep, location_type *yylocationp)
Reclaim the memory associated to a symbol.
static const int yyterror_
static const char *const yytname_[]
For a symbol, its name in clear.
position begin
Beginning of the located region.
string mDesignDevice
Device specified for the design.
string mPortName
Name of the port.
torc::physical::EInstanceBonding mInstanceBonding
Current instance bonding.
stack< location_type > location_stack_type
location stack type.
static const short int yycheck_[]
string mRoutethroughConfigSetting
Current routethrough config setting.
const_iterator end() const
Bison undocumented.
string mDesignSpeedGrade
Speed grade specified for the design.
string mInstanceName
Current instance name.
boost::shared_ptr< Port > PortSharedPtr
Shared pointer encapsulation of a Port.
Present a slice of the top of a stack.
string mPortPin
Current port pin name.
static const int yyntokens_
static const int yyempty_
InstanceSharedPtrVector::const_iterator InstanceSharedPtrConstIterator
Constant iterator to Instance shared pointers.
virtual std::string yysyntax_error_(int yystate, int tok)
PinName mPinName
Current pin name.
stack< semantic_type > semantic_stack_type
Semantic value stack type.
static const unsigned int yyuser_token_number_max_
stack< state_type > state_stack_type
State stack type.
TileName mPipTile
Current pip tile name.
unsigned char token_number_type
Internal symbol numbers.
ModuleSharedPtr mModulePtr
Shared pointer to the current module.
const_iterator begin() const
Bison undocumented.
void yypop_(unsigned int n=1)
Pop n symbols the three stacks.
ConfigMap mConfigMap
Current config map.
TileName mInstanceTile
Current instance tile name.
virtual void error(const location_type &loc, const std::string &msg)
WireName mRoutethroughSource
Current routethrough source wire name.
boost::shared_ptr< class InstancePin > InstancePinSharedPtr
Shared pointer encapsulation of an InstancePin.
boost::uint32_t mConfigCount
Number of configurations read for the design.
string mReferenceInstance
Name of the referenced instance.
void error(const location &l, const string &m)
Error handling with associated line number.
InstanceReferenceSharedPtr mInstanceReferencePtr
Shared pointer to instance reference.
YYSTYPE semantic_type
Symbol semantic values.
static const unsigned char yydefact_[]
class torc::XdlScanner * lexer
Pointer to the current lexer instance.
string mConfigName
Current config name.
#define YYLLOC_DEFAULT(Current, Rhs, N)
void push(const T &t)
Bison undocumented.
boost::uint32_t mModuleCount
Number of modules read for the design.
state_stack_type yystate_stack_
The state stack.
std::string * filename
File name to which this position refers.
CircuitWeakPtr mCircuitPtr
Weak pointer to the circuit.
virtual std::string yytnamerr_(const char *n)
Convert the symbol name n to a form suitable for a diagnostic.
TileTypeName mInstanceType
Current instance type.
boost::shared_ptr< Circuit > CircuitSharedPtr
Shared pointer encapsulation of a Circuit.
Header forwarding XdlScanner includes to the XdlParser.
string mRoutethroughInstance
Current routethrough Instance name.
string mStreamName
Name of file or input stream for error messages.
static const unsigned char yyr1_[]
For a rule, its LHS.
static const short int yydefgoto_[]
DesignSharedPtr mDesignPtr
Shared pointer to the design.
boost::shared_ptr< Instance > InstanceSharedPtr
Shared pointer encapsulation of an Instance.
debug_level_type debug_level() const
The current debugging level.
virtual void bind(torc::physical::InstancePinSharedPtr &)
Bind the given instance pin to its database Tilewire if applicable.
static const unsigned char yyr2_[]
For a rule, its RHS length.
PortTempVector mPortTempVector
Vector of ports not yet mapped to instances.
location_stack_type yylocation_stack_
The location stack.
NetSharedPtr mNetPtr
Shared pointer to the current net.
static const short int yytable_[]
void set_debug_stream(std::ostream &)
Set the current debugging stream.
XdlParser(class XdlImporter &xdl_yyarg)
Build a parser object.
Physical design programmable interconnect point.
string mNetName
Current net name.
boost::shared_ptr< Routethrough > RoutethroughSharedPtr
Shared pointer encapsulation of a Routethrough.
position end
End of the located region.
WireName mPipSink
Current pip sink wire name.
std::deque< state_type >::const_reverse_iterator const_iterator
static const token_number_type yyundef_token_
string mReferenceInstantiation
Name under which the module was instantiated.
const string & getDevicePackage(void) const
Returns the device package.
void pop(unsigned int n=1)
Bison undocumented.
WireName mPipSource
Current pip source wire name.
const string & getDeviceName(void) const
Returns the device name.
virtual void initializeDatabase(void)
Initialize the database if applicable.
token_number_type yytranslate_(int t)
Convert a scanner token number t to a symbol number.
Importer from XDL format into a physical design.
boost::uint32_t mNetCount
Number of nets read for the design.
torc::physical::EPipDirection mPipDirection
Current pip directionality.
ModuleSharedPtrVector::iterator ModuleSharedPtrIterator
Non-constant iterator for Module shared pointers.
string mModuleAnchor
Module anchor instance name.
static const signed char yypgoto_[]
string mModuleName
Name of the module.
string mDesignName
Name of the design.
void set_debug_level(debug_level_type l)
Set the current debugging level.
boost::weak_ptr< Instance > InstanceWeakPtr
Weak pointer encapsulation of an Instance.
string mRoutethroughConfigName
Current routethrough config name.
string mConfigValue
Current config value.
std::ostream & debug_stream() const
The current debugging stream.
boost::shared_ptr< InstanceReference > InstanceReferenceSharedPtr
Shared pointer encapsulation of an InstanceReference.
semantic_stack_type yysemantic_stack_
The semantic value stack.
static const signed char yytable_ninf_
torc::physical::EPinDirection mPinDirection
Current pin direction.
static const int yyerrcode_
InstanceSharedPtr mInstancePtr
Shared pointer to the current instance.
string mConfigSetting
Current config setting.
string mRoutethroughConfigValue
Current routethrough config value.
string mPortInstance
Current port instance name.
InstanceSharedPtrVector::iterator InstanceSharedPtrIterator
Non-constant iterator to Instance shared pointers.
WireName mRoutethroughSink
Current routethrough sink wire name.