Reviewers: dcarney,

Description:
Removed EnterIsolateIfNeeded and a soon-to-be-useless assertion.

BUG=359977
LOG=y

Please review this at https://codereview.chromium.org/238773003/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+6, -27 lines):
  M src/api.cc
  M src/isolate.cc


Index: src/api.cc
diff --git a/src/api.cc b/src/api.cc
index a055a2f049b7c287620992e08f62aef15fc43c05..fde3b5d05078a26a443d31ab13cf1c00cd9d283b 100644
--- a/src/api.cc
+++ b/src/api.cc
@@ -244,24 +244,6 @@ static inline bool EnsureInitializedForIsolate(i::Isolate* isolate,
 }


-// Some initializing API functions are called early and may be
-// called on a thread different from static initializer thread.
-// If Isolate API is used, Isolate::Enter() will initialize TLS so
-// Isolate::Current() works. If it's a legacy case, then the thread
-// may not have TLS initialized yet. However, in initializing APIs it
-// may be too early to call EnsureInitialized() - some pre-init
-// parameters still have to be configured.
-static inline i::Isolate* EnterIsolateIfNeeded() {
-  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
-  if (isolate != NULL)
-    return isolate;
-
-  i::Isolate::EnterDefaultIsolate();
-  isolate = i::Isolate::Current();
-  return isolate;
-}
-
-
 StartupDataDecompressor::StartupDataDecompressor()
     : raw_data(i::NewArray<char*>(V8::GetCompressedStartupDataCount())) {
   for (int i = 0; i < V8::GetCompressedStartupDataCount(); ++i) {
@@ -391,14 +373,14 @@ void V8::SetDecompressedStartupData(StartupData* decompressed_data) {


 void V8::SetFatalErrorHandler(FatalErrorCallback that) {
-  i::Isolate* isolate = EnterIsolateIfNeeded();
+  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
   isolate->set_exception_behavior(that);
 }


 void V8::SetAllowCodeGenerationFromStringsCallback(
     AllowCodeGenerationFromStringsCallback callback) {
-  i::Isolate* isolate = EnterIsolateIfNeeded();
+  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
   isolate->set_allow_code_gen_callback(callback);
 }

@@ -6308,13 +6290,13 @@ void V8::SetCaptureStackTraceForUncaughtExceptions(


 void V8::SetCounterFunction(CounterLookupCallback callback) {
-  i::Isolate* isolate = EnterIsolateIfNeeded();
+  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
   isolate->stats_table()->SetCounterFunction(callback);
 }


 void V8::SetCreateHistogramFunction(CreateHistogramCallback callback) {
-  i::Isolate* isolate = EnterIsolateIfNeeded();
+  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
   isolate->stats_table()->SetCreateHistogramFunction(callback);
   isolate->InitializeLoggingAndCounters();
   isolate->counters()->ResetHistograms();
@@ -6322,7 +6304,7 @@ void V8::SetCreateHistogramFunction(CreateHistogramCallback callback) {


void V8::SetAddHistogramSampleFunction(AddHistogramSampleCallback callback) {
-  i::Isolate* isolate = EnterIsolateIfNeeded();
+  i::Isolate* isolate = i::Isolate::UncheckedCurrent();
   isolate->stats_table()->
       SetAddHistogramSampleFunction(callback);
 }
Index: src/isolate.cc
diff --git a/src/isolate.cc b/src/isolate.cc
index 03e52679d8bfb1edffe6d7a4605456dbc04ae44a..451a975a22820cc9839941b6c62bb66e5f35af92 100644
--- a/src/isolate.cc
+++ b/src/isolate.cc
@@ -1671,10 +1671,7 @@ Isolate::~Isolate() {
   // Has to be called while counters_ are still alive
   runtime_zone_.DeleteKeptSegment();

-  // The entry stack must be empty when we get here,
-  // except for the default isolate, where it can
-  // still contain up to one entry stack item
-  ASSERT(entry_stack_ == NULL || this == default_isolate_);
+  // The entry stack must be empty when we get here.
   ASSERT(entry_stack_ == NULL || entry_stack_->previous_item == NULL);

   delete entry_stack_;


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to