Index: src/mips/lithium-mips.h |
diff --git a/src/mips/lithium-mips.h b/src/mips/lithium-mips.h |
index 258502dc263613766aaab92f452ec411bb8b601e..67836cf7b38ca6cf05a62e83a37b5994b65886ce 100644 |
--- a/src/mips/lithium-mips.h |
+++ b/src/mips/lithium-mips.h |
@@ -125,6 +125,7 @@ class LCodeGen; |
V(MapEnumLength) \ |
V(MathAbs) \ |
V(MathExp) \ |
+ V(MathClz32) \ |
V(MathFloor) \ |
V(MathFloorOfDiv) \ |
V(MathLog) \ |
@@ -802,6 +803,18 @@ class LMathLog V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
}; |
+class LMathClz32 V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LMathClz32(LOperand* value) { |
+ inputs_[0] = value; |
+ } |
+ |
+ LOperand* value() { return inputs_[0]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(MathClz32, "math-clz32") |
+}; |
+ |
+ |
class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 3> { |
public: |
LMathExp(LOperand* value, |
@@ -2578,6 +2591,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase { |
LInstruction* DoMathExp(HUnaryMathOperation* instr); |
LInstruction* DoMathSqrt(HUnaryMathOperation* instr); |
LInstruction* DoMathPowHalf(HUnaryMathOperation* instr); |
+ LInstruction* DoMathClz32(HUnaryMathOperation* instr); |
private: |
enum Status { |