| Index: src/ia32/lithium-ia32.h
|
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h
|
| index cc3762d7ab42e0dbda448370ecd5b5da321c8f84..be8a3f08a4a70679aeadb186ef66e9b783b572df 100644
|
| --- a/src/ia32/lithium-ia32.h
|
| +++ b/src/ia32/lithium-ia32.h
|
| @@ -123,6 +123,7 @@ class LCodeGen;
|
| V(LoadNamedField) \
|
| V(LoadNamedFieldPolymorphic) \
|
| V(LoadNamedGeneric) \
|
| + V(MathMinMax) \
|
| V(MathPowHalf) \
|
| V(ModI) \
|
| V(MulI) \
|
| @@ -1043,6 +1044,32 @@ class LPower: public LTemplateInstruction<1, 2, 0> {
|
| };
|
|
|
|
|
| +class LMathMinMax: public LTemplateInstruction<1, 2, 3> {
|
| + public:
|
| + LMathMinMax(LOperand* left,
|
| + LOperand* right,
|
| + LOperand* temp0,
|
| + LOperand* temp1,
|
| + LOperand* temp2,
|
| + BuiltinFunctionId op) {
|
| + inputs_[0] = left;
|
| + inputs_[1] = right;
|
| + temps_[0] = temp0;
|
| + temps_[1] = temp1;
|
| + temps_[2] = temp2;
|
| + op_ = op;
|
| + }
|
| +
|
| + bool IsMin() { return op_ == kMathMin; }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(MathMinMax, "math-min-max")
|
| + DECLARE_HYDROGEN_ACCESSOR(MathMinMax)
|
| +
|
| + private:
|
| + BuiltinFunctionId op_;
|
| +};
|
| +
|
| +
|
| class LArithmeticD: public LTemplateInstruction<1, 2, 0> {
|
| public:
|
| LArithmeticD(Token::Value op, LOperand* left, LOperand* right)
|
|
|