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

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

Issue 1419223003: Re-assign registers on ARM so PP and CODE_REG are below R7 (FP on iOS). (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 1 month 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 | « no previous file | runtime/vm/assembler_arm_test.cc » ('j') | runtime/vm/instructions_arm.cc » ('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 3290 matching lines...) Expand 10 before | Expand all | Expand 10 after
3301 3301
3302 void Assembler::CallRuntime(const RuntimeEntry& entry, 3302 void Assembler::CallRuntime(const RuntimeEntry& entry,
3303 intptr_t argument_count) { 3303 intptr_t argument_count) {
3304 entry.Call(this, argument_count); 3304 entry.Call(this, argument_count);
3305 } 3305 }
3306 3306
3307 3307
3308 void Assembler::EnterDartFrame(intptr_t frame_size) { 3308 void Assembler::EnterDartFrame(intptr_t frame_size) {
3309 ASSERT(!constant_pool_allowed()); 3309 ASSERT(!constant_pool_allowed());
3310 3310
3311 // Registers are pushed in descending order: R9 | R10 | R11 | R14. 3311 // Registers are pushed in descending order: R5 | R6 | R11 | R14.
3312 EnterFrame((1 << PP) | (1 << CODE_REG) | (1 << FP) | (1 << LR), 0); 3312 EnterFrame((1 << PP) | (1 << CODE_REG) | (1 << FP) | (1 << LR), 0);
3313 3313
3314 // Setup pool pointer for this dart function. 3314 // Setup pool pointer for this dart function.
3315 LoadPoolPointer(); 3315 LoadPoolPointer();
3316 3316
3317 // Reserve space for locals. 3317 // Reserve space for locals.
3318 AddImmediate(SP, -frame_size); 3318 AddImmediate(SP, -frame_size);
3319 } 3319 }
3320 3320
3321 3321
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after
3639 3639
3640 3640
3641 const char* Assembler::FpuRegisterName(FpuRegister reg) { 3641 const char* Assembler::FpuRegisterName(FpuRegister reg) {
3642 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters)); 3642 ASSERT((0 <= reg) && (reg < kNumberOfFpuRegisters));
3643 return fpu_reg_names[reg]; 3643 return fpu_reg_names[reg];
3644 } 3644 }
3645 3645
3646 } // namespace dart 3646 } // namespace dart
3647 3647
3648 #endif // defined TARGET_ARCH_ARM 3648 #endif // defined TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/assembler_arm_test.cc » ('j') | runtime/vm/instructions_arm.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698