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

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

Issue 1277883002: VM: Move calling convention-dependent code out of cc tests. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: More clean up Created 5 years, 4 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 | « runtime/vm/assembler_arm64.cc ('k') | runtime/vm/assembler_x64.h » ('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 (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_MIPS) 6 #if defined(TARGET_ARCH_MIPS)
7 7
8 #include "vm/assembler.h" 8 #include "vm/assembler.h"
9 #include "vm/longjump.h" 9 #include "vm/longjump.h"
10 #include "vm/runtime_entry.h" 10 #include "vm/runtime_entry.h"
(...skipping 797 matching lines...) Expand 10 before | Expand all | Expand 10 after
808 sw(RA, Address(SP, 2 * kWordSize)); 808 sw(RA, Address(SP, 2 * kWordSize));
809 sw(FP, Address(SP, 1 * kWordSize)); 809 sw(FP, Address(SP, 1 * kWordSize));
810 sw(PP, Address(SP, 0 * kWordSize)); 810 sw(PP, Address(SP, 0 * kWordSize));
811 addiu(FP, SP, Immediate(1 * kWordSize)); 811 addiu(FP, SP, Immediate(1 * kWordSize));
812 // Setup pool pointer for this stub. 812 // Setup pool pointer for this stub.
813 LoadPoolPointer(); 813 LoadPoolPointer();
814 } 814 }
815 815
816 816
817 void Assembler::LeaveStubFrame() { 817 void Assembler::LeaveStubFrame() {
818 ASSERT(!in_delay_slot_); 818 LeaveDartFrame();
819 addiu(SP, FP, Immediate(-1 * kWordSize));
820 lw(RA, Address(SP, 2 * kWordSize));
821 lw(FP, Address(SP, 1 * kWordSize));
822 lw(PP, Address(SP, 0 * kWordSize));
823 addiu(SP, SP, Immediate(4 * kWordSize));
824 } 819 }
825 820
826 821
827 void Assembler::LeaveStubFrameAndReturn(Register ra) { 822 void Assembler::LeaveStubFrameAndReturn(Register ra) {
828 ASSERT(!in_delay_slot_); 823 ASSERT(!in_delay_slot_);
829 addiu(SP, FP, Immediate(-1 * kWordSize)); 824 addiu(SP, FP, Immediate(-1 * kWordSize));
830 lw(RA, Address(SP, 2 * kWordSize)); 825 lw(RA, Address(SP, 2 * kWordSize));
831 lw(FP, Address(SP, 1 * kWordSize)); 826 lw(FP, Address(SP, 1 * kWordSize));
832 lw(PP, Address(SP, 0 * kWordSize)); 827 lw(PP, Address(SP, 0 * kWordSize));
833 jr(ra); 828 jr(ra);
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after
1305 Label stop; 1300 Label stop;
1306 b(&stop); 1301 b(&stop);
1307 Emit(reinterpret_cast<int32_t>(message)); 1302 Emit(reinterpret_cast<int32_t>(message));
1308 Bind(&stop); 1303 Bind(&stop);
1309 break_(Instr::kStopMessageCode); 1304 break_(Instr::kStopMessageCode);
1310 } 1305 }
1311 1306
1312 } // namespace dart 1307 } // namespace dart
1313 1308
1314 #endif // defined TARGET_ARCH_MIPS 1309 #endif // defined TARGET_ARCH_MIPS
OLDNEW
« no previous file with comments | « runtime/vm/assembler_arm64.cc ('k') | runtime/vm/assembler_x64.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698