Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
dart::FloatToDoubleInstr Class Reference

#include <il.h>

Inheritance diagram for dart::FloatToDoubleInstr:
dart::TemplateDefinition< 1, NoThrow, Pure >

Public Member Functions

 FloatToDoubleInstr (Value *value, intptr_t deopt_id)
 
Valuevalue () const
 
virtual Representation representation () const
 
virtual bool ComputeCanDeoptimize () const
 
virtual Representation RequiredInputRepresentation (intptr_t idx) const
 
virtual intptr_t DeoptimizationTarget () const
 
virtual bool AttributesEqual (const Instruction &other) const
 
virtual DefinitionCanonicalize (FlowGraph *flow_graph)
 
- Public Member Functions inherited from dart::TemplateDefinition< 1, NoThrow, Pure >
 TemplateDefinition (intptr_t deopt_id=DeoptId::kNone)
 
 TemplateDefinition (const InstructionSource &source, intptr_t deopt_id=DeoptId::kNone)
 
virtual intptr_t InputCount () const
 
virtual ValueInputAt (intptr_t i) const
 
virtual bool MayThrow () const
 

Additional Inherited Members

- Public Types inherited from dart::TemplateDefinition< 1, NoThrow, Pure >
using BaseClass = typename Pure< Definition, PureDefinition >::Base
 
- Protected Attributes inherited from dart::TemplateDefinition< 1, NoThrow, Pure >
EmbeddedArray< Value *, Ninputs_
 

Detailed Description

Definition at line 10124 of file il.h.

Constructor & Destructor Documentation

◆ FloatToDoubleInstr()

dart::FloatToDoubleInstr::FloatToDoubleInstr ( Value value,
intptr_t  deopt_id 
)
inline

Definition at line 10126 of file il.h.

10127 : TemplateDefinition(deopt_id) {
10128 SetInputAt(0, value);
10129 }
Value * value() const
Definition il.h:10131
TemplateDefinition(intptr_t deopt_id=DeoptId::kNone)
Definition il.h:2731

Member Function Documentation

◆ AttributesEqual()

virtual bool dart::FloatToDoubleInstr::AttributesEqual ( const Instruction other) const
inlinevirtual

Definition at line 10146 of file il.h.

10146{ return true; }

◆ Canonicalize()

Definition * dart::FloatToDoubleInstr::Canonicalize ( FlowGraph flow_graph)
virtual

Definition at line 2192 of file il.cc.

2192 {
2193 if (!HasUses()) return nullptr;
2194 if (value()->BindsToConstant()) {
2195 return flow_graph->GetConstant(value()->BoundConstant(), kUnboxedDouble);
2196 }
2197 return this;
2198}

◆ ComputeCanDeoptimize()

virtual bool dart::FloatToDoubleInstr::ComputeCanDeoptimize ( ) const
inlinevirtual

Definition at line 10137 of file il.h.

10137{ return false; }

◆ DeoptimizationTarget()

virtual intptr_t dart::FloatToDoubleInstr::DeoptimizationTarget ( ) const
inlinevirtual

Definition at line 10144 of file il.h.

10144{ return GetDeoptId(); }

◆ representation()

virtual Representation dart::FloatToDoubleInstr::representation ( ) const
inlinevirtual

Definition at line 10135 of file il.h.

10135{ return kUnboxedDouble; }

◆ RequiredInputRepresentation()

virtual Representation dart::FloatToDoubleInstr::RequiredInputRepresentation ( intptr_t  idx) const
inlinevirtual

Definition at line 10139 of file il.h.

10139 {
10140 ASSERT(idx == 0);
10141 return kUnboxedFloat;
10142 }
#define ASSERT(E)

◆ value()

Value * dart::FloatToDoubleInstr::value ( ) const
inline

Definition at line 10131 of file il.h.

10131{ return inputs_[0]; }
EmbeddedArray< Value *, N > inputs_
Definition il.h:2744

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