Revision: 3911
Author: [email protected]
Date: Fri Feb 19 02:05:33 2010
Log: Improve load of global variables.
Review URL: http://codereview.chromium.org/651019
http://code.google.com/p/v8/source/detail?r=3911
Modified:
/branches/bleeding_edge/src/ia32/codegen-ia32.cc
=======================================
--- /branches/bleeding_edge/src/ia32/codegen-ia32.cc Fri Feb 19 01:01:31
2010
+++ /branches/bleeding_edge/src/ia32/codegen-ia32.cc Fri Feb 19 02:05:33
2010
@@ -689,6 +689,9 @@
// The expression is a variable proxy that does not rewrite to a
// property. Global variables are treated as named property
references.
if (var->is_global()) {
+ // Named loads require object in eax. Named stores don't use
references.
+ // Spilling eax makes it free, so LoadGlobal loads directly into eax.
+ frame_->Spill(eax);
LoadGlobal();
ref->set_type(Reference::NAMED);
} else {
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev