127 Bytecodes::Code next_bc() { return Bytecodes::java_code((Bytecodes::Code)* _pc); } |
127 Bytecodes::Code next_bc() { return Bytecodes::java_code((Bytecodes::Code)* _pc); } |
128 |
128 |
129 // Return current ByteCode and increment PC to next bytecode, skipping all |
129 // Return current ByteCode and increment PC to next bytecode, skipping all |
130 // intermediate constants. Returns EOBC at end. |
130 // intermediate constants. Returns EOBC at end. |
131 // Expected usage: |
131 // Expected usage: |
132 // while( (bc = iter.next()) != EOBC() ) { ... } |
132 // ciBytecodeStream iter(m); |
|
133 // while (iter.next() != ciBytecodeStream::EOBC()) { ... } |
133 Bytecodes::Code next() { |
134 Bytecodes::Code next() { |
134 _bc_start = _pc; // Capture start of bc |
135 _bc_start = _pc; // Capture start of bc |
135 if( _pc >= _end ) return EOBC(); // End-Of-Bytecodes |
136 if( _pc >= _end ) return EOBC(); // End-Of-Bytecodes |
136 |
137 |
137 // Fetch Java bytecode |
138 // Fetch Java bytecode |