OLD | NEW |
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_ASSEMBLER_H_ | 5 #ifndef VM_ASSEMBLER_H_ |
6 #define VM_ASSEMBLER_H_ | 6 #define VM_ASSEMBLER_H_ |
7 | 7 |
8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
9 #include "vm/allocation.h" | 9 #include "vm/allocation.h" |
10 #include "vm/globals.h" | 10 #include "vm/globals.h" |
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
289 public: | 289 public: |
290 intptr_t AddObject(const Object& obj); | 290 intptr_t AddObject(const Object& obj); |
291 intptr_t AddImmediate(uword imm); | 291 intptr_t AddImmediate(uword imm); |
292 intptr_t AddExternalLabel(const ExternalLabel* label, | 292 intptr_t AddExternalLabel(const ExternalLabel* label, |
293 Patchability patchable); | 293 Patchability patchable); |
294 | 294 |
295 intptr_t FindObject(const Object& obj); | 295 intptr_t FindObject(const Object& obj); |
296 intptr_t FindImmediate(uword imm); | 296 intptr_t FindImmediate(uword imm); |
297 intptr_t FindExternalLabel(const ExternalLabel* label, | 297 intptr_t FindExternalLabel(const ExternalLabel* label, |
298 Patchability patchable); | 298 Patchability patchable); |
| 299 intptr_t FindNativeEntry(const ExternalLabel* label, |
| 300 Patchability patchable); |
299 | 301 |
300 RawObjectPool* MakeObjectPool(); | 302 RawObjectPool* MakeObjectPool(); |
301 | 303 |
302 private: | 304 private: |
303 intptr_t AddObject(ObjectPool::Entry entry, Patchability patchable); | 305 intptr_t AddObject(ObjectPool::Entry entry, Patchability patchable); |
304 intptr_t FindObject(ObjectPool::Entry entry, Patchability patchable); | 306 intptr_t FindObject(ObjectPool::Entry entry, Patchability patchable); |
305 | 307 |
306 // Objects and jump targets. | 308 // Objects and jump targets. |
307 GrowableArray<ObjectPool::Entry> object_pool_; | 309 GrowableArray<ObjectPool::Entry> object_pool_; |
308 | 310 |
(...skipping 12 matching lines...) Expand all Loading... |
321 #include "vm/assembler_arm.h" | 323 #include "vm/assembler_arm.h" |
322 #elif defined(TARGET_ARCH_ARM64) | 324 #elif defined(TARGET_ARCH_ARM64) |
323 #include "vm/assembler_arm64.h" | 325 #include "vm/assembler_arm64.h" |
324 #elif defined(TARGET_ARCH_MIPS) | 326 #elif defined(TARGET_ARCH_MIPS) |
325 #include "vm/assembler_mips.h" | 327 #include "vm/assembler_mips.h" |
326 #else | 328 #else |
327 #error Unknown architecture. | 329 #error Unknown architecture. |
328 #endif | 330 #endif |
329 | 331 |
330 #endif // VM_ASSEMBLER_H_ | 332 #endif // VM_ASSEMBLER_H_ |
OLD | NEW |