[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-cvs: gaf.git: branch: master updated (1.6.1-20100214-136-g8d05ef2)
The branch, master has been updated
via 8d05ef23b0bb7675d95362e539f3cae730c0a268 (commit)
from cd369fce23897f3e0c28c7db5f7923edee3ff34c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
=========
Summary
=========
gnetlist/scheme/gnet-drc2.scm | 77 ++++++++++++++--------------------------
1 files changed, 27 insertions(+), 50 deletions(-)
=================
Commit Messages
=================
commit 8d05ef23b0bb7675d95362e539f3cae730c0a268
Author: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Commit: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Do drc-matrix lower triangular instead of simetric.
Applied patch from Karl Hammar. Since drc-matrix is simetric (connection
a->b is the same as connection b-> a), do drc-matrix lower triangular and
let get-drc-matrixelement swap row/column if row < column.
drc2:is_simetric-drc-matrix check can now be removed.
:100644 100644 a72f2a4... 1733835... M gnetlist/scheme/gnet-drc2.scm
=========
Changes
=========
commit 8d05ef23b0bb7675d95362e539f3cae730c0a268
Author: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Commit: Carlos Nieves Onega <cnieves@xxxxxxxxxx>
Do drc-matrix lower triangular instead of simetric.
Applied patch from Karl Hammar. Since drc-matrix is simetric (connection
a->b is the same as connection b-> a), do drc-matrix lower triangular and
let get-drc-matrixelement swap row/column if row < column.
drc2:is_simetric-drc-matrix check can now be removed.
diff --git a/gnetlist/scheme/gnet-drc2.scm b/gnetlist/scheme/gnet-drc2.scm
index a72f2a4..1733835 100644
--- a/gnetlist/scheme/gnet-drc2.scm
+++ b/gnetlist/scheme/gnet-drc2.scm
@@ -21,6 +21,8 @@
;;
;; DRC backend written by Carlos Nieves Onega starts here.
;;
+;; 2010-10-02: Applied patch from Karl Hammar. Do drc-matrix lower triangular
+;; and let get-drc-matrixelement swap row/column if row < column.
;; 2006-04-22: Display the pins when reporting a net with only one connection.
;; 2006-04-08: Added support for DRC directives (DontCheckPintypes and
;; NoConnection), so the DRC doesn't depend on the net name
@@ -134,27 +136,27 @@
;;; Order is important !
;;; unknown in out io oc oe pas tp tri clk pwr unconnected
;;;unknown
-;; '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+;; '( #\c )
;;;in
-;; '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+;; '( #\c #\c)
;;;out
-;; '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\c #\e #\e )
+;; '( #\c #\c #\e )
;;;io
-;; '( #\c #\c #\w #\c #\w #\w #\c #\w #\c #\c #\w #\e )
+;; '( #\c #\c #\w #\c)
;;;oc
-;; '( #\c #\c #\e #\w #\e #\c #\c #\e #\c #\c #\e #\e )
+;; '( #\c #\c #\e #\w #\e)
;;;oe
-;; '( #\c #\c #\e #\w #\c #\e #\c #\e #\c #\c #\e #\e )
+;; '( #\c #\c #\e #\w #\c #\e)
;;;pas
-;; '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+;; '( #\c #\c #\c #\c #\c #\c #\c)
;;;tp
-;; '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\c #\e #\e )
+;; '( #\c #\c #\e #\w #\e #\e #\c #\e)
;;;tri
-;; '( #\c #\c #\e #\c #\c #\c #\c #\e #\c #\c #\e #\e )
+;; '( #\c #\c #\e #\c #\c #\c #\c #\e #\c)
;;;clk
-;; '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e #\e )
+;; '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c)
;;;pwr
-;; '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\e #\c #\e )
+;; '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\e #\c)
;;;unconnected
;; '( #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e )))
@@ -219,27 +221,27 @@
; Order is important !
; unknown in out io oc oe pas tp tri clk pwr unconnected
;unknown
- '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+ '( #\c )
;in
- '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+ '( #\c #\c )
;out
- '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\c #\e #\e )
+ '( #\c #\c #\e )
;io
- '( #\c #\c #\w #\c #\w #\w #\c #\w #\c #\c #\w #\e )
+ '( #\c #\c #\w #\c )
;oc
- '( #\c #\c #\e #\w #\e #\c #\c #\e #\c #\c #\e #\e )
+ '( #\c #\c #\e #\w #\e )
;oe
- '( #\c #\c #\e #\w #\c #\e #\c #\e #\c #\c #\e #\e )
+ '( #\c #\c #\e #\w #\c #\e )
;pas
- '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e )
+ '( #\c #\c #\c #\c #\c #\c #\c )
;tp
- '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\c #\e #\e )
+ '( #\c #\c #\e #\w #\e #\e #\c #\e )
;tri
- '( #\c #\c #\e #\c #\c #\c #\c #\e #\c #\c #\e #\e )
+ '( #\c #\c #\e #\c #\c #\c #\c #\e #\c )
;clk
- '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c #\e #\e )
+ '( #\c #\c #\c #\c #\c #\c #\c #\c #\c #\c )
;pwr
- '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\e #\c #\e )
+ '( #\c #\c #\e #\w #\e #\e #\c #\e #\e #\e #\c )
;unconnected
'( #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e #\e )
)))
@@ -284,7 +286,9 @@
; Get value x y from matrix
(define drc2:get-drc-matrix-element
(lambda (row column)
- (list-ref (list-ref drc-matrix row) column)))
+ (if (< row column)
+ (list-ref (list-ref drc-matrix column) row)
+ (list-ref (list-ref drc-matrix row) column))))
; Check if all elements of the DRC matrix are characters
(define drc2:drc-matrix-elements-are-correct?
@@ -306,27 +310,6 @@
))
-; Check if the DRC matrix is simetric.
-(define drc2:is-simetric-drc-matrix
- (lambda ()
- (let check-row ((row 1))
- (if (let check-column ((column 0))
- (if (not (eqv? (drc2:get-drc-matrix-element row column)
- (drc2:get-drc-matrix-element column row)))
- #f
- (if (< column (- row 1))
- (check-column (+ column 1))
- #t)
- )
- )
- (if (< row (- (length pintype-names) 1))
- (check-row (+ row 1))
- #t)
- #f)
- )
-
-))
-
;
; End of DRC matrix functions
;-----------------------------------------------------------------------
@@ -924,12 +907,6 @@
(begin
;; Perform DRC-matrix sanity checks.
- ; See if the matrix is simetric.
- (if (not (drc2:is-simetric-drc-matrix))
- (begin (display "INTERNAL ERROR: DRC matrix is NOT simetric." port)
- (newline port)
- (newline port)
- (error "INTERNAL ERROR. DRC matrix is NOT simetric")))
; See if all elements of the matrix are chars
(if (not (drc2:drc-matrix-elements-are-correct?))
(begin (display "INTERNAL ERROR: DRC matrix elements are NOT all chars." port)
_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs