OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 #include "vm/deferred_objects.h" | 5 #include "vm/deferred_objects.h" |
6 | 6 |
7 #include "vm/code_patcher.h" | 7 #include "vm/code_patcher.h" |
8 #include "vm/compiler.h" | 8 #include "vm/compiler.h" |
9 #include "vm/deopt_instructions.h" | 9 #include "vm/deopt_instructions.h" |
10 #include "vm/flags.h" | 10 #include "vm/flags.h" |
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 Function& function = Function::Handle(zone); | 203 Function& function = Function::Handle(zone); |
204 function ^= deopt_context->ObjectAt(index_); | 204 function ^= deopt_context->ObjectAt(index_); |
205 ASSERT(!function.IsNull()); | 205 ASSERT(!function.IsNull()); |
206 const Error& error = Error::Handle(zone, | 206 const Error& error = Error::Handle(zone, |
207 Compiler::EnsureUnoptimizedCode(thread, function)); | 207 Compiler::EnsureUnoptimizedCode(thread, function)); |
208 if (!error.IsNull()) { | 208 if (!error.IsNull()) { |
209 Exceptions::PropagateError(error); | 209 Exceptions::PropagateError(error); |
210 } | 210 } |
211 const Code& code = Code::Handle(zone, function.unoptimized_code()); | 211 const Code& code = Code::Handle(zone, function.unoptimized_code()); |
212 ASSERT(!code.IsNull()); | 212 ASSERT(!code.IsNull()); |
213 ASSERT(code.ObjectPool() != Object::null()); | 213 ASSERT(code.GetObjectPool() != Object::null()); |
214 *slot() = code.ObjectPool(); | 214 *slot() = code.GetObjectPool(); |
215 | 215 |
216 if (FLAG_trace_deoptimization_verbose) { | 216 if (FLAG_trace_deoptimization_verbose) { |
217 OS::PrintErr("materializing pp at 0x%" Px ": 0x%" Px "\n", | 217 OS::PrintErr("materializing pp at 0x%" Px ": 0x%" Px "\n", |
218 reinterpret_cast<uword>(slot()), | 218 reinterpret_cast<uword>(slot()), |
219 reinterpret_cast<uword>(code.ObjectPool())); | 219 reinterpret_cast<uword>(code.GetObjectPool())); |
220 } | 220 } |
221 } | 221 } |
222 | 222 |
223 | 223 |
224 RawObject* DeferredObject::object() { | 224 RawObject* DeferredObject::object() { |
225 if (object_ == NULL) { | 225 if (object_ == NULL) { |
226 Create(); | 226 Create(); |
227 } | 227 } |
228 return object_->raw(); | 228 return object_->raw(); |
229 } | 229 } |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
331 OS::PrintErr(" null Field @ offset(%" Pd ") <- %s\n", | 331 OS::PrintErr(" null Field @ offset(%" Pd ") <- %s\n", |
332 offset.Value(), | 332 offset.Value(), |
333 value.ToCString()); | 333 value.ToCString()); |
334 } | 334 } |
335 } | 335 } |
336 } | 336 } |
337 } | 337 } |
338 } | 338 } |
339 | 339 |
340 } // namespace dart | 340 } // namespace dart |
OLD | NEW |