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

Side by Side Diff: runtime/vm/object.h

Issue 566853005: Fix to allocation stub invalidation: we cannot just remove it as it will be collected even though c… (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 3 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 (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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_OBJECT_H_ 5 #ifndef VM_OBJECT_H_
6 #define VM_OBJECT_H_ 6 #define VM_OBJECT_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/utils.h" 10 #include "platform/utils.h"
(...skipping 1252 matching lines...) Expand 10 before | Expand all | Expand 10 after
1263 RawString* GenerateUserVisibleName() const; 1263 RawString* GenerateUserVisibleName() const;
1264 void set_signature_function(const Function& value) const; 1264 void set_signature_function(const Function& value) const;
1265 void set_signature_type(const AbstractType& value) const; 1265 void set_signature_type(const AbstractType& value) const;
1266 void set_state_bits(intptr_t bits) const; 1266 void set_state_bits(intptr_t bits) const;
1267 1267
1268 void set_constants(const Array& value) const; 1268 void set_constants(const Array& value) const;
1269 1269
1270 void set_canonical_types(const Object& value) const; 1270 void set_canonical_types(const Object& value) const;
1271 RawObject* canonical_types() const; 1271 RawObject* canonical_types() const;
1272 1272
1273 RawCode* spare_allocation_stub() const {
1274 return raw_ptr()->spare_allocation_stub_;
1275 }
1276
1273 RawArray* invocation_dispatcher_cache() const; 1277 RawArray* invocation_dispatcher_cache() const;
1274 void set_invocation_dispatcher_cache(const Array& cache) const; 1278 void set_invocation_dispatcher_cache(const Array& cache) const;
1275 RawFunction* CreateInvocationDispatcher(const String& target_name, 1279 RawFunction* CreateInvocationDispatcher(const String& target_name,
1276 const Array& args_desc, 1280 const Array& args_desc,
1277 RawFunction::Kind kind) const; 1281 RawFunction::Kind kind) const;
1278 1282
1279 void CalculateFieldOffsets() const; 1283 void CalculateFieldOffsets() const;
1280 1284
1281 // functions_hash_table is in use iff there are at least this many functions. 1285 // functions_hash_table is in use iff there are at least this many functions.
1282 static const intptr_t kFunctionLookupHashTreshold = 16; 1286 static const intptr_t kFunctionLookupHashTreshold = 16;
(...skipping 6168 matching lines...) Expand 10 before | Expand all | Expand 10 after
7451 7455
7452 7456
7453 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, 7457 RawObject* MegamorphicCache::GetTargetFunction(const Array& array,
7454 intptr_t index) { 7458 intptr_t index) {
7455 return array.At((index * kEntryLength) + kTargetFunctionIndex); 7459 return array.At((index * kEntryLength) + kTargetFunctionIndex);
7456 } 7460 }
7457 7461
7458 } // namespace dart 7462 } // namespace dart
7459 7463
7460 #endif // VM_OBJECT_H_ 7464 #endif // VM_OBJECT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698