Index: src/ia32/virtual-frame-ia32.cc |
=================================================================== |
--- src/ia32/virtual-frame-ia32.cc (revision 4066) |
+++ src/ia32/virtual-frame-ia32.cc (working copy) |
@@ -1171,11 +1171,17 @@ |
} |
VariableProxy* proxy = expr->AsVariableProxy(); |
- if (proxy != NULL && proxy->is_this()) { |
- PushParameterAt(-1); |
- return; |
+ if (proxy != NULL) { |
+ Slot* slot = proxy->var()->slot(); |
+ if (slot->type() == Slot::LOCAL) { |
+ PushLocalAt(slot->index()); |
+ return; |
+ } |
+ if (slot->type() == Slot::PARAMETER) { |
+ PushParameterAt(slot->index()); |
+ return; |
+ } |
} |
- |
UNREACHABLE(); |
} |