From 5f1ef9cbf8acc4a8560cffacaecc7cd68d462e20 Mon Sep 17 00:00:00 2001 From: "ager@chromium.org" Date: Tue, 23 Dec 2008 08:58:56 +0000 Subject: [PATCH] Update comment and add assert. Fix typo where underscore is used instead of a dash. Review URL: http://codereview.chromium.org/16238 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/codegen-ia32.cc | 12 +++++++----- src/objects.h | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/codegen-ia32.cc b/src/codegen-ia32.cc index 0cc288944a..db269a0e32 100644 --- a/src/codegen-ia32.cc +++ b/src/codegen-ia32.cc @@ -3875,6 +3875,8 @@ void Reference::GetValue(TypeofState typeof_state) { // distinction between expressions in a typeof and not in a // typeof. Variable* var = expression_->AsVariableProxy()->AsVariable(); + bool is_global = var != NULL; + ASSERT(!is_global || var->is_global()); // Inline array load code if inside of a loop. We do not know // the receiver map yet, so we initially generate the code with // a check against an invalid map. In the inline cache code, we @@ -3882,11 +3884,12 @@ void Reference::GetValue(TypeofState typeof_state) { if (cgen_->loop_nesting() > 0) { Comment cmnt(masm, "[ Inlined array index load"); DeferredReferenceGetKeyedValue* deferred = - new DeferredReferenceGetKeyedValue(cgen_, var != NULL); + new DeferredReferenceGetKeyedValue(cgen_, is_global); // Load receiver and check that it is not a smi (only needed - // if not contextual) and that it has the expected map. + // if this is not a load from the global context) and that it + // has the expected map. __ mov(edx, Operand(esp, kPointerSize)); - if (var == NULL) { + if (!is_global) { __ test(edx, Immediate(kSmiTagMask)); __ j(zero, deferred->enter(), not_taken); } @@ -3921,8 +3924,7 @@ void Reference::GetValue(TypeofState typeof_state) { } else { Comment cmnt(masm, "[ Load from keyed Property"); Handle ic(Builtins::builtin(Builtins::KeyedLoadIC_Initialize)); - if (var != NULL) { - ASSERT(var->is_global()); + if (is_global) { __ call(ic, RelocInfo::CODE_TARGET_CONTEXT); } else { __ call(ic, RelocInfo::CODE_TARGET); diff --git a/src/objects.h b/src/objects.h index a1ddd48092..c79838aad7 100644 --- a/src/objects.h +++ b/src/objects.h @@ -48,7 +48,7 @@ // - GlobalObject // - JSGlobalObject // - JSBuiltinsObject -// _ JSGlobalProxy +// - JSGlobalProxy // - JSValue // - Script // - Array