Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: src/x64/macro-assembler-x64.cc

Issue 592113002: Fix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/x64/macro-assembler-x64.h ('k') | src/x87/code-stubs-x87.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "src/v8.h" 5 #include "src/v8.h"
6 6
7 #if V8_TARGET_ARCH_X64 7 #if V8_TARGET_ARCH_X64
8 8
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/base/division-by-constant.h" 10 #include "src/base/division-by-constant.h"
(...skipping 2683 matching lines...) Expand 10 before | Expand all | Expand 10 after
2694 masm->testb(operand_or_register, 2694 masm->testb(operand_or_register,
2695 Immediate(kIsNotStringMask | kIsNotInternalizedMask)); 2695 Immediate(kIsNotStringMask | kIsNotInternalizedMask));
2696 masm->j(zero, &succeed, Label::kNear); 2696 masm->j(zero, &succeed, Label::kNear);
2697 masm->cmpb(operand_or_register, Immediate(static_cast<uint8_t>(SYMBOL_TYPE))); 2697 masm->cmpb(operand_or_register, Immediate(static_cast<uint8_t>(SYMBOL_TYPE)));
2698 masm->j(not_equal, not_unique_name, distance); 2698 masm->j(not_equal, not_unique_name, distance);
2699 2699
2700 masm->bind(&succeed); 2700 masm->bind(&succeed);
2701 } 2701 }
2702 2702
2703 2703
2704 void MacroAssembler::JumpIfNotUniqueName(Operand operand, 2704 void MacroAssembler::JumpIfNotUniqueNameInstanceType(Operand operand,
2705 Label* not_unique_name, 2705 Label* not_unique_name,
2706 Label::Distance distance) { 2706 Label::Distance distance) {
2707 JumpIfNotUniqueNameHelper<Operand>(this, operand, not_unique_name, distance); 2707 JumpIfNotUniqueNameHelper<Operand>(this, operand, not_unique_name, distance);
2708 } 2708 }
2709 2709
2710 2710
2711 void MacroAssembler::JumpIfNotUniqueName(Register reg, 2711 void MacroAssembler::JumpIfNotUniqueNameInstanceType(Register reg,
2712 Label* not_unique_name, 2712 Label* not_unique_name,
2713 Label::Distance distance) { 2713 Label::Distance distance) {
2714 JumpIfNotUniqueNameHelper<Register>(this, reg, not_unique_name, distance); 2714 JumpIfNotUniqueNameHelper<Register>(this, reg, not_unique_name, distance);
2715 } 2715 }
2716 2716
2717 2717
2718 void MacroAssembler::Move(Register dst, Register src) { 2718 void MacroAssembler::Move(Register dst, Register src) {
2719 if (!dst.is(src)) { 2719 if (!dst.is(src)) {
2720 movp(dst, src); 2720 movp(dst, src);
2721 } 2721 }
2722 } 2722 }
2723 2723
(...skipping 2612 matching lines...) Expand 10 before | Expand all | Expand 10 after
5336 if (mag.shift > 0) sarl(rdx, Immediate(mag.shift)); 5336 if (mag.shift > 0) sarl(rdx, Immediate(mag.shift));
5337 movl(rax, dividend); 5337 movl(rax, dividend);
5338 shrl(rax, Immediate(31)); 5338 shrl(rax, Immediate(31));
5339 addl(rdx, rax); 5339 addl(rdx, rax);
5340 } 5340 }
5341 5341
5342 5342
5343 } } // namespace v8::internal 5343 } } // namespace v8::internal
5344 5344
5345 #endif // V8_TARGET_ARCH_X64 5345 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/x64/macro-assembler-x64.h ('k') | src/x87/code-stubs-x87.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698