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

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

Issue 942513002: Put the type feedback vector in the unoptimized JavaScript frame. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Reduced constant in deep recursion test for windows. Created 5 years, 9 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
« no previous file with comments | « src/arm/macro-assembler-arm.h ('k') | src/arm64/code-stubs-arm64.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 <limits.h> // For LONG_MIN, LONG_MAX. 5 #include <limits.h> // For LONG_MIN, LONG_MAX.
6 6
7 #include "src/v8.h" 7 #include "src/v8.h"
8 8
9 #if V8_TARGET_ARCH_ARM 9 #if V8_TARGET_ARCH_ARM
10 10
(...skipping 3767 matching lines...) Expand 10 before | Expand all | Expand 10 after
3778 ldr(scratch1, FieldMemOperand(current, Map::kBitField2Offset)); 3778 ldr(scratch1, FieldMemOperand(current, Map::kBitField2Offset));
3779 DecodeField<Map::ElementsKindBits>(scratch1); 3779 DecodeField<Map::ElementsKindBits>(scratch1);
3780 cmp(scratch1, Operand(DICTIONARY_ELEMENTS)); 3780 cmp(scratch1, Operand(DICTIONARY_ELEMENTS));
3781 b(eq, found); 3781 b(eq, found);
3782 ldr(current, FieldMemOperand(current, Map::kPrototypeOffset)); 3782 ldr(current, FieldMemOperand(current, Map::kPrototypeOffset));
3783 cmp(current, Operand(factory->null_value())); 3783 cmp(current, Operand(factory->null_value()));
3784 b(ne, &loop_again); 3784 b(ne, &loop_again);
3785 } 3785 }
3786 3786
3787 3787
3788 void MacroAssembler::AdaptUnoptimizedFrameForOsrEntry(
3789 int unoptimized_slot_count, Register scratch0, Register scratch1) {
3790 if (unoptimized_slot_count > 0) {
3791 Label loop_start;
3792 add(scratch0, fp, Operand(JavaScriptFrameConstants::kFeedbackVectorOffset));
3793 bind(&loop_start);
3794 ldr(scratch1, MemOperand(scratch0, -1 * kPointerSize));
3795 str(scratch1, MemOperand(scratch0, 0));
3796 sub(scratch0, scratch0, Operand(kPointerSize));
3797 cmp(scratch0, sp);
3798 b(gt, &loop_start);
3799 }
3800 add(sp, sp, Operand(kPointerSize));
3801 }
3802
3803
3788 #ifdef DEBUG 3804 #ifdef DEBUG
3789 bool AreAliased(Register reg1, 3805 bool AreAliased(Register reg1,
3790 Register reg2, 3806 Register reg2,
3791 Register reg3, 3807 Register reg3,
3792 Register reg4, 3808 Register reg4,
3793 Register reg5, 3809 Register reg5,
3794 Register reg6, 3810 Register reg6,
3795 Register reg7, 3811 Register reg7,
3796 Register reg8) { 3812 Register reg8) {
3797 int n_of_valid_regs = reg1.is_valid() + reg2.is_valid() + 3813 int n_of_valid_regs = reg1.is_valid() + reg2.is_valid() +
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
3876 } 3892 }
3877 } 3893 }
3878 if (mag.shift > 0) mov(result, Operand(result, ASR, mag.shift)); 3894 if (mag.shift > 0) mov(result, Operand(result, ASR, mag.shift));
3879 add(result, result, Operand(dividend, LSR, 31)); 3895 add(result, result, Operand(dividend, LSR, 31));
3880 } 3896 }
3881 3897
3882 } // namespace internal 3898 } // namespace internal
3883 } // namespace v8 3899 } // namespace v8
3884 3900
3885 #endif // V8_TARGET_ARCH_ARM 3901 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « src/arm/macro-assembler-arm.h ('k') | src/arm64/code-stubs-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698