Nice/src/mlsub/typing/lowlevel K0.java,1.31,1.32

Daniel Bonniot <[email protected]> Tue, 05 Jul 2005 18:32:56 +0000
Newsgroups gmane.comp.lang.nice.cvs
Message-ID <[email protected]>
Update of /cvsroot/nice/Nice/src/mlsub/typing/lowlevel
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8749/src/mlsub/typing/lowlevel

Modified Files:
	K0.java 
Log Message:
Only perform abstract interface computations when at least one soft node
implements at least one abstract interface.
Speeds up typechecking by another ~ 10%.


Index: K0.java
===================================================================
RCS file: /cvsroot/nice/Nice/src/mlsub/typing/lowlevel/K0.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** K0.java	5 Jul 2005 16:04:46 -0000	1.31
--- K0.java	5 Jul 2005 18:32:53 -0000	1.32
***************
*** 594,597 ****
--- 594,598 ----
     **/
    public void indexImplements(int x, int iid) throws Unsatisfiable {
+     usingInterfaces = true;
      S.assume(S.a&& hasBeenInitialized);
      if (LowlevelUnsatisfiable.refinedReports) {
***************
*** 1158,1168 ****
    }
  
    private void prepareConstraint() throws Unsatisfiable {
      collapseMinimal();
!     BitMatrix leq = new BitMatrix(C);
!     leq.closure();
!     computeArrows(leq);
!     saturateAbs(leq);
!     //condense(leq);
    }
  
--- 1159,1174 ----
    }
  
+   private boolean usingInterfaces = false;
+ 
    private void prepareConstraint() throws Unsatisfiable {
      collapseMinimal();
!     if (usingInterfaces) {
!       BitMatrix leq = new BitMatrix(C);
!       leq.closure();
!       computeArrows(leq);
!       saturateAbs(leq);
!       //condense(leq);
!       usingInterfaces = false;
!     }
    }
  



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click