diff options
Diffstat (limited to 'Source/JavaScriptCore/jit/JITCode.h')
-rw-r--r-- | Source/JavaScriptCore/jit/JITCode.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/jit/JITCode.h b/Source/JavaScriptCore/jit/JITCode.h index c85e02e80..478fcc7bf 100644 --- a/Source/JavaScriptCore/jit/JITCode.h +++ b/Source/JavaScriptCore/jit/JITCode.h @@ -29,6 +29,7 @@ #if ENABLE(JIT) #include "CallFrame.h" #include "JSValue.h" +#include "Disassembler.h" #include "MacroAssemblerCodeRef.h" #include "Profiler.h" #endif @@ -105,6 +106,11 @@ namespace JSC { return reinterpret_cast<char*>(m_ref.code().executableAddress()) + offset; } + void* executableAddress() const + { + return executableAddressAtOffset(0); + } + void* dataAddressAtOffset(size_t offset) const { ASSERT(offset <= size()); // use <= instead of < because it is valid to ask for an address at the exclusive end of the code. @@ -124,7 +130,7 @@ namespace JSC { // Execute the code! inline JSValue execute(RegisterFile* registerFile, CallFrame* callFrame, JSGlobalData* globalData) { - JSValue result = JSValue::decode(ctiTrampoline(m_ref.code().executableAddress(), registerFile, callFrame, 0, Profiler::enabledProfilerReference(), globalData)); + JSValue result = JSValue::decode(ctiTrampoline(m_ref.code().executableAddress(), registerFile, callFrame, 0, 0, globalData)); return globalData->exception ? jsNull() : result; } @@ -138,6 +144,11 @@ namespace JSC { ASSERT(m_ref.code().executableAddress()); return m_ref.size(); } + + bool tryToDisassemble(const char* prefix) const + { + return m_ref.tryToDisassemble(prefix); + } ExecutableMemoryHandle* getExecutableMemory() { |