X64 implementation: Store to lookup slots
Review URL: http://codereview.chromium.org/147203 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2284 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
252514ca23
commit
e99f056a43
@ -3870,8 +3870,6 @@ void CodeGenerator::StoreToSlot(Slot* slot, InitState init_state) {
|
|||||||
// TODO(X64): Enable more types of slot.
|
// TODO(X64): Enable more types of slot.
|
||||||
|
|
||||||
if (slot->type() == Slot::LOOKUP) {
|
if (slot->type() == Slot::LOOKUP) {
|
||||||
UNIMPLEMENTED();
|
|
||||||
/*
|
|
||||||
ASSERT(slot->var()->is_dynamic());
|
ASSERT(slot->var()->is_dynamic());
|
||||||
|
|
||||||
// For now, just do a runtime call. Since the call is inevitable,
|
// For now, just do a runtime call. Since the call is inevitable,
|
||||||
@ -3879,8 +3877,8 @@ void CodeGenerator::StoreToSlot(Slot* slot, InitState init_state) {
|
|||||||
// arguments into place.
|
// arguments into place.
|
||||||
frame_->SyncRange(0, frame_->element_count() - 1);
|
frame_->SyncRange(0, frame_->element_count() - 1);
|
||||||
|
|
||||||
frame_->EmitPush(esi);
|
frame_->EmitPush(rsi);
|
||||||
frame_->EmitPush(Immediate(slot->var()->name()));
|
frame_->EmitPush(slot->var()->name());
|
||||||
|
|
||||||
Result value;
|
Result value;
|
||||||
if (init_state == CONST_INIT) {
|
if (init_state == CONST_INIT) {
|
||||||
@ -3906,7 +3904,6 @@ void CodeGenerator::StoreToSlot(Slot* slot, InitState init_state) {
|
|||||||
// stack. This is necessary for compiling chained assignment
|
// stack. This is necessary for compiling chained assignment
|
||||||
// expressions.
|
// expressions.
|
||||||
frame_->Push(&value);
|
frame_->Push(&value);
|
||||||
*/
|
|
||||||
} else {
|
} else {
|
||||||
ASSERT(!slot->var()->is_dynamic());
|
ASSERT(!slot->var()->is_dynamic());
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user