src/hotspot/share/oops/method.cpp
changeset 50729 7755c93d3923
parent 50429 83aec1d357d4
child 51263 b5aac518b097
equal deleted inserted replaced
50728:9375184cec98 50729:7755c93d3923
   688   }
   688   }
   689 };
   689 };
   690 
   690 
   691 
   691 
   692 int Method::line_number_from_bci(int bci) const {
   692 int Method::line_number_from_bci(int bci) const {
   693   if (bci == SynchronizationEntryBCI) bci = 0;
       
   694   assert(bci == 0 || 0 <= bci && bci < code_size(), "illegal bci");
       
   695   int best_bci  =  0;
   693   int best_bci  =  0;
   696   int best_line = -1;
   694   int best_line = -1;
   697 
   695   if (bci == SynchronizationEntryBCI) bci = 0;
   698   if (has_linenumber_table()) {
   696   if (0 <= bci && bci < code_size() && has_linenumber_table()) {
   699     // The line numbers are a short array of 2-tuples [start_pc, line_number].
   697     // The line numbers are a short array of 2-tuples [start_pc, line_number].
   700     // Not necessarily sorted and not necessarily one-to-one.
   698     // Not necessarily sorted and not necessarily one-to-one.
   701     CompressedLineNumberReadStream stream(compressed_linenumber_table());
   699     CompressedLineNumberReadStream stream(compressed_linenumber_table());
   702     while (stream.read_pair()) {
   700     while (stream.read_pair()) {
   703       if (stream.bci() == bci) {
   701       if (stream.bci() == bci) {