| 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 #include "v8.h" | 5 #include "v8.h" | 
| 6 | 6 | 
| 7 #if V8_TARGET_ARCH_IA32 | 7 #if V8_TARGET_ARCH_IA32 | 
| 8 | 8 | 
| 9 #include "ia32/lithium-codegen-ia32.h" | 9 #include "ia32/lithium-codegen-ia32.h" | 
| 10 #include "ic.h" | 10 #include "ic.h" | 
| (...skipping 4280 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 4291     bool is_js_array = from_map->instance_type() == JS_ARRAY_TYPE; | 4291     bool is_js_array = from_map->instance_type() == JS_ARRAY_TYPE; | 
| 4292     TransitionElementsKindStub stub(isolate(), from_kind, to_kind, is_js_array); | 4292     TransitionElementsKindStub stub(isolate(), from_kind, to_kind, is_js_array); | 
| 4293     __ CallStub(&stub); | 4293     __ CallStub(&stub); | 
| 4294     RecordSafepointWithLazyDeopt(instr, | 4294     RecordSafepointWithLazyDeopt(instr, | 
| 4295         RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); | 4295         RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); | 
| 4296   } | 4296   } | 
| 4297   __ bind(¬_applicable); | 4297   __ bind(¬_applicable); | 
| 4298 } | 4298 } | 
| 4299 | 4299 | 
| 4300 | 4300 | 
| 4301 void LCodeGen::DoArrayShift(LArrayShift* instr) { |  | 
| 4302   ASSERT(ToRegister(instr->context()).is(esi)); |  | 
| 4303   ASSERT(ToRegister(instr->object()).is(eax)); |  | 
| 4304   ASSERT(ToRegister(instr->result()).is(eax)); |  | 
| 4305   ArrayShiftStub stub(isolate(), instr->hydrogen()->kind()); |  | 
| 4306   CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |  | 
| 4307 } |  | 
| 4308 |  | 
| 4309 |  | 
| 4310 void LCodeGen::DoStringCharCodeAt(LStringCharCodeAt* instr) { | 4301 void LCodeGen::DoStringCharCodeAt(LStringCharCodeAt* instr) { | 
| 4311   class DeferredStringCharCodeAt V8_FINAL : public LDeferredCode { | 4302   class DeferredStringCharCodeAt V8_FINAL : public LDeferredCode { | 
| 4312    public: | 4303    public: | 
| 4313     DeferredStringCharCodeAt(LCodeGen* codegen, | 4304     DeferredStringCharCodeAt(LCodeGen* codegen, | 
| 4314                              LStringCharCodeAt* instr) | 4305                              LStringCharCodeAt* instr) | 
| 4315         : LDeferredCode(codegen), instr_(instr) { } | 4306         : LDeferredCode(codegen), instr_(instr) { } | 
| 4316     virtual void Generate() V8_OVERRIDE { | 4307     virtual void Generate() V8_OVERRIDE { | 
| 4317       codegen()->DoDeferredStringCharCodeAt(instr_); | 4308       codegen()->DoDeferredStringCharCodeAt(instr_); | 
| 4318     } | 4309     } | 
| 4319     virtual LInstruction* instr() V8_OVERRIDE { return instr_; } | 4310     virtual LInstruction* instr() V8_OVERRIDE { return instr_; } | 
| (...skipping 1338 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 5658   __ bind(deferred->exit()); | 5649   __ bind(deferred->exit()); | 
| 5659   __ bind(&done); | 5650   __ bind(&done); | 
| 5660 } | 5651 } | 
| 5661 | 5652 | 
| 5662 | 5653 | 
| 5663 #undef __ | 5654 #undef __ | 
| 5664 | 5655 | 
| 5665 } }  // namespace v8::internal | 5656 } }  // namespace v8::internal | 
| 5666 | 5657 | 
| 5667 #endif  // V8_TARGET_ARCH_IA32 | 5658 #endif  // V8_TARGET_ARCH_IA32 | 
| OLD | NEW | 
|---|