Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index 319aaee2cade91fb9a7245cc1b6f981af6d93cb8..362252de112abe8c53433a56e34212b33a287a9c 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -14,6 +14,10 @@ |
namespace v8 { |
namespace internal { |
+namespace compiler { |
+class RCodeVisualizer; |
+} |
+ |
// Forward declarations. |
class LCodeGen; |
@@ -201,7 +205,7 @@ class LInstruction : public ZoneObject { |
enum Opcode { |
// Declare a unique enum value for each instruction. |
#define DECLARE_OPCODE(type) k##type, |
- LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_OPCODE) |
+ LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_OPCODE) kAdapter, |
kNumberOfInstructions |
#undef DECLARE_OPCODE |
}; |
@@ -220,6 +224,9 @@ class LInstruction : public ZoneObject { |
virtual bool IsControl() const { return false; } |
+ // Try deleting this instruction if possible. |
+ virtual bool TryDelete() { return false; } |
+ |
void set_environment(LEnvironment* env) { environment_ = env; } |
LEnvironment* environment() const { return environment_; } |
bool HasEnvironment() const { return environment_ != NULL; } |
@@ -258,11 +265,12 @@ class LInstruction : public ZoneObject { |
void VerifyCall(); |
#endif |
+ virtual int InputCount() = 0; |
+ virtual LOperand* InputAt(int i) = 0; |
+ |
private: |
// Iterator support. |
friend class InputIterator; |
- virtual int InputCount() = 0; |
- virtual LOperand* InputAt(int i) = 0; |
friend class TempIterator; |
virtual int TempCount() = 0; |