| Index: src/ia32/virtual-frame-ia32.h
|
| ===================================================================
|
| --- src/ia32/virtual-frame-ia32.h (revision 3964)
|
| +++ src/ia32/virtual-frame-ia32.h (working copy)
|
| @@ -73,10 +73,10 @@
|
| static const int kIllegalIndex = -1;
|
|
|
| // Construct an initial virtual frame on entry to a JS function.
|
| - VirtualFrame();
|
| + inline VirtualFrame();
|
|
|
| // Construct a virtual frame as a clone of an existing one.
|
| - explicit VirtualFrame(VirtualFrame* original);
|
| + explicit inline VirtualFrame(VirtualFrame* original);
|
|
|
| CodeGenerator* cgen() { return CodeGeneratorScope::Current(); }
|
|
|
| @@ -84,7 +84,7 @@
|
|
|
| // Create a duplicate of an existing valid frame element.
|
| FrameElement CopyElementAt(int index,
|
| - NumberInfo::Type info = NumberInfo::kUninitialized);
|
| + NumberInfo info = NumberInfo::Uninitialized());
|
|
|
| // The number of elements on the virtual frame.
|
| int element_count() { return elements_.length(); }
|
| @@ -388,18 +388,16 @@
|
| // Push an element on top of the expression stack and emit a
|
| // corresponding push instruction.
|
| void EmitPush(Register reg,
|
| - NumberInfo::Type info = NumberInfo::kUnknown);
|
| + NumberInfo info = NumberInfo::Unknown());
|
| void EmitPush(Operand operand,
|
| - NumberInfo::Type info = NumberInfo::kUnknown);
|
| + NumberInfo info = NumberInfo::Unknown());
|
| void EmitPush(Immediate immediate,
|
| - NumberInfo::Type info = NumberInfo::kUnknown);
|
| + NumberInfo info = NumberInfo::Unknown());
|
|
|
| // Push an element on the virtual frame.
|
| - void Push(Register reg, NumberInfo::Type info = NumberInfo::kUnknown);
|
| - void Push(Handle<Object> value);
|
| - void Push(Smi* value) {
|
| - Push(Handle<Object> (value));
|
| - }
|
| + inline void Push(Register reg, NumberInfo info = NumberInfo::Unknown());
|
| + inline void Push(Handle<Object> value);
|
| + inline void Push(Smi* value);
|
|
|
| // Pushing a result invalidates it (its contents become owned by the
|
| // frame).
|
| @@ -422,7 +420,7 @@
|
| // Nip removes zero or more elements from immediately below the top
|
| // of the frame, leaving the previous top-of-frame value on top of
|
| // the frame. Nip(k) is equivalent to x = Pop(), Drop(k), Push(x).
|
| - void Nip(int num_dropped);
|
| + inline void Nip(int num_dropped);
|
|
|
| private:
|
| static const int kLocal0Offset = JavaScriptFrameConstants::kLocal0Offset;
|
| @@ -530,7 +528,7 @@
|
|
|
| // Push a copy of a frame slot (typically a local or parameter) on top of
|
| // the frame.
|
| - void PushFrameSlotAt(int index);
|
| + inline void PushFrameSlotAt(int index);
|
|
|
| // Push a the value of a frame slot (typically a local or parameter) on
|
| // top of the frame and invalidate the slot.
|
| @@ -573,6 +571,14 @@
|
| // Register counts are correctly updated.
|
| int InvalidateFrameSlotAt(int index);
|
|
|
| + // This function assumes that a and b are the only results that could be in
|
| + // the registers a_reg or b_reg. Other results can be live, but must not
|
| + // be in the registers a_reg or b_reg. The results a and b are invalidated.
|
| + void MoveResultsToRegisters(Result* a,
|
| + Result* b,
|
| + Register a_reg,
|
| + Register b_reg);
|
| +
|
| // Call a code stub that has already been prepared for calling (via
|
| // PrepareForCall).
|
| Result RawCallStub(CodeStub* stub);
|
| @@ -581,7 +587,7 @@
|
| // (via PrepareForCall).
|
| Result RawCallCodeObject(Handle<Code> code, RelocInfo::Mode rmode);
|
|
|
| - bool Equals(VirtualFrame* other);
|
| + inline bool Equals(VirtualFrame* other);
|
|
|
| // Classes that need raw access to the elements_ array.
|
| friend class DeferredCode;
|
|
|