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

#include <il.h>

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

Public Member Functions

 BitCastInstr (Representation from, Representation to, Value *value)
 
Valuevalue () const
 
Representation from () const
 
Representation to () const
 
virtual bool ComputeCanDeoptimize () const
 
virtual Representation representation () const
 
virtual Representation RequiredInputRepresentation (intptr_t idx) const
 
virtual bool AttributesEqual (const Instruction &other) const
 
 DECLARE_INSTRUCTION (BitCast)
 
- 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 11050 of file il.h.

Constructor & Destructor Documentation

◆ BitCastInstr()

dart::BitCastInstr::BitCastInstr ( Representation  from,
Representation  to,
Value value 
)
inline

Definition at line 11052 of file il.h.

11054 from_representation_(from),
11055 to_representation_(to) {
11056 ASSERT(from != to);
11057 ASSERT((to == kUnboxedInt32 && from == kUnboxedFloat) ||
11058 (to == kUnboxedFloat && from == kUnboxedInt32) ||
11059 (to == kUnboxedInt64 && from == kUnboxedDouble) ||
11060 (to == kUnboxedDouble && from == kUnboxedInt64));
11061 SetInputAt(0, value);
11062 }
Value * value() const
Definition il.h:11064
Representation to() const
Definition il.h:11067
Representation from() const
Definition il.h:11066
static constexpr intptr_t kNone
Definition deopt_id.h:27
TemplateDefinition(intptr_t deopt_id=DeoptId::kNone)
Definition il.h:2731
#define ASSERT(E)

Member Function Documentation

◆ AttributesEqual()

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

Definition at line 11078 of file il.h.

11078 {
11079 ASSERT(other.IsBitCast());
11080 auto const converter = other.AsBitCast();
11081 return converter->from() == from() && converter->to() == to();
11082 }

◆ ComputeCanDeoptimize()

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

Definition at line 11069 of file il.h.

11069{ return false; }

◆ DECLARE_INSTRUCTION()

dart::BitCastInstr::DECLARE_INSTRUCTION ( BitCast  )

◆ from()

Representation dart::BitCastInstr::from ( ) const
inline

Definition at line 11066 of file il.h.

11066{ return from_representation_; }

◆ representation()

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

Definition at line 11071 of file il.h.

11071{ return to(); }

◆ RequiredInputRepresentation()

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

Definition at line 11073 of file il.h.

11073 {
11074 ASSERT(idx == 0);
11075 return from();
11076 }

◆ to()

Representation dart::BitCastInstr::to ( ) const
inline

Definition at line 11067 of file il.h.

11067{ return to_representation_; }

◆ value()

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

Definition at line 11064 of file il.h.

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

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