Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index 6486cad2bbcf68842e3be872d75c9a5398d6e76d..d5aef292e54da2973babc651301ceb7f0736598b 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -282,6 +282,8 @@ class LInstruction: public ZoneObject { |
LOperand* FirstInput() { return InputAt(0); } |
LOperand* Output() { return HasResult() ? result() : NULL; } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { return true; } |
+ |
#ifdef DEBUG |
void VerifyCall(); |
#endif |
@@ -381,6 +383,10 @@ class LInstructionGap: public LGap { |
public: |
explicit LInstructionGap(HBasicBlock* block) : LGap(block) { } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { |
+ return !IsRedundant(); |
+ } |
+ |
DECLARE_CONCRETE_INSTRUCTION(InstructionGap, "gap") |
}; |
@@ -389,6 +395,7 @@ class LGoto: public LTemplateInstruction<0, 0, 0> { |
public: |
explicit LGoto(int block_id) : block_id_(block_id) { } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const; |
DECLARE_CONCRETE_INSTRUCTION(Goto, "goto") |
virtual void PrintDataTo(StringStream* stream); |
virtual bool IsControl() const { return true; } |
@@ -436,12 +443,14 @@ class LLabel: public LGap { |
explicit LLabel(HBasicBlock* block) |
: LGap(block), replacement_(NULL) { } |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
DECLARE_CONCRETE_INSTRUCTION(Label, "label") |
virtual void PrintDataTo(StringStream* stream); |
int block_id() const { return block()->block_id(); } |
bool is_loop_header() const { return block()->IsLoopHeader(); } |
+ bool is_osr_entry() const { return block()->is_osr_entry(); } |
Label* label() { return &label_; } |
LLabel* replacement() const { return replacement_; } |
void set_replacement(LLabel* label) { replacement_ = label; } |
@@ -455,6 +464,7 @@ class LLabel: public LGap { |
class LParameter: public LTemplateInstruction<1, 0, 0> { |
public: |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
DECLARE_CONCRETE_INSTRUCTION(Parameter, "parameter") |
}; |
@@ -472,6 +482,7 @@ class LCallStub: public LTemplateInstruction<1, 0, 0> { |
class LUnknownOSRValue: public LTemplateInstruction<1, 0, 0> { |
public: |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") |
}; |
@@ -2566,6 +2577,7 @@ class LOsrEntry: public LTemplateInstruction<0, 0, 0> { |
public: |
LOsrEntry(); |
+ virtual bool HasInterestingComment(LCodeGen* gen) const { return false; } |
DECLARE_CONCRETE_INSTRUCTION(OsrEntry, "osr-entry") |
LOperand** SpilledRegisterArray() { return register_spills_; } |