Index: src/x64/lithium-x64.h |
diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h |
index ca7831c2e7f7c7f17ea7c56face430349fcf913e..a475d8ccb06e213c70135335c038939e6447740c 100644 |
--- a/src/x64/lithium-x64.h |
+++ b/src/x64/lithium-x64.h |
@@ -153,6 +153,7 @@ class LCodeGen; |
V(Parameter) \ |
V(Power) \ |
V(PushArgument) \ |
+ V(Random) \ |
V(RegExpLiteral) \ |
V(Return) \ |
V(SeqStringGetChar) \ |
@@ -1423,6 +1424,28 @@ class LPower V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
}; |
+class LRandom V8_FINAL : public LTemplateInstruction<1, 1, 3> { |
+ public: |
+ LRandom(LOperand* global_object, |
+ LOperand* scratch, |
+ LOperand* scratch2, |
+ LOperand* scratch3) { |
+ inputs_[0] = global_object; |
+ temps_[0] = scratch; |
+ temps_[1] = scratch2; |
+ temps_[2] = scratch3; |
+ } |
+ |
+ LOperand* global_object() { return inputs_[0]; } |
+ LOperand* scratch() const { return temps_[0]; } |
+ LOperand* scratch2() const { return temps_[1]; } |
+ LOperand* scratch3() const { return temps_[2]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(Random, "random") |
+ DECLARE_HYDROGEN_ACCESSOR(Random) |
+}; |
+ |
+ |
class LArithmeticD V8_FINAL : public LTemplateInstruction<1, 2, 0> { |
public: |
LArithmeticD(Token::Value op, LOperand* left, LOperand* right) |