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

Side by Side Diff: vm/handles.h

Issue 11648006: Create read only handles for empty_array and sentinel objects (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/runtime/
Patch Set: Created 8 years 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 | « vm/flow_graph_optimizer.cc ('k') | vm/intermediate_language.cc » ('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 (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_HANDLES_H_ 5 #ifndef VM_HANDLES_H_
6 #define VM_HANDLES_H_ 6 #define VM_HANDLES_H_
7 7
8 #include "vm/allocation.h" 8 #include "vm/allocation.h"
9 #include "vm/flags.h" 9 #include "vm/flags.h"
10 10
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
229 void ZapFreeScopedHandles(); 229 void ZapFreeScopedHandles();
230 #endif 230 #endif
231 231
232 HandlesBlock* zone_blocks_; // List of zone handles. 232 HandlesBlock* zone_blocks_; // List of zone handles.
233 HandlesBlock first_scoped_block_; // First block of scoped handles. 233 HandlesBlock first_scoped_block_; // First block of scoped handles.
234 HandlesBlock* scoped_blocks_; // List of scoped handles. 234 HandlesBlock* scoped_blocks_; // List of scoped handles.
235 // Last block visited by VisitUnvisitedHandles. 235 // Last block visited by VisitUnvisitedHandles.
236 HandlesBlock* last_visited_block_; 236 HandlesBlock* last_visited_block_;
237 237
238 friend class HandleScope; 238 friend class HandleScope;
239 friend class Symbols; 239 friend class Dart;
240 DISALLOW_ALLOCATION(); 240 DISALLOW_ALLOCATION();
241 DISALLOW_COPY_AND_ASSIGN(Handles); 241 DISALLOW_COPY_AND_ASSIGN(Handles);
242 }; 242 };
243 243
244 244
245 static const int kVMHandleSizeInWords = 2; 245 static const int kVMHandleSizeInWords = 2;
246 static const int kVMHandlesPerChunk = 64; 246 static const int kVMHandlesPerChunk = 64;
247 static const int kOffsetOfRawPtr = kWordSize; 247 static const int kOffsetOfRawPtr = kWordSize;
248 class VMHandles : public Handles<kVMHandleSizeInWords, 248 class VMHandles : public Handles<kVMHandleSizeInWords,
249 kVMHandlesPerChunk, 249 kVMHandlesPerChunk,
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 }; 339 };
340 #endif // defined(DEBUG) 340 #endif // defined(DEBUG)
341 341
342 // Macro to start a no handles scope in the code. 342 // Macro to start a no handles scope in the code.
343 #define NOHANDLESCOPE(isolate) \ 343 #define NOHANDLESCOPE(isolate) \
344 dart::NoHandleScope no_vm_internal_handles_scope_(isolate); 344 dart::NoHandleScope no_vm_internal_handles_scope_(isolate);
345 345
346 } // namespace dart 346 } // namespace dart
347 347
348 #endif // VM_HANDLES_H_ 348 #endif // VM_HANDLES_H_
OLDNEW
« no previous file with comments | « vm/flow_graph_optimizer.cc ('k') | vm/intermediate_language.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698