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()) {