| Index: src/ia32/lithium-ia32.h
|
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h
|
| index 10272fd4258a46a56de5d6d58de09d4535f9fb45..032d17e5c41422b01770bc6f02f558ec34a1b775 100644
|
| --- a/src/ia32/lithium-ia32.h
|
| +++ b/src/ia32/lithium-ia32.h
|
| @@ -278,6 +278,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
|
| @@ -378,6 +380,10 @@ class LInstructionGap: public LGap {
|
| explicit LInstructionGap(HBasicBlock* block) : LGap(block) { }
|
| virtual bool ClobbersDoubleRegisters() const { return false; }
|
|
|
| + virtual bool HasInterestingComment(LCodeGen* gen) const {
|
| + return !IsRedundant();
|
| + }
|
| +
|
| DECLARE_CONCRETE_INSTRUCTION(InstructionGap, "gap")
|
| };
|
|
|
| @@ -386,6 +392,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; }
|
| @@ -423,12 +430,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; }
|
| @@ -442,6 +451,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")
|
| };
|
|
|
| @@ -465,6 +475,7 @@ class LCallStub: public LTemplateInstruction<1, 1, 0> {
|
|
|
| class LUnknownOSRValue: public LTemplateInstruction<1, 0, 0> {
|
| public:
|
| + virtual bool HasInterestingComment(LCodeGen* gen) const { return false; }
|
| DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value")
|
| };
|
|
|
| @@ -2673,6 +2684,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_; }
|
|
|