[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