Index: src/ia32/lithium-ia32.h |
=================================================================== |
--- src/ia32/lithium-ia32.h (revision 7203) |
+++ src/ia32/lithium-ia32.h (working copy) |
@@ -70,6 +70,7 @@ |
V(CheckFunction) \ |
V(CheckInstanceType) \ |
V(CheckMap) \ |
+ V(CheckNonSmi) \ |
V(CheckPrototypeMaps) \ |
V(CheckSmi) \ |
V(ClassOfTest) \ |
@@ -1792,20 +1793,21 @@ |
class LCheckSmi: public LTemplateInstruction<0, 1, 0> { |
public: |
- LCheckSmi(LOperand* value, Condition condition) |
- : condition_(condition) { |
+ explicit LCheckSmi(LOperand* value) { |
inputs_[0] = value; |
} |
- Condition condition() const { return condition_; } |
+ DECLARE_CONCRETE_INSTRUCTION(CheckSmi, "check-smi") |
+}; |
- virtual void CompileToNative(LCodeGen* generator); |
- virtual const char* Mnemonic() const { |
- return (condition_ == zero) ? "check-non-smi" : "check-smi"; |
+ |
+class LCheckNonSmi: public LTemplateInstruction<0, 1, 0> { |
+ public: |
+ explicit LCheckNonSmi(LOperand* value) { |
+ inputs_[0] = value; |
} |
- private: |
- Condition condition_; |
+ DECLARE_CONCRETE_INSTRUCTION(CheckNonSmi, "check-non-smi") |
}; |