Revision: 10369 Author: [email protected] Date: Tue Jan 10 06:52:41 2012 Log: Inline fast case of CodeGenerationFromStringsAllowed
Review URL: http://codereview.chromium.org/9155011 http://code.google.com/p/v8/source/detail?r=10369 Modified: /branches/bleeding_edge/src/runtime.cc ======================================= --- /branches/bleeding_edge/src/runtime.cc Thu Jan 5 09:16:19 2012 +++ /branches/bleeding_edge/src/runtime.cc Tue Jan 10 06:52:41 2012 @@ -9373,20 +9373,18 @@ bool CodeGenerationFromStringsAllowed(Isolate* isolate, Handle<Context> context) { - if (context->allow_code_gen_from_strings()->IsFalse()) { - // Check with callback if set. - AllowCodeGenerationFromStringsCallback callback = - isolate->allow_code_gen_callback(); - if (callback == NULL) { - // No callback set and code generation disallowed. - return false; - } else { - // Callback set. Let it decide if code generation is allowed. - VMState state(isolate, EXTERNAL); - return callback(v8::Utils::ToLocal(context)); - } - } - return true; + ASSERT(context->allow_code_gen_from_strings()->IsFalse()); + // Check with callback if set. + AllowCodeGenerationFromStringsCallback callback = + isolate->allow_code_gen_callback(); + if (callback == NULL) { + // No callback set and code generation disallowed. + return false; + } else { + // Callback set. Let it decide if code generation is allowed. + VMState state(isolate, EXTERNAL); + return callback(v8::Utils::ToLocal(context)); + } } @@ -9400,7 +9398,8 @@ // Check if global context allows code generation from // strings. Throw an exception if it doesn't. - if (!CodeGenerationFromStringsAllowed(isolate, context)) { + if (context->allow_code_gen_from_strings()->IsFalse() && + !CodeGenerationFromStringsAllowed(isolate, context)) { return isolate->Throw(*isolate->factory()->NewError( "code_gen_from_strings", HandleVector<Object>(NULL, 0))); } @@ -9427,7 +9426,8 @@ // Check if global context allows code generation from // strings. Throw an exception if it doesn't. - if (!CodeGenerationFromStringsAllowed(isolate, global_context)) { + if (global_context->allow_code_gen_from_strings()->IsFalse() && + !CodeGenerationFromStringsAllowed(isolate, global_context)) { isolate->Throw(*isolate->factory()->NewError( "code_gen_from_strings", HandleVector<Object>(NULL, 0))); return MakePair(Failure::Exception(), NULL); -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
