Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index 2067c62d1bd7c49cbaefbfa133ee367ad49f78e0..4d0cf3f52f1b61720775ceb7d6765b755744ec1c 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -144,6 +144,7 @@ class LCodeGen; |
V(PushArgument) \ |
V(RegExpLiteral) \ |
V(Return) \ |
+ V(SeqStringSetChar) \ |
V(ShiftI) \ |
V(SmiTag) \ |
V(SmiUntag) \ |
@@ -1179,6 +1180,30 @@ class LDateField: public LTemplateInstruction<1, 1, 1> { |
}; |
+class LSeqStringSetChar: public LTemplateInstruction<1, 3, 0> { |
+ public: |
+ LSeqStringSetChar(bool is_one_byte, |
+ LOperand* string, |
+ LOperand* index, |
+ LOperand* value) : is_one_byte_(is_one_byte) { |
+ inputs_[0] = string; |
+ inputs_[1] = index; |
+ inputs_[2] = value; |
+ } |
+ |
+ LOperand* string() { return inputs_[0]; } |
+ LOperand* index() { return inputs_[1]; } |
+ LOperand* value() { return inputs_[2]; } |
+ bool is_one_byte() { return is_one_byte_; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(SeqStringSetChar, "seq-string-set-char") |
+ DECLARE_HYDROGEN_ACCESSOR(SeqStringSetChar) |
+ |
+ private: |
+ bool is_one_byte_; |
+}; |
+ |
+ |
class LThrow: public LTemplateInstruction<0, 2, 0> { |
public: |
LThrow(LOperand* context, LOperand* value) { |