Package qilin
Class CoreConfig.CorePTAConfiguration
java.lang.Object
qilin.CoreConfig.CorePTAConfiguration
- Direct Known Subclasses:
PTAConfig.PointerAnalysisConfiguration
- Enclosing class:
- CoreConfig
-
Field Summary
Modifier and TypeFieldDescriptionClinit loading mode: APP: A debug mode for testing which load only the minimum <clinit> of classes needed.boolean
in qilin.spark limit heap context for strings if we are object sensitiveboolean
enable to merge heaps like StringBuilder/StringBuffer, exceptions by types.boolean
the type of array element is java.lang.Object by default.boolean
The default setting (same as the imprecise version in Doop): there is a global variable for all thrown exceptions and any caught exception variable points to all those exceptions.boolean
boolean
in qilin.spark propagate all string constants false means merge all string constants, see the corresponding flag, DISTINGUISH_NO_STRING_CONSTANTS, in DOOP. -
Constructor Summary
-
Method Summary
-
Field Details
-
singleentry
public boolean singleentry -
clinitMode
Clinit loading mode: APP: A debug mode for testing which load only the minimum <clinit> of classes needed. FULL: load all <clinit> of classes that are currently loaded in the scene. ON_THE_FLY: we load <clinit> on the fly, this mode is same as DOOP (default mode). -
mergeHeap
public boolean mergeHeapenable to merge heaps like StringBuilder/StringBuffer, exceptions by types. -
preciseArrayElement
public boolean preciseArrayElementthe type of array element is java.lang.Object by default. if set to be true, we will use more precise type for array elements. -
stringConstants
public boolean stringConstantsin qilin.spark propagate all string constants false means merge all string constants, see the corresponding flag, DISTINGUISH_NO_STRING_CONSTANTS, in DOOP. -
preciseExceptions
public boolean preciseExceptionsThe default setting (same as the imprecise version in Doop): there is a global variable for all thrown exceptions and any caught exception variable points to all those exceptions. Obviously, this is extremely imprecise.This imprecision does not seem to matter too much for typical programs in the context-insensitive and 1-call-site-sensitive analyses, but is disastrous in the 1-object-sensitive analysis.
once this switch is open, it will model exception flow-sensitively (same as the precise version in Doop). Implicitly thrown exceptions are not included.
-
enforceEmptyCtxForIgnoreTypes
public boolean enforceEmptyCtxForIgnoreTypesin qilin.spark limit heap context for strings if we are object sensitive -
ptaName
-
-
Constructor Details
-
CorePTAConfiguration
public CorePTAConfiguration()
-