Mercurial > hg > truffle
comparison src/share/vm/opto/node.cpp @ 4778:35acf8f0a2e4
7128352: assert(obj_node == obj) failed
Summary: Compare uncasted object nodes.
Reviewed-by: never
author | kvn |
---|---|
date | Tue, 10 Jan 2012 18:05:38 -0800 |
parents | e3cbc9ddd434 |
children | 8c92982cbbc4 |
comparison
equal
deleted
inserted
replaced
4777:e9a5e0a812c8 | 4778:35acf8f0a2e4 |
---|---|
831 return (Node*) this; | 831 return (Node*) this; |
832 } | 832 } |
833 | 833 |
834 //---------------------------uncast_helper------------------------------------- | 834 //---------------------------uncast_helper------------------------------------- |
835 Node* Node::uncast_helper(const Node* p) { | 835 Node* Node::uncast_helper(const Node* p) { |
836 uint max_depth = 3; | 836 #ifdef ASSERT |
837 for (uint i = 0; i < max_depth; i++) { | 837 uint depth_count = 0; |
838 const Node* orig_p = p; | |
839 #endif | |
840 | |
841 while (true) { | |
842 #ifdef ASSERT | |
843 if (depth_count >= K) { | |
844 orig_p->dump(4); | |
845 if (p != orig_p) | |
846 p->dump(1); | |
847 } | |
848 assert(depth_count++ < K, "infinite loop in Node::uncast_helper"); | |
849 #endif | |
838 if (p == NULL || p->req() != 2) { | 850 if (p == NULL || p->req() != 2) { |
839 break; | 851 break; |
840 } else if (p->is_ConstraintCast()) { | 852 } else if (p->is_ConstraintCast()) { |
841 p = p->in(1); | 853 p = p->in(1); |
842 } else if (p->is_CheckCastPP()) { | 854 } else if (p->is_CheckCastPP()) { |