Mercurial > hg > truffle
comparison src/share/vm/oops/methodData.hpp @ 13080:6e1826d5c23e
8027572: assert(r != 0) failed: invalid
Summary: null classes should be expected in profiles with conflicts
Reviewed-by: kvn, iveresov
author | roland |
---|---|
date | Wed, 13 Nov 2013 13:45:50 +0100 |
parents | 5ccbab1c69f3 |
children | 096c224171c4 da862781b584 b8413a9cbb84 |
comparison
equal
deleted
inserted
replaced
13079:924c32982a12 | 13080:6e1826d5c23e |
---|---|
688 } | 688 } |
689 | 689 |
690 // recorded type: cell without bit 0 and 1 | 690 // recorded type: cell without bit 0 and 1 |
691 static intptr_t klass_part(intptr_t v) { | 691 static intptr_t klass_part(intptr_t v) { |
692 intptr_t r = v & type_klass_mask; | 692 intptr_t r = v & type_klass_mask; |
693 assert (r != 0, "invalid"); | |
694 return r; | 693 return r; |
695 } | 694 } |
696 | 695 |
697 // type recorded | 696 // type recorded |
698 static Klass* valid_klass(intptr_t k) { | 697 static Klass* valid_klass(intptr_t k) { |
699 if (!is_type_none(k) && | 698 if (!is_type_none(k) && |
700 !is_type_unknown(k)) { | 699 !is_type_unknown(k)) { |
701 return (Klass*)klass_part(k); | 700 Klass* res = (Klass*)klass_part(k); |
701 assert(res != NULL, "invalid"); | |
702 return res; | |
702 } else { | 703 } else { |
703 return NULL; | 704 return NULL; |
704 } | 705 } |
705 } | 706 } |
706 | 707 |