Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: src/top.cc

Issue 55007: Mark some of the places we leave V8 via callbacks as transitions to... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/stub-cache.cc ('k') | test/cctest/testcfg.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after
509 if (!callback) return false; 509 if (!callback) return false;
510 510
511 HandleScope scope; 511 HandleScope scope;
512 Handle<JSObject> receiver_handle(receiver); 512 Handle<JSObject> receiver_handle(receiver);
513 Handle<Object> key_handle(key); 513 Handle<Object> key_handle(key);
514 Handle<Object> data(AccessCheckInfo::cast(data_obj)->data()); 514 Handle<Object> data(AccessCheckInfo::cast(data_obj)->data());
515 LOG(ApiNamedSecurityCheck(key)); 515 LOG(ApiNamedSecurityCheck(key));
516 bool result = false; 516 bool result = false;
517 { 517 {
518 // Leaving JavaScript. 518 // Leaving JavaScript.
519 VMState state(OTHER); 519 VMState state(EXTERNAL);
520 result = callback(v8::Utils::ToLocal(receiver_handle), 520 result = callback(v8::Utils::ToLocal(receiver_handle),
521 v8::Utils::ToLocal(key_handle), 521 v8::Utils::ToLocal(key_handle),
522 type, 522 type,
523 v8::Utils::ToLocal(data)); 523 v8::Utils::ToLocal(data));
524 } 524 }
525 return result; 525 return result;
526 } 526 }
527 527
528 528
529 bool Top::MayIndexedAccess(JSObject* receiver, 529 bool Top::MayIndexedAccess(JSObject* receiver,
(...skipping 23 matching lines...) Expand all
553 553
554 if (!callback) return false; 554 if (!callback) return false;
555 555
556 HandleScope scope; 556 HandleScope scope;
557 Handle<JSObject> receiver_handle(receiver); 557 Handle<JSObject> receiver_handle(receiver);
558 Handle<Object> data(AccessCheckInfo::cast(data_obj)->data()); 558 Handle<Object> data(AccessCheckInfo::cast(data_obj)->data());
559 LOG(ApiIndexedSecurityCheck(index)); 559 LOG(ApiIndexedSecurityCheck(index));
560 bool result = false; 560 bool result = false;
561 { 561 {
562 // Leaving JavaScript. 562 // Leaving JavaScript.
563 VMState state(OTHER); 563 VMState state(EXTERNAL);
564 result = callback(v8::Utils::ToLocal(receiver_handle), 564 result = callback(v8::Utils::ToLocal(receiver_handle),
565 index, 565 index,
566 type, 566 type,
567 v8::Utils::ToLocal(data)); 567 v8::Utils::ToLocal(data));
568 } 568 }
569 return result; 569 return result;
570 } 570 }
571 571
572 572
573 const char* Top::kStackOverflowMessage = 573 const char* Top::kStackOverflowMessage =
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
892 Top::break_access_->Lock(); 892 Top::break_access_->Lock();
893 } 893 }
894 894
895 895
896 ExecutionAccess::~ExecutionAccess() { 896 ExecutionAccess::~ExecutionAccess() {
897 Top::break_access_->Unlock(); 897 Top::break_access_->Unlock();
898 } 898 }
899 899
900 900
901 } } // namespace v8::internal 901 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/stub-cache.cc ('k') | test/cctest/testcfg.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698