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

Side by Side Diff: src/objects-inl.h

Issue 266983004: Prevent liveedit on or under generators with open activations (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 7 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
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // Review notes: 5 // Review notes:
6 // 6 //
7 // - The use of macros in these inline functions may seem superfluous 7 // - The use of macros in these inline functions may seem superfluous
8 // but it is absolutely needed to make sure gcc generates optimal 8 // but it is absolutely needed to make sure gcc generates optimal
9 // code. gcc is not happy when attempting to inline too deep. 9 // code. gcc is not happy when attempting to inline too deep.
10 // 10 //
(...skipping 5828 matching lines...) Expand 10 before | Expand all | Expand 10 after
5839 SMI_ACCESSORS(JSGeneratorObject, continuation, kContinuationOffset) 5839 SMI_ACCESSORS(JSGeneratorObject, continuation, kContinuationOffset)
5840 ACCESSORS(JSGeneratorObject, operand_stack, FixedArray, kOperandStackOffset) 5840 ACCESSORS(JSGeneratorObject, operand_stack, FixedArray, kOperandStackOffset)
5841 SMI_ACCESSORS(JSGeneratorObject, stack_handler_index, kStackHandlerIndexOffset) 5841 SMI_ACCESSORS(JSGeneratorObject, stack_handler_index, kStackHandlerIndexOffset)
5842 5842
5843 bool JSGeneratorObject::is_suspended() { 5843 bool JSGeneratorObject::is_suspended() {
5844 ASSERT_LT(kGeneratorExecuting, kGeneratorClosed); 5844 ASSERT_LT(kGeneratorExecuting, kGeneratorClosed);
5845 ASSERT_EQ(kGeneratorClosed, 0); 5845 ASSERT_EQ(kGeneratorClosed, 0);
5846 return continuation() > 0; 5846 return continuation() > 0;
5847 } 5847 }
5848 5848
5849 bool JSGeneratorObject::is_closed() {
5850 return continuation() == kGeneratorClosed;
5851 }
5852
5853 bool JSGeneratorObject::is_executing() {
5854 return continuation() == kGeneratorExecuting;
5855 }
5856
5849 JSGeneratorObject* JSGeneratorObject::cast(Object* obj) { 5857 JSGeneratorObject* JSGeneratorObject::cast(Object* obj) {
5850 ASSERT(obj->IsJSGeneratorObject()); 5858 ASSERT(obj->IsJSGeneratorObject());
5851 ASSERT(HeapObject::cast(obj)->Size() == JSGeneratorObject::kSize); 5859 ASSERT(HeapObject::cast(obj)->Size() == JSGeneratorObject::kSize);
5852 return reinterpret_cast<JSGeneratorObject*>(obj); 5860 return reinterpret_cast<JSGeneratorObject*>(obj);
5853 } 5861 }
5854 5862
5855 5863
5856 ACCESSORS(JSModule, context, Object, kContextOffset) 5864 ACCESSORS(JSModule, context, Object, kContextOffset)
5857 ACCESSORS(JSModule, scope_info, ScopeInfo, kScopeInfoOffset) 5865 ACCESSORS(JSModule, scope_info, ScopeInfo, kScopeInfoOffset)
5858 5866
(...skipping 1128 matching lines...) Expand 10 before | Expand all | Expand 10 after
6987 #undef READ_SHORT_FIELD 6995 #undef READ_SHORT_FIELD
6988 #undef WRITE_SHORT_FIELD 6996 #undef WRITE_SHORT_FIELD
6989 #undef READ_BYTE_FIELD 6997 #undef READ_BYTE_FIELD
6990 #undef WRITE_BYTE_FIELD 6998 #undef WRITE_BYTE_FIELD
6991 #undef NOBARRIER_READ_BYTE_FIELD 6999 #undef NOBARRIER_READ_BYTE_FIELD
6992 #undef NOBARRIER_WRITE_BYTE_FIELD 7000 #undef NOBARRIER_WRITE_BYTE_FIELD
6993 7001
6994 } } // namespace v8::internal 7002 } } // namespace v8::internal
6995 7003
6996 #endif // V8_OBJECTS_INL_H_ 7004 #endif // V8_OBJECTS_INL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698