Fix non determinsm in optimized compiles.
Change-Id: I8e194afe66731ff68733addffc153c97b45d69db
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/CallGraph.java b/dev/core/src/com/google/gwt/dev/jjs/impl/CallGraph.java
index 328d75e..48442b5 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/CallGraph.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/CallGraph.java
@@ -18,7 +18,7 @@
import com.google.gwt.dev.jjs.ast.JMethodCall;
import com.google.gwt.dev.jjs.ast.JProgram;
import com.google.gwt.dev.jjs.ast.JVisitor;
-import com.google.gwt.thirdparty.guava.common.collect.HashMultimap;
+import com.google.gwt.thirdparty.guava.common.collect.LinkedHashMultimap;
import com.google.gwt.thirdparty.guava.common.collect.Sets;
import java.util.Collection;
@@ -61,8 +61,8 @@
}
}
- private HashMultimap<JMethod, JMethod> calleeCallersPairs = HashMultimap.create();
- private HashMultimap<JMethod, JMethod> callerCalleesPairs = HashMultimap.create();
+ private LinkedHashMultimap<JMethod, JMethod> calleeCallersPairs = LinkedHashMultimap.create();
+ private LinkedHashMultimap<JMethod, JMethod> callerCalleesPairs = LinkedHashMultimap.create();
/**
* Add a caller method and its callee methods to the call graph.
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/FieldReferencesGraph.java b/dev/core/src/com/google/gwt/dev/jjs/impl/FieldReferencesGraph.java
index e82b581..312b8b2 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/FieldReferencesGraph.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/FieldReferencesGraph.java
@@ -19,7 +19,7 @@
import com.google.gwt.dev.jjs.ast.JMethod;
import com.google.gwt.dev.jjs.ast.JProgram;
import com.google.gwt.dev.jjs.ast.JVisitor;
-import com.google.gwt.thirdparty.guava.common.collect.HashMultimap;
+import com.google.gwt.thirdparty.guava.common.collect.LinkedHashMultimap;
import com.google.gwt.thirdparty.guava.common.collect.Multimap;
import java.util.Collection;
@@ -60,8 +60,8 @@
}
}
- private Multimap<JField, JMethod> methodsByReferencedField = HashMultimap.create();
- private Multimap<JMethod, JField> referencedFieldsByMethod = HashMultimap.create();
+ private Multimap<JField, JMethod> methodsByReferencedField = LinkedHashMultimap.create();
+ private Multimap<JMethod, JField> referencedFieldsByMethod = LinkedHashMultimap.create();
/**
* Build the field references graph of a JProgram.