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/deopt_instructions.h" | 7 #include "vm/deopt_instructions.h" |
8 #include "vm/flags.h" | 8 #include "vm/flags.h" |
9 #include "vm/object.h" | 9 #include "vm/object.h" |
10 | 10 |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 float x = raw_float32x4->x(); | 47 float x = raw_float32x4->x(); |
48 float y = raw_float32x4->y(); | 48 float y = raw_float32x4->y(); |
49 float z = raw_float32x4->z(); | 49 float z = raw_float32x4->z(); |
50 float w = raw_float32x4->w(); | 50 float w = raw_float32x4->w(); |
51 OS::PrintErr("materializing Float32x4 at %" Px ": %g,%g,%g,%g\n", | 51 OS::PrintErr("materializing Float32x4 at %" Px ": %g,%g,%g,%g\n", |
52 reinterpret_cast<uword>(slot()), x, y, z, w); | 52 reinterpret_cast<uword>(slot()), x, y, z, w); |
53 } | 53 } |
54 } | 54 } |
55 | 55 |
56 | 56 |
57 void DeferredUint32x4::Materialize() { | 57 void DeferredInt32x4::Materialize() { |
58 RawUint32x4** uint32x4_slot = reinterpret_cast<RawUint32x4**>(slot()); | 58 RawInt32x4** int32x4_slot = reinterpret_cast<RawInt32x4**>(slot()); |
59 RawUint32x4* raw_uint32x4 = Uint32x4::New(value()); | 59 RawInt32x4* raw_int32x4 = Int32x4::New(value()); |
60 *uint32x4_slot = raw_uint32x4; | 60 *int32x4_slot = raw_int32x4; |
61 | 61 |
62 if (FLAG_trace_deoptimization_verbose) { | 62 if (FLAG_trace_deoptimization_verbose) { |
63 uint32_t x = raw_uint32x4->x(); | 63 uint32_t x = raw_int32x4->x(); |
64 uint32_t y = raw_uint32x4->y(); | 64 uint32_t y = raw_int32x4->y(); |
65 uint32_t z = raw_uint32x4->z(); | 65 uint32_t z = raw_int32x4->z(); |
66 uint32_t w = raw_uint32x4->w(); | 66 uint32_t w = raw_int32x4->w(); |
67 OS::PrintErr("materializing Uint32x4 at %" Px ": %x,%x,%x,%x\n", | 67 OS::PrintErr("materializing Int32x4 at %" Px ": %x,%x,%x,%x\n", |
68 reinterpret_cast<uword>(slot()), x, y, z, w); | 68 reinterpret_cast<uword>(slot()), x, y, z, w); |
69 } | 69 } |
70 } | 70 } |
71 | 71 |
72 | 72 |
73 void DeferredObjectRef::Materialize() { | 73 void DeferredObjectRef::Materialize() { |
74 // TODO(turnidge): Consider passing the deopt_context to materialize | 74 // TODO(turnidge): Consider passing the deopt_context to materialize |
75 // instead of accessing it through the current isolate. It would | 75 // instead of accessing it through the current isolate. It would |
76 // make it easier to test deferred object materialization in a unit | 76 // make it easier to test deferred object materialization in a unit |
77 // test eventually. | 77 // test eventually. |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 OS::PrintErr(" %s <- %s\n", | 118 OS::PrintErr(" %s <- %s\n", |
119 String::Handle(field.name()).ToCString(), | 119 String::Handle(field.name()).ToCString(), |
120 value.ToCString()); | 120 value.ToCString()); |
121 } | 121 } |
122 } | 122 } |
123 | 123 |
124 object_ = &obj; | 124 object_ = &obj; |
125 } | 125 } |
126 | 126 |
127 } // namespace dart | 127 } // namespace dart |
OLD | NEW |