Index: src/mips64/lithium-mips64.h |
diff --git a/src/mips64/lithium-mips64.h b/src/mips64/lithium-mips64.h |
index 6928ae4b06a5549e041352cbd6c199086b6adc07..fc3bcae15e1e53529c863f31e4aaad947a087a94 100644 |
--- a/src/mips64/lithium-mips64.h |
+++ b/src/mips64/lithium-mips64.h |
@@ -19,8 +19,9 @@ class LCodeGen; |
#define LITHIUM_CONCRETE_INSTRUCTION_LIST(V) \ |
V(AccessArgumentsAt) \ |
- V(AddI) \ |
V(AddE) \ |
+ V(AddI) \ |
+ V(AddS) \ |
V(Allocate) \ |
V(AllocateBlockContext) \ |
V(ApplyArguments) \ |
@@ -123,6 +124,7 @@ class LCodeGen; |
V(ModByPowerOf2I) \ |
V(ModI) \ |
V(MulI) \ |
+ V(MulS) \ |
V(MultiplyAddD) \ |
V(NumberTagD) \ |
V(NumberTagU) \ |
@@ -151,6 +153,7 @@ class LCodeGen; |
V(StringCharFromCode) \ |
V(StringCompareAndBranch) \ |
V(SubI) \ |
+ V(SubS) \ |
V(TaggedToI) \ |
V(ThisFunction) \ |
V(ToFastProperties) \ |
@@ -754,6 +757,21 @@ class LFlooringDivI final : public LTemplateInstruction<1, 2, 0> { |
}; |
+class LMulS final : public LTemplateInstruction<1, 2, 0> { |
+ public: |
+ LMulS(LOperand* left, LOperand* right) { |
+ inputs_[0] = left; |
+ inputs_[1] = right; |
+ } |
+ |
+ LOperand* left() { return inputs_[0]; } |
+ LOperand* right() { return inputs_[1]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(MulS, "mul-s") |
+ DECLARE_HYDROGEN_ACCESSOR(Mul) |
+}; |
+ |
+ |
class LMulI final : public LTemplateInstruction<1, 2, 0> { |
public: |
LMulI(LOperand* left, LOperand* right) { |
@@ -1274,6 +1292,21 @@ class LSubI final : public LTemplateInstruction<1, 2, 0> { |
}; |
+class LSubS final : public LTemplateInstruction<1, 2, 0> { |
+ public: |
+ LSubS(LOperand* left, LOperand* right) { |
+ inputs_[0] = left; |
+ inputs_[1] = right; |
+ } |
+ |
+ LOperand* left() { return inputs_[0]; } |
+ LOperand* right() { return inputs_[1]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(SubS, "sub-s") |
+ DECLARE_HYDROGEN_ACCESSOR(Sub) |
+}; |
+ |
+ |
class LConstantI final : public LTemplateInstruction<1, 0, 0> { |
public: |
DECLARE_CONCRETE_INSTRUCTION(ConstantI, "constant-i") |
@@ -1452,6 +1485,21 @@ class LAddI final : public LTemplateInstruction<1, 2, 0> { |
}; |
+class LAddS final : public LTemplateInstruction<1, 2, 0> { |
+ public: |
+ LAddS(LOperand* left, LOperand* right) { |
+ inputs_[0] = left; |
+ inputs_[1] = right; |
+ } |
+ |
+ LOperand* left() { return inputs_[0]; } |
+ LOperand* right() { return inputs_[1]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(AddS, "add-s") |
+ DECLARE_HYDROGEN_ACCESSOR(Add) |
+}; |
+ |
+ |
class LMathMinMax final : public LTemplateInstruction<1, 2, 0> { |
public: |
LMathMinMax(LOperand* left, LOperand* right) { |