Commit 1a138034 authored by jarin@chromium.org's avatar jarin@chromium.org

Fix LStoreCodeEntry to treat the code_object parameter as input.

The bug seems to trigger only with array_index_dehoisting off in
the snapshot, so it is hard to test for (ideas?).

R=mvstanton@chromium.org
BUG=

Review URL: https://codereview.chromium.org/347523002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent b5c716bb
......@@ -1771,15 +1771,15 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 1, 1> {
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
temps_[0] = code_object;
inputs_[1] = code_object;
}
LOperand* function() { return inputs_[0]; }
LOperand* code_object() { return temps_[0]; }
LOperand* code_object() { return inputs_[1]; }
virtual void PrintDataTo(StringStream* stream);
......
......@@ -1784,15 +1784,15 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 1, 1> {
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
temps_[0] = code_object;
inputs_[1] = code_object;
}
LOperand* function() { return inputs_[0]; }
LOperand* code_object() { return temps_[0]; }
LOperand* code_object() { return inputs_[1]; }
virtual void PrintDataTo(StringStream* stream);
......
......@@ -1732,15 +1732,15 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 1, 1> {
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
temps_[0] = code_object;
inputs_[1] = code_object;
}
LOperand* function() { return inputs_[0]; }
LOperand* code_object() { return temps_[0]; }
LOperand* code_object() { return inputs_[1]; }
virtual void PrintDataTo(StringStream* stream);
......
......@@ -1771,15 +1771,15 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 1, 1> {
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
temps_[0] = code_object;
inputs_[1] = code_object;
}
LOperand* function() { return inputs_[0]; }
LOperand* code_object() { return temps_[0]; }
LOperand* code_object() { return inputs_[1]; }
virtual void PrintDataTo(StringStream* stream);
......
......@@ -1799,15 +1799,15 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 1, 1> {
class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
temps_[0] = code_object;
inputs_[1] = code_object;
}
LOperand* function() { return inputs_[0]; }
LOperand* code_object() { return temps_[0]; }
LOperand* code_object() { return inputs_[1]; }
virtual void PrintDataTo(StringStream* stream);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment