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

Unified Diff: runtime/vm/instructions_mips.cc

Issue 12439005: Implement leaf runtime call stub on ARM and corresponding call redirection (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/instructions_mips.h ('k') | runtime/vm/instructions_x64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/instructions_mips.cc
===================================================================
--- runtime/vm/instructions_mips.cc (revision 19723)
+++ runtime/vm/instructions_mips.cc (working copy)
@@ -5,50 +5,58 @@
#include "vm/globals.h" // Needed here to get TARGET_ARCH_MIPS.
#if defined(TARGET_ARCH_MIPS)
+#include "vm/constants_mips.h"
#include "vm/instructions.h"
#include "vm/object.h"
namespace dart {
-bool InstructionPattern::TestBytesWith(const int* data, int num_bytes) const {
- UNIMPLEMENTED();
- return false;
+CallPattern::CallPattern(uword pc, const Code& code)
+ : end_(reinterpret_cast<uword*>(pc)),
+ pool_index_(DecodePoolIndex()),
+ object_pool_(Array::Handle(code.ObjectPool())) { }
+
+
+uword CallPattern::Back(int n) const {
+ ASSERT(n > 0);
+ return *(end_ - n);
}
-uword CallPattern::TargetAddress() const {
+int CallPattern::DecodePoolIndex() {
UNIMPLEMENTED();
return 0;
}
-uword JumpPattern::TargetAddress() const {
+uword CallPattern::TargetAddress() const {
UNIMPLEMENTED();
return 0;
}
-
-void CallPattern::SetTargetAddress(uword target) const {
+void CallPattern::SetTargetAddress(uword target_address) const {
UNIMPLEMENTED();
}
-void JumpPattern::SetTargetAddress(uword target) const {
+JumpPattern::JumpPattern(uword pc) : pc_(pc) { }
+
+
+bool JumpPattern::IsValid() const {
UNIMPLEMENTED();
+ return false;
}
-
-const int* CallPattern::pattern() const {
+uword JumpPattern::TargetAddress() const {
UNIMPLEMENTED();
- return NULL;
+ return 0;
}
-const int* JumpPattern::pattern() const {
+void JumpPattern::SetTargetAddress(uword target_address) const {
UNIMPLEMENTED();
- return NULL;
}
} // namespace dart
« no previous file with comments | « runtime/vm/instructions_mips.h ('k') | runtime/vm/instructions_x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698