Flutter Engine
The Flutter Engine
Namespaces | Macros | Functions
constant_propagator.cc File Reference
#include "vm/compiler/backend/constant_propagator.h"
#include "vm/bit_vector.h"
#include "vm/compiler/backend/evaluator.h"
#include "vm/compiler/backend/flow_graph_compiler.h"
#include "vm/compiler/backend/il.h"
#include "vm/compiler/backend/il_printer.h"
#include "vm/compiler/backend/range_analysis.h"
#include "vm/compiler/frontend/flow_graph_builder.h"
#include "vm/parser.h"
#include "vm/symbols.h"

Go to the source code of this file.

Namespaces

namespace  dart
 

Macros

#define Z   (graph_->zone())
 
#define T   (graph_->thread())
 

Functions

 dart::DEFINE_FLAG (bool, remove_redundant_phis, true, "Remove redundant phis.")
 
 dart::DEFINE_FLAG (bool, trace_constant_propagation, false, "Print constant propagation and useless code elimination.")
 
static bool dart::IsIdenticalConstants (const Object &left, const Object &right)
 
static bool dart::CompareIntegers (Token::Kind kind, const Integer &left, const Integer &right)
 
static bool dart::IsIntegerOrDouble (const Object &value)
 
static double dart::ToDouble (const Object &value)
 
static RedefinitionInstr * dart::InsertRedefinition (FlowGraph *graph, BlockEntryInstr *dom, Definition *original, const Object &constant_value)
 
static bool dart::HasPhis (BlockEntryInstr *block)
 
static bool dart::IsEmptyBlock (BlockEntryInstr *block)
 
static BlockEntryInstr * dart::FindFirstNonEmptySuccessor (TargetEntryInstr *block, BitVector *empty_blocks)
 

Macro Definition Documentation

◆ T

#define T   (graph_->thread())

Definition at line 27 of file constant_propagator.cc.

◆ Z

#define Z   (graph_->zone())

Definition at line 26 of file constant_propagator.cc.