src/cpu/aarch64/vm/macroAssembler_aarch64.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8074457 Cdiff src/cpu/aarch64/vm/macroAssembler_aarch64.hpp

src/cpu/aarch64/vm/macroAssembler_aarch64.hpp

Print this page

        

*** 45,68 **** // Support for VM calls // // This is the base routine called by the different versions of call_VM_leaf. The interpreter // may customize this version by overriding it for its purposes (e.g., to save/restore // additional registers when doing a VM call). ! #ifdef CC_INTERP ! // c++ interpreter never wants to use interp_masm version of call_VM ! #define VIRTUAL ! #else ! #define VIRTUAL virtual ! #endif ! ! VIRTUAL void call_VM_leaf_base( address entry_point, // the entry point int number_of_arguments, // the number of arguments to pop after the call Label *retaddr = NULL ); ! VIRTUAL void call_VM_leaf_base( address entry_point, // the entry point int number_of_arguments, // the number of arguments to pop after the call Label &retaddr) { call_VM_leaf_base(entry_point, number_of_arguments, &retaddr); } --- 45,61 ---- // Support for VM calls // // This is the base routine called by the different versions of call_VM_leaf. The interpreter // may customize this version by overriding it for its purposes (e.g., to save/restore // additional registers when doing a VM call). ! virtual void call_VM_leaf_base( address entry_point, // the entry point int number_of_arguments, // the number of arguments to pop after the call Label *retaddr = NULL ); ! virtual void call_VM_leaf_base( address entry_point, // the entry point int number_of_arguments, // the number of arguments to pop after the call Label &retaddr) { call_VM_leaf_base(entry_point, number_of_arguments, &retaddr); }
*** 73,83 **** // // If no java_thread register is specified (noreg) than rthread will be used instead. call_VM_base // returns the register which contains the thread upon return. If a thread register has been // specified, the return value will correspond to that register. If no last_java_sp is specified // (noreg) than rsp will be used instead. ! VIRTUAL void call_VM_base( // returns the register containing the thread upon return Register oop_result, // where an oop-result ends up if any; use noreg otherwise Register java_thread, // the thread if computed before ; use noreg otherwise Register last_java_sp, // to set up last_Java_frame in stubs; use noreg otherwise address entry_point, // the entry point int number_of_arguments, // the number of arguments (w/o thread) to pop after the call --- 66,76 ---- // // If no java_thread register is specified (noreg) than rthread will be used instead. call_VM_base // returns the register which contains the thread upon return. If a thread register has been // specified, the return value will correspond to that register. If no last_java_sp is specified // (noreg) than rsp will be used instead. ! virtual void call_VM_base( // returns the register containing the thread upon return Register oop_result, // where an oop-result ends up if any; use noreg otherwise Register java_thread, // the thread if computed before ; use noreg otherwise Register last_java_sp, // to set up last_Java_frame in stubs; use noreg otherwise address entry_point, // the entry point int number_of_arguments, // the number of arguments (w/o thread) to pop after the call
*** 1002,1013 **** // CRC32 code for java.util.zip.CRC32C::updateBytes() instrinsic. void kernel_crc32c(Register crc, Register buf, Register len, Register table0, Register table1, Register table2, Register table3, Register tmp, Register tmp2, Register tmp3); - #undef VIRTUAL - // Stack push and pop individual 64 bit registers void push(Register src); void pop(Register dst); // push all registers onto the stack --- 995,1004 ----
src/cpu/aarch64/vm/macroAssembler_aarch64.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File