guard a debugging statement with DEBUG
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2015 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
This commit is contained in:
parent
4913361df3
commit
8e089b528d
|
@ -140,12 +140,15 @@ public class TypeBasedHeapModel implements HeapModel {
|
||||||
}
|
}
|
||||||
if (s.isConstant(i)) {
|
if (s.isConstant(i)) {
|
||||||
if (s.isStringConstant(i)) {
|
if (s.isStringConstant(i)) {
|
||||||
TypeReference type = node.getMethod().getDeclaringClass().getClassLoader().getLanguage().getConstantType(s.getStringValue(i));
|
TypeReference type = node.getMethod().getDeclaringClass().getClassLoader().getLanguage().getConstantType(
|
||||||
|
s.getStringValue(i));
|
||||||
result.put(pointerKeys.getPointerKeyForLocal(node, i), getInstanceKeyForConstant(type, s.getConstantValue(i)));
|
result.put(pointerKeys.getPointerKeyForLocal(node, i), getInstanceKeyForConstant(type, s.getConstantValue(i)));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
TypeAbstraction t = ti.getType(i);
|
TypeAbstraction t = ti.getType(i);
|
||||||
|
if (DEBUG) {
|
||||||
System.err.println(" type " + t);
|
System.err.println(" type " + t);
|
||||||
|
}
|
||||||
if (t.getType() != null && t.getType().isReferenceType()) {
|
if (t.getType() != null && t.getType().isReferenceType()) {
|
||||||
result.put(pointerKeys.getPointerKeyForLocal(node, i), pointerKeys.getFilteredPointerKeyForLocal(node, i,
|
result.put(pointerKeys.getPointerKeyForLocal(node, i), pointerKeys.getFilteredPointerKeyForLocal(node, i,
|
||||||
new FilteredPointerKey.SingleClassFilter(t.getType())));
|
new FilteredPointerKey.SingleClassFilter(t.getType())));
|
||||||
|
@ -227,10 +230,12 @@ public class TypeBasedHeapModel implements HeapModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Note that this always returns a {@link FilteredPointerKey}, since the {@link TypeBasedPointerAnalysis} relies on the
|
* Note that this always returns a {@link FilteredPointerKey}, since the
|
||||||
* type filter to compute points to sets.
|
* {@link TypeBasedPointerAnalysis} relies on the type filter to compute
|
||||||
|
* points to sets.
|
||||||
*
|
*
|
||||||
* @see com.ibm.wala.ipa.callgraph.propagation.PointerKeyFactory#getPointerKeyForLocal(com.ibm.wala.ipa.callgraph.CGNode, int)
|
* @see com.ibm.wala.ipa.callgraph.propagation.PointerKeyFactory#getPointerKeyForLocal(com.ibm.wala.ipa.callgraph.CGNode,
|
||||||
|
* int)
|
||||||
*/
|
*/
|
||||||
public FilteredPointerKey getPointerKeyForLocal(CGNode node, int valueNumber) {
|
public FilteredPointerKey getPointerKeyForLocal(CGNode node, int valueNumber) {
|
||||||
initPKeysForNode(node);
|
initPKeysForNode(node);
|
||||||
|
@ -260,7 +265,8 @@ public class TypeBasedHeapModel implements HeapModel {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public FilteredPointerKey getFilteredPointerKeyForLocal(CGNode node, int valueNumber, FilteredPointerKey.TypeFilter filter) throws UnimplementedError {
|
public FilteredPointerKey getFilteredPointerKeyForLocal(CGNode node, int valueNumber, FilteredPointerKey.TypeFilter filter)
|
||||||
|
throws UnimplementedError {
|
||||||
Assertions.UNREACHABLE();
|
Assertions.UNREACHABLE();
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue