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_CODE_GENERATOR_H_ | 5 #ifndef VM_CODE_GENERATOR_H_ |
6 #define VM_CODE_GENERATOR_H_ | 6 #define VM_CODE_GENERATOR_H_ |
7 | 7 |
8 #include "vm/globals.h" | 8 #include "vm/globals.h" |
9 #include "vm/runtime_entry.h" | 9 #include "vm/runtime_entry.h" |
10 | 10 |
11 namespace dart { | 11 namespace dart { |
12 | 12 |
13 // Declaration of runtime entries called from stub or generated code. | 13 // Declaration of runtime entries called from stub or generated code. |
14 DECLARE_RUNTIME_ENTRY(AllocateArray); | 14 DECLARE_RUNTIME_ENTRY(AllocateArray); |
15 DECLARE_RUNTIME_ENTRY(AllocateClosure); | 15 DECLARE_RUNTIME_ENTRY(AllocateClosure); |
16 DECLARE_RUNTIME_ENTRY(AllocateImplicitInstanceClosure); | 16 DECLARE_RUNTIME_ENTRY(AllocateImplicitInstanceClosure); |
17 DECLARE_RUNTIME_ENTRY(AllocateImplicitStaticClosure); | 17 DECLARE_RUNTIME_ENTRY(AllocateImplicitStaticClosure); |
18 DECLARE_RUNTIME_ENTRY(AllocateContext); | 18 DECLARE_RUNTIME_ENTRY(AllocateContext); |
19 DECLARE_RUNTIME_ENTRY(AllocateObject); | 19 DECLARE_RUNTIME_ENTRY(AllocateObject); |
20 DECLARE_RUNTIME_ENTRY(AllocateObjectWithBoundsCheck); | 20 DECLARE_RUNTIME_ENTRY(AllocateObjectWithBoundsCheck); |
21 DECLARE_RUNTIME_ENTRY(ArgumentDefinitionTest); | 21 DECLARE_RUNTIME_ENTRY(ArgumentDefinitionTest); |
22 DECLARE_RUNTIME_ENTRY(BreakpointStaticHandler); | 22 DECLARE_RUNTIME_ENTRY(BreakpointStaticHandler); |
23 DECLARE_RUNTIME_ENTRY(BreakpointReturnHandler); | 23 DECLARE_RUNTIME_ENTRY(BreakpointReturnHandler); |
24 DECLARE_RUNTIME_ENTRY(BreakpointDynamicHandler); | 24 DECLARE_RUNTIME_ENTRY(BreakpointDynamicHandler); |
25 DECLARE_RUNTIME_ENTRY(CloneContext); | 25 DECLARE_RUNTIME_ENTRY(CloneContext); |
26 DECLARE_RUNTIME_ENTRY(Deoptimize); | 26 DECLARE_RUNTIME_ENTRY(Deoptimize); |
27 DECLARE_RUNTIME_ENTRY(FixCallersTarget); | 27 DECLARE_RUNTIME_ENTRY(FixCallersTarget); |
| 28 DECLARE_LEAF_RUNTIME_ENTRY(void, HeapTraceStore, RawObject*, uword, RawObject*); |
28 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerOneArg); | 29 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerOneArg); |
29 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerTwoArgs); | 30 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerTwoArgs); |
30 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerThreeArgs); | 31 DECLARE_RUNTIME_ENTRY(InlineCacheMissHandlerThreeArgs); |
31 DECLARE_RUNTIME_ENTRY(Instanceof); | 32 DECLARE_RUNTIME_ENTRY(Instanceof); |
32 DECLARE_RUNTIME_ENTRY(InstantiateTypeArguments); | 33 DECLARE_RUNTIME_ENTRY(InstantiateTypeArguments); |
33 DECLARE_RUNTIME_ENTRY(InvokeImplicitClosureFunction); | 34 DECLARE_RUNTIME_ENTRY(InvokeImplicitClosureFunction); |
34 DECLARE_RUNTIME_ENTRY(InvokeNoSuchMethodFunction); | 35 DECLARE_RUNTIME_ENTRY(InvokeNoSuchMethodFunction); |
35 DECLARE_RUNTIME_ENTRY(OptimizeInvokedFunction); | 36 DECLARE_RUNTIME_ENTRY(OptimizeInvokedFunction); |
36 DECLARE_RUNTIME_ENTRY(TraceICCall); | 37 DECLARE_RUNTIME_ENTRY(TraceICCall); |
37 DECLARE_RUNTIME_ENTRY(PatchStaticCall); | 38 DECLARE_RUNTIME_ENTRY(PatchStaticCall); |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
82 | 83 |
83 RawCode* ResolveCompileInstanceCallTarget(Isolate* isolate, | 84 RawCode* ResolveCompileInstanceCallTarget(Isolate* isolate, |
84 const Instance& receiver); | 85 const Instance& receiver); |
85 | 86 |
86 void DeoptimizeAll(); | 87 void DeoptimizeAll(); |
87 void DeoptimizeIfOwner(const GrowableArray<intptr_t>& classes); | 88 void DeoptimizeIfOwner(const GrowableArray<intptr_t>& classes); |
88 | 89 |
89 } // namespace dart | 90 } // namespace dart |
90 | 91 |
91 #endif // VM_CODE_GENERATOR_H_ | 92 #endif // VM_CODE_GENERATOR_H_ |
OLD | NEW |