| Index: src/ia32/lithium-ia32.h
|
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h
|
| index b0d031a737e18cba8464ba1a5e4d3127955e2209..b429120487238c5aa30cbad761c255bb8e0b4646 100644
|
| --- a/src/ia32/lithium-ia32.h
|
| +++ b/src/ia32/lithium-ia32.h
|
| @@ -154,7 +154,6 @@ class LCodeGen;
|
| V(OuterContext) \
|
| V(Parameter) \
|
| V(Power) \
|
| - V(Random) \
|
| V(PushArgument) \
|
| V(RegExpLiteral) \
|
| V(Return) \
|
| @@ -1377,19 +1376,21 @@ class LSeqStringGetChar V8_FINAL : public LTemplateInstruction<1, 2, 0> {
|
| };
|
|
|
|
|
| -class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 3, 0> {
|
| +class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 4, 0> {
|
| public:
|
| - LSeqStringSetChar(LOperand* string,
|
| + LSeqStringSetChar(LOperand* context,
|
| + LOperand* string,
|
| LOperand* index,
|
| LOperand* value) {
|
| - inputs_[0] = string;
|
| - inputs_[1] = index;
|
| - inputs_[2] = value;
|
| + inputs_[0] = context;
|
| + inputs_[1] = string;
|
| + inputs_[2] = index;
|
| + inputs_[3] = value;
|
| }
|
|
|
| - LOperand* string() { return inputs_[0]; }
|
| - LOperand* index() { return inputs_[1]; }
|
| - LOperand* value() { return inputs_[2]; }
|
| + LOperand* string() { return inputs_[1]; }
|
| + LOperand* index() { return inputs_[2]; }
|
| + LOperand* value() { return inputs_[3]; }
|
|
|
| DECLARE_CONCRETE_INSTRUCTION(SeqStringSetChar, "seq-string-set-char")
|
| DECLARE_HYDROGEN_ACCESSOR(SeqStringSetChar)
|
| @@ -1460,28 +1461,6 @@ 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() const { 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)
|
| @@ -2917,6 +2896,8 @@ class LChunkBuilder V8_FINAL BASE_EMBEDDED {
|
|
|
| enum CanDeoptimize { CAN_DEOPTIMIZE_EAGERLY, CANNOT_DEOPTIMIZE_EAGERLY };
|
|
|
| + LOperand* GetSeqStringSetCharOperand(HSeqStringSetChar* instr);
|
| +
|
| // Marks a call for the register allocator. Assigns a pointer map to
|
| // support GC and lazy deoptimization. Assigns an environment to support
|
| // eager deoptimization if CAN_DEOPTIMIZE_EAGERLY.
|
|
|