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

Side by Side Diff: src/x64/code-stubs-x64.cc

Issue 659053002: Fix clang compilation error. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 2 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/mips/code-stubs-mips.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/bootstrapper.h" 9 #include "src/bootstrapper.h"
10 #include "src/code-stubs.h" 10 #include "src/code-stubs.h"
(...skipping 2721 matching lines...) Expand 10 before | Expand all | Expand 10 after
2732 kPointerSize); 2732 kPointerSize);
2733 } 2733 }
2734 } 2734 }
2735 2735
2736 2736
2737 // ------------------------------------------------------------------------- 2737 // -------------------------------------------------------------------------
2738 // StringCharCodeAtGenerator 2738 // StringCharCodeAtGenerator
2739 2739
2740 void StringCharCodeAtGenerator::GenerateFast(MacroAssembler* masm) { 2740 void StringCharCodeAtGenerator::GenerateFast(MacroAssembler* masm) {
2741 // If the receiver is a smi trigger the non-string case. 2741 // If the receiver is a smi trigger the non-string case.
2742 __ JumpIfSmi(object_, receiver_not_string_); 2742 if (check_mode_ == RECEIVER_IS_UNKNOWN) {
2743 __ JumpIfSmi(object_, receiver_not_string_);
2743 2744
2744 // Fetch the instance type of the receiver into result register. 2745 // Fetch the instance type of the receiver into result register.
2745 __ movp(result_, FieldOperand(object_, HeapObject::kMapOffset)); 2746 __ movp(result_, FieldOperand(object_, HeapObject::kMapOffset));
2746 __ movzxbl(result_, FieldOperand(result_, Map::kInstanceTypeOffset)); 2747 __ movzxbl(result_, FieldOperand(result_, Map::kInstanceTypeOffset));
2747 // If the receiver is not a string trigger the non-string case. 2748 // If the receiver is not a string trigger the non-string case.
2748 __ testb(result_, Immediate(kIsNotStringMask)); 2749 __ testb(result_, Immediate(kIsNotStringMask));
2749 __ j(not_zero, receiver_not_string_); 2750 __ j(not_zero, receiver_not_string_);
2751 }
2750 2752
2751 // If the index is non-smi trigger the non-smi case. 2753 // If the index is non-smi trigger the non-smi case.
2752 __ JumpIfNotSmi(index_, &index_not_smi_); 2754 __ JumpIfNotSmi(index_, &index_not_smi_);
2753 __ bind(&got_smi_index_); 2755 __ bind(&got_smi_index_);
2754 2756
2755 // Check for index out of range. 2757 // Check for index out of range.
2756 __ SmiCompare(index_, FieldOperand(object_, String::kLengthOffset)); 2758 __ SmiCompare(index_, FieldOperand(object_, String::kLengthOffset));
2757 __ j(above_equal, index_out_of_range_); 2759 __ j(above_equal, index_out_of_range_);
2758 2760
2759 __ SmiToInteger32(index_, index_); 2761 __ SmiToInteger32(index_, index_);
(...skipping 1937 matching lines...) Expand 10 before | Expand all | Expand 10 after
4697 return_value_operand, 4699 return_value_operand,
4698 NULL); 4700 NULL);
4699 } 4701 }
4700 4702
4701 4703
4702 #undef __ 4704 #undef __
4703 4705
4704 } } // namespace v8::internal 4706 } } // namespace v8::internal
4705 4707
4706 #endif // V8_TARGET_ARCH_X64 4708 #endif // V8_TARGET_ARCH_X64
OLDNEW
« no previous file with comments | « src/mips/code-stubs-mips.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698