2009-01-16 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Fixes for SamplingTool.
https://bugs.webkit.org/show_bug.cgi?id=23390
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::storePtr):
* bytecode/SamplingTool.cpp:
(JSC::SamplingTool::run):
(JSC::SamplingTool::dump):
* bytecode/SamplingTool.h:
(JSC::SamplingTool::encodeSample):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):
* jit/JIT.h:
(JSC::JIT::samplingToolTrackCodeBlock):
* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):
* jit/JITInlineMethods.h:
(JSC::JIT::emitCTICall_internal):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39993 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/jit/JITCall.cpp b/JavaScriptCore/jit/JITCall.cpp
index 970cd92..63b768d 100644
--- a/JavaScriptCore/jit/JITCall.cpp
+++ b/JavaScriptCore/jit/JITCall.cpp
@@ -167,9 +167,7 @@
// Put the return value in dst. In the interpreter, op_ret does this.
emitPutVirtualRegister(dst);
-#if ENABLE(CODEBLOCK_SAMPLING)
- storePtr(ImmPtr(m_codeBlock), m_interpreter->sampler()->codeBlockSlot());
-#endif
+ sampleCodeBlock(m_codeBlock);
}
void JIT::compileOpCallSlowCase(Instruction* instruction, Vector<SlowCaseEntry>::iterator& iter, unsigned, OpcodeID opcodeID)
@@ -184,9 +182,7 @@
// Put the return value in dst. In the interpreter, op_ret does this.
emitPutVirtualRegister(dst);
-#if ENABLE(CODEBLOCK_SAMPLING)
- storePtr(ImmPtr(m_codeBlock), m_interpreter->sampler()->codeBlockSlot());
-#endif
+ sampleCodeBlock(m_codeBlock);
}
#else
@@ -256,9 +252,7 @@
// Put the return value in dst. In the interpreter, op_ret does this.
emitPutVirtualRegister(dst);
-#if ENABLE(CODEBLOCK_SAMPLING)
- storePtr(ImmPtr(m_codeBlock), m_interpreter->sampler()->codeBlockSlot());
-#endif
+ sampleCodeBlock(m_codeBlock);
}
void JIT::compileOpCallSlowCase(Instruction* instruction, Vector<SlowCaseEntry>::iterator& iter, unsigned callLinkInfoIndex, OpcodeID opcodeID)
@@ -341,9 +335,7 @@
storeResultForFirstRun.link(this);
emitPutVirtualRegister(dst);
-#if ENABLE(CODEBLOCK_SAMPLING)
- storePtr(ImmPtr(m_codeBlock), m_interpreter->sampler()->codeBlockSlot());
-#endif
+ sampleCodeBlock(m_codeBlock);
}
#endif