Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::IntegerInstructionSelector Class Reference

#include <range_analysis.h>

Inheritance diagram for dart::IntegerInstructionSelector:
dart::ValueObject

Public Member Functions

 IntegerInstructionSelector (FlowGraph *flow_graph)
 
void Select ()
 
- Public Member Functions inherited from dart::ValueObject
 ValueObject ()
 
 ~ValueObject ()
 

Detailed Description

Definition at line 643 of file range_analysis.h.

Constructor & Destructor Documentation

◆ IntegerInstructionSelector()

dart::IntegerInstructionSelector::IntegerInstructionSelector ( FlowGraph flow_graph)
explicit

Definition at line 1459 of file range_analysis.cc.

1460 : flow_graph_(flow_graph) {
1461 ASSERT(flow_graph_ != nullptr);
1462 zone_ = flow_graph_->zone();
1463 selected_uint32_defs_ =
1464 new (zone_) BitVector(zone_, flow_graph_->current_ssa_temp_index());
1465}
Zone * zone() const
Definition: flow_graph.h:261
intptr_t current_ssa_temp_index() const
Definition: flow_graph.h:243
#define ASSERT(E)

Member Function Documentation

◆ Select()

void dart::IntegerInstructionSelector::Select ( )

Definition at line 1467 of file range_analysis.cc.

1467 {
1468 if (FLAG_trace_integer_ir_selection) {
1469 THR_Print("---- starting integer ir selection -------\n");
1470 }
1471 FindPotentialUint32Definitions();
1472 FindUint32NarrowingDefinitions();
1473 Propagate();
1474 ReplaceInstructions();
1475 if (FLAG_support_il_printer && FLAG_trace_integer_ir_selection) {
1476 THR_Print("---- after integer ir selection -------\n");
1477 FlowGraphPrinter printer(*flow_graph_);
1478 printer.PrintBlocks();
1479 }
1480}
#define THR_Print(format,...)
Definition: log.h:20
constexpr bool FLAG_support_il_printer
Definition: flag_list.h:48

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