| Index: runtime/vm/flow_graph_optimizer.h
|
| ===================================================================
|
| --- runtime/vm/flow_graph_optimizer.h (revision 18705)
|
| +++ runtime/vm/flow_graph_optimizer.h (working copy)
|
| @@ -27,6 +27,10 @@
|
| // Use propagated class ids to optimize, replace or eliminate instructions.
|
| void ApplyClassIds();
|
|
|
| + // Optimize (a << b) & c pattern: if c is a positive smi, then the
|
| + // shift can be a truncating Smi shift and result is always Smi.
|
| + void TryOptimizeLeftShiftWithBitAndPattern();
|
| +
|
| void Canonicalize();
|
|
|
| void EliminateDeadPhis();
|
| @@ -132,6 +136,10 @@
|
| void HandleEqualityCompare(EqualityCompareInstr* comp,
|
| T current_instruction);
|
|
|
| + void OptimizeLeftShiftBitAndSmiOp(Definition* bit_and_instr,
|
| + Value* left,
|
| + Value* right);
|
| +
|
| FlowGraph* flow_graph_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(FlowGraphOptimizer);
|
|
|