comparison src/cpu/sparc/vm/sharedRuntime_sparc.cpp @ 9934:0f7ca53be929

CR-806: Changes to build Graal for SPARC
author Morris Meyer <morris.meyer@oracle.com>
date Fri, 07 Jun 2013 15:43:00 -0400
parents c6a1ffc707ff
children 0d40e1cf70db
comparison
equal deleted inserted replaced
9933:78a1232be418 9934:0f7ca53be929
1823 methodHandle method, 1823 methodHandle method,
1824 const BasicType* sig_bt, 1824 const BasicType* sig_bt,
1825 const VMRegPair* regs) { 1825 const VMRegPair* regs) {
1826 verify_oop_args(masm, method, sig_bt, regs); 1826 verify_oop_args(masm, method, sig_bt, regs);
1827 vmIntrinsics::ID iid = method->intrinsic_id(); 1827 vmIntrinsics::ID iid = method->intrinsic_id();
1828
1829
1830 #ifdef GRAAL
1831 if (iid == vmIntrinsics::_CompilerToVMImpl_executeCompiledMethod) {
1832 // We are called from compiled code here. The three object arguments
1833 // are already in the correct registers (j_rarg0, jrarg1, jrarg2). The
1834 // fourth argument (j_rarg3) is a raw pointer to the nmethod. Make a tail
1835 // call to its verified entry point.
1836 __ set(nmethod::verified_entry_point_offset(), O0);
1837 __ JMP(O0, 0);
1838 __ delayed()->nop();
1839 return;
1840 }
1841 #endif
1828 1842
1829 // Now write the args into the outgoing interpreter space 1843 // Now write the args into the outgoing interpreter space
1830 bool has_receiver = false; 1844 bool has_receiver = false;
1831 Register receiver_reg = noreg; 1845 Register receiver_reg = noreg;
1832 int member_arg_pos = -1; 1846 int member_arg_pos = -1;