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

#include <il.h>

Inheritance diagram for dart::LoadLocalInstr:
dart::TemplateDefinition< 0, NoThrow >

Public Member Functions

 LoadLocalInstr (const LocalVariable &local, const InstructionSource &source)
 
virtual CompileType ComputeType () const
 
const LocalVariablelocal () const
 
virtual bool ComputeCanDeoptimize () const
 
virtual bool HasUnknownSideEffects () const
 
void mark_last ()
 
bool is_last () const
 
virtual TokenPosition token_pos () const
 
- Public Member Functions inherited from dart::TemplateDefinition< 0, NoThrow >
 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< 0, NoThrow >
using BaseClass = typename NoCSE< Definition, PureDefinition >::Base
 
- Protected Attributes inherited from dart::TemplateDefinition< 0, NoThrow >
EmbeddedArray< Value *, Ninputs_
 

Detailed Description

Definition at line 5754 of file il.h.

Constructor & Destructor Documentation

◆ LoadLocalInstr()

dart::LoadLocalInstr::LoadLocalInstr ( const LocalVariable local,
const InstructionSource source 
)
inline

Definition at line 5756 of file il.h.

5758 local_(local),
5759 is_last_(false),
5760 token_pos_(source.token_pos) {}
const LocalVariable & local() const
Definition il.h:5765
TemplateDefinition(intptr_t deopt_id=DeoptId::kNone)
Definition il.h:2731
SkBitmap source
Definition examples.cpp:28

Member Function Documentation

◆ ComputeCanDeoptimize()

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

Definition at line 5767 of file il.h.

5767{ return false; }

◆ ComputeType()

CompileType dart::LoadLocalInstr::ComputeType ( ) const
virtual

Definition at line 1614 of file type_propagator.cc.

1614 {
1615 if (local().needs_covariant_check_in_method()) {
1616 // We may not yet have checked the actual type of the parameter value.
1617 // Assuming that the value has the required type can lead to unsound
1618 // optimizations. See dartbug.com/43464.
1619 return CompileType::Dynamic();
1620 }
1621 return *local().inferred_type();
1622}
static CompileType Dynamic()
CompileType * inferred_type() const
Definition scopes.h:136

◆ HasUnknownSideEffects()

virtual bool dart::LoadLocalInstr::HasUnknownSideEffects ( ) const
inlinevirtual

Definition at line 5769 of file il.h.

5769 {
5770 UNREACHABLE(); // Eliminated by SSA construction.
5771 return false;
5772 }
#define UNREACHABLE()
Definition assert.h:248

◆ is_last()

bool dart::LoadLocalInstr::is_last ( ) const
inline

Definition at line 5775 of file il.h.

5775{ return is_last_; }

◆ local()

const LocalVariable & dart::LoadLocalInstr::local ( ) const
inline

Definition at line 5765 of file il.h.

5765{ return local_; }

◆ mark_last()

void dart::LoadLocalInstr::mark_last ( )
inline

Definition at line 5774 of file il.h.

5774{ is_last_ = true; }

◆ token_pos()

virtual TokenPosition dart::LoadLocalInstr::token_pos ( ) const
inlinevirtual

Definition at line 5777 of file il.h.

5777{ return token_pos_; }

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