The profiler may not be always active (recording). When it's not active (as in VM::m_enabledProfiler is null), then we might as well skip the op_profiler callbacks. The callbacks themselves are already gated by a VM::enabledProfiler() check. For the DFG, we'll turn the op_profiler handling into speculation checks and OSR exit to the baseline JIT if the profiler becomes active.
Created attachment 222121 [details] the patch.
Comment on attachment 222121 [details] the patch. r=me Any speedup here?
Ah, I see: "This brings the Octane score up to ~3000 from ~2840."
Thanks. The patch has passed the layout tests. Landed in r162718: <http://trac.webkit.org/r162718>.