| Index: src/x64/lithium-x64.h
|
| diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h
|
| index cfaed15077a1f8dc664dbda56ad045b6f4f42c5d..a58208c816f4f0471be89a44f6e6374b2bc0acdc 100644
|
| --- a/src/x64/lithium-x64.h
|
| +++ b/src/x64/lithium-x64.h
|
| @@ -124,6 +124,7 @@ class LCodeGen;
|
| V(LoadNamedGeneric) \
|
| V(MapEnumLength) \
|
| V(MathAbs) \
|
| + V(MathClz32) \
|
| V(MathExp) \
|
| V(MathFloor) \
|
| V(MathFloorOfDiv) \
|
| @@ -760,6 +761,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, 2> {
|
| public:
|
| LMathExp(LOperand* value, LOperand* temp1, LOperand* temp2) {
|
| @@ -2529,6 +2542,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 {
|
|
|