blob: 31a1a2a6288b81c09194786b4154f346383c0963 [file] [log] [blame]
Ian Rogersbdb03912011-09-14 00:55:44 -07001// Copyright 2011 Google Inc. All Rights Reserved.
2
3#ifndef ART_SRC_CONTEXT_ARM_H_
4#define ART_SRC_CONTEXT_ARM_H_
5
6#include "constants_arm.h"
7#include "context.h"
8
9namespace art {
10namespace arm {
11
12class ArmContext : public Context {
13 public:
14 ArmContext();
15 virtual ~ArmContext() {}
16
17 virtual void FillCalleeSaves(const Frame& fr);
18
19 virtual void SetSP(uintptr_t new_sp) {
20 gprs_[SP] = new_sp;
21 }
22
23 virtual void SetPC(uintptr_t new_pc) {
24 gprs_[PC] = new_pc;
25 }
26
27 virtual void DoLongJump();
28
29 private:
30 uintptr_t gprs_[16];
Ian Rogers15fdb8c2011-09-25 15:45:07 -070031 uint32_t fprs_[32];
Ian Rogersbdb03912011-09-14 00:55:44 -070032};
33
34} // namespace arm
35} // namespace art
36
37#endif // ART_SRC_CONTEXT_ARM_H_