Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::DeferredMint Class Reference

#include <deferred_objects.h>

Inheritance diagram for dart::DeferredMint:
dart::DeferredSlot

Public Member Functions

 DeferredMint (int64_t value, ObjectPtr *slot, DeferredSlot *next)
 
virtual void Materialize (DeoptContext *deopt_context)
 
int64_t value () const
 
- Public Member Functions inherited from dart::DeferredSlot
 DeferredSlot (ObjectPtr *slot, DeferredSlot *next)
 
virtual ~DeferredSlot ()
 
ObjectPtrslot () const
 
DeferredSlotnext () const
 
virtual void Materialize (DeoptContext *deopt_context)=0
 

Detailed Description

Definition at line 54 of file deferred_objects.h.

Constructor & Destructor Documentation

◆ DeferredMint()

dart::DeferredMint::DeferredMint ( int64_t  value,
ObjectPtr slot,
DeferredSlot next 
)
inline

Definition at line 56 of file deferred_objects.h.

57 : DeferredSlot(slot, next), value_(value) {}
int64_t value() const
ObjectPtr * slot() const
DeferredSlot * next() const
DeferredSlot(ObjectPtr *slot, DeferredSlot *next)

Member Function Documentation

◆ Materialize()

void dart::DeferredMint::Materialize ( DeoptContext deopt_context)
virtual

Implements dart::DeferredSlot.

Definition at line 31 of file deferred_objects.cc.

31 {
32 MintPtr* mint_slot = reinterpret_cast<MintPtr*>(slot());
34 Mint& mint = Mint::Handle();
35 mint ^= Integer::New(value());
36 *mint_slot = mint.ptr();
37
38 if (FLAG_trace_deoptimization_verbose) {
39 OS::PrintErr("materializing mint at %" Px ": %" Pd64 "\n",
40 reinterpret_cast<uword>(slot()), value());
41 }
42}
static IntegerPtr New(const String &str, Heap::Space space=Heap::kNew)
Definition: object.cc:22984
static void static void PrintErr(const char *format,...) PRINTF_ATTRIBUTE(1
static Object & Handle()
Definition: object.h:407
static bool IsValid(int64_t value)
Definition: object.h:10026
#define ASSERT(E)
uintptr_t uword
Definition: globals.h:501
#define Px
Definition: globals.h:410
#define Pd64
Definition: globals.h:416

◆ value()

int64_t dart::DeferredMint::value ( ) const
inline

Definition at line 61 of file deferred_objects.h.

61{ return value_; }

The documentation for this class was generated from the following files: