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

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

Issue 264973014: Relocate suspended generator activations when enabling debug mode (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
« no previous file with comments | « src/objects.h ('k') | test/mjsunit/harmony/generators-relocation.js » ('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 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 5693 matching lines...) Expand 10 before | Expand all | Expand 10 after
5704 } 5704 }
5705 5705
5706 5706
5707 ACCESSORS(JSGeneratorObject, function, JSFunction, kFunctionOffset) 5707 ACCESSORS(JSGeneratorObject, function, JSFunction, kFunctionOffset)
5708 ACCESSORS(JSGeneratorObject, context, Context, kContextOffset) 5708 ACCESSORS(JSGeneratorObject, context, Context, kContextOffset)
5709 ACCESSORS(JSGeneratorObject, receiver, Object, kReceiverOffset) 5709 ACCESSORS(JSGeneratorObject, receiver, Object, kReceiverOffset)
5710 SMI_ACCESSORS(JSGeneratorObject, continuation, kContinuationOffset) 5710 SMI_ACCESSORS(JSGeneratorObject, continuation, kContinuationOffset)
5711 ACCESSORS(JSGeneratorObject, operand_stack, FixedArray, kOperandStackOffset) 5711 ACCESSORS(JSGeneratorObject, operand_stack, FixedArray, kOperandStackOffset)
5712 SMI_ACCESSORS(JSGeneratorObject, stack_handler_index, kStackHandlerIndexOffset) 5712 SMI_ACCESSORS(JSGeneratorObject, stack_handler_index, kStackHandlerIndexOffset)
5713 5713
5714 bool JSGeneratorObject::is_suspended() {
5715 ASSERT_LT(kGeneratorExecuting, kGeneratorClosed);
5716 ASSERT_EQ(kGeneratorClosed, 0);
5717 return continuation() > 0;
5718 }
5714 5719
5715 JSGeneratorObject* JSGeneratorObject::cast(Object* obj) { 5720 JSGeneratorObject* JSGeneratorObject::cast(Object* obj) {
5716 ASSERT(obj->IsJSGeneratorObject()); 5721 ASSERT(obj->IsJSGeneratorObject());
5717 ASSERT(HeapObject::cast(obj)->Size() == JSGeneratorObject::kSize); 5722 ASSERT(HeapObject::cast(obj)->Size() == JSGeneratorObject::kSize);
5718 return reinterpret_cast<JSGeneratorObject*>(obj); 5723 return reinterpret_cast<JSGeneratorObject*>(obj);
5719 } 5724 }
5720 5725
5721 5726
5722 ACCESSORS(JSModule, context, Object, kContextOffset) 5727 ACCESSORS(JSModule, context, Object, kContextOffset)
5723 ACCESSORS(JSModule, scope_info, ScopeInfo, kScopeInfoOffset) 5728 ACCESSORS(JSModule, scope_info, ScopeInfo, kScopeInfoOffset)
(...skipping 1126 matching lines...) Expand 10 before | Expand all | Expand 10 after
6850 #undef READ_SHORT_FIELD 6855 #undef READ_SHORT_FIELD
6851 #undef WRITE_SHORT_FIELD 6856 #undef WRITE_SHORT_FIELD
6852 #undef READ_BYTE_FIELD 6857 #undef READ_BYTE_FIELD
6853 #undef WRITE_BYTE_FIELD 6858 #undef WRITE_BYTE_FIELD
6854 #undef NOBARRIER_READ_BYTE_FIELD 6859 #undef NOBARRIER_READ_BYTE_FIELD
6855 #undef NOBARRIER_WRITE_BYTE_FIELD 6860 #undef NOBARRIER_WRITE_BYTE_FIELD
6856 6861
6857 } } // namespace v8::internal 6862 } } // namespace v8::internal
6858 6863
6859 #endif // V8_OBJECTS_INL_H_ 6864 #endif // V8_OBJECTS_INL_H_
OLDNEW
« no previous file with comments | « src/objects.h ('k') | test/mjsunit/harmony/generators-relocation.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698