I think that IdentityHashMap uses == instead of .equals(), which is much
faster.

Marc-André Laverdière-Papineau
Doctorant - PhD Candidate

On 12/26/2013 06:55 AM, Eric Bodden wrote:
> In src/soot/toolkits/scalar/AbstractFlowAnalysis.java:
> 
>> @@ -54,7 +54,7 @@
>>      /** Constructs a flow analysis on the given <code>DirectedGraph</code>. */
>>      public AbstractFlowAnalysis(DirectedGraph<N> graph)
>>      {
>> -        unitToBeforeFlow = new HashMap<N,A>(graph.size() * 2 + 1, 0.7f);
>> +        unitToBeforeFlow = new IdentityHashMap<N,A>(graph.size() * 2 + 1);
> 
> Why is this necessary? Units should normally not implement equals()
> anyway...
> 
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/Sable/soot/pull/162/files#r8554907>.
>