5#ifndef RUNTIME_VM_DEFERRED_OBJECTS_H_
6#define RUNTIME_VM_DEFERRED_OBJECTS_H_
46 double value()
const {
return value_; }
61 int64_t
value()
const {
return value_; }
124 intptr_t
index()
const {
return index_; }
127 const intptr_t index_;
142 intptr_t
index()
const {
return index_; }
145 const intptr_t index_;
146 const intptr_t deopt_id_;
158 intptr_t
index()
const {
return index_; }
161 const intptr_t index_;
173 intptr_t
index()
const {
return index_; }
176 const intptr_t index_;
188 : field_count_(field_count),
193 return kFieldsStartIndex + kFieldEntrySize * field_count_;
226 ObjectPtr GetArg(intptr_t index)
const {
return args_[index]; }
228 ObjectPtr GetClass()
const {
return GetArg(kClassIndex); }
230 ObjectPtr GetLengthOrShape()
const {
return GetArg(kLengthOrShapeIndex); }
232 ObjectPtr GetFieldOffset(intptr_t index)
const {
233 return GetArg(kFieldsStartIndex + kFieldEntrySize * index + kOffsetIndex);
236 ObjectPtr GetValue(intptr_t index)
const {
237 return GetArg(kFieldsStartIndex + kFieldEntrySize * index + kValueIndex);
241 const intptr_t field_count_;
249 const Object* object_;
DeferredDouble(double value, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)
virtual void Materialize(DeoptContext *deopt_context)
DeferredFloat32x4(simd128_value_t value, ObjectPtr *slot, DeferredSlot *next)
simd128_value_t value() const
simd128_value_t value() const
DeferredFloat64x2(simd128_value_t value, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)
virtual void Materialize(DeoptContext *deopt_context)
simd128_value_t value() const
DeferredInt32x4(simd128_value_t value, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)
DeferredMint(int64_t value, ObjectPtr *slot, DeferredSlot *next)
DeferredObjectRef(intptr_t index, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)
intptr_t ArgumentCount() const
DeferredObject(intptr_t field_count, intptr_t *args)
virtual void Materialize(DeoptContext *deopt_context)
DeferredPcMarker(intptr_t index, ObjectPtr *slot, DeferredSlot *next)
DeferredPp(intptr_t index, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)
virtual void Materialize(DeoptContext *deopt_context)
DeferredRetAddr(intptr_t index, intptr_t deopt_id, ObjectPtr *slot, DeferredSlot *next)
virtual void Materialize(DeoptContext *deopt_context)=0
DeferredSlot * next() const
DeferredSlot(ObjectPtr *slot, DeferredSlot *next)
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args