From d208d048acb6db163c70690b7d930ae6e1465b56 Mon Sep 17 00:00:00 2001 From: "dcarney@chromium.org" Date: Thu, 5 Sep 2013 11:27:22 +0000 Subject: [PATCH] remove most Isolate::Current asserts R=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/23493019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16552 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/builtins.cc | 1 - src/compiler.h | 5 ++--- src/debug.cc | 4 ---- src/debug.h | 1 - src/ic-inl.h | 1 - src/isolate.cc | 4 +--- src/mark-compact.cc | 2 +- src/objects-inl.h | 3 --- src/objects.h | 4 +--- src/regexp-macro-assembler.cc | 3 --- src/regexp-stack.cc | 1 - src/runtime.cc | 1 - src/stub-cache.cc | 4 +--- src/v8.cc | 1 - 14 files changed, 6 insertions(+), 29 deletions(-) diff --git a/src/builtins.cc b/src/builtins.cc index e488178..b7fd83e 100644 --- a/src/builtins.cc +++ b/src/builtins.cc @@ -132,7 +132,6 @@ BUILTIN_LIST_C(DEF_ARG_TYPE) MUST_USE_RESULT static MaybeObject* Builtin_##name( \ int args_length, Object** args_object, Isolate* isolate) { \ name##ArgumentsType args(args_length, args_object); \ - ASSERT(isolate == Isolate::Current()); \ args.Verify(); \ return Builtin_Impl_##name(args, isolate); \ } \ diff --git a/src/compiler.h b/src/compiler.h index 98b93d3..65618dd 100644 --- a/src/compiler.h +++ b/src/compiler.h @@ -60,11 +60,10 @@ class CompilationInfo { CompilationInfo(Handle closure, Zone* zone); virtual ~CompilationInfo(); - Isolate* isolate() { - ASSERT(Isolate::Current() == isolate_); + Isolate* isolate() const { return isolate_; } - Zone* zone() { return zone_; } + Zone* zone() const { return zone_; } bool is_lazy() const { return IsLazy::decode(flags_); } bool is_eval() const { return IsEval::decode(flags_); } bool is_global() const { return IsGlobal::decode(flags_); } diff --git a/src/debug.cc b/src/debug.cc index d89dc29..c82a2aa 100644 --- a/src/debug.cc +++ b/src/debug.cc @@ -3422,7 +3422,6 @@ static void StubMessageHandler2(const v8::Debug::Message& message) { bool Debugger::StartAgent(const char* name, int port, bool wait_for_connection) { - ASSERT(Isolate::Current() == isolate_); if (wait_for_connection) { // Suspend V8 if it is already running or set V8 to suspend whenever // it starts. @@ -3443,7 +3442,6 @@ bool Debugger::StartAgent(const char* name, int port, void Debugger::StopAgent() { - ASSERT(Isolate::Current() == isolate_); if (agent_ != NULL) { agent_->Shutdown(); agent_->Join(); @@ -3454,7 +3452,6 @@ void Debugger::StopAgent() { void Debugger::WaitForAgent() { - ASSERT(Isolate::Current() == isolate_); if (agent_ != NULL) agent_->WaitUntilListening(); } @@ -3508,7 +3505,6 @@ EnterDebugger::EnterDebugger(Isolate* isolate) EnterDebugger::~EnterDebugger() { - ASSERT(Isolate::Current() == isolate_); Debug* debug = isolate_->debug(); // Restore to the previous break state. diff --git a/src/debug.h b/src/debug.h index 0c24b90..85f7583 100644 --- a/src/debug.h +++ b/src/debug.h @@ -990,7 +990,6 @@ class DisableBreak BASE_EMBEDDED { isolate_->debug()->set_disable_break(disable_break); } ~DisableBreak() { - ASSERT(Isolate::Current() == isolate_); isolate_->debug()->set_disable_break(prev_disable_break_); } diff --git a/src/ic-inl.h b/src/ic-inl.h index ca02183..e6ff2da 100644 --- a/src/ic-inl.h +++ b/src/ic-inl.h @@ -43,7 +43,6 @@ Address IC::address() const { Address result = Assembler::target_address_from_return_address(pc()); #ifdef ENABLE_DEBUGGER_SUPPORT - ASSERT(Isolate::Current() == isolate()); Debug* debug = isolate()->debug(); // First check if any break points are active if not just return the address // of the call. diff --git a/src/isolate.cc b/src/isolate.cc index 2c15717..17762b2 100644 --- a/src/isolate.cc +++ b/src/isolate.cc @@ -2145,7 +2145,6 @@ void Isolate::InitializeDebugger() { bool Isolate::Init(Deserializer* des) { ASSERT(state_ != INITIALIZED); - ASSERT(Isolate::Current() == this); TRACE_ISOLATE(init); stress_deopt_count_ = FLAG_deopt_every_n_times; @@ -2174,8 +2173,7 @@ bool Isolate::Init(Deserializer* des) { memory_allocator_ = new MemoryAllocator(this); code_range_ = new CodeRange(this); - // Safe after setting Heap::isolate_, initializing StackGuard and - // ensuring that Isolate::Current() == this. + // Safe after setting Heap::isolate_, and initializing StackGuard heap_.SetStackLimits(); #define ASSIGN_ELEMENT(CamelName, hacker_name) \ diff --git a/src/mark-compact.cc b/src/mark-compact.cc index 7207f8d..b93460d 100644 --- a/src/mark-compact.cc +++ b/src/mark-compact.cc @@ -1408,7 +1408,7 @@ class MarkCompactMarkingVisitor INLINE(static void VisitUnmarkedObject(MarkCompactCollector* collector, HeapObject* obj)) { #ifdef DEBUG - ASSERT(Isolate::Current()->heap()->Contains(obj)); + ASSERT(collector->heap()->Contains(obj)); ASSERT(!HEAP->mark_compact_collector()->IsMarked(obj)); #endif Map* map = obj->map(); diff --git a/src/objects-inl.h b/src/objects-inl.h index fc5ed24..ad0512f 100644 --- a/src/objects-inl.h +++ b/src/objects-inl.h @@ -1185,7 +1185,6 @@ Heap* HeapObject::GetHeap() { Heap* heap = MemoryChunk::FromAddress(reinterpret_cast
(this))->heap(); ASSERT(heap != NULL); - ASSERT(heap->isolate() == Isolate::Current()); return heap; } @@ -6177,7 +6176,6 @@ SMI_ACCESSORS(AliasedArgumentsEntry, aliased_context_slot, kAliasedContextSlot) Relocatable::Relocatable(Isolate* isolate) { - ASSERT(isolate == Isolate::Current()); isolate_ = isolate; prev_ = isolate->relocatable_top(); isolate->set_relocatable_top(this); @@ -6185,7 +6183,6 @@ Relocatable::Relocatable(Isolate* isolate) { Relocatable::~Relocatable() { - ASSERT(isolate_ == Isolate::Current()); ASSERT_EQ(isolate_->relocatable_top(), this); isolate_->set_relocatable_top(prev_); } diff --git a/src/objects.h b/src/objects.h index f001feb..2053763 100644 --- a/src/objects.h +++ b/src/objects.h @@ -1713,9 +1713,7 @@ class HeapObject: public Object { // The Heap the object was allocated in. Used also to access Isolate. inline Heap* GetHeap(); - // Convenience method to get current isolate. This method can be - // accessed only when its result is the same as - // Isolate::Current(), it ASSERTs this. See also comment for GetHeap. + // Convenience method to get current isolate. inline Isolate* GetIsolate(); // Converts an address to a HeapObject pointer. diff --git a/src/regexp-macro-assembler.cc b/src/regexp-macro-assembler.cc index fa79276..7d027f8 100644 --- a/src/regexp-macro-assembler.cc +++ b/src/regexp-macro-assembler.cc @@ -163,7 +163,6 @@ NativeRegExpMacroAssembler::Result NativeRegExpMacroAssembler::Execute( int* output, int output_size, Isolate* isolate) { - ASSERT(isolate == Isolate::Current()); // Ensure that the minimum stack has been allocated. RegExpStackScope stack_scope(isolate); Address stack_base = stack_scope.stack()->stack_base(); @@ -238,7 +237,6 @@ int NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16( Address byte_offset2, size_t byte_length, Isolate* isolate) { - ASSERT(isolate == Isolate::Current()); unibrow::Mapping* canonicalize = isolate->regexp_macro_assembler_canonicalize(); // This function is not allowed to cause a garbage collection. @@ -271,7 +269,6 @@ int NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16( Address NativeRegExpMacroAssembler::GrowStack(Address stack_pointer, Address* stack_base, Isolate* isolate) { - ASSERT(isolate == Isolate::Current()); RegExpStack* regexp_stack = isolate->regexp_stack(); size_t size = regexp_stack->stack_capacity(); Address old_stack_base = regexp_stack->stack_base(); diff --git a/src/regexp-stack.cc b/src/regexp-stack.cc index fc4114a..f3af490 100644 --- a/src/regexp-stack.cc +++ b/src/regexp-stack.cc @@ -39,7 +39,6 @@ RegExpStackScope::RegExpStackScope(Isolate* isolate) RegExpStackScope::~RegExpStackScope() { - ASSERT(Isolate::Current() == regexp_stack_->isolate_); // Reset the buffer if it has grown. regexp_stack_->Reset(); } diff --git a/src/runtime.cc b/src/runtime.cc index 350b9ef..f51b687 100644 --- a/src/runtime.cc +++ b/src/runtime.cc @@ -14602,7 +14602,6 @@ static const Runtime::Function kIntrinsicFunctions[] = { MaybeObject* Runtime::InitializeIntrinsicFunctionNames(Heap* heap, Object* dictionary) { - ASSERT(Isolate::Current()->heap() == heap); ASSERT(dictionary != NULL); ASSERT(NameDictionary::cast(dictionary)->NumberOfElements() == 0); for (int i = 0; i < kNumFunctions; ++i) { diff --git a/src/stub-cache.cc b/src/stub-cache.cc index c7c6bc3..b312b1e 100644 --- a/src/stub-cache.cc +++ b/src/stub-cache.cc @@ -45,9 +45,7 @@ namespace internal { StubCache::StubCache(Isolate* isolate) - : isolate_(isolate) { - ASSERT(isolate == Isolate::Current()); -} + : isolate_(isolate) { } void StubCache::Initialize() { diff --git a/src/v8.cc b/src/v8.cc index 19dcddb..9dea902 100644 --- a/src/v8.cc +++ b/src/v8.cc @@ -168,7 +168,6 @@ uint32_t V8::Random(Context* context) { // purposes. So, we keep a different state to prevent informations // leaks that could be used in an exploit. uint32_t V8::RandomPrivate(Isolate* isolate) { - ASSERT(isolate == Isolate::Current()); return random_base(isolate->private_random_seed()); } -- 2.7.4