void emitTraceCall(CodeBlock& cb, int64_t pcOff) { // TODO(2967396) implement properly, move function if (arch() == Arch::ARM) return; Asm as { cb }; // call to a trace function as.mov_imm64_reg((int64_t)as.frontier(), reg::rcx); as.mov_reg64_reg64(rVmFp, reg::rdi); as.mov_reg64_reg64(rVmSp, reg::rsi); as.mov_imm64_reg(pcOff, reg::rdx); // do the call; may use a trampoline emitCall(as, (TCA)traceCallback); }