equal
deleted
inserted
replaced
1637 _line += next & 0x7; |
1637 _line += next & 0x7; |
1638 } |
1638 } |
1639 return true; |
1639 return true; |
1640 } |
1640 } |
1641 |
1641 |
|
1642 #if INCLUDE_JVMTI |
1642 |
1643 |
1643 Bytecodes::Code Method::orig_bytecode_at(int bci) const { |
1644 Bytecodes::Code Method::orig_bytecode_at(int bci) const { |
1644 BreakpointInfo* bp = method_holder()->breakpoints(); |
1645 BreakpointInfo* bp = method_holder()->breakpoints(); |
1645 for (; bp != NULL; bp = bp->next()) { |
1646 for (; bp != NULL; bp = bp->next()) { |
1646 if (bp->match(this, bci)) { |
1647 if (bp->match(this, bci)) { |
1717 |
1718 |
1718 void Method::clear_all_breakpoints() { |
1719 void Method::clear_all_breakpoints() { |
1719 clear_matches(this, -1); |
1720 clear_matches(this, -1); |
1720 } |
1721 } |
1721 |
1722 |
|
1723 #endif // INCLUDE_JVMTI |
1722 |
1724 |
1723 int Method::invocation_count() { |
1725 int Method::invocation_count() { |
1724 MethodCounters *mcs = method_counters(); |
1726 MethodCounters *mcs = method_counters(); |
1725 if (TieredCompilation) { |
1727 if (TieredCompilation) { |
1726 MethodData* const mdo = method_data(); |
1728 MethodData* const mdo = method_data(); |
1782 if (mcs != NULL) { |
1784 if (mcs != NULL) { |
1783 mcs->set_highest_osr_comp_level(level); |
1785 mcs->set_highest_osr_comp_level(level); |
1784 } |
1786 } |
1785 } |
1787 } |
1786 |
1788 |
|
1789 #if INCLUDE_JVMTI |
|
1790 |
1787 BreakpointInfo::BreakpointInfo(Method* m, int bci) { |
1791 BreakpointInfo::BreakpointInfo(Method* m, int bci) { |
1788 _bci = bci; |
1792 _bci = bci; |
1789 _name_index = m->name_index(); |
1793 _name_index = m->name_index(); |
1790 _signature_index = m->signature_index(); |
1794 _signature_index = m->signature_index(); |
1791 _orig_bytecode = (Bytecodes::Code) *m->bcp_from(_bci); |
1795 _orig_bytecode = (Bytecodes::Code) *m->bcp_from(_bci); |
1818 void BreakpointInfo::clear(Method* method) { |
1822 void BreakpointInfo::clear(Method* method) { |
1819 *method->bcp_from(_bci) = orig_bytecode(); |
1823 *method->bcp_from(_bci) = orig_bytecode(); |
1820 assert(method->number_of_breakpoints() > 0, "must not go negative"); |
1824 assert(method->number_of_breakpoints() > 0, "must not go negative"); |
1821 method->decr_number_of_breakpoints(Thread::current()); |
1825 method->decr_number_of_breakpoints(Thread::current()); |
1822 } |
1826 } |
|
1827 |
|
1828 #endif // INCLUDE_JVMTI |
1823 |
1829 |
1824 // jmethodID handling |
1830 // jmethodID handling |
1825 |
1831 |
1826 // This is a block allocating object, sort of like JNIHandleBlock, only a |
1832 // This is a block allocating object, sort of like JNIHandleBlock, only a |
1827 // lot simpler. |
1833 // lot simpler. |