< prev index next >
src/hotspot/share/c1/c1_LIRGenerator.cpp
Print this page
rev 50307 : [mq]: cont
*** 3066,3079 ****
--- 3066,3103 ----
case vmIntrinsics::_vectorizedMismatch:
do_vectorizedMismatch(x);
break;
+ case vmIntrinsics::_Continuation_getFP:
+ do_continuation_getFP(x);
+ break;
+ case vmIntrinsics::_Continuation_getSP:
+ do_continuation_getSP(x);
+ break;
+ case vmIntrinsics::_Continuation_getPC:
+ do_continuation_getPC(x);
+ break;
+ case vmIntrinsics::_Continuation_doContinue:
+ do_continuation_doContinue(x);
+ break;
+ case vmIntrinsics::_Continuation_doYield:
+ do_continuation_doYield(x);
+ break;
+ case vmIntrinsics::_Continuation_runLevel:
+ do_continuation_runLevel(x);
+ break;
+
default: ShouldNotReachHere(); break;
}
}
+ void LIRGenerator::do_continuation_runLevel(Intrinsic* x) {
+ LIR_Opr result = rlock_result(x);
+ __ move(LIR_OprFact::intConst(1), result);
+ }
+
void LIRGenerator::profile_arguments(ProfileCall* x) {
if (compilation()->profile_arguments()) {
int bci = x->bci_of_invoke();
ciMethodData* md = x->method()->method_data_or_null();
ciProfileData* data = md->bci_to_data(bci);
< prev index next >