diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2011-06-29 17:26:51 +0200 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2011-06-29 17:26:51 +0200 |
commit | 33af2720f26c2b25bc7f75ce7eb454ff99db6d35 (patch) | |
tree | 9a38f0c96420edf503eebd6325dd8d2d8249f653 /deps/v8/src/gdb-jit.cc | |
parent | 6afdca885adeeeed9eef8cbb01c3d97af0bc084d (diff) | |
download | android-node-v8-33af2720f26c2b25bc7f75ce7eb454ff99db6d35.tar.gz android-node-v8-33af2720f26c2b25bc7f75ce7eb454ff99db6d35.tar.bz2 android-node-v8-33af2720f26c2b25bc7f75ce7eb454ff99db6d35.zip |
Upgrade V8 to 3.4.8
Diffstat (limited to 'deps/v8/src/gdb-jit.cc')
-rw-r--r-- | deps/v8/src/gdb-jit.cc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/deps/v8/src/gdb-jit.cc b/deps/v8/src/gdb-jit.cc index 5136deddbf..b4992a7f52 100644 --- a/deps/v8/src/gdb-jit.cc +++ b/deps/v8/src/gdb-jit.cc @@ -26,6 +26,7 @@ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifdef ENABLE_GDB_JIT_INTERFACE +#include "v8.h" #include "gdb-jit.h" #include "bootstrapper.h" @@ -643,7 +644,6 @@ class ELFSymbolTable : public ELFSection { class CodeDescription BASE_EMBEDDED { public: - #ifdef V8_TARGET_ARCH_X64 enum StackState { POST_RBP_PUSH, @@ -1326,7 +1326,7 @@ static void UnregisterCodeEntry(JITCodeEntry* entry) { static JITCodeEntry* CreateELFObject(CodeDescription* desc) { - ZoneScope zone_scope(DELETE_ON_EXIT); + ZoneScope zone_scope(Isolate::Current(), DELETE_ON_EXIT); ELF elf; Writer w(&elf); @@ -1444,11 +1444,16 @@ static void AddUnwindInfo(CodeDescription *desc) { } +Mutex* GDBJITInterface::mutex_ = OS::CreateMutex(); + + void GDBJITInterface::AddCode(const char* name, Code* code, GDBJITInterface::CodeTag tag, Script* script) { if (!FLAG_gdbjit) return; + + ScopedLock lock(mutex_); AssertNoAllocation no_gc; HashMap::Entry* e = GetEntries()->Lookup(code, HashForCodeObject(code), true); @@ -1517,6 +1522,7 @@ void GDBJITInterface::AddCode(GDBJITInterface::CodeTag tag, Code* code) { void GDBJITInterface::RemoveCode(Code* code) { if (!FLAG_gdbjit) return; + ScopedLock lock(mutex_); HashMap::Entry* e = GetEntries()->Lookup(code, HashForCodeObject(code), false); @@ -1536,6 +1542,7 @@ void GDBJITInterface::RemoveCode(Code* code) { void GDBJITInterface::RegisterDetailedLineInfo(Code* code, GDBJITLineInfo* line_info) { + ScopedLock lock(mutex_); ASSERT(!IsLineInfoTagged(line_info)); HashMap::Entry* e = GetEntries()->Lookup(code, HashForCodeObject(code), true); ASSERT(e->value == NULL); |