Fix two x64 code generation bugs introduced by const context slot code from r10244

TEST=mjsunit debug tests pass again.
Review URL: http://codereview.chromium.org/8932014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
fschneider@chromium.org 2011-12-14 08:43:55 +00:00
parent cf8e2b01e4
commit 1bdac10670

View File

@ -2074,7 +2074,7 @@ void LCodeGen::DoLoadContextSlot(LLoadContextSlot* instr) {
} else {
Label is_not_hole;
__ j(not_equal, &is_not_hole, Label::kNear);
__ movq(result, factory()->undefined_value(), RelocInfo::NONE);
__ LoadRoot(result, Heap::kUndefinedValueRootIndex);
__ bind(&is_not_hole);
}
}
@ -2093,7 +2093,7 @@ void LCodeGen::DoStoreContextSlot(LStoreContextSlot* instr) {
if (instr->hydrogen()->DeoptimizesOnHole()) {
DeoptimizeIf(equal, instr->environment());
} else {
__ j(not_equal, &skip_assignment, Label::kNear);
__ j(not_equal, &skip_assignment);
}
}
__ movq(target, value);