| OLD | NEW | 
|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #if V8_TARGET_ARCH_IA32 | 5 #if V8_TARGET_ARCH_IA32 | 
| 6 | 6 | 
| 7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" | 
| 8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" | 
| 9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" | 
| 10 #include "src/codegen.h" | 10 #include "src/codegen.h" | 
| (...skipping 1976 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1987   __ mov(FieldOperand(eax, JSObject::kElementsOffset), | 1987   __ mov(FieldOperand(eax, JSObject::kElementsOffset), | 
| 1988          isolate()->factory()->empty_fixed_array()); | 1988          isolate()->factory()->empty_fixed_array()); | 
| 1989   __ pop(FieldOperand(eax, JSIteratorResult::kValueOffset)); | 1989   __ pop(FieldOperand(eax, JSIteratorResult::kValueOffset)); | 
| 1990   __ mov(FieldOperand(eax, JSIteratorResult::kDoneOffset), | 1990   __ mov(FieldOperand(eax, JSIteratorResult::kDoneOffset), | 
| 1991          isolate()->factory()->ToBoolean(done)); | 1991          isolate()->factory()->ToBoolean(done)); | 
| 1992   STATIC_ASSERT(JSIteratorResult::kSize == 5 * kPointerSize); | 1992   STATIC_ASSERT(JSIteratorResult::kSize == 5 * kPointerSize); | 
| 1993   OperandStackDepthDecrement(1); | 1993   OperandStackDepthDecrement(1); | 
| 1994 } | 1994 } | 
| 1995 | 1995 | 
| 1996 | 1996 | 
| 1997 void FullCodeGenerator::EmitNamedPropertyLoad(Property* prop) { |  | 
| 1998   SetExpressionPosition(prop); |  | 
| 1999   Literal* key = prop->key()->AsLiteral(); |  | 
| 2000   DCHECK(!key->value()->IsSmi()); |  | 
| 2001   DCHECK(!prop->IsSuperAccess()); |  | 
| 2002 |  | 
| 2003   __ mov(LoadDescriptor::NameRegister(), Immediate(key->value())); |  | 
| 2004   __ mov(LoadDescriptor::SlotRegister(), |  | 
| 2005          Immediate(SmiFromSlot(prop->PropertyFeedbackSlot()))); |  | 
| 2006   CallLoadIC(NOT_INSIDE_TYPEOF); |  | 
| 2007 } |  | 
| 2008 |  | 
| 2009 |  | 
| 2010 void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, | 1997 void FullCodeGenerator::EmitInlineSmiBinaryOp(BinaryOperation* expr, | 
| 2011                                               Token::Value op, | 1998                                               Token::Value op, | 
| 2012                                               Expression* left, | 1999                                               Expression* left, | 
| 2013                                               Expression* right) { | 2000                                               Expression* right) { | 
| 2014   // Do combined smi check of the operands. Left operand is on the | 2001   // Do combined smi check of the operands. Left operand is on the | 
| 2015   // stack. Right operand is in eax. | 2002   // stack. Right operand is in eax. | 
| 2016   Label smi_case, done, stub_call; | 2003   Label smi_case, done, stub_call; | 
| 2017   PopOperand(edx); | 2004   PopOperand(edx); | 
| 2018   __ mov(ecx, eax); | 2005   __ mov(ecx, eax); | 
| 2019   __ or_(eax, edx); | 2006   __ or_(eax, edx); | 
| (...skipping 2114 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 4134             Assembler::target_address_at(call_target_address, | 4121             Assembler::target_address_at(call_target_address, | 
| 4135                                          unoptimized_code)); | 4122                                          unoptimized_code)); | 
| 4136   return OSR_AFTER_STACK_CHECK; | 4123   return OSR_AFTER_STACK_CHECK; | 
| 4137 } | 4124 } | 
| 4138 | 4125 | 
| 4139 | 4126 | 
| 4140 }  // namespace internal | 4127 }  // namespace internal | 
| 4141 }  // namespace v8 | 4128 }  // namespace v8 | 
| 4142 | 4129 | 
| 4143 #endif  // V8_TARGET_ARCH_IA32 | 4130 #endif  // V8_TARGET_ARCH_IA32 | 
| OLD | NEW | 
|---|