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

Unified Diff: src/frames.h

Issue 11528003: Re-land Crankshaft-generated KeyedLoad stubs. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Review feedback Created 8 years 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 | « src/arm/macro-assembler-arm.h ('k') | src/frames.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/frames.h
diff --git a/src/frames.h b/src/frames.h
index 9814f84e552fa8ce666c6ca06b7bdbde5e9f59cd..a1d24ac3a075c430bf286f6aa8bc84fae8c31c48 100644
--- a/src/frames.h
+++ b/src/frames.h
@@ -264,12 +264,12 @@ class StackFrame BASE_EMBEDDED {
PrintMode mode,
int index) const { }
+ Isolate* isolate() const { return isolate_; }
+
protected:
inline explicit StackFrame(StackFrameIterator* iterator);
virtual ~StackFrame() { }
- Isolate* isolate() const { return isolate_; }
-
// Compute the stack pointer for the calling frame.
virtual Address GetCallerStackPointer() const = 0;
@@ -449,6 +449,9 @@ class StandardFrame: public StackFrame {
// construct frame.
static inline bool IsConstructFrame(Address fp);
+ // Used by OptimizedFrames and StubFrames.
+ void IterateCompiledFrame(ObjectVisitor* v) const;
+
private:
friend class StackFrame;
friend class StackFrameIterator;
@@ -559,33 +562,28 @@ class JavaScriptFrame: public StandardFrame {
};
-class CompiledFrame : public JavaScriptFrame {
- public:
- virtual Type type() const = 0;
-
- // GC support.
- virtual void Iterate(ObjectVisitor* v) const;
-
- protected:
- inline explicit CompiledFrame(StackFrameIterator* iterator);
-};
-
-
-class StubFrame : public CompiledFrame {
+class StubFrame : public StandardFrame {
public:
virtual Type type() const { return STUB; }
// GC support.
virtual void Iterate(ObjectVisitor* v) const;
+ // Determine the code for the frame.
+ virtual Code* unchecked_code() const;
+
protected:
inline explicit StubFrame(StackFrameIterator* iterator);
+ virtual Address GetCallerStackPointer() const;
+
+ virtual int GetNumberOfIncomingArguments() const;
+
friend class StackFrameIterator;
};
-class OptimizedFrame : public CompiledFrame {
+class OptimizedFrame : public JavaScriptFrame {
public:
virtual Type type() const { return OPTIMIZED; }
« no previous file with comments | « src/arm/macro-assembler-arm.h ('k') | src/frames.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698