| Index: runtime/vm/assembler_mips.cc
|
| ===================================================================
|
| --- runtime/vm/assembler_mips.cc (revision 20788)
|
| +++ runtime/vm/assembler_mips.cc (working copy)
|
| @@ -6,6 +6,9 @@
|
| #if defined(TARGET_ARCH_MIPS)
|
|
|
| #include "vm/assembler.h"
|
| +#include "vm/runtime_entry.h"
|
| +#include "vm/simulator.h"
|
| +#include "vm/stub_code.h"
|
|
|
| namespace dart {
|
|
|
| @@ -145,6 +148,11 @@
|
| }
|
|
|
|
|
| +void Assembler::CallRuntime(const RuntimeEntry& entry) {
|
| + entry.Call(this);
|
| +}
|
| +
|
| +
|
| void Assembler::EnterDartFrame(intptr_t frame_size) {
|
| const intptr_t offset = CodeSize();
|
|
|
| @@ -201,6 +209,17 @@
|
| }
|
|
|
|
|
| +void Assembler::ReserveAlignedFrameSpace(intptr_t frame_space) {
|
| + // Reserve space for arguments and align frame before entering
|
| + // the C++ world.
|
| + addiu(SP, SP, Immediate(-frame_space));
|
| + if (OS::ActivationFrameAlignment() > 0) {
|
| + LoadImmediate(TMP, ~(OS::ActivationFrameAlignment() - 1));
|
| + and_(SP, SP, TMP);
|
| + }
|
| +}
|
| +
|
| +
|
| int32_t Assembler::AddExternalLabel(const ExternalLabel* label) {
|
| if (object_pool_.IsNull()) {
|
| // The object pool cannot be used in the vm isolate.
|
|
|