From bcec0cce45632770643cbf3825026a7d01836ba8 Mon Sep 17 00:00:00 2001 From: sjfink Date: Thu, 11 Sep 2008 17:05:46 +0000 Subject: [PATCH] small local optimizations git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3033 f5eafffb-2e1d-0410-98e4-8ec43c5233c4 --- .../src/com/ibm/wala/cfg/ShrikeCFG.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/com.ibm.wala.core/src/com/ibm/wala/cfg/ShrikeCFG.java b/com.ibm.wala.core/src/com/ibm/wala/cfg/ShrikeCFG.java index e85a4abc1..b97c0c9d4 100644 --- a/com.ibm.wala.core/src/com/ibm/wala/cfg/ShrikeCFG.java +++ b/com.ibm.wala.core/src/com/ibm/wala/cfg/ShrikeCFG.java @@ -10,8 +10,8 @@ *******************************************************************************/ package com.ibm.wala.cfg; +import java.util.ArrayList; import java.util.Collection; -import java.util.HashSet; import java.util.Iterator; import java.util.Set; @@ -325,10 +325,9 @@ public class ShrikeCFG extends AbstractCFG { // the set "caught" should be the set of exceptions that MUST // have been caught // by the handlers in scope - HashSet caught = HashSetFactory.make(exceptionTypes.size()); + ArrayList caught = new ArrayList(exceptionTypes.size()); // check if we should add an edge to the catch block. - for (Iterator it = exceptionTypes.iterator(); it.hasNext();) { - TypeReference t = (TypeReference) it.next(); + for (TypeReference t: exceptionTypes) { if (t != null) { IClass klass = cha.lookupClass(t); if (klass == null) { @@ -337,10 +336,11 @@ public class ShrikeCFG extends AbstractCFG { addExceptionalEdgeTo(b); } else { IClass caughtClass = cha.lookupClass(caughtException); - if (cha.isSubclassOf(klass, caughtClass) || cha.isSubclassOf(caughtClass, klass)) { + boolean subtype1 = cha.isSubclassOf(klass, caughtClass); + if (subtype1 || cha.isSubclassOf(caughtClass, klass)) { // add the edge and null out the type from the array addExceptionalEdgeTo(b); - if (cha.isSubclassOf(klass, caughtClass)) { + if (subtype1) { caught.add(t); } }