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

Unified Diff: src/codegen-arm.h

Issue 9182: Emit pushes and pops through the virtual frame on ARM. Merging of... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 12 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/codegen-arm.cc » ('j') | src/codegen-arm.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/codegen-arm.h
===================================================================
--- src/codegen-arm.h (revision 703)
+++ src/codegen-arm.h (working copy)
@@ -49,6 +49,11 @@
public:
explicit VirtualFrame(CodeGenerator* cgen);
+ void Enter();
+ void Exit();
+
+ void AllocateLocals();
+
MemOperand Top() const { return MemOperand(sp, 0); }
MemOperand Element(int index) const {
@@ -70,6 +75,13 @@
return MemOperand(fp, (1 + parameter_count_ - index) * kPointerSize);
}
+ inline void Drop(int count);
+
+ inline void Pop();
+ inline void Pop(Register reg);
+
+ inline void Push(Register reg);
+
private:
static const int kLocal0Offset = JavaScriptFrameConstants::kLocal0Offset;
static const int kFunctionOffset = JavaScriptFrameConstants::kFunctionOffset;
@@ -195,6 +207,8 @@
// Accessors
MacroAssembler* masm() { return masm_; }
+ VirtualFrame* frame() const { return frame_; }
+
CodeGenState* state() { return state_; }
void set_state(CodeGenState* state) { state_ = state; }
@@ -366,11 +380,6 @@
// should be generated or not.
void RecordStatementPosition(Node* node);
- // Activation frames.
- void EnterJSFrame();
- void ExitJSFrame();
-
-
bool is_eval_; // Tells whether code is generated for eval.
Handle<Script> script_;
List<DeferredCode*> deferred_;
« no previous file with comments | « no previous file | src/codegen-arm.cc » ('j') | src/codegen-arm.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698