--- a/hotspot/src/share/vm/opto/phaseX.hpp Fri Nov 27 07:56:58 2009 -0800
+++ b/hotspot/src/share/vm/opto/phaseX.hpp Thu Nov 12 09:24:21 2009 -0800
@@ -345,7 +345,11 @@
Node *hash_find(const Node *n) { return _table.hash_find(n); }
// Used after parsing to eliminate values that are no longer in program
- void remove_useless_nodes(VectorSet &useful) { _table.remove_useless_nodes(useful); }
+ void remove_useless_nodes(VectorSet &useful) {
+ _table.remove_useless_nodes(useful);
+ // this may invalidate cached cons so reset the cache
+ init_con_caches();
+ }
virtual ConNode* uncached_makecon(const Type* t); // override from PhaseTransform