| 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) {
|
|
|