< prev index next >

src/hotspot/cpu/arm/templateInterpreterGenerator_arm.cpp

Print this page
@@ -806,11 +806,11 @@
  // Interpreter stub for calling a native method. (asm interpreter)
  // This sets up a somewhat different looking stack for calling the native method
  // than the typical interpreter frame setup.
  //
  
- address TemplateInterpreterGenerator::generate_native_entry(bool synchronized) {
+ address TemplateInterpreterGenerator::generate_native_entry(bool synchronized, bool runtime_upcalls) {
    // determine code generation flags
    bool inc_counter  = UseCompiler || CountCompiledCalls;
  
    // Incoming registers:
    //

@@ -1140,11 +1140,11 @@
  }
  
  //
  // Generic interpreted method entry to (asm) interpreter
  //
- address TemplateInterpreterGenerator::generate_normal_entry(bool synchronized) {
+ address TemplateInterpreterGenerator::generate_normal_entry(bool synchronized, bool runtime_upcalls) {
    // determine code generation flags
    bool inc_counter  = UseCompiler || CountCompiledCalls;
  
    // Rmethod: Method*
    // Rthread: thread

@@ -1564,10 +1564,19 @@
    generate_and_dispatch(t);
  }
  
  //------------------------------------------------------------------------------------------------------------------------
  
+ void TemplateInterpreterGenerator::count_bytecode() {
+   __ inc_global_counter((address) &BytecodeCounter::_counter_value, 0, Rtemp, R2_tmp, true);
+ }
+ 
+ 
+ void TemplateInterpreterGenerator::histogram_bytecode(Template* t) {
+   __ inc_global_counter((address)&BytecodeHistogram::_counters[0], sizeof(BytecodeHistogram::_counters[0]) * t->bytecode(), Rtemp, R2_tmp, true);
+ }
+ 
  // Non-product code
  #ifndef PRODUCT
  address TemplateInterpreterGenerator::generate_trace_code(TosState state) {
    address entry = __ pc();
  

@@ -1589,21 +1598,10 @@
    __ ret();
  
    return entry;
  }
  
- 
- void TemplateInterpreterGenerator::count_bytecode() {
-   __ inc_global_counter((address) &BytecodeCounter::_counter_value, 0, Rtemp, R2_tmp, true);
- }
- 
- 
- void TemplateInterpreterGenerator::histogram_bytecode(Template* t) {
-   __ inc_global_counter((address)&BytecodeHistogram::_counters[0], sizeof(BytecodeHistogram::_counters[0]) * t->bytecode(), Rtemp, R2_tmp, true);
- }
- 
- 
  void TemplateInterpreterGenerator::histogram_bytecode_pair(Template* t) {
    const Register Rindex_addr = R2_tmp;
    Label Lcontinue;
    InlinedAddress Lcounters((address)BytecodePairHistogram::_counters);
    InlinedAddress Lindex((address)&BytecodePairHistogram::_index);
< prev index next >