equal
deleted
inserted
replaced
1700 methodHandle mhandle(THREAD, method); |
1700 methodHandle mhandle(THREAD, method); |
1701 expand(CHECK); |
1701 expand(CHECK); |
1702 method = mhandle(); |
1702 method = mhandle(); |
1703 } |
1703 } |
1704 |
1704 |
1705 _methods->short_at_put(_index, method->orig_method_idnum()); |
1705 _methods->ushort_at_put(_index, method->orig_method_idnum()); |
1706 _bcis->int_at_put(_index, Backtrace::merge_bci_and_version(bci, method->constants()->version())); |
1706 _bcis->int_at_put(_index, Backtrace::merge_bci_and_version(bci, method->constants()->version())); |
1707 |
1707 |
1708 // Note:this doesn't leak symbols because the mirror in the backtrace keeps the |
1708 // Note:this doesn't leak symbols because the mirror in the backtrace keeps the |
1709 // klass owning the symbols alive so their refcounts aren't decremented. |
1709 // klass owning the symbols alive so their refcounts aren't decremented. |
1710 Symbol* name = method->name(); |
1710 Symbol* name = method->name(); |
1754 assert(_methods.is_null() || _methods->length() == java_lang_Throwable::trace_chunk_size, "lengths don't match"); |
1754 assert(_methods.is_null() || _methods->length() == java_lang_Throwable::trace_chunk_size, "lengths don't match"); |
1755 } |
1755 } |
1756 |
1756 |
1757 BacktraceElement next(Thread* thread) { |
1757 BacktraceElement next(Thread* thread) { |
1758 BacktraceElement e (Handle(thread, _mirrors->obj_at(_index)), |
1758 BacktraceElement e (Handle(thread, _mirrors->obj_at(_index)), |
1759 _methods->short_at(_index), |
1759 _methods->ushort_at(_index), |
1760 Backtrace::version_at(_bcis->int_at(_index)), |
1760 Backtrace::version_at(_bcis->int_at(_index)), |
1761 Backtrace::bci_at(_bcis->int_at(_index)), |
1761 Backtrace::bci_at(_bcis->int_at(_index)), |
1762 _names->symbol_at(_index)); |
1762 _names->symbol_at(_index)); |
1763 _index++; |
1763 _index++; |
1764 |
1764 |