OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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_SIMULATOR_DBC_H_ | 5 #ifndef VM_SIMULATOR_DBC_H_ |
6 #define VM_SIMULATOR_DBC_H_ | 6 #define VM_SIMULATOR_DBC_H_ |
7 | 7 |
8 #ifndef VM_SIMULATOR_H_ | 8 #ifndef VM_SIMULATOR_H_ |
9 #error Do not include simulator_dbc.h directly; use simulator.h. | 9 #error Do not include simulator_dbc.h directly; use simulator.h. |
10 #endif | 10 #endif |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 intptr_t argc_tag, | 120 intptr_t argc_tag, |
121 RawObject** args, | 121 RawObject** args, |
122 RawObject** result, | 122 RawObject** result, |
123 uword target); | 123 uword target); |
124 | 124 |
125 void Invoke(Thread* thread, | 125 void Invoke(Thread* thread, |
126 RawObject** call_base, | 126 RawObject** call_base, |
127 RawObject** call_top, | 127 RawObject** call_top, |
128 RawObjectPool** pp, | 128 RawObjectPool** pp, |
129 uint32_t** pc, | 129 uint32_t** pc, |
130 RawObject*** B, | 130 RawObject*** FP, |
131 RawObject*** SP); | 131 RawObject*** SP); |
132 | 132 |
133 void InlineCacheMiss(int checked_args, | 133 void InlineCacheMiss(int checked_args, |
134 Thread* thread, | 134 Thread* thread, |
135 RawICData* icdata, | 135 RawICData* icdata, |
136 RawObject** call_base, | 136 RawObject** call_base, |
137 RawObject** top, | 137 RawObject** top, |
138 uint32_t* pc, | 138 uint32_t* pc, |
139 RawObject** B, RawObject** SP); | 139 RawObject** FP, RawObject** SP); |
140 | 140 |
141 void InstanceCall1(Thread* thread, | 141 void InstanceCall1(Thread* thread, |
142 RawICData* icdata, | 142 RawICData* icdata, |
143 RawObject** call_base, | 143 RawObject** call_base, |
144 RawObject** call_top, | 144 RawObject** call_top, |
145 RawArray** argdesc, | 145 RawArray** argdesc, |
146 RawObjectPool** pp, | 146 RawObjectPool** pp, |
147 uint32_t** pc, | 147 uint32_t** pc, |
148 RawObject*** B, RawObject*** SP); | 148 RawObject*** FP, RawObject*** SP, |
| 149 bool optimized); |
149 | 150 |
150 void InstanceCall2(Thread* thread, | 151 void InstanceCall2(Thread* thread, |
151 RawICData* icdata, | 152 RawICData* icdata, |
152 RawObject** call_base, | 153 RawObject** call_base, |
153 RawObject** call_top, | 154 RawObject** call_top, |
154 RawArray** argdesc, | 155 RawArray** argdesc, |
155 RawObjectPool** pp, | 156 RawObjectPool** pp, |
156 uint32_t** pc, | 157 uint32_t** pc, |
157 RawObject*** B, RawObject*** SP); | 158 RawObject*** FP, RawObject*** SP, |
| 159 bool optimized); |
158 | 160 |
159 // Longjmp support for exceptions. | 161 // Longjmp support for exceptions. |
160 SimulatorSetjmpBuffer* last_setjmp_buffer() { | 162 SimulatorSetjmpBuffer* last_setjmp_buffer() { |
161 return last_setjmp_buffer_; | 163 return last_setjmp_buffer_; |
162 } | 164 } |
163 void set_last_setjmp_buffer(SimulatorSetjmpBuffer* buffer) { | 165 void set_last_setjmp_buffer(SimulatorSetjmpBuffer* buffer) { |
164 last_setjmp_buffer_ = buffer; | 166 last_setjmp_buffer_ = buffer; |
165 } | 167 } |
166 | 168 |
167 friend class SimulatorSetjmpBuffer; | 169 friend class SimulatorSetjmpBuffer; |
168 DISALLOW_COPY_AND_ASSIGN(Simulator); | 170 DISALLOW_COPY_AND_ASSIGN(Simulator); |
169 }; | 171 }; |
170 | 172 |
171 } // namespace dart | 173 } // namespace dart |
172 | 174 |
173 #endif // VM_SIMULATOR_DBC_H_ | 175 #endif // VM_SIMULATOR_DBC_H_ |
OLD | NEW |