changeset 22459:2a11f2b40571

Remove assertion that fails on benign race
author Christian Wimmer <christian.wimmer@oracle.com>
date Fri, 14 Aug 2015 17:25:34 -0700
parents c833c866c5c3
children dc83e538dc8b
files graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Fri Aug 14 15:54:48 2015 +0200
+++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java	Fri Aug 14 17:25:34 2015 -0700
@@ -766,11 +766,14 @@
     }
 
     private Node findFirstLiveIterable(int iterableId, Node node) {
-        assert iterableNodesFirst.get(iterableId) == node;
         Node start = node;
         while (start != null && start.isDeleted()) {
             start = start.typeCacheNext;
         }
+        /*
+         * Multiple threads iterating nodes can update this cache simultaneously. This is a benign
+         * race, since all threads update it to the same value.
+         */
         iterableNodesFirst.set(iterableId, start);
         if (start == null) {
             iterableNodesLast.set(iterableId, start);