Index: src/arm/virtual-frame-arm.h |
=================================================================== |
--- src/arm/virtual-frame-arm.h (revision 4863) |
+++ src/arm/virtual-frame-arm.h (working copy) |
@@ -189,12 +189,15 @@ |
return (tos_known_smi_map_ & (~other->tos_known_smi_map_)) == 0; |
} |
+ inline void ForgetTypeInfo() { |
+ tos_known_smi_map_ = 0; |
+ } |
+ |
// Detach a frame from its code generator, perhaps temporarily. This |
// tells the register allocator that it is free to use frame-internal |
// registers. Used when the code generator's frame is switched from this |
// one to NULL by an unconditional jump. |
void DetachFromCodeGenerator() { |
- AssertIsSpilled(); |
} |
// (Re)attach a frame to its code generator. This informs the register |
@@ -202,7 +205,6 @@ |
// Used when a code generator's frame is switched from NULL to this one by |
// binding a label. |
void AttachToCodeGenerator() { |
- AssertIsSpilled(); |
} |
// Emit code for the physical JS entry and exit frame sequences. After |
@@ -330,6 +332,10 @@ |
// must be copied to a scratch register before modification. |
Register Peek(); |
+ // Look at the value beneath the top of the stack. The register returned is |
+ // aliased and must be copied to a scratch register before modification. |
+ Register Peek2(); |
+ |
// Duplicate the top of stack. |
void Dup(); |
@@ -339,6 +345,9 @@ |
// Flushes all registers, but it puts a copy of the top-of-stack in r0. |
void SpillAllButCopyTOSToR0(); |
+ // Flushes all registers, but it puts a copy of the top-of-stack in r0. |
Søren Thygesen Gjesse
2010/06/15 10:29:56
r0 -> r1
|
+ void SpillAllButCopyTOSToR1(); |
+ |
// Flushes all registers, but it puts a copy of the top-of-stack in r1 |
// and the next value on the stack in r0. |
void SpillAllButCopyTOSToR1R0(); |