diff options
Diffstat (limited to 'compiler/optimizing/nodes.h')
| -rw-r--r-- | compiler/optimizing/nodes.h | 17 | 
1 files changed, 14 insertions, 3 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h index 488d47269b..f60d532c37 100644 --- a/compiler/optimizing/nodes.h +++ b/compiler/optimizing/nodes.h @@ -959,6 +959,7 @@ class HBasicBlock : public ArenaObject<kArenaAllocBasicBlock> {    }    bool IsSingleGoto() const; +  bool IsSingleReturn() const;    bool IsSingleTryBoundary() const;    // Returns true if this block emits nothing but a jump. @@ -6631,7 +6632,9 @@ class HConstructorFence FINAL : public HVariableInputSizeInstruction {    // This must *not* be called during/after prepare_for_register_allocation,    // because that removes all the inputs to the fences but the fence is actually    // still considered live. -  static void RemoveConstructorFences(HInstruction* instruction); +  // +  // Returns how many HConstructorFence instructions were removed from graph. +  static size_t RemoveConstructorFences(HInstruction* instruction);    // Check if this constructor fence is protecting    // an HNewInstance or HNewArray that is also the immediate @@ -6879,9 +6882,13 @@ class HParallelMove FINAL : public HTemplateInstruction<0> {  namespace art { +class OptimizingCompilerStats; +  class HGraphVisitor : public ValueObject {   public: -  explicit HGraphVisitor(HGraph* graph) : graph_(graph) {} +  explicit HGraphVisitor(HGraph* graph, OptimizingCompilerStats* stats = nullptr) +      : stats_(stats), +        graph_(graph) {}    virtual ~HGraphVisitor() {}    virtual void VisitInstruction(HInstruction* instruction ATTRIBUTE_UNUSED) {} @@ -6903,6 +6910,9 @@ class HGraphVisitor : public ValueObject {  #undef DECLARE_VISIT_INSTRUCTION + protected: +  OptimizingCompilerStats* stats_; +   private:    HGraph* const graph_; @@ -6911,7 +6921,8 @@ class HGraphVisitor : public ValueObject {  class HGraphDelegateVisitor : public HGraphVisitor {   public: -  explicit HGraphDelegateVisitor(HGraph* graph) : HGraphVisitor(graph) {} +  explicit HGraphDelegateVisitor(HGraph* graph, OptimizingCompilerStats* stats = nullptr) +      : HGraphVisitor(graph, stats) {}    virtual ~HGraphDelegateVisitor() {}    // Visit functions that delegate to to super class.  |