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

Side by Side Diff: runtime/vm/assembler_arm.cc

Issue 807593002: Merge RawICData::range_feedback_ field into RawICData::state_bits_. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years 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 | « no previous file | runtime/vm/assembler_arm64.cc » ('j') | runtime/vm/object.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" // NOLINT 5 #include "vm/globals.h" // NOLINT
6 #if defined(TARGET_ARCH_ARM) 6 #if defined(TARGET_ARCH_ARM)
7 7
8 #include "vm/assembler.h" 8 #include "vm/assembler.h"
9 #include "vm/cpu.h" 9 #include "vm/cpu.h"
10 #include "vm/longjump.h" 10 #include "vm/longjump.h"
(...skipping 1949 matching lines...) Expand 10 before | Expand all | Expand 10 after
1960 1960
1961 1961
1962 void Assembler::UpdateRangeFeedback(Register value, 1962 void Assembler::UpdateRangeFeedback(Register value,
1963 intptr_t index, 1963 intptr_t index,
1964 Register ic_data, 1964 Register ic_data,
1965 Register scratch1, 1965 Register scratch1,
1966 Register scratch2, 1966 Register scratch2,
1967 Label* miss) { 1967 Label* miss) {
1968 ASSERT(ICData::IsValidRangeFeedbackIndex(index)); 1968 ASSERT(ICData::IsValidRangeFeedbackIndex(index));
1969 ComputeRange(scratch1, value, scratch2, miss); 1969 ComputeRange(scratch1, value, scratch2, miss);
1970 ldr(scratch2, FieldAddress(ic_data, ICData::range_feedback_offset())); 1970 ldr(scratch2, FieldAddress(ic_data, ICData::state_bits_offset()));
1971 orr(scratch2, 1971 orr(scratch2,
1972 scratch2, 1972 scratch2,
1973 Operand(scratch1, LSL, ICData::kBitsPerRangeFeedback * index)); 1973 Operand(scratch1, LSL, ICData::RangeFeedbackShift(index)));
1974 str(scratch2, FieldAddress(ic_data, ICData::range_feedback_offset())); 1974 str(scratch2, FieldAddress(ic_data, ICData::state_bits_offset()));
1975 } 1975 }
1976 1976
1977 1977
1978 static bool CanEncodeBranchOffset(int32_t offset) { 1978 static bool CanEncodeBranchOffset(int32_t offset) {
1979 ASSERT(Utils::IsAligned(offset, 4)); 1979 ASSERT(Utils::IsAligned(offset, 4));
1980 return Utils::IsInt(Utils::CountOneBits(kBranchOffsetMask), offset); 1980 return Utils::IsInt(Utils::CountOneBits(kBranchOffsetMask), offset);
1981 } 1981 }
1982 1982
1983 1983
1984 int32_t Assembler::EncodeBranchOffset(int32_t offset, int32_t inst) { 1984 int32_t Assembler::EncodeBranchOffset(int32_t offset, int32_t inst) {
(...skipping 1636 matching lines...) Expand 10 before | Expand all | Expand 10 after
3621 3621
3622 3622
3623 const char* Assembler::FpuRegisterName(FpuRegister reg) { 3623 const char* Assembler::FpuRegisterName(FpuRegister reg) {
3624 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); 3624 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters));
3625 return fpu_reg_names[reg]; 3625 return fpu_reg_names[reg];
3626 } 3626 }
3627 3627
3628 } // namespace dart 3628 } // namespace dart
3629 3629
3630 #endif // defined TARGET_ARCH_ARM 3630 #endif // defined TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/assembler_arm64.cc » ('j') | runtime/vm/object.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698