src/share/vm/c1/c1_LIRGenerator.cpp

changeset 7585
134cdf5e0b8a
parent 7233
b29261b17343
child 7598
ddce0b7cee93
equal deleted inserted replaced
7584:99c72fb0cfc4 7585:134cdf5e0b8a
2559 2559
2560 if (block()->next()->as_OsrEntry()) { 2560 if (block()->next()->as_OsrEntry()) {
2561 // need to free up storage used for OSR entry point 2561 // need to free up storage used for OSR entry point
2562 LIR_Opr osrBuffer = block()->next()->operand(); 2562 LIR_Opr osrBuffer = block()->next()->operand();
2563 BasicTypeList signature; 2563 BasicTypeList signature;
2564 signature.append(T_INT); 2564 signature.append(NOT_LP64(T_INT) LP64_ONLY(T_LONG)); // pass a pointer to osrBuffer
2565 CallingConvention* cc = frame_map()->c_calling_convention(&signature); 2565 CallingConvention* cc = frame_map()->c_calling_convention(&signature);
2566 __ move(osrBuffer, cc->args()->at(0)); 2566 __ move(osrBuffer, cc->args()->at(0));
2567 __ call_runtime_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::OSR_migration_end), 2567 __ call_runtime_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::OSR_migration_end),
2568 getThreadTemp(), LIR_OprFact::illegalOpr, cc->args()); 2568 getThreadTemp(), LIR_OprFact::illegalOpr, cc->args());
2569 } 2569 }

mercurial