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

#include <il.h>

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

Public Member Functions

 UnaryDoubleOpInstr (Token::Kind op_kind, Value *value, intptr_t deopt_id, SpeculativeMode speculative_mode=kGuardInputs, Representation representation=kUnboxedDouble)
 
Valuevalue () const
 
Token::Kind op_kind () const
 
virtual bool ComputeCanDeoptimize () const
 
virtual intptr_t DeoptimizationTarget () const
 
virtual Representation representation () const
 
virtual Representation RequiredInputRepresentation (intptr_t idx) const
 
virtual SpeculativeMode SpeculativeModeOfInput (intptr_t index) const
 
virtual bool AttributesEqual (const Instruction &other) const
 
- 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 9764 of file il.h.

Constructor & Destructor Documentation

◆ UnaryDoubleOpInstr()

dart::UnaryDoubleOpInstr::UnaryDoubleOpInstr ( Token::Kind  op_kind,
Value value,
intptr_t  deopt_id,
SpeculativeMode  speculative_mode = kGuardInputs,
Representation  representation = kUnboxedDouble 
)
inline

Definition at line 9766 of file il.h.

9771 : TemplateDefinition(deopt_id),
9772 op_kind_(op_kind),
9773 speculative_mode_(speculative_mode),
9774 representation_(representation) {
9775 ASSERT((representation == kUnboxedFloat) ||
9776 (representation == kUnboxedDouble));
9777 SetInputAt(0, value);
9778 }
TemplateDefinition(intptr_t deopt_id=DeoptId::kNone)
Definition il.h:2731
virtual Representation representation() const
Definition il.h:9793
Value * value() const
Definition il.h:9780
Token::Kind op_kind() const
Definition il.h:9781
#define ASSERT(E)

Member Function Documentation

◆ AttributesEqual()

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

Definition at line 9804 of file il.h.

9804 {
9805 auto other_op = other.Cast<UnaryDoubleOpInstr>();
9806 return (op_kind_ == other_op->op_kind_) &&
9807 (speculative_mode_ == other_op->speculative_mode_) &&
9808 (representation_ == other_op->representation_);
9809 }
UnaryDoubleOpInstr(Token::Kind op_kind, Value *value, intptr_t deopt_id, SpeculativeMode speculative_mode=kGuardInputs, Representation representation=kUnboxedDouble)
Definition il.h:9766

◆ ComputeCanDeoptimize()

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

Definition at line 9785 of file il.h.

9785{ return false; }

◆ DeoptimizationTarget()

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

Definition at line 9787 of file il.h.

9787 {
9788 // Direct access since this instruction cannot deoptimize, and the deopt-id
9789 // was inherited from another instruction that could deoptimize.
9790 return GetDeoptId();
9791 }

◆ op_kind()

Token::Kind dart::UnaryDoubleOpInstr::op_kind ( ) const
inline

Definition at line 9781 of file il.h.

9781{ return op_kind_; }

◆ representation()

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

Definition at line 9793 of file il.h.

9793{ return representation_; }

◆ RequiredInputRepresentation()

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

Definition at line 9795 of file il.h.

9795 {
9796 ASSERT(idx == 0);
9797 return representation_;
9798 }

◆ SpeculativeModeOfInput()

virtual SpeculativeMode dart::UnaryDoubleOpInstr::SpeculativeModeOfInput ( intptr_t  index) const
inlinevirtual

Definition at line 9800 of file il.h.

9800 {
9801 return speculative_mode_;
9802 }

◆ value()

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

Definition at line 9780 of file il.h.

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

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