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

#include <deferred_objects.h>

Inheritance diagram for dart::DeferredFloat32x4:
dart::DeferredSlot

Public Member Functions

 DeferredFloat32x4 (simd128_value_t value, ObjectPtr *slot, DeferredSlot *next)
 
virtual void Materialize (DeoptContext *deopt_context)
 
simd128_value_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 69 of file deferred_objects.h.

Constructor & Destructor Documentation

◆ DeferredFloat32x4()

dart::DeferredFloat32x4::DeferredFloat32x4 ( simd128_value_t  value,
ObjectPtr slot,
DeferredSlot next 
)
inline

Definition at line 71 of file deferred_objects.h.

72 : DeferredSlot(slot, next), value_(value) {}
simd128_value_t value() const
ObjectPtr * slot() const
DeferredSlot * next() const
DeferredSlot(ObjectPtr *slot, DeferredSlot *next)

Member Function Documentation

◆ Materialize()

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

Implements dart::DeferredSlot.

Definition at line 44 of file deferred_objects.cc.

44 {
45 Float32x4Ptr* float32x4_slot = reinterpret_cast<Float32x4Ptr*>(slot());
46 Float32x4Ptr raw_float32x4 = Float32x4::New(value());
47 *float32x4_slot = raw_float32x4;
48
49 if (FLAG_trace_deoptimization_verbose) {
50 float x = raw_float32x4->untag()->x();
51 float y = raw_float32x4->untag()->y();
52 float z = raw_float32x4->untag()->z();
53 float w = raw_float32x4->untag()->w();
54 OS::PrintErr("materializing Float32x4 at %" Px ": %g,%g,%g,%g\n",
55 reinterpret_cast<uword>(slot()), x, y, z, w);
56 }
57}
static Float32x4Ptr New(float value0, float value1, float value2, float value3, Heap::Space space=Heap::kNew)
Definition: object.cc:25307
static void static void PrintErr(const char *format,...) PRINTF_ATTRIBUTE(1
double y
double x
uintptr_t uword
Definition: globals.h:501
SkScalar w
#define Px
Definition: globals.h:410

◆ value()

simd128_value_t dart::DeferredFloat32x4::value ( ) const
inline

Definition at line 76 of file deferred_objects.h.

76{ return value_; }

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