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

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

Issue 1436243005: Collect closure functions in isolate (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 1 month 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
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 1144 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 // TODO(koda): Unite w/ hash table. 1155 // TODO(koda): Unite w/ hash table.
1156 RawArray* functions() const { return raw_ptr()->functions_; } 1156 RawArray* functions() const { return raw_ptr()->functions_; }
1157 void SetFunctions(const Array& value) const; 1157 void SetFunctions(const Array& value) const;
1158 void AddFunction(const Function& function) const; 1158 void AddFunction(const Function& function) const;
1159 void RemoveFunction(const Function& function) const; 1159 void RemoveFunction(const Function& function) const;
1160 intptr_t FindFunctionIndex(const Function& function) const; 1160 intptr_t FindFunctionIndex(const Function& function) const;
1161 RawFunction* FunctionFromIndex(intptr_t idx) const; 1161 RawFunction* FunctionFromIndex(intptr_t idx) const;
1162 intptr_t FindImplicitClosureFunctionIndex(const Function& needle) const; 1162 intptr_t FindImplicitClosureFunctionIndex(const Function& needle) const;
1163 RawFunction* ImplicitClosureFunctionFromIndex(intptr_t idx) const; 1163 RawFunction* ImplicitClosureFunctionFromIndex(intptr_t idx) const;
1164 1164
1165 RawGrowableObjectArray* closures() const {
1166 return raw_ptr()->closure_functions_;
1167 }
1168 void set_closures(const GrowableObjectArray& value) const;
1169 void AddClosureFunction(const Function& function) const;
1170 RawFunction* LookupClosureFunction(intptr_t token_pos) const;
1171 intptr_t FindClosureIndex(const Function& function) const;
1172 RawFunction* ClosureFunctionFromIndex(intptr_t idx) const;
1173
1174 RawFunction* LookupDynamicFunction(const String& name) const; 1165 RawFunction* LookupDynamicFunction(const String& name) const;
1175 RawFunction* LookupDynamicFunctionAllowPrivate(const String& name) const; 1166 RawFunction* LookupDynamicFunctionAllowPrivate(const String& name) const;
1176 RawFunction* LookupStaticFunction(const String& name) const; 1167 RawFunction* LookupStaticFunction(const String& name) const;
1177 RawFunction* LookupStaticFunctionAllowPrivate(const String& name) const; 1168 RawFunction* LookupStaticFunctionAllowPrivate(const String& name) const;
1178 RawFunction* LookupConstructor(const String& name) const; 1169 RawFunction* LookupConstructor(const String& name) const;
1179 RawFunction* LookupConstructorAllowPrivate(const String& name) const; 1170 RawFunction* LookupConstructorAllowPrivate(const String& name) const;
1180 RawFunction* LookupFactory(const String& name) const; 1171 RawFunction* LookupFactory(const String& name) const;
1181 RawFunction* LookupFactoryAllowPrivate(const String& name) const; 1172 RawFunction* LookupFactoryAllowPrivate(const String& name) const;
1182 RawFunction* LookupFunction(const String& name) const; 1173 RawFunction* LookupFunction(const String& name) const;
1183 RawFunction* LookupFunctionAllowPrivate(const String& name) const; 1174 RawFunction* LookupFunctionAllowPrivate(const String& name) const;
(...skipping 7023 matching lines...) Expand 10 before | Expand all | Expand 10 after
8207 8198
8208 8199
8209 RawObject* MegamorphicCache::GetTargetFunction(const Array& array, 8200 RawObject* MegamorphicCache::GetTargetFunction(const Array& array,
8210 intptr_t index) { 8201 intptr_t index) {
8211 return array.At((index * kEntryLength) + kTargetFunctionIndex); 8202 return array.At((index * kEntryLength) + kTargetFunctionIndex);
8212 } 8203 }
8213 8204
8214 } // namespace dart 8205 } // namespace dart
8215 8206
8216 #endif // VM_OBJECT_H_ 8207 #endif // VM_OBJECT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698