summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuben Undheim <ruben.undheim@gmail.com>2018-09-22 12:12:04 +0200
committerRuben Undheim <ruben.undheim@gmail.com>2018-09-22 12:12:04 +0200
commita13bde994a4dc08f97664df8d51fee1d86a4a422 (patch)
tree3be033ea428e3619ec07c5765631d1b9c2c495f9
parent3aaef4453970df38a707036e8b358c60e98989e6 (diff)
parentb040031ee660339f74e5258d37bce4ab4843501d (diff)
Merge tag 'upstream/1.3.106'
Upstream version 1.3.106
-rw-r--r--VERSION2
-rw-r--r--def.c8
-rw-r--r--qrouter.tcl.in23
3 files changed, 25 insertions, 8 deletions
diff --git a/VERSION b/VERSION
index 3ff73e4..d97d48f 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.3.104
+1.3.106
diff --git a/def.c b/def.c
index 413be5f..9930a04 100644
--- a/def.c
+++ b/def.c
@@ -245,10 +245,10 @@ DefAddRoutes(FILE *f, float oscale, NET net, char special)
(valid == TRUE)) {
s = LefGetRouteSpacing(routeLayer);
drect = (DSEG)malloc(sizeof(struct dseg_));
- drect->x1 = x + lr->x1 - s;
- drect->x2 = x + lr->x2 + s;
- drect->y1 = y + lr->y1 - s;
- drect->y2 = y + lr->y2 + s;
+ drect->x1 = x + (lr->x1 / 2.0) - s;
+ drect->x2 = x + (lr->x2 / 2.0) + s;
+ drect->y1 = y + (lr->y1 / 2.0) - s;
+ drect->y2 = y + (lr->y2 / 2.0) + s;
drect->layer = routeLayer;
drect->next = UserObs;
UserObs = drect;
diff --git a/qrouter.tcl.in b/qrouter.tcl.in
index ce5b874..771fa27 100644
--- a/qrouter.tcl.in
+++ b/qrouter.tcl.in
@@ -96,6 +96,10 @@ proc qrouter::write_congested {filename} {
proc qrouter::standard_route {{filename ""} {doquit true}} {
puts stdout "*** Running stage1 routing with defaults"
+ # Pull root name from filename
+ set rootname [file root $filename]
+ set deffilename ${rootname}.def
+ set rcfilename ${rootname}.rc
set result [stage1]
if {$result > 0} {
set msize 10
@@ -155,13 +159,26 @@ proc qrouter::standard_route {{filename ""} {doquit true}} {
}
}
}
- if {$filename != ""} {
- puts stdout "*** Writing DEF file $filename"
- write_def $filename
+ if {${rootname} != ""} {
+ puts stdout "*** Writing DEF file $deffilename"
+ write_def $deffilename
} else {
puts stdout "*** Writing DEF file (default)"
write_def
}
+
+ if {$result > 0} {
+ write_failed fail.out
+ }
+
+ if {${rootname} != ""} {
+ puts stdout "*** Writing RC file $rcfilename"
+ write_delays $rcfilename
+ } else {
+ puts stdout "*** Writing RC file (default)"
+ write_delays
+ }
+
if {(!$result) && $doquit} {quit}
}