comparison src/cpu/sparc/vm/sharedRuntime_sparc.cpp @ 10684:6ff467cdb105

Code installer changes for SPARC.
author twisti
date Tue, 09 Jul 2013 14:39:34 -0700
parents 0d40e1cf70db
children 6b0fd0964b87
comparison
equal deleted inserted replaced
10683:ae4c79ee71d1 10684:6ff467cdb105
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 #ifdef GRAAL
1830 if (iid == vmIntrinsics::_CompilerToVMImpl_executeCompiledMethod) {
1831 // We are called from compiled code here. The three object arguments
1832 // are already in the correct registers (j_rarg0, jrarg1, jrarg2). The
1833 // fourth argument (j_rarg3) is a pointer to the HotSpotInstalledCode object.
1834
1835 // Load the nmethod pointer from the HotSpotInstalledCode object
1836 // __ movq(j_rarg3, Address(j_rarg3, sizeof(oopDesc)));
1837
1838 // Check whether the nmethod was invalidated
1839 // __ testq(j_rarg3, j_rarg3);
1840 // Label invalid_nmethod;
1841 // __ jcc(Assembler::zero, invalid_nmethod);
1842
1843 // Perform a tail call to the verified entry point of the nmethod.
1844 // __ jmp(Address(j_rarg3, nmethod::verified_entry_point_offset()));
1845
1846 // __ bind(invalid_nmethod);
1847
1848 // __ jump(RuntimeAddress(StubRoutines::throw_InvalidInstalledCodeException_entry()));
1849 __ stop("_CompilerToVMImpl_executeCompiledMethod not implemented");
1850 return;
1851 }
1852 #endif
1828 1853
1829 // Now write the args into the outgoing interpreter space 1854 // Now write the args into the outgoing interpreter space
1830 bool has_receiver = false; 1855 bool has_receiver = false;
1831 Register receiver_reg = noreg; 1856 Register receiver_reg = noreg;
1832 int member_arg_pos = -1; 1857 int member_arg_pos = -1;