예제 #1
0
void JIT::compileCallEval(Instruction* instruction)
{
    callOperationWithCallFrameRollbackOnException(operationCallEval);
    addSlowCase(branch32(Equal, regT1, TrustedImm32(JSValue::EmptyValueTag)));
    emitGetFromCallFrameHeaderPtr(JSStack::CallerFrame, callFrameRegister);

    sampleCodeBlock(m_codeBlock);
    
    emitPutCallResult(instruction);
}
예제 #2
0
void JIT::compileCallEval(Instruction* instruction)
{
    callOperationWithCallFrameRollbackOnException(operationCallEval);
    addSlowCase(branch64(Equal, regT0, TrustedImm64(JSValue::encode(JSValue()))));
    emitGetCallerFrameFromCallFrameHeaderPtr(callFrameRegister);

    sampleCodeBlock(m_codeBlock);
    
    emitPutCallResult(instruction);
}